/* ── 自托管字体（去 Google Fonts，GDPR 合规）── */
@font-face {
	font-family: "Bodoni Moda";
	src: url("assets/fonts/bodoni-600.woff2") format("woff2");
	font-weight: 600; font-style: normal; font-display: swap;
}
@font-face {
	font-family: "Inter";
	src: url("assets/fonts/inter-400.woff2") format("woff2");
	font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
	font-family: "Inter";
	src: url("assets/fonts/inter-500.woff2") format("woff2");
	font-weight: 500; font-style: normal; font-display: swap;
}

/*
Theme Name: MZ Tailoring
Theme URI: https://mauriziozampieri.com
Author: AOX
Description: Quiet-luxury block theme for made-to-measure tailoring. Hairline grid, serif display type, editorial rhythm.
Version: 2.0.0
License: GNU General Public License v2 or later
Text Domain: mz-tailoring
*/

/* ─────────────────────────────────────────────
   1. 基础令牌（与 theme.json 对齐）
   ───────────────────────────────────────────── */
:root {
	--mz-ink: #141414;
	--mz-paper: #f7f5f1;
	--mz-stone: #8a8578;
	--mz-camel: #b08d57;
	--mz-line: #e3ded4;
	--mz-slot: #e8e4dc;
	--mz-wrap: 1200px;
	--mz-sec-y: clamp(72px, 12vh, 150px);
}

html { scroll-behavior: smooth; background: var(--mz-paper); }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}

body {
	margin: 0;
	background: var(--mz-paper);
	color: var(--mz-ink);
	font-family: var(--wp--preset--font-family--body);
	font-size: 17px;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
}

::selection { background: var(--mz-ink); color: var(--mz-paper); }
:focus-visible { outline: 1px solid var(--mz-ink); outline-offset: 3px; }

img { max-width: 100%; height: auto; display: block; }

/* ─────────────────────────────────────────────
   2. 通用排版件
   ───────────────────────────────────────────── */
.mz-wrap { max-width: var(--mz-wrap); margin-inline: auto; padding-inline: clamp(20px, 4vw, 48px); }

.mz-label {
	display: block;
	margin: 0 0 14px;
	font-family: var(--wp--preset--font-family--body);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--mz-stone);
}

.mz-sec { padding-block: var(--mz-sec-y); border-top: 1px solid var(--mz-line); }

.mz-lede { color: var(--mz-stone); margin: 0; max-width: 640px; }

.mz-h2 { margin: 0 0 20px; }
.mz-h3 { margin: 0 0 10px; }

/* 按钮：发丝边框，hover 反转 */
.wp-block-button__link,
.mz-btn {
	display: inline-block;
	border: 1px solid var(--mz-ink) !important;
	background: transparent !important;
	color: var(--mz-ink) !important;
	border-radius: 0 !important;
	padding: 14px 28px !important;
	font-family: var(--wp--preset--font-family--body);
	font-size: 11px !important;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .3s ease, color .3s ease;
}
.wp-block-button__link:hover,
.mz-btn:hover { background: var(--mz-ink) !important; color: var(--mz-paper) !important; }

/* ─────────────────────────────────────────────
   3. Header
   ───────────────────────────────────────────── */
.mz-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: transparent;
	border-bottom: 1px solid transparent;
	transition: background-color .35s ease, border-color .35s ease;
}
.mz-header.is-stuck {
	background: rgba(247, 245, 241, .94);
	backdrop-filter: saturate(120%) blur(6px);
	border-bottom-color: var(--mz-line);
}
.mz-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding-block: 20px;
}
.mz-header .wp-block-site-title { margin: 0; }
.mz-header .wp-block-site-title a { letter-spacing: 0.22em; text-transform: uppercase; font-size: 15px; }

.mz-nav { display: flex; align-items: center; gap: clamp(16px, 2.4vw, 34px); }
.mz-nav a {
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--mz-ink);
	text-decoration: none;
	transition: color .25s ease;
}
.mz-nav a:hover { color: var(--mz-camel); }
.mz-nav__cta {
	border: 1px solid var(--mz-ink);
	padding: 11px 20px;
	transition: background-color .3s ease, color .3s ease;
}
.mz-nav__cta:hover { background: var(--mz-ink); color: var(--mz-paper) !important; }

