/* Shared site footer and fixed contact controls. */
.site-footer{position:relative;background:#252525;color:#b9b9b9;padding:80px max(7.7vw,32px) 90px;font-size:14px}.footer-inner{max-width:1320px;margin:auto}.footer-nav{display:grid;grid-template-columns:1.1fr 1.1fr 1.1fr 1.1fr 1fr;min-height:386px;padding:0 4px;border-bottom:1px solid #8d8d8d}.footer-nav h3{margin:0 0 32px;color:#d0d0d0;font-size:19px;line-height:1;font-weight:600}.footer-nav a{display:block;width:max-content;margin:0 0 17px;color:#b8b8b8;font-size:16px;line-height:1.15;transition:color .2s}.footer-nav a:hover{color:#fff}.footer-brand-row{display:flex;align-items:flex-end;justify-content:space-between;padding:34px 4px 18px}.footer-company .footer-logo{display:block;width:138px;margin:0 0 32px;filter:brightness(0) invert(1)}.footer-company p{margin:0;color:#bababa;font-size:14px}.footer-social{position:relative}.social-links{display:flex;align-items:center;gap:20px}.social-links>a,.footer-social-trigger{position:relative;display:block;width:44px;height:44px;cursor:pointer}.social-links>a>img,.footer-social-trigger>img{display:block;width:100%;height:100%;object-fit:contain}.footer-social-trigger:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:50%}.social-popover,.floating-popover{position:absolute;z-index:8;display:flex;visibility:hidden;opacity:0;pointer-events:none;box-shadow:0 8px 24px #0005;transition:opacity .2s,transform .2s}.footer-social-trigger:hover .social-popover,.footer-social-trigger:focus .social-popover,.floating-service:hover .floating-popover,.floating-service:focus .floating-popover,.floating-qr:hover .floating-popover,.floating-qr:focus .floating-popover{visibility:visible;opacity:1;pointer-events:auto}.wechat-popover{bottom:calc(100% + 15px);left:50%;width:103px;flex-direction:column;align-items:center;gap:6px;padding:4px;background:#fff;color:#333;font-size:11px;white-space:nowrap;transform:translate(-50%,8px)}.footer-social-trigger:hover .wechat-popover,.footer-social-trigger:focus .wechat-popover{transform:translate(-50%,0)}.wechat-popover>img{width:95px;height:95px;object-fit:cover}.wechat-popover b{padding-bottom:3px;font-weight:500}.service-popover{right:-10px;bottom:calc(100% + 18px);width:246px;flex-direction:column;padding:17px 20px;border-radius:7px;background:#6b6b6b;color:#151515;transform:translateY(8px)}.footer-social-trigger:hover .service-popover,.footer-social-trigger:focus .service-popover{transform:translateY(0)}.contact-line{display:flex;gap:10px;align-items:flex-start;padding:2px 0 13px}.contact-line+.contact-line{padding-top:13px;padding-bottom:2px;border-top:1px dashed #999}.contact-line>img{width:29px;height:29px;flex:none}.contact-line>span{display:grid;gap:5px;font-size:14px}.contact-line b{font-weight:500}.contact-line a{color:#151515;font-size:12px;white-space:nowrap}.copyright{display:flex;align-items:center;gap:15px;padding:18px 4px 0;color:#aaa;font-size:13px;line-height:1.4}.copyright a{color:#aaa;transition:color .2s}.copyright a:hover{color:#fff}.copyright i{display:block;width:1px;height:13px;background:#777}.police-record{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.police-record img{width:17px;height:17px;object-fit:contain}.floating-tools{position:fixed;z-index:20;right:calc(5vw + 2px);top:58%;display:grid;gap:15px;transform:translateY(-50%)}.floating-tool{position:relative;display:grid;width:50px;height:50px;place-items:center;border:0;border-radius:4px;background:transparent;box-shadow:none;cursor:pointer}.floating-tool:hover,.floating-tool:focus-visible{outline:none;transform:scale(1.04)}.floating-icon{display:block;width:100%;height:100%;object-fit:contain}.back-to-top .floating-icon{transform:scale(1.32)}.floating-popover{right:calc(100% + 17px);top:0;width:246px;flex-direction:column;padding:18px 20px;border-radius:7px;background:#6b6b6b;color:#151515;transform:translateX(8px)}.floating-service:hover .floating-popover,.floating-service:focus .floating-popover{transform:translateX(0)}.floating-qr-popover{top:50%;width:176px;padding:8px;background:#fff;transform:translate(8px,-50%)}.floating-qr-popover>img{display:block;width:160px;height:160px;object-fit:cover}.floating-qr:hover .floating-qr-popover,.floating-qr:focus .floating-qr-popover{transform:translate(0,-50%)}
@media(max-width:900px){.site-footer{padding-top:58px}.footer-nav{grid-template-columns:repeat(3,1fr);gap:38px;min-height:0;padding-bottom:35px}.footer-nav h3{margin-bottom:24px}.footer-brand-row{align-items:flex-start}.floating-tools{right:20px}}
@media(max-width:620px){.site-footer{padding:46px 24px 38px}.footer-nav{grid-template-columns:1fr 1fr;gap:30px;padding-bottom:28px}.footer-nav h3{font-size:16px}.footer-nav a{margin-bottom:13px;font-size:13px}.footer-brand-row{display:grid;gap:28px;padding:28px 0 18px}.footer-company .footer-logo{width:125px;margin-bottom:22px}.footer-company p{font-size:12px;line-height:1.65}.social-links{gap:12px}.social-links>a,.footer-social-trigger{width:40px;height:40px}.service-popover{right:0;width:235px}.copyright{flex-wrap:wrap;gap:8px;font-size:11px}.copyright i{height:11px}.floating-tools{right:12px;top:auto;bottom:88px;transform:none}.floating-tool{width:38px;height:38px}.floating-popover{right:calc(100% + 10px);top:auto;bottom:0;width:230px}.floating-qr-popover{top:50%;bottom:auto;width:176px}.wechat-popover{left:0;transform:translate(0,8px)}.footer-social-trigger:hover .wechat-popover,.footer-social-trigger:focus .wechat-popover{transform:translate(0,0)}}

/* Values called out in the footer review sheet. */
@media (min-width:621px){
  .footer-nav h3{color:#b4b4b4;font-size:18px}
  .footer-nav a{color:#b4b4b4;font-size:16px}
  .footer-company .footer-logo{width:138px;height:40px;object-fit:contain}
  .footer-company p{color:#b4b4b4;font-size:14px}
  .social-links>a,.footer-social-trigger{width:40px;height:40px}
  .copyright{color:#b4b4b4;font-size:12px}
  .floating-tool{width:41px;height:41px}
}
