.gb-booker {
	direction: rtl;
	max-width: 760px;
	margin: 0 auto;
	border: 1px solid #d8dee4;
	border-radius: 8px;
	padding: 18px;
	background: #fff;
	color: #1f2328;
	text-align: right;
}
.gb-booker--no-frame {
	border: 0;
	border-radius: 0;
	padding: 0;
	background: transparent;
}
.gb-widget-title {
	margin: 0 0 16px;
}
.gb-progress {
	font-size: 14px;
	color: #59636e;
	margin-bottom: 12px;
}
.gb-progress--hidden {
	display: none;
}
.gb-live-estimate {
	display: grid;
	gap: 8px;
	margin: 0 0 16px;
	border: 1px solid #bfdbfe;
	border-radius: 8px;
	padding: 12px;
	background: #f0f7ff;
	color: #1f2328;
}
.gb-live-estimate[hidden] {
	display: none;
}
.gb-live-estimate.is-loading {
	opacity: .72;
}
.gb-live-estimate__label {
	color: #0969da;
	font-size: 13px;
	font-weight: 800;
}
.gb-live-estimate__content {
	display: grid;
	gap: 6px;
}
.gb-live-estimate__content p,
.gb-estimate p {
	margin: 0;
}
.gb-live-estimate__content .gb-notice,
.gb-estimate .gb-notice {
	margin-top: 4px;
}
.gb-estimate__price {
	color: #0a7f42;
	font-size: 18px;
	font-weight: 800;
}
.gb-estimate__duration {
	color: #24292f;
	font-weight: 700;
}
.gb-step {
	display: none;
}
.gb-step.is-active {
	display: block;
}
.gb-service-list,
.gb-slots {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 10px;
	min-width: 0;
}
.gb-slots.is-guided,
.gb-waitlist.is-guided,
.gb-actions.is-guided,
.gb-step.is-guided {
	border-radius: 8px;
	animation: gb-guide-pulse 1.2s ease;
}
@keyframes gb-guide-pulse {
	0% {
		box-shadow: 0 0 0 0 rgba(9, 105, 218, 0.24);
		background: rgba(9, 105, 218, 0.08);
	}
	100% {
		box-shadow: 0 0 0 12px rgba(9, 105, 218, 0);
		background: transparent;
	}
}
.gb-calendar {
	display: grid;
	gap: 12px;
	margin: 12px 0 16px;
}
.gb-calendar__toolbar {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr) 44px;
	gap: 8px;
	align-items: center;
}
.gb-calendar__title {
	font-weight: 800;
	text-align: center;
	font-size: 18px;
}
.gb-calendar__nav,
.gb-calendar__quick-button {
	border: 1px solid #d0d7de;
	border-radius: 6px;
	background: #ffffff;
	color: #24292f;
	cursor: pointer;
	font: inherit;
}
.gb-calendar__nav {
	width: 44px;
	height: 44px;
	font-size: 26px;
	line-height: 1;
}
.gb-calendar__quick {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}
.gb-calendar__quick-button {
	min-height: 38px;
	padding: 6px 10px;
	font-weight: 700;
}
.gb-calendar__nav:hover,
.gb-calendar__quick-button:hover {
	border-color: #0969da;
	color: #0969da;
}
.gb-calendar__weekdays,
.gb-calendar__days {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 6px;
}
.gb-calendar__weekdays span {
	color: #59636e;
	font-size: 13px;
	font-weight: 800;
	text-align: center;
}
.gb-calendar-day {
	position: relative;
	display: grid;
	gap: 3px;
	align-content: center;
	min-height: 68px;
	padding: 8px 4px;
	border: 1px solid #d8dee4;
	border-radius: 8px;
	background: #ffffff;
	color: #24292f;
	cursor: pointer;
	text-align: center;
	font: inherit;
}
.gb-calendar-day__num {
	font-size: 18px;
	font-weight: 800;
	line-height: 1;
}
.gb-calendar-day__label {
	color: #59636e;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
}
.gb-calendar-day--empty {
	min-height: 68px;
}
.gb-calendar-day.is-available {
	border-color: #9be9a8;
	background: #f0fff4;
}
.gb-calendar-day.is-selected {
	border-color: #0969da;
	background: #0969da;
	color: #ffffff;
	box-shadow: 0 8px 18px rgba(9, 105, 218, 0.22);
}
.gb-calendar-day.is-selected .gb-calendar-day__label {
	color: #ffffff;
}
.gb-calendar-day.is-disabled,
.gb-calendar-day:disabled {
	border-color: #d8dee4;
	background: #f6f8fa;
	color: #8c959f;
	cursor: not-allowed;
}
.gb-calendar-day.is-unavailable {
	border-color: #f1b8b8;
	background: #fff1f1;
	color: #9b1c1c;
	cursor: pointer;
}
.gb-calendar-day.is-unavailable .gb-calendar-day__label {
	color: #9b1c1c;
}
.gb-calendar-day.is-loading {
	color: #59636e;
	cursor: wait;
}
.gb-calendar-day.is-loading::after {
	content: "";
	position: absolute;
	inset: auto 8px 6px;
	height: 2px;
	border-radius: 999px;
	background: linear-gradient(90deg, transparent, #0969da, transparent);
}
.gb-calendar__status {
	min-height: 20px;
	color: #59636e;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}
.gb-choice,
.gb-slot {
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
	border: 1px solid #d8dee4;
	border-radius: 6px;
	padding: 12px;
	background: #f6f8fa;
	cursor: pointer;
	text-align: start;
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: break-word;
}
.gb-choice strong,
.gb-choice span,
.gb-slot {
	display: block;
	min-width: 0;
	max-width: 100%;
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: break-word;
}
.gb-choice span {
	margin-top: 6px;
	color: #59636e;
}
.gb-choice.is-selected,
.gb-slot.is-selected {
	border-color: #0969da;
	background: #ddf4ff;
}
.gb-slot.is-booked,
.gb-slot.is-booked:disabled {
	border-color: #f1b8b8;
	background: #fff1f1;
	color: #9b1c1c;
	cursor: not-allowed;
	opacity: 1;
}
.gb-slot-help {
	margin: 10px 0 0;
	color: #59636e;
	font-size: 13px;
	line-height: 1.5;
}
.gb-waitlist {
	margin: 14px 0 0;
	border: 1px solid #bfdbfe;
	border-radius: 8px;
	padding: 14px;
	background: #f0f7ff;
}
.gb-waitlist.is-empty-day {
	border-color: #f1b8b8;
	background: #fff7f7;
}
.gb-manual-coordination {
	margin: 14px 0 0;
	border: 1px solid #bfdbfe;
	border-radius: 10px;
	padding: 16px;
	background: #f0f7ff;
	color: #1f2328;
}
.gb-manual-coordination[hidden] {
	display: none;
}
.gb-manual-coordination h3 {
	margin: 0 0 8px;
	color: #0969da;
	font-size: 20px;
}
.gb-manual-coordination p {
	margin: 0 0 12px;
	color: #3f454d;
	line-height: 1.6;
}
.gb-manual-coordination form {
	display: grid;
	gap: 12px;
}
.gb-manual-coordination label {
	margin: 0;
}
.gb-manual-coordination__note,
.gb-manual-coordination__actions {
	grid-column: 1 / -1;
}
.gb-manual-coordination__help {
	display: block;
	margin-top: 5px;
	color: #57606a;
	font-size: 13px;
	line-height: 1.5;
}
.gb-manual-coordination__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin-top: 10px;
}
.gb-manual-coordination__actions .gb-button {
	flex: 1 1 180px;
}
.gb-manual-coordination__whatsapp::before {
	content: "WhatsApp";
	display: inline-block;
	margin-left: 6px;
	color: #1f883d;
	font-weight: 800;
}
.gb-manual-coordination__whatsapp[hidden] {
	display: none;
}
@media (min-width: 768px) {
	.gb-manual-coordination form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
.gb-waitlist[hidden] {
	display: none;
}
.gb-waitlist h3 {
	margin: 0 0 8px;
	font-size: 18px;
}
.gb-waitlist p {
	margin: 0 0 10px;
	color: #59636e;
	line-height: 1.5;
}
.gb-waitlist__toggle {
	margin: 0 0 10px;
}
.gb-waitlist form[hidden] {
	display: none;
}
.gb-waitlist-summary {
	display: grid;
	gap: 6px;
	margin: 4px 0 12px;
	padding: 10px 12px;
	border: 1px solid #d8dee4;
	border-radius: 6px;
	background: #ffffff;
	color: #24292f;
}
.gb-waitlist-summary[hidden] {
	display: none;
}
.gb-waitlist-custom-range {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}
.gb-waitlist-custom-range[hidden] {
	display: none;
}
.gb-waitlist select,
.gb-waitlist input[type="date"] {
	width: 100%;
}
.gb-question {
	margin: 14px 0;
}
.gb-required-indicator {
	color: #d1242f;
	font-weight: 700;
}
.gb-question.is-invalid {
	background: #fff5f5;
	border-radius: 8px;
	box-shadow: 0 0 0 6px #fff5f5, 0 0 0 7px #d1242f;
	scroll-margin-block: 120px;
}
.gb-question legend {
	font-weight: 700;
	margin-bottom: 8px;
}
.gb-question small,
.gb-small {
	display: block;
	color: #59636e;
	font-size: 13px;
	margin: 4px 0 8px;
}
.gb-inline-choice,
.gb-booker label {
	display: block;
	margin: 8px 0;
}
.gb-booker input,
.gb-booker select,
.gb-booker textarea {
	box-sizing: border-box;
	width: 100%;
	min-height: 42px;
	border: 1px solid #d0d7de;
	border-radius: 6px;
	padding: 8px 10px;
}
.gb-booker input[type="radio"],
.gb-booker input[type="checkbox"] {
	width: auto;
	min-height: auto;
	margin-left: 6px;
}
.gb-actions {
	display: flex;
	gap: 10px;
	justify-content: flex-start;
	margin-top: 18px;
}
.gb-button {
	border: 0;
	border-radius: 6px;
	background: #0969da;
	color: #fff;
	padding: 10px 16px;
	cursor: pointer;
}
.gb-button:disabled {
	cursor: not-allowed;
	opacity: .65;
}
.gb-button.secondary {
	background: #f6f8fa;
	color: #24292f;
	border: 1px solid #d0d7de;
}
.gb-message {
	margin-top: 12px;
	font-weight: 600;
	color: #116329;
}
.gb-message.is-error {
	color: #cf222e;
}
.gb-notice {
	background: #fff8c5;
	border: 1px solid #eac54f;
	border-radius: 6px;
	padding: 10px;
}
.gb-modal[hidden] {
	display: none;
}
.gb-modal {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: grid;
	place-items: center;
	padding: 18px;
}
.gb-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(31, 35, 40, .38);
}
.gb-modal__panel {
	position: relative;
	box-sizing: border-box;
	width: min(100%, 440px);
	border: 1px solid #f1b8b8;
	border-radius: 10px;
	background: #fffaf7;
	padding: 22px;
	box-shadow: 0 22px 60px rgba(31, 35, 40, .18);
	text-align: right;
}
.gb-modal__panel h2 {
	margin: 0 0 10px;
	color: #8a4600;
	font-size: 22px;
	line-height: 1.3;
}
.gb-modal__panel p {
	margin: 0 0 16px;
	color: #3f454d;
	line-height: 1.6;
}
.gb-modal--success .gb-modal__panel {
	border-color: #9be9a8;
	background: #f6fff7;
}
.gb-modal--success .gb-modal__panel h2 {
	color: #006b1f;
}
.gb-customer-actions {
	max-width: 640px;
}
.gb-returning-booking-recognized {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 14px;
	padding: 10px 12px;
	border: 1px solid rgba(16, 185, 129, 0.25);
	border-radius: 12px;
	background: rgba(236, 253, 245, 0.9);
	color: #065f46;
	font-size: 14px;
	line-height: 1.5;
}
.gb-returning-booking-recognized__icon {
	flex: 0 0 auto;
	font-weight: 800;
}
.gb-returning-booking-recognized__text {
	margin: 0;
}
.gb-returning-booking {
	margin: 0 0 18px;
	padding: 0;
	border: 1px solid rgba(148, 163, 184, 0.35);
	border-radius: 14px;
	background: rgba(248, 250, 252, 0.85);
	box-shadow: none;
	overflow: hidden;
}
.gb-returning-booking__summary {
	width: 100%;
	border: 0;
	background: transparent;
	color: inherit;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 16px;
	font: inherit;
	text-align: inherit;
}
.gb-returning-booking__summary:hover {
	background: rgba(15, 23, 42, 0.03);
}
.gb-returning-booking__summary:focus-visible {
	outline: 2px solid rgba(37, 99, 235, 0.35);
	outline-offset: 2px;
}
.gb-returning-booking__content {
	display: grid;
	gap: 2px;
	min-width: 0;
}
.gb-returning-booking__title {
	margin: 0;
	color: #1f2328;
	display: block;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.35;
}
.gb-returning-booking__subtitle {
	margin: 2px 0 0;
	color: #64748b;
	display: block;
	font-size: 13px;
	line-height: 1.4;
}
.gb-returning-booking__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 36px;
	border: 1px solid #d0d7de;
	border-radius: 999px;
	padding: 6px 12px;
	background: #ffffff;
	color: #1f2328;
	font-size: 13px;
	font-weight: 700;
	pointer-events: none;
	white-space: nowrap;
}
.gb-returning-booking__toggle-icon {
	display: inline-block;
	line-height: 1;
	transition: transform .18s ease;
}
.gb-returning-booking.is-open .gb-returning-booking__toggle-icon {
	transform: rotate(180deg);
}
.gb-returning-booking__panel {
	padding: 0 16px 14px;
}
.gb-returning-booking__panel[hidden] {
	display: none;
}
.gb-returning-booking__description,
.gb-returning-booking__note {
	margin: 0;
	color: #59636e;
	line-height: 1.5;
}
.gb-returning-booking__note {
	margin-top: 8px;
	font-size: 13px;
}
.gb-returning-booking__form {
	--gb-returning-input-radius: 12px;
	--gb-returning-button-radius: 12px;
	margin-top: 10px;
}
.gb-returning-booking__label {
	display: block;
	margin-bottom: 5px;
	font-weight: 700;
	font-size: 13px;
}
.gb-returning-booking__controls {
	display: grid;
	grid-template-columns: minmax(0, 1fr) max-content;
	gap: 0;
	align-items: end;
}
.gb-returning-booking__field {
	display: block;
	min-width: 0;
	margin: 0;
}
.gb-returning-booking__field input {
	width: 100%;
	height: 42px;
	min-height: 42px;
	box-sizing: border-box;
	border-radius: 0 var(--gb-returning-input-radius) var(--gb-returning-input-radius) 0;
}
.gb-returning-booking__button {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 42px;
	min-height: 42px;
	box-sizing: border-box;
	margin-inline-start: -1px;
	border-radius: var(--gb-returning-button-radius) 0 0 var(--gb-returning-button-radius);
	white-space: nowrap;
}
.gb-returning-booking__button:hover,
.gb-returning-booking__button:focus,
.gb-returning-booking__button:focus-visible {
	z-index: 1;
}
.gb-returning-booking__button.is-loading {
	opacity: .78;
	cursor: progress;
}
.gb-returning-booking__message:empty {
	display: none;
}
.gb-returning-booking-status {
	margin: 0 0 14px;
}
.gb-returning-prefill-note,
.gb-returning-dogs {
	margin: 0 0 12px;
	padding: 12px;
	border: 1px solid #bfdbfe;
	border-radius: 10px;
	background: #f0f7ff;
	color: #1f2328;
	line-height: 1.6;
}
.gb-returning-prefill-note[hidden],
.gb-returning-dogs[hidden] {
	display: none;
}
.gb-returning-dog-single {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	justify-content: space-between;
}
.gb-returning-dog-single span,
.gb-returning-dog-picker legend {
	font-weight: 800;
}
.gb-returning-dog-other {
	border: 0;
	background: transparent;
	color: #0969da;
	cursor: pointer;
	font: inherit;
	font-weight: 800;
	padding: 4px 0;
	text-decoration: underline;
}
.gb-returning-dog-picker {
	margin: 0;
	padding: 0;
	border: 0;
}
.gb-returning-dog-options {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 8px;
	margin-top: 10px;
}
.gb-returning-dog-option {
	display: flex;
	gap: 8px;
	align-items: center;
	min-height: 42px;
	padding: 9px 10px;
	border: 1px solid #d8dee4;
	border-radius: 10px;
	background: #ffffff;
	cursor: pointer;
	font-weight: 700;
}
.gb-returning-dog-option:focus-within {
	outline: 2px solid #0969da;
	outline-offset: 2px;
}
.gb-customer-actions__title {
	margin: 0 0 8px;
	font-size: 24px;
	line-height: 1.25;
}
.gb-customer-actions__description {
	margin: 0 0 16px;
	color: #59636e;
	line-height: 1.6;
}
.gb-customer-actions__form {
	display: grid;
	gap: 12px;
}
.gb-customer-actions__field span {
	display: block;
	margin-bottom: 6px;
	font-weight: 600;
}
.gb-customer-actions__button {
	justify-self: start;
}
.gb-customer-actions__message:empty {
	display: none;
}
.gb-reviews {
	direction: rtl;
	text-align: right;
}
.gb-reviews__items {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
}
.gb-reviews--slider .gb-reviews__items {
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding-bottom: 6px;
}
.gb-reviews--slider .gb-review-card {
	min-width: min(320px, 84vw);
	scroll-snap-align: start;
}
.gb-review-card {
	border: 1px solid #d8dee4;
	border-radius: 10px;
	background: #ffffff;
	padding: 18px;
	box-shadow: 0 12px 30px rgba(31, 35, 40, 0.06);
}
.gb-review-card__head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 10px;
}
.gb-review-card__avatar {
	width: 54px;
	height: 54px;
	border-radius: 12px;
	overflow: hidden;
	background: #eef6ff;
	border: 1px solid #d8dee4;
	display: inline-grid;
	place-items: center;
	color: #0969da;
	font-weight: 700;
	flex: 0 0 auto;
}
.gb-review-card__avatar img,
.gb-review-card__avatar__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.gb-review-card__stars {
	margin: 0;
	color: #f2b01e;
}
.gb-review-stars {
	display: inline-flex;
	gap: 2px;
	vertical-align: middle;
}
.gb-review-stars .dashicons {
	width: 18px;
	height: 18px;
	font-size: 18px;
}
.gb-review-card__comment {
	margin: 0 0 14px;
	color: #24292f;
	line-height: 1.7;
}
.gb-review-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	align-items: center;
	color: #59636e;
	font-size: 14px;
}
.gb-review-card__meta strong {
	color: #24292f;
}
.gb-reviews__empty {
	margin: 0;
	color: #59636e;
}
.gb-reviews__more {
	display: flex;
	justify-content: center;
	margin-top: 18px;
}
.gb-reviews__more[hidden] {
	display: none;
}
.gb-reviews__load {
	min-width: 160px;
}
.gb-reviews__load.is-loading {
	opacity: 0.78;
	cursor: progress;
}
.gb-reviews__sentinel {
	width: 1px;
	height: 1px;
}
.gb-elementor-style-map {
	position: relative;
}
.gb-elementor-style-map,
.gb-elementor-style-map .gb-live-estimate,
.gb-elementor-style-map .gb-step,
.gb-elementor-style-map .gb-service-list,
.gb-elementor-style-map .gb-calendar,
.gb-elementor-style-map .gb-slots,
.gb-elementor-style-map .gb-waitlist,
.gb-elementor-style-map .gb-actions,
.gb-elementor-style-map .gb-message,
.gb-elementor-style-map .gb-customer-actions__title,
.gb-elementor-style-map .gb-customer-actions__description,
.gb-elementor-style-map .gb-customer-actions__field,
.gb-elementor-style-map .gb-customer-actions__button,
.gb-elementor-style-map .gb-customer-actions__message,
.gb-elementor-style-map .gb-reviews__items,
.gb-elementor-style-map .gb-review-card,
.gb-elementor-style-map .gb-review-card__stars,
.gb-elementor-style-map .gb-review-card__comment,
.gb-elementor-style-map .gb-review-card__meta,
.gb-elementor-style-map .gb-review-card__avatar,
.gb-elementor-style-map .gb-reviews__load {
	position: relative;
	outline: 1px dashed rgba(9, 105, 218, .55);
	outline-offset: 3px;
}
.gb-elementor-design-preview {
	--gb-design-preview-bg: rgba(246, 248, 250, .78);
}
.gb-elementor-design-preview .gb-progress {
	display: none;
}
.gb-elementor-design-preview .gb-step {
	display: grid;
	gap: 12px;
	margin-top: 18px;
}
.gb-elementor-design-preview .gb-step.is-active {
	display: grid;
}
.gb-elementor-design-preview .gb-step--legacy-estimate[hidden] {
	display: none;
}
.gb-elementor-design-preview .gb-question,
.gb-elementor-design-preview .gb-estimate,
.gb-elementor-design-preview .gb-notice,
.gb-elementor-design-preview .gb-waitlist-summary {
	display: grid;
	gap: 8px;
	padding: 12px;
	border: 1px solid #d0d7de;
	border-radius: 8px;
	background: rgba(255, 255, 255, .82);
}
.gb-elementor-design-preview .gb-question label {
	display: flex;
	gap: 8px;
	align-items: center;
	margin: 0;
}
.gb-elementor-design-preview .gb-design-demo-message {
	margin-top: 10px;
}
.gb-elementor-design-preview .gb-calendar__weekdays,
.gb-elementor-design-preview .gb-calendar__days {
	display: grid;
}
.gb-elementor-design-preview .gb-waitlist {
	margin-top: 16px;
}
.gb-elementor-design-preview .gb-waitlist form,
.gb-elementor-design-preview .gb-waitlist-summary,
.gb-elementor-design-preview .gb-waitlist-custom-range {
	display: grid;
}
.gb-elementor-design-preview .gb-actions {
	margin-top: 16px;
}
.gb-elementor-design-preview .gb-preview-hover {
	box-shadow: 0 12px 26px rgba(37, 99, 235, .14);
	transform: translateY(-1px);
}
.gb-elementor-design-preview .gb-slot.gb-preview-hover,
.gb-elementor-design-preview .gb-calendar-day.gb-preview-hover {
	border-color: rgba(37, 99, 235, .5);
	background: rgba(239, 246, 255, .95);
	color: #1d4ed8;
}
.gb-elementor-design-preview .gb-preview-focus {
	outline: 2px solid rgba(37, 99, 235, .55);
	outline-offset: 3px;
	box-shadow: 0 0 0 4px rgba(37, 99, 235, .14);
}

