/* Wang Yangming product story; follows the cases page's restrained editorial system. */
.p1-wym-page .p1-main { padding-bottom: 0; }
.p1-wym-page .p1-header-inner { min-height: 82px; }
.p1-wym-page .p1-desktop-nav a[aria-current="page"] { color: var(--p1-brand); }
.wym-breadcrumbs { padding: 25px 8px 22px; }
.wym-hero { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); min-height: 650px; background: #e9eeeb; }
.wym-hero-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(50px,6vw,90px); }
.wym-hero .p1-eyebrow { margin: 0 0 24px; font-size: 12px; letter-spacing: .13em; }
.wym-hero h1 { margin: 0; font-size: clamp(31px,2.9vw,38px); font-weight: 630; line-height: 1.28; letter-spacing: -.035em; white-space: nowrap; }
.wym-hero h1 em { color: var(--p1-brand); font-style: normal; }
.wym-hero-lead { max-width: 440px; margin: 26px 0 0; color: #3d5360; font-size: clamp(16px,1.6vw,19px); line-height: 1.9; }
.wym-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 34px; }
.wym-hero-actions .p1-button { white-space: nowrap; }
.wym-text-link { color: var(--p1-brand); font-weight: 650; text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 4px; }
.wym-text-link:hover { color: var(--p1-accent); }
.wym-hero-note { margin: 54px 0 0; color: #637884; font-size: 12px; letter-spacing: .07em; }
.wym-hero-image { position: relative; min-width: 0; margin: 0; background: #332924; }
.wym-hero-image img { display: block; width: 100%; height: 100%; max-height: 760px; object-fit: cover; object-position: center 53%; }
.wym-hero-image figcaption { position: absolute; right: 25px; bottom: 20px; color: #fff; font-size: 11px; letter-spacing: .17em; text-shadow: 0 1px 5px #000; }
.wym-section { padding: clamp(78px,9vw,118px) 8px; }
.wym-section-heading { max-width: 850px; margin-bottom: 46px; }
.wym-index { margin: 0 0 20px; color: var(--p1-brand); font-size: 12px; font-weight: 750; letter-spacing: .13em; }
.wym-section-heading h2,.wym-editorial h2,.wym-gift h2 { margin: 0 0 23px; font-size: clamp(31px,3.9vw,48px); font-weight: 630; line-height: 1.38; letter-spacing: -.03em; }
.wym-editorial h2 { font-size: clamp(30px,2.75vw,36px); white-space: nowrap; }
.wym-section-heading p:last-child,.wym-editorial-copy > p:not(.wym-index),.wym-gift-copy > p:not(.wym-index) { max-width: 750px; margin: 0; color: #4d616d; font-size: 16px; line-height: 1.9; }
.wym-mind-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 2px solid var(--p1-brand); }
.wym-mind-grid article { padding: 28px 35px 30px 0; border-bottom: 1px solid var(--p1-line); }
.wym-mind-grid article:nth-child(even) { padding-left: 35px; border-left: 1px solid var(--p1-line); }
.wym-mind-grid article:last-child { grid-column: 1 / -1; max-width: 800px; border-bottom: 0; }
.wym-mind-grid span { color: var(--p1-accent); font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.wym-mind-grid h3 { margin: 15px 0 10px; font-size: 22px; }
.wym-mind-grid p { margin: 0; color: var(--p1-muted); font-size: 15px; line-height: 1.85; }
.wym-comparison { border-top: 1px solid var(--p1-line); background: #f0f3f1; }
.wym-table-wrap { overflow-x: auto; border-top: 2px solid var(--p1-brand); }
.wym-comparison-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 15px; line-height: 1.75; }
.wym-comparison-table th,.wym-comparison-table td { padding: 19px 22px; border-bottom: 1px solid #cedbdc; vertical-align: top; }
.wym-comparison-table thead th { color: var(--p1-ink); background: #e2ebea; font-weight: 700; }
.wym-comparison-table thead th:first-child { width: 17%; }
.wym-comparison-table thead th:nth-child(2) { width: 32%; }
.wym-comparison-table tbody th { color: var(--p1-ink); font-weight: 700; white-space: nowrap; }
.wym-comparison-table tbody td:nth-child(2) { color: #647782; }
.wym-comparison-table tbody td:last-child { color: #214d5e; font-weight: 550; }
.wym-comparison-source { display: flex; align-items: center; gap: 22px; margin: 26px 0 0; }
.wym-comparison-source img { display: block; width: 76px; height: 108px; object-fit: cover; object-position: top; border: 1px solid var(--p1-line); }
.wym-comparison-source figcaption { color: var(--p1-muted); font-size: 13px; line-height: 1.8; }
.wym-comparison-source a { color: var(--p1-brand); font-weight: 650; }
.wym-comparison-note { margin: 22px 0 0; color: var(--p1-muted); font-size: 13px; line-height: 1.8; }
.wym-editorial { display: grid; grid-template-columns: minmax(0,1.03fr) minmax(0,.97fr); align-items: center; background: #f0f3f1; }
.wym-editorial figure { height: 650px; margin: 0; overflow: hidden; }
.wym-editorial img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 52%; }
.wym-editorial-copy { padding: clamp(42px,6vw,90px); }
.wym-editorial-copy .wym-text-link { display: inline-block; margin-top: 32px; }
.wym-moments { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(32px,5vw,76px); border-bottom: 1px solid var(--p1-line); }
.wym-moments .wym-section-heading { margin-bottom: 0; }
.wym-moments .wym-section-heading h2 { font-size: clamp(30px,3.2vw,42px); }
.wym-moments-image { min-width: 0; margin: 0; }
.wym-moments-image img { display: block; width: 100%; height: auto; }
.wym-moments-image figcaption,.wym-photo-grid figcaption,.wym-specs figure figcaption { padding-top: 12px; color: var(--p1-muted); font-size: 12px; letter-spacing: .04em; }
.wym-photo-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,2fr); gap: 18px; height: 760px; }
.wym-photo-grid figure { display: flex; flex-direction: column; min-width: 0; min-height: 0; margin: 0; }
.wym-photo-grid img { display: block; width: 100%; flex: 1 1 auto; min-height: 0; object-fit: cover; object-position: center; }
.wym-photo-grid figcaption { flex: 0 0 34px; padding-top: 10px; }
.wym-photo-stack { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: repeat(2,minmax(0,1fr)); gap: 18px; min-height: 0; }
.wym-photo-stack figure:last-child { grid-column: 1 / -1; }
.wym-gift { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; background: #ecf1ee; }
.wym-gift-copy { padding: clamp(55px,6vw,90px); }
.wym-gift-copy .wym-small { margin-top: 24px !important; font-size: 12px !important; }
.wym-gift figure { height: 600px; margin: 0; }
.wym-gift img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 65%; }
.wym-specs-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.62fr); align-items: stretch; gap: clamp(35px,7vw,90px); }
.wym-spec-list { display: flex; flex-direction: column; margin: 0; border-top: 2px solid var(--p1-brand); }
.wym-spec-list div { display: grid; flex: 1 1 0; align-items: center; grid-template-columns: 110px 1fr; gap: 20px; padding: 14px 0; border-bottom: 1px solid var(--p1-line); font-size: 15px; line-height: 1.7; }
.wym-spec-list dt { color: var(--p1-ink); font-weight: 700; }
.wym-spec-list dd { margin: 0; color: var(--p1-muted); }
.wym-specs figure { display: flex; flex-direction: column; max-width: 360px; margin: 0; }
.wym-specs figure img { display: block; width: 100%; height: 420px; object-fit: cover; object-position: top; border: 1px solid var(--p1-line); }
.wym-specs figure a { display: inline-block; margin-top: auto; padding-top: 9px; color: var(--p1-brand); font-size: 13px; font-weight: 650; }
.p1-wym-page .wym-cta { position: relative; isolation: isolate; margin: 0; padding: 75px 8px; border-radius: 0; }
.p1-wym-page .wym-cta::before { position: absolute; z-index: -1; top: 0; bottom: 0; right: calc(50% - 50vw); left: calc(50% - 50vw); background: var(--p1-brand); content: ""; }
.wym-cta-kicker { margin: 0 0 12px !important; color: #cadde4; font-size: 12px !important; letter-spacing: .12em; }
.wym-cta h2 { font-size: clamp(30px,3.2vw,42px); }
@media (max-width: 900px) { .wym-hero { min-height: 560px; } .wym-hero-copy { padding: 48px 35px; } .wym-editorial figure { height: 540px; } .wym-gift figure { height: 510px; } }
@media (max-width: 700px) { .p1-wym-page .p1-header-inner { min-height: 64px; } .wym-breadcrumbs { padding: 19px 2px; font-size: 12px; } .wym-hero,.wym-editorial,.wym-gift { grid-template-columns: 1fr; } .wym-hero-copy { padding: 55px 28px 48px; } .wym-hero h1 { font-size: clamp(24px,7vw,34px); } .wym-hero-note { margin-top: 35px; } .wym-hero-image { height: min(100vw,550px); } .wym-hero-image img { object-position: center 42%; } .wym-section { padding: 76px 2px; } .wym-mind-grid { grid-template-columns: 1fr; } .wym-mind-grid article,.wym-mind-grid article:nth-child(even) { grid-column: auto; padding: 23px 0; border-left: 0; border-bottom: 1px solid var(--p1-line); } .wym-mind-grid h3 { margin-top: 10px; } .wym-comparison-table { min-width: 650px; font-size: 14px; } .wym-comparison-table th,.wym-comparison-table td { padding: 16px; } .wym-editorial figure { height: min(110vw,570px); } .wym-editorial-copy,.wym-gift-copy { padding: 68px 28px; } .wym-photo-grid { grid-template-columns: 1fr; height: auto; gap: 22px; } .wym-photo-feature { height: min(115vw,570px); } .wym-photo-stack { gap: 22px 12px; } .wym-photo-stack figure { height: 280px; } .wym-photo-stack figure:last-child { height: 360px; } .wym-gift figure { height: min(115vw,570px); } .wym-specs-layout { grid-template-columns: 1fr; } .wym-spec-list div { flex: none; min-height: 70px; } .wym-spec-list div { grid-template-columns: 80px 1fr; gap: 12px; } .p1-wym-page .wym-cta { padding: 70px 2px; } }
@media (max-width: 700px) { .wym-editorial h2 { font-size: clamp(24px,6.8vw,32px); } }
@media (max-width: 700px) { .wym-moments { grid-template-columns: 1fr; gap: 34px; } }
.p1-zsf-page .zsf-split { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; background: #ecf1ee; }
.p1-zsf-page .zsf-intro-split { margin-top: 56px; }
.p1-zsf-page .wym-details > .zsf-split { margin-bottom: 42px; }
.p1-zsf-page .zsf-split-copy { padding: clamp(36px,5vw,76px); }
.p1-zsf-page .zsf-split-copy h2,.p1-zsf-page .zsf-split-copy h3 { margin: 0 0 24px; font-size: clamp(30px,3.5vw,44px); font-weight: 630; line-height: 1.4; letter-spacing: -.03em; }
.p1-zsf-page .zsf-split-copy p:not(.wym-index) { max-width: 510px; margin: 0 0 18px; color: #4d616d; font-size: 16px; line-height: 1.9; }
.p1-zsf-page .zsf-split-copy p:last-child { margin-bottom: 0; }
.p1-zsf-page .zsf-split-image { min-width: 0; margin: 0; }
.p1-zsf-page .zsf-split-image img { display: block; width: 100%; height: auto; }
.p1-zsf-page .zsf-split-image figcaption { padding: 12px 16px 16px; color: var(--p1-muted); font-size: 12px; letter-spacing: .04em; }
.p1-zsf-page .comparison-source { margin-top: 38px; }
.p1-zsf-page .comparison-source .zsf-split-image { align-self: stretch; display: flex; flex-direction: column; justify-content: center; }
.p1-zsf-page .comparison-source .zsf-split-image img { max-height: 700px; object-fit: contain; }
.p1-zsf-page .wym-moments { display: block; }
@media (max-width: 700px) { .p1-zsf-page .zsf-split { grid-template-columns: 1fr; } .p1-zsf-page .zsf-split-copy { padding: 44px 28px; } .p1-zsf-page .zsf-split-copy h2,.p1-zsf-page .zsf-split-copy h3 { font-size: clamp(26px,7vw,34px); } }

/* Xuyun follows the same product story with paired images in source order. */
.p1-xy-page .wym-hero-image { display: flex; align-items: center; justify-content: center; background: #261e1a; }
.p1-xy-page .wym-hero-image img { height: 100%; object-fit: contain; }
.p1-xy-page .wym-hero-image figcaption { bottom: 10px; }
.p1-xy-page .wym-mind-grid article:last-child { grid-column: auto; max-width: none; border-bottom: 0; }
.p1-xy-page .xy-comparison-split { margin-top: 38px; background: #e9eeeb; }
.p1-xy-page .xy-comparison-split .zsf-split-copy .wym-text-link { display: inline-block; margin-top: 16px; }
.p1-xy-page .xy-comparison-split img { max-height: 660px; object-fit: contain; background: #231916; }
.p1-xy-page .wym-moments { display: block; }
.p1-xy-page .xy-photo-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin: 0 0 34px; }
.p1-xy-page .xy-photo-pair figure { min-width: 0; margin: 0; }
.p1-xy-page .xy-photo-pair img { display: block; width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; object-position: center; }
.p1-xy-page .xy-photo-pair figcaption { padding: 12px 4px 0; color: var(--p1-muted); font-size: 12px; letter-spacing: .04em; }
.p1-xy-page .xy-portrait-split { margin-top: 52px; }
.p1-xy-page .wym-gift figure { display: flex; align-items: center; justify-content: center; background: #332d2a; }
.p1-xy-page .wym-gift img { object-fit: contain; object-position: center; }
@media (max-width: 700px) {
  .p1-xy-page .wym-hero-image { height: min(135vw,620px); }
  .p1-xy-page .xy-photo-pair { gap: 10px; margin-bottom: 24px; }
  .p1-xy-page .xy-photo-pair figcaption { font-size: 11px; }
}

/* Keep the complete, text-heavy Confucius specification graphic visible. */
.p1-kz-page .wym-specs figure img { height: 560px; object-fit: contain; background: #fff; }
