/*
Theme Name: Mehr Clinic Child
Theme URI: http://localhost/MehrClinicWP
Description: Elementor child theme for Mehr Clinic � bilingual FA/EN cancer care clinic matching the MehrClinic design system.
Author: Mehr Clinic
Template: hello-elementor
Version: 1.0.32
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: mehrclinic
*/

/* Thin WP/Elementor overrides � brand styles live in assets/css/main.css */

.elementor-widget-shortcode .home-slider,
.elementor-widget-shortcode .sutter-hero {
	margin-left: calc(-50vw + 50%);
	margin-right: calc(-50vw + 50%);
	max-width: 100vw;
	width: 100vw;
}

body.elementor-page .site-main,
body.elementor-page #content {
	padding: 0;
	max-width: none;
}

/* Elementor Theme Builder header/footer wrappers � keep chrome full-bleed */
.elementor-location-header,
.elementor-location-footer {
	width: 100%;
}



.admin-bar .elementor-location-header {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar .elementor-location-header {
		top: 46px;
	}
}

.elementor-location-header > .elementor,
.elementor-location-footer > .elementor {
	max-width: none;
}

.elementor-location-header .elementor-section,
.elementor-location-footer .elementor-section,
.elementor-location-header .elementor-container,
.elementor-location-footer .elementor-container {
	max-width: none !important;
	width: 100%;
}

.elementor-location-header .elementor-widget-shortcode > .elementor-widget-container,
.elementor-location-footer .elementor-widget-shortcode > .elementor-widget-container,
.elementor-location-header .elementor-widget-heading .elementor-widget-container,
.elementor-location-header .elementor-widget-image .elementor-widget-container,
.elementor-location-header .elementor-widget-button .elementor-widget-container {
	padding: 0 !important;
	margin: 0 !important;
}

/* �� Match previous site-header: one horizontal bar �� */
.mehr-el-mainbar.elementor-section {
	min-height: 4.5rem;
	border-bottom: 1px solid #e5e7eb !important;
	background: #fff !important;
}

.mehr-el-mainbar > .elementor-container {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: space-between !important;
	min-height: 4.5rem;
	padding-inline: 1.25rem !important;
	gap: 1.5rem;
	width: 100% !important;
	max-width: none !important;
}

.mehr-el-mainbar .mehr-el-brand-col {
	width: auto !important;
	max-width: none !important;
	flex: 0 0 auto !important;
}

.mehr-el-mainbar .mehr-el-nav-col {
	width: auto !important;
	max-width: none !important;
	flex: 1 1 auto !important;
}

.mehr-el-mainbar .mehr-el-brand-col > .elementor-widget-wrap,
.mehr-el-mainbar .mehr-el-nav-col > .elementor-widget-wrap {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 0.55rem;
	min-height: 4.5rem;
}

.mehr-el-mainbar .mehr-el-nav-col > .elementor-widget-wrap {
	justify-content: flex-end !important;
	gap: 1.25rem;
	width: 100%;
}

.mehr-el-mainbar .mehr-el-logo,
.mehr-el-mainbar .mehr-el-logo img {
	width: auto !important;
	height: 2.15rem !important;
	max-width: none !important;
	display: block;
}

/* Prefer theme URI for logo mark fallback (style.css is theme root) */
.mehr-el-mainbar .mehr-el-brand-col:not(:has(.elementor-widget-image img[src])) .mehr-el-brand .elementor-heading-title::before,
.mehr-el-mainbar .mehr-el-brand-col:not(:has(.mehr-el-logo img)) .mehr-el-brand .elementor-heading-title::before {
	content: '';
	display: inline-block;
	width: 2.15rem;
	height: 2.15rem;
	flex-shrink: 0;
	background: url('assets/img/logo.svg') center / contain no-repeat;
}

.mehr-el-mainbar .mehr-el-brand {
	width: auto !important;
}

.mehr-el-mainbar .mehr-el-brand .elementor-heading-title {
	margin: 0 !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center;
	gap: 0.55rem;
	font-family: var(--font-display, 'Andrellina', Georgia, serif);
	font-size: 1.125rem !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #3f3fc4 !important;
	white-space: nowrap;
}