@media (max-width: 640px) {
	.gb-returning-booking__summary {
		align-items: flex-start;
		padding: 12px 14px;
	}
	.gb-returning-booking__panel {
		padding: 0 14px 14px;
	}
	.gb-returning-booking__controls {
		grid-template-columns: 1fr;
		gap: 8px;
	}
	.gb-returning-booking__field input {
		border-radius: var(--gb-returning-input-radius);
	}
	.gb-returning-booking__button {
		width: 100%;
		margin-inline-start: 0;
		border-radius: var(--gb-returning-button-radius);
	}
}
.gb-elementor-design-preview .gb-design-modal-preview {
	margin-top: 16px;
}
.gb-elementor-design-preview .gb-design-modal-preview .gb-modal {
	position: relative;
	inset: auto;
	z-index: auto;
	display: block;
	background: transparent;
}
.gb-elementor-design-preview .gb-design-modal-preview .gb-modal__panel {
	width: 100%;
	max-width: 440px;
}
.gb-elementor-style-map .gb-choice,
.gb-elementor-style-map .gb-question,
.gb-elementor-style-map .gb-estimate,
.gb-elementor-style-map .gb-notice,
.gb-elementor-style-map .gb-calendar-day,
.gb-elementor-style-map .gb-slot,
.gb-elementor-style-map .gb-waitlist-summary {
	position: relative;
	outline: 1px dashed rgba(111, 66, 193, .45);
	outline-offset: 2px;
}
.gb-elementor-style-map::before,
.gb-elementor-style-map .gb-live-estimate::before,
.gb-elementor-style-map .gb-step::before,
.gb-elementor-style-map .gb-service-list::before,
.gb-elementor-style-map .gb-calendar::before,
.gb-elementor-style-map .gb-slots::before,
.gb-elementor-style-map .gb-waitlist::before,
.gb-elementor-style-map .gb-actions::before,
.gb-elementor-style-map .gb-message::before,
.gb-elementor-style-map .gb-customer-actions__title::before,
.gb-elementor-style-map .gb-customer-actions__description::before,
.gb-elementor-style-map .gb-customer-actions__field::before,
.gb-elementor-style-map .gb-customer-actions__button::before,
.gb-elementor-style-map .gb-customer-actions__message::before,
.gb-elementor-style-map .gb-reviews__items::before,
.gb-elementor-style-map .gb-review-card::before,
.gb-elementor-style-map .gb-review-card__stars::before,
.gb-elementor-style-map .gb-review-card__comment::before,
.gb-elementor-style-map .gb-review-card__meta::before,
.gb-elementor-style-map .gb-review-card__avatar::before,
.gb-elementor-style-map .gb-reviews__load::before {
	position: absolute;
	z-index: 9;
	top: -11px;
	right: 8px;
	display: inline-flex;
	align-items: center;
	min-height: 18px;
	padding: 1px 7px;
	border-radius: 999px;
	background: #0969da;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	pointer-events: none;
	white-space: nowrap;
}
.gb-elementor-style-map .gb-choice::before,
.gb-elementor-style-map .gb-question::before,
.gb-elementor-style-map .gb-estimate::before,
.gb-elementor-style-map .gb-notice::before,
.gb-elementor-style-map .gb-calendar-day::before,
.gb-elementor-style-map .gb-slot::before,
.gb-elementor-style-map .gb-waitlist-summary::before {
	position: absolute;
	z-index: 9;
	top: -10px;
	right: 6px;
	display: inline-flex;
	padding: 1px 6px;
	border-radius: 999px;
	background: #6f42c1;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	line-height: 1.2;
	pointer-events: none;
	white-space: nowrap;
}
.gb-elementor-style-map::before {
	content: "מעטפת הטופס · .gb-booker";
}
.gb-elementor-style-map--booking::before {
	content: "מעטפת הזמנת תור · .gb-booker";
}
.gb-elementor-style-map--customer-actions::before {
	content: "מעטפת ניהול תורים · .gb-customer-actions";
}
.gb-elementor-style-map--reviews::before {
	content: "מעטפת ביקורות · .gb-reviews";
}
.gb-elementor-style-map .gb-live-estimate::before {
	content: "סיכום משוער · .gb-live-estimate";
}
.gb-elementor-style-map [data-gb-step="service"]::before {
	content: "שלב שירותים · .gb-step";
}
.gb-elementor-style-map [data-gb-step="questions"]::before {
	content: "שלב שאלות · .gb-step";
}
.gb-elementor-style-map [data-gb-step="time"]::before {
	content: "שלב תאריך ושעה · .gb-step";
}
.gb-elementor-style-map [data-gb-step="details"]::before {
	content: "פרטי קשר · .gb-step";
}
.gb-elementor-style-map .gb-service-list::before {
	content: "בחירת שירות · .gb-choice";
	background: #6f42c1;
}
.gb-elementor-style-map .gb-calendar::before {
	content: "תאריכון · .gb-calendar";
	background: #0a7f5a;
}
.gb-elementor-style-map .gb-slots::before {
	content: "סלוטים · .gb-slot";
	background: #bf8700;
}
.gb-elementor-style-map .gb-waitlist::before {
	content: "רשימת המתנה · .gb-waitlist";
	background: #8250df;
}
.gb-elementor-style-map .gb-actions::before {
	content: "כפתורים · .gb-button";
	background: #1f883d;
}
.gb-elementor-style-map .gb-message::before,
.gb-elementor-style-map .gb-customer-actions__message::before {
	content: "הודעות · .gb-message";
	background: #cf222e;
}
.gb-elementor-style-map .gb-customer-actions__title::before {
	content: "כותרת · .gb-customer-actions__title";
}
.gb-elementor-style-map .gb-customer-actions__description::before {
	content: "טקסט הסבר · .gb-customer-actions__description";
}
.gb-elementor-style-map .gb-customer-actions__field::before {
	content: "שדה אימייל";
	background: #6f42c1;
}
.gb-elementor-style-map .gb-customer-actions__button::before {
	content: "כפתור · .gb-customer-actions__button";
	background: #1f883d;
}
.gb-elementor-style-map .gb-reviews__items::before {
	content: "רשימת ביקורות · .gb-reviews__items";
}
.gb-elementor-style-map .gb-review-card::before {
	content: "כרטיס ביקורת · .gb-review-card";
}
.gb-elementor-style-map .gb-review-card__stars::before {
	content: "כוכבים · .gb-review-card__stars";
	background: #bf8700;
}
.gb-elementor-style-map .gb-review-card__comment::before {
	content: "טקסט ביקורת · .gb-review-card__comment";
	background: #6f42c1;
}
.gb-elementor-style-map .gb-review-card__meta::before {
	content: "שם לקוח/כלב · .gb-review-card__meta";
	background: #0a7f5a;
}
.gb-elementor-style-map .gb-review-card__avatar::before {
	content: "תמונת כלב";
	background: #8250df;
}
.gb-elementor-style-map .gb-reviews__load::before {
	content: "כפתור טעינה · .gb-reviews__load";
	background: #1f883d;
}
.gb-elementor-style-map .gb-live-estimate[hidden],
.gb-elementor-style-map .gb-step,
.gb-elementor-style-map .gb-waitlist[hidden],
.gb-elementor-style-map .gb-waitlist form[hidden],
.gb-elementor-style-map .gb-waitlist-summary[hidden] {
	display: grid;
}
.gb-elementor-style-map .gb-step {
	margin-top: 18px;
	padding: 12px;
	border-radius: 8px;
	background: rgba(246, 248, 250, .78);
}
.gb-elementor-style-map .gb-service-list:empty,
.gb-elementor-style-map .gb-slots:empty,
.gb-elementor-style-map .gb-live-estimate__content:empty,
.gb-elementor-style-map .gb-message:empty,
.gb-elementor-style-map .gb-customer-actions__message:empty {
	min-height: 46px;
	border: 1px dashed #d0d7de;
	border-radius: 8px;
	background: rgba(240, 247, 255, .62);
}
.gb-elementor-style-map .gb-service-list:empty::after {
	content: "כאן יופיעו שירותים דינמיים";
}
.gb-elementor-style-map .gb-slots:empty::after {
	content: "כאן יופיעו סלוטים אחרי בחירת תאריך";
}
.gb-elementor-style-map .gb-live-estimate__content:empty::after {
	content: "הסיכום החי יופיע אחרי בחירת שירות";
}
.gb-elementor-style-map .gb-message:empty::after,
.gb-elementor-style-map .gb-customer-actions__message:empty::after {
	content: "כאן יופיעו הודעות הצלחה/שגיאה";
}
.gb-elementor-style-map .gb-service-list:empty::after,
.gb-elementor-style-map .gb-slots:empty::after,
.gb-elementor-style-map .gb-live-estimate__content:empty::after,
.gb-elementor-style-map .gb-message:empty::after,
.gb-elementor-style-map .gb-customer-actions__message:empty::after {
	display: grid;
	place-items: center;
	min-height: 46px;
	color: #59636e;
	font-size: 13px;
	font-weight: 700;
}
.gb-elementor-style-map .gb-choice::before {
	content: "בחירה · .gb-choice";
}
.gb-elementor-style-map .gb-question::before {
	content: "שאלה · .gb-question";
}
.gb-elementor-style-map .gb-estimate::before {
	content: "הערכה · .gb-estimate";
}
.gb-elementor-style-map .gb-notice::before {
	content: "Notice · .gb-notice";
	background: #bf8700;
}
.gb-elementor-style-map .gb-calendar-day::before {
	content: "יום · .gb-calendar-day";
	background: #0a7f5a;
}
.gb-elementor-style-map .gb-slot::before {
	content: "סלוט · .gb-slot";
	background: #bf8700;
}
.gb-elementor-style-map .gb-waitlist-summary::before {
	content: "סיכום המתנה · .gb-waitlist-summary";
	background: #8250df;
}
.gb-elementor-style-map,
.gb-elementor-style-map * {
	outline: 0 !important;
}
.gb-elementor-style-map::before,
.gb-elementor-style-map *::before,
.gb-elementor-style-map *::after {
	content: none !important;
	display: none !important;
}
@media (prefers-reduced-motion: reduce) {
	.gb-slots.is-guided,
	.gb-waitlist.is-guided,
	.gb-actions.is-guided,
	.gb-step.is-guided {
		animation: none;
		background: rgba(9, 105, 218, 0.08);
		box-shadow: 0 0 0 2px rgba(9, 105, 218, 0.18);
	}
}
@media (max-width: 560px) {
	.gb-booker {
		padding: 14px;
	}
	.gb-calendar__toolbar {
		grid-template-columns: 40px minmax(0, 1fr) 40px;
	}
	.gb-calendar__nav {
		width: 40px;
		height: 40px;
	}
	.gb-calendar__quick {
		grid-template-columns: 1fr;
	}
	.gb-calendar__weekdays,
	.gb-calendar__days {
		gap: 4px;
	}
	.gb-service-list {
		grid-template-columns: 1fr;
	}
	.gb-choice {
		min-height: auto;
		padding: 12px 14px;
	}
	.gb-choice strong,
	.gb-choice span {
		display: block;
		line-height: 1.45;
	}
	.gb-calendar-day {
		min-height: 58px;
		border-radius: 7px;
		padding: 6px 2px;
	}
	.gb-calendar-day__num {
		font-size: 16px;
	}
	.gb-calendar-day__label {
		font-size: 10px;
	}
	.gb-waitlist-custom-range {
		grid-template-columns: 1fr;
	}
	.gb-actions {
		flex-direction: column;
	}
}

/* Keep native select menus readable in Firefox without affecting the rest of the site. */
.gb-booker select {
	appearance: auto;
	background-color: #ffffff;
	color: #111827;
	direction: rtl;
	font-family: inherit;
	font-size: 16px;
	line-height: 1.4;
	min-height: 44px;
	text-align: right;
}
.gb-booker select:invalid {
	color: #6b7280;
}
.gb-booker select option {
	background-color: #ffffff;
	color: #111827;
	font-family: inherit;
	font-size: 16px;
	line-height: 1.4;
}


.gb-whatsapp-consents {
	display: grid;
	gap: 10px;
	margin-top: 14px;
	padding: 14px;
	border: 1px solid #d8dee4;
	border-radius: 10px;
	background: #f8fafc;
}
.gb-consent-field {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	font-weight: 400;
	line-height: 1.55;
}
.gb-consent-field input {
	margin-top: 4px;
	flex: 0 0 auto;
}
.gb-consent-help {
	margin: 0;
	font-size: 13px;
	color: #59636e;
}
