.booking-intro{padding-top:65px;padding-bottom:35px}.booking-intro h1{font-size:60px}.booking-intro h1 em{color:var(--green)}.booking-intro>p:last-child{max-width:630px;color:var(--muted)}.booking-layout{display:grid;grid-template-columns: .85fr 1.2fr;gap:75px;padding-bottom:90px;align-items:start}.visit-info{background:var(--sage);padding:35px;position:sticky;top:125px}.visit-info h2{font-size:36px}.visit-info ul{list-style:none;padding:0;font-size:13px}.visit-info li{padding:10px 0;border-bottom:1px solid #bdc8b8}.visit-info p{font-size:13px}.visit-note{padding-top:25px;margin-top:30px;border-top:1px solid #bdc8b8}.visit-note p{margin:8px 0 0}.visit-note a,.check-label a,.privacy-copy a{ text-decoration:underline}.booking-panel{background:#fff;padding:35px;border:1px solid var(--line);min-width:0}.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.calendar-heading h2{font-size:27px;margin:0}.calendar-arrow,.plain-button{border:1px solid var(--line);background:transparent;padding:7px 12px;cursor:pointer}.calendar-arrow{font-size:20px}.calendar-arrow:disabled{opacity:.35;cursor:default}.timezone{font-size:11px;color:var(--muted);margin:12px 0 25px}.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.weekdays{text-align:center;font-size:10px;color:var(--muted);margin-bottom:10px}.calendar-days button{border:1px solid transparent;background:#f1f3ee;min-height:44px;cursor:pointer;font-size:14px}.calendar-days button:disabled{color:#a2a8a0;background:#fafbf8;cursor:default}.calendar-days button.available{border-color:#7a8e70;background:#e3ebdc;color:#2e4b33}.calendar-days button.selected,.time-options button.selected{background:var(--ink);color:#fff;border-color:var(--ink)}.calendar-key{font-size:10px;display:flex;gap:8px;align-items:center;margin:15px 0 25px}.calendar-key span{display:block;background:#e3ebdc;border:1px solid #7a8e70;width:10px;height:10px}.time-options{display:flex;flex-wrap:wrap;gap:10px}.time-options h3,.time-options p{width:100%;font-size:17px;margin:8px 0}.time-options button{padding:11px 17px;background:white;border:1px solid #aab8a1;cursor:pointer;font-size:13px}#booking-form{border-top:1px solid var(--line);padding-top:30px;margin-top:30px}#booking-form h3{font-size:29px;margin-bottom:10px}#chosen-time{font-size:13px;color:var(--green)}.check-label{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.6}.check-label input{width:17px;min-width:17px;margin-top:2px}.honey{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}.form-note{font-size:11px;color:var(--muted);margin-top:14px}#booking-error{font-size:13px;color:#9c3329;margin-top:15px}#confirmation .button{margin:15px 0}.booking-banner{padding:45px 0;background:#dde5d7}.booking-banner>.wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.booking-banner h2{font-size:34px}.booking-banner p{max-width:650px;font-size:14px;margin-bottom:0}.booking-banner .eyebrow{font-size:9px;margin-bottom:14px}.booking-banner .button{flex-shrink:0}.admin-wrap{padding-bottom:80px}.admin-notice{border-left:3px solid var(--green);padding:18px 25px;background:var(--sage);margin-bottom:30px;font-size:13px}.admin-notice p{margin:8px 0 0}.admin-columns{display:grid;grid-template-columns:.75fr 1.4fr;gap:40px}.admin-add{background:white;padding:30px;align-self:start;border:1px solid var(--line)}.admin-add h2,.admin-diary h2{font-size:30px}.admin-add .text-link{margin-top:25px;font-size:12px}.admin-add .button{width:100%}.diary-heading{display:flex;justify-content:space-between;align-items:center}.diary-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.diary-tabs button{background:transparent;border:1px solid #b8c1b2;padding:10px 15px;font-size:12px;cursor:pointer}.diary-tabs button[aria-pressed=true]{background:var(--ink);color:white}#diary-summary{font-size:12px;color:var(--muted)}.diary-card{padding:25px;background:white;border:1px solid var(--line);margin:15px 0}.diary-card h3{font-size:24px;margin-bottom:8px}.diary-card p{font-size:13px;margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.diary-card .status{display:inline-block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;background:var(--sage);padding:3px 9px;margin-bottom:12px}.diary-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.diary-actions button,.diary-actions a{padding:8px 12px;border:1px solid #bbc4b6;background:transparent;font-size:11px;cursor:pointer}.privacy-copy{max-width:850px}.privacy-copy h1{font-size:48px}.privacy-copy h2{font-size:30px;margin-top:40px}.owner-link{font-size:10px!important;color:var(--muted)}button:disabled{cursor:wait}#slot-result{font-size:13px;margin-top:15px}[hidden]{display:none!important}@media(max-width:900px){.booking-layout{gap:30px;grid-template-columns:.8fr 1.2fr}.booking-panel,.visit-info{padding:25px}.visit-info h2{font-size:30px}.admin-columns{grid-template-columns:1fr 1.2fr;gap:25px}.booking-banner>.wrap{align-items:flex-start;flex-direction:column}}@media(max-width:650px){.booking-intro{padding-top:40px}.booking-intro h1{font-size:45px}.booking-layout,.admin-columns{grid-template-columns:1fr}.visit-info{position:static}.visit-info h2 br{display:none}.visit-info h2{font-size:30px}.visit-info ul{display:none}.visit-note{margin-top:15px;padding-top:15px}.booking-panel{padding:23px 18px}.calendar-heading h2{font-size:25px}.calendar-days{gap:4px}.calendar-days button{min-height:40px}.booking-layout{padding-bottom:55px}.booking-banner h2{font-size:30px}.admin-add{padding:25px}.privacy-copy h1{font-size:40px}}
