/*
 * Huizhi Crown-Inspired Design System — 1.0.5
 * Visual layer only. Every rule is scoped to body.hz-design-v2.
 */

body.hz-design-v2 {
	--hzv2-charcoal: #303030;
	--hzv2-charcoal-deep: #242424;
	--hzv2-navy: #102c46;
	--hzv2-navy-deep: #071b2b;
	--hzv2-teal: #0b6076;
	--hzv2-orange: #f5a623;
	--hzv2-orange-hover: #ffba3e;
	--hzv2-ink: #1f2f3c;
	--hzv2-copy: #53616d;
	--hzv2-muted: #72808b;
	--hzv2-line: #e1e5e8;
	--hzv2-soft: #f3f3f3;
	--hzv2-paper: #ffffff;
	--hzv2-container: 1320px;
	--hzv2-gutter: 24px;
	--hzv2-radius: 4px;
	--hzv2-pill: 999px;
	margin: 0;
	color: var(--hzv2-copy);
	background: var(--hzv2-paper) !important;
	font-family: "Helvetica Neue", Arial, sans-serif;
	font-size: 16px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body.hz-design-v2 *,
body.hz-design-v2 *::before,
body.hz-design-v2 *::after {
	box-sizing: border-box;
}

body.hz-design-v2 #content,
body.hz-design-v2 .site-content,
body.hz-design-v2 #primary,
body.hz-design-v2 #main,
body.hz-design-v2 .entry-content {
	background: transparent !important;
}

body.hz-design-v2:not(.home) #content {
	padding-block: 44px 76px;
	background: #fff !important;
}

body.hz-design-v2:is(.page-id-22, .page-id-30, .page-id-32, .page-id-34, .page-id-95, .page-id-97, .page-id-99, .page-id-101, .page-id-104, .page-id-106, .page-id-108, .page-id-110, .page-id-115) #content {
	padding-top: 0 !important;
}

body.hz-design-v2:not(.home) #content > .ast-container {
	width: min(var(--hzv2-container), calc(100% - (var(--hzv2-gutter) * 2))) !important;
	max-width: var(--hzv2-container) !important;
	margin-inline: auto !important;
	padding-inline: 0 !important;
}

body.hz-design-v2 .entry-header:empty,
body.hz-design-v2 .entry-header .entry-title:empty {
	display: none !important;
}

body.hz-design-v2 .entry-content > :is(.hz-about, .hz-custom, .hz-mfg, .hzcs),
body.hz-design-v2.page-id-34 .entry-content > .hz-contact,
body.hz-design-v2 #hz-products-catalog {
	width: 100% !important;
	max-width: var(--hzv2-container) !important;
	margin-inline: auto !important;
}

body.hz-design-v2 :is(h1, h2, h3, h4, h5, h6) {
	color: var(--hzv2-ink);
	font-family: inherit;
	font-weight: 600;
	letter-spacing: -0.022em;
}

body.hz-design-v2 .entry-content h1 {
	font-size: clamp(40px, 4.4vw, 58px);
	line-height: 1.08;
}

body.hz-design-v2 .entry-content h2 {
	font-size: clamp(30px, 3vw, 40px);
	line-height: 1.15;
}

body.hz-design-v2 .entry-content h3 {
	font-size: clamp(21px, 1.8vw, 26px);
	line-height: 1.28;
}

body.hz-design-v2 .entry-content p,
body.hz-design-v2 .entry-content li {
	color: var(--hzv2-copy);
}