html[lang="fa"] .mehr-el-mainbar .mehr-el-brand .elementor-heading-title {
	font-family: var(--font-fa-display, 'Kalameh', Tahoma, sans-serif);
}

.mehr-el-mainbar .elementor-nav-menu--main {
	display: flex !important;
}

.mehr-el-mainbar .elementor-nav-menu--main .elementor-nav-menu {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 1.25rem !important;
	margin: 0 !important;
	padding: 0 !important;
}

.mehr-el-mainbar .elementor-nav-menu--main .elementor-item {
	font-size: 0.9375rem !important;
	font-weight: 600 !important;
	color: #1f2937 !important;
	padding: 0 !important;
	white-space: nowrap;
}

.mehr-el-mainbar .elementor-nav-menu--main .elementor-item:hover,
.mehr-el-mainbar .elementor-nav-menu--main .elementor-item.elementor-item-active {
	color: #EA4F82 !important;
}

.mehr-el-mainbar .elementor-nav-menu--main .elementor-item.elementor-item-active:after {
	background-color: #EA4F82 !important;
	height: 2px !important;
	bottom: -0.4rem !important;
}

/* Hide Elementor burger on desktop � previous header used custom toggle only under 720px */
.mehr-el-mainbar .elementor-menu-toggle,
.mehr-el-mainbar .elementor-nav-menu--dropdown {
	display: none !important;
}

.mehr-el-mainbar .mehr-el-lang {
	width: auto !important;
	flex: 0 0 auto;
}

.mehr-el-mainbar .mehr-el-cta {
	width: auto !important;
	flex: 0 0 auto;
}

.mehr-el-mainbar .mehr-el-cta .elementor-button {
	display: inline-flex !important;
	align-items: center;
	background: #EA4F82 !important;
	border: none !important;
	border-radius: 4px !important;
	text-transform: uppercase;
	font-weight: 700 !important;
	letter-spacing: 0.02em;
	padding: 0.7rem 1.25rem !important;
	font-size: 0.8125rem !important;
	line-height: 1 !important;
	color: #fff !important;
	white-space: nowrap;
}

.mehr-el-mainbar .mehr-el-cta .elementor-button:hover {
	background: #c93a68 !important;
}

.mehr-el-utility.elementor-section {
	min-height: 2.5rem;
	background: #c93a68 !important;
}

.mehr-el-utility > .elementor-container {
	display: flex !important;
	align-items: center !important;
	min-height: 2.5rem;
	padding-inline: 1.25rem !important;
}

.mehr-el-utility .elementor-heading-title {
	margin: 0;
	color: #fff !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
}

.mehr-el-utility-nav .elementor-nav-menu--main .elementor-item {
	color: rgba(255, 255, 255, 0.92) !important;
	font-size: 0.8125rem !important;
	font-weight: 500 !important;
	padding: 0 !important;
}

.mehr-el-utility-nav .elementor-nav-menu--main .elementor-item:hover {
	color: #fff !important;
}

.mehr-el-utility-nav .elementor-menu-toggle,
.mehr-el-utility-nav .elementor-nav-menu--dropdown {
	display: none !important;
}

.elementor-location-footer .elementor-nav-menu--main .elementor-item {
	color: rgba(255, 255, 255, 0.8) !important;
	padding: 0.3rem 0 !important;
	font-size: 0.9rem !important;
}

.elementor-location-footer .elementor-nav-menu--main .elementor-item:hover {
	color: #fff !important;
}

@media (max-width: 720px) {
	.mehr-el-mainbar > .elementor-container {
		flex-wrap: wrap;
		min-height: auto;
		padding-block: 0.75rem;
	}

	.mehr-el-mainbar .mehr-el-nav-col > .elementor-widget-wrap {
		flex-wrap: wrap;
		justify-content: flex-start !important;
		min-height: auto;
		gap: 0.75rem;
	}

	.mehr-el-mainbar .elementor-nav-menu--main {
		display: none !important;
	}

	.mehr-el-mainbar .elementor-menu-toggle {
		display: flex !important;
		order: 99;
	}

	.mehr-el-mainbar .elementor-nav-menu--dropdown.elementor-nav-menu__container {
		display: block !important;
	}
}

