/* 全站页脚：深蓝承载信息，橙色仅用于品牌强调和转化。 */
.site-footer{position:relative;border-top:3px solid var(--orange);background:#122f46;color:#dbe7ed}
.cta{padding:48px 0}
.footer-main{padding:52px 0 44px}
.footer-grid{display:grid;grid-template-columns:1.55fr 1.08fr .78fr .9fr 1.05fr;gap:32px;align-items:start}
.footer-grid .footer-brand-lockup{display:inline-flex;align-items:center;gap:14px;width:auto}
.footer-brand-lockup .brand-mark{flex-basis:46px;width:46px;height:56px}
.footer-brand-lockup .brand-mark img{width:168px;height:56px;filter:brightness(0) invert(1);opacity:.96}
.footer-brand-lockup .brand-name{display:block;color:#fff;font-size:26px;font-weight:600;line-height:1.1;letter-spacing:.025em;white-space:nowrap}
.footer-brand p{max-width:305px;margin:18px 0 0;color:#aebfca;font-size:14px;line-height:1.85}
.footer-brand{min-height:100%;padding-right:28px;border-right:1px solid rgba(255,255,255,.1)}
.footer-column h3{position:relative;margin:4px 0 19px;padding-bottom:11px;color:#fff;font-size:16px;font-weight:700}
.footer-column h3:after{content:"";position:absolute;left:0;bottom:0;width:24px;height:2px;border-radius:2px;background:rgba(255,255,255,.42)}
.footer-column a{display:block;margin:10px 0;color:#b8c9d3;font-size:14px;line-height:1.55;transition:color .18s}
.footer-column a:hover{color:#fff}
.footer-contact .footer-contact-link{display:flex;align-items:flex-start;gap:8px}
.footer-contact .contact-icon{width:16px;height:16px;margin-top:3px;color:#ff9a76}
.footer-contact .footer-phone{margin-top:0;color:#ff7947;font-size:18px;font-weight:700;letter-spacing:.02em}
.footer-bottom{padding:16px 0;border-top:1px solid rgba(255,255,255,.1);background:rgba(5,28,44,.15);color:#8fa7b5;font-size:13px}
.footer-bottom .container{display:flex;justify-content:space-between;gap:20px}
.float-contact{transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
.float-contact.is-hidden{opacity:0;visibility:hidden;transform:translateY(12px);pointer-events:none}
.quick-scroll{position:fixed;right:24px;top:50%;z-index:39;display:grid;gap:8px;opacity:0;visibility:hidden;transform:translateY(calc(-50% + 10px));transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
.quick-scroll.is-visible{opacity:1;visibility:visible;transform:translateY(-50%)}
.quick-scroll button{display:grid;width:44px;height:44px;padding:0;place-items:center;border:1px solid rgba(180,201,212,.78);border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 8px 22px rgba(19,50,74,.12);color:var(--navy);font-size:22px;font-weight:700;line-height:1;backdrop-filter:blur(8px);transition:color .18s,border-color .18s,background-color .18s,transform .18s,opacity .18s}
.quick-scroll button:hover{border-color:var(--orange);background:var(--orange);color:#fff;transform:translateY(-1px)}
.quick-scroll button:focus-visible{outline:3px solid rgba(239,84,24,.26);outline-offset:2px}
.quick-scroll button:disabled{opacity:.32;pointer-events:none}
.quick-scroll button[hidden]{display:none}
/* 首页桌面工具栏：宽屏放在内容外侧，窄桌面预留独立边栏。 */
body[data-page="home"] .float-contact{right:24px;bottom:24px}
body[data-page="home"] .float-contact a{box-shadow:0 4px 14px rgba(19,50,74,.14);font-weight:700}
body[data-page="home"] .float-contact a:focus-visible{outline:3px solid rgba(239,84,24,.4);outline-offset:3px}
@media(min-width:821px) and (max-width:1519px){
  body[data-page="home"] main>section:not(.v9-hero)>.container,
  body[data-page="home"] #siteFooter .container{width:min(var(--max),calc(100% - 160px))}
  body[data-page="home"] .float-contact{right:12px}
  body[data-page="home"] .float-contact a{width:52px;min-width:0;height:56px;padding:8px 12px;border-radius:12px;font-size:14px;line-height:20px;text-align:center;word-break:normal}
  body[data-page="home"] .quick-scroll{right:12px;width:52px;justify-items:center}
  body[data-page="home"] .quick-scroll button{width:40px;height:40px;font-size:20px;box-shadow:0 3px 10px rgba(19,50,74,.08)}
}
@media(min-width:821px) and (max-height:560px){
  body[data-page="home"] .quick-scroll{top:auto;bottom:160px;transform:translateY(10px)}
  body[data-page="home"] .quick-scroll.is-visible{transform:translateY(0)}
}
@media(max-width:1100px){.footer-grid{grid-template-columns:repeat(4,1fr);gap:28px}.footer-brand{grid-column:1/-1;min-height:0;padding-right:0;padding-bottom:22px;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.footer-brand p{max-width:520px;margin-top:12px}}
@media(max-width:820px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-main{padding:44px 0 38px}.quick-scroll,.quick-scroll.is-visible{right:12px;top:auto;bottom:calc(88px + env(safe-area-inset-bottom));transform:translateY(0)}.quick-scroll button{width:40px;height:40px;font-size:20px}}
@media(max-width:560px){.cta{padding:42px 0}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 18px}.footer-brand{grid-column:1/-1}.footer-main{padding:38px 0}.footer-column h3{margin-bottom:14px}.footer-column a{margin:8px 0}.footer-bottom .container{display:block}.footer-bottom span{display:block;margin:4px 0}}

@media(max-width:820px){
  body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
  .mobile-bottom{grid-template-columns:repeat(4,1fr);height:calc(68px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}
  .mobile-bottom a,.mobile-bottom a:last-child{position:relative;display:flex;height:68px;flex-direction:column;gap:2px;align-items:center;justify-content:center;background:transparent;color:#607585;font-weight:600;transition:color .16s,background-color .16s}
  .mobile-bottom a span{display:grid;width:24px;height:24px;place-items:center;line-height:1}
  .mobile-bottom a svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .mobile-bottom a b{font-size:12px;font-weight:700;line-height:18px}
  .mobile-bottom a[aria-current="page"]{background:#fff7f3;color:var(--orange)}
  .mobile-bottom a[aria-current="page"]:before{content:"";position:absolute;top:0;left:31%;right:31%;height:3px;border-radius:0 0 3px 3px;background:var(--orange)}
  .mobile-bottom a:active{background:#f3f7f9;transform:scale(.97)}
  .mobile-bottom.mobile-detail-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:10px;height:calc(70px + env(safe-area-inset-bottom));padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#fff}
  .mobile-bottom.mobile-detail-actions a,.mobile-bottom.mobile-detail-actions a:last-child,.mobile-bottom.mobile-detail-actions button{display:flex;height:50px;flex-direction:row;align-items:center;justify-content:center;border:1px solid #c9d8df;border-radius:12px;background:#fff;color:var(--navy);font-size:15px;font-weight:800}
  .mobile-bottom.mobile-detail-actions .mobile-detail-primary{border-color:var(--orange);background:var(--orange);color:#fff;box-shadow:0 7px 18px rgba(239,84,24,.2)}
}

@media(max-width:560px){
  .footer-main{padding:27px 0 22px}
  .footer-grid{display:block}
  .footer-brand{padding:0 0 20px;margin-bottom:2px;border-bottom:1px solid rgba(255,255,255,.12)}
  .footer-brand p{margin-top:10px;font-size:13px;line-height:1.7}
  .footer-column{border-bottom:1px solid rgba(255,255,255,.1)}
  .footer-column h3{margin:0;padding:15px 34px 15px 0;font-size:15px;line-height:20px;cursor:pointer;user-select:none}
  .footer-column h3:after{left:auto;right:5px;bottom:21px;width:8px;height:8px;border-right:1.5px solid #91a8b6;border-bottom:1.5px solid #91a8b6;border-radius:0;background:transparent;transform:rotate(45deg);transition:transform .18s,border-color .18s}
  .footer-column.is-open h3:after{bottom:17px;border-color:#fff;transform:rotate(225deg)}
  .footer-column h3:focus-visible{outline:2px solid rgba(255,255,255,.65);outline-offset:2px;border-radius:5px}
  .footer-column>a{display:none}
  .footer-column.is-open>a{display:block;margin:0 0 11px;padding-left:1px}
  .footer-column.is-open>a:last-child{margin-bottom:16px}
  .footer-bottom{padding:13px 0}
}

@media(prefers-reduced-motion:reduce){
  .mobile-bottom a,.footer-column h3:after{transition:none}
}
