.venue-reward-card{background:#fff;border:1px solid #dce3ec;border-radius:20px;padding:24px;margin:20px 0}.venue-reward-card h2{font-size:28px;margin:12px 0}.venue-reward-card p{line-height:1.6}.venue-checkin-page .button{margin:8px 0}.venue-qr-image{display:block;width:220px;max-width:100%;margin:20px auto}.venue-qr-actions{text-align:center;margin-top:24px;overflow-wrap:anywhere}
.venue-print-sign{box-sizing:border-box;max-width:760px;margin:24px auto;background:#fff;padding:40px 48px 28px;text-align:center;color:#172a43;border:1px solid #dce3ec;border-radius:20px}
.venue-sign-brand{font-size:12px;font-weight:800;letter-spacing:2.5px;color:#087b70}
.venue-sign-venue{font-size:28px;line-height:1.2;font-weight:750;margin-top:14px;overflow-wrap:anywhere}
.venue-print-sign p{margin:0;line-height:1.5}
.venue-sign-address{font-size:12px;margin-top:5px!important;color:#526174}
.venue-sign-rule{height:2px;width:44px;background:#087b70;margin:22px auto}
.venue-sign-kicker{font-size:11px;font-weight:800;letter-spacing:2px;color:#087b70}
.venue-print-sign h1{font-size:44px;line-height:1.12;letter-spacing:-1.3px;text-wrap:balance;margin:10px auto 12px;max-width:580px;font-weight:800;overflow-wrap:anywhere}
.venue-sign-welcome{font-size:16px;color:#526174}
.venue-sign-scan{margin:20px auto 18px}
.venue-sign-scan img{display:block;width:300px;height:300px;max-width:100%;object-fit:contain;margin:0 auto;image-rendering:pixelated;background:#fff}
.venue-sign-scan h2{font-size:25px;line-height:1.2;margin:12px 0 5px;font-weight:800}
.venue-sign-scan p{font-size:14px}
.venue-sign-steps{border-top:1px solid #dce3ec;border-bottom:1px solid #dce3ec;padding:14px 0;max-width:480px;margin:0 auto 16px;text-align:left;font-size:15px}
.venue-sign-steps p+p{margin-top:7px}
.venue-sign-steps strong{color:#087b70;display:inline-block;width:23px}
.venue-sign-benefit{font-size:14px;margin-bottom:14px!important}
.venue-sign-terms{font-size:11px;color:#526174}
.venue-no-print{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:24px}
.venue-no-print p{flex-basis:100%;font-size:12px}
.venue-print-mode .shell{display:block}.venue-print-mode #nav{display:none}
@media(max-width:500px){.venue-print-sign{padding:24px 18px;margin:12px auto}.venue-print-sign h1{font-size:34px}.venue-sign-venue{font-size:24px}.venue-sign-steps{font-size:14px}.venue-sign-scan img{width:270px;height:auto;aspect-ratio:1}}
@media print{
 @page{size:auto;margin:12mm}
 body.venue-print-mode{background:#fff}
 .venue-print-mode header,.venue-print-mode #nav,.venue-print-mode .venue-no-print,.venue-print-mode #notice{display:none!important}
 .venue-print-mode .shell,.venue-print-mode #content{padding:0;margin:0;max-width:none}
 .venue-print-sign{width:100%;max-width:180mm;margin:0 auto;padding:4mm 6mm;border:0;border-radius:0;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .venue-sign-scan img{width:76mm;height:76mm}
}

.venue-checkin-shortcut{display:flex;align-items:center;gap:14px;padding:18px 20px;margin:0 0 22px;border:1px solid #bed5f4;border-radius:16px;background:linear-gradient(120deg,#edf5ff,#f8fbff);box-shadow:0 3px 10px #1d4e8510;color:#173b68}.venue-checkin-shortcut>svg{flex:none;width:26px;height:26px;color:#2565bd}.venue-checkin-shortcut>span:first-of-type{flex:1;min-width:0}.venue-checkin-shortcut strong,.venue-checkin-shortcut small{display:block}.venue-checkin-shortcut strong{font-size:16px}.venue-checkin-shortcut small{font-size:12px;line-height:1.5;margin-top:4px;color:#506984}.venue-checkin-shortcut-action{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;white-space:nowrap}.venue-checkin-shortcut:focus-visible{outline:3px solid #2565bd;outline-offset:3px}.venue-checkin-page h1,.venue-checkin-page h2{overflow-wrap:anywhere}#venue-location-status:empty{display:none}@media(max-width:420px){.venue-checkin-shortcut{gap:10px;padding:16px}.venue-checkin-shortcut-action{font-size:12px;gap:4px}.venue-checkin-shortcut-action svg{width:16px;height:16px}}


/* Keep the daily check-in invitation prominent on phones; allow text zoom to wrap. */
.venue-reward-card .venue-checkin-intro-title {
  font-size: clamp(1.3rem, calc(8vw - .6rem), 2rem);
}

