.wushidao-hero,
.wushidao-featured,
.wushidao-local-seo,
.wushidao-emotional,
.wushidao-activities,
.wushidao-why,
.wushidao-schedule,
.wushidao-testimonials,
.wushidao-cta,
.wushidao-header,
.wushidao-tb-header,
.wushidao-footer {
	font-family: Inter, Poppins, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.wushidao-hero {
	position: relative;
	overflow: hidden;
	background: #F8F7F4;
	color: #111111;
}

.wushidao-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(90deg, rgba(248, 247, 244, 0.98) 0%, rgba(248, 247, 244, 0.9) 34%, rgba(248, 247, 244, 0.18) 64%, rgba(248, 247, 244, 0) 100%);
	pointer-events: none;
}

.wushidao-hero__texture {
	position: absolute;
	inset: 0;
	z-index: 2;
	background-image: radial-gradient(circle, rgba(198, 165, 92, 0.16) 1px, transparent 1px);
	background-position: left top;
	background-size: 16px 16px;
	opacity: 0.34;
	pointer-events: none;
}

.wushidao-hero__inner {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	width: min(1280px, calc(100% - 56px));
	min-height: 720px;
	margin: 0 auto;
	padding: 88px 0 118px;
}

.wushidao-hero__content {
	position: relative;
	z-index: 2;
	max-width: 620px;
}

.wushidao-hero__pretitle {
	margin: 0 0 18px;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.4;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-hero__title {
	margin: 0;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: clamp(50px, 6vw, 88px);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.92;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-hero__title span,
.wushidao-hero__title strong {
	display: block;
	font-weight: inherit;
}

.wushidao-hero__title strong {
	color: #C6A55C;
}

.wushidao-hero__brandline {
	margin: 16px 0 0;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: clamp(32px, 4vw, 56px);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-hero__lead {
	max-width: 620px;
	margin: 14px 0 0;
	font-size: clamp(24px, 3vw, 34px);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.1;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-hero__divider {
	display: flex;
	align-items: center;
	gap: 18px;
	width: min(340px, 100%);
	margin: 26px 0 24px;
	color: #C6A55C;
}

.wushidao-hero__divider::before,
.wushidao-hero__divider::after {
	content: "";
	display: block;
	flex: 1;
	height: 1px;
	background: currentColor;
	opacity: 0.7;
}

.wushidao-hero__divider span {
	width: 18px;
	height: 22px;
	border-right: 2px solid currentColor;
	border-left: 2px solid currentColor;
	transform: skewX(-12deg);
}

.wushidao-hero__description {
	max-width: 520px;
	font-size: 19px;
	line-height: 1.65;
	color: #444444;
}

.wushidao-hero__description p {
	margin: 0 0 12px;
}

.wushidao-hero__description p:last-child {
	margin-bottom: 0;
}

.wushidao-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 32px;
}

.wushidao-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 14px 24px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.wushidao-button:hover,
.wushidao-button:focus {
	text-decoration: none;
}

.wushidao-button--primary {
	background: #C6A55C;
	box-shadow: 0 10px 22px rgba(17, 17, 17, 0.08);
	color: #111111;
}

.wushidao-button--primary:hover,
.wushidao-button--primary:focus {
	background: #D4B46A;
	color: #111111;
	transform: translateY(-1px);
}

.wushidao-button--primary::after {
	content: "→";
	margin-left: 14px;
	font-size: 20px;
	line-height: 1;
}

.wushidao-button--secondary {
	border-color: rgb(198, 164, 92);
	background-color: transparent;
	color: #ffffff;
}

.wushidao-button--secondary:hover,
.wushidao-button--secondary:focus {
	border-color: #C6A55C;
	background-color: rgba(198, 165, 92, 0.14);
	color: #C6A55C;
}

.wushidao-hero__visual {
	position: absolute;
	inset: 0;
	z-index: 0;
	min-height: 100%;
	pointer-events: none;
}

.wushidao-hero__brush {
	position: absolute;
	top: 16%;
	right: 14%;
	width: min(38vw, 560px);
	aspect-ratio: 1;
	border: 28px solid rgba(198, 165, 92, 0.68);
	border-right-color: rgba(198, 165, 92, 0.24);
	border-bottom-color: rgba(198, 165, 92, 0.36);
	border-radius: 50%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	filter: drop-shadow(0 20px 28px rgba(126, 96, 30, 0.12));
	transform: rotate(-13deg);
}

.wushidao-hero__brush::before,
.wushidao-hero__brush::after {
	content: "";
	position: absolute;
	border-radius: 50%;
}

.wushidao-hero__brush::before {
	inset: 22px;
	border: 2px solid rgba(198, 165, 92, 0.3);
	border-left-color: transparent;
}

.wushidao-hero__brush::after {
	right: 14%;
	bottom: 6%;
	width: 72px;
	height: 18px;
	background: rgba(198, 165, 92, 0.36);
	transform: rotate(-20deg);
}

.wushidao-hero__image {
	position: absolute;
	inset: 0;
	bottom: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	object-fit: cover;
	object-position: center right;
}

.wushidao-hero__oriental {
	position: absolute;
	top: 22%;
	right: clamp(22px, 5vw, 86px);
	z-index: 2;
	display: flex;
	max-width: 80px;
	font-family: "Yu Mincho", "MS Mincho", serif;
	font-size: clamp(46px, 5vw, 74px);
	font-weight: 700;
	line-height: 1.04;
	writing-mode: vertical-rl;
	color: #111111;
}

.wushidao-hero-benefits {
	position: relative;
	z-index: 4;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: min(1280px, calc(100% - 56px));
	margin: -58px auto 54px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 18px 48px rgba(20, 20, 20, 0.08);
}

.wushidao-hero-benefits__item {
	display: grid;
	grid-template-columns: 72px 1fr;
	gap: 18px;
	align-items: center;
	min-height: 132px;
	padding: 28px 30px;
	border-right: 1px solid #EAEAEA;
}

.wushidao-hero-benefits__item:last-child {
	border-right: 0;
}

.wushidao-hero-benefits__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	border: 2px solid rgba(198, 165, 92, 0.82);
	border-radius: 50%;
	color: #C6A55C;
}

.wushidao-hero-benefits__icon svg,
.wushidao-hero-benefits__icon i {
	width: 26px;
	height: 26px;
	font-size: 26px;
}

.wushidao-hero-benefits__body h3 {
	margin: 0 0 6px;
	font-size: 15px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.25;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-hero-benefits__body p {
	margin: 0;
	font-size: 14px;
	line-height: 1.55;
	color: #444444;
}

@media (max-width: 1100px) {
	.wushidao-hero__inner {
		min-height: auto;
		padding-bottom: 280px;
	}

	.wushidao-hero__content {
		max-width: 760px;
	}

	.wushidao-hero__brush {
		top: 8%;
		right: 18%;
		width: min(74vw, 460px);
	}

	.wushidao-hero__image {
		object-position: 62% bottom;
	}

	.wushidao-hero__oriental {
		right: 8%;
	}

	.wushidao-hero-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-top: 0;
	}

	.wushidao-hero-benefits__item:nth-child(2n) {
		border-right: 0;
	}
}

/* Final cascade lock: full-bleed heroes and CTA banners. */
.wushidao-page-hero,
.wd-hero--inner,
.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner,
.wushidao-about-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding-right: max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	padding-left: max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
}

.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	min-height: 748px !important;
}

.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__visual,
.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__visual,
.wushidao-about-hero.wd-hero--inner .wushidao-about-hero__visual,
.wushidao-plans-hero.wd-hero--inner .wushidao-plans-hero__media,
.wushidao-contact-hero.wd-hero--inner .wushidao-contact-hero__media,
.wushidao-blog-hero.wd-hero--inner .wushidao-blog-hero__media {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
}

.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__image,
.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__image,
.wushidao-about-hero.wd-hero--inner .wushidao-about-hero__image,
.wushidao-plans-hero.wd-hero--inner .wushidao-plans-hero__media img,
.wushidao-contact-hero.wd-hero--inner .wushidao-contact-hero__media img,
.wushidao-blog-hero.wd-hero--inner .wushidao-blog-hero__media img {
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	object-fit: cover !important;
	object-position: center right !important;
}

.wushidao-cta,
.wushidao-fitboxing-final,
.wushidao-chikung-final,
.wushidao-plans-final,
.wushidao-about-final,
.wushidao-blog-final {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding: 96px max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	background-color: #111111 !important;
	background-image: linear-gradient(90deg, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.84) 48%, rgba(17, 17, 17, 0.56) 100%), url("../img/wd-bg-premium.webp") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	color: #FFFFFF !important;
}

/* Force full-bleed hero and banner sections outside Elementor boxed wrappers. */
.wushidao-page-hero,
.wd-hero--inner,
.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner,
.wushidao-about-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding-right: max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	padding-left: max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
}

.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	min-height: 748px;
}

.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__visual,
.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__visual,
.wushidao-about-hero.wd-hero--inner .wushidao-about-hero__visual,
.wushidao-plans-hero.wd-hero--inner .wushidao-plans-hero__media,
.wushidao-contact-hero.wd-hero--inner .wushidao-contact-hero__media,
.wushidao-blog-hero.wd-hero--inner .wushidao-blog-hero__media {
	inset: 0 !important;
	width: 100%;
	height: 100%;
}

.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__image,
.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__image,
.wushidao-about-hero.wd-hero--inner .wushidao-about-hero__image,
.wushidao-plans-hero.wd-hero--inner .wushidao-plans-hero__media img,
.wushidao-contact-hero.wd-hero--inner .wushidao-contact-hero__media img,
.wushidao-blog-hero.wd-hero--inner .wushidao-blog-hero__media img {
	width: 100%;
	height: 100%;
	min-height: 100%;
	object-fit: cover;
}

.wushidao-cta,
.wushidao-fitboxing-final,
.wushidao-chikung-final,
.wushidao-plans-final,
.wushidao-about-final,
.wushidao-blog-final {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding: 96px max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	overflow: hidden;
	background-color: #111111;
	background-image:
		linear-gradient(90deg, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.84) 48%, rgba(17, 17, 17, 0.56) 100%),
		url("../img/wd-bg-premium.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: #FFFFFF;
}

.wushidao-cta h2,
.wushidao-fitboxing-final h2,
.wushidao-chikung-final h2,
.wushidao-plans-final h2,
.wushidao-about-final h2,
.wushidao-blog-final h2 {
	color: #FFFFFF;
}

.wushidao-cta div,
.wushidao-fitboxing-final div,
.wushidao-chikung-final div,
.wushidao-plans-final div,
.wushidao-about-final div,
.wushidao-blog-final div {
	color: rgba(255, 255, 255, 0.86);
}