@media (max-width: 860px) {
	.mz-nav a:not(.mz-nav__cta) { display: none; }
}

/* ─────────────────────────────────────────────
   4. Hero —— 200vh 粘性舞台 + 4 帧交叉淡入
   ───────────────────────────────────────────── */
.mz-hero-scroll { position: relative; height: 200vh; }
.mz-hero-stage {
	position: sticky;
	top: 0;
	height: 100vh;
	display: flex;
	align-items: center;
	overflow: hidden;
	padding-inline: clamp(20px, 4vw, 48px);
}
.mz-hero-frame {
	position: relative;
	width: 100%;
	max-width: var(--mz-wrap);
	margin-inline: auto;
	aspect-ratio: 3 / 2;
	border: 1px solid var(--mz-line);
	overflow: hidden;
	background: var(--mz-slot);
}
.mz-hero-figure {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity .3s linear;
	will-change: opacity;
}
.mz-hero-figure:first-child { opacity: 1; }
.mz-hero-figure img { width: 100%; height: 100%; object-fit: cover; }

/* 只在文字侧做渐变遮罩，图本身保留 */
.mz-hero-frame::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(100deg, rgba(247,245,241,.94) 0%, rgba(247,245,241,.86) 38%, rgba(247,245,241,.25) 68%, rgba(247,245,241,0) 100%);
}

.mz-hero-copy {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	align-items: center;
}
.mz-hero-copy__inner { max-width: 640px; padding: clamp(24px, 4vw, 56px); }
.mz-hero-copy h1 { margin: 0 0 20px; }
.mz-hero-copy p { margin: 0 0 32px; color: var(--mz-stone); max-width: 46ch; }

@media (max-width: 767px) {
	.mz-hero-scroll { height: auto; }
	.mz-hero-stage { position: relative; height: auto; padding-block: 24px 0; }
	.mz-hero-frame { aspect-ratio: 4 / 5; }
	.mz-hero-figure:not(:first-child) { display: none; }
	.mz-hero-copy { position: relative; inset: auto; }
	.mz-hero-copy__inner { padding: 0; }
	.mz-hero-frame::after {
		background: linear-gradient(180deg, rgba(247,245,241,0) 45%, rgba(247,245,241,.92) 78%, rgba(247,245,241,.97) 100%);
	}
}

/* ─────────────────────────────────────────────
   5. Process / Fabrics —— 三栏卡片
   ───────────────────────────────────────────── */
.mz-grid-3 {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(24px, 3vw, 44px);
}
.mz-card {
	border: 1px solid var(--mz-line);
	padding: clamp(20px, 2vw, 28px);
	background: var(--mz-paper);
	display: flex;
	flex-direction: column;
}
.mz-card .mz-num {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 30px;
	color: var(--mz-stone);
	display: block;
	margin: 18px 0 8px;
}
.mz-card p { margin: 0; color: var(--mz-stone); font-size: 15px; }

/* Fabrics：移动端横向滑动 */
.mz-cards-scroll { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(24px, 3vw, 44px); }

@media (max-width: 860px) {
	.mz-grid-3 { grid-template-columns: 1fr; }
	.mz-cards-scroll {
		display: flex;
		gap: 16px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		padding-bottom: 18px;
		margin-inline: calc(-1 * clamp(20px, 4vw, 48px));
		padding-inline: clamp(20px, 4vw, 48px);
	}
	.mz-cards-scroll > * { flex: 0 0 82%; scroll-snap-align: center; }
}

/* ─────────────────────────────────────────────
   6. Work —— 作品网格
   ───────────────────────────────────────────── */
