/* WEFUN Creative: black and white with full-color imagery. */
:root{--brand:#111111;--brand-hover:#333333;--lime:#ffffff;--plum:#111111;--blue:var(--brand);--blue2:#111111;--pale:#f5f5f5;--ink:#171717;--muted:#626262;--line:#e2e2e2}
.announcement{background:var(--plum)}
.announcement a{color:var(--lime)}
.contact-card{background:var(--plum)}
.contact-card h2>span{color:var(--lime)}
.contact-card .eyebrow{color:var(--lime)}
.contact-card .light-button{background:var(--lime);border-color:var(--lime);color:var(--plum)}
.contact-card .light-button:hover{background:#dadada;border-color:#dadada}
.process-section{background:#fff;color:var(--ink)}
.process-section h2 span{color:#777}
.process-section .section-heading>p,.process-grid p{color:var(--muted)}
.process-grid{gap:18px}
.process-grid article{border:1px solid var(--line);border-radius:7px;padding:clamp(20px,2.2vw,31px);background:#fff}
.service-card>img{filter:brightness(0)}
.process-grid img{filter:none;background:transparent;width:40px;height:40px;padding:0;border-radius:0}
.hero-visual{background:linear-gradient(145deg,#f7f7f7,#ebebeb)}
.ticker-section{background:#ebebeb}
.about-section{background:#f6f6f6}
.product-art,.feature-visual{background:#f2f2f2}
.contact-card>img{filter:hue-rotate(45deg);opacity:.12}
.hero-visual picture{display:block}
.hero-image{aspect-ratio:auto;height:auto;object-fit:contain}
.experience-badge{margin:18px 0 0;padding:13px 19px;box-shadow:0 6px 18px #3737370a}
.announcement .announcement-mobile-copy{display:none}
.announcement a .announcement-desktop-copy,.announcement a .announcement-mobile-copy{margin-left:0}
.ticker-group .ticker-separator{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;color:var(--brand);line-height:1;flex-shrink:0}
.ticker-separator svg{display:block;width:100%;height:100%}
.menu-toggle{gap:4px}
.menu-toggle span{width:18px;height:2px;border-radius:1px;flex-shrink:0;background:var(--ink)}
@media(max-width:560px){
 .announcement .announcement-desktop-copy{display:none}
 .announcement .announcement-mobile-copy{display:inline}
 .announcement .container{display:grid;grid-template-columns:auto 1fr;align-items:center;min-height:36px;padding-block:7px;gap:10px}
 .announcement .language-switch{grid-column:1;justify-self:start;gap:6px;font-size:10px;line-height:1.5;color:#c2c2c2}
 .announcement .language-switch a{color:#dfdfdf}
 .announcement .language-switch a[aria-current]{color:var(--lime);font-weight:700}
 .announcement .container>a{grid-column:2;justify-self:end;text-align:right;white-space:nowrap;font-size:9px;line-height:1.5}
 .navigation{gap:12px}
 .nav-actions{gap:8px}
 .nav-cta,html[lang=zh-Hans] .nav-cta{display:inline-flex;text-transform:uppercase;font-size:10px;letter-spacing:.3px;line-height:1.4;padding:10px 11px;white-space:nowrap}
}
@media(max-width:380px){.navigation .brand img{width:88px}.navigation .brand>span{letter-spacing:3px}}

/* Monochrome accents and a visible current-page indicator. */
.button:hover{background:var(--brand-hover)}
.contact-card .light-button:hover{background:#e5e5e5;border-color:#e5e5e5}
.process-section .eyebrow{color:var(--ink)}
.service-card:hover{border-color:var(--brand)}
#contact-form input:focus,#contact-form textarea:focus{outline-color:var(--brand)}
nav a.active{font-weight:700;text-decoration:underline;text-underline-offset:6px}
.brand img{filter:none}
.brand>span{color:var(--muted);font-weight:600}
/* Keep icons black while photographs and decorative artwork retain their color. */
.contact-card>img,.about-shape,.hero-image{filter:none}
/* One mobile H3 size across page-specific and translated heading styles. */
@media(max-width:560px){h3{font-size:25px!important}}
/* Separate the contact card from the preceding full-width section. */
main[data-page]>.contact-section{padding-top:64px}
@media(max-width:560px){main[data-page]>.contact-section{padding-top:40px}}