@media (max-width: 767px) {
	.wushidao-page-hero,
	.wd-hero--inner,
	.wushidao-fitboxing-hero.wd-hero--inner,
	.wushidao-chikung-hero.wd-hero--inner,
	.wushidao-about-hero.wd-hero--inner,
	.wushidao-plans-hero.wd-hero--inner,
	.wushidao-contact-hero.wd-hero--inner,
	.wushidao-blog-hero.wd-hero--inner {
		min-height: 600px;
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.wushidao-cta,
	.wushidao-fitboxing-final,
	.wushidao-chikung-final,
	.wushidao-plans-final,
	.wushidao-about-final,
	.wushidao-blog-final {
		padding: 64px 20px !important;
	}
}

.wushidao-plans-tariffs {
	background: #F8F7F4;
}

.wushidao-tariff-table {
	width: min(1120px, 100%);
	margin: 0 auto;
	overflow: hidden;
	border: 1px solid rgba(198, 165, 92, 0.42);
	background: #111111;
	color: #FFFFFF;
}

.wushidao-tariff-table__head,
.wushidao-tariff-table__row {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(220px, 0.9fr) minmax(140px, 0.4fr);
	align-items: stretch;
}

.wushidao-tariff-table__head {
	background: rgba(198, 165, 92, 0.16);
	color: #C6A55C;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
}

.wushidao-tariff-table__head span,
.wushidao-tariff-table__row > * {
	display: flex;
	align-items: center;
	min-height: 64px;
	padding: 18px 20px;
	border-right: 1px solid rgba(198, 165, 92, 0.34);
	border-bottom: 1px solid rgba(198, 165, 92, 0.24);
}

.wushidao-tariff-table__head span:last-child,
.wushidao-tariff-table__row > *:last-child {
	border-right: 0;
}

.wushidao-tariff-table__row:last-child > * {
	border-bottom: 0;
}

.wushidao-tariff-table__row strong {
	font-size: 17px;
	font-weight: 900;
	line-height: 1.25;
	color: #FFFFFF;
}

.wushidao-tariff-table__row span {
	font-size: 16px;
	line-height: 1.35;
	color: rgba(255, 255, 255, 0.78);
}

.wushidao-tariff-table__row b {
	justify-content: flex-end;
	font-size: 26px;
	font-weight: 900;
	line-height: 1;
	color: #C6A55C;
}

.wushidao-student-ranks {
	background: #FFFFFF;
}

.wushidao-ranks-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.wushidao-rank-card {
	position: relative;
	min-height: 210px;
	padding: 30px;
	overflow: hidden;
	border: 1px solid #EAEAEA;
	background: #F8F7F4;
	color: #111111;
}

.wushidao-rank-card::after {
	content: "";
	position: absolute;
	right: -58px;
	bottom: -58px;
	width: 150px;
	height: 150px;
	border: 16px solid rgba(198, 165, 92, 0.2);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-rank-card span {
	display: inline-flex;
	margin-bottom: 18px;
	padding: 8px 12px;
	background: #111111;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-rank-card h3,
.wushidao-rank-card p {
	position: relative;
	z-index: 1;
}

.wushidao-rank-card p {
	margin: 12px 0 0;
	font-size: 16px;
	line-height: 1.6;
	color: #444444;
}

.wushidao-massage-tariffs {
	background: #111111;
	color: #FFFFFF;
}

.wushidao-massage-tariffs .wushidao-section-heading h2 {
	color: #FFFFFF;
}

.wushidao-massage-tariffs .wushidao-section-heading div {
	color: rgba(255, 255, 255, 0.78);
}

.wushidao-massage-tariff-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.wushidao-massage-tariff-card {
	border: 1px solid rgba(198, 165, 92, 0.42);
	background: rgba(255, 255, 255, 0.04);
}

.wushidao-massage-tariff-card h3 {
	margin: 0;
	padding: 18px 22px;
	background: rgba(198, 165, 92, 0.14);
	font-size: 18px;
	font-weight: 900;
	line-height: 1.15;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-massage-tariff-card ul {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.wushidao-massage-tariff-card li {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 18px;
	align-items: center;
	min-height: 58px;
	padding: 16px 22px;
	border-top: 1px solid rgba(198, 165, 92, 0.24);
}

.wushidao-massage-tariff-card li span {
	display: grid;
	gap: 4px;
}

.wushidao-massage-tariff-card li strong {
	font-size: 16px;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
	color: #FFFFFF;
}

.wushidao-massage-tariff-card li small {
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.64);
}

.wushidao-massage-tariff-card li b {
	font-size: 26px;
	font-weight: 900;
	line-height: 1;
	color: #C6A55C;
	white-space: nowrap;
}

@media (max-width: 900px) {
	.wushidao-tariff-table__head,
	.wushidao-tariff-table__row {
		grid-template-columns: minmax(0, 1fr);
	}

	.wushidao-tariff-table__head {
		display: none;
	}

	.wushidao-tariff-table__row {
		border-bottom: 1px solid rgba(198, 165, 92, 0.34);
	}

	.wushidao-tariff-table__row:last-child {
		border-bottom: 0;
	}

	.wushidao-tariff-table__row > * {
		min-height: auto;
		border-right: 0;
		border-bottom: 0;
	}

	.wushidao-tariff-table__row b {
		justify-content: flex-start;
		padding-top: 0;
	}

	.wushidao-ranks-grid,
	.wushidao-massage-tariff-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.wushidao-hero::after {
		background: linear-gradient(180deg, rgba(248, 247, 244, 0.96) 0%, rgba(248, 247, 244, 0.9) 54%, rgba(248, 247, 244, 0.2) 100%);
	}

	.wushidao-hero__inner {
		width: min(100% - 28px, 560px);
		padding: 58px 0 260px;
	}

	.wushidao-hero__pretitle {
		font-size: 13px;
	}

	.wushidao-hero__title {
		font-size: 46px;
		line-height: 0.96;
	}

	.wushidao-hero__brandline {
		font-size: 32px;
	}

	.wushidao-hero__lead {
		font-size: 24px;
	}

	.wushidao-hero__divider {
		margin: 22px 0 20px;
	}

	.wushidao-hero__description {
		font-size: 17px;
	}

	.wushidao-hero__actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
		margin-top: 26px;
	}

	.wushidao-button {
		width: 100%;
	}

	.wushidao-hero__brush {
		top: 16%;
		right: 2%;
		width: min(88vw, 360px);
		border-width: 20px;
	}

	.wushidao-hero__image {
		object-position: 64% bottom;
	}

	.wushidao-hero__oriental {
		top: 14%;
		right: 0;
		font-size: 42px;
	}

	.wushidao-hero-benefits {
		grid-template-columns: 1fr;
		width: min(100% - 28px, 560px);
		margin: 0 auto 34px;
	}

	.wushidao-hero-benefits__item {
		grid-template-columns: 56px 1fr;
		min-height: auto;
		padding: 22px;
		border-right: 0;
		border-bottom: 1px solid #EAEAEA;
	}

	.wushidao-hero-benefits__item:last-child {
		border-bottom: 0;
	}

	.wushidao-hero-benefits__icon {
		width: 50px;
		height: 50px;
	}
}

.wushidao-kicker,
.wushidao-section-heading > p {
	margin: 0 0 14px;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.35;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-section-heading {
	width: min(860px, calc(100% - 56px));
	margin: 0 auto 42px;
	text-align: center;
}

.wushidao-section-heading h2 {
	margin: 0;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: clamp(42px, 5vw, 68px);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.98;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-section-heading div {
	max-width: 680px;
	margin: 20px auto 0;
	font-size: 18px;
	line-height: 1.7;
	color: #444444;
}

.wushidao-section-heading div p {
	margin: 0 0 12px;
}

.wushidao-featured {
	padding: 84px 0;
	background: #FFFFFF;
}

.wushidao-local-seo {
	--wushidao-local-bg: #F8F7F4;
	--wushidao-local-padding-top: 72px;
	--wushidao-local-padding-bottom: 76px;
	position: relative;
	width: min(1280px, calc(100% - 56px));
	margin: 64px auto 0;
	padding: var(--wushidao-local-padding-top) 58px var(--wushidao-local-padding-bottom);
	overflow: hidden;
	background-color: var(--wushidao-local-bg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: #111111;
}

.wushidao-local-seo::after {
	content: "";
	position: absolute;
	right: -78px;
	bottom: -96px;
	width: 260px;
	height: 260px;
	border: 22px solid rgba(198, 165, 92, 0.2);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
	pointer-events: none;
}

.wushidao-local-seo__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 34px;
	align-items: center;
}

.wushidao-local-seo h2 {
	max-width: 860px;
	margin: 0;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: clamp(40px, 4.8vw, 64px);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-local-seo__text {
	max-width: 780px;
	margin-top: 20px;
	font-size: 18px;
	line-height: 1.7;
	color: #444444;
}

.wushidao-local-seo__text p {
	margin: 0 0 12px;
}

.wushidao-local-seo__text p:last-child {
	margin-bottom: 0;
}

.wushidao-local-seo__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: flex-end;
}

.wushidao-local-seo .wushidao-button--secondary {
	color: #111111;
}

.wushidao-local-seo .wushidao-button--secondary:hover,
.wushidao-local-seo .wushidao-button--secondary:focus {
	color: #111111;
}

.wushidao-page-hero {
	position: relative;
	overflow: hidden;
	background: #F8F7F4;
	border-bottom: 1px solid #EAEAEA;
}

.wushidao-page-hero::before {
	content: "";
	position: absolute;
	top: 50%;
	right: min(7vw, 92px);
	width: min(28vw, 360px);
	aspect-ratio: 1;
	border: 22px solid rgba(198, 165, 92, 0.16);
	border-left-color: transparent;
	border-radius: 50%;
	transform: translateY(-50%) rotate(-18deg);
	pointer-events: none;
}

.wushidao-page-hero > .elementor-container,
.wushidao-page-hero.e-con {
	position: relative;
	z-index: 1;
	width: min(1280px, calc(100% - 56px));
	min-height: 360px;
	margin-right: auto;
	margin-left: auto;
}

.wushidao-page-hero .elementor-column,
.wushidao-page-hero .elementor-widget-wrap {
	align-content: center;
	align-items: flex-start;
}

.wushidao-page-hero__kicker {
	margin-bottom: 16px;
}

.wushidao-page-hero__kicker .elementor-heading-title {
	margin: 0;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.35;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-page-hero__title .elementor-heading-title {
	max-width: 860px;
	margin: 0;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: clamp(52px, 6vw, 86px);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.94;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-page-hero__text {
	max-width: 720px;
	margin-top: 24px;
}

.wushidao-page-hero__text p {
	margin: 0;
	font-size: 18px;
	line-height: 1.75;
	color: #444444;
}

.wushidao-page-hero__button {
	margin-top: 30px;
}

.wushidao-page-hero__button .elementor-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 14px 24px;
	border-radius: 999px;
	background: #C6A55C;
	box-shadow: 0 10px 22px rgba(17, 17, 17, 0.08);
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-page-hero__button .elementor-button:hover,
.wushidao-page-hero__button .elementor-button:focus {
	background: #D4B46A;
	color: #111111;
}

.wushidao-featured__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	width: min(1280px, calc(100% - 56px));
	margin: 0 auto;
}

.wushidao-featured-card {
	position: relative;
	display: grid;
	grid-template-rows: auto auto 1fr auto;
	align-content: start;
	min-height: 330px;
	padding: 34px;
	overflow: hidden;
	border: 1px solid #EAEAEA;
	background: #F8F7F4;
	color: #111111;
	text-decoration: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.wushidao-featured-card::before {
	content: "Ver más";
	position: relative;
	z-index: 1;
	align-self: end;
	margin-top: 28px;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-featured-card::after {
	content: "";
	position: absolute;
	right: -64px;
	bottom: -64px;
	width: 160px;
	height: 160px;
	border: 18px solid rgba(198, 165, 92, 0.2);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-featured-card:hover,
.wushidao-featured-card:focus {
	border-color: rgba(198, 165, 92, 0.58);
	box-shadow: 0 18px 42px rgba(20, 20, 20, 0.08);
	color: #111111;
	text-decoration: none;
	transform: translateY(-3px);
}

.wushidao-featured-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	margin-bottom: 26px;
	border: 2px solid rgba(198, 165, 92, 0.82);
	border-radius: 50%;
	color: #C6A55C;
}

.wushidao-featured-card__icon svg,
.wushidao-featured-card__icon i {
	width: 28px;
	height: 28px;
	font-size: 28px;
}

.wushidao-featured-card__image {
	width: 100%;
	aspect-ratio: 4 / 3;
	margin-bottom: 24px;
	object-fit: cover;
}

.wushidao-featured-card h3 {
	position: relative;
	z-index: 1;
	margin: 0 0 14px;
	font-size: 20px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.12;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-featured-card div {
	position: relative;
	z-index: 1;
	font-size: 15px;
	line-height: 1.65;
	color: #444444;
}

.wushidao-featured-card div p {
	margin: 0 0 10px;
}

.wushidao-emotional {
	position: relative;
	display: grid;
	grid-template-columns: minmax(360px, 0.72fr) minmax(0, 1fr);
	gap: clamp(28px, 4vw, 56px);
	align-items: center;
	width: min(1280px, calc(100% - 56px));
	margin: 0 auto;
	padding: 84px 0;
}

.wushidao-emotional::before {
	content: "";
	position: absolute;
	inset: 36px 0;
	z-index: -1;
	background: #111111;
}

.wushidao-emotional__content {
	position: relative;
	z-index: 2;
	padding: 72px 0 72px 72px;
	color: #FFFFFF;
}

.wushidao-emotional h2,
.wushidao-activity h2 {
	margin: 0;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: clamp(42px, 5vw, 70px);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.98;
	text-transform: uppercase;
}

.wushidao-emotional h2 {
	color: #FFFFFF;
}

.wushidao-emotional__text {
	max-width: 720px;
	margin: 24px 0 30px;
	font-size: 18px;
	line-height: 1.75;
	color: rgba(255, 255, 255, 0.78);
}

.wushidao-emotional__text p {
	margin: 0 0 12px;
}

.wushidao-emotional__image {
	position: relative;
	z-index: 1;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center center;
	border: 1px solid rgba(198, 165, 92, 0.22);
	opacity: 1;
	box-shadow: 0 24px 56px rgba(0, 0, 0, 0.18);
}

.wushidao-emotional::after {
	display: none;
}

.wushidao-activities {
	background: #F8F7F4;
}

.wushidao-activity {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
	gap: 62px;
	align-items: center;
	width: min(1280px, calc(100% - 56px));
	margin: 0 auto;
	padding: 92px 0;
	border-bottom: 1px solid #EAEAEA;
}

.wushidao-activity--reverse {
	grid-template-columns: minmax(320px, 0.72fr) minmax(0, 1fr);
}

.wushidao-activity--reverse .wushidao-activity__content {
	order: 2;
}

.wushidao-activity--reverse .wushidao-activity__visual {
	order: 1;
}

.wushidao-activity h2 {
	color: #111111;
}

.wushidao-activity__text {
	max-width: 760px;
	margin-top: 24px;
	font-size: 18px;
	line-height: 1.75;
	color: #444444;
}

.wushidao-activity__text p {
	margin: 0 0 12px;
}

.wushidao-activity__benefits,
.wushidao-activity__subitems {
	display: grid;
	gap: 12px;
	margin: 28px 0 0;
	padding: 0;
	list-style: none;
}

.wushidao-activity__benefits li,
.wushidao-activity__subitems li {
	position: relative;
	padding-left: 30px;
	font-size: 16px;
	line-height: 1.55;
	color: #444444;
}

.wushidao-activity__benefits li::before,
.wushidao-activity__subitems li::before {
	content: "";
	position: absolute;
	top: 0.7em;
	left: 0;
	width: 15px;
	height: 2px;
	background: #C6A55C;
}

.wushidao-activity__subsection {
	margin-top: 34px;
	padding: 28px;
	border-left: 3px solid #C6A55C;
	background: rgba(255, 255, 255, 0.72);
}

.wushidao-activity__subsection h3 {
	margin: 0 0 14px;
	font-size: 24px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.15;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-activity__subsection div {
	font-size: 16px;
	line-height: 1.7;
	color: #444444;
}

.wushidao-activity__phrase {
	margin: 34px 0 0;
	font-size: clamp(26px, 3vw, 38px);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.08;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-activity__visual {
	position: relative;
	display: grid;
	place-items: center;
	min-height: 420px;
	overflow: hidden;
	background: #111111;
}

.wushidao-activity__visual::before {
	content: "";
	position: absolute;
	width: 280px;
	height: 280px;
	border: 22px solid rgba(198, 165, 92, 0.38);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-activity__visual img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
	min-height: 420px;
	object-fit: cover;
}

.wushidao-activity__visual span {
	position: relative;
	z-index: 1;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: clamp(96px, 14vw, 180px);
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-why,
.wushidao-schedule,
.wushidao-testimonials,
.wushidao-cta {
	width: min(1280px, calc(100% - 56px));
	margin: 0 auto;
	padding: 84px 0;
}

.wushidao-why {
	background: #FFFFFF;
}

.wushidao-why__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.wushidao-why__item {
	display: grid;
	gap: 18px;
	align-content: start;
	min-height: 170px;
	padding: 28px;
	border: 1px solid #EAEAEA;
	background: #F8F7F4;
}

.wushidao-why__item span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border: 2px solid rgba(198, 165, 92, 0.78);
	border-radius: 50%;
	color: #C6A55C;
}

.wushidao-why__item svg,
.wushidao-why__item i {
	width: 22px;
	height: 22px;
	font-size: 22px;
}

.wushidao-why__item h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-schedule {
	text-align: center;
}

.wushidao-schedule h2,
.wushidao-testimonials h2,
.wushidao-cta h2 {
	margin: 0 0 34px;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: clamp(42px, 5vw, 68px);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.98;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-schedule__table {
	display: grid;
	margin-bottom: 30px;
	border: 1px solid #EAEAEA;
	background: #FFFFFF;
	text-align: left;
}

.wushidao-schedule__row {
	display: grid;
	grid-template-columns: 0.8fr 1.3fr 0.7fr 1fr;
	gap: 18px;
	align-items: center;
	padding: 20px 24px;
	border-bottom: 1px solid #EAEAEA;
}

.wushidao-schedule__row--no-teacher {
	grid-template-columns: 0.8fr 1.4fr 0.8fr;
}

.wushidao-schedule__row:last-child {
	border-bottom: 0;
}

.wushidao-schedule__row strong {
	font-weight: 900;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-schedule__row span {
	color: #444444;
}

.wushidao-schedule-board {
	display: grid;
	width: 100%;
	margin-bottom: 30px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	border: 1px solid #EAEAEA;
	background: #FFFFFF;
	box-shadow: 0 18px 42px rgba(17, 17, 17, 0.06);
	text-align: left;
}

.wushidao-schedule-board__head,
.wushidao-schedule-board__row {
	display: grid;
	grid-template-columns: minmax(124px, 0.72fr) repeat(5, minmax(138px, 1fr));
	min-width: 920px;
}

.wushidao-schedule-board__time-head,
.wushidao-schedule-board__day {
	display: flex;
	align-items: center;
	min-height: 58px;
	padding: 16px 18px;
	background: #111111;
	border-right: 1px solid rgba(255, 255, 255, 0.1);
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: uppercase;
	color: #FFFFFF;
}

.wushidao-schedule-board__day {
	background: #C6A55C;
	color: #111111;
}

.wushidao-schedule-board__time {
	display: flex;
	align-items: center;
	padding: 16px 18px;
	border-top: 1px solid #EAEAEA;
	border-right: 1px solid #EAEAEA;
	background: #F8F7F4;
	font-size: 14px;
	font-weight: 900;
	color: #111111;
}

.wushidao-schedule-board__cell {
	min-height: 78px;
	padding: 12px;
	border-top: 1px solid #EAEAEA;
	border-right: 1px solid #EAEAEA;
	background: #FFFFFF;
}

.wushidao-schedule-board__cell:last-child,
.wushidao-schedule-board__day:last-child {
	border-right: 0;
}

.wushidao-schedule-board__class {
	display: grid;
	gap: 4px;
	min-height: 54px;
	align-content: center;
	padding: 12px 12px 12px 14px;
	border-left: 3px solid #C6A55C;
	background: #F8F7F4;
}

.wushidao-schedule-board__class + .wushidao-schedule-board__class {
	margin-top: 8px;
}

.wushidao-schedule-board__class strong {
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.25;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-schedule-board__class span {
	font-size: 12px;
	line-height: 1.35;
	color: #444444;
}

.wushidao-schedule-board__empty {
	display: block;
	min-height: 54px;
	border: 1px dashed #EAEAEA;
	background: #F8F7F4;
	opacity: 0.55;
}

.wushidao-testimonials {
	background: #FFFFFF;
}

.wushidao-testimonials > h2 {
	text-align: center;
}

.wushidao-testimonials__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.wushidao-testimonial {
	display: grid;
	gap: 20px;
	padding: 30px;
	border: 1px solid #EAEAEA;
	background: #F8F7F4;
}

.wushidao-testimonial img {
	width: 62px;
	height: 62px;
	border-radius: 50%;
	object-fit: cover;
}

.wushidao-testimonial div {
	font-size: 16px;
	line-height: 1.7;
	color: #444444;
}

.wushidao-testimonial div p {
	margin: 0;
}

.wushidao-testimonial footer {
	display: grid;
	gap: 4px;
}

.wushidao-testimonial strong {
	font-size: 16px;
	font-weight: 900;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-testimonial span {
	font-size: 14px;
	color: #C6A55C;
}

.wushidao-cta {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 34px;
	align-items: center;
	padding: 58px;
	overflow: hidden;
	background: #111111;
	color: #FFFFFF;
}

.wushidao-cta::after {
	content: "";
	position: absolute;
	right: -80px;
	bottom: -110px;
	width: 300px;
	height: 300px;
	border: 24px solid rgba(198, 165, 92, 0.22);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-cta > * {
	position: relative;
	z-index: 1;
}

.wushidao-cta h2 {
	margin-bottom: 18px;
	color: #FFFFFF;
}

.wushidao-cta div div {
	max-width: 680px;
	font-size: 18px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.78);
}

.wushidao-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: flex-end;
}

@media (max-width: 1100px) {
	.wushidao-tb-header > .elementor-container,
	.wushidao-tb-header.e-con {
		width: min(100% - 36px, 960px);
		min-height: 82px;
	}

	.wushidao-tb-logo img {
		width: 60px;
		height: 60px;
	}

	.wushidao-tb-header__logo-col {
		width: 25% !important;
	}

	.wushidao-tb-header__menu-col {
		width: 50% !important;
	}

	.wushidao-tb-header__cta-col {
		width: 25% !important;
	}

	.wushidao-tb-cta .elementor-button {
		min-height: 46px;
		padding: 12px 16px;
		font-size: 12px;
	}

	.wushidao-featured__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wushidao-why__grid,
	.wushidao-testimonials__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wushidao-cta {
		grid-template-columns: 1fr;
	}

	.wushidao-local-seo__inner {
		grid-template-columns: 1fr;
	}

	.wushidao-local-seo__actions {
		justify-content: flex-start;
	}

	.wushidao-cta__actions {
		justify-content: flex-start;
	}

	.wushidao-emotional,
	.wushidao-activity,
	.wushidao-activity--reverse {
		grid-template-columns: 1fr;
	}

	.wushidao-emotional__content {
		padding-right: 72px;
	}

	.wushidao-activity--reverse .wushidao-activity__content,
	.wushidao-activity--reverse .wushidao-activity__visual {
		order: initial;
	}
}

@media (max-width: 767px) {
	.wushidao-tb-header > .elementor-container,
	.wushidao-tb-header.e-con {
		width: min(100% - 28px, 560px);
		min-height: 76px;
	}

	.wushidao-tb-header__logo-col {
		width: 34% !important;
	}

	.wushidao-tb-header__menu-col {
		width: 66% !important;
	}

	.wushidao-tb-header__cta-col {
		display: none;
	}

	.wushidao-tb-logo img {
		width: 54px;
		height: 54px;
	}

	.wushidao-tb-menu .elementor-menu-toggle {
		display: inline-flex;
	}

	.wushidao-tb-menu .elementor-nav-menu--dropdown {
		right: 0 !important;
		left: auto !important;
		width: min(360px, calc(100vw - 28px)) !important;
		margin-top: 14px;
		transform: none !important;
	}

	.wushidao-section-heading,
	.wushidao-page-hero > .elementor-container,
	.wushidao-page-hero.e-con,
	.wushidao-featured__grid,
	.wushidao-local-seo,
	.wushidao-emotional,
	.wushidao-activity {
		width: min(100% - 28px, 560px);
	}

	.wushidao-featured {
		padding: 58px 0;
	}

	.wushidao-page-hero > .elementor-container,
	.wushidao-page-hero.e-con {
		min-height: 300px;
	}

	.wushidao-page-hero__text p {
		font-size: 16px;
	}

	.wushidao-featured__grid {
		grid-template-columns: 1fr;
	}

	.wushidao-featured-card {
		min-height: auto;
		padding: 26px;
	}

	.wushidao-local-seo {
		margin-top: 42px;
		padding: 42px 24px;
	}

	.wushidao-local-seo__actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.wushidao-why,
	.wushidao-schedule,
	.wushidao-testimonials,
	.wushidao-cta {
		width: min(100% - 28px, 560px);
		padding: 58px 0;
	}

	.wushidao-why__grid,
	.wushidao-testimonials__grid {
		grid-template-columns: 1fr;
	}

	.wushidao-schedule__row {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.wushidao-cta {
		padding: 34px 24px;
	}

	.wushidao-cta__actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.wushidao-emotional {
		gap: 28px;
		padding: 58px 0;
	}

	.wushidao-emotional::before {
		inset: 24px -14px;
	}

	.wushidao-emotional__content {
		padding: 34px 14px;
	}

	.wushidao-emotional__image {
		aspect-ratio: 16 / 10;
	}

	.wushidao-activity {
		gap: 30px;
		padding: 62px 0;
	}

	.wushidao-activity__visual {
		min-height: 280px;
	}

	.wushidao-activity__visual img {
		min-height: 280px;
	}
}

.wushidao-header {
	position: sticky;
	top: 0;
	z-index: 999;
	overflow: visible;
	background: rgba(255, 255, 255, 0.96);
	border-bottom: 1px solid rgba(17, 17, 17, 0.06);
	box-shadow: 0 8px 24px rgba(17, 17, 17, 0.05);
	color: #111111;
}

.wushidao-tb-header {
	position: sticky;
	top: 0;
	z-index: 999;
	overflow: visible;
	background: rgba(255, 255, 255, 0.96);
	border-bottom: 1px solid rgba(17, 17, 17, 0.06);
	box-shadow: 0 8px 24px rgba(17, 17, 17, 0.05);
}

.wushidao-header .elementor-container,
.wushidao-header .elementor-column,
.wushidao-header .elementor-widget-wrap,
.wushidao-tb-header .elementor-container,
.wushidao-tb-header .elementor-column,
.wushidao-tb-header .elementor-widget-wrap,
.wushidao-tb-header .elementor-widget-nav-menu {
	overflow: visible;
}

.wushidao-tb-header > .elementor-container,
.wushidao-tb-header.e-con {
	width: min(1280px, calc(100% - 56px));
	min-height: 92px;
	margin-right: auto;
	margin-left: auto;
}

.wushidao-tb-header .elementor-column,
.wushidao-tb-header .elementor-widget-wrap {
	align-content: center;
	align-items: center;
}

.wushidao-tb-header__logo-col .elementor-widget-wrap {
	justify-content: flex-start;
}

.wushidao-tb-header__menu-col .elementor-widget-wrap {
	justify-content: center;
}

.wushidao-tb-header__cta-col .elementor-widget-wrap {
	justify-content: flex-end;
}

.wushidao-tb-logo {
	width: auto;
	margin-bottom: 0;
}

.wushidao-tb-logo img {
	display: block;
	width: 76px;
	height: 76px;
	object-fit: contain;
}

.wushidao-tb-menu {
	position: relative;
	width: 100%;
	margin-bottom: 0;
}

.wushidao-tb-menu .elementor-widget-container,
.wushidao-tb-menu nav,
.wushidao-tb-menu .elementor-nav-menu--main,
.wushidao-tb-menu .elementor-nav-menu {
	overflow: visible;
}

.wushidao-tb-menu .elementor-nav-menu {
	justify-content: center;
	gap: 8px 30px;
}

.wushidao-tb-menu .elementor-nav-menu--main .menu-item-has-children {
	position: relative;
}

.wushidao-tb-menu .elementor-nav-menu--main .menu-item-has-children::after {
	content: "";
	position: absolute;
	top: 100%;
	right: -18px;
	left: -18px;
	height: 14px;
}

.wushidao-tb-menu .elementor-nav-menu--main .elementor-item {
	padding: 12px 0;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-tb-menu .elementor-nav-menu--main .elementor-item:hover,
.wushidao-tb-menu .elementor-nav-menu--main .elementor-item:focus,
.wushidao-tb-menu .elementor-nav-menu--main .elementor-item.elementor-item-active {
	background: #F8F7F4;
	color: #C6A55C;
}

.wushidao-tb-menu .elementor-nav-menu--main .elementor-item::after {
	background: #C6A55C;
}

.wushidao-tb-menu .sub-menu,
.wushidao-tb-menu .elementor-nav-menu--dropdown {
	z-index: 1001;
	border: 0;
	background: #FFFFFF;
	box-shadow: 0 18px 40px rgba(20, 20, 20, 0.12);
}

.wushidao-tb-menu .elementor-nav-menu--main .sub-menu {
	top: calc(100% + 6px) !important;
	display: block;
	min-width: 260px;
	padding: 14px 0;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}

.wushidao-tb-menu .elementor-nav-menu--main .menu-item-has-children:hover > .sub-menu,
.wushidao-tb-menu .elementor-nav-menu--main .menu-item-has-children:focus-within > .sub-menu {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0);
}

.wushidao-tb-menu .sub-menu .elementor-sub-item,
.wushidao-tb-menu .elementor-nav-menu--dropdown .elementor-item {
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-tb-menu .sub-menu .elementor-sub-item:hover,
.wushidao-tb-menu .sub-menu .elementor-sub-item:focus,
.wushidao-tb-menu .elementor-nav-menu--dropdown .elementor-item:hover,
.wushidao-tb-menu .elementor-nav-menu--dropdown .elementor-item:focus {
	color: #C6A55C;
	background: #F8F7F4;
}

.wushidao-tb-menu .elementor-menu-toggle {
	margin-left: auto;
	border: 1px solid rgba(198, 165, 92, 0.42);
	border-radius: 999px;
	background: #FFFFFF;
	color: #111111;
}

.wushidao-tb-cta {
	margin-bottom: 0;
}

.wushidao-tb-cta .elementor-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 14px 24px;
	border-radius: 999px;
	background: #C6A55C;
	box-shadow: 0 10px 22px rgba(17, 17, 17, 0.08);
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	color: #111111;
	white-space: nowrap;
}

.wushidao-tb-cta .elementor-button:hover,
.wushidao-tb-cta .elementor-button:focus {
	background: #D4B46A;
	color: #111111;
	text-decoration: none;
}

.wushidao-header__inner {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 34px;
	align-items: center;
	width: min(1280px, calc(100% - 56px));
	min-height: 92px;
	margin: 0 auto;
}

.wushidao-header__brand {
	display: inline-flex;
	gap: 18px;
	align-items: center;
	min-width: 250px;
	text-decoration: none;
	color: #111111;
}

.wushidao-header__brand:hover,
.wushidao-header__brand:focus {
	color: #111111;
	text-decoration: none;
}

.wushidao-header__brand img {
	display: block;
	width: 76px;
	height: 76px;
	object-fit: contain;
}

.wushidao-header__brand-text {
	display: grid;
	gap: 4px;
}

.wushidao-header__brand-text strong {
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: 30px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
	text-transform: uppercase;
}

.wushidao-header__brand-text small {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.3;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-header__nav {
	justify-self: center;
}

.wushidao-header__nav--left {
	justify-self: start;
}

.wushidao-header__nav--right {
	justify-self: end;
}

.wushidao-header-menu,
.wushidao-header-menu ul,
.wushidao-mobile-menu,
.wushidao-mobile-menu ul,
.wushidao-footer-menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.wushidao-header-menu {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 30px;
	align-items: center;
	justify-content: center;
}

.wushidao-header-menu li {
	position: relative;
}

.wushidao-header-menu > li.menu-item-has-children::after {
	content: "";
	position: absolute;
	top: 100%;
	right: -18px;
	left: -18px;
	height: 12px;
}

.wushidao-header-menu a {
	position: relative;
	display: inline-flex;
	align-items: center;
	padding: 12px 0;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-header-menu a::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 4px;
	left: 0;
	height: 2px;
	background: #C6A55C;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.2s ease;
}

.wushidao-header-menu a:hover,
.wushidao-header-menu a:focus,
.wushidao-header-menu .current-menu-item > a {
	color: #C6A55C;
	text-decoration: none;
}

.wushidao-header-menu a:hover::after,
.wushidao-header-menu a:focus::after,
.wushidao-header-menu .current-menu-item > a::after {
	transform: scaleX(1);
}

.wushidao-header-menu .sub-menu {
	position: absolute;
	z-index: 1001;
	top: calc(100% + 6px);
	left: -18px;
	display: grid;
	min-width: 220px;
	padding: 14px 18px;
	background: #FFFFFF;
	box-shadow: 0 18px 40px rgba(20, 20, 20, 0.12);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
}

.wushidao-header-menu li:hover > .sub-menu,
.wushidao-header-menu li:focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.wushidao-header-menu .sub-menu a {
	display: flex;
	padding: 10px 0;
	font-size: 13px;
}

.wushidao-header__cta,
.wushidao-header__mobile-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 14px 24px;
	border-radius: 999px;
	background: #C6A55C;
	box-shadow: 0 10px 22px rgba(17, 17, 17, 0.08);
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	color: #111111;
	white-space: nowrap;
}

.wushidao-header__cta::before,
.wushidao-header__mobile-cta::before {
	content: "";
	width: 16px;
	height: 16px;
	margin-right: 10px;
	border: 2px solid currentColor;
	border-top-width: 5px;
	border-radius: 2px;
}

.wushidao-header__cta:hover,
.wushidao-header__cta:focus,
.wushidao-header__mobile-cta:hover,
.wushidao-header__mobile-cta:focus {
	background: #D4B46A;
	color: #111111;
	text-decoration: none;
}

.wushidao-header__mobile {
	display: none;
	justify-self: end;
}

.wushidao-header__mobile summary {
	display: inline-grid;
	gap: 5px;
	align-content: center;
	width: 48px;
	height: 48px;
	padding: 0 12px;
	border: 1px solid rgba(198, 165, 92, 0.42);
	border-radius: 999px;
	background: #FFFFFF;
	cursor: pointer;
	list-style: none;
}

.wushidao-header__mobile summary::-webkit-details-marker {
	display: none;
}

.wushidao-header__mobile summary span {
	display: block;
	height: 2px;
	background: #111111;
	transition: transform 0.2s ease, opacity 0.2s ease;
}

.wushidao-header__mobile[open] summary span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.wushidao-header__mobile[open] summary span:nth-child(2) {
	opacity: 0;
}

.wushidao-header__mobile[open] summary span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

.wushidao-header__mobile-panel {
	position: absolute;
	z-index: 1001;
	right: 28px;
	left: 28px;
	top: calc(100% + 12px);
	display: grid;
	gap: 18px;
	padding: 22px;
	background: #FFFFFF;
	box-shadow: 0 24px 56px rgba(20, 20, 20, 0.14);
}

.wushidao-mobile-menu {
	display: grid;
	gap: 2px;
}

.wushidao-mobile-menu a {
	display: flex;
	padding: 12px 0;
	border-bottom: 1px solid #EAEAEA;
	font-size: 15px;
	font-weight: 800;
	text-decoration: none;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-mobile-menu a:hover,
.wushidao-mobile-menu a:focus {
	color: #C6A55C;
	text-decoration: none;
}

.wushidao-mobile-menu .sub-menu {
	padding-left: 14px;
}

.wushidao-footer {
	position: relative;
	overflow: hidden;
	background: #111111;
	color: #F8F7F4;
}

.wushidao-footer__texture {
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(198, 165, 92, 0.2) 1px, transparent 1px);
	background-size: 18px 18px;
	opacity: 0.18;
	pointer-events: none;
}

.wushidao-footer::before {
	content: "";
	position: absolute;
	top: -180px;
	right: 8%;
	width: 360px;
	height: 360px;
	border: 24px solid rgba(198, 165, 92, 0.2);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-footer__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(260px, 1.4fr) minmax(160px, 0.7fr) minmax(220px, 0.9fr) minmax(140px, 0.5fr);
	gap: 46px;
	width: calc(100% - 40px);
	max-width: none;
	margin: 0 auto;
	padding: 20px 0 50px;
}

.wushidao-footer__brand {
	display: inline-flex;
	gap: 18px;
	align-items: center;
	margin-bottom: 22px;
	text-decoration: none;
	color: #FFFFFF;
}

.wushidao-footer__brand:hover,
.wushidao-footer__brand:focus {
	color: #FFFFFF;
	text-decoration: none;
}

.wushidao-footer__brand img {
	width: 74px;
	height: 74px;
	object-fit: contain;
}

.wushidao-footer__brand strong {
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-size: 31px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
	text-transform: uppercase;
}

.wushidao-footer__description {
	max-width: 440px;
	color: rgba(247, 242, 232, 0.78);
	font-size: 16px;
	line-height: 1.7;
}

.wushidao-footer__description p {
	margin: 0 0 12px;
}

.wushidao-footer__description p:last-child {
	margin-bottom: 0;
}

.wushidao-footer__column h2 {
	margin: 0 0 20px;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.25;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-footer__social-title {
	margin-top: 24px !important;
}

.wushidao-footer-menu {
	display: grid;
	gap: 10px;
}

.wushidao-footer-menu a,
.wushidao-footer__contact a {
	color: rgba(247, 242, 232, 0.78);
	text-decoration: none;
}

.wushidao-footer-menu a:hover,
.wushidao-footer-menu a:focus,
.wushidao-footer__contact a:hover,
.wushidao-footer__contact a:focus {
	color: #C6A55C;
	text-decoration: none;
}

.wushidao-footer__contact {
	display: grid;
	gap: 10px;
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
	color: rgba(247, 242, 232, 0.78);
}

.wushidao-footer__whatsapp {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 11px 16px;
	border: 1px solid rgba(198, 165, 92, 0.64);
	border-radius: 999px;
	font-size: 13px;
	font-weight: 900;
	text-decoration: none;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-footer__whatsapp:hover,
.wushidao-footer__whatsapp:focus {
	background: #C6A55C;
	color: #111111;
	text-decoration: none;
}

.wushidao-footer__socials {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.wushidao-footer__social {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(198, 165, 92, 0.42);
	border-radius: 50%;
	color: #C6A55C;
	text-decoration: none;
}

.wushidao-footer__social:hover,
.wushidao-footer__social:focus {
	background: #C6A55C;
	color: #111111;
	text-decoration: none;
}

.wushidao-footer__social svg,
.wushidao-footer__social i {
	width: 18px;
	height: 18px;
	font-size: 18px;
}

.wushidao-footer__bottom {
	position: relative;
	z-index: 1;
	width: calc(100% - 40px);
	max-width: none;
	margin: 0 auto;
	padding: 24px 0;
	border-top: 1px solid rgba(247, 242, 232, 0.12);
	color: rgba(247, 242, 232, 0.58);
}

.wushidao-footer__bottom p {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
}

.wushidao-fitboxing {
	overflow: hidden;
	background: #FFFFFF;
	font-family: Inter, Poppins, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	color: #111111;
}

.wushidao-fitboxing h1,
.wushidao-fitboxing h2 {
	margin: 0;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.96;
	text-transform: uppercase;
}

.wushidao-fitboxing h1 {
	font-size: clamp(54px, 6.4vw, 96px);
}

.wushidao-fitboxing h2 {
	font-size: clamp(42px, 5vw, 70px);
}

.wushidao-fitboxing h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-fitboxing__text,
.wushidao-fitboxing-hero__text {
	max-width: 740px;
	font-size: 18px;
	line-height: 1.75;
	color: #444444;
}

.wushidao-fitboxing__text p,
.wushidao-fitboxing-hero__text p,
.wushidao-fitboxing-final div p {
	margin: 0 0 12px;
}

.wushidao-fitboxing__text p:last-child,
.wushidao-fitboxing-hero__text p:last-child,
.wushidao-fitboxing-final div p:last-child {
	margin-bottom: 0;
}

.wushidao-fitboxing-hero,
.wushidao-fitboxing-split,
.wushidao-fitboxing-benefits,
.wushidao-fitboxing-simple,
.wushidao-fitboxing-gallery,
.wushidao-fitboxing-local,
.wushidao-fitboxing-faq,
.wushidao-fitboxing-final {
	width: min(1280px, calc(100% - 56px));
	margin: 0 auto;
}

.wushidao-fitboxing-hero {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1fr);
	gap: clamp(34px, 5vw, 72px);
	align-items: center;
	min-height: 700px;
	padding: 90px 0 84px;
}

.wushidao-fitboxing-hero__content {
	display: grid;
	gap: 24px;
	align-content: center;
}

.wushidao-fitboxing-hero__visual,
.wushidao-fitboxing-split__visual {
	position: relative;
	min-height: 500px;
	overflow: hidden;
	background: #111111;
}

.wushidao-fitboxing-hero__visual::before,
.wushidao-fitboxing-split__visual::before {
	content: "";
	position: absolute;
	right: -90px;
	bottom: -90px;
	width: 280px;
	height: 280px;
	border: 24px solid rgba(198, 165, 92, 0.32);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-fitboxing-hero__image,
.wushidao-fitboxing-split__image {
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	min-height: 500px;
	object-fit: cover;
}

.wushidao-fitboxing-mark {
	position: relative;
	z-index: 1;
	display: grid;
	place-content: center;
	min-height: inherit;
	padding: 40px;
	color: #C6A55C;
	text-align: center;
}

.wushidao-fitboxing-mark span,
.wushidao-fitboxing-mark strong {
	display: block;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.9;
}

.wushidao-fitboxing-mark span {
	font-size: clamp(82px, 11vw, 150px);
	color: rgba(198, 165, 92, 0.34);
}

.wushidao-fitboxing-mark strong {
	font-size: clamp(54px, 8vw, 112px);
	color: #C6A55C;
}

.wushidao-functional-mark {
	position: relative;
	z-index: 1;
	display: grid;
	place-content: center;
	min-height: inherit;
	padding: 40px;
	color: #C6A55C;
	text-align: center;
}

.wushidao-functional-mark span,
.wushidao-functional-mark strong {
	display: block;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.9;
}

.wushidao-functional-mark span {
	font-size: clamp(64px, 8vw, 112px);
	color: rgba(198, 165, 92, 0.34);
}

.wushidao-functional-mark strong {
	font-size: clamp(48px, 7vw, 96px);
	color: #C6A55C;
}

.wushidao-fitboxing__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 8px;
}

.wushidao-fitboxing .wushidao-button--secondary {
	border-color: rgba(17, 17, 17, 0.22);
	color: #111111;
}

.wushidao-fitboxing .wushidao-button--secondary:hover,
.wushidao-fitboxing .wushidao-button--secondary:focus {
	border-color: #C6A55C;
	color: #111111;
}

.wushidao-fitboxing-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 0.78fr);
	gap: clamp(34px, 5vw, 70px);
	align-items: center;
	padding: 90px 0;
	border-top: 1px solid #EAEAEA;
}

.wushidao-fitboxing-split__content {
	display: grid;
	gap: 24px;
}

.wushidao-fitboxing-mini-grid,
.wushidao-fitboxing-card-grid {
	display: grid;
	gap: 18px;
}

.wushidao-fitboxing-mini-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wushidao-fitboxing-mini-grid article,
.wushidao-fitboxing-card {
	position: relative;
	overflow: hidden;
	padding: 28px;
	border: 1px solid #EAEAEA;
	background: #F8F7F4;
}

.wushidao-fitboxing-mini-grid article p,
.wushidao-fitboxing-card p {
	margin: 12px 0 0;
	font-size: 15px;
	line-height: 1.65;
	color: #444444;
}

.wushidao-fitboxing-benefits,
.wushidao-fitboxing-simple,
.wushidao-fitboxing-faq {
	padding: 90px 0;
}

.wushidao-fitboxing-benefits > h2,
.wushidao-fitboxing-faq > h2 {
	max-width: 760px;
	margin: 0 auto 42px;
	text-align: center;
}

.wushidao-fitboxing-card-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wushidao-fitboxing-card span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 22px;
	border: 2px solid rgba(198, 165, 92, 0.78);
	border-radius: 50%;
	color: #C6A55C;
}

.wushidao-fitboxing-card span svg,
.wushidao-fitboxing-card span i {
	width: 24px;
	height: 24px;
	font-size: 24px;
}

.wushidao-fitboxing-boxing {
	width: 100%;
	max-width: none;
	padding-right: max(28px, calc((100vw - 1280px) / 2));
	padding-left: max(28px, calc((100vw - 1280px) / 2));
	background: #111111;
	color: #FFFFFF;
}

.wushidao-fitboxing-boxing h2,
.wushidao-fitboxing-final h2 {
	color: #FFFFFF;
}

.wushidao-fitboxing-boxing .wushidao-fitboxing__text {
	color: rgba(255, 255, 255, 0.78);
}

.wushidao-fitboxing-boxing .wushidao-fitboxing-split__visual {
	border: 1px solid rgba(198, 165, 92, 0.28);
}

.wushidao-fitboxing-gallery {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	padding: 0 0 90px;
}

.wushidao-fitboxing-gallery img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.wushidao-fitboxing-local {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 34px;
	align-items: center;
	padding: 58px;
	overflow: hidden;
	background: #F8F7F4;
}

.wushidao-fitboxing-local::after {
	content: "";
	position: absolute;
	right: -78px;
	bottom: -96px;
	width: 260px;
	height: 260px;
	border: 22px solid rgba(198, 165, 92, 0.2);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-fitboxing-local > * {
	position: relative;
	z-index: 1;
}

.wushidao-fitboxing-local .wushidao-fitboxing__text {
	margin-top: 18px;
}

.wushidao-fitboxing-faq__items {
	display: grid;
	gap: 12px;
	max-width: 920px;
	margin: 0 auto;
}

.wushidao-fitboxing-faq details {
	border: 1px solid #EAEAEA;
	background: #FFFFFF;
}

.wushidao-fitboxing-faq summary {
	padding: 22px 26px;
	font-size: 17px;
	font-weight: 900;
	text-transform: uppercase;
	cursor: pointer;
}

.wushidao-fitboxing-faq details div {
	padding: 0 26px 24px;
	font-size: 16px;
	line-height: 1.7;
	color: #444444;
}

.wushidao-fitboxing-final {
	display: grid;
	justify-items: center;
	gap: 22px;
	margin-bottom: 84px;
	padding: 72px 42px;
	background: #111111;
	color: #FFFFFF;
	text-align: center;
}

.wushidao-fitboxing-final div {
	max-width: 720px;
	font-size: 18px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.78);
}

@media (max-width: 1100px) {
	.wushidao-fitboxing-hero,
	.wushidao-fitboxing-split,
	.wushidao-fitboxing-boxing,
	.wushidao-fitboxing-local {
		grid-template-columns: 1fr;
	}

	.wushidao-fitboxing-card-grid,
	.wushidao-fitboxing-mini-grid,
	.wushidao-fitboxing-gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wushidao-fitboxing-local {
		justify-items: start;
	}
}

@media (max-width: 767px) {
	.wushidao-fitboxing-hero,
	.wushidao-fitboxing-split,
	.wushidao-fitboxing-benefits,
	.wushidao-fitboxing-simple,
	.wushidao-fitboxing-gallery,
	.wushidao-fitboxing-local,
	.wushidao-fitboxing-faq,
	.wushidao-fitboxing-final {
		width: min(100% - 28px, 560px);
	}

	.wushidao-fitboxing h1 {
		font-size: 48px;
	}

	.wushidao-fitboxing-hero,
	.wushidao-fitboxing-split,
	.wushidao-fitboxing-benefits,
	.wushidao-fitboxing-simple,
	.wushidao-fitboxing-faq {
		padding: 58px 0;
	}

	.wushidao-fitboxing-hero__visual,
	.wushidao-fitboxing-split__visual,
	.wushidao-fitboxing-hero__image,
	.wushidao-fitboxing-split__image {
		min-height: 320px;
	}

	.wushidao-fitboxing-card-grid,
	.wushidao-fitboxing-mini-grid,
	.wushidao-fitboxing-gallery {
		grid-template-columns: 1fr;
	}

	.wushidao-fitboxing__actions,
	.wushidao-fitboxing-local {
		display: grid;
		grid-template-columns: 1fr;
	}

	.wushidao-fitboxing-local,
	.wushidao-fitboxing-final {
		padding: 38px 24px;
	}
}

.wushidao-chikung {
	overflow: hidden;
	background: #FFFFFF;
	font-family: Inter, Poppins, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	color: #111111;
}

.wushidao-chikung h1,
.wushidao-chikung h2 {
	margin: 0;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.96;
	text-transform: uppercase;
}

.wushidao-chikung h1 {
	font-size: clamp(52px, 6vw, 92px);
}

.wushidao-chikung h2 {
	font-size: clamp(40px, 4.7vw, 68px);
}

.wushidao-chikung h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-chikung__text,
.wushidao-chikung-hero__text {
	max-width: 760px;
	font-size: 18px;
	line-height: 1.78;
	color: #444444;
}

.wushidao-chikung__text p,
.wushidao-chikung-hero__text p,
.wushidao-chikung-final div p {
	margin: 0 0 12px;
}

.wushidao-chikung__text p:last-child,
.wushidao-chikung-hero__text p:last-child,
.wushidao-chikung-final div p:last-child {
	margin-bottom: 0;
}

.wushidao-chikung-hero,
.wushidao-chikung-split,
.wushidao-chikung-benefits,
.wushidao-chikung-simple,
.wushidao-chikung-gallery,
.wushidao-chikung-local,
.wushidao-chikung-faq,
.wushidao-chikung-final {
	width: min(1280px, calc(100% - 56px));
	margin: 0 auto;
}

.wushidao-chikung-hero {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(420px, 1fr);
	gap: clamp(34px, 5vw, 72px);
	align-items: center;
	min-height: 700px;
	padding: 90px 0 84px;
}

.wushidao-chikung-hero__content {
	display: grid;
	gap: 24px;
	align-content: center;
}

.wushidao-chikung-hero__visual,
.wushidao-chikung-split__visual {
	position: relative;
	min-height: 500px;
	overflow: hidden;
	background: #F8F7F4;
	border: 1px solid rgba(198, 165, 92, 0.22);
}

.wushidao-chikung-hero__visual::before,
.wushidao-chikung-split__visual::before {
	content: "";
	position: absolute;
	right: -90px;
	bottom: -90px;
	width: 280px;
	height: 280px;
	border: 20px solid rgba(198, 165, 92, 0.22);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-chikung-hero__image,
.wushidao-chikung-split__image {
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	min-height: 500px;
	object-fit: cover;
}

.wushidao-chikung-mark {
	position: relative;
	z-index: 1;
	display: grid;
	place-content: center;
	min-height: inherit;
	padding: 40px;
	color: #C6A55C;
	text-align: center;
}

.wushidao-chikung-mark span,
.wushidao-chikung-mark strong {
	display: block;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.9;
}

.wushidao-chikung-mark span {
	font-size: clamp(80px, 10vw, 140px);
	color: rgba(198, 165, 92, 0.28);
}

.wushidao-chikung-mark strong {
	font-size: clamp(54px, 7.8vw, 108px);
	color: #C6A55C;
}

.wushidao-massage-mark {
	position: relative;
	z-index: 1;
	display: grid;
	place-content: center;
	min-height: inherit;
	padding: 40px;
	color: #C6A55C;
	text-align: center;
}

.wushidao-massage-mark span,
.wushidao-massage-mark strong {
	display: block;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.9;
}

.wushidao-massage-mark span {
	font-size: clamp(62px, 8vw, 112px);
	color: rgba(198, 165, 92, 0.28);
}

.wushidao-massage-mark strong {
	font-size: clamp(54px, 7.8vw, 108px);
	color: #C6A55C;
}

.wushidao-chikung__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 8px;
}

.wushidao-chikung .wushidao-button--secondary {
	border-color: rgba(17, 17, 17, 0.22);
	color: #111111;
}

.wushidao-chikung .wushidao-button--secondary:hover,
.wushidao-chikung .wushidao-button--secondary:focus {
	border-color: #C6A55C;
	color: #111111;
}

.wushidao-chikung-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 0.78fr);
	gap: clamp(34px, 5vw, 70px);
	align-items: center;
	padding: 90px 0;
	border-top: 1px solid #EAEAEA;
}

.wushidao-chikung-split__content {
	display: grid;
	gap: 24px;
}

.wushidao-chikung-breathing {
	width: 100%;
	max-width: none;
	padding-right: max(28px, calc((100vw - 1280px) / 2));
	padding-left: max(28px, calc((100vw - 1280px) / 2));
	background: #F8F7F4;
	border-top: 0;
}

.wushidao-chikung-breathing .wushidao-chikung-split__visual {
	background: #FFFFFF;
}

.wushidao-chikung-mini-grid,
.wushidao-chikung-card-grid {
	display: grid;
	gap: 18px;
}

.wushidao-chikung-mini-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wushidao-chikung-audience .wushidao-chikung-mini-grid,
.wushidao-chikung-classes .wushidao-chikung-mini-grid {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.wushidao-chikung-mini-grid article,
.wushidao-chikung-card {
	position: relative;
	overflow: hidden;
	padding: 28px;
	border: 1px solid #EAEAEA;
	background: #FFFFFF;
}

.wushidao-chikung-card {
	background: #F8F7F4;
}

.wushidao-chikung-mini-grid article p,
.wushidao-chikung-card p {
	margin: 12px 0 0;
	font-size: 15px;
	line-height: 1.68;
	color: #444444;
}

.wushidao-chikung-benefits,
.wushidao-chikung-simple,
.wushidao-chikung-faq {
	padding: 90px 0;
}

.wushidao-chikung-benefits > h2,
.wushidao-chikung-faq > h2 {
	max-width: 800px;
	margin: 0 auto 42px;
	text-align: center;
}

.wushidao-chikung-card-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wushidao-chikung-card span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 22px;
	border: 2px solid rgba(198, 165, 92, 0.78);
	border-radius: 50%;
	color: #C6A55C;
}

.wushidao-chikung-card span svg,
.wushidao-chikung-card span i {
	width: 24px;
	height: 24px;
	font-size: 24px;
}

.wushidao-chikung-gallery {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	padding: 0 0 90px;
}

.wushidao-chikung-gallery img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.wushidao-chikung-local {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 34px;
	align-items: center;
	padding: 58px;
	overflow: hidden;
	background: #111111;
	color: #FFFFFF;
}

.wushidao-chikung-local::after {
	content: "";
	position: absolute;
	right: -78px;
	bottom: -96px;
	width: 260px;
	height: 260px;
	border: 22px solid rgba(198, 165, 92, 0.2);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-chikung-local > * {
	position: relative;
	z-index: 1;
}

.wushidao-chikung-local h2,
.wushidao-chikung-final h2 {
	color: #FFFFFF;
}

.wushidao-chikung-local .wushidao-chikung__text {
	margin-top: 18px;
	color: rgba(255, 255, 255, 0.78);
}

.wushidao-chikung-faq__items {
	display: grid;
	gap: 12px;
	max-width: 920px;
	margin: 0 auto;
}

.wushidao-chikung-faq details {
	border: 1px solid #EAEAEA;
	background: #FFFFFF;
}

.wushidao-chikung-faq summary {
	padding: 22px 26px;
	font-size: 17px;
	font-weight: 900;
	text-transform: uppercase;
	cursor: pointer;
}

.wushidao-chikung-faq details div {
	padding: 0 26px 24px;
	font-size: 16px;
	line-height: 1.7;
	color: #444444;
}

.wushidao-chikung-final {
	display: grid;
	justify-items: center;
	gap: 22px;
	margin-bottom: 84px;
	padding: 72px 42px;
	background: #111111;
	color: #FFFFFF;
	text-align: center;
}

.wushidao-chikung-final div {
	max-width: 720px;
	font-size: 18px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.78);
}

@media (max-width: 1100px) {
	.wushidao-chikung-hero,
	.wushidao-chikung-split,
	.wushidao-chikung-breathing,
	.wushidao-chikung-local {
		grid-template-columns: 1fr;
	}

	.wushidao-chikung-card-grid,
	.wushidao-chikung-mini-grid,
	.wushidao-chikung-audience .wushidao-chikung-mini-grid,
	.wushidao-chikung-classes .wushidao-chikung-mini-grid,
	.wushidao-chikung-gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wushidao-chikung-local {
		justify-items: start;
	}
}

@media (max-width: 767px) {
	.wushidao-chikung-hero,
	.wushidao-chikung-split,
	.wushidao-chikung-benefits,
	.wushidao-chikung-simple,
	.wushidao-chikung-gallery,
	.wushidao-chikung-local,
	.wushidao-chikung-faq,
	.wushidao-chikung-final {
		width: min(100% - 28px, 560px);
	}

	.wushidao-chikung h1 {
		font-size: 46px;
	}

	.wushidao-chikung-hero,
	.wushidao-chikung-split,
	.wushidao-chikung-benefits,
	.wushidao-chikung-simple,
	.wushidao-chikung-faq {
		padding: 58px 0;
	}

	.wushidao-chikung-hero__visual,
	.wushidao-chikung-split__visual,
	.wushidao-chikung-hero__image,
	.wushidao-chikung-split__image {
		min-height: 320px;
	}

	.wushidao-chikung-card-grid,
	.wushidao-chikung-mini-grid,
	.wushidao-chikung-audience .wushidao-chikung-mini-grid,
	.wushidao-chikung-classes .wushidao-chikung-mini-grid,
	.wushidao-chikung-gallery {
		grid-template-columns: 1fr;
	}

	.wushidao-chikung__actions,
	.wushidao-chikung-local {
		display: grid;
		grid-template-columns: 1fr;
	}

	.wushidao-chikung-local,
	.wushidao-chikung-final {
		padding: 38px 24px;
	}
}

@media (max-width: 1100px) {
	.wushidao-header__inner {
		grid-template-columns: auto 1fr auto;
		gap: 18px;
	}

	.wushidao-header__nav,
	.wushidao-header__cta {
		display: none;
	}

	.wushidao-header__mobile {
		display: block;
	}

	.wushidao-footer__inner {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 767px) {
	.wushidao-header__inner {
		width: min(100% - 28px, 560px);
		min-height: 78px;
	}

	.wushidao-header__brand {
		min-width: 0;
		gap: 12px;
	}

	.wushidao-header__brand img {
		width: 54px;
		height: 54px;
	}

	.wushidao-header__brand-text strong {
		font-size: 23px;
	}

	.wushidao-header__brand-text small {
		display: none;
	}

	.wushidao-header__mobile-panel {
		right: 14px;
		left: 14px;
	}

	.wushidao-footer__inner {
		grid-template-columns: 1fr;
		width: calc(100% - 40px);
		max-width: none;
		gap: 34px;
		padding: 20px 0 36px;
	}

	.wushidao-footer__bottom {
		width: calc(100% - 40px);
		max-width: none;
	}
}

body.page-id-21 .wushidao-hero__inner,
body.page-id-21 .wushidao-hero-benefits,
body.page-id-21 .wushidao-section-heading,
body.page-id-21 .wushidao-featured__grid,
body.page-id-21 .wushidao-local-seo,
body.page-id-21 .wushidao-emotional,
body.page-id-21 .wushidao-activity,
body.page-id-21 .wushidao-why,
body.page-id-21 .wushidao-schedule,
body.page-id-21 .wushidao-testimonials,
body.page-id-21 .wushidao-cta,
body.elementor-page-21 .wushidao-hero__inner,
body.elementor-page-21 .wushidao-hero-benefits,
body.elementor-page-21 .wushidao-section-heading,
body.elementor-page-21 .wushidao-featured__grid,
body.elementor-page-21 .wushidao-local-seo,
body.elementor-page-21 .wushidao-emotional,
body.elementor-page-21 .wushidao-activity,
body.elementor-page-21 .wushidao-why,
body.elementor-page-21 .wushidao-schedule,
body.elementor-page-21 .wushidao-testimonials,
body.elementor-page-21 .wushidao-cta,
body.home .wushidao-hero__inner,
body.home .wushidao-hero-benefits,
body.home .wushidao-section-heading,
body.home .wushidao-featured__grid,
body.home .wushidao-local-seo,
body.home .wushidao-emotional,
body.home .wushidao-activity,
body.home .wushidao-why,
body.home .wushidao-schedule,
body.home .wushidao-testimonials,
body.home .wushidao-cta {
	width: min(1600px, calc(100% - 40px));
	max-width: 1600px;
}

.wushidao-plans {
	overflow: hidden;
	background: #FFFFFF;
	font-family: Inter, Poppins, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	color: #111111;
}

.wushidao-plans h1,
.wushidao-plans h2 {
	margin: 0;
	font-family: "Bebas Neue", Oswald, Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 0.96;
	text-transform: uppercase;
}

.wushidao-plans h1 {
	font-size: clamp(54px, 6.4vw, 96px);
}

.wushidao-plans h2 {
	font-size: clamp(40px, 4.8vw, 68px);
}

.wushidao-plans h3 {
	margin: 0;
	font-size: 19px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.18;
	text-transform: uppercase;
	color: #111111;
}

.wushidao-plans-hero,
.wushidao-plans-section,
.wushidao-plans-trial,
.wushidao-plans-faq,
.wushidao-plans-final {
	width: min(1280px, calc(100% - 56px));
	margin: 0 auto;
}

.wushidao-plans-hero {
	position: relative;
	display: grid;
	align-content: center;
	min-height: 560px;
	padding: 92px 0;
	border-bottom: 1px solid #EAEAEA;
}

.wushidao-plans-hero::after,
.wushidao-plans-trial::after {
	content: "";
	position: absolute;
	right: -76px;
	bottom: -92px;
	width: 250px;
	height: 250px;
	border: 22px solid rgba(198, 165, 92, 0.18);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
	pointer-events: none;
}

.wushidao-plans-hero > * {
	position: relative;
	z-index: 1;
}

.wushidao-plans__lead,
.wushidao-plans__text,
.wushidao-plans-final div {
	max-width: 760px;
	margin-top: 22px;
	font-size: 18px;
	line-height: 1.75;
	color: #444444;
}

.wushidao-plans__lead p,
.wushidao-plans__text p,
.wushidao-plans-final div p {
	margin: 0 0 12px;
}

.wushidao-plans__lead p:last-child,
.wushidao-plans__text p:last-child,
.wushidao-plans-final div p:last-child {
	margin-bottom: 0;
}

.wushidao-plans__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 32px;
}

.wushidao-plans .wushidao-button--secondary {
	border-color: rgba(17, 17, 17, 0.22);
	color: #111111;
}

.wushidao-plans .wushidao-button--secondary:hover,
.wushidao-plans .wushidao-button--secondary:focus {
	border-color: #C6A55C;
	color: #111111;
}

.wushidao-plans-section,
.wushidao-plans-faq {
	padding: 88px 0;
}

.wushidao-plans-option-grid,
.wushidao-plans-price-grid {
	display: grid;
	gap: 18px;
}

.wushidao-plans-option-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.wushidao-plans-price-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.wushidao-plans-option,
.wushidao-plans-price {
	position: relative;
	display: grid;
	align-content: start;
	overflow: hidden;
	border: 1px solid #EAEAEA;
	background: #F8F7F4;
}

.wushidao-plans-option {
	gap: 18px;
	padding: 30px;
}

.wushidao-plans-option::after,
.wushidao-plans-price::after {
	content: "";
	position: absolute;
	right: -62px;
	bottom: -72px;
	width: 160px;
	height: 160px;
	border: 16px solid rgba(198, 165, 92, 0.16);
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-18deg);
}

.wushidao-plans-option > *,
.wushidao-plans-price > * {
	position: relative;
	z-index: 1;
}

.wushidao-plans-option span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	border: 2px solid rgba(198, 165, 92, 0.78);
	border-radius: 50%;
	color: #C6A55C;
}

.wushidao-plans-option span svg,
.wushidao-plans-option span i {
	width: 25px;
	height: 25px;
	font-size: 25px;
}

.wushidao-plans-option img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.wushidao-plans-option p,
.wushidao-plans-price p {
	margin: 0;
	font-size: 15px;
	line-height: 1.68;
	color: #444444;
}

.wushidao-plans-option a:not(.wushidao-button) {
	margin-top: 8px;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	color: #C6A55C;
	text-decoration: none;
}

.wushidao-plans-recommended {
	width: 100%;
	max-width: none;
	padding-right: max(28px, calc((100vw - 1280px) / 2));
	padding-left: max(28px, calc((100vw - 1280px) / 2));
	background: #111111;
	color: #FFFFFF;
}

.wushidao-plans-recommended .wushidao-section-heading h2 {
	color: #FFFFFF;
}

.wushidao-plans-recommended .wushidao-section-heading div {
	color: rgba(255, 255, 255, 0.72);
}

.wushidao-plans-price {
	gap: 18px;
	padding: 32px;
	background: #FFFFFF;
}

.wushidao-plans-price strong {
	display: block;
	font-size: 24px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	color: #C6A55C;
}

.wushidao-plans-price ul {
	display: grid;
	gap: 10px;
	margin: 6px 0 8px;
	padding: 0;
	list-style: none;
}

.wushidao-plans-price li {
	position: relative;
	padding-left: 24px;
	font-size: 15px;
	line-height: 1.55;
	color: #444444;
}

.wushidao-plans-price li::before {
	content: "";
	position: absolute;
	top: 0.72em;
	left: 0;
	width: 14px;
	height: 2px;
	background: #C6A55C;
}

.wushidao-plans-trial {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 34px;
	align-items: center;
	padding: 58px;
	overflow: hidden;
	background: #F8F7F4;
}

.wushidao-plans-trial > * {
	position: relative;
	z-index: 1;
}

.wushidao-plans-faq > h2 {
	max-width: 840px;
	margin: 0 auto 42px;
	text-align: center;
}

.wushidao-plans-faq__items {
	display: grid;
	gap: 12px;
	max-width: 920px;
	margin: 0 auto;
}

.wushidao-plans-faq details {
	border: 1px solid #EAEAEA;
	background: #FFFFFF;
}

.wushidao-plans-faq summary {
	padding: 22px 26px;
	font-size: 17px;
	font-weight: 900;
	text-transform: uppercase;
	cursor: pointer;
}

.wushidao-plans-faq details div {
	padding: 0 26px 24px;
	font-size: 16px;
	line-height: 1.7;
	color: #444444;
}

.wushidao-plans-final {
	display: grid;
	justify-items: center;
	gap: 22px;
	margin-bottom: 84px;
	padding: 72px 42px;
	background: #111111;
	color: #FFFFFF;
	text-align: center;
}

.wushidao-plans-final h2 {
	color: #FFFFFF;
}

.wushidao-plans-final div {
	margin-top: 0;
	color: rgba(255, 255, 255, 0.78);
}

@media (max-width: 1100px) {
	.wushidao-plans-option-grid,
	.wushidao-plans-price-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wushidao-plans-trial {
		grid-template-columns: 1fr;
		justify-items: start;
	}
}

@media (max-width: 767px) {
	.wushidao-plans-hero,
	.wushidao-plans-section,
	.wushidao-plans-trial,
	.wushidao-plans-faq,
	.wushidao-plans-final {
		width: min(100% - 28px, 560px);
	}

	.wushidao-plans h1 {
		font-size: 48px;
	}

	.wushidao-plans-hero,
	.wushidao-plans-section,
	.wushidao-plans-faq {
		padding: 58px 0;
	}

	.wushidao-plans-option-grid,
	.wushidao-plans-price-grid {
		grid-template-columns: 1fr;
	}

	.wushidao-plans__actions,
	.wushidao-plans-trial {
		display: grid;
		grid-template-columns: 1fr;
	}

	.wushidao-plans-trial,
	.wushidao-plans-final {
		padding: 38px 24px;
	}
}

.wushidao-about {
	--wdao-gold: #C6A55C;
	--wdao-ink: #111111;
	--wdao-soft: #F8F7F4;
	--wdao-line: #EAEAEA;
	width: 100%;
	background: #FFFFFF;
	color: var(--wdao-ink);
	font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
}

.wushidao-about *,
.wushidao-about *::before,
.wushidao-about *::after {
	box-sizing: border-box;
}

.wushidao-about h1,
.wushidao-about h2,
.wushidao-about h3,
.wushidao-about p {
	margin: 0;
}

.wushidao-about h1,
.wushidao-about h2,
.wushidao-about h3 {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-weight: 800;
	letter-spacing: 0;
	color: var(--wdao-ink);
}

.wushidao-about h1 {
	max-width: 780px;
	font-size: 76px;
	line-height: 0.94;
}

.wushidao-about h2 {
	font-size: 48px;
	line-height: 1.02;
}

.wushidao-about h3 {
	font-size: 24px;
	line-height: 1.1;
}

.wushidao-about .wushidao-kicker {
	font-size: 13px;
	font-weight: 900;
	line-height: 1.35;
	text-transform: uppercase;
	color: var(--wdao-gold);
}

.wushidao-about__lead,
.wushidao-about__text,
.wushidao-about .wushidao-section-heading div {
	max-width: 720px;
	font-size: 18px;
	line-height: 1.72;
	color: #444444;
}

.wushidao-about-hero,
.wushidao-about-split,
.wushidao-about-section,
.wushidao-about-local,
.wushidao-about-final {
	width: min(100% - 56px, 1280px);
	margin-right: auto;
	margin-left: auto;
}

.wushidao-about-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
	gap: 58px;
	align-items: center;
	min-height: 680px;
	padding: 96px 0 84px;
}

.wushidao-about-hero__content,
.wushidao-about-split > div:first-child {
	display: grid;
	gap: 24px;
}

.wushidao-about__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 8px;
}

.wushidao-about .wushidao-button--secondary {
	color: var(--wdao-ink);
	border-color: var(--wdao-ink);
	background: transparent;
}

.wushidao-about-hero__visual,
.wushidao-about-split__visual {
	position: relative;
	min-height: 520px;
	overflow: hidden;
	background: var(--wdao-ink);
}

.wushidao-about-hero__visual::after,
.wushidao-about-split__visual::after {
	content: "";
	position: absolute;
	inset: 18px;
	border: 1px solid rgba(198, 165, 92, 0.45);
	pointer-events: none;
}

.wushidao-about-hero__image,
.wushidao-about-split__image {
	display: block;
	width: 100%;
	height: 100%;
	min-height: inherit;
	object-fit: cover;
}

.wushidao-about-mark {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	color: #FFFFFF;
	text-align: center;
}

.wushidao-about-mark span {
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	color: var(--wdao-gold);
}

.wushidao-about-mark strong {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 92px;
	font-weight: 800;
	line-height: 0.86;
	letter-spacing: 0;
}

.wushidao-about-split {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(320px, 0.75fr);
	gap: 54px;
	align-items: center;
	padding: 86px 0;
}

.wushidao-about-split__visual {
	min-height: 420px;
}

.wushidao-about-section {
	padding: 88px 0;
}

.wushidao-about .wushidao-section-heading {
	display: grid;
	justify-items: center;
	gap: 16px;
	max-width: 820px;
	margin: 0 auto 42px;
	text-align: center;
}

.wushidao-about-card-grid,
.wushidao-about-mini-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.wushidao-about-card,
.wushidao-about-mini-grid article {
	display: grid;
	align-content: start;
	gap: 16px;
	min-height: 210px;
	padding: 30px;
	border: 1px solid var(--wdao-line);
	background: #FFFFFF;
}

.wushidao-about-card span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border: 2px solid rgba(198, 165, 92, 0.78);
	border-radius: 50%;
	color: var(--wdao-gold);
}

.wushidao-about-card span svg,
.wushidao-about-card span i {
	width: 23px;
	height: 23px;
	font-size: 23px;
}

.wushidao-about-card p,
.wushidao-about-mini-grid p {
	font-size: 15px;
	line-height: 1.66;
	color: #444444;
}

.wushidao-about-audience {
	width: 100%;
	max-width: none;
	padding-right: max(28px, calc((100vw - 1280px) / 2));
	padding-left: max(28px, calc((100vw - 1280px) / 2));
	background: var(--wdao-soft);
}

.wushidao-about-mini-grid article {
	min-height: 150px;
	background: #FFFFFF;
}

.wushidao-about-local {
	position: relative;
	display: grid;
	gap: 22px;
	margin-top: 88px;
	padding: 62px;
	overflow: hidden;
	background: var(--wdao-ink);
	color: #FFFFFF;
}

.wushidao-about-local::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 6px;
	height: 100%;
	background: var(--wdao-gold);
}

.wushidao-about-local h2 {
	color: #FFFFFF;
}

.wushidao-about-local .wushidao-about__text {
	color: rgba(255, 255, 255, 0.78);
}

.wushidao-about-final {
	display: grid;
	justify-items: center;
	gap: 22px;
	margin-top: 36px;
	margin-bottom: 84px;
	padding: 72px 42px;
	background: var(--wdao-soft);
	text-align: center;
}

.wushidao-about-final div {
	max-width: 680px;
	font-size: 18px;
	line-height: 1.72;
	color: #444444;
}

@media (max-width: 1100px) {
	.wushidao-about-hero,
	.wushidao-about-split {
		grid-template-columns: 1fr;
	}

	.wushidao-about-hero {
		min-height: 0;
	}

	.wushidao-about-card-grid,
	.wushidao-about-mini-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.wushidao-about-hero,
	.wushidao-about-split,
	.wushidao-about-section,
	.wushidao-about-local,
	.wushidao-about-final {
		width: min(100% - 28px, 560px);
	}

	.wushidao-about h1 {
		font-size: 48px;
	}

	.wushidao-about h2 {
		font-size: 36px;
	}

	.wushidao-about-hero,
	.wushidao-about-split,
	.wushidao-about-section {
		padding: 58px 0;
	}

	.wushidao-about-hero__visual,
	.wushidao-about-split__visual {
		min-height: 360px;
	}

	.wushidao-about-card-grid,
	.wushidao-about-mini-grid,
	.wushidao-about__actions {
		grid-template-columns: 1fr;
	}

	.wushidao-about__actions {
		display: grid;
	}

	.wushidao-about-local,
	.wushidao-about-final {
		padding: 40px 24px;
	}
}

.wushidao-contact {
	--wdao-gold: #C6A55C;
	--wdao-ink: #111111;
	--wdao-soft: #F8F7F4;
	--wdao-line: #EAEAEA;
	width: 100%;
	background: #FFFFFF;
	color: var(--wdao-ink);
	font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
}

.wushidao-contact *,
.wushidao-contact *::before,
.wushidao-contact *::after {
	box-sizing: border-box;
}

.wushidao-contact h1,
.wushidao-contact h2,
.wushidao-contact p {
	margin: 0;
}

.wushidao-contact h1,
.wushidao-contact h2 {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-weight: 800;
	letter-spacing: 0;
	color: var(--wdao-ink);
}

.wushidao-contact h1 {
	max-width: 780px;
	font-size: 72px;
	line-height: 0.96;
}

.wushidao-contact h2 {
	font-size: 48px;
	line-height: 1.04;
}

.wushidao-contact .wushidao-kicker {
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	color: var(--wdao-gold);
}

.wushidao-contact-hero,
.wushidao-contact-main,
.wushidao-contact-location {
	width: min(100% - 56px, 1280px);
	margin-right: auto;
	margin-left: auto;
}

.wushidao-contact-hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
	gap: 48px;
	align-items: center;
	min-height: 620px;
	padding: 92px 0 78px;
}

.wushidao-contact-hero > div:first-child,
.wushidao-contact-location {
	display: grid;
	gap: 24px;
}

.wushidao-contact__lead,
.wushidao-contact-location div {
	max-width: 760px;
	font-size: 18px;
	line-height: 1.72;
	color: #444444;
}

.wushidao-contact__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 8px;
}

.wushidao-contact .wushidao-button--secondary {
	color: var(--wdao-ink);
	border-color: var(--wdao-ink);
	background: transparent;
}

.wushidao-contact-main {
	display: grid;
	grid-template-columns: minmax(0, 760px) minmax(300px, 390px);
	justify-content: space-between;
	gap: clamp(32px, 5vw, 72px);
	align-items: start;
	padding: 76px 0 92px;
}

.wushidao-contact-form {
	display: grid;
	gap: 16px;
}

.wushidao-contact-form__text {
	max-width: 720px;
	color: #444444;
	font-size: 18px;
	line-height: 1.72;
}

.wushidao-contact-cf7 {
	width: 100%;
	max-width: 760px;
	margin-top: 22px;
}

.wushidao-contact-cf7 .wpcf7 {
	width: 100%;
}

.wushidao-contact-cf7 .wushi-cf7-form,
.wushidao-contact-cf7 .wpcf7 form {
	width: 100%;
	max-width: none;
	margin: 0;
}

.wushidao-contact-cf7 .wushi-cf7-form .wushi-cf7-form {
	padding: 0;
	border: 0;
	background: transparent;
}

.wushidao-contact-cf7 p {
	margin: 0;
}

.wushidao-contact-cf7 .wpcf7-spinner {
	margin-top: 14px;
}

.wushidao-contact-card {
	display: grid;
	gap: 24px;
	padding: 34px;
	border: 1px solid var(--wdao-line);
	background: var(--wdao-soft);
}

.wushidao-contact-card strong {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 31px;
	font-weight: 800;
	line-height: 0.98;
}

.wushidao-contact-card ul {
	display: grid;
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.wushidao-contact-card li,
.wushidao-contact-card a {
	font-size: 16px;
	line-height: 1.56;
	color: #444444;
	text-decoration: none;
}

.wushidao-contact-card li {
	position: relative;
	padding-left: 24px;
}

.wushidao-contact-card li::before {
	content: "";
	position: absolute;
	top: 0.78em;
	left: 0;
	width: 12px;
	height: 2px;
	background: var(--wdao-gold);
}

.wushidao-contact-location {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-bottom: 84px;
	margin-left: calc(50% - 50vw) !important;
	padding: 82px max(28px, calc((100vw - 1280px) / 2 + 28px));
	background: var(--wdao-ink);
	color: #FFFFFF;
}

.wushidao-contact-location h2 {
	color: #FFFFFF;
}

.wushidao-contact-location div {
	color: rgba(255, 255, 255, 0.78);
}

.wushidao-contact-location .wushidao-button {
	justify-self: start;
}

@media (max-width: 980px) {
	.wushidao-contact-hero {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.wushidao-contact-main {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.wushidao-contact-hero,
	.wushidao-contact-main,
	.wushidao-contact-location {
		width: min(100% - 28px, 560px);
	}

	.wushidao-contact h1 {
		font-size: 48px;
	}

	.wushidao-contact h2 {
		font-size: 36px;
	}

	.wushidao-contact-hero {
		padding: 58px 0;
	}

	.wushidao-contact__actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.wushidao-contact-card,
	.wushidao-contact-location {
		padding: 34px 24px;
	}

	.wushidao-contact-main {
		padding: 58px 0;
	}

	.wushidao-contact-form .wushi-cf7-form {
		padding: 24px;
	}
}

.wushidao-blog {
	--wdao-gold: #C6A55C;
	--wdao-ink: #111111;
	--wdao-soft: #F8F7F4;
	--wdao-line: #EAEAEA;
	width: 100%;
	background: #FFFFFF;
	color: var(--wdao-ink);
	font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
}

.wushidao-blog *,
.wushidao-blog *::before,
.wushidao-blog *::after {
	box-sizing: border-box;
}

.wushidao-blog h1,
.wushidao-blog h2,
.wushidao-blog h3,
.wushidao-blog p {
	margin: 0;
}

.wushidao-blog h1,
.wushidao-blog h2,
.wushidao-blog h3 {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-weight: 800;
	letter-spacing: 0;
	color: var(--wdao-ink);
}

.wushidao-blog h1 {
	max-width: 820px;
	font-size: 76px;
	line-height: 0.94;
}

.wushidao-blog h2 {
	font-size: 48px;
	line-height: 1.04;
}

.wushidao-blog h3 {
	font-size: 28px;
	line-height: 1.08;
}

.wushidao-blog a {
	color: inherit;
	text-decoration: none;
}

.wushidao-blog .wushidao-kicker {
	font-size: 13px;
	font-weight: 900;
	line-height: 1.35;
	text-transform: uppercase;
	color: var(--wdao-gold);
}

.wushidao-blog-hero,
.wushidao-blog-featured,
.wushidao-blog-section,
.wushidao-blog-seo,
.wushidao-blog-final {
	width: min(100% - 56px, 1280px);
	margin-right: auto;
	margin-left: auto;
}

.wushidao-blog-hero {
	display: grid;
	justify-items: center;
	gap: 22px;
	padding: 104px 0 76px;
	text-align: center;
}

.wushidao-blog__lead,
.wushidao-blog-seo div,
.wushidao-blog-final div,
.wushidao-blog .wushidao-section-heading div {
	max-width: 760px;
	font-size: 18px;
	line-height: 1.72;
	color: #444444;
}

.wushidao-blog__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px;
	margin-top: 8px;
}

.wushidao-blog .wushidao-button--secondary {
	color: var(--wdao-ink);
	border-color: var(--wdao-ink);
	background: transparent;
}

.wushidao-blog-featured,
.wushidao-blog-section {
	padding: 82px 0;
}

.wushidao-blog .wushidao-section-heading {
	display: grid;
	justify-items: center;
	gap: 16px;
	max-width: 820px;
	margin: 0 auto 42px;
	text-align: center;
}

.wushidao-blog-featured__card {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(320px, 0.75fr);
	gap: 0;
	border: 1px solid var(--wdao-line);
	background: #FFFFFF;
}

.wushidao-blog-featured__media {
	min-height: 440px;
	background: var(--wdao-ink);
}

.wushidao-blog-featured__image,
.wushidao-blog-card__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wushidao-blog-featured__content {
	display: grid;
	align-content: center;
	gap: 20px;
	padding: 48px;
	background: var(--wdao-soft);
}

.wushidao-blog-featured__content p:not(.wushidao-kicker),
.wushidao-blog-card p,
.wushidao-blog-category p {
	font-size: 15px;
	line-height: 1.66;
	color: #444444;
}

.wushidao-blog-featured__content .wushidao-button {
	justify-self: start;
	margin-top: 8px;
}

.wushidao-blog-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.wushidao-blog-card {
	display: grid;
	grid-template-rows: 230px 1fr;
	border: 1px solid var(--wdao-line);
	background: #FFFFFF;
}

.wushidao-blog-card__body {
	display: grid;
	align-content: start;
	gap: 12px;
	padding: 26px;
}

.wushidao-blog-card span {
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	color: var(--wdao-gold);
}

.wushidao-blog-card h3 {
	font-size: 25px;
}

.wushidao-blog-card__link {
	margin-top: 6px;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	color: var(--wdao-ink);
}

.wushidao-blog-card__link::after {
	content: "";
	display: block;
	width: 38px;
	height: 2px;
	margin-top: 8px;
	background: var(--wdao-gold);
}

.wushidao-blog-categories {
	width: 100%;
	max-width: none;
	padding-right: max(28px, calc((100vw - 1280px) / 2));
	padding-left: max(28px, calc((100vw - 1280px) / 2));
	background: var(--wdao-soft);
}

.wushidao-blog-category-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.wushidao-blog-category {
	display: grid;
	align-content: start;
	gap: 14px;
	min-height: 210px;
	padding: 28px;
	border: 1px solid var(--wdao-line);
	background: #FFFFFF;
}

.wushidao-blog-category span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border: 2px solid rgba(198, 165, 92, 0.78);
	border-radius: 50%;
	color: var(--wdao-gold);
}

.wushidao-blog-category span svg,
.wushidao-blog-category span i {
	width: 22px;
	height: 22px;
	font-size: 22px;
}

.wushidao-blog-category h3 {
	font-size: 24px;
}

.wushidao-blog-seo {
	display: grid;
	gap: 22px;
	margin-top: 86px;
	padding: 62px;
	background: var(--wdao-ink);
	color: #FFFFFF;
}

.wushidao-blog-seo h2 {
	color: #FFFFFF;
}

.wushidao-blog-seo div {
	color: rgba(255, 255, 255, 0.78);
}

.wushidao-blog-final {
	display: grid;
	justify-items: center;
	gap: 22px;
	margin-top: 36px;
	margin-bottom: 84px;
	padding: 72px 42px;
	background: var(--wdao-soft);
	text-align: center;
}

.wushidao-blog-mark {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: inherit;
	background: var(--wdao-ink);
	color: #FFFFFF;
	text-align: center;
}

.wushidao-blog-mark span {
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	color: var(--wdao-gold);
}

.wushidao-blog-mark strong {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 74px;
	font-weight: 800;
	line-height: 0.86;
}

@media (max-width: 1100px) {
	.wushidao-blog-featured__card {
		grid-template-columns: 1fr;
	}

	.wushidao-blog-grid,
	.wushidao-blog-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.wushidao-blog-hero,
	.wushidao-blog-featured,
	.wushidao-blog-section,
	.wushidao-blog-seo,
	.wushidao-blog-final {
		width: min(100% - 28px, 560px);
	}

	.wushidao-blog h1 {
		font-size: 48px;
	}

	.wushidao-blog h2 {
		font-size: 36px;
	}

	.wushidao-blog-hero,
	.wushidao-blog-featured,
	.wushidao-blog-section {
		padding: 58px 0;
	}

	.wushidao-blog__actions,
	.wushidao-blog-grid,
	.wushidao-blog-category-grid {
		display: grid;
		grid-template-columns: 1fr;
	}

	.wushidao-blog-featured__media {
		min-height: 320px;
	}

	.wushidao-blog-featured__content,
	.wushidao-blog-seo,
	.wushidao-blog-final {
		padding: 38px 24px;
	}
}

/* Premium editable hero imagery for inner Elementor pages. */
.wd-hero--inner {
	min-height: 420px;
}

.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner {
	min-height: 460px;
	padding-top: 58px;
	padding-bottom: 58px;
}

.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__visual,
.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__visual {
	min-height: 420px;
	background: #F8F7F4;
	border: 1px solid rgba(198, 165, 92, 0.22);
}

.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__image,
.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__image {
	min-height: 420px;
}

.wushidao-about-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	min-height: 440px;
	padding-top: 58px;
	padding-bottom: 58px;
}

.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner {
	grid-template-columns: minmax(0, 0.95fr) minmax(360px, 1fr);
	gap: clamp(32px, 5vw, 64px);
	align-items: center;
	text-align: left;
}

.wushidao-blog-hero__content,
.wushidao-plans-hero__content {
	display: grid;
	justify-items: start;
	gap: 22px;
}

.wushidao-blog-hero.wd-hero--inner .wushidao-blog__actions,
.wushidao-plans-hero.wd-hero--inner .wushidao-plans__actions {
	justify-content: flex-start;
}

.wushidao-blog-hero__media,
.wushidao-plans-hero__media,
.wushidao-contact-hero__media {
	position: relative;
	min-height: 360px;
	overflow: hidden;
	background: #F8F7F4;
	border: 1px solid rgba(198, 165, 92, 0.22);
}

.wushidao-blog-hero__media::after,
.wushidao-plans-hero__media::after,
.wushidao-contact-hero__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0));
	pointer-events: none;
}

.wushidao-blog-hero__media img,
.wushidao-plans-hero__media img,
.wushidao-contact-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 360px;
	object-fit: cover;
	object-position: center;
}

