.booking-module__MdEc7a__bookPage{min-height:60vh;padding-top:100px;padding-bottom:132px}.booking-module__MdEc7a__field{color:var(--muted-2);flex-direction:column;gap:.35rem;margin-top:.9rem;font-size:.85rem;display:flex}.booking-module__MdEc7a__field span:first-child{color:var(--text);font-weight:600;font-family:var(--font-heading)}.booking-module__MdEc7a__field input,.booking-module__MdEc7a__field select{font-family:var(--font-body);border-radius:var(--r-sm);border:1px solid var(--border);color:var(--text);background:#fff;width:100%;min-width:0;min-height:46px;padding:.65rem .8rem;font-size:1rem}.booking-module__MdEc7a__field input:disabled{background:var(--surface-2);color:var(--muted)}.booking-module__MdEc7a__fieldRow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.7rem;display:grid}.booking-module__MdEc7a__hint{color:var(--muted);margin-top:.5rem;font-size:.82rem}.booking-module__MdEc7a__warn{color:#b3261e;margin-top:.5rem;font-size:.85rem;font-weight:600}.booking-module__MdEc7a__ok{color:var(--success);margin-top:.5rem;font-size:.85rem;font-weight:600}.booking-module__MdEc7a__muted{color:var(--muted);font-size:.92rem}.booking-module__MdEc7a__errorBanner{color:#b3261e;border-radius:var(--r-sm);background:#fdecea;border:1px solid #f3c8c4;margin:1rem 0;padding:.85rem 1rem;font-size:.9rem}.booking-module__MdEc7a__errorBanner a{color:#8f1f19;text-decoration:underline}.booking-module__MdEc7a__addBtn{width:100%;margin-top:1.1rem}.booking-module__MdEc7a__eventDateBox{background:var(--surface);border:1px solid var(--card-brd);border-radius:var(--r);max-width:380px;box-shadow:var(--sh-1);margin-top:1.6rem;padding:1.1rem 1.3rem 1.3rem}.booking-module__MdEc7a__layout{display:block}.booking-module__MdEc7a__catalog{padding-inline:var(--pad);max-width:var(--maxw);margin-inline:auto}.booking-module__MdEc7a__productSection{margin-top:2.4rem}.booking-module__MdEc7a__productSection:first-child{margin-top:1.6rem}.booking-module__MdEc7a__productSection h2{margin-bottom:1rem;font-size:1.35rem}.booking-module__MdEc7a__productGrid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.1rem;display:grid}.booking-module__MdEc7a__cartPanel{z-index:40;background:var(--surface);border-top:1px solid var(--border);box-shadow:var(--sh-2);position:fixed;bottom:0;left:0;right:0}.booking-module__MdEc7a__cartToggle{width:100%;padding:.65rem var(--pad);font-family:var(--font-heading);color:var(--text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.75rem;min-height:44px;font-size:.95rem;font-weight:600;display:flex}.booking-module__MdEc7a__cartToggleTotal{color:var(--primary);align-items:center;gap:.5rem;font-size:1.05rem;display:flex}.booking-module__MdEc7a__chevronDown,.booking-module__MdEc7a__chevronUp{color:var(--muted);font-size:.65rem;transition:transform .2s;display:inline-block}.booking-module__MdEc7a__chevronUp{transform:rotate(180deg)}.booking-module__MdEc7a__cartDetails{max-height:0;padding-inline:var(--pad);transition:max-height .25s;overflow:hidden}.booking-module__MdEc7a__cartDetailsOpen{max-height:55vh;padding:.2rem var(--pad) .6rem;border-top:1px solid var(--border);overflow-y:auto}.booking-module__MdEc7a__cartCta{padding:.6rem var(--pad) calc(.9rem + env(safe-area-inset-bottom));border-top:1px solid var(--border)}.booking-module__MdEc7a__cartHeader{justify-content:space-between;align-items:center;display:flex}.booking-module__MdEc7a__linkBtn{color:var(--muted-2);cursor:pointer;background:0 0;border:none;min-height:32px;font-size:.85rem;text-decoration:underline}.booking-module__MdEc7a__cartLines{flex-direction:column;gap:.5rem;margin:.6rem 0;list-style:none;display:flex}.booking-module__MdEc7a__cartLine{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;gap:.8rem;padding-bottom:.5rem;font-size:.9rem;display:flex}.booking-module__MdEc7a__removeBtn{color:var(--primary);cursor:pointer;white-space:nowrap;background:0 0;border:none;min-height:32px;padding:.4rem .2rem;font-size:.82rem;font-weight:600}.booking-module__MdEc7a__lines{flex-direction:column;gap:.5rem;margin:.4rem 0 1rem;list-style:none;display:flex}.booking-module__MdEc7a__line{color:var(--muted-2);justify-content:space-between;gap:1rem;font-size:.92rem;display:flex}.booking-module__MdEc7a__line small{color:var(--muted)}.booking-module__MdEc7a__totalsRow{color:var(--muted-2);justify-content:space-between;padding:.3rem 0;font-size:.94rem;display:flex}.booking-module__MdEc7a__grandTotal{font-family:var(--font-heading);color:var(--text);border-top:1px solid var(--border);margin-top:.4rem;padding-top:.65rem;font-size:1.3rem;font-weight:700}.booking-module__MdEc7a__vatNote{color:var(--muted);margin-top:.2rem;font-size:.78rem}.booking-module__MdEc7a__checkoutGrid{padding-bottom:2rem;display:block}.booking-module__MdEc7a__checkoutForm{flex-direction:column;gap:1.6rem;display:flex}.booking-module__MdEc7a__fieldset{border:1px solid var(--card-brd);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1);min-width:0;padding:1.3rem 1.3rem 1.5rem}.booking-module__MdEc7a__fieldset legend{font-family:var(--font-heading);color:var(--text);padding:0 .4rem;font-size:1.05rem;font-weight:700}.booking-module__MdEc7a__segmented{gap:.5rem;margin:.7rem 0 .3rem;display:flex}.booking-module__MdEc7a__segment,.booking-module__MdEc7a__segmentActive{text-align:center;border-radius:var(--r-pill);border:1px solid var(--border);font-family:var(--font-heading);cursor:pointer;min-height:44px;color:var(--muted-2);background:#fff;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.7rem 1rem;font-size:.92rem;font-weight:600;display:flex;position:relative}.booking-module__MdEc7a__segment input,.booking-module__MdEc7a__segmentActive input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.booking-module__MdEc7a__segmentActive{background:var(--primary);color:#fff;border-color:var(--primary)}.booking-module__MdEc7a__checkoutReview{margin-top:1.6rem}.booking-module__MdEc7a__reviewCard{border:1px solid var(--card-brd);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1);padding:1.4rem}.booking-module__MdEc7a__reviewCard h2{margin-bottom:.9rem;font-size:1.2rem}.booking-module__MdEc7a__cancellationNote{color:var(--muted-2);background:var(--surface-2);border:1px solid var(--card-brd);border-radius:var(--r-sm);margin:1.1rem 0;padding:.85rem 1rem;font-size:.85rem}.booking-module__MdEc7a__fineprint{color:var(--muted);text-align:center;margin-top:.9rem;font-size:.78rem}.booking-module__MdEc7a__demoNotice{background:var(--primary-soft);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted-2);margin:1.2rem 0;padding:1rem 1.2rem;font-size:.92rem}@media (min-width:980px){.booking-module__MdEc7a__bookPage{padding-bottom:3rem}.booking-module__MdEc7a__layout{padding-inline:var(--pad);max-width:var(--maxw);grid-template-columns:1fr 360px;align-items:start;gap:2rem;margin-inline:auto;display:grid}.booking-module__MdEc7a__catalog{max-width:none;margin-inline:0;padding-inline:0}.booking-module__MdEc7a__cartPanel{border:1px solid var(--card-brd);border-radius:var(--r);box-shadow:var(--sh-1);position:sticky;inset:88px auto auto}.booking-module__MdEc7a__cartToggle{cursor:default;padding:1.1rem 1.2rem .4rem}.booking-module__MdEc7a__chevronDown,.booking-module__MdEc7a__chevronUp{display:none}.booking-module__MdEc7a__cartDetails,.booking-module__MdEc7a__cartDetailsOpen{border-top:none;max-height:none;padding:0 1.2rem .4rem;overflow:visible}.booking-module__MdEc7a__cartCta{border-top:none;padding:.6rem 1.2rem 1.2rem}.booking-module__MdEc7a__checkoutGrid{grid-template-columns:1.1fr .9fr;align-items:start;gap:2rem;display:grid}.booking-module__MdEc7a__checkoutReview{margin-top:0}.booking-module__MdEc7a__reviewCard{position:sticky;top:88px}}.booking-module__MdEc7a__highlight{animation:2.4s booking-module__MdEc7a__egHighlight}@keyframes booking-module__MdEc7a__egHighlight{0%{box-shadow:0 0 #d92b1f00}15%{box-shadow:0 0 0 4px #d92b1f73}70%{box-shadow:0 0 0 4px #d92b1f40}to{box-shadow:0 0 #d92b1f00}}@media (prefers-reduced-motion:reduce){.booking-module__MdEc7a__highlight{animation:none;box-shadow:0 0 0 3px #d92b1f66}}.booking-module__MdEc7a__calToggle{width:100%;margin-top:.35rem}.booking-module__MdEc7a__cal{border:1px solid var(--border);border-radius:var(--r-sm,10px);background:var(--surface,#fff);margin:.5rem 0 .25rem;padding:.75rem}.booking-module__MdEc7a__calHead{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.booking-module__MdEc7a__calMonth{font-family:var(--font-heading);text-transform:capitalize;font-size:.95rem;font-weight:700}.booking-module__MdEc7a__calNav{border:1px solid var(--border);width:32px;height:32px;color:var(--primary,#d92b1f);cursor:pointer;background:#fff;border-radius:8px;font-size:1.15rem;line-height:1}.booking-module__MdEc7a__calNav:disabled{opacity:.35;cursor:not-allowed}.booking-module__MdEc7a__calGrid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.booking-module__MdEc7a__calWd{text-align:center;color:var(--muted,#7a6152);padding-bottom:2px;font-size:.68rem;font-weight:700}.booking-module__MdEc7a__calBlank{aspect-ratio:1}.booking-module__MdEc7a__calDay{aspect-ratio:1;background:var(--surface-2,#fbf6ef);color:var(--text,#3a1d0e);cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:.82rem;display:flex}.booking-module__MdEc7a__calFree:hover{border-color:var(--primary,#d92b1f)}.booking-module__MdEc7a__calPast{color:#ccbdae;cursor:not-allowed;background:0 0}.booking-module__MdEc7a__calBooked{color:#b42318;cursor:not-allowed;background:#fdecea;text-decoration:line-through}.booking-module__MdEc7a__calSel{background:var(--primary-soft,#fff8d6);border-color:var(--primary,#d92b1f);color:var(--primary-hi,#a81b13);font-weight:700}.booking-module__MdEc7a__calSelStart,.booking-module__MdEc7a__calSelEnd{background:var(--primary,#d92b1f);color:#fff;border-color:var(--primary,#d92b1f)}.booking-module__MdEc7a__calLegend{color:var(--muted,#7a6152);flex-wrap:wrap;gap:.9rem;margin-top:.6rem;font-size:.72rem;display:flex}.booking-module__MdEc7a__calLegend span{align-items:center;gap:.3rem;display:inline-flex}.booking-module__MdEc7a__calLegend i{border-radius:3px;width:12px;height:12px;display:inline-block}.booking-module__MdEc7a__legFree{background:var(--surface-2,#fbf6ef);border:1px solid var(--border)}.booking-module__MdEc7a__legBooked{background:#fdecea;border:1px solid #f3b4ab}.booking-module__MdEc7a__legSel{background:var(--primary,#d92b1f)}.booking-module__MdEc7a__backLink{width:fit-content;color:var(--primary,#d92b1f);margin-bottom:.85rem;font-size:.9rem;font-weight:600;display:block}.booking-module__MdEc7a__backLink:hover{text-decoration:underline}.booking-module__MdEc7a__productBook{grid-template-columns:1fr;gap:1.5rem;margin-top:1.5rem;display:grid}@media (min-width:860px){.booking-module__MdEc7a__productBook{grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);align-items:start}}.booking-module__MdEc7a__productBookTitle{margin-bottom:.75rem;font-size:1.15rem}.booking-module__MdEc7a__productBookSide{position:relative}@media (min-width:860px){.booking-module__MdEc7a__productBookSide{position:sticky;top:88px}}.booking-module__MdEc7a__productBookSummary{background:var(--surface,#fff);border:1px solid var(--border);border-radius:var(--r,16px);box-shadow:var(--sh-1);padding:1.5rem}.booking-module__MdEc7a__productBookIcon{width:64px;height:64px;color:var(--primary,#d92b1f);margin-bottom:.5rem}.booking-module__MdEc7a__productBookIcon svg{width:100%;height:100%}.booking-module__MdEc7a__productBookPrice{color:var(--muted,#7a6152);margin-bottom:.5rem;font-weight:600}.booking-module__MdEc7a__afterAdd{flex-direction:column;gap:.6rem;margin-top:.75rem;display:flex}.booking-module__MdEc7a__periodList{background:var(--surface-2,#fbf6ef);border:1px solid var(--border);border-radius:var(--r-sm,10px);color:var(--text,#3a1d0e);flex-direction:column;gap:.35rem;margin:.35rem 0 0;padding:.7rem .9rem;font-size:.95rem;list-style:none;display:flex}.booking-module__MdEc7a__cardDesc{color:var(--muted,#7a6152);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin:.35rem 0 .9rem;font-size:.92rem;line-height:1.5;display:-webkit-box;overflow:hidden}.booking-module__MdEc7a__productBookCal{min-width:0}.booking-module__MdEc7a__productHero{margin-bottom:1.75rem}.booking-module__MdEc7a__productHeroImg{border-radius:var(--r,16px);aspect-ratio:16/10;background:var(--surface-2,#fbf6ef);border:1px solid var(--border);overflow:hidden}.booking-module__MdEc7a__productHeroImg img{object-fit:cover;width:100%;height:100%;display:block}.booking-module__MdEc7a__productHeroImg svg{width:45%;height:100%;color:var(--primary,#d92b1f);margin:0 auto;display:block}.booking-module__MdEc7a__productDesc{color:var(--text,#3a1d0e);margin-top:1rem;font-size:1.02rem;line-height:1.65}
