.prj-booking{max-width:860px;margin-inline:auto;padding:clamp(1.2rem,4vw,3rem);background:#fff;color:#173e38;border:1px solid #d5e3dc;border-radius:12px;box-shadow:0 16px 55px #163f3510}.prj-booking *{box-sizing:border-box}.prj-booking label,.prj-booking legend{font-weight:600}.prj-booking input:not([type=checkbox]),.prj-booking select{display:block;width:100%;min-height:48px;margin:.55rem 0 1.25rem;padding:.8rem 1rem;border:1px solid #9bb5a7;border-radius:4px;background:#fff;color:#173e38;font:inherit}.prj-booking input[type=checkbox]{width:20px;height:20px;flex:none;accent-color:#1a5c49}.prj-booking button,.prj-booking-button{font:inherit;cursor:pointer;min-height:46px;border:1px solid #b8ccbf;border-radius:4px;padding:.7rem 1rem;background:#f2f6f1;color:#173e38}.prj-booking button:hover:not(:disabled){background:#dae9de;border-color:#1a5c49}.prj-booking button:disabled{cursor:default;opacity:.38}.prj-booking :focus-visible{outline:3px solid #bd772f;outline-offset:3px}.prj-booking button[aria-pressed=true]{background:#1a5c49;color:#fff;border-color:#1a5c49}.prj-booking-monthbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.5rem 0 1rem}.prj-booking-monthbar h3{font-size:1.3rem!important;margin:0!important;text-transform:capitalize}.prj-booking-week,.prj-booking-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem}.prj-booking-week span{text-align:center;font-size:.85rem;padding:.6rem 0}.prj-booking-days button{padding:.75rem .2rem;aspect-ratio:1.18}.prj-booking-days [aria-current=date]{text-decoration:underline;text-underline-offset:.25em}.prj-booking-times{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.5rem 0}.prj-booking-person{border:0;border-top:1px solid #d5e3dc;padding:1.75rem 0 0;margin:1.5rem 0}.prj-booking-person legend{padding:.5rem .5rem .5rem 0}.prj-booking .prj-booking-ack{display:flex;align-items:flex-start;gap:.65rem;margin:1.25rem 0;font-weight:400}.prj-booking-payment,.prj-booking-timezone,.prj-booking-person p{font-size:.9rem;line-height:1.6;color:#49635a}.prj-booking .prj-booking-button{display:inline-block;background:#1a5c49;color:#fff;border-color:#1a5c49;text-decoration:none;padding:1rem 1.5rem}.prj-booking-status{margin:1.25rem 0 0;line-height:1.7}.prj-booking-honey{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.prj-booking a{color:#1a5c49;text-decoration:underline}.prj-booking-unavailable h2{margin-top:0}.prj-booking[aria-busy=true]{cursor:progress}@media(max-width:480px){.prj-booking{padding:1rem;border-radius:6px}.prj-booking-week,.prj-booking-days{gap:.2rem}.prj-booking-days button{min-height:42px;font-size:.92rem}.prj-booking-monthbar h3{font-size:1.1rem!important}.prj-booking .prj-booking-button{width:100%;text-align:center}.prj-booking-person{min-width:0}}@media(prefers-reduced-motion:reduce){.prj-booking *{scroll-behavior:auto!important}}
.prj-booking-service-summary{white-space:normal;overflow-wrap:anywhere;line-height:1.6;font-weight:600;margin:.5rem 0 1rem}.prj-booking-service-summary:empty{display:none}
body .elementor .prj-booking button{background:#f2f6f1;color:#173e38;border:1px solid #b8ccbf;border-radius:4px;font:inherit;min-height:46px;padding:.7rem 1rem}body .elementor .prj-booking button:hover:not(:disabled),body .elementor .prj-booking button:focus-visible{background:#dae9de;color:#173e38;border-color:#1a5c49}body .elementor .prj-booking button[aria-pressed=true],body .elementor .prj-booking button[aria-pressed=true]:hover{background:#1a5c49;color:#fff;border-color:#1a5c49}body .elementor .prj-booking .prj-booking-days button{padding:.75rem .2rem}body .elementor .prj-booking button.prj-booking-button,body .elementor .prj-booking a.prj-booking-button,body .elementor .prj-booking button.prj-booking-button:hover,body .elementor .prj-booking a.prj-booking-button:hover{background:#1a5c49;color:#fff;border-color:#1a5c49;padding:1rem 1.5rem;text-decoration:none}body .elementor .prj-booking button:disabled{opacity:.38;cursor:default}body .elementor .prj-booking :focus-visible{outline:3px solid #bd772f;outline-offset:3px}@media(max-width:480px){body .elementor .prj-booking .prj-booking-days button{min-height:42px;font-size:.92rem}}
