.product-type-booking {
	--left-order: 2;
	--right-order: 1;
}
.product-type-booking [data-column="left"] {
	order: var(--left-order);
}
.product-type-booking [data-column="right"] {
	order: var(--right-order);
}
@media screen and (min-width: 640px) {
	.product-type-booking {
		--left-order: 1;
		--right-order: 2;
	}
}
@media screen and (max-width: 639px) {
	.product-type-booking .summary.entry-summary {
		padding-bottom: 0;
	}
	.product-type-booking [data-section="column"] {
		margin-bottom: 0;
		padding-bottom: 0;
	}
	.product-type-booking [data-column="left"] {
		padding-bottom: 4rem;
	}
	.product-type-booking .related-products {
		display: none;
	}
}
.wc_bookings_field_start_date {
	padding: 1em;
}
.wc-bookings-date-picker-date-fields {
	display: flex;
	align-items: center;
	gap: 0.5em;
	line-height: 1;
}
.wc-bookings-date-picker-date-fields label {
	flex: 1;
}
.wc-bookings-date-picker-date-fields span {
	font-family: var(--forms-sublabel-font);
	color: var(--forms-sublabel-color);
	font-size: var(--forms-sublabel-size);
	letter-spacing: var(--forms-sublabel-tracking);
	font-weight: var(--forms-sublabel-weight);
	font-style: var(--forms-sublabel-style);
	text-transform: var(--forms-sublabel-transform);
	line-height: 1.2;
	display: block;
	margin-top: 0.5em;
}
#wc-bookings-booking-form {
	display: flex;
	flex-wrap: wrap;
	justify-content: stretch;
}
#wc-bookings-booking-form > * {
	order: 3;
}
#wc-bookings-booking-form p + fieldset {
	margin-top: 1rem;
}
#wc-bookings-booking-form p.form-field {
	min-width: 33.33%;
	padding: 0;
	flex: 1;
	margin-bottom: 1rem;
}
#wc-bookings-booking-form p.form-field:nth-child(3n + 1) {
	padding-right: 0.5rem;
}
#wc-bookings-booking-form p.form-field:nth-child(3n + 2) {
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}
#wc-bookings-booking-form p.form-field:nth-child(3n + 3) {
	padding-left: 0.5rem;
}
#wc-bookings-booking-form p.form-field:last-of-type {
	padding-right: 0 !important;
}
.wc-bookings-date-picker .ui-datepicker-next span,
.wc-bookings-date-picker .ui-datepicker-prev span,
.wc-bookings-date-picker-timezone-block {
	display: none;
}
.wc-bookings-date-picker {
	order: 1;
	width: 100%;
	margin: 0;
	border-radius: var(--border-radius);
	border: 1px solid rgba(0, 0, 0, 0.1);
}
.wc-bookings-date-picker .ui-datepicker-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0.75rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.wc-bookings-date-picker .ui-datepicker-next,
.wc-bookings-date-picker .ui-datepicker-prev {
	background-size: contain;
	background-repeat: no-repeat;
	width: 1rem;
	height: 1rem;
	opacity: 0.5;
	cursor: pointer;
}
.wc-bookings-date-picker .ui-datepicker-next:hover,
.wc-bookings-date-picker .ui-datepicker-prev:hover {
	opacity: 1;
}
.wc-bookings-date-picker .ui-datepicker-next {
	order: 3;
	background-image: url(/wp-content/themes/dirigible/images/chevron-right.svg);
}
.wc-bookings-date-picker .ui-datepicker-prev {
	order: 1;
	background-image: url(/wp-content/themes/dirigible/images/chevron-left.svg);
}
.wc-bookings-date-picker .ui-datepicker-title {
	order: 2;
	font-weight: 700;
}
.wc-bookings-date-picker .ui-datepicker-calendar {
	width: 100%;
	text-align: center;
}
.wc-bookings-date-picker th {
	padding: 0.5rem 0;
}
.wc-bookings-date-picker tr {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}
.wc-bookings-date-picker td {
	border-radius: var(--border-radius);
	display: flex;
	padding: 0.2em 0;
	justify-content: center;
	align-items: center;
}
.wc-bookings-date-picker td a,
.wc-bookings-date-picker td span {
	--size: 2.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	width: var(--size);
	height: var(--size);
	padding: 0.25rem;
	border-radius: 50%;
	background-color: var(--bg, transparent);
	outline: 2px solid var(--outline-color, transparent);
	outline-offset: 2px;
}
.wc-bookings-date-picker td:hover {
	--outline-color: rgba(var(--primary-rgb), 0.25);
}
.wc-bookings-date-picker .ui-datepicker-current-day {
	--outline-color: var(--primary);
}
.wc-bookings-date-picker .ui-datepicker-current-day:active,
.wc-bookings-date-picker .ui-datepicker-current-day:focus,
.wc-bookings-date-picker .ui-datepicker-current-day:hover,
ul.block-picker li.block a.selected:active,
ul.block-picker li.block a.selected:focus,
ul.block-picker li.block a.selected:hover {
	--outline-color: var(--primary);
}
.wc-bookings-date-picker .not_bookable,
.wc-bookings-date-picker .ui-datepicker-unselectable,
.wc-bookings-date-picker .ui-state-disabled {
	opacity: 0.33;
}
.wc-bookings-date-picker .not_bookable:hover,
.wc-bookings-date-picker .ui-datepicker-unselectable:hover,
.wc-bookings-date-picker .ui-state-disabled:hover {
	--outline-color: transparent;
}
.wc-bookings-date-picker .ui-datepicker-unselectable a,
.wc-bookings-date-picker .ui-datepicker-unselectable span {
	cursor: not-allowed;
}
.wc-bookings-date-picker .ui-datepicker-today {
	--bg: var(--gray);
}
.wc-bookings-date-picker .ui-datepicker-current-day.ui-datepicker-today:not(.selection-start-date) {
	--outline-color: transparent;
}
.wc-bookings-date-picker
	.ui-datepicker-current-day.ui-datepicker-today:not(.selection-start-date):active,