.mz-work-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(24px, 3vw, 40px);
}
.mz-work-item { margin: 0; }
.mz-work-item .mz-slot { border: 1px solid var(--mz-line); overflow: hidden; }
.mz-work-item img { transition: transform .55s cubic-bezier(.16,1,.3,1); }
.mz-work-item:hover img { transform: scale(1.03); }
.mz-work-item figcaption {
	margin-top: 14px;
	font-size: 13px;
	color: var(--mz-stone);
	transition: color .3s ease;
}
.mz-work-item:hover figcaption { color: var(--mz-ink); }
.mz-work-item:hover figcaption span { border-bottom: 1px solid var(--mz-ink); }

@media (max-width: 1000px) { .mz-work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .mz-work-grid { grid-template-columns: 1fr; } }

/* ─────────────────────────────────────────────
   7. 图片占位 / 图片槽
   ───────────────────────────────────────────── */
.mz-slot {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	background: var(--mz-slot);
	overflow: hidden;
}
.mz-slot--32 { aspect-ratio: 3 / 2; }
.mz-slot--11 { aspect-ratio: 1 / 1; }
.mz-slot--34 { aspect-ratio: 3 / 4; }
.mz-slot img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mz-slot__tag {
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--mz-stone);
	text-align: center;
	padding: 0 12px;
}
.mz-slot img + .mz-slot__tag { display: none; }

/* ─────────────────────────────────────────────
   8. Atelier / Appointment —— 双栏
   ───────────────────────────────────────────── */
.mz-split {
	display: grid;
	grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	gap: clamp(32px, 4vw, 64px);
	align-items: start;
}
.mz-split--rev { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
.mz-prose p { margin: 0 0 18px; color: var(--mz-stone); }
.mz-meta {
	margin-top: 36px;
	padding-top: 22px;
	border-top: 1px solid var(--mz-line);
	font-size: 12px;
	color: var(--mz-stone);
}
.mz-meta p { margin: 0 0 4px; }

.mz-form-panel {
	border: 1px solid var(--mz-line);
	padding: clamp(24px, 3vw, 48px);
}

@media (max-width: 900px) {
	.mz-split, .mz-split--rev { grid-template-columns: 1fr; }
}

/* ─────────────────────────────────────────────
   9. Words —— 单条证言
   ───────────────────────────────────────────── */
.mz-words { text-align: center; }
.mz-words blockquote, .mz-words .wp-block-quote {
	max-width: 700px;
	margin: 0 auto 30px;
	border: none;
	padding: 0;
}
.mz-words blockquote p { margin: 0; }
.mz-words cite {
	display: block;
	font-family: var(--wp--preset--font-family--body);
	font-style: normal;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--mz-stone);
}

/* ─────────────────────────────────────────────
   10. 章节导航（底部胶囊）
   ───────────────────────────────────────────── */
.mz-chapters {
	position: fixed;
	left: 50%;
	bottom: 24px;
	transform: translateX(-50%);
	z-index: 40;
	max-width: calc(100vw - 32px);
}
.mz-chapters__inner {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px;
	background: var(--mz-paper);
	border: 1px solid var(--mz-line);
}
.mz-chapters a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 12px;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--mz-stone);
	text-decoration: none;
	opacity: .55;
	transition: opacity .25s ease, color .25s ease, background-color .25s ease;
	white-space: nowrap;
}
.mz-chapters a .mz-chapters__label { display: none; }
.mz-chapters a.is-active { opacity: 1; color: var(--mz-ink); background: rgba(232,228,220,.55); }
.mz-chapters a.is-active .mz-chapters__label { display: inline; }
.mz-chapters:hover a .mz-chapters__label { display: inline; }
.mz-chapters:hover a { opacity: 1; }

@media (max-width: 620px) {
	.mz-chapters { bottom: 14px; }
	.mz-chapters a { padding: 7px 9px; font-size: 10px; }
}

/* ─────────────────────────────────────────────
   11. Footer
   ───────────────────────────────────────────── */
