/* Balanced masthead, anchored dropdowns and a compact language selector. */
.site-header.centered-header,.home .site-header.centered-header{
 --header-pad:clamp(28px,4vw,64px);--header-gap:clamp(28px,3.5vw,54px);
 height:112px;padding:0 var(--header-pad);gap:0;border:0;background:#fff;color:#111;
 opacity:1;visibility:visible;transition:opacity .7s ease,visibility 0s,transform .28s ease;
}
.centered-header::before,.centered-header::after{content:'';position:absolute;bottom:20px;width:calc(50% - 98px - var(--header-pad));height:1px;background:#a3a6a8;pointer-events:none}
.centered-header::before{left:var(--header-pad)}.centered-header::after{right:var(--header-pad)}
.site-header.centered-header .wordmark{position:absolute;left:50%;top:56px;transform:translate(-50%,-50%);display:block;width:126px;line-height:1;z-index:1}
.centered-header .nav-wordmark{display:block;width:100%;height:auto}
.centered-header .header-dot{position:absolute;left:50%;top:91px;transform:translateX(-50%);font-size:6px;-webkit-text-stroke:3px currentColor;color:#268ff0;pointer-events:none}
.centered-header .header-tools{display:block;width:100%;padding:0}
.centered-header .header-nav{display:grid;grid-template-columns:minmax(0,1fr) 196px minmax(0,1fr);gap:0;align-items:center;margin:0;width:100%}
.centered-header .nav-wing{display:flex;align-items:center;gap:var(--header-gap);min-width:0;padding:0}
.centered-header .nav-wing-left{grid-column:1;justify-content:flex-start}
.centered-header .nav-wing-right{grid-column:3;justify-content:flex-end}
.centered-header .nav-wing>a,.centered-header .mega-toggle{font:400 16px/1.5 Manrope,'Microsoft YaHei',sans-serif;padding:10px 0;min-height:44px;white-space:nowrap;text-decoration:none}
.centered-header .mega-toggle{display:flex;align-items:center;gap:8px}
.centered-header .mega-toggle>.icon{font-size:14px;transition:transform .18s ease}
.centered-header .mega-toggle[aria-expanded=true]>.icon{transform:rotate(180deg)}
.centered-header .mega-toggle::after{height:1px;bottom:6px;background:#354af0;border-radius:0}
.site-header.centered-header a.header-contact{display:flex;width:auto;height:44px;min-height:44px;padding:10px 0;border:0;border-radius:0;background:transparent;font:400 16px/1.5 Manrope,'Microsoft YaHei',sans-serif;transform:none}
.site-header.centered-header a.header-contact .nav-label{font:inherit}
.site-header.centered-header .nav-wing>a:hover,.site-header.centered-header a.header-contact:hover{color:#354af0;text-decoration:none;transform:none}
.site-header.centered-header .nav-arrow{display:none}
/* Service navigation unfolds across the masthead, using the same outer edges. */
.site-header.centered-header .slot-services{position:static}
.site-header.centered-header .slot-services .mega-menu{top:calc(100% - 1px);left:var(--header-pad);right:var(--header-pad);width:auto;max-width:none;margin:0;padding-top:0}
.site-header.centered-header .mega-surface{padding:28px;border:1px solid #dedfda;border-radius:7px;background:#fff;box-shadow:0 12px 28px rgb(20 25 25 / .06);max-height:calc(100dvh - 140px);overflow-y:auto}
.site-header.centered-header .service-menu-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.site-header.centered-header .service-menu-group{min-width:0}
.site-header.centered-header .service-menu-group h2{font:500 12px/1.6 Manrope,'Microsoft YaHei',sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#70736f;margin:0 0 12px;padding:0 10px}
.site-header.centered-header .service-menu .nav-card{min-height:66px;margin:1px 0;padding:11px 10px;border-radius:4px;gap:4px}
.site-header.centered-header .nav-card .nav-label{font-size:14px;line-height:1.55;font-weight:500}
.site-header.centered-header .nav-card .nav-description{font-size:12px;line-height:1.65;color:#70736f}
.site-header.centered-header .nav-card:hover,.site-header.centered-header .nav-card:focus-visible{background:#f1f3fc}
.site-header.centered-header .service-menu-cta{justify-content:space-between;margin:18px 0 0;padding:17px 10px 0;border-top:1px solid #e3e5df}
.site-header.centered-header .service-menu-cta-link{font-size:12px;font-weight:500;color:#242724;text-decoration:underline;text-underline-offset:5px}
/* Smaller dropdowns stay directly below their own trigger. */
.site-header.centered-header .slot-templates,.site-header.centered-header .slot-about{position:relative}
.site-header.centered-header .slot-templates .mega-menu,.site-header.centered-header .slot-about .mega-menu{top:calc(100% + 33px);width:340px;max-width:calc(100vw - 56px);margin:0;padding-top:0}
.site-header.centered-header .slot-templates .mega-menu{left:0;right:auto}
.site-header.centered-header .slot-about .mega-menu{right:0;left:auto}
.site-header.centered-header .slot-templates .mega-surface,.site-header.centered-header .slot-about .mega-surface{padding:18px}
.site-header.centered-header .dropdown-layout{display:block}
.site-header.centered-header .dropdown-links{padding:0}
.site-header.centered-header .dropdown-feature{display:none}
.site-header.centered-header .dropdown-heading{font:500 12px/1.6 Manrope,'Microsoft YaHei',sans-serif;letter-spacing:.04em;color:#70736f;margin:0 0 9px;padding:0 10px;text-transform:uppercase}
.site-header.centered-header .dropdown-heading::before{content:none}
.site-header.centered-header .simple-menu .nav-card{padding:11px 10px;min-height:66px;border-radius:4px}
/* Language names are native labels; only translated, working versions are listed. */
.language-picker{position:relative;margin:0;color:#292c29}
.language-picker>summary{display:flex;align-items:center;justify-content:center;gap:9px;min-height:40px;padding:0 11px;border:1px solid #c9ccc5;border-radius:5px;background:transparent;list-style:none;cursor:pointer;font:500 12px/1.5 Manrope,'Microsoft YaHei',sans-serif;white-space:nowrap;transition:border-color .18s ease,background .18s ease}
.language-picker>summary::-webkit-details-marker{display:none}
.language-globe{font-size:16px;color:#606660}
.language-current{min-width:18px;text-align:center}.language-chevron{font-size:11px;color:#70736f;transition:transform .18s ease}
.language-picker>summary:hover{border-color:#7c8279;background:#f5f6f1}.language-picker[open]>summary{border-color:#7c8279;background:#fff}
.language-picker[open] .language-chevron{transform:rotate(180deg)}
.language-picker>summary:focus-visible,.site-header .language-options a:focus-visible{outline:2px solid #292c29;outline-offset:3px}
.language-options{position:absolute;top:calc(100% + 35px);right:0;width:224px;padding:14px 0 7px;border:1px solid #dedfda;border-radius:5px;background:#fff;box-shadow:0 10px 24px rgb(20 25 25 / .06);z-index:3}
.language-heading{margin:0 17px 9px;padding:0 0 10px;border-bottom:1px solid #e6e8e2;font-size:10px;font-weight:500;letter-spacing:.06em;color:#70736f}
.site-header .language-options a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:46px;margin:0 5px;padding:11px 17px;border-radius:2px;text-decoration:none;font:400 14px/1.5 Manrope,'Microsoft YaHei',sans-serif;letter-spacing:0}
.site-header .language-options a:hover{background:#f5f6f1;color:#252825;text-decoration:none}
.site-header .language-options a[aria-current=page]{color:#354af0;font-weight:500}
.site-header .language-options a[aria-current=page]::before{content:'';position:absolute;left:0;top:50%;width:2px;height:16px;background:#354af0;transform:translateY(-50%)}
.language-code{font-size:10px;color:#70736f}
.language-picker--mobile{display:none}
.drawer .service-menu-list{display:block}
.drawer .service-menu-group{padding:10px 0;border-bottom:1px solid #e2e5e1}
.drawer .service-menu-group:last-child{border-bottom:0}
.drawer .service-menu-group h2{font:500 12px/1.6 Manrope,'Microsoft YaHei',sans-serif;color:#70736f;margin:4px 0 6px;padding-left:9px}
.drawer .service-menu-group .nav-card{padding-top:10px;padding-bottom:10px}
.drawer .nav-arrow{display:none}
html.fv-opening-pending .home .centered-header{opacity:0;visibility:hidden;pointer-events:none;transition:none}
@media(min-width:1101px) and (max-width:1190px){.site-header.centered-header{--header-gap:28px}.centered-header .nav-wing>a,.centered-header .mega-toggle,.site-header.centered-header a.header-contact{font-size:14px}}
@media(max-width:1100px){
 .centered-header .header-nav{display:none}
 .site-header.centered-header .menu-trigger{position:absolute;right:24px;top:34px;display:grid;width:44px;height:44px}
 .language-picker--desktop{display:none}.language-picker--mobile{display:block;position:absolute;left:28px;top:34px}
 .language-picker--mobile .language-options{left:0;right:auto;top:calc(100% + 8px)}
 .centered-header::before,.centered-header::after{width:calc(50% - 110px)}
}
@media(max-width:560px){
 .site-header.centered-header,.home .site-header.centered-header{--header-pad:20px;height:72px;padding:0 20px}
 .site-header.centered-header .wordmark{top:34px;width:100px}
 .centered-header .header-dot{top:54px;font-size:6px}
 .language-picker--mobile{left:20px;top:12px}
 .language-picker>summary{gap:6px;min-height:44px;padding:0 8px;font-size:11px}.language-chevron{font-size:11px}
 .site-header.centered-header .menu-trigger{right:14px;top:12px}
 .centered-header::before,.centered-header::after{bottom:10px;width:calc(50% - 90px)}
}
@media(prefers-reduced-motion:reduce){.site-header.centered-header,.centered-header .mega-toggle>.icon,.language-picker>summary,.language-chevron{transition:none}}


/* Separate navigation links and disclosure buttons. */
.split-nav-row{display:flex;align-items:center;gap:2px}.site-header.centered-header .split-nav-link{font:400 16px/1.5 Manrope,'Microsoft YaHei',sans-serif;white-space:nowrap;text-decoration:none;padding:10px 0;min-height:44px;display:flex;align-items:center}.site-header.centered-header .split-nav-row .mega-toggle{width:28px;min-height:44px;padding:10px 4px;justify-content:center}.split-nav-link:hover{color:#354af0}.mobile-split{border-bottom:1px solid #dedfda}.drawer .mobile-split .split-nav-row{justify-content:space-between;gap:16px}.drawer .mobile-split .split-nav-link{flex:1;text-decoration:none;font-size:30px;line-height:1.4;padding:16px 0}.mobile-sub-toggle{width:48px;min-height:48px;display:grid;place-items:center;flex-shrink:0}.mobile-sub-toggle .icon{font-size:18px;transition:transform .18s}.mobile-sub-toggle[aria-expanded=true] .icon{transform:rotate(180deg)}.mobile-submenu[hidden]{display:none!important}.drawer .mobile-sub-surface{padding:4px 0 20px}.drawer .mobile-sub-surface .nav-card{font-size:16px;padding:12px 0}.drawer .mobile-sub-surface .nav-label{font-size:17px}.drawer .mobile-sub-surface .nav-description{font-size:12px}.split-nav-row a:focus-visible,.split-nav-row button:focus-visible{outline:2px solid #343934;outline-offset:3px}
@media(min-width:1101px){.site-header.centered-header .slot-work{position:relative}.site-header.centered-header .slot-work .mega-menu{left:0;right:auto;top:100%;width:360px;max-width:80vw}.site-header.centered-header .slot-work .mega-surface{padding:18px}.site-header.centered-header .slot-work .nav-card{display:flex;flex-direction:column;align-items:flex-start;padding:12px;gap:5px}}

/* Work categories share the service dropdown surface and alignment. */
@media(min-width:1101px){
.site-header.centered-header .slot-work{position:static}
.site-header.centered-header .slot-work .mega-menu{top:calc(100% - 1px);left:var(--header-pad);right:var(--header-pad);width:auto;max-width:none;margin:0;padding-top:0}
.site-header.centered-header .slot-work .mega-surface{padding:28px}
.work-menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.site-header.centered-header .slot-work .nav-card{min-height:56px;padding:11px 10px;justify-content:center}
}
.drawer .work-menu-grid{display:grid;grid-template-columns:1fr}

/* Work dropdown: vertical category list. */
@media(min-width:1101px){
.site-header.centered-header .slot-work{position:relative}
.site-header.centered-header .slot-work .mega-menu{left:0;right:auto;top:calc(100% + 33px);width:320px;max-width:calc(100vw - 56px)}
.site-header.centered-header .slot-work .mega-surface{padding:20px}
.site-header.centered-header .work-menu-grid{grid-template-columns:1fr;gap:4px}
.site-header.centered-header .slot-work .nav-card{min-height:52px;padding:12px 10px}
}