.wc-bookings-date-picker
	.ui-datepicker-current-day.ui-datepicker-today:not(.selection-start-date):focus,
.wc-bookings-date-picker
	.ui-datepicker-current-day.ui-datepicker-today:not(.selection-start-date):hover {
	--outline-color: var(--primary);
}
.wc-bookings-booking-cost {
	width: 100%;
	margin-bottom: 1rem;
}
div.form-field.form-field-wide {
	width: 100%;
	order: 2;
}
ul.block-picker {
	margin-top: 1rem;
	list-style: none;
	display: grid;
	grid-gap: 1em;
	width: 100%;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}
ul.block-picker li {
	padding: 0;
	margin: 0;
	grid-column: span 4;
}
ul.block-picker li.block {
	grid-column: span 1;
}
ul.block-picker li.block a {
	color: var(--text);
	font-weight: var(--paragraph-weight, 400);
	font-family: var(--paragraph-font);
	line-height: var(--paragraph-line-height);
	font-size: var(--paragraph-size);
	letter-spacing: var(--paragraph-tracking);
	text-align: center;
	display: block;
	background: var(--gray);
	width: 100% !important;
	padding: 0.5em;
	border-radius: var(--rounded);
	outline: 2px solid var(--outline-color, transparent);
	outline-offset: 2px;
}
ul.block-picker li.block a:active,
ul.block-picker li.block a:focus,
ul.block-picker li.block a:hover {
	--outline-color: rgba(var(--primary-rgb), 0.25);
}
ul.block-picker li.block a.selected {
	background: 0 0;
	--outline-color: var(--primary);
}
.wc-bookings-availability-main-container {
	--link-color: var(--text);
	--link-underline-width: 0;
	--link-weight: inherit;
	--link-style: inherit;
	--link-hover-color: var(--text);
	--link-hover-underline-width: 0;
}
.wc-bookings-availability-main-container svg {
	fill: var(--text);
}
.wc-bookings-availability-date {
	font-family: var(--h3-font);
	font-size: var(--h3-size);
	letter-spacing: var(--h3-tracking);
	text-transform: var(--h3-transform);
	line-height: var(--h3-line-height);
	font-weight: var(--h3-weight);
	font-style: var(--h3-style);
	color: var(--h3-color);
	margin-bottom: 0;
}
.wc-bookings-availability-navigation {
	display: flex;
	align-items: center;
}
.wc-bookings-availability-navigation a {
	top: 0 !important;
}
a.wc-bookings-availability-navigation-current {
	display: block;
	line-height: 1;
	background: 0 0;
	border: 0 solid transparent;
	color: var(--understated-color) !important;
	font-family: var(--understated-font);
	font-size: var(--understated-size);
	letter-spacing: var(--understated-tracking);
	font-weight: var(--understated-weight);
	font-style: var(--understated-style);
	text-transform: var(--understated-transform);
}
a.wc-bookings-availability-navigation-current:active,
a.wc-bookings-availability-navigation-current:focus,
a.wc-bookings-availability-navigation-current:hover {
	background: 0 0;
	color: var(--understated-hover-color) !important;
}
.wc-bookings-availability-item-subheader {
	font-family: var(--h6-font);
	font-size: var(--h6-size);
	letter-spacing: var(--h6-tracking);
	text-transform: var(--h6-transform);
	line-height: var(--h6-line-height);
	font-weight: var(--h6-weight);
	font-style: var(--h6-style);
	color: var(--text) !important;
}
.wc-bookings-availability-header {
	margin-bottom: 2rem;
}
.wp-block-button__link {
	display: inline-block;
	cursor: pointer;
	width: auto;
	color: var(--btn-text);
	background: var(--btn-bg);
	border-width: var(--btn-border-width);
	border-style: solid;
	border-color: var(--btn-border);
	border-radius: var(--btn-radius);
	padding: var(--btn-py) var(--btn-px);
	font-family: var(--btn-font);
	font-size: var(--btn-size);
	font-weight: var(--btn-weight);
	text-transform: var(--btn-transform);
	letter-spacing: var(--btn-tracking);
	line-height: 1;
	height: auto;
	white-space: normal;
}
.wp-block-button__link:active,
.wp-block-button__link:hover {
	background: var(--btn-hov-bg);
	color: var(--btn-hov-text);
	border-color: var(--btn-hov-border);
}
.wp-block-button__link:focus {
	outline: 2px solid rgba(var(--btn-color-rgb), 0.5);
	outline-offset: 2px;
}
.wc-bookings-availability-item {
	padding: 0;
	margin: 0;
	--h3-font: var(--paragraph-font);
	--h3-style: var(--paragraph-style);
	--h3-transform: none;
	--h3-weight: var(--paragraph-weight-bold);
	--h3-color: var(--text);
	--h3-size: var(--paragraph-size);
	--h3-mobile-size: var(--paragraph-mobile-size);
	--h3-tracking: var(--paragraph-tracking);
	--h3-line-height: 1;
}
.wc-bookings-availability-item + .wc-bookings-availability-item {
	margin-top: 1rem;
	padding-top: 1rem;
}
.wc-bookings-availability-item-information {
	margin: 0;
	padding: 0;
}
.wc-bookings-availability-item-information div {
	font-size: var(--paragraph-size);
}
.popover-slot em,
.popover-slot tbody {
	color: var(--text) !important;
}
.wc-bookings-availability-popover-container-button {
	padding: 0.5em !important;
}
.wc-bookings-availability-popover-container-button .wp-block-button__link {
	margin: 0;
}
.wc-bookings-availability-book-button-more-details {
	--btn-bg: transparent;
	--btn-border: transparent;
	--btn-px: 0;
	--btn-py: 0;
	--btn-hov-bg: transparent;
	--btn-hov-border: transparent;
	display: inline-flex;
	flex: 1;
	padding: 0;
	text-align: center;
	text-decoration: none;
	border-width: 0;
	line-height: 1;
	color: var(--alt-link-color);
	font-family: var(--alt-link-font);
	font-size: var(--alt-link-size);
	letter-spacing: var(--alt-link-tracking);
	font-weight: var(--alt-link-weight);
	font-style: var(--alt-link-style);
	text-transform: var(--alt-link-transform);
}
.wc-bookings-availability-book-button-more-details:active,
.wc-bookings-availability-book-button-more-details:focus,
.wc-bookings-availability-book-button-more-details:hover {
	color: var(--alt-link-hov-color);
}
.components-popover:not(.is-without-arrow):not(.is-mobile)::after {
	display: none !important;
}
.reverse-print
	[data-block-name="woocommerce/bookings-availability-calendar-block"]
	.components-popover__content,