.admin-bar .site-chrome,
.admin-bar .site-header.wire-header {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar .site-chrome,
	.admin-bar .site-header.wire-header {
		top: 46px;
	}
}

.wpcf7 form .wpcf7-form-control-wrap {
	display: block;
}

.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"],
.wpcf7 form select,
.wpcf7 form textarea {
	width: 100%;
}

.wpcf7-response-output {
	margin: 1rem 0 0;
	border-radius: var(--radius-md, 8px);
}

/* Photo placeholders (SVG) */
.topic-media img,
.doctor-photo img,
.home-about-media img,
.about-media img,
.sutter-hero-media img,
.blog-featured-media img,
.slide > img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

/* Elementor shortcode wrapper should not constrain full-bleed sections */
.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 100%;
}

.elementor .elementor-widget-shortcode > .elementor-widget-container {
	padding: 0;
}

body.home-wire .site-main {
	padding-top: 0;
}

/* Elementor widget polish to match Mehr brand */
.elementor-widget-slides .swiper-slide-inner {
	text-align: start;
}

.elementor-widget-image-box .elementor-image-box-wrapper,
.elementor-widget-icon-box .elementor-icon-box-wrapper {
	text-align: center;
}

.elementor-button {
	font-weight: 600;
}

.elementor-widget-form .elementor-field-group input,
.elementor-widget-form .elementor-field-group textarea,
.elementor-widget-form .elementor-field-group select {
	border-radius: 8px;
	border-color: #e5e7eb;
}

.elementor-posts-container .elementor-post {
	border-radius: 16px;
	overflow: hidden;
}

/* Keep doctor filter interactive block styled */
.elementor-widget-html .doctor-filter,
.elementor-widget-html .doctor-grid {
	margin-top: 1rem;
}

/* ---------- Brand fonts for Elementor (FA / EN) ---------- */
html[lang="fa"] .elementor,
html[lang="fa"] .elementor-widget,
html[lang="fa"] .elementor-button,
html[lang="fa"] .elementor-icon-box-description,
html[lang="fa"] .elementor-image-box-description,
html[lang="fa"] .elementor-field-group,
html[lang="fa"] .elementor-field-label,
html[lang="fa"] .elementor-field,
html[lang="fa"] .elementor-post__excerpt,
html[lang="fa"] .elementor-slide-description,
body.lang-fa .elementor,
body.lang-fa .elementor-widget {
	font-family: 'Molsaq', 'Molsagh', Tahoma, sans-serif !important;
}

html[lang="fa"] .elementor-heading-title,
html[lang="fa"] .elementor-icon-box-title,
html[lang="fa"] .elementor-image-box-title,
html[lang="fa"] .elementor-post__title,
html[lang="fa"] .elementor-slide-heading,
html[lang="fa"] .elementor-button,
body.lang-fa .elementor-heading-title,
body.lang-fa .elementor-icon-box-title,
body.lang-fa .elementor-image-box-title,
body.lang-fa .elementor-post__title,
body.lang-fa .elementor-slide-heading {
	font-family: 'Kalameh', 'Kalameh Latin', Tahoma, sans-serif !important;
}

html[lang="en"] .elementor,
html[lang="en"] .elementor-widget,
html[lang="en"] .elementor-button,
html[lang="en"] .elementor-icon-box-description,
html[lang="en"] .elementor-image-box-description,
html[lang="en"] .elementor-field-group,
html[lang="en"] .elementor-field-label,
html[lang="en"] .elementor-field,
html[lang="en"] .elementor-post__excerpt,
html[lang="en"] .elementor-slide-description,
body.lang-en .elementor,
body.lang-en .elementor-widget {
	font-family: 'Graphic', Inter, system-ui, sans-serif !important;
}

html[lang="en"] .elementor-heading-title,
html[lang="en"] .elementor-icon-box-title,
html[lang="en"] .elementor-image-box-title,
html[lang="en"] .elementor-post__title,
html[lang="en"] .elementor-slide-heading,
body.lang-en .elementor-heading-title,
body.lang-en .elementor-icon-box-title,
body.lang-en .elementor-image-box-title,
body.lang-en .elementor-post__title,
body.lang-en .elementor-slide-heading {
	font-family: 'Andrellina', Georgia, 'Times New Roman', serif !important;
}

