/* Shared motion language for itineraries, destinations, advisors and guides. */
:root{--motion-ease:cubic-bezier(.2,.7,.25,1);--motion-lift:-6px;--motion-card-scale:1.035;--motion-zoom:1.06}
.motion-card{position:relative;transition:transform .44s var(--motion-ease),box-shadow .44s var(--motion-ease),opacity .65s var(--motion-ease);will-change:auto}
.motion-card img{transition:transform .85s var(--motion-ease)}
.motion-card .arch-copy,.motion-card .motion-copy{transition:transform .44s var(--motion-ease)}
.motion-card .motion-arrow{display:inline-block;transition:transform .32s var(--motion-ease)}
.motion-card.motion-ready:not(.is-revealed){opacity:0;transform:translateY(22px)}
.motion-card.is-revealed{opacity:1}
.motion-explainer nav>.motion-card{border-radius:5px}
.hero-visual.motion-card.is-demo,.hero-visual.motion-card:focus-within,.motion-explainer nav>.motion-card.is-demo,.motion-explainer nav>.motion-card:focus-within{box-shadow:0 15px 30px #124b6814}
.arch-track{padding:22px 10px 32px;margin-inline:-10px;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-padding-left:10px}
.arch-card.motion-card>a{box-shadow:0 9px 21px #124b6810;transition:box-shadow .45s var(--motion-ease),transform .45s var(--motion-ease);outline-offset:5px}
.arch-card.motion-card>a::before{content:'';position:absolute;inset:0;z-index:2;background:linear-gradient(transparent 35%,#031f2c33);opacity:0;transition:opacity .44s var(--motion-ease);pointer-events:none}
.arch-card .arch-copy{z-index:3}
.arch-card.is-selected>a{box-shadow:0 15px 30px #124b6829;transform:translateY(-3px)}
.arch-card.is-selected .arch-explore{border-color:#fff}
.arch-card.is-selected .arch-explore::after{transform:scaleX(1)}
.arch-explore{position:relative}
.arch-explore::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .38s var(--motion-ease)}
.journey-progress{height:2px;background:var(--line);position:relative;overflow:hidden;margin-top:6px;border-radius:2px}
.journey-progress>span{position:absolute;inset:0 auto 0 0;width:33.333%;background:var(--primary);transform:translateX(0);transition:transform .48s var(--motion-ease)}
.journey-counter b{display:inline-block}
.journey-controls button{transition:background .25s ease,color .25s ease,transform .25s var(--motion-ease),border-color .25s ease}
.journey-controls button:hover,.journey-controls button:focus-visible{background:var(--deep);color:#fff;border-color:var(--deep);transform:translateY(-2px)}
.journey-controls button:active{transform:translateY(0) scale(.96)}
.destination.motion-card>div{overflow:hidden;border-radius:5px}
.advisor.motion-card,.shenzhen-feature.motion-card,.guide-links>.motion-card{border-radius:7px}
.destination.motion-card:focus-visible,.arch-card.motion-card>a:focus-visible{outline:3px solid var(--primary);outline-offset:5px}
.motion-card.is-demo,.motion-card:focus-within{transform:translateY(var(--motion-lift)) scale(var(--motion-card-scale));z-index:2}
.motion-card.is-demo img,.motion-card:focus-within img{transform:scale(var(--motion-zoom))}
.motion-card.is-demo .arch-copy,.motion-card:focus-within .arch-copy,.motion-card.is-demo .motion-copy,.motion-card:focus-within .motion-copy{transform:translateY(-4px)}
.motion-card.is-demo .motion-arrow,.motion-card:focus-within .motion-arrow{transform:translateX(4px)}
.arch-card.is-demo>a,.arch-card:focus-within>a{box-shadow:0 19px 36px #124b6833;transform:none}
.arch-card.is-demo>a::before,.arch-card:focus-within>a::before{opacity:1}
.arch-card.is-demo .arch-explore::after,.arch-card:focus-within .arch-explore::after{transform:scaleX(1)}
.advisor.is-demo,.advisor:focus-within,.shenzhen-feature.is-demo,.shenzhen-feature:focus-within,.guide-links>.is-demo,.guide-links>:focus-within{box-shadow:0 15px 30px #124b6814}
@media(hover:hover) and (pointer:fine){
  .motion-card:hover{transform:translateY(var(--motion-lift)) scale(var(--motion-card-scale));z-index:2}
  .motion-card:hover img,.arch-card.motion-card>a:hover img{transform:scale(var(--motion-zoom))}
  .motion-card:hover .arch-copy,.motion-card:hover .motion-copy{transform:translateY(-4px)}
  .motion-card:hover .motion-arrow{transform:translateX(4px)}
  .arch-card:hover>a{box-shadow:0 19px 36px #124b6833;transform:none}
  .arch-card:hover>a::before{opacity:1}
  .arch-card:hover .arch-explore::after{transform:scaleX(1)}
  .advisor.motion-card:hover,.shenzhen-feature.motion-card:hover,.guide-links>.motion-card:hover{box-shadow:0 15px 30px #124b6814}
  .hero-visual.motion-card:hover,.motion-explainer nav>.motion-card:hover{box-shadow:0 15px 30px #124b6814}
}
@media(hover:none){.motion-card:focus-within{transform:none}.motion-card:focus-within img,.motion-card:focus-within .arch-copy,.motion-card:focus-within .motion-copy,.motion-card:focus-within .motion-arrow{transform:none}}
@media(max-width:600px){.arch-track{padding:22px var(--pad) 32px 10px;margin-inline:-10px calc(-1 * var(--pad));scroll-padding-left:10px}.arch-card.motion-card{flex-basis:calc(100% - 34px)}.journey-progress{margin-top:4px}}
html[data-motion="off"] .motion-card,html[data-motion="off"] .motion-card *,html[data-motion="off"] .motion-card *::before,html[data-motion="off"] .motion-card *::after,html[data-motion="off"] .journey-progress>span,html[data-motion="off"] .journey-controls button{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}
html[data-motion="off"] .arch-card>a::before{opacity:0!important}
html[data-motion="off"] .arch-track{scroll-behavior:auto}
html[data-motion="off"] .journey-progress>span{transform:translateX(var(--progress,0%))!important}
@media(prefers-reduced-motion:reduce){html:not([data-motion-preview="on"]) .motion-card,html:not([data-motion-preview="on"]) .motion-card *,html:not([data-motion-preview="on"]) .motion-card *::before,html:not([data-motion-preview="on"]) .motion-card *::after,html:not([data-motion-preview="on"]) .journey-controls button{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}html:not([data-motion-preview="on"]) .arch-track{scroll-behavior:auto}html:not([data-motion-preview="on"]) .arch-card.motion-card>a::before{opacity:0!important}html:not([data-motion-preview="on"]) .journey-progress>span{transition:none!important}}
/* Card motion starts enabled; the static comparison remains available. */
html[data-motion-preview="on"][data-motion="on"] .motion-card{transition:transform .44s var(--motion-ease),box-shadow .44s var(--motion-ease),opacity .65s var(--motion-ease)!important;transition-delay:var(--motion-delay,0ms)!important}
html[data-motion-preview="on"][data-motion="on"] .motion-card img{transition:transform .85s var(--motion-ease)!important}
html[data-motion-preview="on"][data-motion="on"] .arch-card>a{transition:box-shadow .45s var(--motion-ease),transform .45s var(--motion-ease)!important}
html[data-motion-preview="on"][data-motion="on"] .arch-copy,html[data-motion-preview="on"][data-motion="on"] .motion-copy,html[data-motion-preview="on"][data-motion="on"] .motion-arrow{transition:transform .44s var(--motion-ease)!important}
html[data-motion-preview="on"][data-motion="on"] .journey-progress>span{transition:transform .48s var(--motion-ease)!important}
.concept-bar .motion-page-toggle{font:inherit;background:transparent;border:1px solid var(--line);border-radius:3px;padding:3px 7px;color:var(--primary)}
