.install-grid > *, .install-cost-card > * { min-width: 0; }
.install-cost-card { grid-template-columns: minmax(0,.55fr) minmax(0,1fr); }
.install-card-copy h3 { overflow-wrap: break-word; }
.scan-demo { min-width: 0; width: 100%; }
.demo-playing .receipt-front { animation: receipt-demo 1.8s ease; }
.demo-playing .smart-screen { outline: 2px solid var(--orange); outline-offset: -2px; }
@keyframes receipt-demo { 0%,100% { translate: 0 0; } 45% { translate: 0 -18px; } }
@media (min-width: 601px) and (max-width: 1100px) {
  .scan-demo { gap: 10px; }
  .scan-table { width: 105px; padding: 18px 10px; }
  .scan-table .scan-code { width: 74px; height: 74px; }
  .scan-handset { width: 145px; height: 300px; }
  .scan-app-head { padding: 8px; }
  .scan-app-head span { font-size: 8px; }
  .scan-viewfinder { inset: 80px 10px 65px; }
}
@media (min-width: 641px) and (max-width: 1100px) {
  .payment-orbit { width: 100%; margin-inline: 0; transform: none; }
  .node-online, .node-cash { left: 2%; }
  .node-card, .node-meal { right: 2%; }
  .install-cost-card { grid-template-columns: 1fr; }
}
@media (min-width: 901px) and (max-width: 1100px) {
  .announcement, .desktop-nav, .nav-wrap > .nav-drop, .mega-menu, .nav-actions > .button { display: none; }
  .site-header { height: 68px; backdrop-filter: none; -webkit-backdrop-filter: none; background: #f7f6f2; }
  .nav-actions { display: flex; margin-left: auto; }
  .menu-toggle { display: flex; margin-left: 8px; width: 42px; height: 42px; border: 0; background: transparent; flex-direction: column; justify-content: center; align-items: center; gap: 6px; }
  .menu-toggle span { width: 22px; height: 2px; background: var(--ink); transition: .25s; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(4px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-4px) rotate(-45deg); }
  .mobile-menu { display: flex; position: fixed; z-index: 99; inset: 68px 0 0; height: calc(100dvh - 68px); overflow-y: auto; background: #f7f6f2; padding: 24px 40px 100px; flex-direction: column; opacity: 0; visibility: hidden; transform: translateY(-15px); transition: .25s; }
  .mobile-menu.open { opacity: 1; visibility: visible; transform: none; }
  .mobile-menu > a:not(.button) { padding: 16px 2px; border-bottom: 1px solid var(--line); font-size: 20px; font-weight: 600; }
  .mobile-menu .button { margin-top: 24px; }
  .mobile-account-links { display: none; }
  .account-panel { right: -50px; max-height: calc(100dvh - 82px); overflow-y: auto; }
}
@media (max-width: 640px) { .install-cost-card { grid-template-columns: 1fr; } }
@media (max-height: 700px) and (min-width: 601px) {
  #operation .story-visual { top: 80px; }
  #operation .story-window { height: calc(100dvh - 100px); min-height: 280px; }
}
