.booking-calendar{position:relative}.booking-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem;text-align:center}.booking-calendar__weekday{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:rgb(0 0 0/.5)}.booking-calendar-day{border:1px solid transparent;border-radius:9999px;padding:.5rem;font-size:.95rem;font-weight:500;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.booking-calendar-day--today{border:1px solid rgb(0 0 0/.45)}.booking-calendar-day--available{color:rgb(0 0 0/.9)}.booking-calendar-day--active,.booking-calendar-day--available:hover{background-color:var(--ca-accent);border-color:var(--ca-accent);color:white}.booking-calendar-day--unavailable{color:rgb(0 0 0/.28);cursor:not-allowed}.booking-timeslots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}@media (min-width:40rem){.booking-timeslots{grid-template-columns:repeat(3,minmax(0,1fr))}}.booking-timeslots__item{border:1px solid rgb(0 0 0/.15);border-radius:.75rem;padding:.6rem .75rem;font-size:.95rem;font-weight:500;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.booking-timeslots__item--active{border-color:var(--ca-accent);background-color:var(--ca-accent);color:white}.booking-timeslots__item--active:hover{background-color:var(--ca-black)}.booking-timeslots__item--available:hover{border-color:var(--ca-accent);background-color:var(--ca-accent);color:white}.booking-services{display:grid;gap:.75rem}@media (min-width:48rem){.booking-services{grid-template-columns:repeat(3,minmax(0,1fr))}}.booking-service-card{height:100%;border:1px solid var(--ca-accent);border-radius:.9rem;padding:1rem;text-align:left;background:var(--ca-white);color:var(--ca-black);box-shadow:var(--shadow-1);transition:background-color .2s ease,color .2s ease,border-color .2s ease}.booking-service-card--active,.booking-service-card:hover{background:var(--ca-accent);color:var(--ca-white)}.booking-service-card__description,.booking-service-card__meta{color:color-mix(in srgb,currentColor 85%,transparent)}