/*
 Theme Name:  Medera Global Health 2026 (Child of Twenty Twenty-Five)
 Theme URI:   https://medera.example.com
 Description: Child theme for Medera Global Health website, based on Twenty Twenty-Five.
 Author:      Medera
 Author URI:  https://imedera.com
 Template:    twentytwentyfive
 Requires at least: 6.5
 Tested up to: 6.7
 Requires PHP: 8.1
 Version:     1.0.0
 Text Domain: mgh2026
*/

/*******************************************
 * Responsive Visibility Utilities
 * Mobile:  0–767px
 * Tablet:  768–1023px
 * Desktop: 1024px+
 *******************************************/

/* 基础状态——全部默认显示 */
.u-mobile-only,
.u-tablet-only,
.u-desktop-only,
.u-mobile-down,
.u-tablet-down,
.u-desktop-down,
.u-mobile-up,
.u-tablet-up,
.u-desktop-up {
	display: block;
}

/* ========== Mobile Only (≤767px) ========== */
@media screen and (min-width: 768px) {
	.u-mobile-only {
		display: none !important;
	}
}

/* ========== Tablet Only (768–1023px) ========== */
.u-tablet-only {
	display: none !important;
}

@media (min-width: 768px) and (max-width: 1023px) {
	.u-tablet-only {
		display: block !important;
	}
}

/* ========== Desktop Only (≥1024px) ========== */
.u-desktop-only {
	display: none !important;
}

@media screen and (min-width: 1024px) {
	.u-desktop-only {
		display: block !important;
	}
}

/* ========== Mobile-down (≤767px) ========== */
.u-mobile-down {
	display: block !important;
}

@media screen and (min-width: 768px) {
	.u-mobile-down {
		display: none !important;
	}
}

/* ========== Tablet-down (≤1023px) ========== */
.u-tablet-down {
	display: block !important;
}

@media screen and (min-width: 1024px) {
	.u-tablet-down {
		display: none !important;
	}
}

/* ========== Desktop-down (always display, logically) ========== */
.u-desktop-down {
	display: block !important;
}

/* ========== Mobile-up (≥768px) ========== */
.u-mobile-up {
	display: none !important;
}

@media screen and (min-width: 768px) {
	.u-mobile-up {
		display: block !important;
	}
}

/* ========== Tablet-up (≥1024px) ========== */
.u-tablet-up {
	display: none !important;
}

@media screen and (min-width: 1024px) {
	.u-tablet-up {
		display: block !important;
	}
}

/* ========== Desktop-up = always visible ========== */
.u-desktop-up {
	display: block !important;
}

/*
 * Global
*/

/* body {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
} */

strong {
	font-weight: 500;
}

main.wp-block-group {
	min-height: 600px;
}

.mdr-product-column-item {
	margin-bottom: 1.2rem !important;
}


@media screen and (max-width: 1024px) {
	.mdr-tags-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--20);
	}
}

@media screen and (max-width: 1280px) {
	html[lang="en-US"] .mdr-tags-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--20);
	}
}

@media screen and (max-width: 480px) {
	html[lang="en-US"] .mdr-tags-grid {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--20);
	}
}

@media screen and (max-width: 768px) {
	.button.wp-element-button {
		padding: 0.75rem 0;
	}
}

.wp-element-button {
	text-transform: uppercase;
}

.mdr-link-text a {
	text-decoration: none;
}

:where(.wp-site-blocks) > * {
	margin-block-start: 0;
}

/*
 * Main Menu
*/

/* 一级菜单：排除有子菜单的项目 */
.main-header .wp-block-navigation__container > .wp-block-navigation-item:not(.has-child) > .wp-block-navigation-item__content {
    display: block;
    position: relative;
}

/* 一级菜单 hover 文字 */
.main-header .wp-block-navigation__container > .wp-block-navigation-item:not(.has-child) > .wp-block-navigation-item__content:hover,
.main-header .wp-block-navigation__container > .wp-block-navigation-item:not(.has-child) > .wp-block-navigation-item__content:hover > .wp-block-navigation-item__label {
    color: #0472b6;
    text-decoration: none;
}

