/* Typography, quieter header proportions and contact shortcuts. Loaded after page styles. */
.header-inner{height:84px;gap:25px}
.brand .brand-logo{width:136px;height:70px}
.nav-links,:lang(de) .nav-links,:lang(fr) .nav-links,:lang(ru) .nav-links{gap:20px}
.nav-links a,:lang(de) .nav-links a,:lang(fr) .nav-links a,:lang(ru) .nav-links a{font-size:.86rem}
.hero .lede{font-size:clamp(1.125rem,1.4vw,1.25rem);line-height:1.7}
.hero .text-link,.hero .btn{font-size:.94rem}
.path-inner a{font-size:.92rem;min-height:44px}
.problem-note p,.process-item p{font-size:.96rem;line-height:1.65}
.case-facts dt{font-size:.74rem}
.case-facts dd{font-size:.92rem}
.contact-dock{position:fixed;right:12px;top:50%;transform:translateY(-50%);z-index:42;width:64px;padding:4px;background:rgba(246,245,239,.98);border:1px solid var(--line);border-radius:15px;box-shadow:0 8px 28px #123f3214}
.contact-dock .quick-link{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:58px;width:100%;padding:8px 2px;color:var(--green);border-radius:10px;text-align:center;cursor:pointer;font-size:.67rem;line-height:1.2;font-weight:600}
.contact-dock .quick-link:hover,.quick-wechat[open]>summary{background:var(--green-soft)}
.contact-dock .quick-link svg{flex-shrink:0}
.quick-wechat{position:static}
.quick-wechat summary{list-style:none}
.quick-wechat summary::-webkit-details-marker{display:none}
.wechat-card{position:absolute;right:calc(100% + 15px);top:50%;transform:translateY(-50%);width:300px;max-width:calc(100vw - 28px);max-height:calc(100vh - 200px);max-height:calc(100dvh - 200px);overflow:auto;overscroll-behavior:contain;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 50px #123f3229;padding:18px}
.wechat-card-heading{display:flex;align-items:center;gap:8px;justify-content:space-between;margin-bottom:8px}
.wechat-card-heading h2{font-size:1.08rem!important;line-height:1.4;letter-spacing:-.025em}
.wechat-close{flex:0 0 44px;width:44px;min-height:44px;border:0;border-radius:50%;background:var(--green-soft);font-size:1.45rem;line-height:1}
.wechat-code{display:block;width:240px;max-width:100%;height:auto;padding:12px;margin:0 auto 12px;background:#fff;border-radius:0;object-fit:contain}
.wechat-card p{font-size:.86rem;line-height:1.65}
.wechat-card .text-link{font-size:.83rem;margin-top:9px;min-height:44px}
@media(min-width:1101px){.has-contact-dock .container{padding-inline-end:84px}}
@media(max-width:1190px){.brand .brand-logo{width:128px;height:66px}.header-inner{gap:19px}.nav-links,:lang(de) .nav-links,:lang(fr) .nav-links,:lang(ru) .nav-links{gap:15px}}
@media(max-width:1100px){
 .header-inner{height:64px;gap:16px}
 .brand .brand-logo{width:112px;height:58px}
 .header-actions{margin-left:auto;gap:14px}
 .menu-toggle{display:flex}
 .site-nav{display:none;position:absolute;left:0;right:0;top:100%;margin-left:0;padding:12px 24px 20px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 15px 30px #123f3212}
 .site-nav.open{display:block}
 .nav-links,:lang(de) .nav-links,:lang(fr) .nav-links,:lang(ru) .nav-links{display:block}
 .nav-links a,:lang(de) .nav-links a,:lang(fr) .nav-links a,:lang(ru) .nav-links a{font-size:1rem;padding:12px 0}
 .nav-links a:after{display:none}
 html:not(.nav-ready) .header-inner{height:auto;min-height:64px;flex-wrap:wrap;padding-block:9px}
 html:not(.nav-ready) .site-nav{display:block;position:static;order:3;width:100%;padding:0;box-shadow:none;border:0}
 html:not(.nav-ready) .nav-links{display:flex;flex-wrap:wrap;gap:4px 18px}
 html:not(.nav-ready) .menu-toggle{display:none}
 body.has-contact-dock{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
 .contact-dock{left:0;right:0;top:auto;bottom:0;transform:none;width:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;padding:4px 10px calc(4px + env(safe-area-inset-bottom,0px));border-radius:15px 15px 0 0;border-bottom:0;box-shadow:0 -5px 24px #123f3212}
 .contact-dock .quick-link{min-height:54px;font-size:.75rem;padding:5px 2px;gap:4px}
 .contact-dock .quick-link svg{width:21px;height:21px}
 .quick-wechat{position:static}
 .wechat-card{right:12px;top:auto;bottom:calc(100% + 10px);transform:none;max-height:calc(100vh - 150px - env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 150px - env(safe-area-inset-bottom,0px))}
 body:has(.inquiry-form input:focus,.inquiry-form textarea:focus,.inquiry-form select:focus) .contact-dock{visibility:hidden;pointer-events:none}
}
@media(max-width:720px){
 .section{padding-block:48px}
 .hero{padding:24px 0 28px}
 .hero-grid{gap:25px}
 .hero h1,:lang(zh-CN) .hero h1,:lang(ja) .hero h1,:lang(ko) .hero h1,:lang(ru) .hero h1{font-size:clamp(2.5rem,10.5vw,3.4rem);line-height:1.1}
 :lang(zh-CN) .hero h1,:lang(ja) .hero h1,:lang(ko) .hero h1{line-height:1.22}
 .hero .lede{font-size:1.0625rem;line-height:1.65;margin-top:19px}
 .hero .actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:22px}
 .hero .actions .text-link{justify-self:start;min-height:44px}
 .hero .actions .btn{min-height:48px;padding-block:12px}
 .hero-art{width:100%;max-width:300px;margin-inline:auto;padding-top:0}
 .hero-art .hero-scene img[data-image-role=scene]{width:100%;height:auto;max-height:330px;object-fit:contain}
 .hero-art figcaption{font-size:.71rem;padding:12px 15px}
 .float-tag{display:none}
 .path-inner{padding-block:18px;gap:12px 18px}
 .path-inner>span{font-size:.85rem}
 .path-inner a{font-size:.88rem}
 .application-grid .application-tile img,.application-grid .application-tile:first-child img{height:290px}
 .signature-story{padding-bottom:48px}
 .signature-heading{gap:22px;margin-bottom:25px}
 .signature-heading .lede,.section-head .lede{font-size:1.0625rem}
 .global-story{padding-block:44px 38px}
 .global-heading{gap:22px;margin-bottom:22px}
 .global-heading .lede{font-size:1rem}
 .global-network{padding-top:300px}
 .global-globe{width:400px;height:300px}
 .global-product{top:145px;width:165px}
 .global-product img{height:182px}
 .global-product-label{font-size:.72rem}
 .market{font-size:.76rem}
 .problem-note p,.process-item p{font-size:.96rem}
 .problem-tabs button{font-size:.88rem}
 .process-grid{gap:28px 20px}
 .video-frame{padding:12px}
 .video-frame video{height:400px;max-height:70vh}
 .form-shell{gap:28px}
 .site-footer{padding-top:44px}
 .footer-brand .brand-logo{width:170px;height:88px}
}
.project-answers{max-width:900px;margin-inline:auto;border-top:1px solid var(--line)}
.project-question{border-bottom:1px solid var(--line);padding:0}
.project-question summary{cursor:pointer;padding:20px 30px 20px 0;font-size:1.05rem;line-height:1.5;font-weight:600}
.project-question p{margin:0;padding:0 0 22px;max-width:76ch;font-size:1rem;line-height:1.8;color:var(--muted)}