body.hz-design-v2 .entry-content :is(.hz-ey, .hz-eyebrow, [class$="__eyebrow"], [class$="-eyebrow"], [class$="__ey"], [class$="-ey"]) {
	color: var(--hzv2-teal) !important;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

/* Astra header: compact, charcoal and visually independent of page content. */
body.hz-design-v2 #masthead,
body.hz-design-v2 .site-header {
	position: sticky;
	top: 0;
	z-index: 9990;
	width: 100%;
	background: var(--hzv2-charcoal) !important;
	box-shadow: none !important;
}

body.hz-design-v2.admin-bar #masthead,
body.hz-design-v2.admin-bar .site-header {
	top: 32px;
}

body.hz-design-v2 :is(.ast-primary-header-bar, .main-header-bar) {
	min-height: 74px !important;
	border: 0 !important;
	background: var(--hzv2-charcoal) !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.hz-design-v2 .ast-primary-header-bar > .ast-container,
body.hz-design-v2 .main-header-bar > .ast-container {
	width: min(var(--hzv2-container), calc(100% - 40px));
	max-width: var(--hzv2-container) !important;
	min-height: 74px;
	margin-inline: auto;
	padding-inline: 0 !important;
}

body.hz-design-v2 .site-branding,
body.hz-design-v2 .ast-site-identity {
	padding-block: 7px !important;
}

body.hz-design-v2 .site-logo-img img,
body.hz-design-v2 .custom-logo-link img {
	display: block;
	width: auto !important;
	max-width: 118px !important;
	height: auto !important;
	max-height: 58px !important;
	object-fit: contain;
}

body.hz-design-v2 .main-header-menu,
body.hz-design-v2 .main-header-menu > .menu-item,
body.hz-design-v2 .main-header-menu > .menu-item > .menu-link {
	min-height: 74px;
}

body.hz-design-v2 .main-header-menu > .menu-item > .menu-link {
	display: flex;
	align-items: center;
	padding-inline: clamp(9px, 1.05vw, 15px) !important;
	color: #f7f7f7 !important;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.015em;
	line-height: 1.25;
	text-transform: uppercase;
}

body.hz-design-v2 .main-header-menu > .menu-item:hover > .menu-link,
body.hz-design-v2 .main-header-menu > .current-menu-item > .menu-link,
body.hz-design-v2 .main-header-menu > .current-menu-ancestor > .menu-link,
body.hz-design-v2 .main-header-menu > .menu-item > .menu-link:focus-visible {
	color: var(--hzv2-orange) !important;
}

body.hz-design-v2 .main-header-menu .sub-menu {
	border: 0 !important;
	border-top: 2px solid var(--hzv2-orange) !important;
	border-radius: 0 0 var(--hzv2-radius) var(--hzv2-radius);
	background: var(--hzv2-charcoal-deep) !important;
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.2) !important;
}

body.hz-design-v2 .main-header-menu .sub-menu .menu-link {
	min-height: 44px;
	padding: 12px 16px !important;
	color: #f5f5f5 !important;
	font-size: 13px;
}

body.hz-design-v2 .main-header-menu .sub-menu .menu-link:hover,
body.hz-design-v2 .main-header-menu .sub-menu .menu-link:focus-visible {
	color: var(--hzv2-orange) !important;
	background: #383838 !important;
}

body.hz-design-v2 :is(.ast-menu-toggle, .menu-toggle, .ast-button-wrap .menu-toggle) {
	color: #fff !important;
	background: transparent !important;
}

/* Shared controls: pill CTAs, square media and flat cards. */
body.hz-design-v2 .entry-content :is(
	a[class$="-btn"],
	a[class$="__btn"],
	a[class$="-cta"],
	a[class$="__cta"],
	.hz-carousel__actions a,
	.hzci-link,
	.hz-catalog-feature-cta,
	.wp-block-button__link
) {
	min-height: 48px;
	border-radius: var(--hzv2-pill) !important;
	font-weight: 700;
	text-decoration: none;
	box-shadow: none !important;
}

body.hz-design-v2 .entry-content :is(
	a[class$="-btn"],
	a[class$="__btn"],
	a[class$="-cta"],
	a[class$="__cta"],
	.hz-carousel__actions a:first-child,
	.hz-catalog-feature-cta,
	.wp-block-button__link
) {
	border-color: var(--hzv2-orange) !important;
	color: var(--hzv2-navy-deep) !important;
	background: var(--hzv2-orange) !important;
}

body.hz-design-v2 .entry-content :is(
	a[class$="-btn"],
	a[class$="__btn"],
	a[class$="-cta"],
	.hz-carousel__actions a:first-child,
	.hz-catalog-feature-cta,
	.wp-block-button__link
):hover {
	border-color: var(--hzv2-orange-hover) !important;
	color: var(--hzv2-navy-deep) !important;
	background: var(--hzv2-orange-hover) !important;
}

body.hz-design-v2 .entry-content :is(
	.hz-product-card,
	.hz-hpg__card,
	.hz-home-project,
	.hz-option,
	.hz-option-card,
	.hz-step,
	.hz-cooperate-step,
	.hz-spec-card,
	.hzp-card,
	.hzg-card,
	.hzcs-case,
	.hz-about-card,
	.hz-mfg-card,
	.hz-case,
	.wp-block-group.is-style-card
) {
	border: 1px solid var(--hzv2-line) !important;
	border-radius: var(--hzv2-radius) !important;
	background: #fff !important;
	box-shadow: none !important;
}

body.hz-design-v2 .entry-content :is(
	.hz-product-card,
	.hz-hpg__card,
	.hz-home-project,
	.hz-option,
	.hz-option-card,
	.hz-step,
	.hz-cooperate-step,
	.hz-spec-card,
	.hzp-card,
	.hzg-card,
	.hzcs-case,
	.hz-about-card,
	.hz-mfg-card,
	.hz-case
):hover {
	border-color: #c8d0d5 !important;
	box-shadow: none !important;
	transform: none !important;
}

body.hz-design-v2 .entry-content img {
	max-width: 100%;
}

body.hz-design-v2 .entry-content :is(figure, picture, [class$="__media"], [class$="-media"]) img,
body.hz-design-v2 .entry-content > section > img {
	border-radius: var(--hzv2-radius) !important;
	box-shadow: none !important;
}

/* Homepage: full-width hero followed by a calm 1320px section rhythm. */
body.hz-design-v2.home.page-id-10 #content > .ast-container {
	max-width: none !important;
	padding-block: 0 !important;
	padding-inline: 0 !important;
}

body.hz-design-v2.home.page-id-10 #content {
	padding-block: 0 !important;
}

body.hz-design-v2.home.page-id-10 #post-10 > .entry-content {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) min(var(--hzv2-container), calc(100% - 48px)) minmax(0, 1fr) !important;
	gap: 0 !important;
}

/* Classic Editor wrapped the carousel comment and script in empty paragraph
 * boxes. They are non-content nodes, but their default margins create white
 * seams above and below the full-width hero. */
body.hz-design-v2.home.page-id-10 #post-10 > .entry-content > p:empty,
body.hz-design-v2.home.page-id-10 #hz-home-carousel + p {
	display: contents !important;
	margin: 0 !important;
}

body.hz-design-v2.home.page-id-10 #post-10 > .entry-content > :not(#hz-home-carousel) {
	grid-column: 2;
}

