:root {
  --muzhisen-primary: #674930;
  --muzhisen-secondary: #8e8874;
  --muzhisen-accent: #c4b8a6;
  --muzhisen-bg: #f8f5f0;
  --muzhisen-text: #3d2c1f;
  --muzhisen-white: #fff;
  --muzhisen-muted: #756b61;
  --muzhisen-border: rgb(142 136 116 / 34%);
  --muzhisen-paper: #f0e9df;
  --muzhisen-dark: #4b3525;
  --muzhisen-display: "Noto Serif TC", "Songti TC", "Times New Roman", serif;
  --muzhisen-body: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", system-ui, sans-serif;
}

body {
  color: var(--muzhisen-text);
  font-family: var(--muzhisen-body);
}

.site-header-row-container-inner {
  border-bottom: 1px solid transparent;
  background: var(--muzhisen-bg);
  transition: background-color .35s ease, border-color .35s ease;
}

.transparent-header .site-main-header-wrap .site-header-row-container-inner {
  background: transparent;
}

.muzhisen-header-solid .site-main-header-wrap .site-header-row-container-inner {
  border-bottom-color: var(--muzhisen-border);
  background: var(--muzhisen-bg);
}

#masthead .custom-logo {
  width: auto;
  max-height: 58px;
}

.site-footer-wrap {
  background: var(--muzhisen-dark);
  color: var(--muzhisen-white);
}

.site-footer-wrap a,
.site-footer-wrap .site-info-inner {
  color: var(--muzhisen-white);
}

.wp-element-button,
.button,
button[type="submit"],
input[type="submit"] {
  border-color: var(--muzhisen-primary);
  background: var(--muzhisen-primary);
}

.page-id-25 .site-footer-wrap,
.home .muzhisen-home ~ .site-footer-wrap {
  display: none;
}

.muzhisen-home {
  width: 100%;
  max-width: none;
  overflow: clip;
  background: var(--muzhisen-bg);
  color: var(--muzhisen-text);
  font-family: var(--muzhisen-body);
  line-height: 1.75;
}

.muzhisen-home *,
.muzhisen-home *::before,
.muzhisen-home *::after {
  box-sizing: border-box;
}

.muzhisen-home h1,
.muzhisen-home h2,
.muzhisen-home h3 {
  margin: 0;
  color: var(--muzhisen-text);
  font-family: var(--muzhisen-display);
  font-weight: 500;
  text-wrap: balance;
}

.muzhisen-home h1 {
  font-size: clamp(2.75rem, 6vw, 4.4rem);
  line-height: 1.12;
  letter-spacing: .08em;
}

.muzhisen-home h2 {
  font-size: clamp(2.15rem, 4.5vw, 3.4rem);
  line-height: 1.2;
  letter-spacing: .04em;
}

.muzhisen-home h3 {
  font-size: clamp(1.65rem, 3vw, 2.35rem);
  line-height: 1.28;
  letter-spacing: .04em;
}

.muzhisen-home p,
.muzhisen-home figure {
  margin-top: 0;
  margin-bottom: 0;
}

.muzhisen-home img {
  display: block;
  width: 100%;
}

.muzhisen-home section {
  position: relative;
  padding: clamp(5rem, 10vw, 8.25rem) max(1.25rem, calc((100vw - 1180px) / 2));
}