.wushidao-contact-card {
	width: min(100% - 56px, 1280px);
	margin: -22px auto 56px;
}

.wushidao-page-hero--services {
	background-size: cover;
	background-position: center right;
}

.wushidao-page-hero--services::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.86) 44%, rgba(255, 255, 255, 0.42) 100%);
	pointer-events: none;
}

.wushidao-page-hero--services > .elementor-container,
.wushidao-page-hero--services.e-con {
	z-index: 1;
	min-height: 440px;
}

.wushidao-floating-actions {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 10000;
	display: grid;
	gap: 10px;
	pointer-events: none;
}

.wushidao-floating-actions__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border: 1px solid rgba(198, 165, 92, 0.42);
	border-radius: 999px;
	background: #111111;
	box-shadow: 0 14px 30px rgba(17, 17, 17, 0.18);
	color: #FFFFFF;
	text-decoration: none;
	pointer-events: auto;
	transition: transform 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.wushidao-floating-actions__button svg {
	width: 24px;
	height: 24px;
	fill: currentColor;
}

.wushidao-floating-actions__button:hover,
.wushidao-floating-actions__button:focus {
	transform: translateY(-2px);
	background: #C6A55C;
	border-color: #C6A55C;
	color: #111111;
	outline: none;
}

.wushidao-floating-actions__button--whatsapp {
	background: #1F7A4D;
	border-color: rgba(31, 122, 77, 0.78);
	color: #FFFFFF;
}

