.quick-contact{position:fixed;z-index:1040;right:22px;top:50%;transform:translateY(-35%);width:72px;border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(12,23,48,.18);border:1px solid rgba(12,23,48,.08);overflow:visible}.quick-action{position:relative;width:72px;min-height:76px;border:0;border-bottom:1px solid #edf1ef;background:#fff;color:#536378;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-family:inherit;cursor:pointer;transition:.22s ease}.quick-action:first-child{border-radius:18px 18px 0 0}.quick-action:last-child{border:0;border-radius:0 0 18px 18px}.quick-action:hover,.quick-action:focus-visible{background:var(--brand);color:#fff;outline:0}.quick-icon{width:25px;height:25px}.quick-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.quick-label{font-size:10px;font-weight:700;white-space:nowrap}.wechat-popover{position:absolute;right:88px;top:50%;width:220px;padding:20px;border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 20px 55px rgba(12,23,48,.2);border:1px solid var(--line);opacity:0;visibility:hidden;transform:translate(10px,-50%);transition:.22s ease;cursor:default}.wechat-popover:after{content:"";position:absolute;right:-8px;top:50%;width:15px;height:15px;background:#fff;border-top:1px solid var(--line);border-right:1px solid var(--line);transform:translateY(-50%) rotate(45deg)}.wechat-popover strong{display:block;font-size:15px;margin-bottom:12px}.wechat-popover img{display:block;width:160px;height:160px;margin:auto;border-radius:12px}.wechat-popover small,.wechat-popover em{display:block;text-align:center}.wechat-popover small{font-size:12px;margin-top:10px}.wechat-popover em{font-size:9px;color:#8a9794;font-style:normal;margin-top:4px}.quick-wechat:hover .wechat-popover,.quick-wechat:focus .wechat-popover,.quick-wechat.is-open .wechat-popover{opacity:1;visibility:visible;transform:translate(0,-50%)}.back-to-top{opacity:0;pointer-events:none;transition:opacity .25s,background .22s,color .22s}.back-to-top.is-visible{opacity:1;pointer-events:auto}.mobile-contact-bar{display:none}.footer-contact-card{display:grid;grid-template-columns:1fr 230px;align-items:center;gap:60px;margin-bottom:60px;padding:48px 58px;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 50px rgba(25,50,50,.07)}.footer-contact-card h2{margin:12px 0 14px;font-size:clamp(30px,3vw,42px);font-weight:750;letter-spacing:-1.5px}.footer-contact-card p{max-width:620px;color:var(--muted);line-height:1.85;font-size:14px}.wechat-id{display:inline-flex;margin-top:8px;padding:10px 15px;border-radius:10px;background:#e9f8f3;color:var(--brand-dark);font-size:13px}.footer-qr{text-align:center}.footer-qr img{display:block;width:160px;height:190px;margin:auto;border-radius:16px;box-shadow:0 10px 30px rgba(12,23,48,.1)}.footer-qr span{display:block;margin-top:10px;font-size:10px;font-weight:700;color:#73817f;letter-spacing:.5px}
@media(max-width:1200px){.quick-contact{right:10px}}
@media(max-width:991px){.quick-contact{display:none}.mobile-contact-bar{position:fixed;z-index:1050;display:grid;grid-template-columns:repeat(2,1fr);left:12px;right:12px;bottom:12px;border-radius:16px;background:#fff;box-shadow:0 12px 40px rgba(12,23,48,.24);border:1px solid rgba(12,23,48,.08);overflow:hidden}.mobile-contact-bar a,.mobile-contact-bar button{min-height:55px;border:0;border-right:1px solid #e6ece9;background:#fff;color:var(--ink);font-family:inherit;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px}.mobile-contact-bar button{background:var(--brand);color:#062920}.mobile-contact-bar span{font-size:16px}.footer-contact-card{grid-template-columns:1fr 190px;padding:38px;gap:30px}.footer-qr img{width:170px;height:170px}body{padding-bottom:76px}}
@media(max-width:575px){.footer-contact-card{grid-template-columns:1fr;padding:28px 20px;text-align:center}.footer-contact-card p{font-size:13px}.wechat-id{justify-content:center}}
.form-message {
  display: none;
  margin-top: 12px;
  padding: 11px 14px;
  border-radius: 10px;
  text-align: center;
  font-size: 12px;
  line-height: 1.6;
}

.form-message.success {
  display: block;
  color: #08755f;
  background: #e3f8f2;
  border: 1px solid #aee8d9;
}

.form-message.error {
  display: block;
  color: #a52a2a;
  background: #fff0f0;
  border: 1px solid #f1c4c4;
}

#submitConsultation:disabled {
  cursor: not-allowed;
  opacity: 0.7;
}