body.hz-design-v2.home.page-id-10 #post-10 > .entry-content > #hz-home-carousel {
	grid-column: 1 / -1;
	width: 100%;
	max-width: none;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.hz-design-v2 #hz-home-carousel .hz-carousel__content {
	min-height: clamp(580px, calc(100svh - 74px), 760px) !important;
	padding-inline: max(48px, calc((100% - var(--hzv2-container)) / 2 + 36px)) !important;
}

body.hz-design-v2 #hz-home-carousel .hz-carousel__bottom {
	padding-inline: max(48px, calc((100% - var(--hzv2-container)) / 2 + 36px)) !important;
	background: rgba(17, 17, 17, 0.52) !important;
}

body.hz-design-v2 #hz-home-carousel .hz-carousel__shade {
	background: linear-gradient(90deg, rgba(8, 18, 28, 0.92), rgba(8, 24, 38, 0.76) 48%, rgba(8, 24, 38, 0.16)) !important;
}

body.hz-design-v2 #hz-home-carousel h1 {
	max-width: 17ch;
	color: #fff !important;
}

body.hz-design-v2 #hz-home-carousel .hz-carousel__eyebrow {
	color: #9ed5de !important;
}

body.hz-design-v2 #hz-home-carousel .hz-carousel__actions a {
	padding-inline: 24px;
}

body.hz-design-v2 #hz-home-carousel .hz-carousel__actions a:not(:first-child) {
	border-color: rgba(255, 255, 255, 0.75) !important;
	color: #fff !important;
	background: transparent !important;
}

body.hz-design-v2.home .entry-content > :is(section, .hz-home-projects):not(#hz-home-carousel) {
	margin-block: 0 !important;
	padding-block: clamp(62px, 6vw, 88px) !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.hz-design-v2.home .entry-content > :is(section, .hz-home-projects):not(#hz-home-carousel) {
	background: #fff !important;
	background-image: none !important;
}

body.hz-design-v2.home .entry-content > :is(section:has(.hz-product-grid), section:has(.hz-hpg__grid), .hz-home-projects, section:has(.hz-home-capability)) {
	background: var(--hzv2-soft) !important;
}

body.hz-design-v2 :is(.hz-product-grid, .hz-hpg__grid, .hz-home-projects-grid) {
	gap: 22px !important;
}

body.hz-design-v2 :is(.hz-product-card, .hz-hpg__card, .hz-home-project) img {
	border-radius: var(--hzv2-radius) var(--hzv2-radius) 0 0 !important;
}

body.hz-design-v2 :is(.hz-hpg__photo-link, .hz-home-project, .hz-product-card, .hz-spec-media) {
	overflow: hidden;
}

body.hz-design-v2 :is(.hz-hpg__photo-link, .hz-home-project, .hz-product-card, .hz-spec-media) img {
	transition: transform 600ms ease;
}

body.hz-design-v2 :is(.hz-hpg__photo-link, .hz-home-project, .hz-product-card, .hz-spec-media):hover img {
	transform: scale(1.035);
}

/* About Us, including the current company introduction module. */
body.hz-design-v2 #hz-about-company-introduction,
body.hz-design-v2 .hz-about {
	width: 100%;
	max-width: var(--hzv2-container);
	margin-inline: auto;
	color: var(--hzv2-copy);
}

body.hz-design-v2 #hz-about-company-introduction .hzci-heading {
	max-width: 760px;
	margin: 0 auto 44px;
}

body.hz-design-v2 #hz-about-company-introduction .hzci-heading h2 {
	font-size: clamp(34px, 3.8vw, 48px);
	font-weight: 500;
}

body.hz-design-v2 #hz-about-company-introduction .hzci-stats {
	margin-bottom: 64px;
	padding-block: 26px;
	border-block: 1px solid var(--hzv2-line);
	background: #fff !important;
}

body.hz-design-v2 #hz-about-company-introduction .hzci-stat {
	border-color: var(--hzv2-line) !important;
}

body.hz-design-v2 #hz-about-company-introduction .hzci-stat dd {
	color: var(--hzv2-navy);
	font-weight: 500;
}

body.hz-design-v2 #hz-about-company-introduction :is(.hzci-intro, .hzci-library) {
	margin-bottom: clamp(54px, 6vw, 78px);
}

body.hz-design-v2 #hz-about-company-introduction .hzci-intro-video {
	border: 1px solid var(--hzv2-line) !important;
	border-radius: var(--hzv2-radius) !important;
	background: var(--hzv2-soft) !important;
}

body.hz-design-v2 #hz-about-company-introduction .hzci-tabs {
	border-color: var(--hzv2-line) !important;
}

body.hz-design-v2 #hz-about-company-introduction .hzci-tab[aria-selected="true"] {
	border-bottom-color: var(--hzv2-orange) !important;
	color: var(--hzv2-navy) !important;
}

body.hz-design-v2 #hz-about-company-introduction .hzci-gallery img,
body.hz-design-v2 #hz-about-company-introduction .hzci-cert-media {
	border-radius: var(--hzv2-radius) !important;
}

body.hz-design-v2 #hz-about-company-introduction .hzci-advantages {
	padding: clamp(42px, 5vw, 68px) !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--hzv2-soft) !important;
	box-shadow: none !important;
}

body.hz-design-v2 #hz-about-company-introduction .hzci-advantages-copy {
	border: 1px solid var(--hzv2-line);
	border-radius: var(--hzv2-radius);
	background: #fff !important;
}

body.hz-design-v2 :is(.hz-about-hero, .hz-about-proof, .hz-about-cta) {
	border-radius: var(--hzv2-radius) !important;
	box-shadow: none !important;
}

