/* Shared reading, navigation and interaction refinements. */
html{scroll-padding-top:100px}
.contact-headline{display:flex;flex-wrap:wrap;column-gap:.18em;text-wrap:balance;min-width:0}
.contact-headline>span{display:inline-block;white-space:nowrap}
body[data-lang=zh] .contact-headline{column-gap:0}
.contact .contact-arrow{flex-shrink:0}
.scene-caption,.instinct-art figcaption,.product-data-art figcaption{font-size:12px;line-height:1.6}
.instinct-labels,.product-data-labels{font-size:12px}
.about-copy>.mono,.product-heading>.mono,.contact>.small{font-size:12px;line-height:1.7}
.work-controls>span{font-size:12px}
footer{font-size:12px;line-height:1.6}
.footer-links a,footer>a,.contact-details a{min-height:44px;display:inline-flex;align-items:center}
.contact-details>span{line-height:1.7}
:is(.contact-button,.product-actions a,.service-link,.quote-link,.work-outro>a,.language,.menu-button,.scroll-nav a,.error-actions a){min-height:44px;transition:background-color .18s,color .18s,box-shadow .18s,translate .18s;touch-action:manipulation}
:is(.contact-button,.product-actions a,.quote-link,.error-actions a):hover{box-shadow:3px 3px 0 #09201933;translate:0 -2px}
:is(.service-link,.work-outro>a):hover{color:var(--paper);text-decoration:underline;text-underline-offset:5px}
:is(.contact-button,.product-actions a,.service-link,.quote-link,.work-outro>a,.language,.menu-button,.scroll-nav a,.error-actions a):active{translate:0 1px;box-shadow:none}
:is(a,button):focus-visible{outline:2px solid currentColor;outline-offset:4px}
.scroll-nav{position:fixed;z-index:50;top:14px;left:50%;width:min(820px,calc(100% - 32px));padding:8px 12px;background:#092019;color:var(--mint);border:1px solid #75dfab70;box-shadow:0 6px 24px #09201920;display:flex;align-items:center;gap:24px;transform:translate(-50%,-140%);visibility:hidden;pointer-events:none;transition:transform .22s,visibility .22s}
.scroll-nav[data-visible=true]{transform:translate(-50%,0);visibility:visible;pointer-events:auto}
.scroll-nav-brand{font:16px Georgia,serif;letter-spacing:-.04em;white-space:nowrap;display:flex;align-items:center}
.scroll-nav-links{display:flex;gap:5px;flex:1;justify-content:space-between}
.scroll-nav-links a{padding:10px 12px;font-size:13px;display:flex;align-items:center;justify-content:center;line-height:1.2;white-space:nowrap}
.scroll-nav-links a[aria-current=location]{background:var(--mint);color:var(--ink)}
.scroll-nav-links a:hover{background:#244a37;color:var(--paper)}
.scroll-nav-links a[aria-current=location]:hover{background:var(--mint);color:var(--ink)}
.error-page{background:var(--paper);min-height:100vh;display:flex;flex-direction:column}
.error-main{flex:1;padding:65px 6.6%;max-width:1000px}
.error-code{font:clamp(90px,20vw,190px)/1 Georgia,serif;color:var(--ink);margin:0}
.error-main h1{font-size:clamp(32px,5vw,58px);line-height:1.2;margin:24px 0}
.error-main>p:not(.error-code){font-size:18px;line-height:1.7;max-width:600px}
.error-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.error-actions a{padding:14px 22px;border:1px solid var(--ink);display:inline-flex;align-items:center}
.error-actions a:first-child{background:var(--ink);color:var(--mint)}
@media(max-width:700px){
  .scroll-nav{gap:0;top:8px;width:calc(100% - 20px);padding:5px}
  .scroll-nav-brand{display:none}
  .scroll-nav-links{gap:3px}
  .scroll-nav-links a{font-size:11px;padding:10px 8px;flex:1}
  .scene-caption,.instinct-art figcaption,.product-data-art figcaption{font-size:11px}
  .instinct-labels,.product-data-labels{font-size:11px}
  .product-data-art figcaption{gap:8px}
  .contact-details>a{font-size:16px;overflow-wrap:anywhere}
  .contact-details>span{font-size:12px}
  .product-actions a{font-size:12px!important}
  footer{font-size:11px;gap:12px}
  .footer-links{gap:2px 20px}
  .policy-meta,.policy-header-label{font-size:11px}
  .policy-toc a,.pricing-card>.mono{font-size:12px}
  .error-main{padding:45px 5%}
}
@media(max-width:380px){body[data-lang=zh] .contact h2{font-size:32px}.scroll-nav-links a{font-size:10px;padding-inline:5px}}
@media(prefers-reduced-motion:reduce){.scroll-nav{transition:none}:is(.contact-button,.product-actions a,.quote-link,.error-actions a):hover{translate:none}}
@media print{.scroll-nav{display:none}}

/* Compact mobile header and a small, thumb-friendly dropdown. */
@media(max-width:600px){
  .topbar{height:56px;padding:0 16px;gap:12px}
  .topbar .wordmark{font-size:22px;letter-spacing:-1.3px;white-space:nowrap;line-height:1}
  .topbar .wordmark span{font-size:8px;margin:3px 0 0 4px}
  .topbar .actions{gap:4px;flex-shrink:0}
  .topbar .contact-button{display:none}
  .topbar .language{width:44px;min-height:44px;padding:0;font-size:11px}
  .topbar .menu-button{width:44px;height:44px;padding:12px;gap:5px;align-items:center}
  .topbar .menu-button span{width:20px;height:1px}
  .topbar .menu-button[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}
  .topbar .menu-button[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}
  .navigation{top:64px;right:16px;width:min(300px,calc(100% - 32px));padding:8px 16px;border:1px solid #75dfab40;box-shadow:0 8px 24px #09201920;max-height:calc(100svh - 80px);overflow-y:auto}
  .navigation a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px 0;font-size:16px;line-height:1.4;letter-spacing:0;transition:color .18s,background-color .18s}
  .navigation a::after{content:'↗';font-size:14px;opacity:.6;flex-shrink:0}
  .navigation a:last-child{border-bottom:0}
  .navigation a:hover{padding-left:0;color:var(--paper)}
  .navigation a:active{background:#75dfab16}
  .navigation a:focus-visible{outline-offset:2px}
}
