/* Guest cards share their markup and artwork with the mobile app view. */
.desktop-profile-icon,.desktop-customer-qr{display:none}
@media(min-width:701px){
 body.web-customer.has-user{padding-left:240px;background:#f7faf7;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#142b2f}
 body.web-customer.has-user .header{position:fixed;inset:0 auto 0 0;width:240px;height:100dvh;border:0;border-right:1px solid #e0e9e4;background:white}
 body.web-customer.has-user .header-inner{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%;height:100%;padding:30px 20px 22px;margin:0}
 body.web-customer.has-user .header-inner .logo{padding:0;font-size:27px;gap:8px;letter-spacing:-1.3px;align-self:flex-start}
 body.web-customer.has-user .logo>svg{width:29px;height:29px}
 body.web-customer.has-user .header-inner>.personal-qr-button{display:none}
 body.web-customer.has-user .header-inner nav{display:flex;flex-direction:column;align-items:stretch;gap:7px;height:auto;width:100%;margin:40px 0 0}
 body.web-customer.has-user .header-inner nav a{display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:48px;height:48px;width:100%;padding:0 14px;border:0;border-radius:13px;color:#617572;font-size:13px;font-weight:600}
 body.web-customer.has-user .header-inner nav a.active{background:#e2f4e9;color:#275f66}
 body.web-customer.has-user .header-inner nav a.active:before{display:none}
 body.web-customer.has-user .header-inner nav a:hover{background:#edf6f0;color:#275f66}
 body.web-customer.has-user .header-inner nav .icon{width:20px;height:20px}
 body.web-customer.has-user .desktop-profile-icon{display:inline-flex}
 body.web-customer.has-user .header-account{display:flex;flex-direction:column;align-items:stretch;gap:15px;margin: auto 0 0;padding:20px 0 0;border-top:1px solid #e0e9e4}
 body.web-customer.has-user .header-account .business-switch{display:flex;align-items:center;justify-content:flex-start;gap:11px;padding:0;margin:0;border:0;max-width:100%;min-width:0}
 body.web-customer.has-user .header-account .business-switch>span:last-child{min-width:0;max-width:140px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
 body.web-customer.has-user .header-account .business-switch small{display:block;font-size:11px;font-weight:400;margin-top:4px}
 body.web-customer.has-user .header-account .logout{align-self:flex-start;margin-left:49px;padding:0;font-size:11px}
 body.web-customer.has-user main{width:100%;max-width:1240px;min-height:calc(100dvh - 67px);margin:0;padding:42px 48px 36px}
 body.web-customer.has-user .footer>span:first-child{display:none}
 body.web-customer.has-user .footer{justify-content:flex-end;width:auto;max-width:1144px;margin:0 48px;border-color:#e0e9e4}
 body.web-customer.has-user .page-heading{margin-bottom:24px;align-items:center}
 body.web-customer.has-user .page-heading h1{font-size:30px;font-weight:750;line-height:1.2;letter-spacing:-1px;color:#173f44;margin:0}
 body.web-customer.has-user .page-heading .eyebrow:empty,body.web-customer.has-user .page-heading p:empty{display:none}
 body.web-customer.has-user .btn{border-radius:14px;min-height:44px;font-size:13px;padding:12px 18px;white-space:normal}
 body.web-customer.has-user .btn.secondary{background:#275f660d;border:1px solid transparent;color:#275f66}
 body.web-customer.has-user .btn.secondary:hover{background:#275f6618}
 body.web-customer.has-user .panel{border:1px solid #e0e9e4;border-radius:20px;padding:24px;box-shadow:none}
 body.web-customer.has-user .wallet-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:960px;gap:28px;align-items:start}
 body.web-customer.has-user .wallet-tile{min-width:0;background:transparent;border:0;border-radius:0;overflow:visible}
 body.web-customer.has-user .wallet-open{display:flex;justify-content:flex-end;font-size:13px;min-height:42px;margin-top:6px;padding:8px 2px}
 body.web-customer.has-user .wallet-empty{grid-column:1/-1}
 body.web-customer .desktop-loyalty .loyalty-card.merchant-native-card{padding:16px 0 0;margin:0;border:0;background:transparent;box-shadow:none;overflow:visible;min-height:0;max-width:480px}
 body.web-customer .desktop-loyalty .loyalty-card:before,body.web-customer .desktop-loyalty .loyalty-card:after{display:none}
 body.web-customer .desktop-loyalty .merchant-card-surface{display:grid;grid-template-rows:70px 240px 110px;border:0;border-radius:22px;background:#275f66;overflow:hidden}
 body.web-customer .desktop-loyalty .merchant-native-card .card-brand{min-height:70px;height:70px;padding:14px 116px 14px 20px;margin:0}
 body.web-customer .desktop-loyalty .card-brand strong{font-size:18px;line-height:1.3;letter-spacing:-.3px;overflow-wrap:anywhere}
 body.web-customer .desktop-loyalty .merchant-native-card>.card-business-logo{position:absolute;top:0;right:16px;width:84px;height:84px;border:5.6px solid #f7faf7;border-radius:50%;font-size:28px}
 body.web-customer .desktop-loyalty .stamp-grid{height:240px;min-height:0;grid-template-rows:repeat(var(--stamp-rows),minmax(0,1fr));padding:16px 20px;gap:12px 10px;align-items:center;justify-items:center}
 body.web-customer .desktop-loyalty .stamp{width:min(100%,62px,calc((240px - 32px - (var(--stamp-rows) - 1)*12px)/var(--stamp-rows)));height:auto;aspect-ratio:1;margin:0}
 body.web-customer .desktop-loyalty .card-bottom{height:96px;margin:0 14px 14px;padding:13px 14px;align-items:center;gap:12px;border-radius:15px}
 body.web-customer .desktop-loyalty .card-bottom strong{font-size:14px;line-height:1.35}
 body.web-customer .desktop-loyalty .card-bottom small{font-size:12px;color:#71847b;margin-top:6px;line-height:1.4}
 body.web-customer .desktop-loyalty .card-bottom.ready{justify-content:center;gap:7px}
 body.web-customer .desktop-loyalty .card-bottom.ready .reward-heading{flex:0 0 auto}
 body.web-customer .desktop-loyalty .card-bottom.ready strong{font-size:17px;color:white}
 body.web-customer .desktop-loyalty .card-bottom.ready .reward-ready-note{margin:0;color:#ffffffe0}
 body.web-customer .desktop-loyalty progress{display:block;width:100%;height:4px;border:0;border-radius:10px;overflow:hidden;appearance:none;background:#e4e7e5;color:#275f66;margin-top:10px}
 body.web-customer .desktop-loyalty progress::-webkit-progress-bar{background:#e4e7e5;border-radius:10px}
 body.web-customer .desktop-loyalty progress::-webkit-progress-value{background:#275f66;border-radius:10px}
 body.web-customer .desktop-loyalty progress::-moz-progress-bar{background:#275f66;border-radius:10px}
 body.web-customer.has-user .guest-detail{grid-template-columns:minmax(0,480px) minmax(0,1fr);gap:32px;max-width:960px;align-items:start}
 body.web-customer.has-user .back-link{margin-bottom:20px;font-size:13px}
 .customer-place-details{margin-top:16px}.customer-place-details h2{font-size:20px;margin-bottom:16px}.customer-place-details>p{font-size:13px}.customer-place-details dl{margin:18px 0 24px}.customer-place-details dl>div{padding:16px 0;border-top:1px solid #e0e9e4}.customer-place-details dt{font-size:12px;color:#71847b;margin-bottom:7px}.customer-place-details dd{margin:0;font-size:14px;line-height:1.6}
 body.web-customer.has-user .account-layout{max-width:960px;grid-template-columns:1.15fr 1fr;align-items:start}
 .account-panel-heading{display:flex;align-items:center;gap:14px;margin-bottom:22px}.account-panel-heading h2{font-size:20px}.account-panel-heading .business-logo-large{width:48px;height:48px;font-size:18px}
 body.web-customer.has-user .guest-profile-form{margin:0 0 22px;max-width:none}
 .account-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:15px;margin-top:24px;padding-top:16px;border-top:1px solid #e0e9e4}
 body.web-customer.has-user .desktop-customer-qr{display:inline-flex}.business-profile-panel h2{font-size:20px}.business-profile-panel p{margin:14px 0 20px;font-size:13px}.business-profile-panel .browser-choice{margin:0}
 body.web-customer.has-user .linked-login-panel{max-width:960px;margin-top:24px}
 body.web-customer.has-user .linked-login-panel>p{font-size:13px;max-width:650px;margin-top:9px}
 body.web-customer.has-user .linked-login-panel .social-login-options{grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0 0;gap:14px}
 body.web-customer.has-user .linked-login-panel .social-login-button{font-size:13px}
 body.web-customer.has-user #modal:has(.personal-code){width:420px}
 body.web-customer.has-user .places-directory>.page-heading .eyebrow,body.web-customer.has-user .places-directory>.page-heading p{display:none}
 body.web-customer.has-user .places-directory>.page-heading h1{font-size:30px}
}
@media(min-width:701px) and (max-width:1100px){
 body.web-customer.has-user main{padding:32px 28px}
 body.web-customer.has-user .footer{margin:0 28px}
 body.web-customer.has-user .wallet-grid{grid-template-columns:minmax(0,480px)}
 body.web-customer.has-user .guest-detail,body.web-customer.has-user .account-layout{grid-template-columns:minmax(0,480px)}
 body.web-customer.has-user .guest-detail{gap:8px}
 body.web-customer.has-user .linked-login-panel{max-width:480px}
 body.web-customer.has-user .linked-login-panel .social-login-options{grid-template-columns:1fr}
}