/* The About hero ships with later page-level typography rules. Keep its copy
 * legible over the factory photograph without changing the underlying image. */
body.hz-design-v2.page-id-22 .hz-about .hz-about-hero .hz-about-overlay {
	position: relative;
	z-index: 2;
}

body.hz-design-v2.page-id-22 .hz-about .hz-about-hero .hz-about-overlay :is(h1, h2, h3, p) {
	color: #fff !important;
	text-shadow: 0 2px 18px rgba(3, 12, 20, 0.32);
}

body.hz-design-v2.page-id-22 .hz-about .hz-about-hero .hz-about-overlay .hz-about-ey {
	color: #8fd3d5 !important;
}

body.hz-design-v2 :is(.hz-about-hero, .hz-custom-hero, .hz-mfg-intro, .hz-contact-hero, .hzcs-hero, .hzp-hero, .hzg-hero) {
	width: 100% !important;
	max-width: none !important;
	margin-inline: 0 !important;
}

body.hz-design-v2 :is(.hz-about-section, .hz-about-position, .hz-about-cert) {
	border: 0 !important;
	border-radius: 0 !important;
	background-image: none !important;
	box-shadow: none !important;
}

/* Products hub and product-detail/guide families. */
body.hz-design-v2 #hz-products-catalog {
	max-width: var(--hzv2-container) !important;
	padding-block: 0 48px !important;
}

body.hz-design-v2 #hz-products-catalog .hz-catalog-layout {
	gap: clamp(34px, 4vw, 56px) !important;
}

body.hz-design-v2 #hz-products-catalog .hz-catalog-feature {
	border-radius: var(--hzv2-radius) !important;
	color: #fff !important;
	background: var(--hzv2-charcoal) !important;
	box-shadow: none !important;
}

body.hz-design-v2 #hz-products-catalog .hz-catalog-feature::after {
	background: linear-gradient(180deg, rgba(48, 48, 48, 1) 0%, rgba(48, 48, 48, 0.94) 24%, rgba(48, 48, 48, 0.08) 58%, rgba(20, 20, 20, 0.45) 100%) !important;
}

body.hz-design-v2 #hz-products-catalog .hz-catalog-feature :is(h1, .hz-catalog-feature-question) {
	color: #fff !important;
}

body.hz-design-v2 #hz-products-catalog .hz-catalog-feature-cta {
	min-height: 48px;
	box-shadow: none !important;
}

body.hz-design-v2 #hz-products-catalog .hz-catalog-link {
	border-radius: var(--hzv2-pill) !important;
}

body.hz-design-v2 #hz-products-catalog .hz-catalog-link:hover,
body.hz-design-v2 #hz-products-catalog .hz-catalog-link:focus-visible {
	color: var(--hzv2-navy) !important;
	background: var(--hzv2-soft) !important;
}

body.hz-design-v2 :is(.hz-intro, .hzp-hero, .hzg-hero, .hzcs-hero) {
	border: 0 !important;
	border-radius: var(--hzv2-radius) !important;
	background-color: var(--hzv2-navy-deep) !important;
	box-shadow: none !important;
}

body.hz-design-v2 :is(.hz-intro, .hzp-hero, .hzg-hero, .hzcs-hero) :is(h1, h2, h3, p, li) {
	color: #fff !important;
}

body.hz-design-v2 :is(.hz-directory, .hz-cases, .hzp-section, .hzg-section, .hzcs-section, .hzcs-system) {
	margin-block: 0 !important;
	padding: clamp(54px, 5vw, 78px) clamp(22px, 4vw, 56px) !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.hz-design-v2 :is(.hz-directory, .hz-cases, .hzp-section, .hzg-section, .hzcs-section, .hzcs-system):nth-of-type(even),
body.hz-design-v2 :is(.hzp-section-soft, .hzg-section-soft, .hzcs-system) {
	background: var(--hzv2-soft) !important;
}

body.hz-design-v2 :is(.hzp-proofstrip, .hz-about-proof, .hz-mfg-proof) {
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--hzv2-charcoal) !important;
	box-shadow: none !important;
}

body.hz-design-v2 :is(.hzp-cta, .hzg-cta, .hzcs-cta, .hz-about-cta, .hz-mfg-cta) {
	border: 0 !important;
	border-radius: var(--hzv2-radius) !important;
	background: var(--hzv2-navy) !important;
	background-image: none !important;
	box-shadow: none !important;
}

/* Custom Packaging: structured white/gray library and dark evidence bands. */
body.hz-design-v2 .hz-custom {
	width: 100%;
	max-width: var(--hzv2-container);
	margin-inline: auto;
}

body.hz-design-v2 .hz-custom-hero {
	border: 0 !important;
	border-radius: var(--hzv2-radius) !important;
	background-color: var(--hzv2-navy-deep) !important;
	box-shadow: none !important;
}

body.hz-design-v2 .hz-custom-hero :is(h1, h2, h3, p) {
	color: #fff !important;
}

/* Page 30 includes a later white image fade. Replace it with the dark,
 * Crown-inspired editorial treatment used by the rest of the site. */
body.hz-design-v2.page-id-30 .hz-custom > .hz-custom-hero {
	color: #fff !important;
	background-color: var(--hzv2-navy-deep) !important;
}

body.hz-design-v2.page-id-30 .hz-custom > .hz-custom-hero::after {
	background: linear-gradient(90deg, rgba(7, 18, 29, 0.97) 0%, rgba(9, 35, 54, 0.9) 46%, rgba(9, 35, 54, 0.42) 72%, rgba(9, 35, 54, 0.08) 100%) !important;
}