/* ---------- Service boxes (home) � border + equal height like design ---------- */
.mehr-services .elementor-container {
	align-items: stretch;
}

.mehr-services .elementor-column {
	display: flex;
}

.mehr-services .elementor-widget-wrap,
.mehr-services .elementor-widget-image-box,
.mehr-services .elementor-widget-container {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.mehr-services .elementor-image-box-wrapper,
.mehr-services .elementor-image-box-wrapper.elementor-position-left,
.mehr-services .elementor-image-box-wrapper.elementor-position-right,
.mehr-services .elementor-image-box-wrapper.elementor-position-top {
	height: 100%;
	min-height: 13rem;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.75rem;
	text-align: center !important;
	padding: 1.5rem 1rem;
	border: 1.5px solid #e5e7eb;
	border-radius: 16px;
	background: #fff;
	transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s, background 0.2s;
	font-family: inherit !important;
}

.mehr-services .elementor-image-box-wrapper:hover {
	border-color: #EA4F82;
	background: #fdf2f6;
	box-shadow: 0 8px 28px rgba(201, 58, 104, 0.14);
	transform: translateY(-3px);
}

.mehr-services .elementor-image-box-img {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	width: 100% !important;
	margin: 0 auto 0.15rem !important;
	float: none !important;
	text-align: center !important;
}

.mehr-services .elementor-image-box-img a {
	display: inline-flex !important;
	justify-content: center;
	align-items: center;
}

.mehr-services .elementor-image-box-img img {
	width: 2.75rem;
	height: 2.75rem;
	object-fit: contain;
	margin: 0 auto !important;
	padding: 1.1rem;
	box-sizing: content-box;
	background: color-mix(in srgb, #EA4F82 10%, white);
	border-radius: 50%;
	display: block;
}

.mehr-services .elementor-image-box-title {
	font-family: inherit !important;
	font-size: 0.9rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	color: #1f2937 !important;
	margin: 0 !important;
	text-align: center !important;
}

.mehr-services .elementor-image-box-description {
	font-family: inherit !important;
	font-size: 0.75rem !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	color: #6b7280 !important;
	margin: 0 !important;
	max-width: none;
	text-align: center !important;
}

.mehr-services .elementor-image-box-content {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.35rem;
	width: 100%;
	text-align: center !important;
	float: none !important;
	margin: 0 !important;
}

/* ---------- Blog teaser cards (like original feature-card) ---------- */
.mehr-blog-teaser .elementor-posts-container,
.mehr-blog-teaser .elementor-grid {
	align-items: stretch !important;
	gap: 1.25rem !important;
}

.mehr-blog-teaser article.elementor-post,
.mehr-blog-teaser .elementor-post {
	display: flex !important;
	flex-direction: column;
	height: 100%;
	background: #fff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 16px !important;
	padding: 1.5rem !important;
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(17, 24, 39, 0.08);
	transition: transform 0.2s, box-shadow 0.2s;
	font-family: inherit !important;
}

.mehr-blog-teaser .elementor-post:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 28px rgba(201, 58, 104, 0.14);
}

.mehr-blog-teaser .elementor-post__thumbnail,
.mehr-blog-teaser .elementor-post__thumbnail__link {
	display: block;
	margin: 0 0 1rem !important;
	border-radius: 12px !important;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: #fce4ec;
}

.mehr-blog-teaser .elementor-post__thumbnail img {
	width: 100% !important;
	height: 100% !important;
	min-height: 160px;
	object-fit: cover !important;
	border-radius: 12px !important;
	display: block;
}

.mehr-blog-teaser .elementor-post__text,
.mehr-blog-teaser .elementor-post__card {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 0 !important;
	font-family: inherit !important;
}

.mehr-blog-teaser .elementor-post__meta-data {
	order: -1;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	color: #EA4F82 !important;
	margin: 0 0 0.35rem !important;
	font-family: inherit !important;
}

.mehr-blog-teaser .elementor-post__meta-data .elementor-post-date,
.mehr-blog-teaser .elementor-post__meta-data .elementor-post-avatar,
.mehr-blog-teaser .elementor-post__meta-data span.elementor-post-date {
	display: none !important;
}

.mehr-blog-teaser .elementor-post__title {
	font-family: inherit !important;
	font-size: 1.125rem !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
	margin: 0 0 0.5rem !important;
}

.mehr-blog-teaser .elementor-post__title a {
	color: #1f2937 !important;
	text-decoration: none !important;
}

.mehr-blog-teaser .elementor-post__title a:hover {
	color: #EA4F82 !important;
}

.mehr-blog-teaser .elementor-post__excerpt {
	font-family: inherit !important;
	color: #6b7280 !important;
	font-size: 0.9375rem !important;
	line-height: 1.6 !important;
	flex: 1;
}

.mehr-blog-teaser .elementor-post__excerpt p {
	margin: 0;
	font-family: inherit !important;
}

.mehr-blog-teaser .elementor-post__read-more {
	display: none !important;
}

/* ---------- About page spacing ---------- */
.mehr-about .elementor-widget:not(:last-child) {
	margin-bottom: 0;
}

.mehr-about-hero .elementor-widget-image img {
	width: 100%;
	height: 520px;
	object-fit: cover;
	display: block;
}

.mehr-about-story .elementor-widget-image {
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 8px 28px rgba(201, 58, 104, 0.14);
}

.mehr-about-story .elementor-widget-image img {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	display: block;
	border-radius: 24px;
}

.mehr-about-story .elementor-container {
	align-items: center;
	column-gap: 3rem !important;
}

.mehr-about-values .elementor-icon-box-wrapper {
	height: 100%;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	padding: 1.75rem 1.5rem;
	box-shadow: 0 1px 3px rgba(17, 24, 39, 0.06);
	font-family: inherit !important;
}

.mehr-about-values .elementor-container {
	align-items: stretch;
	column-gap: 1.5rem !important;
}

.mehr-about-values .elementor-icon-box-title {
	font-family: inherit !important;
	margin-top: 1rem !important;
	margin-bottom: 0.75rem !important;
}

.mehr-about-values .elementor-icon-box-description {
	font-family: inherit !important;
	line-height: 1.7 !important;
}

.mehr-about-team .elementor-image-box-wrapper {
	height: 100%;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	padding: 1.25rem;
	box-shadow: 0 1px 3px rgba(17, 24, 39, 0.06);
	transition: transform 0.2s, box-shadow 0.2s;
	font-family: inherit !important;
}

.mehr-about-team .elementor-image-box-wrapper:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 28px rgba(201, 58, 104, 0.14);
}

