/* Original Apple-inspired visual language; interaction polish only. */
.skip-link{position:fixed;z-index:100;top:12px;left:16px;padding:12px 18px;border-radius:24px;background:#1d1d1f;color:#fff;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.global-nav nav a{display:flex;align-items:center;min-height:44px}
.nav-cta{min-height:40px;display:flex;align-items:center;justify-content:center}
.nav-menu-toggle{display:none}
.reading-progress{width:100%;transform:scaleX(0);transform-origin:left;transition:none}
.hero h1 span{animation-duration:1s}
.hero-description,.hero>.blue-link{animation-duration:.9s}
.about-brand>img{height:auto;object-fit:contain;flex:0 0 auto}
.cinema{height:165svh;min-height:1000px}
.cinema-sticky{height:calc(100svh - 76px)}
.cinema-frame{width:100%;height:100%;border-radius:0;clip-path:inset(12.5% 6% round 32px);will-change:auto}
.cinema-frame>picture{display:block;width:100%;height:100%}
.cinema-frame img{width:100%;height:100%;object-fit:cover;will-change:auto}
.cinema-copy{will-change:auto}
.motion-ready .reveal{transition-duration:.75s}
.year-metrics strong,.metric-row strong{font-variant-numeric:tabular-nums}
.year-tabs button,.rail-controls button{min-height:44px;min-width:44px}
.project-card>button{inset:0;width:100%;height:100%;background:transparent;border-radius:inherit;z-index:2;transform:none!important}
.project-card>button .plus-icon{position:absolute;right:22px;bottom:22px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#fff;color:#1d1d1f;transition:transform .25s,background .25s}
.project-card>button:hover{background:transparent}
.project-card>button:hover .plus-icon{transform:rotate(90deg);background:#f5f5f7}
.project-card:focus-within{outline:3px solid #0071e3;outline-offset:4px}
.project-card>button:focus-visible{outline:none}
.dialog-close,.yiran-dismiss,.proof-close{width:44px;height:44px;min-width:44px;min-height:44px}
.yiran-dismiss{margin-bottom:-58px}
.proof-viewer[open]{display:flex;flex-direction:column}
.proof-toolbar{flex:none}
.proof-stage{flex:1;min-height:0;height:auto!important;scroll-behavior:auto}
.proof-stage:focus-visible{outline:2px solid #0071e3;outline-offset:-3px}
.proof-toolbar button:not(.proof-close),.proof-toolbar a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:760px){
  .global-nav{gap:12px;padding-inline:20px}
  .nav-cta{margin-left:auto}
  .nav-menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;flex:none;background:transparent;border-radius:50%;padding:10px}
  .nav-menu-toggle span{width:19px;height:1.5px;border-radius:1px;background:#1d1d1f;transition:transform .22s}
  .menu-open .nav-menu-toggle span:first-child{transform:translateY(3.75px) rotate(45deg)}
  .menu-open .nav-menu-toggle span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
  .global-nav nav{position:absolute;left:0;right:0;top:75px;display:flex;flex-direction:column;gap:0;padding:8px 28px 24px;background:#fffffff7;backdrop-filter:blur(20px);border-bottom:1px solid #e8e8ed;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility .2s}
  .global-nav nav a,.global-nav nav a:first-child,.global-nav nav a:last-child{display:flex;min-height:50px;font-size:20px;font-weight:600;letter-spacing:-.025em}
  .global-nav.menu-open nav{visibility:visible;opacity:1;pointer-events:auto;transform:none}
}
@media(max-width:640px){
  .about-brand{gap:clamp(16px,5vw,36px)}
  .about-brand>img{width:clamp(112px,36vw,145px)}
  .about-brand>p{flex:0 0 auto;white-space:nowrap}
  .global-nav nav{top:63px}
  .cinema{height:150svh;min-height:780px}
  .cinema-sticky{height:calc(100svh - 64px);top:64px}
  .cinema-frame{clip-path:inset(10% 4% round 24px)}
  .proof-toolbar h2{flex-basis:calc(100% - 60px)}
  .yiran-dismiss{margin-bottom:-58px}
  .contact-wechat-hint{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  .cinema{height:auto;min-height:0}
  .cinema-sticky{position:relative;top:auto;height:75svh;min-height:400px}
  .cinema-frame{clip-path:none!important}
  .cinema-frame img{transform:none!important}
  .cinema-copy{opacity:1!important;transform:none!important}
  .global-nav nav,.nav-menu-toggle span,.project-card>button .plus-icon{transition:none}
}