body.hz-design-v2.page-id-30 .hz-custom > .hz-custom-hero > div :is(h1, h2, h3, p) {
	color: #fff !important;
	text-shadow: 0 2px 18px rgba(3, 12, 20, 0.28);
}

body.hz-design-v2.page-id-30 .hz-custom > .hz-custom-hero > div .hz-ey {
	color: #8fd3d5 !important;
}

body.hz-design-v2 .hz-custom > :is(.hz-custom-intro, .hz-option-grid, .hz-spec-library, .hz-showcase, .hz-process, .hz-cooperate, .hz-eco-real) {
	margin-block: 0 !important;
	padding: clamp(54px, 5vw, 76px) clamp(22px, 4vw, 54px) !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.hz-design-v2 .hz-custom > :is(.hz-option-grid, .hz-spec-library, .hz-process, .hz-eco-real) {
	background: var(--hzv2-soft) !important;
}

body.hz-design-v2 .hz-custom > .hz-showcase {
	background: var(--hzv2-navy) !important;
}

body.hz-design-v2 .hz-custom > .hz-showcase :is(h2, h3, h4, p, li) {
	color: #fff !important;
}

body.hz-design-v2 .hz-option,
body.hz-design-v2 .hz-spec-card {
	overflow: hidden;
}

body.hz-design-v2 .hz-option::before,
body.hz-design-v2 .hz-option::after {
	border-radius: var(--hzv2-radius) var(--hzv2-radius) 0 0 !important;
}

body.hz-design-v2 .hz-spec-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
}

body.hz-design-v2 .hz-spec-tab {
	min-height: 42px;
	padding: 8px 17px !important;
	border: 1px solid transparent !important;
	border-radius: var(--hzv2-pill) !important;
	color: var(--hzv2-ink) !important;
	background: #e6e6e6 !important;
}

body.hz-design-v2 .hz-spec-tab[aria-selected="true"],
body.hz-design-v2 .hz-spec-tab.is-active {
	border-color: var(--hzv2-navy) !important;
	color: #fff !important;
	background: var(--hzv2-navy) !important;
}

body.hz-design-v2 .hz-spec-media {
	border-radius: var(--hzv2-radius) var(--hzv2-radius) 0 0 !important;
}

body.hz-design-v2 .hz-cooperate-list::before {
	background: #d8d8d8 !important;
}

body.hz-design-v2 .hz-cooperate-number {
	color: #fff !important;
	background: var(--hzv2-charcoal) !important;
}

body.hz-design-v2 .hz-eco-real {
	overflow: hidden;
}

/* Manufacturing, Projects and Contact. */
body.hz-design-v2 :is(.hz-mfg-intro, .hz-contact-hero) {
	border: 0 !important;
	border-radius: var(--hzv2-radius) !important;
	background-color: var(--hzv2-navy-deep) !important;
	box-shadow: none !important;
}

body.hz-design-v2 :is(.hz-mfg-intro, .hz-contact-hero) :is(h1, h2, h3, p, li) {
	color: #fff !important;
}

body.hz-design-v2 :is(.hz-mfg-split, .hz-mfg-route, .hz-mfg-capacity, .hz-mfg-qc, .hz-contact-main, .hz-contact-steps, .hz-contact-note) {
	margin-block: 0 !important;
	padding: clamp(54px, 5vw, 76px) clamp(22px, 4vw, 54px) !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.hz-design-v2 :is(.hz-mfg-route, .hz-mfg-capacity, .hz-contact-steps, .hz-contact-note) {
	background: var(--hzv2-soft) !important;
}

body.hz-design-v2 .hz-mfg-qc {
	background: var(--hzv2-navy) !important;
}

body.hz-design-v2 .hz-mfg-qc :is(h2, h3, h4, p, li) {
	color: #fff !important;
}

body.hz-design-v2 .hz-mfg-split img,
body.hz-design-v2 .hzcs-case img {
	border-radius: var(--hzv2-radius) !important;
	box-shadow: none !important;
}

body.hz-design-v2 .hzcs-case {
	min-height: 0 !important;
}

body.hz-design-v2 .hzcs-case .hzcs-body {
	padding: clamp(28px, 3vw, 36px) !important;
}

body.hz-design-v2 .hzcs-case .hzcs-body > h2 {
	font-size: clamp(26px, 2.2vw, 31px) !important;
}

body.hz-design-v2 .hzcs-case .hzcs-body :is(p, .hzcs-facts) {
	font-size: 15px !important;
	line-height: 1.6 !important;
}

body.hz-design-v2 .hzcs-case .hzcs-body h3 {
	margin-top: 16px !important;
	font-size: 17px !important;
}

body.hz-design-v2.page-id-34 #quote-form {
	padding: clamp(28px, 4vw, 54px) !important;
	border: 1px solid var(--hzv2-line) !important;
	border-radius: var(--hzv2-radius) !important;
	background: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.hz-design-v2.page-id-34 #quote-form :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea, .forminator-input, .select2-selection, .forminator-multi-upload) {
	min-height: 48px;
	border: 1px solid #aeb7be !important;
	border-radius: var(--hzv2-radius) !important;
	color: var(--hzv2-ink) !important;
	background: #fff !important;
	box-shadow: none !important;
}

