/* WZX FIX9-E3-FOOTER-R1 | independent footer system | 2026-11-02
   Based on user-approved navy/gold visual. No dependency on older consult/footer classes. */
:root { --wzxf-navy:#11253e; --wzxf-navy2:#172e4d; --wzxf-ink:#eaf0f6; --wzxf-muted:#bbc8d8; --wzxf-gold:#bc945d; }
.wzx-footer-r1-cta, .wzx-footer-r1 { box-sizing:border-box; color:#f4f6fa; font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif; }
.wzx-footer-r1-cta *, .wzx-footer-r1 * { box-sizing:border-box; }
.wzx-footer-r1-cta a, .wzx-footer-r1 a { text-decoration:none; }
.wzx-footer-r1-cta { position:relative; isolation:isolate; overflow:hidden; background:linear-gradient(115deg,#11233c 0%,#213b60 72%,#2b4260 100%); }
.wzx-footer-r1-cta:before { content:""; position:absolute; z-index:-1; right:-11%; bottom:-310px; width:660px; height:520px; border:1px solid rgba(222,194,149,.11); border-radius:50%; transform:rotate(-15deg); pointer-events:none; }
.wzx-footer-r1-cta:after { content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:#bf9866; opacity:.95; }
.wzx-footer-r1-inner { width:min(1280px,calc(100% - 68px)); margin:0 auto; }
.wzx-footer-r1-cta-inner { min-height:190px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; column-gap:54px; padding:35px 0; }
.wzx-footer-r1-headline { border-left:4px solid #d1ad75; padding-left:24px; min-width:0; }
.wzx-footer-r1-headline h2 { margin:0 0 7px; color:#fff; font-family:"Noto Serif SC","Songti SC",SimSun,serif; font-size:clamp(26px,2.15vw,36px); font-weight:700; letter-spacing:.06em; line-height:1.4; }
.wzx-footer-r1-headline p { margin:0; color:#d7e0eb; font-size:15px; letter-spacing:.16em; line-height:1.7; }
.wzx-footer-r1-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:nowrap; gap:18px; }
.wzx-footer-r1-cta .wzx-footer-r1-btn { display:inline-flex; justify-content:center; align-items:center; gap:12px; border-radius:9px; min-height:58px; padding:14px 23px; white-space:nowrap; text-align:center; font-size:16px; font-weight:650; line-height:1.35; letter-spacing:.015em; transition:background .18s, border-color .18s, transform .18s; cursor:pointer; font-family:inherit; }
.wzx-footer-r1-btn svg { width:19px; height:19px; flex-shrink:0; }
.wzx-footer-r1-cta .wzx-footer-r1-btn-call { min-width:286px; border:1px solid #d1ab71; color:#fff; background:linear-gradient(110deg,#c7a06b,#ac8048); box-shadow:0 8px 23px rgba(0,0,0,.13); }
.wzx-footer-r1-cta .wzx-footer-r1-btn-copy { min-width:174px; border:1.5px solid #bd945c; color:#fff; background:rgba(10,27,50,.23); }
.wzx-footer-r1-cta .wzx-footer-r1-btn-copy svg { color:#dabb84; }
.wzx-footer-r1-cta .wzx-footer-r1-btn:hover { transform:translateY(-2px); }
.wzx-footer-r1-cta .wzx-footer-r1-btn-call:hover { background:#af864e; }
.wzx-footer-r1-cta .wzx-footer-r1-btn-copy:hover { background:rgba(199,161,99,.13); border-color:#e1b77d; }
.wzx-footer-r1-cta .wzx-footer-r1-btn:focus-visible, .wzx-footer-r1 a:focus-visible { outline:3px solid #f6d29d; outline-offset:3px; }
.wzx-footer-r1 { position:relative; overflow:hidden; background:#10253e; }
.wzx-footer-r1:before { content:""; position:absolute; right:-70px; top:-95px; width:360px; height:360px; border:1px solid rgba(206,171,118,.095); border-radius:50%; pointer-events:none; }
.wzx-footer-r1:after { content:""; position:absolute; right:20px; top:45px; width:240px; height:240px; border:1px solid rgba(206,171,118,.045); border-radius:50%; pointer-events:none; }
.wzx-footer-r1-top { display:grid; grid-template-columns:minmax(245px,1.05fr) minmax(440px,1.5fr) minmax(225px,.85fr); align-items:center; gap:clamp(22px,3vw,56px); padding:52px 0 42px; position:relative; z-index:1; }
.wzx-footer-r1-brand h2 { margin:0 0 10px; color:#fff; font-family:"Noto Serif SC","Songti SC",SimSun,serif; font-size:29px; font-weight:700; letter-spacing:.055em; line-height:1.4; }
.wzx-footer-r1-brand p { margin:0 0 7px; color:#e1e9f1; font-size:14px; line-height:1.6; }
.wzx-footer-r1-brand small { display:block; color:#bcc9d9; font-size:12px; line-height:1.8; }
.wzx-footer-r1-brand:after { content:""; display:block; width:58px; height:3px; margin-top:19px; background:#d0a970; }
.wzx-footer-r1-nav { border-left:1px solid rgba(188,203,220,.30); border-right:1px solid rgba(188,203,220,.30); min-height:108px; display:flex; align-items:center; justify-content:center; gap:clamp(13px,1.45vw,28px); padding:18px 23px; }
.wzx-footer-r1-nav a { color:#f2f5f9; font-size:14px; white-space:nowrap; transition:color .15s; line-height:1.8; }
.wzx-footer-r1-nav a:hover { color:#e0b680; }
.wzx-footer-r1-points { display:grid; gap:22px; }
.wzx-footer-r1-point { display:flex; align-items:center; gap:15px; color:#e8edf4; font-size:15px; line-height:1.5; white-space:nowrap; }
.wzx-footer-r1-point svg { width:25px; height:25px; flex:0 0 25px; stroke:#d7b074; fill:none; stroke-width:1.5; }
.wzx-footer-r1-bottom { border-top:1px solid rgba(188,203,220,.38); padding:17px 0 22px; display:flex; align-items:flex-start; justify-content:space-between; gap:25px; color:#b7c6d6; font-size:11.5px; line-height:1.9; position:relative; z-index:1; }
.wzx-footer-r1-bottom .wzx-footer-r1-legal-left { max-width:720px; }
.wzx-footer-r1-bottom .wzx-footer-r1-legal-right { text-align:right; }
@media (max-width:1250px) {
  .wzx-footer-r1-inner { width:min(1150px,calc(100% - 46px)); }
  .wzx-footer-r1-top { grid-template-columns:minmax(225px,1fr) minmax(360px,1.4fr) minmax(190px,.85fr); gap:20px; }
  .wzx-footer-r1-nav { padding-inline:15px; gap:13px; }
  .wzx-footer-r1-nav a { font-size:12px; }
  .wzx-footer-r1-point { font-size:13px; }
  .wzx-footer-r1-cta .wzx-footer-r1-btn { font-size:14px; min-height:54px; }
  .wzx-footer-r1-cta .wzx-footer-r1-btn-call { min-width:245px; }
  .wzx-footer-r1-cta .wzx-footer-r1-btn-copy { min-width:153px; }
}
@media (max-width:980px) {
  .wzx-footer-r1-cta-inner { grid-template-columns:1fr; gap:24px; padding:34px 0; }
  .wzx-footer-r1-actions { justify-content:flex-start; }
  .wzx-footer-r1-top { grid-template-columns:1fr 1fr; gap:30px; padding:42px 0 32px; }
  .wzx-footer-r1-brand { grid-column:1; }
  .wzx-footer-r1-nav { grid-column:1 / -1; grid-row:2; min-height:0; justify-content:flex-start; border:0; border-top:1px solid rgba(188,203,220,.25); padding:20px 0 0; gap:25px; }
  .wzx-footer-r1-nav a { font-size:14px; }
  .wzx-footer-r1-points { grid-column:2; grid-row:1; align-self:center; }
}
@media (max-width:690px) {
  .wzx-footer-r1-inner { width:calc(100% - 36px); }
  .wzx-footer-r1-cta-inner { padding:27px 0 25px; gap:20px; }
  .wzx-footer-r1-headline { padding-left:14px; border-left-width:3px; }
  .wzx-footer-r1-headline h2 { font-size:24px; letter-spacing:.025em; margin-bottom:4px; }
  .wzx-footer-r1-headline p { font-size:12px; letter-spacing:.055em; }
  .wzx-footer-r1-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .wzx-footer-r1-cta .wzx-footer-r1-btn { width:100%; min-width:0; min-height:49px; padding:11px 8px; gap:6px; font-size:12px; border-radius:9px; letter-spacing:0; }
  .wzx-footer-r1-btn svg { width:16px; height:16px; }
  .wzx-footer-r1-cta .wzx-footer-r1-btn-call { box-shadow:none; }
  .wzx-footer-r1-top { display:block; padding:36px 0 22px; }
  .wzx-footer-r1-brand h2 { font-size:25px; margin-bottom:6px; }
  .wzx-footer-r1-brand p { font-size:12px; }
  .wzx-footer-r1-brand small { font-size:11px; }
  .wzx-footer-r1-brand:after { margin-top:13px; width:45px; height:2px; }
  .wzx-footer-r1-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px 6px; margin-top:22px; padding:14px 0 0; border-top:1px solid rgba(188,203,220,.22); }
  .wzx-footer-r1-nav a { display:flex; align-items:center; min-height:40px; white-space:nowrap; font-size:12px; }
  .wzx-footer-r1-points { display:grid; grid-template-columns:1fr; gap:11px; margin-top:12px; padding:14px 0 0; border-top:1px solid rgba(188,203,220,.22); }
  .wzx-footer-r1-point { font-size:12px; gap:10px; }
  .wzx-footer-r1-point svg { width:20px; height:20px; flex-basis:20px; }
  .wzx-footer-r1-bottom { display:block; font-size:10.5px; padding:13px 0 calc(92px + env(safe-area-inset-bottom,0px)); line-height:1.7; }
  .wzx-footer-r1-bottom .wzx-footer-r1-legal-right { text-align:left; margin-top:7px; }
}
@media (max-width:359px) {
  .wzx-footer-r1-actions { grid-template-columns:1fr; }
  .wzx-footer-r1-cta .wzx-footer-r1-btn { font-size:13px; }
  .wzx-footer-r1-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (prefers-reduced-motion:reduce) { .wzx-footer-r1-cta .wzx-footer-r1-btn { transition:none; } }
