html { background:#f3eee5; }
.info-page { margin:0; color:#15120e; background:#f3eee5; font-family:Georgia,'Times New Roman',serif; }
.info-loading { position:fixed; inset:0; z-index:1000; background:#f3eee5; transition:.45s ease; }
.info-loading.is-hidden { opacity:0; visibility:hidden; }
.info-header { position:fixed; top:0; left:0; right:0; z-index:50; display:grid; grid-template-columns:220px 1fr 220px; align-items:center; height:44px; padding:0 42px; background:linear-gradient(180deg,rgba(243,238,229,.95),rgba(243,238,229,0)); }
.info-logo { display:inline-flex; align-items:center; gap:12px; color:#15120e; text-decoration:none; letter-spacing:.16em; }
.info-logo span { display:grid; place-items:center; width:44px; height:44px; border:1px solid rgba(21,18,14,.45); font-size:13px; }
.info-logo strong { font:400 11px/1.35 Arial,sans-serif; }
.info-main-nav { display:flex; justify-content:center; gap:26px; white-space:nowrap; }
.info-main-nav a { color:rgba(21,18,14,.66); text-decoration:none; font:11px/1.2 Arial,sans-serif; letter-spacing:.14em; padding-bottom:8px; border-bottom:1px solid transparent; }
.info-main-nav a:hover,.info-main-nav a.is-active { color:#15120e; border-color:#15120e; }
.info-container { width:min(1040px,calc(100% - 40px)); margin:0 auto; }
.company-hero { position:relative; min-height:520px; display:grid; place-items:center; text-align:center; overflow:hidden; background:#17130f; color:#f3eee5; }
.company-hero img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.48; }
.company-hero div { position:relative; z-index:1; padding:120px 24px 80px; }
.company-hero p { margin:0 0 18px; color:#d0ae79; font:11px/1 Arial,sans-serif; letter-spacing:.32em; }
.company-hero h1 { margin:0; font-size:clamp(38px,7vw,88px); font-weight:400; letter-spacing:.12em; }
.company-hero strong { display:block; margin-top:26px; font-weight:400; line-height:1.9; }
.company-profile { padding:80px 0 110px; }
.company-profile dl { display:grid; grid-template-columns:230px 1fr; margin:0; border-top:1px solid rgba(21,18,14,.18); }
.company-profile dt,.company-profile dd { margin:0; padding:24px 0; border-bottom:1px solid rgba(21,18,14,.18); line-height:1.8; }
.company-profile dt { color:#8e6d3d; font:13px/1.8 Arial,sans-serif; letter-spacing:.12em; }
.company-profile dd { color:rgba(21,18,14,.78); }
.info-footer { display:flex; justify-content:space-between; padding:34px 42px; color:rgba(243,238,229,.72); background:#15120e; font:11px/1.2 Arial,sans-serif; letter-spacing:.18em; }
.info-footer a { color:inherit; text-decoration:none; }
.language-switch { position:fixed; right:24px; bottom:24px; z-index:80; font-family:Arial,sans-serif; }
.language-switch-current { width:48px; height:48px; color:#f3eee5; border:1px solid rgba(243,238,229,.35); background:rgba(21,18,14,.9); font-size:11px; cursor:pointer; }
.language-switch-panel { position:absolute; right:0; bottom:56px; min-width:130px; padding:12px; opacity:0; visibility:hidden; transform:translateY(8px); background:rgba(21,18,14,.95); border:1px solid rgba(243,238,229,.2); transition:.2s ease; }
.language-switch:hover .language-switch-panel,.language-switch.is-open .language-switch-panel { opacity:1; visibility:visible; transform:translateY(0); }
.language-switch-title { margin-bottom:8px; color:#d0ae79; font-size:10px; letter-spacing:.18em; }
.language-switch-panel a { display:block; padding:9px 0; color:rgba(243,238,229,.72); text-decoration:none; font-size:11px; letter-spacing:.12em; }
.language-switch-panel a.is-active,.language-switch-panel a:hover { color:#fff; }
@media(max-width:900px){.info-header{display:none!important}.info-main-nav{justify-content:flex-start;overflow-x:auto;gap:18px;padding-bottom:6px}.company-profile dl{grid-template-columns:1fr}.company-profile dt{padding-bottom:4px}.company-profile dd{padding-top:0}.info-footer{padding:28px 20px;flex-direction:column;gap:16px}}
.policy-hero { padding:170px 0 70px; color:#f3eee5; background:#17130f; }
.policy-hero p { margin:0 0 18px; color:#d0ae79; font:11px/1 Arial,sans-serif; letter-spacing:.32em; text-transform:uppercase; }
.policy-hero h1 { max-width:900px; margin:0; font-size:clamp(34px,5.6vw,72px); font-weight:400; line-height:1.18; letter-spacing:.06em; }
.policy-content { padding:72px 0 110px; }
.policy-container { max-width:920px; color:rgba(21,18,14,.82); font-size:16px; line-height:2; }
.policy-container p { margin:0 0 22px; }
.policy-container h2 { margin:54px 0 16px; color:#15120e; font-size:24px; font-weight:400; line-height:1.45; letter-spacing:.04em; }
.policy-container h3 { margin:34px 0 12px; color:#8e6d3d; font:700 15px/1.7 Arial,'Microsoft YaHei',sans-serif; letter-spacing:.06em; }
.policy-container ul,.policy-container ol { margin:0 0 24px; padding-left:1.4em; }
.policy-container li { margin:0 0 12px; }
.policy-container a { color:#8e6d3d; text-decoration:underline; text-underline-offset:3px; word-break:break-word; }
.policy-date { margin-top:42px!important; color:#8e6d3d; }
.policy-page.is-en .policy-container { font-family:Arial,Helvetica,sans-serif; line-height:1.85; }
.policy-page.is-en .policy-container h2 { font-family:Georgia,'Times New Roman',serif; }
@media(max-width:900px){.policy-hero{padding:118px 0 52px}.policy-content{padding:48px 0 80px}.policy-container{font-size:15px;line-height:1.9}.policy-container h2{font-size:21px;margin-top:42px}}

/* Walnut gold theme: color-only overrides. */
html, .info-page, .company-profile, .policy-content { background: var(--zg-deep, #050302); color: var(--zg-ink, #f0e5d2); }
.info-loading { background: var(--zg-deep, #050302); }
.info-header, .info-footer { background: var(--zg-deep, #050302); color: var(--zg-ink, #f0e5d2); border-color: var(--zg-line, rgba(189,154,98,.38)); }
.company-hero, .policy-hero { background: radial-gradient(circle at 68% 20%, #624026, #17100b 48%, var(--zg-deep, #050302) 100%); color: var(--zg-ink, #f0e5d2); }
.company-hero img { filter: saturate(.82) contrast(1.08) sepia(.14) brightness(.72); }
.company-hero p, .policy-hero p, .company-profile dt, .policy-container h3, .policy-container a, .policy-date { color: var(--zg-gold, #bd9a62); }
.company-hero h1, .policy-hero h1, .policy-container h2 { color: var(--zg-ink, #f0e5d2); }
.company-hero strong, .company-profile dd, .policy-container { color: var(--zg-muted, #9a876d); }
.company-profile dl, .company-profile dt, .company-profile dd { border-color: var(--zg-line, rgba(189,154,98,.38)); }

/* Final readable company/policy layer. */
html,
.info-page,
.company-profile,
.policy-content {
    background: var(--zg-paper, #f5eee2) !important;
    color: var(--zg-ink, #17120e) !important;
}

.info-loading {
    background: var(--zg-paper, #f5eee2) !important;
}

.company-hero,
.policy-hero {
    background: radial-gradient(circle at 72% 24%, rgba(176, 138, 85, .22), transparent 32%), #120d09 !important;
    color: #f5eee2 !important;
}

.company-hero h1,
.policy-hero h1 {
    color: #f5eee2 !important;
}

.policy-container h2 {
    color: var(--zg-ink, #17120e) !important;
}

.company-profile dd,
.policy-container,
.policy-container p,
.policy-container li {
    color: var(--zg-muted, #5f554a) !important;
}

.company-hero img {
    filter: saturate(.96) contrast(1.02) sepia(.04) brightness(1) !important;
}

.company-hero h1 {
    color: var(--zg-gold, #bd9a62) !important;
}

.company-profile dd {
    color: #fff !important;
}
