/* Total Wealth look: white page, warm gold gradient, Jost, thin hairlines, small radii. Light only, like the company page. */
:root{
  --bg:#ffffff; --surface:#ffffff; --soft:#faf6ec; --ink:#1f1b14; --muted:#6f675a; --line:#ece5d6;
  --gold-deep:#8f7140; --gold-mid:#b99a62; --gold-light:#f6ebc8;
  --gold-grad:linear-gradient(180deg,#8f7140 0%,#b2915a 45%,#c6a86b 62%,#a67c3f 100%);
  --gold-line:linear-gradient(90deg,#8f7140,#d9c28f 50%,#8f7140);
  --brand:#8f7140; --brand-ink:#ffffff; --alert:#a8372c; --alert-soft:#fbefec;
  --ok:#2f7d57; --ok-soft:#e9f4ee; --warn-soft:#faf1d9; --warn:#7a5a14;
  --f-body:"Jost","Helvetica Neue",Arial,"PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif;
  --f-mono:"Jost","Helvetica Neue",Arial,"PingFang SC",sans-serif;
  color-scheme:light;
}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.7;font-weight:300;padding-inline:16px;padding-block:0 40px;font-variant-numeric:tabular-nums}
b,strong,h3,h4{font-weight:500}
.wrap{max-width:460px;margin-inline:auto}
html[data-l="zh"] .en,html[data-l="en"] .zh{display:none}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--brand);outline-offset:2px}

.sample{background:var(--warn-soft);color:var(--warn);font-size:12px;padding:6px 12px;border-radius:0 0 10px 10px;text-align:center}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:14px 8px}
.who{font-weight:800;font-size:16px;letter-spacing:.01em}
.who small{display:block;font-weight:500;color:var(--muted);font-size:12px}
.lang{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--surface)}
.lang button{border:0;background:none;padding:6px 12px;font-size:13px;font-weight:700;color:var(--muted)}
.lang button[aria-pressed="true"]{background:var(--brand);color:var(--brand-ink)}

.tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:var(--surface);border:1px solid var(--line);padding:5px;border-radius:14px;margin-block:8px 16px}
.tabs button{border:0;background:none;padding:10px;border-radius:10px;font-weight:700;color:var(--muted)}
.tabs button[aria-selected="true"]{background:var(--brand);color:var(--brand-ink)}

h2{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:26px 0 10px;font-weight:700}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px}

/* agent */
.agent .name{font-weight:800;font-size:18px}
.agent .role{color:var(--muted);font-size:13px}
.num{font-family:var(--f-mono);font-size:17px;margin-block:10px 14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.copy{border:1px solid var(--line);background:none;border-radius:8px;padding:3px 10px;font-size:12px;color:var(--muted)}
.btns{display:grid;gap:10px}
.btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-radius:14px;font-weight:800;font-size:16px;text-decoration:none;border:0}
.btn.wa{background:#1f9d55;color:#fff}
.btn.sec{background:var(--bg);color:var(--ink);border:1px solid var(--line);font-weight:700;font-size:14px;min-height:46px}

/* steps */
.steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.steps li{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start}
.steps .n{width:34px;height:34px;border-radius:50%;background:var(--alert);color:#fff;display:grid;place-items:center;font-weight:800;font-family:var(--f-mono)}
.steps b{display:block}
.steps span.d{color:var(--muted);font-size:14px}
.alert{background:var(--alert-soft);border:1px solid var(--alert);border-radius:14px;padding:14px;margin-top:14px}
.alert b{color:var(--alert)}

.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.two .card{padding:14px}
.two h3{margin:0 0 4px;font-size:15px}
.two p{margin:0;color:var(--muted);font-size:13px}
.tag{display:inline-block;font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;margin-bottom:8px}
.tag.ok{background:var(--ok-soft);color:var(--ok)}
.tag.pay{background:var(--warn-soft);color:var(--warn)}

.check{display:grid;gap:8px}
.check label{display:flex;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;min-height:48px;cursor:pointer}
.check input{width:22px;height:22px;accent-color:var(--brand);flex:none}
.check input:checked+span{color:var(--muted);text-decoration:line-through}

.fine{font-size:12px;color:var(--muted);margin-top:22px}

/* gate */
.gate{text-align:center;padding:28px 18px}
.lock{width:56px;height:56px;border-radius:50%;background:var(--bg);display:grid;place-items:center;margin:0 auto 12px;font-size:24px}
.pin{font-family:var(--f-mono);font-size:26px;letter-spacing:.5em;text-align:center;width:100%;max-width:260px;padding:12px 8px 12px 20px;border-radius:12px;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);margin-block:14px 8px}
.err{color:var(--alert);font-size:13px;min-height:20px}
.hint{color:var(--muted);font-size:12px}

/* policies */
.who2{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}
.who2 button{flex:none;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:8px 14px;font-weight:700;font-size:14px}
.who2 button[aria-pressed="true"]{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}
.pol{padding:0;overflow:hidden;margin-top:12px}
.pol header{background:var(--brand);color:var(--brand-ink);padding:16px}
.pol header .t{font-weight:800;font-size:17px}
.pol header .s{font-family:var(--f-mono);font-size:13px;opacity:.85}
.hero2{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}
.hero2>div{padding:14px 16px}
.hero2>div+div{border-left:1px solid var(--line)}
.k{font-size:12px;color:var(--muted)}
.v{font-family:var(--f-mono);font-size:18px;font-weight:500;overflow-wrap:anywhere}
.rows{display:grid}
.row{display:flex;justify-content:space-between;gap:14px;padding:11px 16px;border-bottom:1px solid var(--line);align-items:baseline}
.row:last-child{border-bottom:0}
.row .k{font-size:14px;color:var(--ink);min-width:0}
.row .v{font-size:15px;text-align:right;flex:none}
.row small{display:block;color:var(--muted);font-size:12px}
.upd{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted);margin-top:12px;flex-wrap:wrap}
.lockbtn{border:1px solid var(--line);background:none;border-radius:8px;padding:3px 10px;font-size:12px;color:var(--muted)}