body.hz-design-v2.page-id-34 #quote-form :is(button[type="submit"], input[type="submit"], .forminator-button-submit) {
	min-height: 50px;
	padding-inline: 26px !important;
	border: 1px solid var(--hzv2-orange) !important;
	border-radius: var(--hzv2-pill) !important;
	color: var(--hzv2-navy-deep) !important;
	background: var(--hzv2-orange) !important;
	box-shadow: none !important;
}

/* The existing Huizhi mega footer, simplified without losing its content/form. */
body.hz-design-v2 .huizhi-gf {
	border-top: 3px solid var(--hzv2-orange) !important;
	color: #fff;
	background: var(--hzv2-charcoal) !important;
	background-image: none !important;
}

body.hz-design-v2 .huizhi-gf::before {
	display: none !important;
}

body.hz-design-v2 .huizhi-gf__inner,
body.hz-design-v2 .huizhi-gf__bottom {
	width: min(var(--hzv2-container), calc(100% - 48px)) !important;
}

body.hz-design-v2 .huizhi-gf__brand,
body.hz-design-v2 .huizhi-gf__nav,
body.hz-design-v2 .huizhi-gf__inquiry {
	padding-block: clamp(42px, 4vw, 56px) !important;
}

body.hz-design-v2 .huizhi-gf__nav,
body.hz-design-v2 .huizhi-gf__inquiry {
	border-color: rgba(255, 255, 255, 0.13) !important;
}

body.hz-design-v2 .huizhi-gf__logo-link,
body.hz-design-v2 .huizhi-gf__proof,
body.hz-design-v2 .huizhi-gf__status,
body.hz-design-v2 .huizhi-gf__form input,
body.hz-design-v2 .huizhi-gf__form textarea,
body.hz-design-v2 .huizhi-gf__form button {
	border-radius: var(--hzv2-radius) !important;
	box-shadow: none !important;
}

body.hz-design-v2 .huizhi-gf__eyebrow,
body.hz-design-v2 .huizhi-gf__contact span,
body.hz-design-v2 .huizhi-gf__address span {
	color: #8fd3d5 !important;
}

body.hz-design-v2 .huizhi-gf__nav h2,
body.hz-design-v2 .huizhi-gf__form b {
	color: var(--hzv2-orange) !important;
}

body.hz-design-v2 .huizhi-gf__form button,
body.hz-design-v2 .huizhi-gf__submit {
	border-color: var(--hzv2-orange) !important;
	color: var(--hzv2-navy-deep) !important;
	background: var(--hzv2-orange) !important;
}

/* Floating contact retains all actions but follows the flatter site chrome. */
body.hz-design-v2 #huizhi-floating-contact {
	--hz-contact-navy: var(--hzv2-navy);
	--hz-contact-teal: var(--hzv2-teal);
	--hz-contact-orange: var(--hzv2-orange);
}

body.hz-design-v2 #huizhi-floating-contact .hz-contact__label {
	border-color: var(--hzv2-line) !important;
	border-radius: var(--hzv2-pill) !important;
	box-shadow: none !important;
}

body.hz-design-v2 #huizhi-floating-contact .hz-contact__bubble {
	border: 0 !important;
	background: var(--hzv2-navy) !important;
	box-shadow: none !important;
}

body.hz-design-v2 #huizhi-floating-contact .hz-contact__icon,
body.hz-design-v2 #huizhi-floating-contact .hz-contact__panel,
body.hz-design-v2 #huizhi-floating-contact .hz-contact__close,
body.hz-design-v2 #huizhi-floating-contact .hz-contact__actions a {
	border-radius: var(--hzv2-radius) !important;
	box-shadow: none !important;
}

body.hz-design-v2 #huizhi-floating-contact .hz-contact__panel {
	border: 1px solid var(--hzv2-line) !important;
	border-top: 3px solid var(--hzv2-orange) !important;
}

body.hz-design-v2 #huizhi-floating-contact .hz-contact__actions .hz-contact__quote {
	border-color: var(--hzv2-orange) !important;
	background: var(--hzv2-orange) !important;
}

/* Keep the separate Kodee/Ask AI control, but reduce it to a quiet icon so it
 * no longer collides with the Huizhi contact label or page content. */
body.hz-design-v2 .float-btn__wrapper .kodee-fab {
	right: auto !important;
	bottom: 20px !important;
	left: 82px !important;
	width: 50px !important;
	height: 50px !important;
	border-radius: 50% !important;
}

body.hz-design-v2 .float-btn__wrapper .kodee-fab__border,
body.hz-design-v2 .float-btn__wrapper .kodee-fab__inner,
body.hz-design-v2 .float-btn__wrapper .kodee-fab__open {
	width: 50px !important;
	height: 50px !important;
	min-width: 50px !important;
	padding: 0 !important;
	border-radius: 50% !important;
}

body.hz-design-v2 .float-btn__wrapper .kodee-fab__open {
	display: grid !important;
	place-items: center !important;
}

body.hz-design-v2 .float-btn__wrapper .kodee-fab__label {
	display: none !important;
}

/* Keyboard and system preferences. */
body.hz-design-v2 :is(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid var(--hzv2-orange) !important;
	outline-offset: 3px !important;
}

