/* POS product photography and the shared on-demand viewer. */
.smart-pos-intro h1,.mobile-pos-intro h1,.register-pos-intro h1{font-size:clamp(32px,4.4vw,54px)}
.smart-pos-photo,.mobile-pos-photo,.register-pos-photo{min-width:0;text-align:center}
.smart-pos-photo>img,.mobile-pos-photo>img,.register-pos-photo>img{display:block;width:100%;height:auto;border-radius:20px}
.smart-pos-photo figcaption,.mobile-pos-photo figcaption,.register-pos-photo figcaption{min-height:68px;padding-top:12px}
.smart-pos-photo,.mobile-pos-photo,.register-pos-photo{grid-column:2;grid-row:1}
.smart-pos-copy,.mobile-pos-copy,.register-pos-copy{grid-column:1;grid-row:1}
.pos-simulation-trigger{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:10px 16px;border:0;border-radius:8px;background:transparent;color:var(--ink);font:700 20px/1.4 var(--font-display);cursor:pointer}
.pos-simulation-trigger::before{content:"";position:absolute;z-index:-1;inset:12px 0 5px;background:var(--lime);border-radius:7px 3px 6px 4px;transform:rotate(-1.5deg);transition:transform .18s ease}
.pos-simulation-trigger:hover::before{transform:rotate(.5deg) scaleY(1.16)}
.pos-simulation-trigger svg{width:30px;height:30px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.pos-simulation-degrees{padding-inline-start:10px;border-inline-start:1px solid #0a0b0f40;font-family:'Space Grotesk',sans-serif;font-size:17px}
html.pos-simulation-open{overflow:hidden}
.pos-simulation{width:min(800px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--mist);border-radius:24px;background:var(--paper);color:var(--ink);box-shadow:0 24px 80px #0004;overscroll-behavior:contain}
.pos-simulation::backdrop{background:#0a0b0fb8}
.pos-simulation-shell{padding:18px 24px 24px}
.pos-simulation-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.pos-simulation-heading h2{font-size:22px;line-height:1.35}
.pos-simulation-heading h2 span{display:inline-block;margin-inline-start:8px;color:var(--slate);font:500 17px 'Space Grotesk',sans-serif}
.pos-simulation-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--mist);border-radius:50%;background:white;color:var(--ink);cursor:pointer}
.pos-simulation-close:hover{background:var(--lime)}
.pos-simulation-close svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.pos-simulation-stage{position:relative;display:grid;place-items:center;width:100%;height:clamp(200px,54dvh,540px);margin:10px 0 0;overflow:hidden;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;border-radius:12px;background:#f5f3ef}
.pos-simulation-stage.dragging{cursor:grabbing}
.pos-simulation-frame{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;pointer-events:none}
.pos-simulation-angle{position:absolute;bottom:12px;inset-inline-end:14px;font:500 14px 'Space Grotesk',sans-serif;background:#ffffffd9;padding:4px 10px;border-radius:20px}
.pos-simulation-controls{text-align:center}
.pos-simulation-status{font-size:14px;color:var(--slate);margin-top:8px}
.pos-simulation-hint{font-size:14px;color:var(--slate);margin-top:10px}
.pos-simulation-range-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#pos-simulation-rotation{display:block;width:min(100%,480px);height:44px;margin:0 auto;accent-color:var(--ink);cursor:ew-resize}
.pos-simulation-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.pos-simulation-actions .btn{min-height:44px;font-size:15px;padding:10px 22px}
@media(max-width:980px){
  .smart-pos-intro .hero-grid,.mobile-pos-intro .hero-grid,.register-pos-intro .hero-grid{max-width:728px}
  .smart-pos-photo,.smart-pos-copy,.mobile-pos-photo,.mobile-pos-copy,.register-pos-photo,.register-pos-copy{grid-column:auto;grid-row:auto}
}
@media(max-width:600px){
  .hero.smart-pos-intro{padding-top:14px}
  .hero.mobile-pos-intro{padding-top:14px}
  .hero.register-pos-intro{padding-top:14px}
  .mobile-pos-intro .crumbs{margin-bottom:14px;font-size:12px}
  .smart-pos-intro .crumbs{margin-bottom:14px;font-size:12px}
  .register-pos-intro .crumbs{margin-bottom:14px;font-size:12px}
  .smart-pos-photo>img,.mobile-pos-photo>img,.register-pos-photo>img{border-radius:16px}
  .pos-simulation-trigger{font-size:18px;gap:10px;padding-inline:12px}
  .pos-simulation-trigger svg{width:26px;height:26px}
  .pos-simulation-degrees{font-size:15px}
  .pos-simulation{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:18px}
  .pos-simulation-shell{padding:12px 14px 18px}
  .pos-simulation-heading h2{font-size:19px}
  .pos-simulation-heading h2 span{font-size:14px;margin-inline-start:4px}
  .pos-simulation-stage{height:clamp(200px,48dvh,440px)}
}
@media(prefers-reduced-motion:reduce){.pos-simulation-trigger::before{transition:none}}