.reverse-print [data-block-name="woocommerce/bookings-availability-calendar-block"] th {
	background-color: rgba(0, 0, 0, 0.9) !important;
}
.wp-block-woocommerce-bookings-availability-schedule-block {
	margin-top: var(--block-margin);
	margin-bottom: var(--block-margin);
	width: 100%;
	max-width: none;
	padding-right: var(--gutters);
	padding-left: var(--gutters);
	margin-left: auto;
	margin-right: auto;
}
@media screen and (min-width: 1024px) {
	.wp-block-woocommerce-bookings-availability-schedule-block {
		width: 75%;
		min-width: var(--page-width);
		padding-left: 0;
		padding-right: 0;
		max-width: var(--max-wide-width);
	}
}
.wp-block-woocommerce-bookings-availability-schedule-block + .alignwide {
	margin-top: 0;
}
.wp-block-woocommerce-bookings-availability-schedule-block h3 {
	font-size: var(--h3-size) !important;
}
.wp-block-woocommerce-bookings-availability-schedule-block a {
	display: block;
}
.wp-block-woocommerce-bookings-availability-schedule-block
	.wc-bookings-availability-item-information {
	margin: 0;
	padding: 0;
}
.wp-block-woocommerce-bookings-availability-calendar-block * {
	transition: none;
}
.wp-block-woocommerce-bookings-availability-calendar-block a {
	text-decoration: none;
}
.wc-bookings-availability-calendar-week-view {
	color: var(--text);
}
.wc-bookings-availability-cal-date,
.wc-bookings-availability-calendar-header-item,
.wc-bookings-availability-calendar-week-hour {
	font-family: var(--forms-label-font);
	color: var(--forms-required);
	font-size: var(--forms-label-size);
	letter-spacing: var(--forms-label-tracking);
	font-weight: var(--forms-label-weight);
	font-style: var(--forms-label-style);
	text-transform: var(--forms-label-transform);
	line-height: 1.2;
	display: block;
}
.wc-bookings-availability-calendar-header-item {
	padding: 0.5em 0;
}
.wc-bookings-availability-calendar-week-hour {
	padding: 0 0.5em;
}
.wc-bookings-availability-calendar-day {
	background-color: var(--darken);
	padding: 0.5rem;
}
.wc-bookings-availability-calendar-day-item {
	padding: 0;
	margin: 0;
}
.wc-bookings-availability-calendar-day-item + .wc-bookings-availability-calendar-day-item {
	margin-top: 0.5em;
	padding-top: 0.5em;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.wc-bookings-availability-calendar-day-item-title {
	display: block;
	font-size: var(--paragraph-small-size);
	border: 0;
	margin: 0;
	padding: 0;
}
.wc-bookings-availability-calendar-container + .wc-bookings-availability-event-table {
	margin-top: 1rem;
}
.wc-bookings-availability-cal-date {
	background-color: var(--darken);
	margin: 0;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #eee;
	display: flex;
	flex: 1;
	padding: 0.5rem !important;
}
.wc-bookings-availability-cal-date.wc-bookings-availability-first-in-row {
	border-width: 1px 1px 0;
}
.wc-bookings-availability-cal-date[role="button"] {
	--btn-bg: transparent;
	--btn-border: transparent;
	--btn-px: 0;
	--btn-py: 0;
	--btn-hov-bg: transparent;
	--btn-hov-border: transparent;
	display: inline-block;
	border-width: 0;
	line-height: 1;
	color: var(--alt-link-color);
	font-family: var(--alt-link-font);
	font-size: var(--alt-link-size);
	letter-spacing: var(--alt-link-tracking);
	font-weight: var(--alt-link-weight);
	font-style: var(--alt-link-style);
	text-transform: var(--alt-link-transform);
	cursor: pointer;
	margin-bottom: 1rem;
}
.wc-bookings-availability-cal-date[role="button"]:active,
.wc-bookings-availability-cal-date[role="button"]:focus,
.wc-bookings-availability-cal-date[role="button"]:hover {
	color: var(--alt-link-hov-color);
}