.mehr-about-team .elementor-image-box-img {
	margin: 0 0 1rem !important;
	border-radius: 12px;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: #fce4ec;
}

.mehr-about-team .elementor-image-box-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.mehr-about-team .elementor-container {
	align-items: stretch;
	column-gap: 1.5rem !important;
}

.mehr-about-team .elementor-image-box-title {
	font-family: inherit !important;
	margin-bottom: 0.5rem !important;
}

.mehr-about-team .elementor-image-box-description {
	font-family: inherit !important;
	line-height: 1.65 !important;
}

.mehr-about .promise-list {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 0;
	margin: 1.5rem 0 0;
	list-style: none;
}

.mehr-about .promise-list li {
	display: flex;
	gap: 0.75rem;
	align-items: flex-start;
	font-weight: 500;
	font-size: 0.9375rem;
	font-family: inherit;
}

.mehr-about .promise-list li::before {
	content: '?';
	width: 1.25rem;
	height: 1.25rem;
	flex-shrink: 0;
	margin-top: 0.1rem;
	border-radius: 50%;
	background: #EA4F82;
	color: #fff;
	font-size: 0.7rem;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

@media (max-width: 1024px) {
	.mehr-about-hero .elementor-widget-image img {
		height: 320px;
	}
	.mehr-about-story .elementor-container {
		column-gap: 1.5rem !important;
	}
}
