/*
Theme Name: Meyzer Capital Management
Theme URI: https://meyzercapital.com/
Author: Meyzer Capital Management Pte. Ltd.
Description: A bilingual, brand-aligned teaser website for accredited and institutional investors, with a single investor-access gate.
Version: 2.1.2
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: meyzer-capital-management
*/

@font-face{font-family:"Roboto";src:url("assets/fonts/roboto-latin-300-normal.woff2") format("woff2");font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:"Roboto";src:url("assets/fonts/roboto-latin-400-normal.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Roboto";src:url("assets/fonts/roboto-latin-400-italic.woff2") format("woff2");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"Roboto";src:url("assets/fonts/roboto-latin-500-normal.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Roboto";src:url("assets/fonts/roboto-latin-700-normal.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:"Noto Sans SC";src:url("assets/fonts/noto-sans-sc-chinese-simplified-400-normal.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Noto Sans SC";src:url("assets/fonts/noto-sans-sc-chinese-simplified-500-normal.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Noto Sans SC";src:url("assets/fonts/noto-sans-sc-chinese-simplified-700-normal.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}

/* ============================================================
   MEYZER BRAND TOKENS — per Brand Guidelines v31 Aug 2021
   Primary:   Pantone 1235C #FEBE10 · Pantone 7621C #A31E23 · Pantone Black C #231F20
   Secondary: #A38530 #976629 #8D3D29 #752126 #541A1B #2C1214
   Tertiary:  #BABABD #B1B1B6 #5E5F5F #373A39 #FBCE46 #6C5E26 #A7472F #9A2929
   Type:      Roboto (primary) · Noto Sans SC (Chinese) · Arial (fallback)
   ============================================================ */
:root{
  --yellow:#FEBE10;
  --yellow-lt:#FBCE46;
  --red:#A31E23;
  --maroon:#752126;
  --brass:#A38530;
  --black:#231F20;
  --black-deep:#2C1214;
  --grey-900:#373A39;
  --grey-600:#5E5F5F;
  --grey-300:#BABABD;
  --grey-100:#EFEFF0;
  --white:#FFFFFF;

  --font:"Roboto",Arial,Helvetica,sans-serif;
  --font-cn:"Noto Sans SC","Roboto",Arial,sans-serif;
  --mono:"Roboto Mono",monospace;
}
html[data-lang="zh"]{--font:var(--font-cn)}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}
body{font-family:var(--font);font-weight:300;line-height:1.65;color:var(--black);background:var(--white);-webkit-font-smoothing:antialiased}
body.gate-locked{overflow:hidden}
.wrap{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.wrap{padding:0 20px}}

/* ---------- Supergraphics ---------- */
/* Supergraphic B — horizontal divider (red → yellow) */
.sg-b{display:flex;height:3px;width:170px}
.sg-b i{display:block;height:100%}
.sg-b i:nth-child(1){background:var(--red);flex:1.15}
.sg-b i:nth-child(2){background:var(--yellow);flex:1}
/* Supergraphic B — vertical, used as message marker */
.sg-v{display:flex;flex-direction:column;width:5px;flex-shrink:0}
.sg-v i{display:block;flex:1}
.sg-v i:nth-child(1){background:var(--yellow)}
.sg-v i:nth-child(2){background:var(--red)}
/* Supergraphic C v1 — segmented rule */
.sg-c{display:flex;height:3px;width:100%}
.sg-c i:nth-child(1){background:var(--red);flex:1}
.sg-c i:nth-child(2){background:var(--yellow);flex:1}
.sg-c i:nth-child(3){background:var(--black);flex:1.1}
/* Supergraphic A — edge band (footer) */
.sg-a{display:flex;height:9px;width:100%}
.sg-a i:nth-child(1){background:var(--yellow);width:22px}
.sg-a i:nth-child(2){background:var(--red);width:14px}
.sg-a i:nth-child(3){background:var(--black);flex:1}

/* ---------- type ---------- */
h1,h2,h3{font-family:var(--font);font-weight:300;letter-spacing:-.015em;line-height:1.14}
h1{font-size:clamp(36px,5.6vw,68px)}
h2{font-size:clamp(27px,3.6vw,44px)}
h3{font-size:19px;font-weight:400;letter-spacing:0}
strong.hl{font-weight:500}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--grey-600);font-weight:500}
.eyebrow.dk{color:var(--yellow)}
p.lede{font-size:clamp(16px,1.4vw,18.5px);color:var(--grey-600);max-width:58ch;font-weight:300}