@media (max-width: 1080px) {
	body.hz-design-v2 {
		--hzv2-gutter: 20px;
	}

	body.hz-design-v2 .main-header-menu > .menu-item > .menu-link {
		padding-inline: 8px !important;
		font-size: 11px;
	}

	body.hz-design-v2 #ast-desktop-header {
		display: none !important;
	}

	body.hz-design-v2 #ast-mobile-header {
		display: block !important;
	}

	body.hz-design-v2 .site-logo-img img,
	body.hz-design-v2 .custom-logo-link img {
		max-width: 104px !important;
		max-height: 54px !important;
	}

	body.hz-design-v2 .huizhi-gf__inner {
		grid-template-columns: minmax(220px, 0.78fr) minmax(280px, 1fr) minmax(390px, 1.35fr);
	}

	body.hz-design-v2 :is(.hz-product-grid, .hz-hpg__grid, .hz-home-projects-grid, .hz-spec-grid) {
		gap: 18px !important;
	}
}

@media (max-width: 1080px) {
	body.hz-design-v2 :is(.ast-primary-header-bar, .main-header-bar),
	body.hz-design-v2 .ast-primary-header-bar > .ast-container,
	body.hz-design-v2 .main-header-bar > .ast-container {
		min-height: 70px !important;
	}

	body.hz-design-v2 .ast-mobile-header-wrap .ast-primary-header-bar,
	body.hz-design-v2 .ast-mobile-header-wrap .ast-mobile-header-content,
	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation {
		background: var(--hzv2-charcoal) !important;
	}

	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation .main-header-menu,
	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item {
		min-height: 0;
		background: var(--hzv2-charcoal) !important;
	}

	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation .main-header-menu .menu-link {
		min-height: 48px;
		padding: 12px 20px !important;
		border-color: rgba(255, 255, 255, 0.12) !important;
		color: #fff !important;
		background: var(--hzv2-charcoal) !important;
		font-size: 13px;
		text-transform: uppercase;
	}

	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation .main-header-menu .sub-menu,
	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation .main-header-menu .sub-menu .menu-link {
		background: var(--hzv2-charcoal-deep) !important;
	}

	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation .current-menu-item > .menu-link,
	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation .current-menu-ancestor > .menu-link,
	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation .main-header-menu .menu-link:hover,
	body.hz-design-v2 .ast-builder-menu-mobile .main-navigation .main-header-menu .menu-link:focus-visible {
		color: var(--hzv2-orange) !important;
		background: #383838 !important;
	}

	body.hz-design-v2 .huizhi-gf__inner {
		grid-template-columns: 1fr 1.35fr;
	}

	body.hz-design-v2 .huizhi-gf__inquiry {
		grid-column: 1 / -1;
		border-top: 1px solid rgba(255, 255, 255, 0.13);
		border-left: 0 !important;
	}
}

@media (max-width: 768px) {
	body.hz-design-v2 {
		--hzv2-gutter: 18px;
		font-size: 15px;
	}

	body.hz-design-v2.admin-bar #masthead,
	body.hz-design-v2.admin-bar .site-header {
		top: 46px;
	}

	body.hz-design-v2:not(.home) #content {
		padding-block: 26px 54px;
	}

	body.hz-design-v2:is(.page-id-22, .page-id-30, .page-id-32, .page-id-34, .page-id-95, .page-id-97, .page-id-99, .page-id-101, .page-id-104, .page-id-106, .page-id-108, .page-id-110, .page-id-115) #content {
		padding-top: 0 !important;
	}

	body.hz-design-v2.home.page-id-10 #post-10 > .entry-content {
		grid-template-columns: minmax(0, 1fr) min(var(--hzv2-container), calc(100% - 36px)) minmax(0, 1fr) !important;
	}

	body.hz-design-v2 #hz-home-carousel .hz-carousel__content {
		min-height: 540px !important;
		padding: 52px 24px 38px !important;
	}

	body.hz-design-v2 #hz-home-carousel .hz-carousel__bottom {
		padding-inline: 24px !important;
	}

	body.hz-design-v2 #hz-home-carousel .hz-carousel__shade {
		background: linear-gradient(90deg, rgba(8, 18, 28, 0.9), rgba(8, 24, 38, 0.7)) !important;
	}

	body.hz-design-v2.page-id-30 .hz-custom > .hz-custom-hero::after {
		background: linear-gradient(180deg, rgba(7, 18, 29, 0.98) 0%, rgba(7, 18, 29, 0.94) 58%, rgba(7, 18, 29, 0.7) 78%, rgba(7, 18, 29, 0.2) 100%) !important;
	}

	body.hz-design-v2.home .entry-content > :is(section, .hz-home-projects):not(#hz-home-carousel),
	body.hz-design-v2 :is(.hz-directory, .hz-cases, .hzp-section, .hzg-section, .hzcs-section, .hzcs-system),
	body.hz-design-v2 .hz-custom > :is(.hz-custom-intro, .hz-option-grid, .hz-spec-library, .hz-showcase, .hz-process, .hz-cooperate, .hz-eco-real),
	body.hz-design-v2 :is(.hz-mfg-split, .hz-mfg-route, .hz-mfg-capacity, .hz-mfg-qc, .hz-contact-main, .hz-contact-steps, .hz-contact-note) {
		padding: 48px 20px !important;
	}

	body.hz-design-v2 :is(.hz-product-grid, .hz-hpg__grid, .hz-home-projects-grid, .hz-spec-grid, .hz-option-grid) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.hz-design-v2 #hz-about-company-introduction .hzci-advantages {
		padding: 42px 20px !important;
	}

	body.hz-design-v2 .huizhi-gf__inner {
		grid-template-columns: 1fr;
	}

	body.hz-design-v2 .huizhi-gf__brand,
	body.hz-design-v2 .huizhi-gf__nav,
	body.hz-design-v2 .huizhi-gf__inquiry {
		grid-column: 1;
		padding: 36px 0 !important;
		border-top: 1px solid rgba(255, 255, 255, 0.13);
		border-left: 0 !important;
	}

	body.hz-design-v2 .huizhi-gf__brand {
		border-top: 0;
	}

	body.hz-design-v2.huizhi-floating-contact-active {
		padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important;
	}

	body.hz-design-v2 #huizhi-floating-contact .hz-contact__label {
		display: none !important;
	}

	body.hz-design-v2 #huizhi-floating-contact .hz-contact__rail {
		position: fixed !important;
		top: 50% !important;
		right: 2px !important;
		bottom: auto !important;
		flex-direction: column !important;
		gap: 7px !important;
		transform: translateY(-50%);
	}

	body.hz-design-v2 #huizhi-floating-contact .hz-contact__icon {
		width: 36px !important;
		height: 36px !important;
	}
}

