.brand-page { background: #fff; color: #06090d; }
.brand-story-hero { position: relative; height: 230vh; min-height: 1500px; background: #f8f6ef; }
.brand-story-hero .nav-shell { position: fixed; z-index: 100; background: transparent; border: 0; }
.brand-page .nav-shell .brand img { filter: none; opacity: 1; }
.brand-page .nav-shell nav a { color: rgba(8,16,26,.58); }
.brand-page .nav-shell nav a:hover,
.brand-page .nav-shell nav a.active { color: #08101a; }
.brand-page .nav-shell .login { border-radius: 0; background: #fff; color: #08101a; }
.brand-opening { position: sticky; top: 0; height: 100vh; overflow: hidden; background: #f8f6ef; }
.brand-opening-wordmark { display: none; }
.brand-opening-wordmark img { width: 100%; height: auto; display: block; filter: brightness(0); }
.brand-opening-robot { position: absolute; z-index: 2; left: 0; top: 0; width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; border-radius: 0; transform: none; will-change: left,top,width,height,border-radius; -webkit-mask-image: none; mask-image: none; }
.brand-vision-cards { position: absolute; z-index: 1; inset: 0; display: flex; align-items: center; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; scroll-snap-type: x proximity; opacity: 0; transform: translateY(28px); cursor: default; pointer-events: none; touch-action: pan-x pan-y; will-change: opacity,transform; }
.brand-vision-cards::-webkit-scrollbar { display: none; }
.brand-vision-cards.is-interactive { pointer-events: auto; }
.brand-vision-track { display: flex; flex: none; align-items: stretch; gap: 10px; width: max-content; padding: 0 18px; }
.brand-vision-card { position: relative; flex: none; width: min(30.52vw,625px); aspect-ratio: 586 / 429; margin: 0; overflow: hidden; box-sizing: border-box; border-radius: 26px; scroll-snap-align: center; }
.brand-vision-image img { width: 100%; height: 100%; display: block; object-fit: cover; }
.brand-vision-question { background: #fff1ad; }
.brand-vision-future { background: #bdd6fb; }
.brand-vision-copy { width: min(21vw,430px); padding: 62px 40px 58px; display: flex; flex-direction: column; justify-content: space-between; color: #08101a; }
.brand-vision-copy span { display: block; margin-bottom: 14px; color: rgba(8,16,26,.45); font-size: 14px; }
.brand-vision-copy p { margin: 0; color: rgba(8,16,26,.62); font-size: 16px; line-height: 1.3; }
.brand-vision-copy p strong { color: #08101a; font-weight: 600; }
.brand-vision-copy h2 { margin: 0; font-size: 25px; line-height: 1.18; font-weight: 700; letter-spacing: -.025em; }
.brand-opening-cn,.brand-opening-en { position: absolute; z-index: 3; bottom: 3.2%; font-size: clamp(16px,1.12vw,22px); line-height: 1; }
.brand-opening-cn { left: 1.9%; color: #070b10; font-weight: 700; }
.brand-opening-en { right: 1.9%; color: #606a76; font-weight: 500; }
@media(min-width:760px){
  .brand-vision-cards{scrollbar-width:auto;scrollbar-color:#777 #dededb}
  .brand-vision-cards::-webkit-scrollbar{display:block;height:10px}
  .brand-vision-cards::-webkit-scrollbar-track{background:#dededb}
  .brand-vision-cards::-webkit-scrollbar-thumb{border:2px solid #dededb;border-radius:999px;background:#777}
}
@media(max-width:760px){.brand-story-hero{height:210vh;min-height:1200px}.brand-opening-robot{object-fit:cover;object-position:center}.brand-vision-track{gap:5px;padding:0 10px}.brand-vision-card{width:68vw;height:50vw;border-radius:14px}.brand-vision-copy{width:46vw;padding:22px 17px}.brand-vision-copy span{font-size:8px}.brand-vision-copy p{font-size:9px}.brand-vision-copy h2{font-size:15px}.brand-opening-cn,.brand-opening-en{bottom:4%;font-size:13px}.brand-opening-cn{left:5vw}.brand-opening-en{right:5vw}}
.brand-story-copy { pointer-events: none; }
.brand-story-copy { position: relative; z-index: 2; width: min(1160px,64vw); height: 72vh; margin: 0 auto; padding-top: clamp(210px,22vh,300px); box-sizing: border-box; }
.brand-story-copy h1 { margin: 0; color: #000; font-size: clamp(92px,10.2vw,196px); line-height: .9; font-weight: 500; letter-spacing: -.075em; text-shadow: none; white-space: nowrap; }
.brand-story-copy h2 { margin: 32px 0 0 8px; font-size: clamp(20px,1.35vw,28px); line-height: 1; font-weight: 700; }
.brand-story-copy p { position: absolute; left: 8px; bottom: 56px; margin: 0; color: #656b72; font-size: clamp(15px,1.05vw,19px); line-height: 1.5; font-weight: 500; }
.brand-reel { position: relative; z-index: 2; width: 100%; overflow: hidden; padding-bottom: 56px; }
.brand-reel-track { display: flex; width: max-content; animation: brand-reel-loop 38s linear infinite; will-change: transform; }
.brand-reel:hover .brand-reel-track { animation-play-state: paused; }
.brand-reel-group { display: flex; flex: none; gap: 12px; padding-right: 12px; }
.brand-reel-card { width: 390px; height: 430px; flex: none; margin: 0; overflow: hidden; border-radius: 20px; }
.brand-reel-wide { width: 570px; }
.brand-reel-image { background: #cddae6; }.brand-reel-image img { width: 100%; height: 100%; display: block; object-fit: cover; }
.brand-reel-text { display: flex; flex-direction: column; justify-content: center; box-sizing: border-box; padding: 42px 34px; background: #061b32; color: #fff; }
.brand-reel-text span { margin-bottom: 18px; color: rgba(255,255,255,.45); font-size: 15px; font-weight: 600; }
.brand-reel-text h3 { margin: 0; font-size: 18px; line-height: 1.35; font-weight: 600; }
.brand-reel-text p { margin: 4px 0 0; color: rgba(255,255,255,.45); font-size: 15px; line-height: 1.4; }
@keyframes brand-reel-loop { to { transform: translateX(-50%); } }
@media(max-width:760px){.brand-story-copy{width:86vw;height:62vh;padding-top:170px}.brand-story-copy h1{font-size:18vw;white-space:normal}.brand-story-copy h2{margin-top:18px;font-size:19px}.brand-story-copy p{bottom:38px;font-size:13px}.brand-story-copy p br{display:none}.brand-reel-card{width:76vw;height:92vw;border-radius:16px}.brand-reel-wide{width:88vw}.brand-reel-text{padding:28px}.brand-reel-track{animation-duration:32s}}
@media(prefers-reduced-motion:reduce){.brand-reel-track{animation-play-state:paused}}

.origin-scroll { position: relative; height: 100vh; background: #02070e; }
.origin-sticky { position: sticky; top: 0; height: 100vh; overflow: hidden; color: #fff; background: #02070e; }
.origin-background { position: absolute; inset: 0; width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; }
.origin-sticky::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(8,14,18,.09),transparent 42%,rgba(7,9,8,.2)); pointer-events: none; }
.origin-heading { position: absolute; z-index: 2; left: 2%; top: 7.2%; }
.origin-heading span { display: block; margin-bottom: 18px; color: rgba(255,255,255,.6); font-size: clamp(14px,.9vw,18px); font-weight: 600; }
.origin-heading h2 { margin: 0; color: #fff; font-size: clamp(42px,3.05vw,60px); line-height: 1.08; font-weight: 700; letter-spacing: -.04em; }
.origin-heading p { display: none; }
.origin-year-card { position: absolute; z-index: 2; right: 5.1%; top: 40.5%; width: min(520px,27vw); height: min(330px,26vh); min-height: 270px; box-sizing: border-box; padding: 34px 36px 30px; overflow: hidden; border: 1px solid rgba(255,255,255,.25); border-radius: 28px; background: linear-gradient(180deg,rgba(226,235,234,.72),rgba(159,126,91,.78)); color: #fff; box-shadow: inset 0 1px rgba(255,255,255,.28); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.origin-year-card > p { margin: 0; color: rgba(255,255,255,.75); font-size: clamp(13px,.9vw,17px); font-weight: 600; line-height: 1.4; }
.origin-year-card > span { position: absolute; left: 36px; bottom: 38px; color: rgba(255,255,255,.72); font-size: 12px; }
.origin-year { position: absolute; z-index: 2; right: 34px; bottom: 28px; display: flex; align-items: baseline; color: #fff; font-size: clamp(62px,5.2vw,100px); line-height: 1; font-weight: 400; letter-spacing: -.055em; white-space: nowrap; }
.origin-digit { width: .56em; height: 1em; overflow: hidden; }
.origin-digit-strip { display: flex; flex-direction: column; transition: none; will-change: transform; }
.origin-digit-strip i { height: 1em; flex: none; font: inherit; line-height: 1; font-style: normal; text-align: center; }
.origin-detail { position: absolute; z-index: 2; left: 2%; bottom: 7.5%; width: min(720px,48vw); margin: 0; color: rgba(255,255,255,.72); font-size: clamp(12px,.78vw,15px); line-height: 1.45; font-weight: 500; }
.origin-detail span { display: block; white-space: nowrap; }
@media(max-width:760px){.origin-scroll{height:190vh}.origin-heading{left:6vw;top:12vh}.origin-heading h2{font-size:34px}.origin-year-card{left:6vw;right:6vw;top:auto;bottom:20vh;width:auto;height:220px;min-height:0;padding:25px;border-radius:20px}.origin-year-card>span{left:25px;bottom:27px}.origin-year{right:24px;bottom:22px;font-size:15vw}.origin-detail{left:6vw;right:6vw;bottom:5vh;width:auto;font-size:12px}.origin-detail span{display:inline;white-space:normal}.origin-background{object-position:48% center}}

.pioneer-scroll { position: relative; height: 430vh; background: #fff; }
.pioneer-sticky { position: sticky; top: 0; height: 100vh; overflow: hidden; background: #fff; color: #05080b; }
.pioneer-title { position: absolute; z-index: 3; left: 50%; top: 50%; display: flex; gap: 0; margin: 0; transform: translate(-50%,-50%); font-size: clamp(58px,6vw,116px); line-height: 1; font-weight: 700; letter-spacing: -.055em; white-space: nowrap; opacity: 0; will-change: transform,opacity; }
.pioneer-title span { display: block; will-change: transform; }
.pioneer-orbit { position: absolute; inset: 0; z-index: 1; }
.pioneer-card { position: absolute; margin: 0; overflow: hidden; border-radius: 20px; opacity: 0; will-change: transform,opacity; }
.pioneer-card img { width: 100%; height: 100%; display: block; object-fit: cover; }
.card-a { left: 18.7%; top: 9.5%; width: 15.3vw; height: 17.7vh; }
.card-b { left: 31.2%; top: 23.6%; width: 8.8vw; height: 12.3vh; }
.card-c { left: 63.8%; top: 6%; width: 8.7vw; height: 12.2vh; }
.card-d { left: 91%; top: 1.8%; width: 10vw; height: 12%; }
.card-e { left: -0.5%; top: 36.5%; width: 10.7vw; height: 15.3vh; }
.card-f { left: 81.1%; top: 36.2%; width: 14vw; height: 27.4vh; }
.card-g { left: 75%; top: 55.8%; width: 10vw; height: 19vh; }
.card-h { left: 18.7%; top: 67.8%; width: 13.1vw; height: 18vh; }
.card-i { left: 52.8%; top: 83.2%; width: 11.2vw; height: 16vh; }
.pioneer-main { position: absolute; z-index: 2; left: 50%; top: 50%; width: 0; height: 0; margin: 0; transform: translate(-50%,-50%); overflow: hidden; border-radius: 20px; opacity: 0; will-change: width,height,top,left,border-radius,opacity; }
.pioneer-main img { width: 100%; height: 100%; display: block; object-fit: cover; }
.pioneer-content { position: absolute; z-index: 4; inset: 0; color: #fff; pointer-events: none; }
.pioneer-kicker,.pioneer-description,.pioneer-principles { opacity: 0; transform: translateY(22px); will-change: opacity,transform; }
.pioneer-kicker { position: absolute; left: 2.8%; top: 5.8%; margin: 0; color: rgba(255,255,255,.5); font-size: clamp(14px,1.05vw,20px); font-weight: 600; }
.pioneer-description { position: absolute; left: 2.8%; top: 9.7%; margin: 0; color: rgba(255,255,255,.45); font-size: clamp(16px,1.25vw,24px); line-height: 1.28; font-weight: 500; }
.pioneer-description strong { color: rgba(255,255,255,.95); font-weight: 600; }
.pioneer-principles { position: absolute; left: 2.8%; right: 2.2%; bottom: 6.8%; --line-progress: 0; }
.pioneer-principles div { position: relative; height: 49px; display: grid; grid-template-columns: 1fr 1fr 40px; align-items: center; font-size: clamp(13px,1vw,18px); }
.pioneer-principles div::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: rgba(255,255,255,.35); transform: scaleX(var(--line-progress)); transform-origin: left center; will-change: transform; }
.pioneer-principles em { font-style: normal; color: rgba(255,255,255,.6); }.pioneer-principles i { justify-self: end; font-style: normal; color: rgba(255,255,255,.6); }
@media(max-width:760px){.pioneer-scroll{height:360vh}.pioneer-title{font-size:14vw}.pioneer-card{border-radius:12px}.card-a{left:7%;top:12%;width:31vw;height:16vh}.card-b{left:30%;top:26%;width:20vw;height:11vh}.card-c{left:63%;top:10%;width:21vw;height:11vh}.card-d{left:88%;top:4%;width:24vw;height:11vh}.card-e{left:-9%;top:39%;width:25vw;height:14vh}.card-f{left:78%;top:38%;width:30vw;height:25vh}.card-g{left:69%;top:61%;width:24vw;height:17vh}.card-h{left:7%;top:70%;width:28vw;height:16vh}.card-i{left:45%;top:86%;width:26vw;height:14vh}.pioneer-kicker{left:6vw;top:7vh;font-size:12px}.pioneer-description{left:6vw;right:6vw;top:12vh;font-size:14px}.pioneer-description br{display:none}.pioneer-principles{left:6vw;right:6vw;bottom:7vh}.pioneer-principles div{height:42px;font-size:12px;grid-template-columns:1fr .8fr 28px}}

.spirit-scroll { position: relative; height: 360vh; background: #fff; }
.spirit-sticky { position: sticky; top: 0; height: 100vh; overflow: hidden; background: #fff; color: #080b0f; }
.spirit-intro { position: absolute; z-index: 3; top: 8.5vh; left: 50%; width: min(1200px,62.5vw); display: grid; grid-template-columns: 1fr 1fr; gap: 90px; transform: translateX(-50%); will-change: opacity,transform; }
.spirit-intro span { display: block; margin-bottom: 16px; color: #646a70; font-size: clamp(15px,1.05vw,20px); font-weight: 600; }.spirit-intro h2 { margin: 0; font-size: clamp(42px,3.3vw,64px); line-height: 1.08; font-weight: 700; letter-spacing: -.05em; }.spirit-intro p { align-self: start; margin: 47px 0 0; color: #60666c; font-size: clamp(16px,1.2vw,22px); line-height: 1.42; font-weight: 500; }
.spirit-stage { position: absolute; z-index: 2; left: 50%; top: 27%; width: min(1200px,62.5vw); height: min(668px,65vh); transform: translateX(-50%); overflow: hidden; border-radius: 20px; background: linear-gradient(115deg,#153b68,#a8cdf9); will-change: width,height,top,border-radius; }
.spirit-robot { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; transform: none; object-fit: cover; object-position: center; will-change: auto; }
.spirit-card { position: absolute; z-index: 3; width: 430px; height: 195px; display: grid; grid-template-columns: 170px 1fr; gap: 18px; padding: 10px; box-sizing: border-box; border: 1px solid rgba(255,255,255,.22); border-radius: 20px; background: rgba(220,235,250,.23); color: #fff; box-shadow: 0 20px 60px rgba(17,45,78,.12); backdrop-filter: blur(16px); opacity: 0; will-change: transform,opacity; }
.spirit-card img { width: 170px; height: 173px; display: block; object-fit: cover; border-radius: 16px; }.spirit-card div { align-self: center; }.spirit-card span { display: block; margin-bottom: 10px; font-size: 12px; color: rgba(255,255,255,.85); }.spirit-card h3 { margin: 0 0 12px; font-size: 18px; line-height: 1.2; font-weight: 600; }.spirit-card p { margin: 0; color: rgba(255,255,255,.58); font-size: 12px; line-height: 1.45; }
.spirit-card-origin { left: 12.5%; top: 16.5%; }.spirit-card-think { right: 12.5%; top: 65%; }.spirit-card-boundless { left: 12.5%; top: 113.5%; }
@media(max-width:760px){.spirit-scroll{height:320vh}.spirit-intro{top:8vh;width:86vw;display:block}.spirit-intro h2{font-size:34px}.spirit-intro p{margin-top:20px;font-size:14px}.spirit-stage{top:34%;width:90vw;height:52vh;border-radius:16px}.spirit-robot{inset:0;width:100%;height:100%;object-position:center}.spirit-card{width:82vw;height:132px;grid-template-columns:110px 1fr;gap:12px;border-radius:14px}.spirit-card img{width:110px;height:110px;border-radius:11px}.spirit-card h3{font-size:15px;margin-bottom:6px}.spirit-card p{font-size:10px}.spirit-card-origin{left:9vw;top:18%}.spirit-card-think{right:9vw;top:67%}.spirit-card-boundless{left:9vw;top:116%}}

.symbiosis-section { box-sizing: border-box; padding: 128px 34px 138px; background: #f5f3ef; color: #080b0f; }
.symbiosis-heading { width: 100%; margin: 0 0 72px; }
.symbiosis-heading span { display: block; margin-bottom: 18px; color: #666c72; font-size: clamp(16px,1.05vw,20px); font-weight: 600; }
.symbiosis-heading h2 { margin: 0; font-size: clamp(42px,3.35vw,64px); line-height: 1.08; font-weight: 700; letter-spacing: -.045em; }
.symbiosis-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; min-height: 0; background: transparent; }
.symbiosis-layout figure { min-width: 0; height: min(870px,72vw); margin: 0; overflow: hidden; border-radius: 24px; background: #ddd; }.symbiosis-layout figure img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; }
.symbiosis-layout article { position: relative; box-sizing: border-box; height: min(870px,72vw); padding: 72px 44px 54px; border-radius: 24px; background: #fffefa; }
.symbiosis-layout h3 { margin: 0; font-size: clamp(22px,1.65vw,32px); line-height: 1.25; font-weight: 600; }
.symbiosis-points { position: absolute; left: 44px; right: 44px; bottom: 50px; }
.symbiosis-points p { margin: 0; padding: 32px 0; border-bottom: 1px solid #d9dde0; color: #686d72; font-size: clamp(14px,1vw,18px); line-height: 1.45; font-weight: 500; }.symbiosis-points p:last-child { border-bottom: 0; }
@media(max-width:760px){.symbiosis-section{padding:80px 5vw}.symbiosis-heading{width:auto;margin-bottom:52px}.symbiosis-heading span{font-size:14px}.symbiosis-heading h2{font-size:32px}.symbiosis-layout{display:block;min-height:0}.symbiosis-layout figure{height:90vw;border-radius:18px}.symbiosis-layout article{height:auto;min-height:620px;margin-top:12px;padding:44px 7vw 32px;border-radius:18px}.symbiosis-layout h3{font-size:24px;margin-bottom:54px}.symbiosis-points{position:static}.symbiosis-points p{padding:24px 0;font-size:13px}.symbiosis-points br{display:none}}

/* Mobile art direction follows the supplied H5 comps instead of scaling the
   desktop scroll scenes. */
.brand-opening-summary,.brand-vision-progress { display: none; }
@media (max-width: 760px) {
  .brand-page { background: #faf8f1; }
  .brand-page .nav-shell { position: fixed; top: 16px; left: 50%; z-index: 100; width: calc(100% - 32px); height: 58px; padding: 0; transform: translateX(-50%); overflow: hidden; align-items: start; border-radius: 999px; background: rgba(72,82,79,.56); transition: height .38s ease,border-radius .3s ease,background-color .3s ease; -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
  .brand-page .nav-shell .brand { position: absolute; top: 17px; left: 18px; width: 112px; height: 28px; }
  .brand-page .nav-shell .brand img { width: 112px; height: 28px; filter: brightness(0) invert(1); }
  .brand-page .nav-shell nav { position: absolute; top: 160px; right: 15px; left: 15px; display: grid; gap: 7px; padding: 0; opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .25s ease,transform .3s ease,visibility .25s; }
  .brand-page .nav-shell nav a { position: relative; width: 100%; min-width: 0; height: 40px; padding: 0 16px; justify-content: flex-start; box-sizing: border-box; border-radius: 999px; color: #fff !important; background: rgba(255,255,255,.14) !important; font-size: 12px; font-weight: 600; }
  .brand-page .nav-shell nav a::after,.brand-page .nav-shell .login::after { content: "›"; position: absolute; right: 16px; font-size: 19px; font-weight: 300; }
  .brand-page .nav-shell nav a:nth-child(5) { display: flex; }
  .brand-page .nav-shell .login { position: absolute; left: 15px; right: auto; bottom: 17px; width: calc(100% - 30px); max-width: none; min-width: 0; height: 40px; padding: 0 16px; display: none; justify-content: flex-start; box-sizing: border-box; border-radius: 999px; background: #bed8ff; font-size: 12px; }
  .brand-page .mobile-menu-toggle { position: absolute; top: 7px; right: 7px; width: 52px; height: 44px; padding: 0; display: grid; place-content: center; gap: 5px; border: 0; border-radius: 999px; background: rgba(255,255,255,.13); }
  .brand-page .mobile-menu-toggle i { width: 19px; height: 2px; display: block; border-radius: 2px; background: #fff; transition: .2s ease; }
  .brand-page .nav-shell.mobile-menu-open { height: 462px; border-radius: 30px; background: rgba(83,78,73,.72); }
  .brand-page .nav-shell.mobile-menu-open nav { opacity: 1; visibility: visible; transform: none; }
  .brand-page .nav-shell.mobile-menu-open .login { display: flex; }
  .brand-page .mobile-menu-open .mobile-menu-toggle i:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .brand-page .mobile-menu-open .mobile-menu-toggle i:nth-child(2) { opacity: 0; }
  .brand-page .mobile-menu-open .mobile-menu-toggle i:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  .brand-story-hero { height: calc(100svh + 505px); min-height: 0; background: #faf8f1; }
  .brand-opening { position: relative; top: auto; height: 100%; overflow: hidden; background: #faf8f1; }
  .brand-opening-robot { position: absolute; inset: 0 auto auto 0; z-index: 1; width: 100% !important; height: 100svh !important; min-height: 760px; border-radius: 0 !important; object-fit: cover; object-position: 50% center; opacity: 1 !important; }
  .brand-opening::after { content: ''; position: absolute; z-index: 2; top: 0; left: 0; width: 100%; height: 100svh; pointer-events: none; background: linear-gradient(180deg,rgba(30,52,52,.06) 48%,rgba(8,18,12,.58) 100%); }
  .brand-opening-cn,.brand-opening-en,.brand-opening-summary { position: absolute; z-index: 3; left: 5vw; right: 5vw; color: #fff; opacity: 1 !important; }
  .brand-opening-en { top: calc(100svh - 202px); bottom: auto; font-size: 30px; line-height: 1; font-weight: 400; }
  .brand-opening-cn { top: calc(100svh - 158px); bottom: auto; font-size: 21px; line-height: 1; }
  .brand-opening-summary { top: calc(100svh - 105px); display: block; margin: 0; font-size: 14px; line-height: 1.55; font-weight: 500; }
  .brand-vision-cards { inset: calc(100svh + 72px) auto auto 0; width: 100%; height: 355px; display: block; overflow-x: auto; overflow-y: hidden; opacity: 1 !important; transform: none !important; pointer-events: auto; scroll-snap-type: x mandatory; }
  .brand-vision-track { height: 100%; gap: 12px; padding: 0 18px; align-items: stretch; }
  .brand-vision-card { width: 64vw; height: 100%; border-radius: 28px; }
  .brand-vision-copy { width: 52vw; padding: 30px 24px; }
  .brand-vision-copy span { font-size: 11px; }
  .brand-vision-copy p { font-size: 15px; line-height: 1.3; }
  .brand-vision-copy h2 { font-size: 19px; line-height: 1.18; }
  .brand-vision-progress { position: absolute; z-index: 3; top: calc(100svh + 466px); left: 5vw; right: 5vw; height: 3px; display: block; overflow: hidden; border-radius: 4px; background: #dededb; }
  .brand-vision-progress i { display: block; width: 19%; height: 100%; border-radius: 4px; background: #080808; transform: translateX(0); will-change: width,transform; }

  .origin-scroll { height: 1510px; background: #faf8f1; }
  .origin-sticky { position: relative; top: auto; height: 100%; overflow: hidden; background: #faf8f1; color: #080808; }
  .origin-sticky::after { display: none; }
  .origin-heading { left: 5vw; right: 5vw; top: 54px; }
  .origin-heading span { margin-bottom: 20px; color: #777; font-size: 14px; }
  .origin-heading h2 { color: #050505; font-size: 37px; line-height: 1.15; letter-spacing: -.035em; }
  .origin-heading p { display: block; margin: 28px 0 0; color: #6f6f6f; font-size: 15px; line-height: 1.5; font-weight: 500; }
  .origin-background { inset: 360px 0 auto; height: calc(100% - 360px); object-position: 51% center; }
  .origin-year-card { left: 3vw; right: 3vw; top: auto; bottom: 40px; width: auto; height: 235px; min-height: 0; padding: 28px 26px; border: 0; border-radius: 28px; background: rgba(116,103,85,.74); }
  .origin-year-card > p { max-width: 64%; color: #fff; font-size: 14px; }
  .origin-year-card > span { left: 26px; bottom: 27px; font-size: 10px; }
  .origin-year { right: 25px; bottom: 22px; font-size: 18vw; }
  .origin-detail { display: none; }

  .pioneer-scroll { height: 310svh; min-height: 2100px; background: #faf8f1; }
  .pioneer-sticky { position: sticky; top: 0; height: 100svh; min-height: 680px; overflow: hidden; background: #faf8f1; }
  .pioneer-title { top: 48%; left: 50%; display: flex; opacity: 1; transform: translate(-50%,-50%); font-size: 16vw; }
  .pioneer-title span { transform: none; }
  .pioneer-card { border-radius: 20px; opacity: 1; transform: none; }
  .card-a { left: -8%; top: 11%; width: 30vw; height: 13%; }
  .card-b { left: 15%; top: 20%; width: 22vw; height: 9%; }
  .card-c { left: 62%; top: 31%; width: 22vw; height: 9%; }
  .card-d { left: 87%; top: 2%; width: 25vw; height: 10%; }
  .card-e { left: -6%; top: 31%; width: 22vw; height: 11%; }
  .card-f { left: 84%; top: 58%; width: 25vw; height: 20%; }
  .card-g { left: 69%; top: 70%; width: 25vw; height: 13%; }
  .card-h { left: 3%; top: 58%; width: 33vw; height: 13%; }
  .card-i { left: 12%; top: 82%; width: 28vw; height: 11%; }
  .pioneer-main { display: block; inset: 0; width: 100%; height: 100%; border-radius: 0; transform: none; opacity: 0; }
  .pioneer-main img { object-position: 68% center; }
  .pioneer-content { display: block; color: #fff; }
  .pioneer-kicker { left: 6vw; right: 6vw; top: 7vh; color: rgba(255,255,255,.65); font-size: 12px; line-height: 1.45; }
  .pioneer-description { left: 6vw; right: 6vw; top: 11.5vh; color: rgba(255,255,255,.48); font-size: 14px; line-height: 1.45; }
  .pioneer-description strong { color: rgba(255,255,255,.94); }
  .pioneer-description br { display: none; }
  .pioneer-principles { left: 2.5vw; right: 2.5vw; bottom: 5.5vh; padding: 12px 20px; box-sizing: border-box; border-radius: 24px; background: rgba(63,58,55,.42); -webkit-backdrop-filter: blur(17px); backdrop-filter: blur(17px); }
  .pioneer-principles div { height: 52px; grid-template-columns: 1fr 36px; color: #fff; font-size: 13px; }
  .pioneer-principles div::after { background: rgba(255,255,255,.18); }
  .pioneer-principles em { display: none; }
  .pioneer-principles i { color: rgba(255,255,255,.9); }

  .spirit-scroll { height: auto; background: #faf8f1; }
  .spirit-sticky { position: relative; top: auto; height: auto; overflow: visible; padding: 78px 16px 86px; box-sizing: border-box; background: #faf8f1; }
  .spirit-intro { position: static; width: auto; display: block; opacity: 1 !important; transform: none !important; }
  .spirit-intro span { margin-bottom: 15px; font-size: 14px; }
  .spirit-intro h2 { font-size: 38px; line-height: 1.12; }
  .spirit-intro h2 br { display: none; }
  .spirit-intro p { margin: 22px 0 50px; font-size: 15px; line-height: 1.5; }
  .spirit-intro p br { display: none; }
  .spirit-stage { position: relative; top: auto !important; left: auto; width: 100% !important; height: auto !important; overflow: visible; border-radius: 0 !important; background: none; transform: none !important; }
  .spirit-robot { position: relative; inset: auto; width: 100%; height: 122vw; max-height: 940px; display: block; border-radius: 27px; object-fit: cover; object-position: 49% center; }
  .spirit-card { position: relative; inset: auto; width: 100%; height: 176px; margin-top: 14px; padding: 10px; grid-template-columns: 39% 1fr; gap: 18px; border: 0; border-radius: 28px; background: #f0eee8; color: #090909; box-shadow: none; opacity: 1 !important; transform: none !important; backdrop-filter: none; }
  .spirit-card img { width: 100%; height: 156px; border-radius: 20px; }
  .spirit-card span { margin-bottom: 7px; color: #111; font-size: 11px; }
  .spirit-card h3 { margin-bottom: 12px; font-size: 17px; }
  .spirit-card p { color: #858585; font-size: 12px; line-height: 1.45; }
  .spirit-card p br { display: none; }

  .symbiosis-section { padding: 80px 16px 36px; background: #f0efea; }
  .symbiosis-heading { margin: 0 4vw 54px; }
  .symbiosis-heading span { margin-bottom: 17px; font-size: 14px; }
  .symbiosis-heading h2 { font-size: 37px; line-height: 1.12; }
  .symbiosis-layout figure { height: 97vw; border-radius: 28px; }
  .symbiosis-layout figure img { object-position: center top; }
  .symbiosis-layout article { min-height: 0; margin-top: 14px; padding: 42px 28px 28px; border-radius: 28px; }
  .symbiosis-layout h3 { margin-bottom: 92px; font-size: 22px; line-height: 1.25; }
  .symbiosis-points p { padding: 22px 0; font-size: 12px; line-height: 1.55; }
  .symbiosis-points p:last-child { padding-bottom: 4px; }
}