.muzhisen-eyebrow,
.muzhisen-meta,
.muzhisen-chapter-label {
  color: var(--muzhisen-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: .72rem;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.muzhisen-eyebrow {
  margin-bottom: 1rem !important;
}

.muzhisen-lead {
  max-width: 38rem;
  margin-top: 1rem !important;
  color: var(--muzhisen-muted);
  font-size: 1.08rem;
}

.muzhisen-home .wp-block-button__link {
  min-height: 3rem;
  padding: .78rem 1.5rem;
  border: 1px solid var(--muzhisen-primary);
  border-radius: .5rem;
  background: var(--muzhisen-primary);
  color: var(--muzhisen-white);
  font-weight: 600;
  text-decoration: none;
}

.muzhisen-home .is-style-outline .wp-block-button__link {
  background: transparent;
  color: var(--muzhisen-primary);
}

.muzhisen-home .wp-block-button__link:hover {
  background: var(--muzhisen-text);
  border-color: var(--muzhisen-text);
  color: var(--muzhisen-white);
}

.muzhisen-text-link a {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  margin-top: 1.25rem;
  border-bottom: 1px solid var(--muzhisen-border);
  color: var(--muzhisen-text);
  font-weight: 600;
  text-decoration: none;
}

.muzhisen-hero {
  min-height: calc(100svh - 5rem);
  padding-top: clamp(2rem, 5vw, 4rem) !important;
  padding-bottom: clamp(4.5rem, 8vw, 7rem) !important;
}

.muzhisen-hero__grid {
  min-height: inherit;
  gap: clamp(2rem, 5vw, 4rem);
}

.muzhisen-hero__image {
  overflow: hidden;
  border-radius: 1.5rem;
  background: var(--muzhisen-paper);
}

.muzhisen-hero__image img {
  aspect-ratio: 3 / 4;
  object-fit: cover;
}

.muzhisen-hero__copy .wp-block-buttons {
  margin-top: 1.75rem;
}

.muzhisen-scroll-cue {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin-top: 2rem !important;
  color: var(--muzhisen-muted);
  font-size: .78rem;
  letter-spacing: .08em;
}

.muzhisen-scroll-cue::before {
  width: 2.4rem;
  height: 1px;
  background: currentColor;
  content: "";
}

.muzhisen-story {
  --story-progress: 0;
  --sprout-opacity: 0;
  background: rgb(255 255 255 / 36%);
}

.muzhisen-story__intro {
  max-width: 46rem;
  margin: 0 0 clamp(4.5rem, 9vw, 7.5rem) 3rem;
}

.muzhisen-story-rail {
  position: absolute;
  top: 18rem;
  bottom: 5rem;
  left: max(1.6rem, calc((100vw - 1180px) / 2 + 1rem));
  width: 1.4rem;
  pointer-events: none;
}

.muzhisen-story-track,
.muzhisen-story-progress {
  position: absolute;
  top: 0;
  left: .65rem;
  width: 1px;
  height: calc(100% - 2.6rem);
  transform-origin: top;
}

.muzhisen-story-track { background: var(--muzhisen-border); }
.muzhisen-story-progress { background: var(--muzhisen-primary); }
.motion-ready .muzhisen-story-progress { transform: scaleY(var(--story-progress)); }

.muzhisen-story-leaf {
  position: absolute;
  left: .45rem;
  width: .6rem;
  height: 1.05rem;
  border: 1px solid var(--muzhisen-primary);
  border-radius: 100% 0;
  background: var(--muzhisen-bg);
  transform: rotate(38deg);
  transition: opacity .6s ease, transform .8s ease;
}

.motion-ready .muzhisen-story-leaf { opacity: 0; transform: rotate(38deg) scale(.3); }
.motion-ready .muzhisen-story-leaf.is-grown { opacity: 1; transform: rotate(38deg) scale(1); }
.muzhisen-story-leaf:nth-of-type(even) { left: -.1rem; border-radius: 0 100%; transform: rotate(-38deg); }
.motion-ready .muzhisen-story-leaf:nth-of-type(even) { transform: rotate(-38deg) scale(.3); }
.motion-ready .muzhisen-story-leaf:nth-of-type(even).is-grown { transform: rotate(-38deg) scale(1); }
.leaf-1 { top: 17%; }
.leaf-2 { top: 41%; }
.leaf-3 { top: 65%; }
.leaf-4 { top: 87%; }

.muzhisen-story-sprout {
  position: absolute;
  bottom: 0;
  left: .15rem;
  width: 1.15rem;
  color: var(--muzhisen-primary);
}

.motion-ready .muzhisen-story-sprout { opacity: var(--sprout-opacity); transition: opacity .8s ease; }

.muzhisen-chapter {
  position: relative;
  gap: clamp(1.6rem, 4vw, 3.25rem);
  max-width: 70rem;
  margin: 0 auto clamp(6rem, 12vw, 10rem) 3rem;
}

.muzhisen-chapter--compact {
  max-width: 52rem;
}

.muzhisen-chapter--compact:nth-of-type(even) {
  margin-right: 3rem;
  margin-left: auto;
}

.muzhisen-chapter__media {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: .9rem;
  background: var(--muzhisen-paper);
}

.muzhisen-chapter__media img {
  position: relative;
  z-index: 1;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  transform: translate3d(0, var(--depth-product, 0), 0) scale(1.08);
}

.depth-scene::before,
.depth-scene::after {
  position: absolute;
  z-index: 2;
  inset: -10%;
  pointer-events: none;
  content: "";
}

.depth-scene::before {
  background: radial-gradient(ellipse at 18% 28%, rgb(61 44 31 / 12%), transparent 46%);
  mix-blend-mode: multiply;
  transform: translate3d(0, var(--depth-bg, 0), 0);
}

.depth-scene::after {
  z-index: 3;
  inset: -8% -16%;
  background: linear-gradient(112deg, transparent 36%, rgb(255 255 255 / 18%) 52%, transparent 68%);
  transform: translate3d(0, var(--depth-fg, 0), 0) rotate(-3deg);
}

.muzhisen-chapter-label {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin-bottom: 1.1rem !important;
}

.muzhisen-chapter-label::after {
  width: 2.1rem;
  height: 1px;
  background: var(--muzhisen-border);
  content: "";
}

.muzhisen-chapter-facts {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem 1.1rem;
  margin-top: 1.35rem !important;
  padding-top: 1rem;
  border-top: 1px solid var(--muzhisen-border);
  color: var(--muzhisen-muted);
  font-size: .84rem;
}

.muzhisen-choice { background: var(--muzhisen-paper); }
.muzhisen-choice__grid { margin-top: 2.5rem; border-top: 1px solid var(--muzhisen-text); }
.muzhisen-choice-row {
  min-height: 4.8rem;
  padding: 1rem 0;
  border-bottom: 1px solid var(--muzhisen-border);
}

.muzhisen-editorial { gap: clamp(2rem, 5vw, 4rem); }
.muzhisen-brand-world img { aspect-ratio: 4 / 3; border-radius: .9rem; object-fit: cover; }

.muzhisen-ritual {
  background: var(--muzhisen-dark);
  color: var(--muzhisen-white);
}

.muzhisen-ritual h2 { color: var(--muzhisen-white); }
.muzhisen-ritual .muzhisen-eyebrow,
.muzhisen-ritual .muzhisen-lead { color: rgb(255 255 255 / 72%); }
.muzhisen-ritual-list { margin-top: 2.2rem; padding-left: 0; list-style: none; }
.muzhisen-ritual-list li { padding: 1.15rem 0; border-top: 1px solid rgb(255 255 255 / 22%); }

.muzhisen-commerce-gate {
  background: var(--muzhisen-white);
  text-align: center;
}

.muzhisen-commerce-gate .muzhisen-lead { margin-right: auto; margin-left: auto; }
.muzhisen-commerce-gate .wp-block-buttons { justify-content: center; margin-top: 1.8rem; }

.muzhisen-member__grid { gap: 1.75rem; }
.muzhisen-member-card {
  padding: clamp(1.7rem, 4vw, 2.5rem);
  border: 1px solid var(--muzhisen-border);
  border-radius: 1.5rem;
  background: rgb(255 255 255 / 68%);
}

.muzhisen-member-card .wp-block-buttons { margin-top: 1.5rem; }

.muzhisen-journal-list { margin-top: 2.2rem; border-top: 1px solid var(--muzhisen-text); }
.muzhisen-journal-row { min-height: 5.4rem; border-bottom: 1px solid var(--muzhisen-border); }
.muzhisen-journal-row a { display: flex; min-height: inherit; align-items: center; color: inherit; text-decoration: none; }

.muzhisen-assurance details { border-bottom: 1px solid var(--muzhisen-border); }
.muzhisen-assurance summary { min-height: 4rem; padding: 1rem 0; cursor: pointer; }
.muzhisen-assurance details p { padding-bottom: 1.25rem; color: var(--muzhisen-muted); }

.muzhisen-page-footer-preview {
  background: var(--muzhisen-dark);
  color: var(--muzhisen-white);
}

.muzhisen-page-footer-preview .wp-block-image { max-width: 13.4rem; }
.muzhisen-page-footer-preview a,
.muzhisen-page-footer-preview .muzhisen-footer-meta { color: var(--muzhisen-white); }
.muzhisen-footer-meta { margin-top: 2rem !important; padding-top: 1.2rem; border-top: 1px solid rgb(255 255 255 / 22%); }

.motion-ready .reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .7s ease, transform .7s ease;
}

.motion-ready .reveal.is-visible { opacity: 1; transform: translateY(0); }
.motion-ready .image-reveal { clip-path: inset(0 0 12% 0 round .9rem); transition: clip-path 1s cubic-bezier(.2,.7,.2,1); }
.motion-ready .image-reveal.is-visible { clip-path: inset(0 round .9rem); }
.motion-ready .story-page .muzhisen-chapter-label { opacity: 0; transform: translateY(8px); transition: opacity .42s ease, transform .42s ease; }
.motion-ready .story-page .muzhisen-chapter-label::after { transform: scaleX(0); transform-origin: left; transition: transform .52s .12s ease; }
.motion-ready .story-page .muzhisen-chapter__media { opacity: 0; clip-path: inset(0 0 18% 0 round .9rem); transition: opacity .8s .24s ease, clip-path 1s .24s cubic-bezier(.2,.7,.2,1); }
.motion-ready .story-page .muzhisen-chapter__copy > :not(.muzhisen-chapter-label) { opacity: 0; transform: translateY(10px); transition: opacity .62s .72s ease, transform .62s .72s ease; }
.motion-ready .story-page.is-story-visible .muzhisen-chapter-label,
.motion-ready .story-page.is-story-visible .muzhisen-chapter__copy > :not(.muzhisen-chapter-label) { opacity: 1; transform: translateY(0); }
.motion-ready .story-page.is-story-visible .muzhisen-chapter-label::after { transform: scaleX(1); }
.motion-ready .story-page.is-story-visible .muzhisen-chapter__media { opacity: 1; clip-path: inset(0 round .9rem); }
.motion-ready .story-page.is-past .muzhisen-chapter__media { opacity: .68; transition-delay: 0s; }

@media (max-width: 767px) {
  .muzhisen-home section { padding: 4.5rem 1.25rem; }
  .muzhisen-hero { padding-top: 0 !important; }
  .muzhisen-hero__grid { gap: 2.25rem; }
  .muzhisen-hero__image { margin-right: -1.25rem; margin-left: -1.25rem; border-radius: 0 0 1.5rem 1.5rem; }
  .muzhisen-story__intro { margin-left: 2.35rem; }
  .muzhisen-story-rail { top: 20rem; left: 1.25rem; }
  .muzhisen-chapter,
  .muzhisen-chapter--compact:nth-of-type(even) { margin-right: 0; margin-bottom: 6rem; margin-left: 2.35rem; }
  .muzhisen-chapter--compact { flex-wrap: nowrap !important; gap: 1.1rem; }
  .muzhisen-chapter--compact > .wp-block-column:first-child { flex-basis: 38% !important; }
  .muzhisen-chapter--compact .muzhisen-lead { font-size: .9rem; }
  .muzhisen-member__grid { gap: 1.25rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .muzhisen-home *,
  .muzhisen-home *::before,
  .muzhisen-home *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .muzhisen-story-progress { transform: scaleY(1) !important; }
  .muzhisen-home .reveal,
  .muzhisen-home .image-reveal,
  .muzhisen-home .story-page *,
  .muzhisen-home .depth-scene,
  .muzhisen-home .depth-scene img,
  .muzhisen-home .depth-scene::before,
  .muzhisen-home .depth-scene::after { opacity: 1 !important; transform: none !important; clip-path: none !important; }
}