@media (max-width: 430px) {
	body.hz-design-v2 {
		--hzv2-gutter: 16px;
	}

	body.hz-design-v2.page-id-22 .hz-about .hz-about-hero .hz-about-overlay {
		left: auto !important;
		right: auto !important;
		width: auto !important;
		max-width: none !important;
		margin-inline: 24px !important;
	}

	body.hz-design-v2.page-id-22 .hz-about .hz-about-hero .hz-about-overlay h1 {
		font-size: 32px !important;
		line-height: 1.08 !important;
	}

	body.hz-design-v2 .entry-content h1 {
		font-size: 34px;
	}

	body.hz-design-v2 .entry-content h2 {
		font-size: 28px;
	}

	body.hz-design-v2 .ast-primary-header-bar > .ast-container,
	body.hz-design-v2 .main-header-bar > .ast-container {
		width: calc(100% - 28px);
	}

	body.hz-design-v2 .site-logo-img img,
	body.hz-design-v2 .custom-logo-link img {
		max-width: 94px !important;
		max-height: 52px !important;
	}

	body.hz-design-v2.home.page-id-10 #post-10 > .entry-content {
		grid-template-columns: minmax(0, 1fr) min(var(--hzv2-container), calc(100% - 32px)) minmax(0, 1fr) !important;
	}

	body.hz-design-v2 #hz-home-carousel .hz-carousel__content {
		min-height: 510px !important;
		padding: 44px 18px 30px !important;
	}

	body.hz-design-v2 #hz-home-carousel .hz-carousel__bottom {
		padding-inline: 18px !important;
	}

	body.hz-design-v2 .entry-content :is(
		a[class$="-btn"],
		a[class$="__btn"],
		a[class$="-cta"],
		a[class$="__cta"],
		.hz-carousel__actions a,
		.hz-catalog-feature-cta,
		.wp-block-button__link
	) {
		width: 100%;
		justify-content: center;
		text-align: center;
	}

	body.hz-design-v2 :is(.hz-product-grid, .hz-hpg__grid, .hz-home-projects-grid, .hz-spec-grid, .hz-option-grid, .hzci-certificate-gallery) {
		grid-template-columns: 1fr !important;
	}

	body.hz-design-v2 .hz-spec-tabs {
		gap: 7px;
	}

	body.hz-design-v2 .hz-spec-tab {
		flex: 1 1 calc(50% - 7px);
		padding-inline: 12px !important;
		font-size: 12px;
	}

	body.hz-design-v2 #huizhi-floating-contact .hz-contact__label {
		display: none !important;
	}

	body.hz-design-v2 #huizhi-floating-contact .hz-contact__panel {
		max-width: calc(100vw - 24px);
	}

	body.hz-design-v2 .huizhi-gf__inner,
	body.hz-design-v2 .huizhi-gf__bottom {
		width: calc(100% - 32px) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.hz-design-v2 *,
	body.hz-design-v2 *::before,
	body.hz-design-v2 *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}

@media (forced-colors: active) {
	body.hz-design-v2,
	body.hz-design-v2 #content,
	body.hz-design-v2 :is(.site-header, .ast-primary-header-bar, .main-header-bar, .entry-content section, .entry-content article, .huizhi-gf) {
		color: CanvasText !important;
		background: Canvas !important;
		background-image: none !important;
		box-shadow: none !important;
	}

	body.hz-design-v2 .entry-content :is(.hz-product-card, .hz-hpg__card, .hz-home-project, .hz-option, .hz-step, .hz-spec-card, .hzp-card, .hzg-card, .hzcs-case, .hz-mfg-card),
	body.hz-design-v2.page-id-34 #quote-form {
		border: 2px solid CanvasText !important;
	}
}

@media print {
	body.hz-design-v2 {
		color: #000 !important;
		background: #fff !important;
	}

	body.hz-design-v2 :is(#masthead, .site-header, .huizhi-gf, #huizhi-floating-contact, #ast-scroll-top, .hz-carousel__controls, .huizhi-mobile-contact-bar) {
		display: none !important;
	}

	body.hz-design-v2 #content,
	body.hz-design-v2 .entry-content,
	body.hz-design-v2 .entry-content :is(section, article, div) {
		color: #000 !important;
		background: #fff !important;
		background-image: none !important;
		box-shadow: none !important;
	}

	body.hz-design-v2 .entry-content :is(h1, h2, h3, h4, p, li, a) {
		color: #000 !important;
	}

	body.hz-design-v2 .entry-content :is(a, article, section, figure, img) {
		break-inside: avoid;
	}
}