.mz-footer {
	background: var(--mz-ink);
	color: var(--mz-paper);
	padding-block: clamp(56px, 8vh, 96px) 40px;
	margin-top: 0;
}
.mz-footer a { color: var(--mz-paper); text-decoration: none; transition: color .25s ease; }
.mz-footer a:hover { color: var(--mz-camel); }
.mz-footer__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(28px, 4vw, 56px);
	padding-bottom: clamp(40px, 6vh, 64px);
	border-bottom: 1px solid rgba(227, 222, 212, .2);
}
.mz-footer .mz-wordmark {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 20px;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin: 0 0 16px;
	color: var(--mz-paper);
}
.mz-footer__list { list-style: none; margin: 0; padding: 0; font-size: 14px; color: var(--mz-stone); }
.mz-footer__list li { margin-bottom: 8px; }
.mz-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	justify-content: space-between;
	padding-top: 28px;
	font-size: 12px;
	color: var(--mz-stone);
}
@media (max-width: 720px) { .mz-footer__grid { grid-template-columns: 1fr; } }

/* ─────────────────────────────────────────────
   12. 滚动淡入
   ───────────────────────────────────────────── */
@media (prefers-reduced-motion: no-preference) {
	.fade { opacity: 0; transform: translateY(12px); transition: opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1); }
	.fade.is-visible { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
	.fade { opacity: 1 !important; transform: none !important; }
	.mz-hero-figure { transition: none !important; }
}

/* ─────────────────────────────────────────────
   13. WPForms 融入主题（下划线输入）
   ───────────────────────────────────────────── */
.wpforms-container { font-family: var(--wp--preset--font-family--body); }
.wpforms-container .wpforms-field { padding: 0 0 20px; }
.wpforms-container input[type=text],
.wpforms-container input[type=email],
.wpforms-container input[type=tel],
.wpforms-container textarea,
.wpforms-container select {
	border: none !important;
	border-bottom: 1px solid var(--mz-line) !important;
	border-radius: 0 !important;
	background: transparent !important;
	padding: 12px 0 !important;
	font-size: 15px !important;
	box-shadow: none !important;
}
.wpforms-container input:focus,
.wpforms-container textarea:focus,
.wpforms-container select:focus { outline: none; border-bottom-color: var(--mz-camel) !important; }
.wpforms-container label { font-size: 11px !important; letter-spacing: .18em; text-transform: uppercase; color: var(--mz-stone); font-weight: 500 !important; }
.wpforms-container .wpforms-submit {
	background: var(--mz-ink) !important;
	color: var(--mz-paper) !important;
	border: 1px solid var(--mz-ink) !important;
	border-radius: 0 !important;
	font-size: 11px !important;
	letter-spacing: .22em !important;
	text-transform: uppercase;
	padding: 15px 30px !important;
	cursor: pointer;
	transition: background-color .3s ease, color .3s ease;
}
.wpforms-container .wpforms-submit:hover { background: var(--mz-paper) !important; color: var(--mz-ink) !important; }
.wpforms-container select { appearance: none; }
.wpforms-container .wpforms-error { font-size: 12px; color: #8a2b2b; }

/* 去掉区块主题默认给 group 的额外留白干扰 */
.wp-block-group.mz-flush { margin: 0; }

/* ─────────────────────────────────────────────
   14. 锚点偏移（sticky header）
   ───────────────────────────────────────────── */
section[id], .mz-hero-scroll { scroll-margin-top: 84px; }
#top { scroll-margin-top: 0; }

/* ─────────────────────────────────────────────
   15. 入场动画（首屏加载）
   ───────────────────────────────────────────── */
@media (prefers-reduced-motion: no-preference) {
	@keyframes mzFadeScale {
		from { opacity: 0; transform: scale(1.015); }
		to   { opacity: 1; transform: none; }
	}
	@keyframes mzRise {
		from { opacity: 0; transform: translateY(16px); }
		to   { opacity: 1; transform: none; }
	}
	.mz-hero-frame { animation: mzFadeScale 1.4s cubic-bezier(.16,1,.3,1) both; }
	.mz-hero-copy__inner > * { animation: mzRise .9s cubic-bezier(.16,1,.3,1) both; }
	.mz-hero-copy__inner > *:nth-child(1) { animation-delay: .18s; }
	.mz-hero-copy__inner > *:nth-child(2) { animation-delay: .34s; }
	.mz-hero-copy__inner > *:nth-child(3) { animation-delay: .50s; }
	.mz-hero-copy__inner > *:nth-child(4) { animation-delay: .66s; }
	/* 章节导航入场 */
	.mz-chapters { animation: mzRise 1s cubic-bezier(.16,1,.3,1) .9s both; }
}
@media (prefers-reduced-motion: reduce) {
	.mz-hero-frame, .mz-hero-copy__inner > *, .mz-chapters { animation: none !important; opacity: 1 !important; transform: none !important; }
}

/* ═════════════════════════════════════════════
   16. V3 封面版 —— 酒红高对比（浩哥 2026-10-30 定）
   ═════════════════════════════════════════════ */
:root {
	--mz-ink: #1a1a18;        /* 正文：与 #F3EFE7 对比 15.2:1 */
	--mz-paper: #f3efe7;      /* 底色 */
	--mz-stone: #6a655c;      /* 次要文字：对比 5.6:1 */
	--mz-accent: #4a1518;     /* 酒红：与底色对比 9.6:1 */
	--mz-line: #d8d2c6;
	--mz-slot: #e3ded3;
	--mz-display: "Bodoni Moda", "Cormorant Garamond", Georgia, serif;
}

/* 边注 / 图注 */
.mz-note {
	margin: 0 0 18px;
	font-family: var(--wp--preset--font-family--body);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--mz-stone);
}

