.loyalty-calendar{margin-bottom:var(--space-1)}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.cal-month{font-size:var(--fs-h5);font-weight:var(--fw-heading);line-height:var(--lh-heading);letter-spacing:var(--letter-spacing);color:var(--text-primary)}.cal-weekdays{display:grid;grid-template-columns:repeat(7,38px);justify-content:center;margin-bottom:6px;text-align:center}.cal-weekdays span{font-size:var(--fs-micro);font-weight:var(--fw-semibold);line-height:var(--lh-heading);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--text-secondary);padding:var(--space-1) 0}.cal-grid-wrap{position:relative;min-height:40px}.cal-grid{display:grid;grid-template-columns:repeat(7,38px);justify-content:center;grid-gap:var(--space-1);gap:var(--space-1)}.cal-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--card-bg)}.cal-spinner{width:22px;height:22px;border-radius:50%;border:2.5px solid var(--bg-tertiary);border-top-color:var(--pal-dark-panel);animation:cal-spin .7s linear infinite}@keyframes cal-spin{to{transform:rotate(1turn)}}.cal-day{aspect-ratio:1;border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;font-size:var(--fs-caption);font-weight:var(--fw-medium);border:none;background:rgba(0,0,0,0);cursor:default;transition:color var(--dur-fast),background-color var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast),opacity var(--dur-fast),transform var(--dur-fast),visibility var(--dur-fast)}.cal-day.available{background:var(--bg-secondary);color:var(--text-primary);cursor:pointer}@media(hover:hover)and (pointer:fine){.cal-day.available:hover{background:var(--bg-tertiary)}}.cal-day.selected{background:linear-gradient(135deg,var(--pal-dark-panel) 0,var(--pal-dark-panel-deep) 100%);color:var(--text-inverse);font-weight:var(--fw-bold)}.cal-day.unavailable{color:var(--text-secondary);opacity:var(--op-faint)}.cal-selected-info{background:var(--bg-secondary);border-radius:var(--radius-s);padding:var(--space-3) var(--space-4);margin-top:var(--space-4);display:flex;align-items:center;justify-content:space-between}.cal-selected-info .info-label{font-size:var(--fs-caption);color:var(--text-secondary)}.cal-selected-info .info-value{font-size:var(--fs-body);font-weight:var(--fw-semibold);color:var(--text-primary)}.time-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--space-2);gap:var(--space-2);margin-top:14px}.time-btn{padding:10px var(--space-2);border-radius:10px;border:1.5px solid var(--border-color,color-mix(in srgb,var(--pal-mix-darken) 10%,transparent));background:var(--card-bg);font-size:var(--fs-body);font-weight:var(--fw-semibold);line-height:var(--lh-heading);letter-spacing:var(--letter-spacing);font-family:inherit;color:var(--text-primary);cursor:pointer;text-align:center;transition:color var(--dur-fast),background-color var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast),opacity var(--dur-fast),transform var(--dur-fast),visibility var(--dur-fast)}@media(hover:hover)and (pointer:fine){.time-btn:hover{border-color:var(--pal-dark-panel);color:var(--pal-dark-panel)}}.time-btn.selected{background:linear-gradient(135deg,var(--pal-dark-panel) 0,var(--pal-dark-panel-deep) 100%);border-color:rgba(0,0,0,0);color:var(--text-inverse)}.slots-empty,.slots-loading{padding:var(--space-4) 0;text-align:center;font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-ui);letter-spacing:var(--letter-spacing);color:var(--text-secondary)}@media(max-width:767px){.loyalty-modal .cal-month,.loyalty-modal .cal-selected-info .info-value{color:var(--pal-on-dark)}.loyalty-modal .cal-selected-info .info-label,.loyalty-modal .cal-weekdays span,.loyalty-modal .slots-empty,.loyalty-modal .slots-loading{color:color-mix(in srgb,var(--pal-on-dark) 68%,transparent)}.loyalty-modal .cal-nav-btn,.loyalty-modal .cal-selected-info{background:color-mix(in srgb,var(--pal-on-dark) 10%,transparent)}.loyalty-modal .cal-nav-btn{color:var(--pal-on-dark);border-color:color-mix(in srgb,var(--pal-on-dark) 14%,transparent)}.loyalty-modal .cal-loading{background:color-mix(in srgb,var(--pal-mix-darken) 60%,transparent)}.loyalty-modal .cal-spinner{border-color:color-mix(in srgb,var(--pal-on-dark) 22%,transparent);border-top-color:var(--pal-on-dark)}.loyalty-modal .cal-day.available{background:color-mix(in srgb,var(--pal-on-dark) 10%,transparent);color:var(--pal-on-dark)}.loyalty-modal .cal-day.unavailable{color:var(--pal-on-dark)}.loyalty-modal .cal-day.selected{background:var(--pal-on-dark);color:var(--pal-dark-panel)}.loyalty-modal .time-btn{background:color-mix(in srgb,var(--pal-on-dark) 10%,transparent);border-color:rgba(0,0,0,0);color:var(--pal-on-dark)}.loyalty-modal .time-btn.selected{background:var(--pal-on-dark);color:var(--pal-dark-panel)}}.loyalty-page{padding-bottom:0}.loyalty-page .section-tabs{top:calc(var(--header-stack-height, 48px) + var(--services-breadcrumbs-height, 0px))}.loyalty-page-header{max-width:1200px;margin:0 auto;padding:var(--space-6) var(--spacing-side,20px) 0}.loyalty-page-header .section-title{font-family:var(--font-main);font-size:var(--fs-h2);font-weight:var(--fw-heading);line-height:var(--lh-tight);letter-spacing:var(--ls-display);color:var(--text-primary);margin-bottom:0}.loyalty-content{max-width:1200px;margin:0 auto;padding:var(--space-6) var(--spacing-side,20px) 80px}.loyalty-grid{display:grid;grid-template-columns:1fr;grid-gap:var(--space-3);gap:var(--space-3)}@media(min-width:768px){.loyalty-grid{grid-template-columns:repeat(3,1fr);gap:var(--space-4)}}@media(min-width:1024px){.loyalty-grid{grid-template-columns:repeat(3,1fr)}}.loyalty-empty{grid-column:1/-1;padding:80px 20px;text-align:center;color:var(--text-secondary);font-size:var(--fs-text)}.loyalty-card-wrap{container-type:inline-size;aspect-ratio:1;border-radius:var(--radius-l,var(--radius-l));background:var(--card-bg);box-shadow:var(--shadow-card);border:.5px solid var(--border-color,color-mix(in srgb,var(--pal-mix-darken) 7%,transparent));overflow:hidden;cursor:pointer;transition:transform var(--dur-fast) var(--ease-standard)}.loyalty-card-wrap:active{transform:scale(.97)}.loyalty-card-wrap{transition:box-shadow var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}@media(hover:hover)and (pointer:fine){.loyalty-card-wrap:hover{box-shadow:var(--shadow-md)}}.loyalty-card-face.loyalty-card-front{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:var(--space-4) 14px var(--space-3);gap:10px;text-align:center}.loyalty-card-logo-wrap{width:70%;height:45%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.loyalty-card-logo-wrap img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.loyalty-card-name{margin-top:auto;padding-top:20px;font-size:var(--fs-h5);font-weight:var(--fw-heading);line-height:var(--lh-heading);color:var(--text-primary)}.loyalty-card-desc,.loyalty-card-name{flex-shrink:0;letter-spacing:var(--letter-spacing)}.loyalty-card-desc{margin-bottom:20px;font-size:var(--fs-block);font-weight:var(--fw-regular);line-height:var(--lh-text);-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:6 3 3;color:var(--text-secondary);line-height:var(--lh-ui);overflow:hidden;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical}.loyalty-card-modal{--sheet-max-width:520px}.lcm-conditions-label{font-size:var(--fs-micro);font-weight:var(--fw-semibold);line-height:var(--lh-heading);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--text-secondary);margin-bottom:var(--space-3)}.lcm-conditions{font-size:var(--fs-block);font-weight:var(--fw-regular);line-height:var(--lh-text);letter-spacing:var(--letter-spacing);-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:6 3 3;color:var(--text-primary);margin-bottom:20px}.lcm-conditions p{margin-bottom:var(--space-2)}.lcm-conditions p:last-child{margin-bottom:0}.lcm-conditions ol,.lcm-conditions ul{padding-left:20px;margin-bottom:var(--space-2)}.lcm-conditions li{margin-bottom:var(--space-1)}.lcm-conditions strong{font-weight:var(--fw-bold)}.lcm-site-btn{width:100%;margin-top:var(--space-1)}@keyframes loyalty-grid-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.loyalty-grid--animate{animation:loyalty-grid-in var(--dur-slow) var(--ease-standard) both}@media(prefers-reduced-motion:reduce){.loyalty-grid--animate{animation-duration:.01ms;animation-delay:0s}}.footer-disclaimer{background:var(--bg-secondary);padding:0 0 var(--space-6)}.footer-disclaimer .footer-container{padding-top:var(--space-5);border-top:1px solid color-mix(in srgb,var(--pal-mix-darken) 14%,transparent)}@media(max-width:767px){.footer-disclaimer{padding-bottom:calc(var(--space-6) + 64px + env(safe-area-inset-bottom, 0px))}}.app-container:has(.footer-disclaimer) .k8-global-footer{padding-bottom:var(--space-5)}