/* finesse · register=brand · reference=approved-weidui-warm-20261030
 * A=ivory+champagne · B=serif-editorial · C=seven-section-photo-story
 * D=CSS+WAAPI · E=paper+linen · SOUL=7 SPECTACLE=5 DENSITY=6
 * Fidelity repair: preserve the approved reference instead of rotating styles.
 */

/* Page tokens and scope keep the courtyard/homepage styles independent. */
body.weidui-page {
  --wd-paper: #fcf7ee;
  --wd-surface: #f6ecdc;
  --wd-ink: #302319;
  --wd-muted: #756657;
  --wd-gold: #896237;
  --wd-line: rgba(126, 91, 48, .17);
  --wd-display: 'Noto Serif SC', 'Source Han Serif SC', 'Songti SC', 'STSong', 'SimSun', serif;
  --wd-copy-size: clamp(15px, 1.34vw, 19px);
  background: var(--wd-paper);
  color: var(--wd-ink);
}
.weidui-page main { overflow: clip; }
.weidui-page :is(h1,h2,h3,p,figure) { margin: 0; }
.weidui-page :is(h1,h2,h3) { min-width: 0; overflow-wrap: anywhere; }
.weidui-page h2 { font: 400 clamp(34px, 4vw, 58px)/1.25 var(--wd-display); letter-spacing: .015em; }
.weidui-page h3 { font: 400 clamp(20px, 1.7vw, 25px)/1.45 var(--wd-display); }
.wd-container { width: min(1280px, 87.3%); margin-inline: auto; }
.weidui-page .wd-copy { color: var(--wd-muted); font-size: var(--wd-copy-size); line-height: 1.85; }
.weidui-page .wd-copy em { color: inherit; font-style: normal; }
.weidui-page :is(a,button,summary):focus-visible { outline: 2px solid var(--wd-gold); outline-offset: 5px; }
.wd-visually-hidden, .wd-skip:not(:focus) { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.wd-skip:focus { position: fixed; top: 12px; left: 12px; z-index: 100; padding: 12px 18px; background: var(--wd-paper); color: var(--wd-ink); }

/* Shared navigation destinations and pill geometry, adapted to the warm co-brand. */
body.weidui-page .site-header { position: relative; inset: auto; height: 76px; color: var(--wd-ink); background: #fcf8f0; border: 0; backdrop-filter: none; }
body.weidui-page .site-header .header-inner { width: min(1280px,87.3%); gap: 20px; }
body.weidui-page .site-header .brand { gap: 10px; }
body.weidui-page .site-header .brand > img { width: 40px; height: 40px; object-fit: contain; mix-blend-mode: multiply; }
body.weidui-page .site-header .wd-brand-name { font: 600 26px/1 var(--wd-display); }
body.weidui-page .site-header .wd-brand-times { font: 300 18px/1 var(--sans); color: #a28d77; margin-inline: 3px; }
body.weidui-page .site-header .brand-mark { font-size: 22px; letter-spacing: .08em; font-weight: 400; }
body.weidui-page .site-header .nav { gap: clamp(12px,1.5vw,24px); padding: 4px 5px 4px 18px; background: transparent; color: var(--wd-ink); backdrop-filter: none; border: 1px solid var(--wd-line); }
body.weidui-page .site-header .nav a { font-size: 13px; color: var(--wd-ink); padding: 10px 0; }
body.weidui-page .site-header .nav a:hover, body.weidui-page .site-header .nav a[aria-current=page] { color: var(--wd-gold); border-bottom-color: var(--wd-gold); }
body.weidui-page .site-header .nav .nav-visit { padding: 10px 19px!important; background: var(--wd-gold); color: #fffaf1; border: 1px solid transparent!important; }
body.weidui-page .site-header .menu-toggle { color: var(--wd-ink); border-color: var(--wd-line); }

/* Buttons stay real controls; there are no decorative arrow glyphs. */
.wd-button { appearance: none; display: inline-flex; align-items: center; justify-content: center; min-height: 48px; border: 1px solid transparent; border-radius: 999px; padding: 12px 31px; background: var(--wd-gold); color: #fffaf1; font: 500 clamp(14px,1.2vw,17px)/1.4 var(--sans); white-space: nowrap; cursor: pointer; transition: transform .25s, background-color .25s, box-shadow .25s; }
.wd-button:hover { background: #75502d; transform: translateY(-2px); box-shadow: 0 6px 20px rgba(95,65,30,.1); }
.wd-button:active { transform: translateY(0) scale(.98); }
.wd-button-ivory { color: #6d4c2d; background: #fff9eb; }
.wd-button-ivory:hover { background: #f4e4ca; }
.wd-text-button { appearance: none; border: 0; border-bottom: 1px solid rgba(137,98,55,.35); padding: 8px 0; min-height: 44px; background: transparent; color: var(--wd-gold); font: 400 13px/1.5 var(--sans); white-space: nowrap; cursor: pointer; text-align: left; }
.wd-text-button:hover { border-bottom-color: currentColor; color: #5d3d20; }
.wd-icon { display: block; width: 30px; height: 30px; flex: none; }

/* 1 — Width-relative hero height reproduces the reference's panoramic opening. */
.wd-hero { position: relative; isolation: isolate; display: flex; align-items: center; height: clamp(480px,45.65vw,720px); max-height: calc(100svh - 76px); min-height: 460px; color: #fff9ec; background: #3c2d1f; }
.wd-hero-media { position: absolute; inset: 0; z-index: -2; }
.wd-hero-photo { width: 100%; height: 100%; object-fit: cover; object-position: center 54%; }
.wd-hero::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,rgba(35,26,17,.36),rgba(35,26,17,.14) 39%,transparent 65%); }
.wd-hero-content { padding-block: 32px 58px; }
.wd-hero-brand { font: 400 clamp(15px,1.45vw,21px)/1.5 var(--wd-display); letter-spacing: .09em; margin-bottom: clamp(20px,2.1vw,32px)!important; }
.wd-hero h1 { font: 400 clamp(42px,5.25vw,77px)/1.28 var(--wd-display); letter-spacing: .015em; max-width: 55%; margin-bottom: 20px; text-shadow: 0 2px 30px rgba(40,26,13,.2); }
.wd-hero-description { max-width: 510px; width: 44%; font-size: clamp(15px,1.4vw,20px); line-height: 1.85; color: #fff4e5; margin-bottom: 28px!important; }
.wd-hero-caption { position: absolute; bottom: 17px; right: 6.35%; max-width: 87.3%; color: #f8e9d3; text-align: right; font-size: 10px; line-height: 1.6; letter-spacing: .02em; }

/* 2 — A single four-column composition, with the exact logo on crossing curves. */
.wd-journey { padding: clamp(35px,2.8vw,46px) 0; background: var(--wd-paper); }
.wd-journey-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(0,1fr) minmax(60px,.55fr) minmax(0,1fr); gap: 0 20px; align-items: start; }
.wd-journey-copy { padding-right: 26px; }
.wd-journey-copy h2 { font-size: clamp(33px,3.9vw,58px); margin: 8px 0 22px; }
.wd-journey-copy .wd-copy { max-width: 360px; }
.wd-tagline { margin-top: 8px!important; font-size: 14px; color: var(--wd-muted); }
.wd-journey-copy .wd-text-button { margin-top: 6px; }
.wd-journey-card { min-width: 0; }
.wd-journey-card > img { width: 100%; aspect-ratio: 1.3; height: auto; object-fit: cover; border-radius: 15px; }
.wd-journey-card:first-of-type > img { object-position: 50% 43%; }
.wd-journey-card:last-of-type > img { object-position: 75% 55%; }
.wd-journey-card figcaption { padding: 10px 5px 0; }
.wd-journey-card h3 { font-size: clamp(21px,1.9vw,28px); }
.wd-journey-card p { margin-top: 4px; font-size: clamp(13px,1.15vw,16px); line-height: 1.8; color: var(--wd-muted); }
.wd-bridge { position: relative; min-width: 0; height: clamp(175px,17vw,260px); align-self: start; }
.wd-bridge > svg { position: absolute; inset: 19% -66% 0; width: 232%; height: 70%; overflow: visible; stroke: #cfad7a; fill: none; stroke-width: 1; opacity: .72; pointer-events: none; }
.wd-bridge img { position: relative; top: 34%; margin-inline: auto; width: min(83%,100px); height: auto; object-fit: contain; mix-blend-mode: multiply; }

/* 3 — Four photo cards match the mockup; detail belongs beside this section. */
.wd-values { background: var(--wd-surface); padding: clamp(42px,4.1vw,65px) 0; }
.wd-values-grid { display: grid; grid-template-columns: minmax(0,.86fr) minmax(0,1.48fr); gap: clamp(26px,5vw,80px); align-items: center; }
.wd-values-copy h2 { margin-bottom: 20px; }
.wd-values-copy .wd-copy { font-size: clamp(15px,1.25vw,18px); margin-bottom: 25px; }
.wd-topics { min-width: 0; }
.wd-topics-intro { font: 400 clamp(17px,1.7vw,24px)/1.6 var(--wd-display); margin-bottom: 18px!important; }
.wd-topic-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; }
.wd-topic { min-width: 0; background: rgba(255,252,245,.72); border-radius: 13px; overflow: clip; }
.wd-topic > img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.wd-topic:hover > img { transform: scale(1.035); }
.wd-topic figcaption { padding: 14px 13px 17px; position: relative; z-index: 1; background: #fcf5e9; }
.wd-topic h3 { font-size: clamp(17px,1.5vw,22px); margin-bottom: 5px; }
.wd-topic p { font-size: clamp(12px,1.05vw,15px); line-height: 1.75; color: var(--wd-muted); }
.wd-dimensions-link { display: block; margin-top: 5px; font-size: 12px; }

/* 4 — Alpha artwork and overlapping columns integrate the AI portrait naturally. */
.wd-twin { position: relative; background: var(--wd-paper); overflow: clip; }
.wd-twin-grid { position: relative; isolation: isolate; min-height: clamp(470px,39vw,570px); display: grid; grid-template-columns: minmax(0,1.18fr) minmax(0,.65fr) minmax(0,.93fr); gap: 18px; align-items: center; padding-block: 45px; }
.wd-twin-copy { position: relative; grid-column: 1; z-index: 2; align-self: start; padding-top: 20px; }
.wd-twin-copy h2 { position: relative; width: 150%; font-size: clamp(33px,3.32vw,48px); white-space: nowrap; margin-bottom: 24px; }
.wd-twin-copy .wd-copy { max-width: 445px; font-size: clamp(15px,1.25vw,18px); margin-bottom: 29px; }
.wd-twin-art { position: absolute; z-index: -1; left: 25%; bottom: -4%; width: 53%; height: 104%; pointer-events: none; }
.wd-twin-art img { width: 100%; height: 100%; object-fit: contain; object-position: center bottom; mask-image: linear-gradient(0deg,transparent 0%,#302319 10%,#302319 100%); }
.wd-ai-grid { grid-column: 3; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; position: relative; z-index: 3; }
.wd-ai-card { padding: 18px 16px; min-width: 0; background: rgba(255,252,246,.85); border: 1px solid rgba(180,140,87,.08); border-radius: 14px; }
.wd-ai-card .wd-icon { color: #9c7449; border: 1px solid currentColor; border-radius: 50%; padding: 4px; margin-bottom: 10px; }
.wd-ai-card h3 { font-size: clamp(17px,1.4vw,20px); margin-bottom: 7px; }
.wd-ai-card p { font-size: 14px; line-height: 1.75; color: var(--wd-muted); }

/* 5 — Icon-led, open pillars are intentionally different from the photo cards. */
.wd-trust { background: #fff9ef; padding: clamp(38px,4.1vw,64px) 0; border-top: 1px solid rgba(126,91,48,.05); }
.wd-trust-grid { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.5fr); gap: 40px; align-items: center; }
.wd-trust h2 { font-size: clamp(38px,4.5vw,66px); margin-bottom: 18px; }
.wd-trust .wd-copy { font-size: clamp(15px,1.2vw,17px); max-width: 360px; }
.wd-trust .wd-trust-caption { font-size: 12px; margin-top: 14px; }
.wd-trust-pillars { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.wd-trust-item { padding: 4px 21px; min-width: 0; text-align: center; border-left: 1px solid var(--wd-line); }
.wd-trust-item:first-child { border: 0; }
.wd-trust-item .wd-icon { width: 43px; height: 43px; margin: 0 auto 19px; color: #4b3020; }
.wd-trust-item h3 { font-size: clamp(18px,1.5vw,22px); margin-bottom: 7px; }
.wd-trust-item p { font-size: clamp(12px,1.05vw,15px); color: var(--wd-muted); line-height: 1.85; }
.wd-credit { margin-top: 8px; font-size: 12px; color: var(--wd-gold); }
.wd-credit summary { cursor: pointer; padding-block: 12px; min-height: 44px; list-style-position: inside; }
.wd-credit[open] p { margin-top: 6px; font-size: 12px; }

/* 6 — The offline collage is one continuous large image with three photo tiles. */
.wd-offline { display: grid; grid-template-columns: minmax(0,2.33fr) minmax(0,1fr); min-height: 590px; height: clamp(590px,43.3vw,710px); background: #3c2c1d; color: #fff7e8; }
.wd-offline-main { position: relative; isolation: isolate; display: flex; align-items: center; min-width: 0; overflow: clip; }
.wd-offline-photo { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: 62% center; }
.wd-offline-main::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,rgba(38,27,17,.75),rgba(38,27,17,.35) 50%,rgba(38,27,17,.01)); }
.wd-offline-copy { padding: 55px 6.35vw; width: 100%; }
.wd-offline h2 { font-size: clamp(44px,4.8vw,70px); margin-bottom: 23px; }
.wd-offline .wd-copy { max-width: 550px; width: 96%; color: #fff4e4; font-size: clamp(16px,1.43vw,21px); }
.wd-first-meeting { margin: 16px 0 23px!important; font-size: 15px; color: #f5e7d2; }
.wd-text-light { color: #f7ebd7; border-color: rgba(255,246,226,.5); margin-left: 20px; }
.wd-text-light:hover { color: #fff8e7; }
.wd-scenes { display: grid; grid-template-rows: repeat(3,minmax(0,1fr)); min-width: 0; gap: 2px; padding-left: 2px; }
.wd-scene { position: relative; min-width: 0; min-height: 0; overflow: clip; }
.wd-scene > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.2,1); }
.wd-scene:hover > img { transform: scale(1.04); }
.wd-scene::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(30,23,16,.86),rgba(30,23,16,.18) 62%,transparent); }
.wd-scene figcaption { position: absolute; z-index: 1; bottom: 18px; left: 24px; right: 18px; }
.wd-scene h3 { font: 500 clamp(19px,1.75vw,25px)/1.5 var(--sans); }
.wd-scene p { font-size: clamp(12px,1.1vw,16px); line-height: 1.8; color: #fff4e5; }

/* 7 — The collaboration card balances the image, rather than trailing below it. */
.wd-training { background: #fbf3e6; padding: clamp(36px,3.2vw,50px) 0; }
.wd-training-grid { display: grid; grid-template-columns: minmax(0,.95fr) minmax(0,1.14fr) minmax(0,.78fr); gap: 26px; align-items: stretch; }
.wd-training-copy { align-self: center; padding-right: 10px; }
.wd-training h2 { font-size: clamp(34px,3.5vw,51px); margin-bottom: 21px; white-space: nowrap; }
.wd-training .wd-copy { font-size: clamp(15px,1.2vw,17px); margin-bottom: 27px; line-height: 1.9; }
.wd-training-photo { min-height: 345px; overflow: clip; border-radius: 13px; }
.wd-training-photo > img { width: 100%; height: 100%; object-fit: cover; object-position: 55% center; }
.wd-cooperation { min-width: 0; min-height: 345px; position: relative; isolation: isolate; padding: 34px 28px 120px; border-radius: 13px; background: #f3e7d5; overflow: clip; }
.wd-cooperation h3 { font-size: clamp(23px,2vw,29px); margin-bottom: 12px; }
.wd-cooperation p { font-size: clamp(13px,1.1vw,16px); line-height: 1.9; color: var(--wd-muted); margin-bottom: 20px; }
.wd-cooperation .wd-button { min-height: 44px; font-size: 14px; padding: 10px 24px; }
.wd-landscape { position: absolute; bottom: 8px; left: 0; width: 100%; height: auto; z-index: -1; color: #9c825c; }

/* The footer closes the seven-section story; original prices and participation
   information have contextual dialogs instead of a second, repeated long page. */
.wd-footer { background: var(--wd-paper); padding: 37px 0 24px; border-top: 1px solid rgba(126,91,48,.05); }
.wd-footer-top { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.35fr) auto; gap: 25px; align-items: center; }
.wd-brand-lockup { display: inline-flex; align-items: center; gap: 12px; font: 400 27px/1.4 var(--wd-display); white-space: nowrap; }
.wd-brand-lockup img { width: 51px; height: 51px; object-fit: contain; mix-blend-mode: multiply; }
.wd-brand-lockup i { font: 400 18px/1 var(--sans); color: #ac9680; font-style: normal; padding-inline: 6px; }
.wd-footer-brand p { font-size: 13px; color: var(--wd-muted); margin-top: 10px; }
.wd-footer-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px 20px; }
.wd-footer-links a { padding-block: 12px; font-size: 12px; color: var(--wd-muted); white-space: nowrap; }
.wd-footer-links a:hover { color: var(--wd-ink); }
.wd-footer-actions { display: flex; gap: 20px; }
.wd-footer-actions .wd-text-button { font-size: 12px; }
.wd-footer-bottom { border-top: 1px solid var(--wd-line); margin-top: 28px; padding-top: 17px; display: flex; justify-content: space-between; gap: 22px; }
.wd-footer-bottom p { color: var(--wd-muted); font-size: 10px; line-height: 1.85; }
.wd-footer-bottom p:last-child { text-align: right; max-width: 590px; }

/* Native dialog styles form a separate reading surface for the preserved copy. */
.wd-dialog { width: min(840px,calc(100% - 36px)); max-height: 86svh; border: 1px solid #d6c4a9; border-radius: 18px; background: var(--wd-paper); color: var(--wd-ink); padding: 0; box-shadow: 0 28px 90px rgba(36,25,12,.2); overscroll-behavior: contain; }
.wd-dialog::backdrop { background: rgba(37,27,16,.6); backdrop-filter: blur(6px); }
body:has(.wd-dialog[open]) { overflow-y: hidden; }
.wd-dialog-heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 22px 30px; border-bottom: 1px solid var(--wd-line); position: sticky; top: 0; z-index: 2; background: var(--wd-paper); }
.wd-dialog-heading h2 { font-size: clamp(23px,3vw,30px); }
.wd-close { flex: none; padding: 9px 14px; min-height: 44px; border: 1px solid var(--wd-line); border-radius: 999px; background: transparent; color: var(--wd-ink); cursor: pointer; }
.wd-source-copy { padding: 8px 30px 34px; }
.wd-source-copy :is(section,header) { padding-block: 24px; }
.wd-source-copy h1, .wd-source-copy h2 { font: 400 28px/1.5 var(--wd-display); margin-block: 8px 16px; }
.wd-source-copy h3 { font-size: 22px; margin-bottom: 8px; }
.wd-source-copy h2 .en, .wd-source-copy .kicker, .wd-source-copy .no, .wd-source-copy .eyebrow, .wd-source-copy header .en { display: block; font: 500 10px/1.5 var(--sans); color: var(--wd-gold); letter-spacing: .1em; margin-bottom: 10px; }
.wd-source-copy :is(.lead,.quote,p) { font: 400 15px/2 var(--sans); color: var(--wd-muted); margin-bottom: 15px; }
.wd-source-copy em { font-style: normal; color: var(--wd-ink); }
.wd-source-copy :is(.cards,.facts) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-block: 25px; }
.wd-source-copy :is(.card,.fact) { padding: 22px; background: #f6eddf; border: 1px solid var(--wd-line); border-radius: 12px; }
.wd-source-copy .fact b { display: block; margin-bottom: 7px; font-weight: 500; }
.wd-source-copy .fact span { color: var(--wd-muted); font-size: 14px; }
.wd-source-copy img { display: none; }
.wd-source-copy a { text-decoration: underline; text-underline-offset: 4px; color: var(--wd-gold); }
.wd-source-copy .text-link { display: inline-block; border-color: var(--wd-gold); }

@media (max-width:1100px) {
  body.weidui-page .site-header .header-inner { width: 92%; }
  body.weidui-page .site-header .nav { gap: 12px; }
  body.weidui-page .site-header .nav a { font-size: 12px; }
  body.weidui-page .site-header .brand-mark { font-size: 19px; }
  body.weidui-page .site-header .wd-brand-name { font-size: 22px; }
  body.weidui-page .site-header .brand { gap: 6px; }
  .wd-container { width: 90%; }
  .wd-values-grid { gap: 28px; }
  .wd-journey-grid { gap: 14px; }
  .wd-journey-copy { padding-right: 10px; }
  .wd-twin-grid { gap: 10px; }
  .wd-ai-card { padding: 17px 13px; }
  .wd-trust-item { padding-inline: 13px; }
  .wd-training-grid { gap: 18px; }
  .wd-cooperation { padding: 26px 20px 110px; }
  .wd-footer-top { grid-template-columns: minmax(0,1fr) minmax(0,1.2fr); }
  .wd-footer-actions { grid-column: 2; justify-content: center; }
}

/* Tablet navigation uses the same menu contract as all of the site's pages. */
@media (max-width:980px) {
  body.weidui-page .site-header { height: 72px; }
  body.weidui-page .site-header .menu-toggle { display: inline-flex; align-items: center; justify-content: center; }
  body.weidui-page .site-header .nav { display: none; position: absolute; top: 72px; left: 0; right: 0; padding: 16px 5% 24px; background: #fbf4e8; border: 0; border-bottom: 1px solid var(--wd-line); border-radius: 0; box-shadow: 0 20px 30px rgba(58,41,20,.1); }
  body.weidui-page .site-header .nav.open { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  body.weidui-page .site-header .nav a { padding: 12px 10px; min-height: 44px; border-bottom: 1px solid var(--wd-line)!important; }
  body.weidui-page .site-header .nav .nav-visit { margin-top: 12px; padding-inline: 16px!important; text-align: center; border-radius: 999px; }
  .wd-hero { max-height: calc(100svh - 72px); }
  .wd-hero h1 { max-width: 67%; }
  .wd-hero-description { width: 48%; }
  .wd-journey-grid { grid-template-columns: minmax(0,1.3fr) minmax(0,1fr) minmax(35px,.4fr) minmax(0,1fr); gap: 12px; }
  .wd-journey-copy h2 { font-size: 32px; }
  .wd-journey-copy .wd-copy { font-size: 14px; }
  .wd-bridge { height: 150px; }
  .wd-journey-card p { font-size: 12px; }
  .wd-values-copy h2 { font-size: 36px; }
  .wd-values-grid { grid-template-columns: minmax(0,.8fr) minmax(0,1.35fr); }
  .wd-topic-grid { gap: 8px; }
  .wd-topic figcaption { padding: 10px 8px; }
  .wd-topic h3 { font-size: 17px; }
  .wd-topics-intro { font-size: 17px; }
  .wd-twin-grid { grid-template-columns: minmax(0,1fr) minmax(0,.5fr) minmax(0,1fr); }
  .wd-twin-copy h2 { font-size: 32px; }
  .wd-ai-card p { font-size: 12px; line-height: 1.75; }
  .wd-trust-grid { gap: 20px; grid-template-columns: minmax(0,.7fr) minmax(0,1.6fr); }
  .wd-trust-item h3 { font-size: 18px; }
  .wd-trust h2 { font-size: 39px; }
  .wd-offline { height: 600px; }
  .wd-offline-copy { padding-inline: 5vw; }
  .wd-offline h2 { font-size: 48px; }
  .wd-text-light { margin-left: 0; display: block; width: fit-content; }
  .wd-scene figcaption { left: 15px; right: 12px; }
  .wd-scene p { font-size: 12px; }
  .wd-training-grid { grid-template-columns: minmax(0,1fr) minmax(0,1.2fr); }
  .wd-training-copy { padding-right: 15px; }
  .wd-training-photo { min-height: 310px; }
  .wd-cooperation { grid-column: 1/-1; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); min-height: 185px; padding: 24px; }
  .wd-cooperation h3, .wd-cooperation p, .wd-cooperation .wd-button { grid-column: 1; }
  .wd-cooperation .wd-button { width: fit-content; }
  .wd-landscape { left: auto; right: 0; width: 44%; max-height: 190px; }
}

/* A composed mobile reading order retains every photograph and all controls. */
@media (max-width:760px) {
  .weidui-page h2 { font-size: clamp(32px,8.5vw,42px); }
  .wd-container { width: calc(100% - 40px); }
  body.weidui-page .site-header .header-inner { width: calc(100% - 32px); }
  body.weidui-page .site-header .brand > img { width: 34px; height: 34px; }
  body.weidui-page .site-header .brand-mark { font-size: 19px; }
  body.weidui-page .site-header .wd-brand-name { font-size: 23px; }
  .wd-hero { height: 660px; max-height: calc(100svh - 72px); min-height: 490px; align-items: start; }
  .wd-hero-photo { height: 100%; object-position: center bottom; }
  .wd-hero::after { background: linear-gradient(180deg,rgba(35,24,14,.66),rgba(35,24,14,.4) 30%,rgba(35,24,14,.08) 55%,transparent 78%); }
  .wd-hero-content { padding-block: 28px 45px; }
  .wd-hero-brand { font-size: 13px; margin-bottom: 16px!important; }
  .wd-hero h1 { max-width: 100%; font-size: clamp(32px,8.6vw,43px); line-height: 1.3; letter-spacing: 0; margin-bottom: 15px; }
  .wd-hero-description { width: 100%; max-width: 340px; font-size: 13px; line-height: 1.85; margin-bottom: 18px!important; }
  .wd-hero .wd-button { min-height: 44px; padding: 11px 23px; font-size: 13px; }
  .wd-hero-caption { left: 20px; right: 20px; font-size: 8px; bottom: 12px; }
  .wd-journey { padding: 38px 0 40px; }
  .wd-journey-grid { grid-template-columns: minmax(0,1fr) 36px minmax(0,1fr); gap: 22px 9px; }
  .wd-journey-copy { grid-column: 1/-1; padding: 0; }
  .wd-journey-copy h2 { font-size: 35px; margin: 0 0 18px; }
  .wd-journey-copy .wd-copy { font-size: 15px; max-width: 100%; }
  .wd-journey-copy .wd-tagline { font-size: 13px; }
  .wd-journey-card > img { aspect-ratio: 1.15; border-radius: 10px; }
  .wd-journey-card figcaption { padding-inline: 0; }
  .wd-journey-card h3 { font-size: 21px; }
  .wd-journey-card p { font-size: 12px; line-height: 1.8; }
  .wd-bridge { height: 150px; }
  .wd-bridge img { width: 45px; max-width: none; left: -4px; top: 40%; }
  .wd-bridge > svg { width: 270%; inset-inline: -85%; height: 80%; }
  .wd-values { padding: 40px 0 35px; }
  .wd-values-grid { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .wd-values-copy h2 { font-size: 36px; margin-bottom: 16px; }
  .wd-values-copy .wd-copy { font-size: 15px; margin-bottom: 22px; }
  .wd-topics-intro { font-size: 18px; margin-bottom: 16px!important; }
  .wd-topic-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
  .wd-topic h3 { font-size: 20px; }
  .wd-topic figcaption { padding: 12px 13px 15px; }
  .wd-topic p { font-size: 12px; }
  .wd-twin-grid { padding-block: 42px 40px; min-height: 0; grid-template-columns: minmax(0,1fr); gap: 0; }
  .wd-twin-copy { grid-column: auto; order: 1; }
  .wd-twin-copy h2 { width: 100%; white-space: normal; font-size: clamp(29px,7.5vw,37px); margin-bottom: 16px; }
  .wd-twin-copy .wd-copy { max-width: 100%; font-size: 15px; margin-bottom: 22px; }
  .wd-twin-art { position: relative; left: auto; bottom: auto; width: calc(100% + 24px); margin-inline: -12px; height: 310px; z-index: 0; order: 2; }
  .wd-ai-grid { grid-column: auto; order: 3; gap: 12px; }
  .wd-ai-card { padding: 17px 14px; background: #fffaf2; }
  .wd-ai-card h3 { font-size: 19px; }
  .wd-ai-card p { font-size: 12px; }
  .wd-trust { padding: 38px 0 34px; }
  .wd-trust-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .wd-trust h2 { font-size: 39px; margin-bottom: 14px; }
  .wd-trust-pillars { grid-template-columns: minmax(0,1fr); }
  .wd-trust-item { display: grid; grid-template-columns: 43px minmax(0,1fr); gap: 0 19px; text-align: left; border: 0; border-bottom: 1px solid var(--wd-line); padding: 20px 0; }
  .wd-trust-item:first-child { border-bottom: 1px solid var(--wd-line); padding-top: 0; }
  .wd-trust-item:last-child { border-bottom: 0; padding-bottom: 0; }
  .wd-trust-item .wd-icon { grid-row: 1/5; margin: 2px 0 0; width: 38px; height: 38px; }
  .wd-trust-item :is(h3,p,details) { grid-column: 2; }
  .wd-trust-item h3 { font-size: 21px; }
  .wd-trust-item p { font-size: 13px; }
  .wd-credit { margin-top: 0; }
  .wd-offline { grid-template-columns: minmax(0,1fr); height: auto; min-height: 0; }
  .wd-offline-main { min-height: 540px; }
  .wd-offline-photo { object-position: 60% center; }
  .wd-offline-copy { padding: 45px 20px; }
  .wd-offline h2 { font-size: 45px; }
  .wd-offline .wd-copy { font-size: 16px; max-width: 330px; }
  .wd-first-meeting { font-size: 14px; }
  .wd-offline-copy .wd-text-light { margin-left: 16px; display: inline-block; }
  .wd-scenes { grid-template-rows: none; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 84%; overflow-x: auto; padding: 2px 0 7px; gap: 3px; scroll-snap-type: x mandatory; overscroll-behavior-inline: contain; scrollbar-width: thin; scrollbar-color: #b49a78 #46301e; }
  .wd-scene { height: 250px; scroll-snap-align: start; }
  .wd-scene figcaption { left: 20px; right: 20px; bottom: 19px; }
  .wd-scene h3 { font-size: 23px; }
  .wd-scene p { font-size: 13px; }
  .wd-training { padding: 40px 0; }
  .wd-training-grid { grid-template-columns: minmax(0,1fr); gap: 25px; }
  .wd-training-copy { padding-right: 0; }
  .wd-training h2 { font-size: 36px; margin-bottom: 16px; }
  .wd-training .wd-copy { font-size: 15px; margin-bottom: 21px; }
  .wd-training-photo { min-height: 0; height: 300px; }
  .wd-cooperation { grid-column: auto; display: block; min-height: 285px; padding: 26px 25px 115px; }
  .wd-cooperation h3 { font-size: 27px; }
  .wd-cooperation p { font-size: 14px; max-width: 275px; }
  .wd-landscape { width: 100%; max-height: 130px; }
  .wd-footer { padding-top: 30px; }
  .wd-footer-top { grid-template-columns: minmax(0,1fr); gap: 17px; }
  .wd-brand-lockup { font-size: 26px; }
  .wd-footer-links { justify-content: flex-start; gap: 0 22px; }
  .wd-footer-actions { grid-column: auto; justify-content: flex-start; }
  .wd-footer-bottom { margin-top: 22px; flex-direction: column; gap: 13px; }
  .wd-footer-bottom p:last-child { text-align: left; font-size: 10px; }
  .wd-dialog-heading { padding: 17px 20px; }
  .wd-dialog-heading h2 { font-size: 24px; }
  .wd-source-copy { padding-inline: 20px; }
  .wd-source-copy :is(.cards,.facts) { grid-template-columns: minmax(0,1fr); }
  .wd-source-copy :is(h1,h2) { font-size: 25px; }
}

/* Pending units are hidden only while the successfully mounted JS controller
   owns them. Layout space remains reserved, preventing jumps during scrolling. */
.wd-motion-ready [data-wd-reveal-state="pending"] { opacity: 0; }

/* Authored content is always visible. Motion only enhances its arrival. */
@media (prefers-reduced-motion:reduce) {
  .wd-motion-ready [data-wd-reveal-state] { opacity: 1!important; }
  .weidui-page *, .weidui-page *::before, .weidui-page *::after { animation: none!important; transition: none!important; scroll-behavior: auto!important; }
}