/* 纸样网格底纹（设计签名） */
.mz-papergrid {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	opacity: .55;
	background-image:
		repeating-linear-gradient(0deg, rgba(26,26,24,.055) 0 1px, transparent 1px 26px),
		repeating-linear-gradient(90deg, rgba(26,26,24,.055) 0 1px, transparent 1px 26px);
}

/* ── ① HERO 全出血 ── */
.mz-hero3 { position: relative; height: 100vh; min-height: 620px; overflow: hidden; }
.mz-hero3__stage { position: relative; height: 100%; }
.mz-hero3__frames { position: absolute; inset: 0; }
.mz-hero3__figure { position: absolute; inset: 0; opacity: 0; will-change: opacity; }
.mz-hero3__figure:first-child { opacity: 1; }
.mz-hero3__figure .mz-slot { width: 100%; height: 100%; aspect-ratio: auto !important; background: var(--mz-slot); }
.mz-hero3__scrim {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(to top,
		rgba(243,239,231,.985) 0%,
		rgba(243,239,231,.96) 26%,
		rgba(243,239,231,.72) 46%,
		rgba(243,239,231,.22) 72%,
		rgba(243,239,231,0) 100%);
}
.mz-hero3__copy { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; }
.mz-hero3__copy > * { max-width: 1200px; margin-inline: auto; padding-inline: clamp(20px, 4vw, 48px); box-sizing: border-box; }
.mz-hero3__copy { padding-bottom: clamp(36px, 8vh, 110px); }
.mz-hero3__h1 {
	font-family: var(--mz-display) !important;
	font-size: clamp(2.9rem, 9vw, 8.2rem) !important;
	line-height: .94 !important;
	letter-spacing: -0.015em;
	font-weight: 600 !important;
	color: var(--mz-accent) !important;
	margin: 0 0 18px !important;
	max-width: 15ch;
}
.mz-hero3__sub {
	margin: 0 0 30px !important;
	font-size: clamp(1rem, 1.35vw, 1.18rem) !important;
	color: var(--mz-ink) !important;
	letter-spacing: .01em;
}

/* ── ② 安静段 ── */
.mz-quiet { padding-block: clamp(96px, 17vh, 210px); }
.mz-quiet__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.52fr);
	gap: clamp(36px, 6vw, 110px);
	align-items: center;
}
.mz-quiet__lede {
	margin: 0;
	max-width: 26ch;
	font-family: var(--mz-display);
	font-size: clamp(1.45rem, 2.5vw, 2.2rem);
	line-height: 1.42;
	color: var(--mz-ink);
}
.mz-quiet__fig .mz-slot--45 { aspect-ratio: 4 / 5; }

