@font-face {
  font-family: "isoPOS Orbitron";
  src: url("../assets/fonts/orbitron-regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
.isopos-footer-wrap, .isopos-footer-wrap * { box-sizing: border-box; }
.isopos-footer-wrap {
  margin: 0;
  text-align: left;
  text-align-last: auto;
  font: 400 15px/1.6 "Noto Sans TC", "Microsoft JhengHei", "PingFang TC", sans-serif;
  color: #333;
}
.isopos-footer-wrap .isopos-footer-cta { padding: 96px 20px; background: #f9f9f9; text-align: center; }
.isopos-footer-wrap .isopos-footer-cta a {
  display: inline-block;
  padding: 15px 37.5px;
  border: 3px solid #550055;
  border-radius: 5px;
  background: #fff;
  color: #333;
  font-size: 18px;
  text-decoration: none;
}
.isopos-footer-wrap .isopos-footer-cta span,
.isopos-footer-wrap .isopos-footer__brand { font-family: "isoPOS Orbitron", Orbitron, sans-serif; }
[data-isopos-cta="false"] .isopos-footer-cta { display: none; }
.isopos-footer-wrap .isopos-footer { margin: 0; padding: 45px 30px; background: #333; color: #fff; text-align: center; }
.isopos-footer .isopos-footer__inner { max-width: 1200px; margin: 0 auto; display: flex; flex-direction: column; gap: 22.5px; }
.isopos-footer .isopos-footer__top {
  display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start;
  gap: 22.5px; border-bottom: 1px solid rgb(255 255 255 / 30%); padding-bottom: 22.5px; text-align: left;
}
.isopos-footer .isopos-footer__groups { display: flex; flex-wrap: wrap; gap: 37.5px 45px; max-width: 100%; }
.isopos-footer .isopos-footer__group { margin: 0; padding: 0; }
.isopos-footer .isopos-footer__group h2 {
  margin: 10px 0 13.5px; padding: 0; border: 0;
  font: 700 12px/1.6 "Segoe UI", Arial, sans-serif; letter-spacing: .08em;
  color: rgb(255 255 255 / 55%); text-align: left;
}
.isopos-footer .isopos-footer__group nav { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.isopos-footer a { color: #fff; text-decoration: none; font-weight: 500; overflow-wrap: anywhere; }
.isopos-footer a:hover { color: #fff; text-decoration: underline; }
.isopos-footer-wrap a:focus-visible { outline: 2px solid #aebbd5; outline-offset: 5px; }
.isopos-footer .isopos-footer__contact { text-align: right; }
.isopos-footer .isopos-footer__contact p { margin: 3px 0; padding: 0; }
.isopos-footer .isopos-footer__bottom { text-align: center; font-size: 12px; line-height: 1.4; }
.isopos-footer .isopos-footer__bottom p { margin: 0; padding: 0; }
/* Official support link is transparent; reveal it for hover and keyboard access. */
.isopos-footer .isopos-footer__support { color: transparent; font-weight: 400; }
.isopos-footer .isopos-footer__support:hover,
.isopos-footer .isopos-footer__support:focus-visible { color: #fff; }
@media (max-width: 768px) {
  .isopos-footer .isopos-footer__top { flex-direction: column; gap: 22.5px; border-bottom: none; padding-bottom: 0; }
  .isopos-footer .isopos-footer__groups { width: 100%; gap: 27px 37.5px; }
  .isopos-footer .isopos-footer__contact { text-align: left; }
}