/* ===== Total Wealth overrides: shape and weight ===== */
.top{border-bottom:1px solid var(--line);margin-inline:-16px;padding-inline:16px;padding-block:12px;background:rgba(255,255,255,.92)}
.wordmark{display:flex;flex-direction:column;line-height:1.1;text-decoration:none}
.wordmark b{font-weight:500;letter-spacing:.14em;font-size:15px;color:var(--gold-deep)}
.wordmark span{font-size:10px;letter-spacing:.5em;color:var(--gold-mid)}
.lang{border:1px solid var(--gold-mid);background:transparent}
.lang button{font-weight:400;letter-spacing:.1em;color:var(--gold-deep)}
.lang button[aria-pressed="true"]{background:var(--gold-deep);color:#fff}


.tabs{border-radius:3px;padding:4px;gap:4px}
.tabs button{border-radius:2px;font-weight:400;letter-spacing:.06em}
.tabs button[aria-selected="true"]{background:var(--gold-grad);color:#fff}

h2{font-size:13px;letter-spacing:.3em;font-weight:500;color:var(--gold-deep);margin:34px 0 12px;position:relative;padding-top:14px;border-top:1px solid var(--line)}
h2::before{content:"";position:absolute;top:-1px;left:0;width:64px;height:2px;background:var(--gold-line)}
.card{border-radius:4px}
.agent{background:var(--soft)}
.agent .name{font-weight:500;font-size:20px}
.num{letter-spacing:.04em}
.copy{border-color:var(--gold-mid);color:var(--gold-deep);border-radius:999px}
.btn{border-radius:3px;font-weight:500;letter-spacing:.06em}
.btn.wa{background:#2f7d57}
.btn.sec{font-weight:400;border-color:var(--gold-mid);color:var(--gold-deep)}
.steps .n{background:var(--gold-grad);font-weight:500}
.alert{border-radius:3px;border-color:#e3b9b2}
.tag{border-radius:2px;letter-spacing:.12em;font-weight:500}
.check label{border-radius:3px}
.pin{border-radius:3px;border-color:var(--gold-mid)}
.lock{background:var(--soft)}
.who2 button{border-radius:999px;font-weight:400}
.who2 button[aria-pressed="true"]{background:var(--gold-deep);border-color:var(--gold-deep)}
.pol header{background:var(--gold-grad)}
.pol header .t{font-weight:500}
.v{font-weight:400}
.lockbtn{border-color:var(--gold-mid);color:var(--gold-deep);border-radius:999px}

/* policy grid: two equal columns, centred cells, hairline dividers */
.grid{display:grid;grid-template-columns:1fr 1fr}
.grid>*{border-bottom:1px solid var(--line);padding:18px 10px;text-align:center;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:4px}
.grid .r{border-left:1px solid var(--line)}
.grid .full{grid-column:1/-1}
.grid>*:nth-last-child(-n+2):not(.full){border-bottom:0}
.grid .k{font-size:14px;letter-spacing:.06em;color:var(--gold-deep)}
.grid .v{font-size:19px;font-weight:400;text-align:center;overflow-wrap:anywhere}
.grid .big .v{font-size:22px;font-weight:500}
.grid .long{font-size:15px!important}
.grid .nomed{color:var(--muted)}
