/* A scroll-driven architectural walkthrough. Shared public pages retain their theme. */
body.walkthrough-page { --walk-ink:#08121e; --walk-paper:#f2ede3; --walk-gold:#ddb778; background:var(--walk-ink); color:var(--walk-paper); }
.walkthrough-page .topbar { background:#060d16; }
.walkthrough-page .header { background:#0b1825; border-bottom:1px solid #ffffff12; }
.walkthrough-page .header-inner { padding:15px 0; }
.walkthrough-page .logo-wrap { background:#ffffff0c; border-color:#ffffff15; width:52px; height:52px; box-shadow:none; }
.walkthrough-page .title-area h1 { color:#f2ede3; font-size:26px; }
.walkthrough-page .title-area small,.walkthrough-page .title-area p { color:#91a7b8; }
.walkthrough-page .header-badge { background:none; color:#c9decf; border:1px solid #ffffff18; }
.walkthrough-page .nav { background:#0b1825; border-color:#ffffff15; }
.walkthrough-page .menu a { color:#bbcbd7; font-size:13px; }
.walkthrough-page .menu a:hover { color:#fff; background:#ffffff0b; }
.walkthrough-page .nav-note { color:#8297a8; }
.walkthrough-page .menu-btn { background:#122536; color:#f2ede3; border-color:#344858; }
.walk-journey { position:relative; height:580vh; }
.walk-viewport { position:sticky; top:0; height:100svh; min-height:650px; overflow:hidden; isolation:isolate; background:radial-gradient(ellipse at 73% 37%,#18405c70,transparent 55%),linear-gradient(130deg,#101e2c,#07101a 70%); perspective:1500px; }
.walk-ambient { position:absolute; inset:0; z-index:-1; pointer-events:none; overflow:hidden; }
.walk-ambient:before { content:''; position:absolute; inset:0; background:linear-gradient(115deg,transparent 30%,#91d4e606 47%,transparent 60%); }
.walk-floor { position:absolute; width:200%; height:100%; left:-50%; bottom:-60%; background:linear-gradient(#6d9baf22 1px,transparent 1px),linear-gradient(90deg,#6d9baf22 1px,transparent 1px); background-size:100px 100px; transform:perspective(700px) rotateX(62deg) translateY(var(--floor-shift,0px)); mask-image:linear-gradient(transparent,#000 45%); }
.walk-arch { position:absolute; width:52vw; height:90%; border:1px solid #94c9dd35; border-radius:48% 48% 0 0; right:-4%; top:8%; box-shadow:inset 0 0 60px #76c9df08,0 0 55px #76c9df08; transform:rotateY(-30deg); }
.walk-arch-far { right:-15%; top:0; width:60vw; border-color:#ddb77822; filter:blur(1px); }
.walk-orb { position:absolute; width:300px; height:300px; right:17%; top:27%; border-radius:50%; background:radial-gradient(circle at 30% 25%,#faf2d7,#c79c63 35%,#556472 75%,#182b3d); box-shadow:inset -25px -25px 40px #0a172b65,0 50px 100px #0006; opacity:.32; filter:blur(3px); transform:translateY(var(--orb-shift,0px)); }
.walk-specks { position:absolute; inset:0; background:radial-gradient(circle at 16% 24%,#e4c59180 1px,transparent 2px),radial-gradient(circle at 70% 17%,#a6e7ff60 1px,transparent 2px),radial-gradient(circle at 86% 70%,#e4c59170 2px,transparent 3px); }
.walk-topline { position:absolute; left:5%; right:5%; top:30px; display:flex; justify-content:space-between; align-items:center; z-index:10; font-size:10px; letter-spacing:.2em; color:#94aebe; }
.walk-view-toggle { padding:8px 13px; border:1px solid #aac2cf35; border-radius:20px; background:#0b192b80; color:#dbe4e8; cursor:pointer; font:inherit; letter-spacing:0; }
.walk-world { position:absolute; inset:85px 5% 115px; transform-style:preserve-3d; transform:rotateX(var(--look-x,0deg)) rotateY(var(--look-y,0deg)); transition:transform .4s ease-out; }
.walk-scene { position:absolute; inset:0; display:flex; align-items:center; transform-style:preserve-3d; visibility:hidden; opacity:0; pointer-events:none; will-change:transform,opacity; }
.walk-scene:first-child { visibility:visible; opacity:1; pointer-events:auto; }
.walk-scene-number { position:absolute; top:0; left:0; color:#e8bd7840; font-size:12px; letter-spacing:.2em; transform:translateZ(40px); }
.walk-scene-content { width:100%; max-height:100%; overflow:auto; scrollbar-width:thin; scrollbar-color:#ddb77850 transparent; transform:translateZ(45px); padding:18px 0; }
.walk-scene .intro, .walk-scene .section-card, .walk-scene .side-card, .walk-scene .team-horizontal-card { background:none; border:0; border-radius:0; box-shadow:none; transform:none; animation:none; margin:0; overflow:visible; }
.walk-scene .intro { width:100%; max-width:none; }
.walk-scene .intro:before,.walk-scene .intro:after,.walk-scene .section-card:after,.walk-scene .section-header:before { display:none; }
.walk-scene .intro-inner { width:100%; max-width:none; min-height:0; padding:0; grid-template-columns:1.4fr 1fr; gap:70px; }
.walk-scene .intro-text, .walk-scene .section-header { transform:translateZ(30px); }
.walk-scene .intro-text .label { color:#e8c590; border:1px solid #ddb77850; background:#ddb77808; font-size:10px; letter-spacing:.1em; }
.walk-scene .intro-text h2 { font-size:clamp(34px,4.4vw,68px); line-height:1.35; letter-spacing:-.04em; color:#f6f0e6; text-shadow:0 8px 22px #0005; }
.walk-scene .intro-text p { color:#9fb8c9; font-size:16px; max-width:650px; }
.walk-scene .intro-chip { color:#aac9d8; background:none; border:1px solid #a1c4d435; font-size:10px; box-shadow:none; }
.walk-scene .intro-chip:before { background:#ddb778; }
.walk-scene .intro-logo { width:270px; height:270px; padding:55px; border:1px solid #efd3a480; background:radial-gradient(circle at 30% 20%,#fff1c7,#c29357 45%,#3c4d60 85%); box-shadow:inset 10px 14px 40px #ffffff30,inset -20px -25px 30px #10213670,0 45px 70px #0006; animation:walkSculpture 9s ease-in-out infinite; translate:none; }
.walk-scene .intro-logo:before { width:340px; height:340px; left:-36px; top:-36px; bottom:auto; border:1px solid #9bdaf180; border-radius:50%; background:none; box-shadow:0 0 35px #78d5ed20; transform:rotateX(60deg) rotateY(15deg); animation:none; }
.walk-scene .intro-logo:after { right:-45px; top:10px; width:65px; height:65px; background:radial-gradient(circle at 25% 15%,#fff4d2,#cdb283 50%,#4a5c68); box-shadow:0 20px 25px #0005; animation:none; }
.walk-scene .section-card { display:grid; grid-template-columns:.8fr 1.7fr; gap:65px; align-items:start; }
.walk-scene .section-header { background:none; border:0; padding:0; }
.walk-scene .section-kicker { color:#ddb778; background:none; padding:0; font-size:10px; letter-spacing:.15em; }
.walk-scene .section-kicker:before { background:#ddb778; }
.walk-scene .section-header h3 { color:#f2ede3; font-size:clamp(28px,3vw,46px); line-height:1.5; margin-top:18px; }
.walk-scene .section-header p { color:#91aabc; font-size:14px; line-height:1.8; }
.walk-scene .section-body { padding:0; }
.walk-scene .section-body p { color:#c5d4de; font-size:15px; line-height:1.9; }
.walk-scene .feature-block-grid { gap:22px; margin-top:24px; }
.walk-scene .feature-block { padding:16px 0; border:0; border-top:1px solid #8fb5c550; border-radius:0; background:none; box-shadow:none; }
.walk-scene .feature-block:after { display:none; }
.walk-scene .feature-icon { color:#ddb778; border:1px solid #ddb77850; background:none; border-radius:50%; box-shadow:0 0 18px #ddb77810; }
.walk-scene .feature-block strong { color:#f2ede3; font-size:14px; }
.walk-scene .feature-block span { color:#90a9ba; font-size:12px; }
.walk-scene .official-sidebar { width:100%; position:static; display:grid; grid-template-columns:1.4fr 1fr; gap:60px; }
.walk-scene .side-card-title { background:none; border:0; border-bottom:1px solid #ddb77850; padding:0 0 20px; color:#f2ede3; font-size:32px; }
.walk-scene .officer-vertical { display:grid; grid-template-columns:1fr 1fr; padding-top:28px; gap:25px; }
.walk-scene .officer-card { display:flex; flex-direction:column; align-items:flex-start; background:none; border:0; padding:0; gap:24px; }
.walk-scene .officer-photo { width:130px; height:155px; }
.walk-scene .officer-photo img { width:130px; height:155px; border:2px solid #ddb77870; border-radius:12px; box-shadow:8px 10px 0 #ddb77812,0 20px 30px #0005; }
.walk-scene .officer-post { color:#dbb983; background:#ddb77810; border:1px solid #ddb77825; }
.walk-scene .officer-info h4 { color:#f2ede3; font-size:20px; }
.walk-scene .officer-info p { color:#91aabc; }
.walk-scene .quick-actions { padding-top:22px; }
.walk-scene .quick-action { border:0; border-bottom:1px solid #7ca2b330; border-radius:0; background:none; box-shadow:none; padding:18px 0; }
.walk-scene .quick-action b { background:#ddb77810; color:#ddb778; border:1px solid #ddb77840; border-radius:50%; }
.walk-scene .quick-action strong { color:#e3eaf0; }
.walk-scene .quick-action span { color:#8eabba; }
.walk-scene .team-horizontal-section { width:100%; margin:0; }
.walk-scene .team-horizontal-head { padding:0 0 26px; border-color:#ddb77840; }
.walk-scene .team-horizontal-head h3 { color:#f2ede3; font-size:32px; }
.walk-scene .team-horizontal-head p { color:#91aabc; }
.walk-scene .team-badge { color:#ddb778; background:#ddb77810; border:1px solid #ddb77840; }
.walk-scene .team-horizontal-members { padding:35px 0 0; gap:35px; }
.walk-scene .team-member { background:none; border:0; border-radius:0; box-shadow:none; border-right:1px solid #ddb77830; padding:0 25px 0 0; }
.walk-scene .officer-photo-2 img { border:2px solid #ddb77870; border-radius:12px; box-shadow:8px 10px 0 #ddb77812,0 20px 30px #0005; }
.walk-scene .team-member strong { color:#f2ede3; font-size:21px; }
.walk-scene .team-member span { color:#91aabc; }
.walk-scene .anim-slide-left,.walk-scene .anim-slide-right,.walk-scene .anim-fade-up { animation:none; opacity:1; }
.walk-controls { position:absolute; bottom:36px; left:5%; right:5%; display:flex; align-items:center; gap:20px; z-index:10; }
.walk-prev,.walk-next { width:46px; height:46px; border:1px solid #a6c5d040; border-radius:50%; background:#12233180; color:#e9d0a9; font-size:22px; cursor:pointer; transition:background .2s,transform .2s; }
.walk-prev:hover,.walk-next:hover { background:#ddb77820; transform:scale(1.1); }
.walk-prev:disabled,.walk-next:disabled { opacity:.25; cursor:default; }
.walk-navigation { min-width:130px; }
.walk-current { color:#e8d7b9; font-size:13px; }
.walk-dots { display:flex; gap:9px; margin-top:9px; }
.walk-dots button { padding:0; width:24px; height:3px; border:0; background:#547080; cursor:pointer; }
.walk-dots button[aria-current] { background:#ddb778; box-shadow:0 0 12px #ddb77860; }
.walk-scroll-hint { color:#6f8b9d; font-size:11px; margin-left:20px; }
.walk-counter { margin-left:auto; color:#ddb778; font-size:12px; letter-spacing:.15em; }
.walk-progress { position:absolute; bottom:0; height:2px; left:0; right:0; background:#ffffff08; }
.walk-progress i { display:block; width:var(--walk-progress,0%); height:100%; background:linear-gradient(90deg,#87bfd5,#ddb778); }
.walkthrough-page .ticker { background:#10202e; }
.walkthrough-page .ticker-inner { background:none; }
.walkthrough-page .ticker-content { color:#9dafbc; }
.walkthrough-page .ticker-label { background:#735e3f; }
.walkthrough-page .blessing-band { background:#091520; border-color:#1b2b39; }
.walkthrough-page .footer { background:#060d16; }
@keyframes walkSculpture { 0%,100% { transform:rotateY(-12deg) rotateZ(4deg) translateY(0); } 50% { transform:rotateY(12deg) rotateZ(-4deg) translateY(-15px); } }
/* Reading mode is also the no-JavaScript fallback. */
.walk-journey:not(.walk-ready), .walk-journey.walk-reading { height:auto; }
.walk-journey:not(.walk-ready) .walk-viewport,.walk-reading .walk-viewport { position:relative; height:auto; min-height:0; }
.walk-journey:not(.walk-ready) .walk-world,.walk-reading .walk-world { position:relative; inset:auto; padding:90px 5% 30px; transform:none; }
.walk-journey:not(.walk-ready) .walk-scene,.walk-reading .walk-scene { position:relative; inset:auto; visibility:visible !important; opacity:1 !important; transform:none !important; pointer-events:auto !important; padding:50px 0; border-bottom:1px solid #92b5c425; }
.walk-journey:not(.walk-ready) .walk-scene-content,.walk-reading .walk-scene-content { max-height:none; overflow:visible; transform:none; }
.walk-journey:not(.walk-ready) .walk-controls,.walk-reading .walk-controls { display:none; }
.walk-reading .walk-scene-number { top:18px; }
.walk-reading .walk-ambient { position:fixed; }
@media (max-width:1000px) { .walk-scene .intro-inner { gap:35px; } .walk-scene .intro-logo { width:210px; height:210px; padding:40px; } .walk-scene .intro-logo:before { width:280px; height:280px; } .walk-scene .section-card { grid-template-columns:.9fr 1.6fr; gap:35px; } .walk-scene .feature-block-grid { grid-template-columns:1fr; } .walk-scroll-hint { display:none; } }
@media (max-width:700px) { .walkthrough-page .header-inner { padding:12px 0; } .walkthrough-page .title-area h1 { font-size:24px; } .walk-scene .intro-inner,.walk-scene .section-card,.walk-scene .official-sidebar { grid-template-columns:1fr; gap:32px; } .walk-scene .intro-text h2 { font-size:32px; } .walk-scene .intro-logo { margin:25px auto; } .walk-scene .intro-text p { font-size:14px; } .walk-scene .section-body p { font-size:14px; } .walk-scene .section-header h3 { font-size:27px; } .walk-scene .team-horizontal-head { display:block; } .walk-scene .team-horizontal-members { grid-template-columns:1fr; gap:30px; } .walk-scene .team-member { border-right:0; border-bottom:1px solid #ddb77830; padding-bottom:25px; } .walk-scene .officer-vertical { gap:20px; } .walk-scene .officer-photo,.walk-scene .officer-photo img { width:110px; height:135px; } .walk-scene .officer-info h4 { font-size:16px; } .walk-scene .side-card-title { font-size:27px; } .walk-scene .team-horizontal-head h3 { font-size:27px; } .walk-viewport { min-height:0; } .walk-world { inset:75px 6% 100px; } .walk-scene-content { overscroll-behavior:contain; } .walk-current { font-size:12px; } .walk-counter { font-size:10px; } .walk-controls { gap:12px; bottom:24px; } .walk-navigation { min-width:110px; } .walk-topline { top:20px; } .walk-orb { right:-35%; } }
@media (prefers-reduced-motion:reduce) { .walk-scene .intro-logo { animation:none; } .walk-world { transition:none; } }
.walk-viewport { height:calc(100svh - 194px); min-height:650px; }
.walk-scene-content { padding:24px 32px; }
.walk-scene .intro-text, .walk-scene .section-header { transform:none; }
@media (max-width:700px) { .walk-viewport { height:100svh; min-height:0; } .walk-scene-content { padding:18px 8px; } }
.walk-floor { bottom:-35%; height:85%; background:linear-gradient(#8fbfd83b 1px,transparent 1px),linear-gradient(90deg,#8fbfd83b 1px,transparent 1px); background-size:90px 90px; transform:perspective(700px) rotateX(60deg) translateY(var(--floor-shift,0px)); }
.walk-arch { border-color:#94c9dd55; box-shadow:inset 0 0 65px #76c9df0d,0 0 55px #76c9df0d; }
.walk-arch-far { border-color:#ddb77840; }

/* Restore the cream, blue and warm-gold palette throughout the walkthrough. */
body.walkthrough-page { --walk-ink:#203c4b; --walk-paper:#f4eee5; background:#f4eee5; color:#263d49; }
.walkthrough-page .topbar { background:#203c4b; }
.walkthrough-page .header { background:#faf7f0; border-color:#e0d8cd; }
.walkthrough-page .logo-wrap { background:#fff8; border-color:#fff; }
.walkthrough-page .title-area h1 { color:#203c4b; }
.walkthrough-page .title-area small,.walkthrough-page .title-area p { color:#637781; }
.walkthrough-page .header-badge { background:#fff9; color:#396273; border-color:#fff; }
.walkthrough-page .nav { background:#faf7f0; border-color:#e0d8cd; }
.walkthrough-page .menu a { color:#345463; }
.walkthrough-page .menu a:hover { color:#176b99; background:#fff; }
.walkthrough-page .nav-note { color:#74848a; }
.walkthrough-page .menu-btn { background:#fff; color:#345463; border-color:#e0d8cd; }
.walk-viewport { background:radial-gradient(ellipse at 15% 10%,#fffcf2,transparent 60%),linear-gradient(135deg,#ece4d7,#cfbca5); }
.walk-ambient:before { background:linear-gradient(115deg,transparent 25%,#ffffff25 48%,transparent 70%); }
.walk-floor { background:linear-gradient(#8a745a2b 1px,transparent 1px),linear-gradient(90deg,#8a745a2b 1px,transparent 1px); background-size:90px 90px; }
.walk-arch { border-color:#fffcf6a0; box-shadow:inset 0 0 65px #ffffff15,0 0 55px #ffffff15; transform:rotateY(calc(-30deg + var(--camera-turn,0deg))); }
.walk-arch-far { border-color:#a98b6650; }
.walk-orb { background:radial-gradient(circle at 30% 25%,#fff8de,#d0ab76 45%,#818e87); opacity:.3; box-shadow:inset -25px -25px 40px #736a4925,0 50px 100px #79644920; }
.walk-topline { color:#66777c; }
.walk-view-toggle { background:#fff7; color:#345463; border-color:#99a9a94d; }
.walk-mode-status { color:#176b99; font-size:11px; letter-spacing:0; }
.walk-scene-number { color:#96754c; }
.walk-scene .intro { background:radial-gradient(ellipse at 30% 0,#82c8d7,#438da9 45%,#126191); padding:34px; border-radius:22px; border:1px solid #c9f5ff60; box-shadow:4px 6px 0 #216d8b,0 30px 35px -20px #34586c55; }
.walk-scene .intro-text h2 { font-size:clamp(32px,3.7vw,56px); color:#fff; text-shadow:0 3px 10px #17526b20; }
.walk-scene .intro-text p { color:#e5f4f8; }
.walk-scene .intro-text .label { color:#f3faff; background:#ffffff14; border-color:#ffffff40; }
.walk-scene .intro-chip { background:#ffffffed; color:#285d77; border-color:#fff; }
.walk-scene .intro-logo { background:radial-gradient(circle at 30% 20%,#fff2cf,#f0bd7e 45%,#db8250 85%); border-color:#fff1c7; box-shadow:inset 10px 14px 40px #ffffff30,inset -20px -25px 30px #a5523530,0 35px 45px #17496a35; }
.walk-scene .section-kicker { color:#8a6a45; }
.walk-scene .section-kicker:before { background:#bc8952; }
.walk-scene .section-header h3 { color:#285568; }
.walk-scene .section-header p { color:#637781; }
.walk-scene .section-body p { color:#405967; }
.walk-scene .feature-block { border-color:#819ba450; }
.walk-scene .feature-icon { color:#277797; background:#ffffff70; border-color:#97b6c5; box-shadow:0 5px 12px #56758615; }
.walk-scene .feature-block strong { color:#285568; }
.walk-scene .feature-block span { color:#5a7480; }
.walk-scene .side-card-title { color:#285568; border-color:#bc895260; }
.walk-scene .officer-info h4,.walk-scene .team-member strong { color:#285568; }
.walk-scene .officer-post { color:#8a6a45; background:#fff7; border-color:#d1bc9e; }
.walk-scene .officer-info p,.walk-scene .team-member span { color:#637781; }
.walk-scene .quick-action { border-color:#819ba450; }
.walk-scene .quick-action b { color:#277797; background:#fff7; border-color:#97b6c5; }
.walk-scene .quick-action strong { color:#285568; }
.walk-scene .quick-action span { color:#637781; }
.walk-scene .team-horizontal-head { border-color:#bc895260; }
.walk-scene .team-horizontal-head h3 { color:#285568; }
.walk-scene .team-horizontal-head p { color:#637781; }
.walk-scene .team-member { border-color:#bc895260; }
.walk-scene .team-badge { color:#8a6a45; background:#fff7; border-color:#d1bc9e; }
.walk-prev,.walk-next { color:#285d77; background:#ffffff80; border-color:#77939e60; }
.walk-prev:hover,.walk-next:hover { background:#fff; }
.walk-current { color:#345463; }
.walk-dots button { background:#a8b9bc; }
.walk-dots button[aria-current] { background:#176b99; box-shadow:0 0 12px #176b9925; }
.walk-scroll-hint { color:#637781; }
.walk-counter { color:#8a6a45; }
.walk-progress { background:#ffffff40; }
.walk-progress i { background:linear-gradient(90deg,#438da9,#bc8952); }
.walkthrough-page .ticker { background:#faf7f0; }
.walkthrough-page .ticker-content { color:#80613f; }
.walkthrough-page .ticker-label { background:#bc8952; }
.walkthrough-page .blessing-band { background:#eee6da; border-color:#e0d5c5; }
.walkthrough-page .footer { background:#203c4b; }
@media (max-width:700px) { .walk-scene .intro { padding:24px 18px; } .walk-mode-status { max-width:100px; text-align:center; font-size:9px; } }

/* Architectural room shells move independently from the exhibit content. */
.walk-journey[hidden], .walk-reading-page[hidden] { display:none !important; }
.walk-room { position:absolute; inset:6% 3% 0; perspective:800px; transform-style:preserve-3d; transform:translateY(var(--room-rise,0px)) rotateY(var(--camera-turn,0deg)) rotateZ(var(--room-roll,0deg)); }
.room-wall { position:absolute; top:0; bottom:0; width:32%; background:linear-gradient(90deg,#a9998260,#ece3d644); border:1px solid #fffff880; }
.room-wall-left { left:-10%; transform:rotateY(68deg); transform-origin:left; }
.room-wall-right { right:-10%; transform:rotateY(-68deg); transform-origin:right; background:linear-gradient(90deg,#ece3d633,#a9998260); }
.room-ceiling { position:absolute; top:-15%; left:0; right:0; height:35%; background:linear-gradient(#fdf6e690,#f4e8d930); border-bottom:1px solid #fff9; transform:rotateX(-60deg); transform-origin:top; }
.room-frame { position:absolute; inset:8% 13% 7%; border:12px solid #e0d0b599; border-top-width:16px; border-radius:4px; background:none; box-shadow:inset 0 0 0 1px #fff,0 0 0 1px #a8957755,12px 15px 24px #826d4c15; transform:translateZ(calc(-350px + var(--room-depth,0px))); opacity:.6; }
.room-frame-two { transform:translateZ(calc(-1000px + var(--room-depth,0px))); border-color:#acc8cd80; opacity:.5; }
.room-frame-three { transform:translateZ(calc(-1700px + var(--room-depth,0px))); opacity:.4; }
.walk-arch { opacity:.25; }
.walk-orb { opacity:.2; }
.walk-journey[data-room='2'] .room-frame { border-color:#87b9c790; }
.walk-journey[data-room='3'] .room-frame { border-color:#d6af7290; }
.walk-room-name { color:#8a6a45; letter-spacing:.03em; }
.reading-toolbar { padding:16px 0; display:flex; justify-content:space-between; align-items:center; color:#637781; font-size:12px; }
.walk-replay { border:1px solid #a5bac4; border-radius:25px; padding:9px 16px; background:#fff8; color:#285568; font:inherit; cursor:pointer; }
.walk-reading-page .spatial-stage { margin-top:0; }
.walk-reading-mode .header-inner { padding:20px 0; }
.walk-reading-mode .title-area h1 { font-size:32px; }
.walk-reading-mode .logo-wrap { width:64px; height:64px; }
.walk-reading-mode .menu a { font-size:14px; }
.walk-reading-mode .walk-reading-page .spatial-stage { --scene-x:2deg; --scene-y:-3deg; }
@media (max-width:700px) { .walk-room-name { display:none; } .reading-toolbar { font-size:10px; gap:12px; } .walk-replay { padding:8px 12px; } .walk-reading-mode .title-area h1 { font-size:27px; } }

/* Calm intro hover; deeper motion is retained on the other reading cards. */
.walk-reading-page .intro { transition:transform .4s ease-out,box-shadow .4s ease; }
.walk-reading-page .spatial-stage:hover .intro { box-shadow:inset 0 2px 0 #ffffff70,3px 4px 0 #2a7e9f,6px 8px 0 #216d8c,9px 12px 0 #185873,0 40px 45px -25px #34586c80; }
.walk-reading-page .intro-logo { animation:calmOfficeLogo 10s ease-in-out infinite; }
.walk-reading-page .intro-logo:hover { scale:1.025; filter:drop-shadow(0 10px 8px #17496a30); }
@keyframes calmOfficeLogo { 0%,100% { transform:rotateY(-6deg) rotateZ(2deg) translateY(0); } 50% { transform:rotateY(-2deg) rotateZ(0deg) translateY(-5px); } }
/* Frosted information surfaces sit inside the architectural room. */
.walk-scene .section-card, .walk-scene .official-sidebar, .walk-scene .team-horizontal-card { padding:30px; border:1px solid #ffffffad; border-radius:12px; background:linear-gradient(135deg,#fffcf0b3,#eaf3f280); backdrop-filter:blur(9px); box-shadow:inset 0 1px 0 #ffffffd9,5px 7px 0 #9eb0ac22,0 24px 40px -25px #68756770; }
.walk-scene .section-card { gap:40px; }
.walk-scene .intro { background:radial-gradient(ellipse at 30% 0,#82c8d7df,#438da9de 45%,#126191e8); backdrop-filter:blur(8px); }
.walk-scene .team-horizontal-head { background:transparent; }
.walk-room { inset:5% 2% 0; }
.room-wall-left { background:repeating-linear-gradient(0deg,transparent 0 80px,#c7bdaa35 80px 82px),linear-gradient(90deg,#b7b5a49c,#eee6d766); }
.room-wall-right { background:linear-gradient(0deg,#baa88770 0 28%,#e7e3d58a 28%); }
.room-ceiling { background:repeating-linear-gradient(90deg,#e8e7dc85 0 120px,#babfb459 120px 122px); }
.room-frame { border-color:#c1b39c99; border-top-color:#b8ad9799; box-shadow:inset 0 0 0 2px #faf6e9,0 0 0 1px #8c917c66,10px 12px 20px #69756822; }
.office-light { position:absolute; top:5%; width:22%; height:12px; background:#fffefa; border:2px solid #d8d8c8; box-shadow:0 0 24px #ffffff9c,0 25px 70px #fff7; transform:rotateX(55deg); }
.office-light-one { left:15%; }
.office-light-two { right:15%; }
.office-window { position:absolute; top:20%; left:0; width:17%; height:39%; background:linear-gradient(90deg,transparent 48%,#e5e7dc 48% 52%,transparent 52%),linear-gradient(0deg,transparent 48%,#e5e7dc 48% 52%,transparent 52%),linear-gradient(145deg,#def1ec95,#91b4bd85); border:8px solid #dce0d3; box-shadow:inset 0 0 0 1px #849b9690,18px 18px 50px #ffffff40; transform:rotateY(38deg); }
.office-cabinet { position:absolute; right:0; bottom:12%; width:13%; height:43%; background:repeating-linear-gradient(0deg,#a3b0a480 0 19%,#6f837552 19% 20%); border:3px solid #92a08e80; box-shadow:8px 9px 0 #73826c35; transform:rotateY(-25deg); }
.office-cabinet:after { content:''; position:absolute; left:35%; top:9%; width:28%; height:3px; background:#60766a; box-shadow:0 70px 0 #60766a,0 140px 0 #60766a,0 210px 0 #60766a; }
.office-desk { position:absolute; bottom:2%; right:13%; width:29%; height:20%; background:linear-gradient(100deg,#947b5b70,#be9b6f80); border-top:12px solid #a98c6590; transform:rotateY(-20deg); box-shadow:14px 16px 25px #67594020; }
.office-desk i { position:absolute; width:30%; height:12%; background:#d7dacb; top:-27%; right:12%; transform:rotateX(45deg); box-shadow:0 -4px 0 #ebeee3,0 -8px 0 #c5d2c5; }
.office-sign { position:absolute; right:4%; top:12%; background:#174b699c; border:2px solid #d3be96a0; color:#fff7e1; padding:12px 22px; text-align:center; font-size:17px; box-shadow:0 6px 12px #56645120; }
.office-sign span { display:block; font-size:10px; margin-top:5px; color:#e9e9d8; }
.walk-orb { opacity:.08; }
.walk-arch { opacity:.12; }
@media (max-width:1000px) { .walk-scene .section-card,.walk-scene .official-sidebar,.walk-scene .team-horizontal-card { padding:24px; gap:28px; } .office-sign { font-size:13px; padding:8px 12px; } }
@media (max-width:700px) { .walk-scene .section-card,.walk-scene .official-sidebar,.walk-scene .team-horizontal-card { padding:20px 16px; } .office-sign { display:none; } .office-desk { right:3%; width:35%; } .office-window { width:22%; opacity:.5; } }
@media (prefers-reduced-motion:reduce) { .walk-reading-page .intro-logo { animation:none; } }

/* One office per scene. The doorway is visible only during room travel. */
.room-frame, .walk-arch, .walk-orb { display:none; }
.walk-room { inset:0; perspective:1000px; transform:translateY(var(--room-rise,0px)) rotateY(var(--camera-turn,0deg)) rotateZ(var(--room-roll,0deg)) scale(var(--room-scale,1)); }
.walk-ambient { background:linear-gradient(0deg,#b4a58d 0 24%,#e7e0d1 24% 86%,#f4f0e7 86%); }
.walk-room:before { content:''; position:absolute; left:0; right:0; top:86%; height:8px; background:linear-gradient(#d1c9ba,#a99d87); box-shadow:0 2px 2px #7a725133; }
.room-wall-left { left:-3%; width:24%; transform:rotateY(58deg); background:linear-gradient(0deg,#b5aa938f 0 25%,#e2ded09c 25%); border-color:#c6bdac; }
.room-wall-right { right:-3%; width:24%; transform:rotateY(-58deg); background:linear-gradient(0deg,#b5aa938f 0 25%,#e2ded09c 25%); border-color:#c6bdac; }
.room-ceiling { top:-3%; left:0; right:0; height:24%; transform:rotateX(-45deg); background:repeating-linear-gradient(90deg,#eeece3 0 125px,#d1cfc2 125px 127px); }
.office-window { left:1%; width:15%; height:36%; top:24%; background:linear-gradient(90deg,transparent 48%,#f1f1e7 48% 52%,transparent 52%),linear-gradient(0deg,transparent 48%,#f1f1e7 48% 52%,transparent 52%),repeating-linear-gradient(0deg,#a8c3c080 0 18px,#e3eeea80 18px 21px); border-color:#eeeeDF; }
.office-cabinet { right:2%; width:12%; height:39%; bottom:16%; background:repeating-linear-gradient(0deg,#a1ada0 0 19%,#7c8a7b 19% 20%); border-color:#8c9787; box-shadow:8px 9px 0 #73826c45; }
.office-desk { right:15%; bottom:3%; width:30%; height:16%; background:linear-gradient(100deg,#947b5b,#be9b6f); border-color:#a98c65; }
.office-sign { right:5%; top:16%; background:#174b69; border-color:#d3be96; box-shadow:0 5px 8px #56645130; }
.office-light { top:7%; height:10px; opacity:1; }
.walk-floor { opacity:.55; }
.walk-viewport:after { content:''; position:absolute; inset:0; z-index:5; pointer-events:none; opacity:var(--door-opacity,0); background:linear-gradient(90deg,#514433f2 0 13%,transparent 13% 87%,#514433f2 87%),linear-gradient(#514433f2 0 12%,transparent 12% 100%); box-shadow:inset 0 0 90px #372d2570; }
.walk-journey[data-room='1'] .walk-ambient { background:linear-gradient(0deg,#b7ac96 0 24%,#e7e5d8 24% 86%,#f4f0e7 86%); }
.walk-journey[data-room='2'] .walk-ambient { background:linear-gradient(0deg,#aaa693 0 24%,#dce5df 24% 86%,#f4f0e7 86%); }
.walk-journey[data-room='3'] .walk-ambient { background:linear-gradient(0deg,#b0a28a 0 24%,#e8e0ce 24% 86%,#f4f0e7 86%); }
.walk-journey[data-room='4'] .walk-ambient { background:linear-gradient(0deg,#b4a58d 0 24%,#e3e7de 24% 86%,#f4f0e7 86%); }
@media (max-width:700px) { .office-sign { display:block; top:10%; right:4%; font-size:10px; padding:7px 10px; } .office-sign span { font-size:7px; } .office-window { width:18%; } }

/* A camera travelling through physically separated office rooms. */
.walk-viewport { perspective:1400px; perspective-origin:50% 48%; }
.walk-ambient { display:none; }
.walk-world { inset:0; transform-style:preserve-3d; transition:none; }
.walk-scene { display:flex; justify-content:center; align-items:center; transform-style:preserve-3d; }
.walk-scene-content { position:relative; width:86%; max-height:calc(100% - 190px); margin-top:-10px; transform:translateZ(-220px); padding:24px 30px; transition:none; }
.walk-scene-number { top:90px; left:7%; transform:translateZ(-200px); }
.room-shell { position:absolute; inset:0; transform-style:preserve-3d; pointer-events:none; z-index:-1; }
.room-shell .room-frame { display:none; }
.room-backwall { position:absolute; inset:0; transform:translateZ(-1800px); background:linear-gradient(90deg,#e7e0d1 0 38%,transparent 38% 62%,#e7e0d1 62%),linear-gradient(#e7e0d1 0 12%,transparent 12%); border-bottom:10px solid #a99d87; }
.office-door { position:absolute; left:38%; top:12%; width:24%; height:88%; border:15px solid #9e896b; border-bottom:0; box-shadow:inset 0 0 0 3px #d8c7ab,0 0 20px #fff6; }
.room-shell .room-wall { width:1800px; height:100%; top:0; bottom:0; background:linear-gradient(0deg,#b4a992 0 25%,#e4dfd1 25%); border:0; }
.room-shell .room-wall-left { left:0; transform:rotateY(90deg); transform-origin:left; }
.room-shell .room-wall-right { right:0; transform:rotateY(-90deg); transform-origin:right; }
.room-shell .room-ceiling { position:absolute; top:0; left:0; right:0; height:1800px; transform:rotateX(-90deg); transform-origin:top; background:repeating-linear-gradient(90deg,#eeece3 0 125px,#d1cfc2 125px 127px); }
.room-shell:after { content:''; position:absolute; left:0; right:0; bottom:0; height:1800px; transform:rotateX(90deg); transform-origin:bottom; background:linear-gradient(#c4b59d 2px,transparent 2px),linear-gradient(90deg,#c4b59d 2px,transparent 2px),#dbcfba; background-size:160px 160px; }
.room-shell .office-window { transform:translateZ(-650px) rotateY(38deg); left:1%; width:16%; top:22%; height:38%; }
.room-shell .office-cabinet { transform:translateZ(-700px) rotateY(-12deg); right:2%; bottom:15%; }
.room-shell .office-desk { transform:translateZ(-450px) rotateY(-10deg); right:10%; bottom:3%; }
.room-shell .office-sign { transform:translateZ(-1600px); right:3%; top:20%; font-size:22px; }
.room-shell .office-light { transform:translateZ(-700px) rotateX(45deg); top:4%; }
.room-shell .office-light-two { transform:translateZ(-1400px) rotateX(45deg); }
.walk-viewport:after { display:none; }
.walk-scene-1 .room-backwall { background:linear-gradient(90deg,#e0e5d7 0 38%,transparent 38% 62%,#e0e5d7 62%),linear-gradient(#e0e5d7 0 12%,transparent 12%); }
.walk-scene-2 .room-backwall { background:linear-gradient(90deg,#d7e4e1 0 38%,transparent 38% 62%,#d7e4e1 62%),linear-gradient(#d7e4e1 0 12%,transparent 12%); }
@media (max-width:700px) { .walk-scene-content { width:94%; padding:12px; max-height:calc(100% - 160px); } .room-shell .office-sign { font-size:16px; } .walk-scene-number { top:65px; } }

/* Exterior signboard, opening entrance and alternating concrete-wall exhibits. */
.walk-scene-0 .room-shell { display:none; }
.building-facade { position:absolute; width:90%; height:90%; left:5%; top:4%; background:repeating-linear-gradient(0deg,transparent 0 95px,#b8b6a825 95px 97px),linear-gradient(90deg,#cbc8b8,#f0ecdf 45%,#c6c4b4); border:6px solid #b6af99; box-shadow:15px 18px 0 #aa9d8045,0 40px 60px #80735a25; transform:translateZ(-650px); transform-style:preserve-3d; backface-visibility:hidden; }
.building-roof { position:absolute; left:-5%; right:-5%; top:-28px; height:35px; background:linear-gradient(#ede6d3,#a69d85); border-top:7px solid #c5b799; box-shadow:0 14px 20px #80735a25; }
.building-window { position:absolute; top:51%; width:21%; height:27%; background:linear-gradient(90deg,transparent 47%,#e6e6db 47% 53%,transparent 53%),linear-gradient(0deg,transparent 47%,#e6e6db 47% 53%,transparent 53%),linear-gradient(140deg,#82aeb9,#d1e4de); border:8px solid #e8e3d1; box-shadow:0 0 0 2px #9d9e8b; }
.building-window-left { left:8%; }
.building-window-right { right:8%; }
.building-entry { position:absolute; left:36%; bottom:0; width:28%; height:48%; border:12px solid #a59a80; border-bottom:0; background:#253d4299; perspective:900px; transform-style:preserve-3d; }
.building-door { position:absolute; inset:0 auto 0 0; width:50%; background:linear-gradient(#829fa899,#315264aa); border:5px solid #52615b; backface-visibility:visible; box-shadow:inset 0 0 0 1px #c9d4c470; }
.building-door:after { content:''; position:absolute; right:10%; top:45%; width:5px; height:35px; background:#dbc7a2; box-shadow:0 2px 4px #203b3e70; }
.building-door-left { transform-origin:left; transform:rotateY(calc(-1 * var(--door-angle,0deg))); }
.building-door-right { left:auto; right:0; transform-origin:right; transform:rotateY(var(--door-angle,0deg)); }
.building-door-right:after { right:auto; left:10%; }
.building-steps { position:absolute; left:29%; right:29%; bottom:-28px; height:28px; background:repeating-linear-gradient(#d1c8b4 0 8px,#a99c83 8px 10px); box-shadow:0 20px 30px #65583d25; }
.walk-scene-0 .walk-scene-content { position:absolute; top:8%; width:76%; max-height:43%; transform:translateZ(-400px); padding:12px; }
.walk-scene-0 .intro { padding:24px 30px; border-radius:6px; background:linear-gradient(120deg,#276d89,#164d6d); box-shadow:0 6px 0 #143e57,0 14px 25px #23414c45; }
.walk-scene-0 .intro-inner { grid-template-columns:1fr 130px; gap:24px; }
.walk-scene-0 .intro-text h2 { font-size:clamp(25px,2.9vw,42px); margin:12px 0; }
.walk-scene-0 .intro-text p { font-size:13px; line-height:1.6; }
.walk-scene-0 .intro-highlights { margin-top:12px; }
.walk-scene-0 .intro-logo { width:120px; height:120px; padding:20px; animation:none; background:#ddd5b4; border-radius:12px; }
.walk-scene-0 .intro-logo:before,.walk-scene-0 .intro-logo:after { display:none; }
.walk-scene:not(.walk-scene-0) .walk-scene-content { width:92%; padding:35px; background:repeating-linear-gradient(0deg,transparent 0 110px,#979b8e0b 110px 112px),linear-gradient(135deg,#e3e3d8,#f0eee4); border:1px solid #b9bdad; border-radius:0; box-shadow:0 10px 30px #68756725; transform:translateZ(-240px); }
.walk-scene:not(.walk-scene-0) .section-card,.walk-scene:not(.walk-scene-0) .official-sidebar,.walk-scene:not(.walk-scene-0) .team-horizontal-card { background:#fcfbf270; box-shadow:0 4px 10px #60706515; border-radius:5px; }
@media (max-width:700px) { .walk-scene-0 .walk-scene-content { width:90%; top:6%; max-height:48%; } .walk-scene-0 .intro { padding:20px 16px; } .walk-scene-0 .intro-inner { grid-template-columns:1fr; } .walk-scene-0 .intro-logo { display:none; } .walk-scene-0 .intro-text h2 { font-size:25px; } .walk-scene-0 .intro-text p { font-size:12px; } .building-facade { width:96%; left:2%; } .building-entry { left:29%; width:42%; } .building-window { width:17%; } .building-window-left { left:4%; } .building-window-right { right:4%; } .walk-scene:not(.walk-scene-0) .walk-scene-content { padding:16px; } }
.walk-scene { will-change:transform; }
.walk-topline { background:#f9f6e566; padding:8px 12px; border-radius:5px; backdrop-filter:blur(4px); }

/* Original photographic office environments, with live wall-mounted content. */
.room-shell > :not(.photo-room) { display:none; }
.photo-room { position:absolute; inset:0; background-position:center; background-size:cover; background-repeat:no-repeat; transform:translateZ(-650px) scale(1.48); backface-visibility:hidden; }
.photo-room:after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,#15242c18,transparent 45%); }
.building-facade { width:100%; height:100%; left:0; top:0; border:0; box-shadow:none; background-position:center; background-size:cover; background-repeat:no-repeat; transform:translateZ(-650px) scale(1.48); }
.building-facade > :not(.building-entry) { display:none; }
.building-entry { left:43%; bottom:16%; width:14%; height:25%; border:3px solid #b7a784; background:#253d4280; }
.building-door { border-width:3px; }
.walk-scene-0 .walk-scene-content { top:9%; width:69%; max-height:36%; }
.walk-scene-0 .intro { padding:20px 26px; background:linear-gradient(120deg,#16486bdd,#103b59ed); border:2px solid #bba67f; }
.walk-scene-0 .intro-text h2 { font-size:clamp(24px,2.4vw,36px); }
.walk-scene-0 .intro-text p { font-size:12px; }
.walk-scene:not(.walk-scene-0) .walk-scene-content { width:78%; max-height:70%; background:linear-gradient(120deg,#e9e7dd,#f8f5ec); border:2px solid #c0b8a5; padding:25px; box-shadow:0 12px 30px #192d3645,inset 0 1px 0 #fff; }
.walk-scene:not(.walk-scene-0) .section-card,.walk-scene:not(.walk-scene-0) .official-sidebar,.walk-scene:not(.walk-scene-0) .team-horizontal-card { background:#f6f3e8; border:0; box-shadow:none; border-radius:0; }
.walk-scene-1 .walk-scene-content { width:71%; margin-right:12%; }
.walk-scene-2 .walk-scene-content { width:80%; margin-top:-60px; }
.walk-scene-3 .walk-scene-content { width:65%; margin-right:12%; }
.walk-scene-3 .official-sidebar { grid-template-columns:1fr; }
.walk-scene-3 .officer-vertical { grid-template-columns:1fr 1fr; }
.walk-scene-4 .walk-scene-content { width:75%; margin-left:10%; }
.walk-scene .section-header h3 { font-size:clamp(25px,2.6vw,38px); }
.walk-scene .section-body p { font-size:14px; }
@media (max-width:700px) { .walk-scene-0 .walk-scene-content { width:94%; top:8%; max-height:44%; } .walk-scene-0 .intro { padding:18px 14px; } .walk-scene-0 .intro-text h2 { font-size:25px; } .walk-scene:not(.walk-scene-0) .walk-scene-content { width:94%; margin:0; padding:16px; max-height:calc(100% - 170px); } .building-entry { width:24%; left:38%; bottom:16%; } .photo-room { background-position:center; } }
.room-shell:after { display:none; }
.walk-controls { height:50px; bottom:30px; background:#f7f1e3c9; padding:8px 16px; border-radius:8px; backdrop-filter:blur(6px); }
.building-entry { left:45.5%; top:54%; bottom:auto; width:9%; height:18%; border-color:#5a5b48; }
.building-door { background:linear-gradient(#3f58599c,#1a323bcc); border-color:#343e36; }
.walk-scene-0 .walk-scene-content { top:38%; width:40%; max-height:18%; }
.walk-scene-0 .intro { padding:10px 14px; }
.walk-scene-0 .intro-inner { grid-template-columns:1fr 45px; gap:12px; }
.walk-scene-0 .intro-text .label,.walk-scene-0 .intro-text p,.walk-scene-0 .intro-highlights { display:none; }
.walk-scene-0 .intro-text h2 { font-size:clamp(18px,1.7vw,24px); margin:0; line-height:1.4; }
.walk-scene-0 .intro-logo { width:44px; height:44px; padding:4px; border-radius:4px; }
.walk-scene-1 .walk-scene-content { position:absolute; top:14%; left:8%; width:48%; margin:0; max-height:62%; transform:translateZ(-120px); }
.walk-scene-1 .section-card { display:block; padding:18px; }
.walk-scene-1 .section-header h3 { font-size:27px; margin:10px 0; }
.walk-scene-1 .section-header p { font-size:12px; margin-bottom:16px; }
.walk-scene-1 .section-body p { font-size:13px; line-height:1.75; }
.walk-scene-3 .walk-scene-content { position:absolute; top:12%; left:8%; width:52%; margin:0; max-height:65%; }
.walk-scene-3 .officer-photo,.walk-scene-3 .officer-photo img { width:95px; height:115px; }
.walk-scene-3 .officer-info h4 { font-size:17px; }
.walk-scene-3 .side-card-title { font-size:27px; }
.walk-scene-4 .walk-scene-content { position:absolute; top:12%; right:5%; width:50%; margin:0; max-height:70%; }
.walk-scene-4 .team-horizontal-head h3 { font-size:25px; }
.walk-scene-4 .team-horizontal-head { display:block; }
.walk-scene-4 .team-horizontal-members { gap:18px; }
.walk-scene-4 .team-member { padding-right:10px; }
.walk-scene-4 .team-member strong { font-size:16px; }
@media (max-width:700px) { .walk-scene-0 .walk-scene-content { top:34%; width:80%; max-height:22%; } .walk-scene-0 .intro-text h2 { font-size:20px; } .walk-scene-1 .walk-scene-content,.walk-scene-3 .walk-scene-content,.walk-scene-4 .walk-scene-content { position:relative; top:auto; left:auto; right:auto; width:94%; margin:0; max-height:calc(100% - 180px); } .building-entry { width:17%; left:41.5%; top:54%; } .walk-controls { padding:6px 10px; } }
#walkJourney .walk-scene-1 .walk-scene-content { position:absolute; top:14%; left:8%; width:48%; margin:0; max-height:62%; }
#walkJourney .walk-scene-2 .walk-scene-content { position:absolute; top:10%; left:12%; width:76%; margin:0; max-height:50%; }
#walkJourney .walk-scene-3 .walk-scene-content { position:absolute; top:12%; left:8%; width:52%; margin:0; max-height:65%; }
#walkJourney .walk-scene-4 .walk-scene-content { position:absolute; top:14%; right:3%; width:42%; margin:0; max-height:65%; }
#walkJourney .walk-scene-4 .team-horizontal-members { grid-template-columns:1fr; padding-top:18px; gap:12px; }
#walkJourney .walk-scene-4 .team-member { border-right:0; border-bottom:1px solid #bc895230; padding-bottom:10px; }
#walkJourney .walk-scene-4 .officer-photo-2 img { width:65px; height:65px; object-fit:cover; }
@media (max-width:700px) { #walkJourney .walk-scene:not(.walk-scene-0) .walk-scene-content { position:relative; top:auto; left:auto; right:auto; width:94%; margin:0; max-height:calc(100% - 180px); } }

/* Larger content, a closer exterior, and a restrained graphic finish. */
.building-facade { transform:translateZ(-650px) scale(1.85); }
#walkJourney .walk-scene-0 .walk-scene-content { top:31%; width:48%; max-height:28%; transform:translateZ(-220px); }
.walk-scene-0 .intro { padding:18px 22px; border-width:3px; box-shadow:0 5px 0 #173f57,0 14px 22px #132d3c50; }
.walk-scene-0 .intro-inner { grid-template-columns:1fr 66px; gap:18px; }
.walk-scene-0 .intro-text h2 { font-size:clamp(25px,2.5vw,36px); line-height:1.4; }
.walk-scene-0 .intro-logo { width:64px; height:64px; padding:6px; }
.building-entry { top:55%; height:19%; }
.photo-room { filter:contrast(1.04) saturate(.88); }
.photo-room:after { background:linear-gradient(130deg,#e9f2ef12,transparent 55%,#183e481a); }
#walkJourney .walk-scene:not(.walk-scene-0) .walk-scene-content { transform:translateZ(-60px); border:3px solid #c9b891; box-shadow:6px 7px 0 #77675135,0 20px 35px #183c3e45; }
#walkJourney .walk-scene-1 .walk-scene-content { top:12%; left:5%; width:64%; max-height:72%; }
#walkJourney .walk-scene-2 .walk-scene-content { top:9%; left:5%; width:90%; max-height:75%; }
#walkJourney .walk-scene-3 .walk-scene-content { top:10%; left:5%; width:84%; max-height:77%; }
#walkJourney .walk-scene-4 .walk-scene-content { top:10%; right:3%; width:60%; max-height:77%; }
.walk-scene .section-header h3, .walk-scene-1 .section-header h3 { font-size:clamp(32px,3.1vw,45px); }
.walk-scene .section-header p, .walk-scene-1 .section-header p { font-size:16px; line-height:1.7; }
.walk-scene .section-body p, .walk-scene-1 .section-body p { font-size:18px; line-height:1.8; }
.walk-scene .section-kicker { font-size:12px; }
.walk-scene .feature-block strong { font-size:17px; }
.walk-scene .feature-block span { font-size:15px; line-height:1.65; }
.walk-scene .feature-icon { width:44px; height:44px; font-size:16px; }
.walk-scene-3 .side-card-title { font-size:36px; padding-bottom:16px; }
.walk-scene-3 .officer-vertical { grid-template-columns:1fr 1fr; gap:35px; padding-top:24px; }
.walk-scene-3 .officer-card { align-items:center; text-align:center; padding:20px; border:1px solid #c1b490; border-radius:8px; background:linear-gradient(135deg,#fffdf6,#e9e3d6); box-shadow:4px 5px 0 #c0b39870; }
.walk-scene-3 .officer-photo { width:220px; height:285px; border-radius:6px; overflow:hidden; }
.walk-scene-3 .officer-photo img { width:220px; height:285px; object-fit:cover; border:0; border-radius:6px; box-shadow:none; }
.walk-scene-3 .officer-post { font-size:15px; padding:7px 12px; }
.walk-scene-3 .officer-info h4 { font-size:23px; line-height:1.5; margin-top:12px; }
.walk-scene-3 .officer-info p { font-size:14px; }
.walk-scene-4 .team-horizontal-head h3 { font-size:30px; }
.walk-scene-4 .team-horizontal-head p { font-size:16px; }
.walk-scene-4 .team-member strong { font-size:21px; }
.walk-scene-4 .team-member span { font-size:16px; }
#walkJourney .walk-scene-4 .officer-photo-2 img { width:80px; height:80px; }
@media (max-width:1000px) { .walk-scene-3 .officer-photo,.walk-scene-3 .officer-photo img { width:170px; height:220px; } .walk-scene-3 .officer-info h4 { font-size:19px; } }
@media (max-width:700px) { #walkJourney .walk-scene-0 .walk-scene-content { top:29%; width:90%; max-height:30%; } .walk-scene-0 .intro-text h2 { font-size:25px; } #walkJourney .walk-scene:not(.walk-scene-0) .walk-scene-content { position:relative; top:auto; left:auto; right:auto; width:94%; margin:0; max-height:calc(100% - 180px); } .walk-scene .section-header h3,.walk-scene-1 .section-header h3 { font-size:28px; } .walk-scene .section-body p,.walk-scene-1 .section-body p { font-size:16px; } .walk-scene .section-header p,.walk-scene-1 .section-header p { font-size:14px; } .walk-scene-3 .officer-vertical { grid-template-columns:1fr; } .walk-scene-3 .officer-photo,.walk-scene-3 .officer-photo img { width:190px; height:245px; } .walk-scene-3 .side-card-title { font-size:28px; } }

/* Six stops, with each officer occupying a separate furnished cabin. */
.walk-journey { height:740vh; }
.building-facade { transform:translateZ(-650px) scale(1.95); }
#walkJourney .walk-scene-0 .walk-scene-content { top:29%; width:64%; max-height:32%; transform:translateZ(-100px); }
.walk-scene-0 .intro-text h2 { font-size:clamp(30px,3.4vw,49px); }
.walk-scene-0 .intro { padding:22px 26px; }
.walk-scene-0 .intro-inner { grid-template-columns:1fr 80px; }
.walk-scene-0 .intro-logo { width:78px; height:78px; }
#walkJourney .walk-scene-1 .walk-scene-content { width:74%; left:3%; max-height:76%; }
#walkJourney .walk-scene-2 .walk-scene-content { width:92%; left:4%; max-height:77%; }
.walk-scene .section-header h3,.walk-scene-1 .section-header h3 { font-size:clamp(35px,3.5vw,50px); }
.walk-scene .section-body p,.walk-scene-1 .section-body p { font-size:20px; line-height:1.8; }
.walk-scene .section-header p,.walk-scene-1 .section-header p { font-size:18px; }
.walk-scene .feature-block strong { font-size:19px; }
.walk-scene .feature-block span { font-size:16px; }
#walkJourney .officer-room .walk-scene-content { position:absolute; top:13%; left:5%; right:auto; width:43%; max-height:58%; margin:0; padding:28px; transform:translateZ(-60px); background:linear-gradient(120deg,#f0ece0f2,#fffaf0ee); border:2px solid #c7b58f; }
#walkJourney .officer-room-rdc .walk-scene-content { left:auto; right:5%; }
.officer-room-tag { display:inline-block; color:#957443; border-bottom:2px solid #ba9762; padding-bottom:10px; font-size:19px; }
.officer-room-wall h3 { font-size:30px; color:#385d6e; line-height:1.6; margin:24px 0 16px; }
.officer-room-wall h2 { font-size:clamp(30px,3vw,43px); color:#174c68; line-height:1.55; margin:0 0 20px; }
.officer-room-wall p { color:#617581; font-size:20px; line-height:1.6; }
#walkJourney .walk-scene-5 .walk-scene-content { position:absolute; top:10%; right:3%; left:auto; width:62%; margin:0; max-height:77%; }
.walk-scene-5 .team-horizontal-head { display:block; }
.walk-scene-5 .team-horizontal-head h3 { font-size:32px; }
.walk-scene-5 .team-horizontal-head p { font-size:18px; }
.walk-scene-5 .team-horizontal-members { grid-template-columns:1fr; gap:16px; padding-top:20px; }
.walk-scene-5 .team-member { border-right:0; border-bottom:1px solid #bc895230; padding-bottom:12px; }
.walk-scene-5 .team-member strong { font-size:23px; }
.walk-scene-5 .team-member span { font-size:18px; }
.walk-scene-5 .officer-photo-2 img { width:85px; height:85px; object-fit:cover; }
.room-transit-door { position:absolute; left:18%; right:18%; top:8%; bottom:0; transform:translateZ(-1250px); transform-style:preserve-3d; border:22px solid #8b6c49; border-bottom:0; box-shadow:inset 0 0 0 4px #ddc5a0,0 0 22px #efe4c750; opacity:0; pointer-events:none; }
.transit-leaf { position:absolute; top:0; bottom:0; width:50%; background:linear-gradient(90deg,#835e3a,#b18b5c 55%,#926940); border:3px solid #6b4b30; box-shadow:inset 0 0 0 15px #a17b5020; }
.transit-leaf:after { content:''; position:absolute; top:48%; right:8%; width:6px; height:50px; background:#e0c598; box-shadow:0 4px 8px #3d2b22; }
.transit-leaf-left { left:0; transform-origin:left; transform:rotateY(calc(-1 * var(--interior-door-angle,0deg))); }
.transit-leaf-right { right:0; transform-origin:right; transform:rotateY(var(--interior-door-angle,0deg)); }
.transit-leaf-right:after { left:8%; right:auto; }
@media (max-width:700px) { #walkJourney .walk-scene-0 .walk-scene-content { width:94%; top:27%; max-height:34%; } .walk-scene-0 .intro-text h2 { font-size:28px; } #walkJourney .walk-scene:not(.walk-scene-0) .walk-scene-content { position:relative; top:auto; left:auto; right:auto; width:94%; margin:0; max-height:calc(100% - 180px); } #walkJourney .officer-room .walk-scene-content { width:84%; max-height:46%; align-self:flex-end; margin-bottom:115px; padding:18px; } .officer-room-wall h2 { font-size:26px; } .officer-room-wall h3 { font-size:20px; margin:12px 0; } .officer-room-wall p { font-size:14px; margin-bottom:0; } .officer-room-tag { font-size:14px; } .walk-scene .section-body p,.walk-scene-1 .section-body p { font-size:17px; } .walk-scene .section-header h3,.walk-scene-1 .section-header h3 { font-size:30px; } }

/* A photographic corridor covers the travel interval; labels appear only on arrival. */
.walk-world { z-index:1; }
.walk-corridor { position:absolute; inset:0; z-index:4; pointer-events:none; overflow:hidden; opacity:var(--corridor-opacity,0); }
.corridor-motion { position:absolute; inset:-3%; background:url('../image/office-journey/office-corridor.png') center / cover no-repeat; transform:translateY(var(--corridor-step,0px)) scale(var(--corridor-scale,1)) perspective(1100px) rotateY(var(--corridor-turn,0deg)); transform-origin:50% 50%; }
.walk-topline,.walk-controls { z-index:10; }
.room-transit-door { display:none; }
#walkJourney .walk-scene-5 .walk-scene-content { position:absolute; top:7%; left:5%; right:5%; bottom:17%; width:90%; height:auto; max-height:none; margin:0; padding:0; overflow:visible; background:none; border:0; box-shadow:none; transform:translateZ(-80px); }
.audit-room-title { position:absolute; top:0; left:3%; right:3%; padding:20px 24px; border:2px solid #c7b58f; background:#fcf6e5f2; box-shadow:0 8px 16px #213f3d30; text-align:center; }
.audit-room-title h2 { font-size:clamp(29px,3.1vw,45px); color:#174c68; line-height:1.5; margin:0; }
.audit-room-names { position:absolute; bottom:0; left:0; right:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.audit-room-names > div { padding:16px 20px; text-align:center; background:#143c53ed; border:1px solid #cfb381; box-shadow:0 7px 12px #152e3d40; }
.audit-room-names strong { display:block; color:#fff7e2; font-size:24px; line-height:1.6; }
.audit-room-names span { display:block; color:#c4dce5; font-size:17px; }
@media (max-width:700px) { #walkJourney .walk-scene-5 .walk-scene-content { position:absolute; top:10%; left:4%; right:4%; bottom:18%; width:92%; max-height:none; } .audit-room-title { padding:14px; } .audit-room-title h2 { font-size:25px; } .audit-room-names { gap:6px; } .audit-room-names > div { padding:9px 5px; } .audit-room-names strong { font-size:13px; } .audit-room-names span { font-size:11px; } }
.walk-journey,.walk-reading-page { overflow-anchor:none; }
/* Each room has a long stationary reading interval before the shorter journey. */
.walk-journey { height:1100vh; }

/* A compact cinematic tour: no long scroll track or exaggerated perspective turns. */
.cinematic-tour { height:auto !important; }
.cinematic-tour .walk-viewport { position:relative; min-height:600px; background:#e9dfcf; }
.cinematic-tour .walk-world { position:absolute; inset:0; transform:none !important; perspective:none; }
.cinematic-tour .walk-scene { transform:none !important; filter:none !important; transition:none; }
.cinematic-tour .room-shell { z-index:-1; transform:none; }
.cinematic-tour .photo-room { transform:none; inset:0; background-size:cover; background-position:center; filter:contrast(1.02) saturate(.95); }
.cinematic-tour .building-facade { transform:none; background-size:115% auto; background-position:center; width:100%; height:100%; }
.cinematic-tour .walk-scene-content { transform:none !important; }
.cinematic-tour .walk-scene-0 .walk-scene-content { top:29%; width:58%; max-height:34%; }
.cinematic-tour .walk-scene-0 .intro-text h2 { font-size:clamp(30px,3.1vw,45px); }
.cinematic-tour .walk-corridor { opacity:0; }
.cinematic-tour .corridor-motion { transform:none; }
.cinematic-tour .walk-scroll-hint { font-size:12px; }
.cinematic-tour.tour-moving .walk-dots { pointer-events:none; }
#walkJourney.cinematic-tour .walk-scene-1 .walk-scene-content { width:60%; left:4%; top:13%; max-height:73%; }
#walkJourney.cinematic-tour .walk-scene-2 .walk-scene-content { width:86%; left:7%; top:10%; max-height:76%; }
#walkJourney.cinematic-tour .officer-room .walk-scene-content { width:41%; top:14%; max-height:60%; }
#walkJourney.cinematic-tour .walk-scene-5 .walk-scene-content { top:6%; bottom:17%; }
@media (max-width:700px) { .cinematic-tour .building-facade { background-size:auto 115%; } #walkJourney.cinematic-tour .walk-scene:not(.walk-scene-0) .walk-scene-content { width:92%; left:auto; right:auto; top:auto; position:relative; max-height:calc(100% - 180px); } #walkJourney.cinematic-tour .officer-room .walk-scene-content { max-height:45%; width:86%; } #walkJourney.cinematic-tour .walk-scene-5 .walk-scene-content { position:absolute; top:8%; left:4%; bottom:18%; width:92%; max-height:none; } .cinematic-tour .walk-scene-0 .walk-scene-content { width:94%; top:28%; } }
@media (max-width:700px) {
    .cinematic-tour .officer-room-collector .photo-room { background-position:75% center; }
    .cinematic-tour .officer-room-rdc .photo-room { background-position:20% center; }
    .cinematic-tour .walk-scene-5 .photo-room { background-size:100% auto; background-position:center 55%; background-color:#eee4d2; }
}

