:root { --paper:#eee8dc; --ivory:#f7f3eb; --ink:#2b2722; --muted:#6d655c; --red:#913f30; --line:rgba(43,39,34,.2); --serif:"Songti SC",STSong,"Noto Serif CJK SC",serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font:16px/1.8 "PingFang SC","Microsoft YaHei",sans-serif; }
a { color:inherit; text-underline-offset:3px; }
.shell { width:min(100% - 40px,900px); margin:auto; }
header { padding:28px 0; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:11px; color:var(--ink); font-family:var(--serif); font-size:1.08rem; font-weight:700; text-decoration:none; }
.brand-mark { display:grid; place-items:center; width:34px; height:34px; color:var(--paper); background:var(--ink); font-family:Georgia,serif; }
nav { display:flex; flex-wrap:wrap; gap:20px; margin-top:20px; font-size:.88rem; }
nav a { color:var(--muted); text-decoration:none; } nav a:hover { color:var(--red); }
.hero { padding:clamp(42px,9vw,88px) 0; color:var(--ivory); background:linear-gradient(132deg,#173f52,#0b6974 58%,#13899a); }
.hero .shell { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,.4fr); gap:54px; align-items:center; }
.eyeline { margin:0 0 10px; color:#b6ebed; font-size:.72rem; font-weight:700; letter-spacing:.14em; }
h1,h2,h3 { font-family:var(--serif); line-height:1.22; } h1 { margin:0; font-size:clamp(2.65rem,7vw,5.1rem); letter-spacing:-.045em; } h2 { margin:0; font-size:clamp(2rem,4vw,3rem); } h3 { margin:0 0 10px; font-size:1.3rem; }
.lead { max-width:600px; margin:22px 0 0; color:#e2f1ef; font-size:1.08rem; }
.wave { display:grid; min-height:190px; padding:28px; border:1px solid rgba(220,248,245,.5); place-items:center; color:#d7f2ef; font-size:3.8rem; }
.wave span { font:700 .72rem/1 sans-serif; letter-spacing:.24em; }
main section:not(.hero) { padding:76px 0; }
.heading { display:flex; justify-content:space-between; gap:36px; align-items:end; margin-bottom:36px; }.heading p { max-width:360px; margin:0; color:var(--muted); text-align:right; }
.faq,.policy { border-top:1px solid var(--ink); }.faq { display:grid; grid-template-columns:1fr 1fr; }.faq article,.policy article { padding:28px 28px 30px 0; border-bottom:1px solid var(--line); }.faq article:nth-child(odd) { border-right:1px solid var(--line); padding-right:28px; }.faq article:nth-child(even) { padding-left:28px; }.faq p,.policy p { margin:0; color:var(--muted); }.faq a { display:inline-block; margin-top:16px; color:var(--red); font-weight:700; }.band { background:var(--ivory); }.english > p { margin:14px 0 32px; color:var(--muted); }.effective { margin:18px 0 0; color:#d5eeeb; font-size:.88rem; }
footer { padding:42px 0; border-top:1px solid var(--line); color:#bdb3a7; background:#211e1b; font-size:.84rem; } footer p { margin:0; }
@media (max-width:650px) { .shell { width:min(100% - 30px,900px); }.hero .shell,.heading,.faq { display:block; }.wave { margin-top:30px; min-height:135px; }.heading p { margin-top:16px; text-align:left; }.faq article,.faq article:nth-child(odd),.faq article:nth-child(even) { padding:22px 0; border-right:0; } main section:not(.hero) { padding:55px 0; } }
