:root{--bk-plum:#5a1f5c;--bk-plum-soft:#7a3f7c;--bk-gold:#c29240;--bk-text:#3a2340;--bk-dim:#6e5672;--bk-line:#e6d6ec;--bk-card:#ffffffdb;--bk-lav:#f3eaf7;--bk-pink:#d98bc0;--bk-venmo:#008cff;--bk-serif:"Cormorant Garamond", Georgia, serif;--bk-sans:"Jost", system-ui, sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background:#f1e7f6}body{min-height:100dvh;font-family:var(--bk-sans);color:var(--bk-text);-webkit-font-smoothing:antialiased;font-variant-numeric:lining-nums}body:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(#f6eef9a8,#f3eaf7c7),url(/background.jpg);background-position:50%;background-size:cover;position:fixed;inset:0}.bk-page{max-width:640px;margin:0 auto;padding:0 16px}.bk-header{text-align:center;padding:24px 0 4px}.bk-logo{width:min(280px,72vw);height:auto;transition:width .2s}.bk-header-sm{padding-top:14px}.bk-header-sm .bk-logo{width:150px}.bk-cal-alt{text-align:center;color:var(--bk-plum);margin-top:10px;font-size:14px;display:block}.bk-main{padding-bottom:32px}.bk-title,.bk-date,.bk-total strong,.bk-stepper span{font-variant-numeric:lining-nums}.bk-title{font-family:var(--bk-serif);color:var(--bk-plum);text-align:center;letter-spacing:-.5px;margin-top:12px;font-size:clamp(38px,10vw,56px);font-weight:700;line-height:1.05}.bk-title-sm{margin:8px 0 16px;font-size:clamp(30px,8vw,40px)}.bk-rule{color:var(--bk-gold);align-items:center;gap:12px;max-width:360px;margin:8px auto 18px;display:flex}.bk-rule:before,.bk-rule:after{content:"";background:linear-gradient(90deg, transparent, var(--bk-gold), transparent);flex:1;height:1px}.bk-rule span{font-size:18px}.bk-list{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.bk-card{background:var(--bk-card);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid #ffffffe6;border-radius:16px;box-shadow:0 4px 18px #5a1f5c14}.bk-offering{gap:14px;padding:16px 16px 14px 12px;transition:box-shadow .15s,border-color .15s;display:flex}.bk-offering.selected{border-color:var(--bk-plum-soft);box-shadow:0 0 0 2px var(--bk-plum-soft), 0 6px 22px #5a1f5c29}.bk-date{text-align:center;font-family:var(--bk-serif);color:var(--bk-plum);border-right:1px solid var(--bk-gold);flex:0 0 64px;padding-right:12px}.bk-icon{color:var(--bk-gold);margin-bottom:6px}.bk-dow,.bk-mon{letter-spacing:.5px;font-size:15px;font-weight:700;line-height:1.1}.bk-day{margin-top:2px;font-size:40px;font-weight:700;line-height:1}.bk-body{flex:1;min-width:0}.bk-name{font-family:var(--bk-serif);color:var(--bk-plum);font-size:23px;font-weight:700;line-height:1.12}.bk-theme{font-family:var(--bk-serif);color:var(--bk-text);margin-top:3px;font-size:18px;font-style:italic}.bk-facil{font-family:var(--bk-serif);color:var(--bk-dim);margin-top:3px;font-size:16.5px;line-height:1.3}.bk-details{gap:5px;margin-top:10px;list-style:none;display:grid}.bk-details li{color:var(--bk-text);align-items:flex-start;gap:8px;font-size:14.5px;line-height:1.35;display:flex}.bk-details svg{color:var(--bk-plum);flex-shrink:0;margin-top:2px}.bk-desc{color:var(--bk-dim);white-space:pre-line;margin-top:8px;font-size:14px;line-height:1.45}.bk-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 10px;margin-top:12px;display:flex}.bk-avail{border-radius:20px;margin-right:auto;padding:4px 10px;font-size:12.5px;font-weight:600}.bk-avail.low{color:#9a6412;background:#fbefd9}.bk-avail.full{color:var(--bk-plum);background:#f3e1ec}.bk-booked{color:#2f6b46;align-items:center;gap:4px;margin-right:auto;font-size:13px;font-weight:600;display:inline-flex}.bk-btn{font-family:var(--bk-sans);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:10px 20px;font-size:15px;font-weight:500;text-decoration:none;transition:transform .1s,opacity .15s;display:inline-flex}.bk-btn:active{transform:scale(.97)}.bk-btn:disabled{opacity:.5;cursor:not-allowed}.bk-btn-primary{background:var(--bk-plum);color:#fff}.bk-btn-selected{color:var(--bk-plum);box-shadow:inset 0 0 0 1.5px var(--bk-plum);background:#fff}.bk-btn-ghost{color:var(--bk-plum);box-shadow:inset 0 0 0 1px var(--bk-line);background:0 0}.bk-btn-venmo{background:var(--bk-venmo);color:#fff;font-size:16px;font-weight:600}.bk-btn-full{width:100%;margin-top:10px}.bk-bar{z-index:10;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--bk-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;position:fixed;bottom:0;left:0;right:0}.bk-bar-inner{max-width:608px;color:var(--bk-plum);justify-content:space-between;align-items:center;gap:12px;margin:0 auto;font-weight:500;display:flex}.bk-bar .bk-btn{padding:10px 28px}.bk-back{color:var(--bk-plum);font:500 14px var(--bk-sans);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;min-height:44px;margin-top:12px;display:inline-flex}.bk-form-card{margin-bottom:12px;padding:16px}.bk-label{color:var(--bk-dim);align-items:center;gap:6px;margin:4px 0 8px;font-size:13px;font-weight:600;display:flex}.bk-form-card input{width:100%;font:16px var(--bk-sans);color:var(--bk-text);border:1.5px solid var(--bk-line);background:#fff;border-radius:10px;outline:none;margin-bottom:10px;padding:11px 14px}.bk-form-card input:focus{border-color:var(--bk-plum-soft)}.bk-stepper{align-items:center;gap:18px;display:flex}.bk-stepper button{border:1.5px solid var(--bk-line);width:44px;height:44px;color:var(--bk-plum);cursor:pointer;background:#fff;border-radius:50%;place-items:center;display:grid}.bk-stepper button:disabled{opacity:.35;cursor:not-allowed}.bk-stepper span{font-family:var(--bk-serif);color:var(--bk-plum);text-align:center;min-width:24px;font-size:30px;font-weight:700}.bk-sel-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.bk-sel-date{color:var(--bk-dim);font-size:13px}.bk-sel-title{font-family:var(--bk-serif);color:var(--bk-plum);font-size:20px;font-weight:700;line-height:1.15}.bk-remove{color:var(--bk-dim);font:13px var(--bk-sans);cursor:pointer;background:0 0;border:none;padding:4px;text-decoration:underline}.bk-tiers{flex-wrap:wrap;gap:8px;display:flex}.bk-tier{cursor:pointer;border:1.5px solid var(--bk-line);min-width:72px;min-height:46px;color:var(--bk-plum);font:600 17px var(--bk-sans);background:#fff;border-radius:12px;flex:1}.bk-tier.on{background:var(--bk-plum);border-color:var(--bk-plum);color:#fff}.bk-money{align-items:center;gap:8px;max-width:160px;display:flex}.bk-money span{color:var(--bk-plum);font-size:18px;font-weight:600}.bk-money input{margin-bottom:0}.bk-waitnote{color:var(--bk-plum);background:#f6ecf7;border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.45}.bk-hint{color:var(--bk-dim);margin-top:8px;font-size:13px;line-height:1.4}.bk-center{text-align:center}.bk-error{color:#9b2c22;background:#fbe7e6;border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:14px}.bk-total{color:var(--bk-plum);justify-content:space-between;align-items:baseline;padding:6px 4px 2px;display:flex}.bk-total strong{font-family:var(--bk-serif);font-size:30px}.bk-result{border-bottom:1px solid var(--bk-line);gap:12px;padding:10px 0;display:flex}.bk-result:last-child{border-bottom:none}.bk-result-dot{border-radius:50%;flex:0 0 26px;place-items:center;height:26px;margin-top:2px;font-size:13px;font-weight:700;display:grid}.bk-result-dot.reserved{color:#2f6b46;background:#e3f2e8}.bk-result-dot.waitlist{color:#9a6412;background:#fbefd9}.bk-result-dot.err{color:#9b2c22;background:#fbe7e6}.bk-result-status{color:var(--bk-text);margin-top:4px;font-size:14px}.bk-pay .bk-btn-venmo{margin-top:4px}.bk-pay-done{color:#2f6b46;align-items:center;gap:8px;font-weight:500;display:flex}.bk-pay-done svg{color:var(--bk-pink);fill:var(--bk-pink)}.bk-loading,.bk-empty{text-align:center;color:var(--bk-dim);padding:48px 16px;font-size:15px;line-height:1.5}.bk-contact{text-align:center;color:var(--bk-dim);margin:16px 0;font-size:14px;line-height:1.5}@media (width<=380px){.bk-offering{gap:10px;padding-left:10px}.bk-date{flex-basis:54px;padding-right:9px}.bk-day{font-size:34px}.bk-name{font-size:21px}}.bk-suggest{color:var(--bk-text);background:#f6ecf7;border-radius:10px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:15px;line-height:1.45;display:flex}.bk-suggest svg{color:var(--bk-plum);flex-shrink:0;margin-top:3px}.bk-suggest strong{color:var(--bk-plum)}