.wushidao-floating-actions__button--phone {
	background: #C6A55C;
	border-color: #C6A55C;
	color: #111111;
}

@media (max-width: 1024px) {
	.wd-hero--inner {
		min-height: 380px;
	}

	.wushidao-contact-hero.wd-hero--inner,
	.wushidao-blog-hero.wd-hero--inner,
	.wushidao-plans-hero.wd-hero--inner {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.wd-hero--inner,
	.wushidao-fitboxing-hero.wd-hero--inner,
	.wushidao-chikung-hero.wd-hero--inner,
	.wushidao-about-hero.wd-hero--inner,
	.wushidao-plans-hero.wd-hero--inner,
	.wushidao-contact-hero.wd-hero--inner,
	.wushidao-blog-hero.wd-hero--inner {
		min-height: 360px;
	}

	.wushidao-blog-hero__media,
	.wushidao-plans-hero__media,
	.wushidao-contact-hero__media,
	.wushidao-blog-hero__media img,
	.wushidao-plans-hero__media img,
	.wushidao-contact-hero__media img,
	.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__visual,
	.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__visual,
	.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__image,
	.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__image {
		min-height: 300px;
	}

	.wushidao-contact-card {
		width: min(100% - 28px, 560px);
		margin-top: -16px;
	}

	.wushidao-floating-actions {
		right: 14px;
		bottom: 14px;
		gap: 8px;
	}

	.wushidao-floating-actions__button {
		width: 50px;
		height: 50px;
	}
}

/* Full-width inner pages aligned with the home hero style. */
.wushidao-page-hero,
.wd-hero--inner,
.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner,
.wushidao-about-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	position: relative;
	display: grid;
	align-items: center;
	width: 100%;
	max-width: none;
	min-height: 680px;
	margin: 0;
	padding: 88px 20px 96px;
	overflow: hidden;
	border-bottom: 0;
	background: #111111;
	color: #FFFFFF;
}

