:root { --wine:#76051d; --deep:#3b1019; --paper:#fffdfa; --ink:#311b20; --muted:#735b60; --line:#eadde0; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif; line-height:1.7; }
a { color:inherit; text-decoration:none; }
.site-header, footer { max-width:1180px; margin:auto; padding:22px 30px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.site-header { border-bottom:1px solid #f3e9ea; }
.brand { display:flex; align-items:center; gap:10px; line-height:1.05; }
.brand img { width:41px; height:41px; border-radius:11px; }
.brand strong { display:block; font-size:18px; letter-spacing:.08em; }.brand small { color:var(--wine); font-size:11px; font-weight:800; letter-spacing:.08em; }
nav { display:flex; gap:24px; font-size:14px; font-weight:700; color:#76595f; } nav a { padding:5px 0; } nav .active { color:var(--wine); border-bottom:2px solid var(--wine); }
main { max-width:1180px; margin:auto; padding:0 30px; }.hero { min-height:650px; display:grid; grid-template-columns:1.15fr .85fr; gap:45px; align-items:center; }
.eyebrow { margin:0 0 14px; color:var(--wine); font-size:12px; font-weight:900; letter-spacing:.14em; }.hero h1,.legal-page h1,.support-page h1 { margin:0; font-size:clamp(42px,6vw,74px); line-height:1.18; letter-spacing:-.05em; }.lead { max-width:570px; font-size:18px; color:var(--muted); }
.hero-actions { display:flex; gap:12px; margin:30px 0; }.button { padding:12px 18px; border-radius:999px; font-weight:800; font-size:14px; }.primary { color:#fff; background:var(--wine); }.quiet { border:1px solid #d9c5c9; }.voucher { color:var(--wine); font-weight:800; font-size:13px; }.voucher span { margin:0 8px; color:#cfabb3; }
.hero-mark { position:relative; min-height:410px; display:grid; place-items:center; overflow:hidden; background:linear-gradient(145deg,#fff5f3,#fff); border:1px solid #f1dfdf; border-radius:42px; }.hero-mark img { position:relative; width:min(235px,57%); z-index:1; filter:drop-shadow(0 20px 26px #79051d2a); }.hero-mark p { position:absolute; bottom:33px; margin:0; text-align:center; color:#795f63; font-size:13px; line-height:1.55; }.hero-mark strong { color:var(--wine); }.mark-orbit { position:absolute; border:1px solid #bd71801f; border-radius:50%; }.orbit-one { width:390px; height:390px; }.orbit-two { width:550px; height:550px; }
.section { padding:95px 0; }.section h2,.local-note h2,.faq h2 { margin:0 0 32px; font-size:36px; letter-spacing:-.04em; }.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }.feature-grid article { min-height:245px; padding:28px 28px 0 0; border-right:1px solid var(--line); }.feature-grid article+article { padding-left:28px; }.feature-grid article:last-child { border-right:0; }.number { color:#bd7784; font:700 13px ui-monospace,monospace; }.feature-grid h3 { margin:38px 0 8px; font-size:21px; }.feature-grid p { color:var(--muted); font-size:15px; }
.local-note { display:grid; grid-template-columns:1fr 1fr; gap:55px; align-items:center; padding:50px; color:#fff; background:var(--deep); border-radius:26px; }.local-note h2 { margin:0; font-size:35px; }.local-note .eyebrow { color:#e7abb6; }.local-note p:last-child { color:#e0ced1; }.disclaimer { margin:58px 0 85px; padding:18px 22px; color:#725e63; border-left:3px solid #c68791; background:#fff8f7; font-size:14px; }
.legal-page,.support-page { max-width:800px; padding-top:75px; padding-bottom:92px; }.updated { color:#8d7379; }.action-required { margin:32px 0; padding:16px 18px; border:1px solid #e8c9ce; border-radius:10px; color:#7d2635; background:#fff6f5; }.legal-page section { margin-top:38px; }.legal-page h2 { font-size:21px; }.legal-page li,.legal-page p { color:#5e484d; }.support-page { min-height:70vh; }.support-card { margin:42px 0 64px; padding:34px; border-radius:20px; color:#fff; background:var(--wine); }.support-card span { color:#efcbd1; font-size:13px; font-weight:800; }.support-card strong { display:block; margin:6px 0 12px; font-size:26px; }.support-card p { color:#f4dfe2; }.faq details { padding:18px 0; border-top:1px solid var(--line); }.faq summary { cursor:pointer; font-weight:800; }.faq p { color:var(--muted); }
footer { color:#866f73; border-top:1px solid #f0e7e8; font-size:13px; }footer span:last-child { display:flex; gap:18px; }
@media (max-width:720px) { .site-header,footer { padding:18px 20px; }.site-header { align-items:flex-start; }.site-header nav { flex-wrap:wrap; justify-content:flex-end; gap:10px 14px; font-size:12px; } main { padding:0 20px; }.hero { grid-template-columns:1fr; padding:65px 0 55px; min-height:auto; }.hero h1 { font-size:45px; }.hero-mark { min-height:340px; }.feature-grid,.local-note { grid-template-columns:1fr; }.feature-grid article,.feature-grid article+article { min-height:auto; padding:25px 0; border-right:0; border-bottom:1px solid var(--line); }.local-note { gap:10px; padding:30px; }.local-note h2 { font-size:30px; }.legal-page,.support-page { padding-top:48px; }.legal-page h1,.support-page h1 { font-size:45px; } footer { flex-direction:column; align-items:flex-start; } }