/* ---------- logo slot ---------- */
/* Guidelines 2.7: the brand signature must NEVER be retyped or re-created.
   Replace the <img> src with approved master artwork, e.g.
   MEYZER_Logo_CapitalManagement_Reversed_White_RGB.png                       */
.sig{display:block;text-decoration:none;line-height:0}
/* Reversed-white artwork: valid ONLY on black / dark grey / approved colour
   backgrounds (2.1, 2.6). Never place on white — use the full-colour version.
   Minimum clear space = "M" (2.3), applied as padding below.
   Minimum digital size = 70px wide. */
.sig img{height:42px;width:auto;display:block}
.sig{padding:14px 18px 14px 0}
@media(max-width:640px){.sig img{height:34px}}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--font);font-size:13.5px;font-weight:500;
     letter-spacing:.03em;padding:14px 26px;border:1px solid transparent;cursor:pointer;text-decoration:none;
     transition:background .2s,color .2s,border-color .2s}
.btn-y{background:var(--yellow);color:var(--black)}
.btn-y:hover{background:var(--yellow-lt)}
.btn-r{background:var(--red);color:#fff}
.btn-r:hover{background:var(--maroon)}
.btn-line-lt{background:transparent;color:var(--grey-300);border-color:var(--grey-900)}
.btn-line-lt:hover{border-color:var(--yellow);color:var(--yellow)}
.btn-line-dk{background:transparent;color:var(--black);border-color:var(--black)}
.btn-line-dk:hover{background:var(--black);color:#fff}
:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}

/* ---------- language switch ---------- */
.lang{display:inline-flex;border:1px solid var(--grey-900)}
.lang button{font-family:var(--mono);font-size:11px;letter-spacing:.1em;padding:8px 12px;background:transparent;
  border:0;cursor:pointer;color:var(--grey-300);transition:background .2s,color .2s}
.lang button[aria-pressed="true"]{background:var(--yellow);color:var(--black)}

/* ============ GATE ============ */
#gate{position:fixed;inset:0;z-index:200;background:var(--black);color:var(--grey-300);
  display:flex;align-items:center;justify-content:center;padding:36px 20px;overflow-y:auto}
#gate[hidden]{display:none}
.gate-card{width:100%;max-width:780px}
.gate-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:30px}
.gate-h{font-size:clamp(25px,3.8vw,38px);color:#fff;margin:14px 0 12px}
.gate-sub{font-size:14px;color:var(--grey-600);max-width:62ch;margin-bottom:22px}
.terms{border:1px solid var(--grey-900);background:rgba(255,255,255,.02);max-height:min(40vh,340px);
  overflow-y:auto;padding:24px 26px;font-size:13px;line-height:1.75;color:#A9ABAC}
.terms h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--yellow);font-weight:500;margin:22px 0 9px}
.terms h4:first-child{margin-top:0}
.terms p{margin-bottom:10px}
.terms strong{color:#fff;font-weight:500}
.terms::-webkit-scrollbar{width:5px}
.terms::-webkit-scrollbar-thumb{background:var(--grey-900)}
.gate-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}
.gate-note{font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--grey-600);margin-top:18px;line-height:1.7}