.wushidao-page-hero::before,
.wd-hero--inner::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(90deg, rgba(17, 17, 17, 0.9) 0%, rgba(17, 17, 17, 0.76) 40%, rgba(17, 17, 17, 0.28) 72%, rgba(17, 17, 17, 0.08) 100%);
	pointer-events: none;
}

.wushidao-page-hero::after,
.wd-hero--inner::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	background-image: radial-gradient(circle, rgba(198, 165, 92, 0.18) 1px, transparent 1px);
	background-position: left top;
	background-size: 16px 16px;
	opacity: 0.28;
	pointer-events: none;
}

.wd-hero--inner h1,
.wushidao-page-hero__title .elementor-heading-title {
	color: #FFFFFF;
}

.wd-hero--inner .wushidao-kicker,
.wushidao-page-hero__kicker .elementor-heading-title {
	color: #C6A55C;
}

.wd-hero--inner p,
.wd-hero--inner .wushidao-fitboxing-hero__text,
.wd-hero--inner .wushidao-chikung-hero__text,
.wd-hero--inner .wushidao-about__lead,
.wd-hero--inner .wushidao-contact__lead,
.wd-hero--inner .wushidao-blog__lead,
.wd-hero--inner .wushidao-plans__lead,
.wushidao-page-hero__text p {
	color: rgba(255, 255, 255, 0.86);
}

