.whole-booking{margin-top:1.25rem}.whole-booking-intro{color:var(--muted,#d7d2c7);max-width:64ch}.whole-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.25rem 0}.whole-grid label{display:grid;gap:.45rem}.whole-grid input{width:100%;border:1px solid rgba(220,184,108,.55);background:#00271f;color:#fff;padding:.8rem;font:inherit}.whole-booking .cta{margin-top:.5rem}.whole-booking #wholeQuote{border:1px solid rgba(220,184,108,.55);padding:1.1rem;margin:1.25rem 0;background:rgba(0,0,0,.12)}.whole-booking #wholeQuote h3{margin-top:0}.whole-booking dl{margin:0}.whole-booking dl div{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0}.whole-booking .whole-total{border-top:1px solid rgba(220,184,108,.55);margin-top:.4rem;padding-top:.8rem;font-weight:700;color:#e5c77f}.whole-terms{display:flex;align-items:flex-start;gap:.6rem;margin:1rem 0}.whole-terms input{margin-top:.25rem}.whole-terms a{color:#e5c77f}.whole-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.whole-status{min-height:1.5em;margin-top:1rem;color:#e5c77f}.whole-status strong{font-size:1.1rem}@media(max-width:650px){.whole-grid{grid-template-columns:1fr}.whole-booking .cta{width:100%;white-space:normal}.whole-booking dl div{font-size:.92rem}}

.whole-calendar{margin:1.2rem 0 1.5rem;padding:1rem;border:1px solid rgba(220,184,108,.55);background:rgba(0,0,0,.12)}
.whole-calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:.5rem;text-align:center;margin-bottom:.8rem}.whole-calendar-head button{width:42px;height:38px;border:1px solid rgba(220,184,108,.45);background:#00271f;color:#e5c77f;font-size:1.5rem}.whole-calendar-head button:disabled{opacity:.3;cursor:not-allowed}.whole-calendar-head strong{display:block;font:400 1.22rem/1.2 Georgia,serif;text-transform:capitalize;color:#fff}.whole-calendar-head small{display:block;margin-top:.2rem;color:var(--muted,#d7d2c7);font-size:.76rem}.whole-calendar-week,.whole-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.whole-calendar-week{margin-bottom:4px;color:#e5c77f;font-size:.72rem}.whole-calendar-days button,.whole-calendar-days .empty{aspect-ratio:1.38;min-height:34px}.whole-calendar-days button{border:1px solid rgba(220,184,108,.25);background:#194939;color:#fff}.whole-calendar-days button:hover:not(:disabled){border-color:#e5c77f;background:#2c654f}.whole-calendar-days button.busy,.whole-calendar-days button:disabled{background:#58615c33;color:#858d88;border-color:#68716c44;cursor:not-allowed}.whole-calendar-days button.selected{background:#e0bf78;color:#06271e;border-color:#f4d99d;font-weight:700}.whole-calendar-days button.in-range{background:#6b876f;color:#fff}.whole-calendar-loading{grid-column:1/-1;padding:2rem;color:var(--muted,#d7d2c7)}.whole-calendar-legend{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.8rem;color:var(--muted,#d7d2c7);font-size:.74rem}.whole-calendar-legend span{display:flex;align-items:center;gap:.35rem}.whole-calendar-legend i{display:block;width:11px;height:11px;border:1px solid rgba(220,184,108,.35)}.whole-calendar-legend i.free{background:#194939}.whole-calendar-legend i.busy{background:#58615c33}.whole-calendar-legend i.chosen{background:#e0bf78}.whole-calendar-help{min-height:1.3em;margin:.75rem 0 0;color:#e5c77f;font-size:.82rem}
@media(max-width:650px){.whole-calendar{padding:.8rem}.whole-calendar-days button,.whole-calendar-days .empty{min-height:36px}.whole-calendar-legend{gap:.7rem}}

/* Compact, accessible consent row. */
form label.whole-terms{display:flex!important;align-items:center;gap:.75rem;margin:1rem 0;line-height:1.45;cursor:pointer;flex-wrap:wrap}form label.whole-terms input[type=checkbox]{appearance:auto;width:18px!important;height:18px!important;min-width:18px;margin:0;padding:0;flex:0 0 18px;accent-color:#e0bf78}form label.whole-terms a{display:inline;color:#e5c77f}
.payment-return{position:fixed;z-index:10000;left:50%;top:90px;translate:-50% 0;width:min(680px,calc(100% - 32px));padding:16px 20px;border:1px solid #e0bf78;background:#062b21;color:#fff;text-align:center;box-shadow:0 14px 50px #0009}