/* ── ③ 预约 ── */
.mz-reserve { padding-block: clamp(80px, 13vh, 170px); border-top: 1px solid var(--mz-line); }
.mz-reserve__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.78fr) minmax(0, 1fr);
	gap: clamp(36px, 5vw, 90px);
	align-items: start;
}
.mz-reserve__h2 {
	font-family: var(--mz-display) !important;
	font-size: clamp(2.1rem, 4.6vw, 3.6rem) !important;
	line-height: 1.02 !important;
	color: var(--mz-accent) !important;
	margin: 0 0 18px !important;
	font-weight: 600 !important;
}
.mz-reserve__intro p:not(.mz-note) { color: var(--mz-ink); max-width: 34ch; }

/* header 在浅色主题下 */
.mz-header .wp-block-site-title a { color: var(--mz-ink); }
.mz-header.is-stuck { background: rgba(243,239,231,.96); }

/* ── 移动端 ── */
@media (max-width: 900px) {
	.mz-quiet__grid, .mz-reserve__grid { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
	.mz-hero3 { height: 100svh; min-height: 560px; }
	.mz-hero3__h1 { font-size: clamp(2.4rem, 11.5vw, 3.5rem) !important; }
	.mz-hero3__copy { padding-bottom: 28px; }
	.mz-hero3__figure:not(:first-child) { display: none; }
	.mz-quiet { padding-block: 72px; }
	.mz-quiet__lede { font-size: 1.3rem; max-width: none; }
	.mz-quiet__fig { max-width: 78%; }
	.mz-papergrid { opacity: .35; }
}

/* ── WPForms：手机上姓名强制堆叠（实测 First/Last 并排各 139px） ── */
.wpforms-container .wpforms-field-row { display: block !important; }
.wpforms-container .wpforms-field-row-block { width: 100% !important; max-width: 100% !important; padding: 0 0 14px !important; }
.wpforms-container input[type=text],
.wpforms-container input[type=email],
.wpforms-container input[type=tel],
.wpforms-container select,
.wpforms-container textarea { width: 100% !important; }
.wpforms-container .wpforms-submit { width: 100% !important; }

/* 移动端：放大 H1、抬高文案（视觉模型反馈 2026-10-30） */
@media (max-width: 767px) {
	.mz-hero3 { height: 94svh; }
	.mz-hero3__h1 { font-size: clamp(2.7rem, 12.6vw, 4rem) !important; line-height: .96 !important; }
	.mz-hero3__copy { padding-bottom: 34px; }
	.mz-hero3__sub { font-size: 15px !important; margin-bottom: 22px !important; }
}

/* ═════════════════════════════════════════════
   17. 内页 + 汉堡菜单 + 点选路径
   ═════════════════════════════════════════════ */

/* 汉堡按钮（桌面隐藏） */
.mz-burger {
	display: none;
	width: 44px; height: 44px;
	border: 1px solid var(--mz-line);
	background: transparent;
	cursor: pointer;
	position: relative;
}
.mz-burger span {
	position: absolute; left: 12px; right: 12px; height: 1px;
	background: var(--mz-ink); transition: transform .3s ease, opacity .3s ease;
}
.mz-burger span:first-child { top: 20px; }
.mz-burger span:last-child { top: 27px; }
.mz-burger[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
.mz-burger[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }

/* 全屏菜单 */
.mz-menu {
	position: fixed; inset: 0; z-index: 60;
	background: var(--mz-paper);
	display: flex; flex-direction: column; justify-content: center;
	gap: 4px;
	padding: 80px clamp(20px, 6vw, 56px) 48px;
}
.mz-menu[hidden] { display: none; }
.mz-menu a {
	display: flex; align-items: baseline; gap: 16px;
	padding: 14px 0;
	border-bottom: 1px solid var(--mz-line);
	font-family: var(--mz-display);
	font-size: clamp(1.6rem, 6vw, 2.6rem);
	line-height: 1.1;
	color: var(--mz-ink);
	text-decoration: none;
}
.mz-menu__num { font-family: var(--wp--preset--font-family--body); font-size: 11px; letter-spacing: .22em; color: var(--mz-stone); }
.mz-menu__cta { color: var(--mz-accent); }
body.mz-menu-open { overflow: hidden; }

@media (max-width: 860px) {
	.mz-nav { display: none; }
	.mz-burger { display: block; }
}
@media (min-width: 861px) {
	.mz-menu { display: none; }
}

/* 当前页高亮 */
.mz-nav a.is-current { color: var(--mz-accent); border-bottom: 1px solid var(--mz-accent); padding-bottom: 3px; }

/* ── 内页通用 ── */
.mz-page { padding-bottom: clamp(64px, 10vh, 120px); }
.mz-pagehead { padding-block: clamp(56px, 9vh, 120px) clamp(32px, 5vh, 64px); }
.mz-pagehead__h1 {
	font-family: var(--mz-display) !important;
	font-size: clamp(2.4rem, 6vw, 5rem) !important;
	line-height: .98 !important;
	color: var(--mz-accent) !important;
	font-weight: 600 !important;
	margin: 0 0 20px !important;
	max-width: 18ch;
}
.mz-pagehead__lede { margin: 0; max-width: 46ch; color: var(--mz-ink); font-size: clamp(1rem, 1.3vw, 1.15rem); }

.mz-work-grid--page { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: clamp(32px, 4vw, 64px); }
.mz-offset-1 { transform: translateY(clamp(16px, 3vw, 46px)); }
.mz-offset-2 { transform: translateY(clamp(-8px, -1.4vw, 0px)); }
@media (max-width: 1000px) { .mz-work-grid--page { grid-template-columns: repeat(2, minmax(0,1fr)); } .mz-offset-1, .mz-offset-2 { transform: none; } }
@media (max-width: 620px) { .mz-work-grid--page { grid-template-columns: 1fr; } }

.mz-steps { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: clamp(28px, 4vw, 64px); }
.mz-step__h { font-family: var(--mz-display) !important; font-size: clamp(1.5rem, 2.4vw, 2rem) !important; color: var(--mz-ink) !important; margin: 6px 0 10px !important; font-weight: 600 !important; }
.mz-step p:not(.mz-note) { margin: 0; color: var(--mz-ink); font-size: 15px; }
.mz-note--spaced { margin-top: clamp(64px, 9vw, 130px) !important; }
.mz-cloth { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: clamp(24px, 3vw, 48px); }
@media (max-width: 860px) { .mz-steps, .mz-cloth { grid-template-columns: 1fr; } }

.mz-atelier-wide { margin-bottom: clamp(36px, 5vw, 72px); }
.mz-split--text { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 80px); }
.mz-split--text .mz-prose p { color: var(--mz-ink); font-size: clamp(1rem, 1.2vw, 1.1rem); }
.mz-meta--page { border-top: 1px solid var(--mz-line); padding-top: 22px; font-size: 13px; color: var(--mz-stone); }
@media (max-width: 900px) { .mz-split--text { grid-template-columns: 1fr; } }

/* 页面底部「下一步」 */
.mz-next { margin-top: clamp(56px, 9vh, 120px); padding-top: 28px; border-top: 1px solid var(--mz-line); display: flex; flex-wrap: wrap; align-items: center; gap: 20px 32px; }
.mz-next .mz-note { margin: 0; }
.mz-next__link {
	font-family: var(--mz-display); font-size: clamp(1.4rem, 2.6vw, 2rem);
	color: var(--mz-accent); text-decoration: none;
	border-bottom: 1px solid transparent; transition: border-color .25s ease;
}
.mz-next__link:hover { border-bottom-color: var(--mz-accent); }

/* 内页双图带 */
.mz-two-up { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: clamp(24px, 4vw, 56px); margin-top: clamp(40px, 6vw, 80px); }
.mz-two-up .mz-work-item:nth-child(2) { transform: translateY(clamp(20px, 4vw, 64px)); }
@media (max-width: 760px) { .mz-two-up { grid-template-columns: 1fr; } .mz-two-up .mz-work-item:nth-child(2) { transform: none; } }