.wd-hero--inner .wushidao-button--secondary,
.wushidao-page-hero .wushidao-button--secondary {
	border-color: rgba(198, 165, 92, 0.82);
	color: #FFFFFF;
}

.wd-hero--inner .wushidao-button--secondary:hover,
.wd-hero--inner .wushidao-button--secondary:focus,
.wushidao-page-hero .wushidao-button--secondary:hover,
.wushidao-page-hero .wushidao-button--secondary:focus {
	border-color: #C6A55C;
	background-color: rgba(198, 165, 92, 0.14);
	color: #FFFFFF;
}

.wushidao-page-hero > .elementor-container,
.wushidao-page-hero.e-con {
	position: relative;
	z-index: 3;
	width: min(1600px, calc(100% - 40px));
	max-width: 1600px;
	min-height: 520px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 0;
	padding-left: 0;
}

.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner,
.wushidao-about-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	grid-template-columns: minmax(0, 720px);
	gap: 0;
	justify-content: start;
	text-align: left;
}

.wushidao-fitboxing-hero__content,
.wushidao-chikung-hero__content,
.wushidao-about-hero__content,
.wushidao-plans-hero__content,
.wushidao-contact-hero > div:first-child,
.wushidao-blog-hero__content {
	position: relative;
	z-index: 3;
	display: grid;
	max-width: 720px;
	gap: 24px;
	align-content: center;
	justify-items: start;
}

.wushidao-fitboxing-hero__visual,
.wushidao-chikung-hero__visual,
.wushidao-about-hero__visual,
.wushidao-plans-hero__media,
.wushidao-contact-hero__media,
.wushidao-blog-hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;
	min-height: 100%;
	overflow: hidden;
	border: 0;
	background: #111111;
	pointer-events: none;
}

.wushidao-fitboxing-hero__visual::before,
.wushidao-chikung-hero__visual::before,
.wushidao-about-hero__visual::after,
.wushidao-plans-hero__media::after,
.wushidao-contact-hero__media::after,
.wushidao-blog-hero__media::after {
	display: none;
}

.wushidao-fitboxing-hero__image,
.wushidao-chikung-hero__image,
.wushidao-about-hero__image,
.wushidao-plans-hero__media img,
.wushidao-contact-hero__media img,
.wushidao-blog-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center right;
}

.wushidao-page-hero--services {
	background-position: center right;
	background-size: cover;
}

.wushidao-page-hero--services::after {
	background-image: radial-gradient(circle, rgba(198, 165, 92, 0.18) 1px, transparent 1px);
	background-position: left top;
	background-size: 16px 16px;
	opacity: 0.28;
}