/* 当前一级菜单文字 */
.main-header .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item:not(.has-child) > .wp-block-navigation-item__content > .wp-block-navigation-item__label {
    color: #0472b6;
    font-weight: normal;
}

/* 下划线 */
.main-header .wp-block-navigation__container > .wp-block-navigation-item:not(.has-child) > .wp-block-navigation-item__content::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: .25rem;
    background-color: transparent;
    transition: width .25s ease-in-out, background-color .25s ease-in-out;
}

/* hover 和当前页面显示下划线 */
.main-header .wp-block-navigation__container > .wp-block-navigation-item:not(.has-child) > .wp-block-navigation-item__content:hover::after,
.main-header .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item:not(.has-child) > .wp-block-navigation-item__content::after {
    width: 100%;
    background-color: #0472b6;
}

.main-header .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover {
    background-color: rgba(4, 114, 182, 0.12);
}


.main-header .wp-block-navigation__container
> .wp-block-navigation-item.current-menu-parent
> .wp-block-navigation-item__content,

.main-header .wp-block-navigation__container
> .wp-block-navigation-item.current-menu-ancestor
> .wp-block-navigation-item__content {
    color: #0472b6;
    position: relative;
}

.main-header .wp-block-navigation__container
> .wp-block-navigation-item.current-menu-parent
> .wp-block-navigation-item__content::after,

.main-header .wp-block-navigation__container
> .wp-block-navigation-item.current-menu-ancestor
> .wp-block-navigation-item__content::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 100%;
    height: .25rem;
    background-color: #0472b6;
}

.main-header .wp-block-navigation__container
> .wp-block-navigation-item.current-menu-parent
> .wp-block-navigation-item__content
> .wp-block-navigation-item__label,

.main-header .wp-block-navigation__container
> .wp-block-navigation-item.current-menu-ancestor
> .wp-block-navigation-item__content
> .wp-block-navigation-item__label {
    color: #0472b6;
}

:root :where(.wp-block-post-terms) {
	font-weight: inherit;
}

/*
 * Layout Helpers
*/

.mdr-flex-column {
	display: flex;
	flex-direction: column;
}

.mdr-flex-justify-center {
	justify-content: center;
}

.mdr-flex-justify-space-between {
	justify-content: space-between;

}

.mdr-flex-1 {
	flex: 1;
}

.nowrap {
	white-space: nowrap;
}

/*
 * Post
*/

@media screen and (min-width: 1024px) {
	.article-hero {
		width: 1000px;
		margin-left: auto;
		margin-right: auto;
	}
}

/*
 * WooCommerce
*/

.woocommerce-account .wp-block-post-title,
.woocommerce-account main .woocommerce,
.woocommerce-cart .wp-block-post-title,
.woocommerce-cart main .woocommerce,
.woocommerce-checkout .wp-block-post-title,
.woocommerce-checkout main .woocommerce {
	max-width: 1340px !important;
}

.woocommerce-page.woocommerce-account table.shop_table th.membership-product-title {
	width: 40% !important;
}

.my-membership {
	max-width: 1000px;
}

@media only screen and (max-width: 1000px) {
	body .mdr-header .mdr-flex-align-center {
		justify-content: center !important;
	}
}

.mdr-typo-nowrap,
.mdr-typo-nowrap h2 {
	white-space: nowrap;
}

.mdr-adp-login-wrapper .woocommerce form .form-row .input-text,
.mdr-adp-login-wrapper .woocommerce form .form-row select {
	min-height: 3rem !important;
}

@media only screen and (max-width: 1024px) {
	.mdr-woo-product-gallery-column {
		display: none !important;
	}
}

.woocommerce-product-gallery__wrapper a {
	pointer-events: none;
}

main[data-page="checkout"] .alignfull {
	padding: 0 !important;
}

