.zg-booking-tab{position:fixed;z-index:95;bottom:17px;left:50%;transform:translateX(-50%);border:1px solid #d1b990;background:#1d1b17;color:#f6f1ea;padding:11px 18px;box-shadow:0 8px 24px rgba(0,0,0,.25);font:700 .68rem 'DM Sans',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.zg-booking-tab:hover{background:#49372b}.zg-booking-panel{position:fixed;z-index:120;right:5vw;bottom:0;width:min(520px,calc(100% - 28px));max-height:min(92vh,780px);overflow:auto;padding:28px;background:#f6f1ea;color:#1d1b17;box-shadow:0 0 80px rgba(0,0,0,.35);transform:translateY(110%);transition:transform .35s ease}.zg-booking-panel.open{transform:translateY(0)}.zg-booking-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.zg-booking-eyebrow{margin:0 0 6px;color:#8b694e;font:700 .64rem 'DM Sans',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}.zg-booking-head h2{margin:0;font:600 2rem/1.06 'Playfair Display',Georgia,serif}.zg-booking-close{border:0;background:none;color:#1d1b17;font-size:2rem;line-height:1;cursor:pointer}.zg-booking-intro{margin:13px 0 0;font:400 .92rem/1.55 'DM Sans',Arial,sans-serif}.zg-booking-form{display:grid;gap:14px;margin-top:22px}.zg-booking-form label{display:grid;gap:6px;font:700 .7rem 'DM Sans',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}.zg-booking-form input,.zg-booking-form select{width:100%;border:1px solid #d8cec3;background:#fffdfa;color:#1d1b17;padding:13px;font:400 1rem 'DM Sans',Arial,sans-serif}.zg-booking-submit{border:0;background:#1d1b17;color:#fff;padding:15px 19px;font:700 .75rem 'DM Sans',Arial,sans-serif;letter-spacing:.06em;cursor:pointer}.zg-booking-submit:hover{background:#49372b}.zg-booking-submit:disabled{opacity:.65;cursor:wait}.zg-booking-error{margin:0;color:#8a2424;font:600 .82rem/1.4 'DM Sans',Arial,sans-serif}.zg-event-notice{border:1px solid #d1b990;background:#fffaf3;padding:14px 15px}.zg-event-notice>p{margin:0;font:400 .88rem/1.5 'DM Sans',Arial,sans-serif}.zg-event-more{border:0;border-bottom:1px solid currentColor;padding:0;background:none;color:#49372b;font:700 .8rem 'DM Sans',Arial,sans-serif;cursor:pointer}.zg-event-details{display:grid;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #e0d4c8}.zg-event-details[hidden]{display:none}.zg-event-detail{display:grid;grid-template-columns:92px 1fr;gap:12px;align-items:start}.zg-event-detail img{width:92px;height:92px;object-fit:cover}.zg-event-detail h3{margin:2px 0 5px;font:600 1.25rem/1.1 'Playfair Display',Georgia,serif}.zg-event-detail p{margin:0;font:400 .82rem/1.45 'DM Sans',Arial,sans-serif}.zg-event-category{color:#8b694e!important;font:700 .62rem 'DM Sans',Arial,sans-serif!important;letter-spacing:.11em;text-transform:uppercase}.zg-event-booking-link{display:inline-block;margin-top:9px;color:#49372b;font:700 .76rem 'DM Sans',Arial,sans-serif;text-decoration:none}@media(max-width:700px){.zg-booking-tab{left:16px;transform:none;bottom:16px}.zg-booking-panel{right:14px;padding:23px}.zg-booking-head h2{font-size:1.75rem}}@media(prefers-reduced-motion:reduce){.zg-booking-panel{transition:none}}