.wushidao-hero__inner,
.wushidao-hero-benefits,
.wushidao-section-heading,
.wushidao-featured__grid,
.wushidao-local-seo,
.wushidao-emotional,
.wushidao-activity,
.wushidao-why,
.wushidao-schedule,
.wushidao-testimonials,
.wushidao-cta,
.wushidao-fitboxing-hero,
.wushidao-fitboxing-split,
.wushidao-fitboxing-benefits,
.wushidao-fitboxing-simple,
.wushidao-fitboxing-gallery,
.wushidao-fitboxing-local,
.wushidao-fitboxing-faq,
.wushidao-fitboxing-final,
.wushidao-chikung-hero,
.wushidao-chikung-split,
.wushidao-chikung-benefits,
.wushidao-chikung-simple,
.wushidao-chikung-gallery,
.wushidao-chikung-local,
.wushidao-chikung-faq,
.wushidao-chikung-final,
.wushidao-plans-hero,
.wushidao-plans-section,
.wushidao-plans-trial,
.wushidao-plans-faq,
.wushidao-plans-final,
.wushidao-about-hero,
.wushidao-about-split,
.wushidao-about-section,
.wushidao-about-local,
.wushidao-about-final,
.wushidao-contact-hero,
.wushidao-contact-card,
.wushidao-contact-main,
.wushidao-blog-hero,
.wushidao-blog-main,
.wushidao-blog-categories,
.wushidao-blog-seo,
.wushidao-blog-final {
	width: min(1600px, calc(100% - 40px));
	max-width: 1600px;
	margin-right: auto;
	margin-left: auto;
}

.wd-hero--inner.wushidao-fitboxing-hero,
.wd-hero--inner.wushidao-chikung-hero,
.wd-hero--inner.wushidao-about-hero,
.wd-hero--inner.wushidao-plans-hero,
.wd-hero--inner.wushidao-contact-hero,
.wd-hero--inner.wushidao-blog-hero {
	width: 100%;
	margin-right: 0;
	margin-left: 0;
}

.wushidao-fitboxing-section,
.wushidao-chikung-section,
.wushidao-plans-section,
.wushidao-about-section,
.wushidao-blog-main,
.wushidao-contact-main,
.wushidao-fitboxing-boxing,
.wushidao-chikung-breathing,
.wushidao-plans-recommended,
.wushidao-about-audience,
.wushidao-blog-categories {
	padding-right: 20px;
	padding-left: 20px;
}

@media (max-width: 1100px) {
	.wushidao-page-hero,
	.wd-hero--inner,
	.wushidao-fitboxing-hero.wd-hero--inner,
	.wushidao-chikung-hero.wd-hero--inner,
	.wushidao-about-hero.wd-hero--inner,
	.wushidao-plans-hero.wd-hero--inner,
	.wushidao-contact-hero.wd-hero--inner,
	.wushidao-blog-hero.wd-hero--inner {
		min-height: 600px;
		padding-top: 72px;
		padding-bottom: 78px;
	}
}

@media (max-width: 767px) {
	.wushidao-page-hero,
	.wd-hero--inner,
	.wushidao-fitboxing-hero.wd-hero--inner,
	.wushidao-chikung-hero.wd-hero--inner,
	.wushidao-about-hero.wd-hero--inner,
	.wushidao-plans-hero.wd-hero--inner,
	.wushidao-contact-hero.wd-hero--inner,
	.wushidao-blog-hero.wd-hero--inner {
		min-height: 560px;
		padding: 58px 20px 64px;
	}

	.wushidao-page-hero::before,
	.wd-hero--inner::before {
		background: linear-gradient(180deg, rgba(17, 17, 17, 0.9) 0%, rgba(17, 17, 17, 0.76) 58%, rgba(17, 17, 17, 0.36) 100%);
	}

	.wushidao-page-hero > .elementor-container,
	.wushidao-page-hero.e-con,
	.wushidao-hero__inner,
	.wushidao-hero-benefits,
	.wushidao-section-heading,
	.wushidao-featured__grid,
	.wushidao-local-seo,
	.wushidao-emotional,
	.wushidao-activity,
	.wushidao-why,
	.wushidao-schedule,
	.wushidao-testimonials,
	.wushidao-cta,
	.wushidao-fitboxing-hero,
	.wushidao-fitboxing-split,
	.wushidao-fitboxing-benefits,
	.wushidao-fitboxing-simple,
	.wushidao-fitboxing-gallery,
	.wushidao-fitboxing-local,
	.wushidao-fitboxing-faq,
	.wushidao-fitboxing-final,
	.wushidao-chikung-hero,
	.wushidao-chikung-split,
	.wushidao-chikung-benefits,
	.wushidao-chikung-simple,
	.wushidao-chikung-gallery,
	.wushidao-chikung-local,
	.wushidao-chikung-faq,
	.wushidao-chikung-final,
	.wushidao-plans-hero,
	.wushidao-plans-section,
	.wushidao-plans-trial,
	.wushidao-plans-faq,
	.wushidao-plans-final,
	.wushidao-about-hero,
	.wushidao-about-split,
	.wushidao-about-section,
	.wushidao-about-local,
	.wushidao-about-final,
	.wushidao-contact-hero,
	.wushidao-contact-card,
	.wushidao-contact-main,
	.wushidao-blog-hero,
	.wushidao-blog-main,
	.wushidao-blog-categories,
	.wushidao-blog-seo,
	.wushidao-blog-final {
		width: min(1600px, calc(100% - 40px));
		max-width: 1600px;
	}
}

/* Final cascade lock: full-bleed heroes and CTA banners. */
.wushidao-page-hero,
.wd-hero--inner,
.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner,
.wushidao-about-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding-right: max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	padding-left: max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
}

.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	min-height: 748px !important;
}

.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__visual,
.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__visual,
.wushidao-about-hero.wd-hero--inner .wushidao-about-hero__visual,
.wushidao-plans-hero.wd-hero--inner .wushidao-plans-hero__media,
.wushidao-contact-hero.wd-hero--inner .wushidao-contact-hero__media,
.wushidao-blog-hero.wd-hero--inner .wushidao-blog-hero__media {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
}

.wushidao-fitboxing-hero.wd-hero--inner .wushidao-fitboxing-hero__image,
.wushidao-chikung-hero.wd-hero--inner .wushidao-chikung-hero__image,
.wushidao-about-hero.wd-hero--inner .wushidao-about-hero__image,
.wushidao-plans-hero.wd-hero--inner .wushidao-plans-hero__media img,
.wushidao-contact-hero.wd-hero--inner .wushidao-contact-hero__media img,
.wushidao-blog-hero.wd-hero--inner .wushidao-blog-hero__media img {
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	object-fit: cover !important;
	object-position: center right !important;
}

.wushidao-cta,
.wushidao-fitboxing-final,
.wushidao-chikung-final,
.wushidao-plans-final,
.wushidao-about-final,
.wushidao-blog-final {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding: 96px max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	background-color: #111111 !important;
	background-image: linear-gradient(90deg, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.84) 48%, rgba(17, 17, 17, 0.56) 100%), url("../img/wd-bg-premium.webp") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	color: #FFFFFF !important;
}
/* Home emotional banner: break out of Elementor boxed containers. */
body.home .wushidao-emotional,
body.page-id-21 .wushidao-emotional,
body.elementor-page-21 .wushidao-emotional {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding-right: max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	padding-left: max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
}

@media (max-width: 767px) {
	body.home .wushidao-emotional,
	body.page-id-21 .wushidao-emotional,
	body.elementor-page-21 .wushidao-emotional {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}
}

/* Services hub page. */
.wushidao-services {
	overflow: hidden;
	background: #FFFFFF;
	color: #111111;
	font-family: "Inter", Arial, sans-serif;
}

.wushidao-services h1,
.wushidao-services h2,
.wushidao-services h3 {
	margin: 0;
	font-family: "Bebas Neue", Impact, sans-serif;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: uppercase;
}

.wushidao-services p {
	margin: 0;
}

.wushidao-services-hero.wd-hero--inner {
	position: relative;
	display: grid;
	align-items: center;
	min-height: 748px !important;
	padding-top: 104px !important;
	padding-bottom: 104px !important;
	background: #111111;
	color: #FFFFFF;
	isolation: isolate;
}

.wushidao-services-hero::before {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(90deg, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.78) 40%, rgba(17, 17, 17, 0.22) 78%);
	content: "";
}

.wushidao-services-hero::after {
	position: absolute;
	z-index: 2;
	inset: 0;
	background: linear-gradient(180deg, rgba(17, 17, 17, 0.1) 0%, rgba(17, 17, 17, 0.78) 100%);
	content: "";
	pointer-events: none;
}

.wushidao-services-hero__media {
	position: absolute !important;
	inset: 0 !important;
	z-index: 0;
	width: 100% !important;
	height: 100% !important;
}

.wushidao-services-hero__image {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center right !important;
}

.wushidao-services-hero__content {
	position: relative;
	z-index: 3;
	display: grid;
	gap: 24px;
	width: min(720px, 100%);
}

.wushidao-services-hero h1 {
	max-width: 760px;
	font-size: clamp(64px, 7vw, 118px);
	line-height: 0.86;
}

.wushidao-services__lead {
	max-width: 650px;
	color: rgba(255, 255, 255, 0.9);
	font-size: 20px;
	line-height: 1.65;
}

.wushidao-services__lead p {
	margin: 0;
}

.wushidao-services__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 6px;
}

.wushidao-services-section {
	width: min(1280px, calc(100% - 56px));
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
	padding: 92px 0;
}

.wushidao-services-section > h2,
.wushidao-services-intro h2,
.wushidao-services-paths h2 {
	font-size: clamp(48px, 5vw, 82px);
	line-height: 0.92;
}

.wushidao-services-intro {
	padding-bottom: 56px;
}

.wushidao-services-intro .wushidao-section-heading {
	width: min(980px, 100%);
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.wushidao-services-intro .wushidao-section-heading > div {
	color: #4A4A4A;
	font-size: 19px;
	line-height: 1.75;
}

.wushidao-services-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 34px;
}

.wushidao-service-card {
	position: relative;
	display: grid;
	align-content: start;
	gap: 16px;
	min-height: 282px;
	overflow: hidden;
	padding: 30px;
	border: 1px solid #E8E1D3;
	background: #F8F7F4;
}

.wushidao-service-card::after {
	position: absolute;
	right: -48px;
	bottom: -56px;
	width: 156px;
	height: 156px;
	border: 1px solid rgba(198, 165, 92, 0.34);
	border-radius: 50%;
	content: "";
}

.wushidao-service-card__icon {
	display: inline-grid;
	place-items: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: #D6B45E;
	color: #111111;
	font-size: 22px;
}

.wushidao-service-card h3 {
	font-size: 36px;
	line-height: 0.96;
}

.wushidao-service-card p {
	position: relative;
	z-index: 1;
	color: #4D4A43;
	font-size: 16px;
	line-height: 1.6;
}

.wushidao-service-card__link {
	position: relative;
	z-index: 1;
	align-self: end;
	width: fit-content;
	margin-top: 10px;
	color: #111111;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0;
	text-decoration: none;
	text-transform: uppercase;
}

.wushidao-service-card__link::after {
	display: block;
	width: 100%;
	height: 2px;
	margin-top: 6px;
	background: #D6B45E;
	content: "";
}

.wushidao-services-paths {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding: 92px max(20px, calc((100vw - 1280px) / 2 + 20px)) !important;
	background: #111111;
	color: #FFFFFF;
}

.wushidao-services-paths h2 {
	text-align: center;
}

.wushidao-services-path-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 34px;
}

.wushidao-services-path-grid article {
	padding: 30px;
	border: 1px solid rgba(214, 180, 94, 0.42);
	background: rgba(255, 255, 255, 0.04);
}

.wushidao-services-path-grid h3 {
	color: #D6B45E;
	font-size: 34px;
	line-height: 1;
}

.wushidao-services-path-grid p {
	margin-top: 14px;
	color: rgba(255, 255, 255, 0.78);
	font-size: 16px;
	line-height: 1.65;
}

.wushidao-services-final {
	display: grid;
	justify-items: center;
	gap: 22px;
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding: 96px max(20px, calc((100vw - 1280px) / 2 + 20px)) !important;
	background-color: #111111 !important;
	background-image: linear-gradient(90deg, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.82) 56%, rgba(17, 17, 17, 0.58) 100%), url("../img/wd-bg-premium.webp") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	color: #FFFFFF;
	text-align: center;
}

.wushidao-services-final h2 {
	max-width: 760px;
	font-size: clamp(52px, 6vw, 92px);
	line-height: 0.9;
}

.wushidao-services-final div {
	max-width: 680px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 18px;
	line-height: 1.7;
}

@media (max-width: 1100px) {
	.wushidao-services-hero.wd-hero--inner {
		min-height: 640px !important;
	}

	.wushidao-services-grid,
	.wushidao-services-path-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.wushidao-services-hero.wd-hero--inner {
		min-height: 560px !important;
		padding-top: 62px !important;
		padding-bottom: 66px !important;
	}

	.wushidao-services-hero::before {
		background: linear-gradient(180deg, rgba(17, 17, 17, 0.92) 0%, rgba(17, 17, 17, 0.78) 56%, rgba(17, 17, 17, 0.38) 100%);
	}

	.wushidao-services-hero__image {
		object-position: center right !important;
	}

	.wushidao-services-hero h1 {
		font-size: clamp(50px, 17vw, 72px);
	}

	.wushidao-services__lead {
		font-size: 17px;
		line-height: 1.55;
	}

	.wushidao-services__actions,
	.wushidao-services__actions .wushidao-button,
	.wushidao-services-final .wushidao-button {
		width: 100%;
	}

	.wushidao-services__actions .wushidao-button,
	.wushidao-services-final .wushidao-button {
		justify-content: center;
	}

	.wushidao-services-section {
		width: min(560px, calc(100% - 28px));
		padding: 64px 0;
	}

	.wushidao-services-intro {
		padding-bottom: 34px;
	}

	.wushidao-services-grid,
	.wushidao-services-path-grid {
		grid-template-columns: 1fr;
	}

	.wushidao-service-card {
		min-height: auto;
		padding: 24px;
	}

	.wushidao-services-paths,
	.wushidao-services-final {
		padding-top: 70px !important;
		padding-bottom: 74px !important;
	}
}