main[data-page="checkout"] .alignwide {
	margin-top: 1rem !important
}

main[data-page="checkout"] .wt_coupon_wrapper {
	gap: 8px !important;
}

.wp-block-add-to-cart-form .awcdp-deposits-wrapper {
	display: none;
}


/*
 * AffiliateWP
*/

.affwp-form fieldset {
	padding: 0
}

.affwp-form label {
	margin-bottom: 0.7rem;
	display: block;
}

.affwp-form label.affwp-user-remember,
.affwp-form label.affwp-tos,
.affwp-send-notifications-wrap {
	display: flex;
	align-items: center;
}

.affwp-form label.affwp-user-remember input,
.affwp-form label.affwp-tos input,
.affwp-send-notifications-wrap input#affwp-referral-notifications {
	width: auto;
	margin-right: 0.5rem;
}

.affwp-form input:not([type="submit"]),
.affwp-form input:not([type="checkbox"]),
.affwp-form select,
.affwp-form textarea {
	font-family: inherit;
	font-size: 1rem;
	font-weight: 300;
	padding: .9rem 1.1rem;
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	height: auto;
}

.affwp-form input[type="submit"].button,
.affwp-modal__button{
	font-size: 1rem;
	border-width: 0;
	font-family: inherit;
	width: auto;
	padding-top: 1rem;
	padding-right: 2.25rem;
	padding-bottom: 1rem;
	padding-left: 2.25rem;
	text-transform: inherit;
	cursor: pointer;
}

.affwp-form input[type="submit"].button:hover,
.affwp-modal__button:hover,
#affwp-graphs-filter .button:hover,
.affwp-affiliate-link__display .button:hover {
	background-color: color(srgb 0.066667 0.066667 0.066667 / 0.85);
	color: #ffffff;
}

.affwp-send-notifications-wrap label {
	margin-bottom: 0;
}

.affwp-affiliate-link__display input {
	font-family: inherit;
	font-size: inherit;
	font-weight: 300;
	padding: .9rem 1.1rem;
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	height: auto;
}

.affwp-affiliate-link__display .affwp-affiliate-link-copy-link {
	font-size: 1rem;
	border-width: 0;
	font-family: inherit;
	width: auto;
	padding-top: 1rem;
	padding-right: 2.25rem;
	padding-bottom: 1rem;
	padding-left: 2.25rem;
	text-transform: inherit;
	cursor: pointer;
	white-space: nowrap;
}

.g-recaptcha.affwp-recaptcha-v2 {
	margin-bottom: 1rem;
}

#affwp-affiliate-dashboard #affwp-affiliate-dashboard-tabs li {
	display: inline-block;
	padding: 0;
	margin: 0;
	margin-right: 10px;
	margin-bottom: 5px;
}

#affwp-affiliate-dashboard #affwp-affiliate-dashboard-tabs li.active {
	font-weight: bold;
	border-bottom: 1px solid;
}

#affwp-affiliate-dashboard #affwp-affiliate-dashboard-tabs li a {
	font-size: 1.2rem;
}

#affwp-graphs-filter .tablenav {
	display: flex;
	align-items: center;
}

#affwp-graphs-filter .affwp-graphs-date-options {
	font-size: 1rem;
	padding: .5rem;
	display: block;
	box-sizing: border-box;
	margin: 0;
	height: auto;
}

#affwp-graphs-filter .button {
	font-size: 1rem;
	border-width: 0;
	font-family: inherit;
	width: auto;
	padding: 0.5rem 1.5rem;
	text-transform: inherit;
	cursor: pointer;
	margin-left: 0.5rem;
}

/*
 * WPML
*/

.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 0;
}

.wpml-language-switcher-block .hasHoverBackgroundColor:hover,
.wpml-language-switcher-block .hasHoverBackgroundColor:hover {
	background-color: var(--wp--preset--color--custom-brand-05) !important;
	--hover-background-color: var(--wp--preset--color--custom-brand-05) !important;
}