/* ============ HEADER ============ */
header{position:sticky;top:0;z-index:80;background:var(--white);border-bottom:1px solid var(--grey-100)}
.hdr{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:82px}
nav.main{display:flex;gap:30px}
nav.main a{color:var(--grey-900);text-decoration:none;font-size:13px;font-weight:400;letter-spacing:.02em;
  padding:5px 0;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
nav.main a:hover{color:var(--red);border-color:var(--yellow)}
.hdr-right{display:flex;align-items:center;gap:16px}
header .lang{border-color:var(--grey-300)}
header .lang button{color:var(--grey-900)}
header .sig,footer .sig{background-image:url("assets/meyzer-capital-management-logo-dark.png");background-repeat:no-repeat;background-position:left center;background-size:auto 42px}
header .sig img,footer .sig img{opacity:0}
@media(max-width:1040px){nav.main{display:none}}
@media(max-width:640px){header .sig,footer .sig{background-size:auto 34px}}
@media(max-width:540px){.hdr-right .btn{display:none}}

/* ============ HERO ============ */
.hero{position:relative;background:var(--black);color:#fff;padding:110px 0 0;overflow:hidden}
/* Brand imagery 2.9: replace with licensed dark-grayscale architectural photography.
   Interim CSS stand-in below. */
.hero::before{
  content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;
  background:
    repeating-linear-gradient(115deg,#2E3130 0 2px,transparent 2px 26px),
    repeating-linear-gradient(115deg,#191C1B 0 12px,transparent 12px 60px),
    radial-gradient(120% 90% at 82% 8%,#3A3E3D 0%,#231F20 62%);
  mask-image:linear-gradient(255deg,#000 0%,transparent 68%);
  -webkit-mask-image:linear-gradient(255deg,#000 0%,transparent 68%);
}
.hero .wrap{position:relative;z-index:1}
.hero h1{color:#fff;margin:22px 0 26px;max-width:15ch}
.hero h1 .amp{color:var(--yellow);font-weight:400}
.hero p.lede{color:var(--grey-300)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}
.coords{display:flex;flex-wrap:wrap;gap:14px 30px;align-items:center;font-family:var(--mono);font-size:11px;
  letter-spacing:.14em;color:var(--grey-600);margin-top:76px;padding-bottom:26px}
.coords b{color:var(--yellow);font-weight:500}

/* regulatory strip */
.reg{background:var(--black-deep);color:var(--grey-300);padding:20px 0;border-top:1px solid var(--grey-900)}
.reg .wrap{display:flex;flex-wrap:wrap;gap:12px 36px;align-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.09em}
.reg .lead{color:#fff}

/* ============ SECTIONS ============ */
section{padding:106px 0}
.sec-head{max-width:62ch;margin-bottom:54px}
.sec-head h2{margin:18px 0 20px}
.sec-head .sg-b{margin-bottom:22px}

.vmp{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.vmp article{display:flex;gap:18px}
.vmp h3{margin:12px 0 0;line-height:1.4;font-weight:300;font-size:20px}
@media(max-width:860px){.vmp{grid-template-columns:1fr;gap:28px}}

/* explore cards */
.explore{background:var(--grey-100)}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--grey-300)}
.card{background:var(--white);padding:34px 26px;text-decoration:none;color:inherit;display:block;
  border-top:3px solid transparent;transition:border-color .2s,background .2s}
.card:hover{border-top-color:var(--red);background:#fff}
.card .n{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;color:var(--red)}
.card h3{margin:14px 0 10px}
.card p{font-size:13.5px;color:var(--grey-600);line-height:1.62}
.card .go{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--black);margin-top:18px;display:inline-block}
@media(max-width:920px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.cards{grid-template-columns:1fr}}

/* team */
/* auto-fit: sits as two columns now, absorbs a third profile with no CSS change */
.team{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:44px;max-width:820px}
.member{padding-top:20px;border-top:2px solid var(--black)}
.member-photo-wrap{width:100%;max-width:300px;aspect-ratio:4/5;margin:0 0 26px;background:#091222;overflow:hidden;border-bottom:4px solid var(--yellow)}
.member-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 18%}
.member-photo--wang{object-position:center 16%}
.member .role{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.member h3{margin:12px 0 10px;font-weight:400}
.member p{font-size:14px;color:var(--grey-600)}
@media(max-width:860px){.team{grid-template-columns:1fr;gap:30px}}
.team-note{display:flex;gap:18px;margin-top:46px;max-width:66ch;font-size:14px;color:var(--grey-600)}

/* contact */
.contact{background:var(--black);color:#fff}
.contact h2{color:#fff}
.contact .eyebrow{color:var(--yellow)}
.contact .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:start}
@media(max-width:920px){.contact .grid{grid-template-columns:1fr;gap:48px}}
.detail{border-top:1px solid var(--grey-900);padding:20px 0}
.detail dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--yellow);margin-bottom:8px}
.detail dd{font-size:15px;color:var(--grey-300);line-height:1.7}
.detail a{color:var(--grey-300);text-decoration:none;border-bottom:1px solid var(--grey-900)}
.detail a:hover{color:var(--yellow);border-color:var(--yellow)}
.form-field{margin-bottom:20px}
.form-field label{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--grey-600);margin-bottom:8px}
.form-field input,.form-field select,.form-field textarea{width:100%;background:rgba(255,255,255,.04);
  border:1px solid var(--grey-900);color:#fff;font-family:var(--font);font-size:14.5px;font-weight:300;padding:12px 14px}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--yellow);outline:none}
.form-field select option{background:var(--black)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:560px){.form-row{grid-template-columns:1fr}}
.consent{display:flex;gap:11px;align-items:flex-start;font-size:12px;color:var(--grey-600);line-height:1.62;margin:6px 0 22px}
.consent input{margin-top:3px;accent-color:var(--yellow);flex-shrink:0}
.form-success{border-left:3px solid var(--yellow);background:rgba(254,190,16,.08);color:#fff;padding:13px 15px;margin-bottom:20px;font-size:14px}

/* inner WordPress pages */
.page-hero{background:var(--black);color:#fff;padding:88px 0 62px}
.page-hero h1{max-width:16ch;margin-top:16px;color:#fff}
.page-content{padding:76px 0 110px;min-height:45vh}
.page-content .entry{max-width:820px;font-size:16px;color:var(--grey-600)}
.page-content .entry h2,.page-content .entry h3{color:var(--black);margin:38px 0 16px}
.page-content .entry p,.page-content .entry ul,.page-content .entry ol{margin-bottom:20px}
.page-content .entry ul,.page-content .entry ol{padding-left:24px}
.page-content .entry a{color:var(--red);text-underline-offset:3px}
.page-content .builtin-entry{max-width:none;color:var(--black)}
.builtin-page{display:grid;gap:64px}
.builtin-page>div>*+*{margin-top:64px}
.builtin-intro{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:72px;align-items:start}
.builtin-intro h2{font-size:clamp(34px,4.2vw,58px);max-width:12ch;margin:0!important}
.builtin-intro-copy{max-width:66ch;padding-top:8px}
.builtin-intro-copy .lead{font-size:clamp(19px,2vw,25px);font-weight:300;line-height:1.5;color:var(--black)}
.builtin-intro-copy p{color:var(--grey-600)}
.pillar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--grey-300);border-left:1px solid var(--grey-300)}
.pillar-card{min-height:330px;padding:38px 32px 34px;border-right:1px solid var(--grey-300);border-bottom:1px solid var(--grey-300);display:flex;flex-direction:column}
.pillar-card .num,.service-card .service-label{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--brass);margin-bottom:58px}
.pillar-card h3{font-size:clamp(23px,2.2vw,31px);margin:0 0 18px!important}
.pillar-card p{font-size:15px;color:var(--grey-600);margin:0!important}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.32);border-left:1px solid rgba(255,255,255,.32);background:#092839;color:#fff}
.service-card{min-height:620px;padding:44px 38px 38px;border-right:1px solid rgba(255,255,255,.32);border-bottom:1px solid rgba(255,255,255,.32);display:flex;flex-direction:column;background:linear-gradient(145deg,#062333,#0b3145)}
.service-card--advisory{background-image:linear-gradient(180deg,rgba(4,24,36,.58),rgba(4,24,36,.94)),url('assets/service-family-office.png');background-size:cover;background-position:center}
.service-card--wealth{background-image:linear-gradient(180deg,rgba(4,24,36,.58),rgba(4,24,36,.94)),url('assets/service-wealth-management.png');background-size:cover;background-position:center}
.service-card--fund{background-image:linear-gradient(180deg,rgba(4,24,36,.58),rgba(4,24,36,.94)),url('assets/service-fund-management.png');background-size:cover;background-position:center}
.service-card .service-label{color:var(--yellow);margin-bottom:88px}
.service-card h2{color:#fff;font-size:clamp(34px,3.2vw,50px);font-weight:700;line-height:1.12;margin:0 0 52px!important;max-width:11ch;text-shadow:0 2px 14px rgba(0,0,0,.72)}
.page-content .entry .service-card h2{color:#fff!important;font-weight:700!important}
.service-card p{color:rgba(255,255,255,.76);font-size:16px;line-height:1.75;margin:0!important;max-width:32ch}
.service-card .service-kicker{margin-top:auto!important;color:var(--yellow);font-family:var(--mono);font-size:11px;line-height:1.5;font-weight:500;letter-spacing:.14em;text-transform:uppercase;max-width:none}
.responsibility-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:24px}
.responsibility-feature,.responsibility-card{border:1px solid var(--grey-300);padding:42px;min-height:310px}
.responsibility-feature{background:var(--black);color:#fff;min-height:520px;display:flex;flex-direction:column;justify-content:flex-end}
.responsibility-feature--arts{position:relative;isolation:isolate;background-image:linear-gradient(180deg,rgba(7,13,22,.08) 20%,rgba(7,13,22,.88) 100%),url('assets/arts-community-feature.png');background-size:cover;background-position:center 38%;overflow:hidden}
.responsibility-feature--arts>*{position:relative;z-index:1}
.responsibility-feature .eyebrow{color:var(--yellow)}
.responsibility-feature h2{color:#fff;font-size:clamp(34px,4vw,54px);font-weight:700;line-height:1.12;max-width:13ch;margin:18px 0 20px!important;text-shadow:0 2px 14px rgba(0,0,0,.72)}
.page-content .entry .responsibility-feature h2{color:#fff!important;font-weight:700!important}
.responsibility-feature p{color:var(--grey-300);max-width:55ch;margin:0!important}
.responsibility-stack{display:grid;gap:24px}
.responsibility-card h3{font-size:27px;margin:0 0 16px!important}
.responsibility-card p{color:var(--grey-600);margin:0!important}
.responsibility-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.responsibility-gallery figure{margin:0;border:1px solid var(--grey-300);background:var(--white);overflow:hidden}
.responsibility-gallery img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:var(--grey-100)}
.responsibility-gallery figcaption{display:grid;gap:5px;padding:18px 20px 20px}
.responsibility-gallery strong{font-size:17px;font-weight:500;color:var(--black)}
.responsibility-gallery span{font-size:13px;line-height:1.6;color:var(--grey-600)}
.private-cta{display:flex;justify-content:space-between;gap:42px;align-items:center;background:var(--grey-100);border-left:6px solid var(--yellow);padding:36px 40px}
.private-cta h2{font-size:clamp(28px,3vw,42px);margin:0 0 10px!important}
.private-cta p{color:var(--grey-600);margin:0!important;max-width:66ch}
.private-cta .btn{flex-shrink:0;color:var(--black);text-decoration:none}
@media(max-width:900px){
  .builtin-intro{grid-template-columns:1fr;gap:28px}
  .pillar-grid,.service-grid{grid-template-columns:1fr}
  .pillar-card{min-height:0}
  .service-card{min-height:480px}
  .responsibility-grid{grid-template-columns:1fr}
  .responsibility-gallery{grid-template-columns:1fr}
  .private-cta{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
  .page-hero{padding:62px 0 46px}
  .page-content{padding:56px 0 82px}
  .builtin-page{gap:46px}
  .builtin-page>div>*+*{margin-top:46px}
  .pillar-card,.service-card,.responsibility-feature,.responsibility-card{padding:30px 24px}
  .service-card{min-height:420px}
  .service-card .service-label{margin-bottom:58px}
  .private-cta{padding:30px 24px}
}

/* footer */
footer{background:var(--white);color:var(--grey-900);font-size:12.5px;line-height:1.78;border-top:1px solid var(--grey-100)}
.f-inner{padding:62px 0 34px}
.f-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:28px;align-items:center;padding-bottom:32px}
footer nav{display:flex;flex-wrap:wrap;gap:22px}
footer nav a{color:var(--grey-900);text-decoration:none;font-size:12.5px}
footer nav a:hover{color:var(--red)}
.f-footer-info{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(260px,.75fr);gap:64px;padding:32px 0}
.f-legal{max-width:98ch}
.f-legal h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:14px}
.f-legal p{margin-bottom:12px}
.f-contact{border-left:1px solid var(--grey-300);padding-left:34px}
.f-contact h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:18px}
.f-contact dl{display:grid;gap:18px}
.f-contact dt{font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--grey-600);margin-bottom:4px}
.f-contact dd{color:var(--grey-900);font-size:12.5px;line-height:1.7}
.f-contact a{color:var(--grey-900);text-decoration:none;border-bottom:1px solid var(--grey-300);overflow-wrap:anywhere}
.f-contact a:hover{color:var(--red);border-color:var(--red)}
@media(max-width:820px){
  .f-footer-info{grid-template-columns:1fr;gap:34px}
  .f-contact{border-left:0;border-top:1px solid var(--grey-300);padding:28px 0 0}
}
.f-base{display:flex;flex-wrap:wrap;gap:12px 30px;justify-content:space-between;padding-top:26px;
  border-top:1px solid var(--grey-300);color:var(--grey-600);font-family:var(--mono);font-size:10.5px;letter-spacing:.1em}
.f-base a{color:inherit;text-decoration:none}

/* language visibility */
[data-zh]{display:none}
html[data-lang="zh"] [data-en]{display:none}
html[data-lang="zh"] [data-zh]{display:inline}
html[data-lang="zh"] div[data-zh],html[data-lang="zh"] p[data-zh]{display:block}