/* Fitboxing hero: lock the current full-bleed landing style. */
.elementor-widget-wushi_dao_fitboxing_landing,
.elementor-widget-wushi_dao_fitboxing_landing > .elementor-widget-container {
	overflow: visible !important;
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner {
	position: relative !important;
	left: 50% !important;
	right: 50% !important;
	display: grid !important;
	grid-template-columns: 1fr !important;
	align-items: center !important;
	width: 100vw !important;
	max-width: none !important;
	min-height: 748px !important;
	margin-top: 0 !important;
	margin-right: -50vw !important;
	margin-left: -50vw !important;
	padding: 104px max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	background: #111111 !important;
	color: #FFFFFF !important;
	isolation: isolate;
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner::before {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(90deg, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.78) 42%, rgba(17, 17, 17, 0.22) 78%);
	content: "";
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner::after {
	position: absolute;
	z-index: 2;
	inset: 0;
	background: radial-gradient(circle at 16% 24%, rgba(214, 180, 94, 0.16) 0, rgba(214, 180, 94, 0) 26%), linear-gradient(180deg, rgba(17, 17, 17, 0) 0%, rgba(17, 17, 17, 0.5) 100%);
	content: "";
	pointer-events: none;
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__content {
	position: relative;
	z-index: 3;
	width: min(760px, 100%);
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero h1 {
	max-width: 820px;
	color: #FFFFFF;
	font-size: clamp(64px, 7vw, 118px);
	line-height: 0.86;
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__text {
	max-width: 700px;
	color: rgba(255, 255, 255, 0.9);
	font-size: 20px;
	line-height: 1.65;
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-button--secondary {
	border-color: rgba(255, 255, 255, 0.42);
	color: #FFFFFF;
	background: transparent;
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__visual {
	position: absolute !important;
	inset: 0 !important;
	z-index: 0;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	background: #111111;
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__visual::before {
	display: none;
}

.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__image {
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	object-fit: cover !important;
	object-position: center right !important;
}

@media (max-width: 767px) {
	.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner {
		min-height: 560px !important;
		padding: 62px 20px 66px !important;
	}

	.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner::before {
		background: linear-gradient(180deg, rgba(17, 17, 17, 0.92) 0%, rgba(17, 17, 17, 0.78) 56%, rgba(17, 17, 17, 0.38) 100%);
	}

	.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero h1 {
		font-size: clamp(50px, 17vw, 72px);
	}

	.wushidao-fitboxing:not(.wushidao-functional):not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__text {
		font-size: 17px;
		line-height: 1.55;
	}
}

/* Service heroes: Fitboxing, Functional Training and Chi Kung full viewport width. */
.elementor-widget-wushi_dao_fitboxing_landing,
.elementor-widget-wushi_dao_fitboxing_landing > .elementor-widget-container,
.elementor-widget-wushi_dao_functional_training_landing,
.elementor-widget-wushi_dao_functional_training_landing > .elementor-widget-container,
.elementor-widget-wushi_dao_chi_kung_landing,
.elementor-widget-wushi_dao_chi_kung_landing > .elementor-widget-container {
	overflow: visible !important;
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero.wd-hero--inner {
	position: relative !important;
	left: 50% !important;
	right: 50% !important;
	display: grid !important;
	grid-template-columns: 1fr !important;
	align-items: center !important;
	width: 100vw !important;
	max-width: none !important;
	min-height: 748px !important;
	margin-top: 0 !important;
	margin-right: -50vw !important;
	margin-left: -50vw !important;
	padding: 104px max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	overflow: hidden !important;
	background: #111111 !important;
	color: #FFFFFF !important;
	isolation: isolate;
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner::before,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero.wd-hero--inner::before {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(90deg, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.78) 42%, rgba(17, 17, 17, 0.22) 78%);
	content: "";
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner::after,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero.wd-hero--inner::after {
	position: absolute;
	z-index: 2;
	inset: 0;
	background: radial-gradient(circle at 16% 24%, rgba(214, 180, 94, 0.16) 0, rgba(214, 180, 94, 0) 26%), linear-gradient(180deg, rgba(17, 17, 17, 0) 0%, rgba(17, 17, 17, 0.5) 100%);
	content: "";
	pointer-events: none;
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__content,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero .wushidao-chikung-hero__content {
	position: relative;
	z-index: 3;
	width: min(760px, 100%);
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero h1,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero h1 {
	max-width: 860px;
	color: #FFFFFF;
	font-size: clamp(64px, 7vw, 118px);
	line-height: 0.86;
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__text,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero .wushidao-chikung-hero__text {
	max-width: 700px;
	color: rgba(255, 255, 255, 0.9);
	font-size: 20px;
	line-height: 1.65;
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-button--secondary,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero .wushidao-button--secondary {
	border-color: rgba(255, 255, 255, 0.42);
	color: #FFFFFF;
	background: transparent;
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__visual,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero .wushidao-chikung-hero__visual {
	position: absolute !important;
	inset: 0 !important;
	z-index: 0;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	background: #111111;
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__visual::before,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero .wushidao-chikung-hero__visual::before {
	display: none;
}

.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__image,
.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero .wushidao-chikung-hero__image {
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	object-fit: cover !important;
	object-position: center right !important;
}

@media (max-width: 767px) {
	.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner,
	.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero.wd-hero--inner {
		min-height: 560px !important;
		padding: 62px 20px 66px !important;
	}

	.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero.wd-hero--inner::before,
	.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero.wd-hero--inner::before {
		background: linear-gradient(180deg, rgba(17, 17, 17, 0.92) 0%, rgba(17, 17, 17, 0.78) 56%, rgba(17, 17, 17, 0.38) 100%);
	}

	.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero h1,
	.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero h1 {
		font-size: clamp(50px, 17vw, 72px);
	}

	.wushidao-fitboxing:not(.wushidao-kids):not(.wushidao-wingtsun) > .wushidao-fitboxing-hero .wushidao-fitboxing-hero__text,
	.wushidao-chikung:not(.wushidao-massage) > .wushidao-chikung-hero .wushidao-chikung-hero__text {
		font-size: 17px;
		line-height: 1.55;
	}
}

/* Contact location banner: keep full width after responsive container rules. */
.wushidao-contact-location {
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding-right: max(28px, calc((100vw - 1280px) / 2 + 28px)) !important;
	padding-left: max(28px, calc((100vw - 1280px) / 2 + 28px)) !important;
}

@media (max-width: 767px) {
	.wushidao-contact-location {
		width: 100vw !important;
		padding: 64px 20px !important;
	}
}

/* Mobile polish: final responsive guard rails for all Wushi Dao widgets. */
@media (max-width: 767px) {
	html,
	body {
		max-width: 100%;
		overflow-x: hidden;
	}

	.elementor,
	.elementor-section,
	.elementor-container,
	.elementor-widget-container {
		max-width: 100%;
	}

	.wushidao-header {
		position: sticky;
		top: 0;
		z-index: 1000;
	}

	.wushidao-header__inner {
		grid-template-columns: minmax(0, 1fr) auto !important;
		width: min(100% - 28px, 560px) !important;
		min-height: 74px !important;
		gap: 12px !important;
	}

	.wushidao-header__brand {
		min-width: 0 !important;
		gap: 10px !important;
	}

	.wushidao-header__brand img {
		width: 50px !important;
		height: 50px !important;
		flex: 0 0 50px;
	}

	.wushidao-header__brand-text {
		min-width: 0;
	}

	.wushidao-header__brand-text strong {
		max-width: 190px;
		overflow: hidden;
		font-size: 22px !important;
		line-height: 0.95 !important;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.wushidao-header__nav,
	.wushidao-header__cta {
		display: none !important;
	}

	.wushidao-header__mobile {
		display: block !important;
	}

	.wushidao-header__mobile-panel {
		right: 14px !important;
		left: 14px !important;
		top: calc(100% + 8px) !important;
		max-height: calc(100vh - 96px);
		overflow-y: auto;
		padding: 18px !important;
	}

	.wushidao-mobile-menu a {
		align-items: center;
		min-height: 46px;
		padding: 10px 0 !important;
		font-size: 14px !important;
		line-height: 1.25;
		overflow-wrap: anywhere;
	}

	.wushidao-header__mobile-cta {
		width: 100%;
		white-space: normal !important;
		text-align: center;
	}

	.wushidao-hero,
	.wushidao-featured,
	.wushidao-local-seo,
	.wushidao-emotional,
	.wushidao-activity,
	.wushidao-why,
	.wushidao-schedule,
	.wushidao-testimonials,
	.wushidao-cta,
	.wushidao-fitboxing-split,
	.wushidao-fitboxing-benefits,
	.wushidao-fitboxing-simple,
	.wushidao-fitboxing-gallery,
	.wushidao-fitboxing-local,
	.wushidao-fitboxing-faq,
	.wushidao-chikung-split,
	.wushidao-chikung-benefits,
	.wushidao-chikung-simple,
	.wushidao-chikung-gallery,
	.wushidao-chikung-local,
	.wushidao-chikung-faq,
	.wushidao-plans-section,
	.wushidao-plans-trial,
	.wushidao-plans-faq,
	.wushidao-about-split,
	.wushidao-about-section,
	.wushidao-about-local,
	.wushidao-contact-main,
	.wushidao-blog-featured,
	.wushidao-blog-section,
	.wushidao-blog-seo,
	.wushidao-services-section {
		width: min(100% - 28px, 560px) !important;
		max-width: 560px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.wd-hero--inner,
	.wushidao-page-hero,
	.wushidao-fitboxing-hero.wd-hero--inner,
	.wushidao-chikung-hero.wd-hero--inner,
	.wushidao-about-hero.wd-hero--inner,
	.wushidao-plans-hero.wd-hero--inner,
	.wushidao-contact-hero.wd-hero--inner,
	.wushidao-blog-hero.wd-hero--inner,
	.wushidao-services-hero.wd-hero--inner {
		width: 100vw !important;
		max-width: none !important;
		min-height: 560px !important;
		margin-right: calc(50% - 50vw) !important;
		margin-left: calc(50% - 50vw) !important;
		padding: 58px 20px 64px !important;
		overflow: hidden !important;
	}

	.wushidao-hero__inner,
	.wushidao-page-hero > .elementor-container,
	.wd-hero--inner > div:first-child,
	.wushidao-fitboxing-hero__content,
	.wushidao-chikung-hero__content,
	.wushidao-services-hero__content,
	.wushidao-contact-hero > div:first-child,
	.wushidao-plans-hero__content,
	.wushidao-blog-hero__content {
		width: 100% !important;
		max-width: 560px !important;
		min-width: 0 !important;
	}

	.wushidao-hero h1,
	.wushidao-page-hero h1,
	.wd-hero--inner h1,
	.wushidao-fitboxing h1,
	.wushidao-chikung h1,
	.wushidao-services-hero h1,
	.wushidao-contact h1,
	.wushidao-plans h1,
	.wushidao-about h1,
	.wushidao-blog h1 {
		max-width: 100% !important;
		font-size: clamp(44px, 15vw, 68px) !important;
		line-height: 0.9 !important;
		overflow-wrap: anywhere;
	}

	.wushidao-hero h2,
	.wushidao-fitboxing h2,
	.wushidao-chikung h2,
	.wushidao-services h2,
	.wushidao-contact h2,
	.wushidao-plans h2,
	.wushidao-about h2,
	.wushidao-blog h2,
	.wushidao-cta h2,
	.wushidao-emotional h2 {
		max-width: 100% !important;
		font-size: clamp(34px, 11vw, 50px) !important;
		line-height: 0.96 !important;
		overflow-wrap: anywhere;
	}

	.wushidao-hero p,
	.wushidao-page-hero p,
	.wd-hero--inner p,
	.wushidao-fitboxing__text,
	.wushidao-fitboxing-hero__text,
	.wushidao-chikung__text,
	.wushidao-chikung-hero__text,
	.wushidao-services__lead,
	.wushidao-contact__lead,
	.wushidao-contact-form__text,
	.wushidao-blog__lead,
	.wushidao-plans__lead,
	.wushidao-about__lead {
		max-width: 100% !important;
		font-size: 16px !important;
		line-height: 1.62 !important;
	}

	.wushidao-button,
	.wushidao-page-hero__button .elementor-button,
	.wushidao-contact .wushidao-button,
	.wushidao-fitboxing .wushidao-button,
	.wushidao-chikung .wushidao-button,
	.wushidao-services .wushidao-button,
	.wushidao-plans .wushidao-button,
	.wushidao-about .wushidao-button,
	.wushidao-blog .wushidao-button {
		width: 100% !important;
		min-width: 0 !important;
		min-height: 50px !important;
		justify-content: center !important;
		padding-right: 18px !important;
		padding-left: 18px !important;
		white-space: normal !important;
		text-align: center !important;
	}

	.wushidao-hero__actions,
	.wushidao-fitboxing__actions,
	.wushidao-chikung__actions,
	.wushidao-services__actions,
	.wushidao-contact__actions,
	.wushidao-blog__actions,
	.wushidao-plans__actions {
		display: grid !important;
		grid-template-columns: 1fr !important;
		width: 100% !important;
		gap: 12px !important;
	}

	.wushidao-featured__grid,
	.wushidao-fitboxing-mini-grid,
	.wushidao-fitboxing-card-grid,
	.wushidao-fitboxing-gallery,
	.wushidao-chikung-mini-grid,
	.wushidao-chikung-card-grid,
	.wushidao-chikung-gallery,
	.wushidao-services-grid,
	.wushidao-services-path-grid,
	.wushidao-blog-grid,
	.wushidao-blog-category-grid,
	.wushidao-plans-grid,
	.wushidao-ranks-grid,
	.wushidao-about-grid {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.wushidao-fitboxing-split,
	.wushidao-chikung-split,
	.wushidao-about-split,
	.wushidao-contact-main,
	.wushidao-blog-featured__card,
	.wushidao-activity {
		grid-template-columns: 1fr !important;
		gap: 28px !important;
	}

	.wushidao-featured__card,
	.wushidao-fitboxing-card,
	.wushidao-chikung-card,
	.wushidao-service-card,
	.wushidao-contact-card,
	.wushidao-blog-card,
	.wushidao-blog-category,
	.wushidao-plans-card,
	.wushidao-rank-card {
		min-width: 0 !important;
		min-height: auto !important;
		padding: 24px !important;
		border-radius: 8px !important;
	}

	.wushidao-fitboxing-hero__visual,
	.wushidao-fitboxing-split__visual,
	.wushidao-chikung-hero__visual,
	.wushidao-chikung-split__visual,
	.wushidao-about-hero__visual,
	.wushidao-plans-hero__media,
	.wushidao-contact-hero__media,
	.wushidao-blog-hero__media,
	.wushidao-services-hero__media {
		min-height: 100% !important;
	}

	.wushidao-fitboxing-split__visual,
	.wushidao-chikung-split__visual,
	.wushidao-blog-featured__media,
	.wushidao-activity__media {
		min-height: 280px !important;
	}

	.wushidao-fitboxing-gallery img,
	.wushidao-chikung-gallery img,
	.wushidao-blog-card__image,
	.wushidao-blog-featured__image {
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		aspect-ratio: 4 / 3;
		object-fit: cover;
	}

	.wushidao-contact-cf7,
	.wushidao-contact-cf7 .wpcf7,
	.wushidao-contact-cf7 .wushi-cf7-form,
	.wushidao-contact-cf7 .wpcf7 form {
		width: 100% !important;
		max-width: 100% !important;
	}

	.wushi-cf7-form,
	.wushidao-contact-cf7 .wpcf7 form {
		padding: 24px !important;
	}

	.wushi-cf7-form input,
	.wushi-cf7-form select,
	.wushi-cf7-form textarea {
		min-width: 0 !important;
		font-size: 16px !important;
	}

	.wushidao-schedule__table,
	.wushidao-plans-table,
	.wushidao-rank-table {
		display: block !important;
		width: 100% !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch;
	}

	.wushidao-floating-actions {
		right: 12px !important;
		bottom: 14px !important;
		gap: 10px !important;
	}

	.wushidao-floating-actions a,
	.wushidao-floating-actions__button {
		width: 52px !important;
		height: 52px !important;
	}

	.wushidao-footer {
		overflow: hidden !important;
	}

	.wushidao-footer::before {
		right: -140px;
		width: 260px;
		height: 260px;
		border-width: 18px;
	}

	.wushidao-footer__inner,
	.wushidao-footer__bottom {
		width: min(100% - 40px, 560px) !important;
		max-width: 560px !important;
	}

	.wushidao-footer__inner {
		grid-template-columns: 1fr !important;
		gap: 30px !important;
		padding-bottom: 36px !important;
	}

	.wushidao-footer__brand {
		align-items: flex-start;
	}

	.wushidao-footer__brand strong {
		font-size: 26px !important;
		line-height: 1 !important;
	}

	.wushidao-footer__whatsapp {
		width: 100%;
		text-align: center;
	}
}

@media (max-width: 380px) {
	.wushidao-hero h1,
	.wushidao-page-hero h1,
	.wd-hero--inner h1,
	.wushidao-fitboxing h1,
	.wushidao-chikung h1,
	.wushidao-services-hero h1,
	.wushidao-contact h1,
	.wushidao-plans h1,
	.wushidao-about h1,
	.wushidao-blog h1 {
		font-size: 42px !important;
	}

	.wushidao-hero h2,
	.wushidao-fitboxing h2,
	.wushidao-chikung h2,
	.wushidao-services h2,
	.wushidao-contact h2,
	.wushidao-plans h2,
	.wushidao-about h2,
	.wushidao-blog h2 {
		font-size: 34px !important;
	}
}

@media (max-width: 767px) {
	.wushidao-cta,
	.wushidao-emotional,
	.wushidao-fitboxing-final,
	.wushidao-chikung-final,
	.wushidao-plans-final,
	.wushidao-about-final,
	.wushidao-blog-final,
	.wushidao-services-final,
	.wushidao-services-paths,
	.wushidao-contact-location {
		width: 100vw !important;
		max-width: none !important;
		margin-right: calc(50% - 50vw) !important;
		margin-left: calc(50% - 50vw) !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.wushidao-cta,
	.wushidao-fitboxing-final,
	.wushidao-chikung-final,
	.wushidao-plans-final,
	.wushidao-about-final,
	.wushidao-blog-final,
	.wushidao-services-final,
	.wushidao-contact-location {
		padding-top: 64px !important;
		padding-bottom: 68px !important;
	}

	.wushidao-emotional,
	.wushidao-services-paths {
		padding-top: 58px !important;
		padding-bottom: 62px !important;
	}
}

/* Inner hero normalization: keep all page heroes full-bleed after Elementor wrappers. */
.wushidao-page-hero,
.wd-hero--inner,
.wushidao-services-hero.wd-hero--inner,
.wushidao-fitboxing-hero.wd-hero--inner,
.wushidao-chikung-hero.wd-hero--inner,
.wushidao-about-hero.wd-hero--inner,
.wushidao-plans-hero.wd-hero--inner,
.wushidao-contact-hero.wd-hero--inner,
.wushidao-blog-hero.wd-hero--inner {
	box-sizing: border-box !important;
	position: relative !important;
	width: 100vw !important;
	max-width: none !important;
	min-height: 748px !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding: 104px max(20px, calc((100vw - 1600px) / 2 + 20px)) !important;
	overflow: hidden !important;
	border: 0 !important;
	background: #111111 !important;
	color: #FFFFFF !important;
}

.wd-hero--inner.wushidao-plans-hero,
.wd-hero--inner.wushidao-services-hero,
.wd-hero--inner.wushidao-contact-hero,
.wd-hero--inner.wushidao-blog-hero,
.wd-hero--inner.wushidao-about-hero,
.wd-hero--inner.wushidao-fitboxing-hero,
.wd-hero--inner.wushidao-chikung-hero {
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
}

.wushidao-services-hero__content,
.wushidao-fitboxing-hero__content,
.wushidao-chikung-hero__content,
.wushidao-about-hero__content,
.wushidao-plans-hero__content,
.wushidao-contact-hero > div:first-child,
.wushidao-blog-hero__content {
	position: relative !important;
	z-index: 3 !important;
	width: min(720px, 100%) !important;
	max-width: 720px !important;
}

.wushidao-services-hero__media,
.wushidao-fitboxing-hero__visual,
.wushidao-chikung-hero__visual,
.wushidao-about-hero__visual,
.wushidao-plans-hero__media,
.wushidao-contact-hero__media,
.wushidao-blog-hero__media {
	position: absolute !important;
	inset: 0 !important;
	z-index: 0 !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	overflow: hidden !important;
	border: 0 !important;
	background: #111111 !important;
	pointer-events: none !important;
}

.wushidao-services-hero__image,
.wushidao-fitboxing-hero__image,
.wushidao-chikung-hero__image,
.wushidao-about-hero__image,
.wushidao-plans-hero__media img,
.wushidao-contact-hero__media img,
.wushidao-blog-hero__media img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	max-width: none !important;
	object-fit: cover !important;
	object-position: center right !important;
}

@media (max-width: 1100px) {
	.wushidao-page-hero,
	.wd-hero--inner,
	.wushidao-services-hero.wd-hero--inner,
	.wushidao-fitboxing-hero.wd-hero--inner,
	.wushidao-chikung-hero.wd-hero--inner,
	.wushidao-about-hero.wd-hero--inner,
	.wushidao-plans-hero.wd-hero--inner,
	.wushidao-contact-hero.wd-hero--inner,
	.wushidao-blog-hero.wd-hero--inner {
		min-height: 620px !important;
		padding-top: 76px !important;
		padding-bottom: 82px !important;
	}
}

@media (max-width: 767px) {
	.wushidao-page-hero,
	.wd-hero--inner,
	.wushidao-services-hero.wd-hero--inner,
	.wushidao-fitboxing-hero.wd-hero--inner,
	.wushidao-chikung-hero.wd-hero--inner,
	.wushidao-about-hero.wd-hero--inner,
	.wushidao-plans-hero.wd-hero--inner,
	.wushidao-contact-hero.wd-hero--inner,
	.wushidao-blog-hero.wd-hero--inner {
		min-height: 560px !important;
		padding: 58px 20px 64px !important;
	}
}
