body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 16px;
	line-height: 1
}

img {
	max-width: 100%
}

input,
label,
select,
textarea {
	border: 0;
	font-size: 16px;
	line-height: 1.2
}

input,
textarea {
	padding: 0 2em
}

h1,
.font--medium h1 {
	font-size: 2rem;
	line-height: 1.25;
	letter-spacing: -.8px
}

.font--large h1 {
	font-size: 2.25rem
}

.font--small h1 {
	font-size: 1.75rem
}

h2,
.font--medium h2 {
	font-size: 1.625rem;
	line-height: 1.25;
	letter-spacing: -.4px
}

.font--large h2 {
	font-size: 2rem
}

.font--small h2 {
	font-size: 1.375rem
}

h3 {
	font-weight: 700;
	font-size: 1.375rem;
	line-height: 1.3;
	letter-spacing: -.2px
}

h4 {
	font-weight: 400;
	font-size: 1.15rem;
	line-height: 1.4
}

h5 {
	font-weight: 700;
	font-size: 1rem;
	line-height: 1.625
}

h6 {
	font-weight: 700;
	font-size: .8125rem;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: 1px
}

.font--large h3 {
	font-size: 1.5rem
}

.font--small h3 {
	font-size: 1.25rem
}

p,
.font--medium,
.font--medium p,
.font--medium p font {
	font-size: 16px;
	line-height: 1.625
}

.font--large,
.font--large p,
.font--large p font {
	font-size: 1.125rem;
	line-height: 1.66
}

.font--small,
.font--small p,
.font--small p font {
	font-size: 14px;
	line-height: 1.5
}

.w-button--small {
	font-size: .875rem;
	padding: 0 40px;
	height: var(--button-small-height)
}

.w-button--large {
	font-size: 1rem;
	padding: 0 48px;
	height: var(--button-large-height)
}

.font--small.w-sitetitle h2 {
	font-size: 1.125rem;
	line-height: 1;
	letter-spacing: -.6px
}

.font--medium.w-sitetitle h2 {
	font-size: 1.25rem;
	line-height: 1;
	letter-spacing: -.6px
}

.font--large.w-sitetitle h2 {
	font-size: 1.375rem
}

.w-nav li a {
	font-size: 1rem;
	line-height: 1;
	color: inherit;
	text-decoration: none
}

.font--medium ul,
.font--large ul,
.font--small ul,
.font--medium ol,
.font--large ol,
.font--small ol {
	padding: 1em 2.5em
}

.font--primary,
.font--primary span,
.font--primary a,
.font--primary p,
.font--primary h1,
.font--primary h2,
.font--primary h3,
.font--primary h4,
.font--primary h5,
.font--primary h6 {
	font-family: var(--primary-font);
	font-weight: var(--primary-font-weight, 400)
}

.font--secondary,
.font--secondary span,
.font--secondary a,
.font--secondary p,
.font--secondary h1,
.font--secondary h2,
.font--secondary h3,
.font--secondary h4,
.font--secondary h5,
.font--secondary h6 {
	font-family: var(--secondary-font);
	font-weight: var(--secondary-font-weight, 400)
}

@media (min-width: 600px) {
	.content-height--small {
		min-height: 350px !important
	}

	.content-height--medium {
		min-height: 540px !important
	}

	.content-height--large {
		min-height: 650px !important
	}

	.w-nav li a {
		font-size: .875rem
	}

	.font--small.w-sitetitle h2 {
		font-size: 1.25rem
	}

	.font--medium.w-sitetitle h2 {
		font-size: 1.5rem
	}

	.font--large.w-sitetitle h2 {
		font-size: 1.625rem
	}
}

@media (min-width: 1200px) {
	.content-height--medium {
		min-height: 560px !important
	}
}

.w-button {
	-webkit-appearance: none;
	border-radius: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: inherit;
	background: #333;
	border: none;
	box-shadow: none;
	font-family: inherit;
	line-height: 1;
	text-decoration: none;
	text-align: center;
	white-space: nowrap;
	box-sizing: border-box;
	cursor: pointer
}

.w-button,
.w-button * {
	position: relative;
	outline: none
}

.w-button[disabled] {
	cursor: default
}

.w-button .font--medium,
.w-button .font--medium p {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit
}

@media (max-width: 600px) {
	.w-button--full-width-mobile {
		min-width: 100%
	}
}

.input-group__input {
	padding: 0 16px;
	height: var(--input-height)
}

.textarea-group__textarea {
	font-size: .875rem;
	padding: 1em;
	min-height: 100px
}

.form__select {
	border-radius: 0
}

.w-label--required {
	color: var(--color-urgent);
	margin-left: .1em
}

a {
	cursor: pointer
}

.content-align--center {
	align-items: center
}

.content-align--top {
	align-items: flex-start
}

.content-align--bottom {
	align-items: flex-end
}

.carousel-item--small {
	width: var(--carousel-item-width-xs)
}

.carousel-item--medium {
	width: var(--carousel-item-width-sm)
}

.carousel-item--large {
	width: var(--carousel-item-width-md)
}

@media (min-width: 900px) {
	.carousel-item--small {
		width: var(--carousel-item-width-sm)
	}

	.carousel-item--medium {
		width: var(--carousel-item-width-md)
	}

	.carousel-item--large {
		width: var(--carousel-item-width-lg)
	}
}

.font--italic h1,
.font--italic h2,
.font--italic h3,
.font--italic h4,
.font--italic h5,
.font--italic p,
.font--italic a,
.font--italic span,
.font--italic {
	font-style: italic !important
}

.font--bold h1,
.font--bold h2,
.font--bold h3,
.font--bold h4,
.font--bold h5,
.font--bold p,
.font--bold a,
.font--bold span,
.font--bold {
	font-weight: 500 !important
}

.font--normal h1,
.font--normal h2,
.font--normal h3,
.font--normal h4,
.font--normal h5,
.font--normal p,
.font--normal a,
.font--normal span,
.font--normal {
	font-weight: 400 !important
}

.input-group__input,
.textarea-group__textarea,
.select__container select.form__select,
.form-checkbox__container .form-checkbox__input+.form-checkbox__control,
.radio-group .form-radio__container .form-radio__input-default+.form-radio__control,
.stepper-group .form-stepper,
.form-donation__control {
	border: var(--form-fields-border-width) solid var(--form-color--30);
	background-color: var(--color-white);
	color: var(--form-text-color);
	background-clip: padding-box
}

.input-group__input,
.textarea-group__textarea,
.select__container select.form__select {
	border-radius: var(--form-fields-border-radius)
}

.form-checkbox__container .form-checkbox__input+.form-checkbox__control {
	border-radius: var(--form-checkbox-border-radius);
	border: 1px solid#ddd;
}

.input-group__input::placeholder,
.textarea-group__textarea::placeholder,
.form__select::placeholder,
.form-donation__control .input-group__input::placeholder {
	color: var(--form-placeholder-color)
}

.form-option__tabbed .input-group__input:focus,
.form-option__tabbed.textarea-group .textarea-group__textarea:focus,
.form-option__tabbed .select__container select.form__select:focus,
.form-option__tabbed .form-checkbox__container .form-checkbox__input:focus+.form-checkbox__control,
.form-option__tabbed.radio-group .form-radio__container .form-radio__input-default:focus+.form-radio__control,
.form-option__tabbed.radio-group .form-radio__container .form-radio__input-color:focus+.form-radio__control::after,
.form-option__tabbed.stepper-group .form-stepper__button:focus,
.form-option__tabbed.stepper-group .form-stepper__number:focus,
.add-to-cart__submit .form-option__tabbed.w-button--primary:focus,
.add-to-cart__submit .form-option__tabbed.w-button--secondary:focus {
	transition: box-shadow var(--transition-fast)
}

.input-group__input:enabled:hover,
.input-group__input:enabled:focus,
.textarea-group .textarea-group__textarea:enabled:hover,
.textarea-group .textarea-group__textarea:enabled:focus,
.select__container select.form__select:enabled:hover,
.select__container select.form__select:enabled:focus,
.form-checkbox__container .form-checkbox__input:enabled:hover+.form-checkbox__control,
.form-checkbox__container .form-checkbox__input:enabled:focus+.form-checkbox__control,
.radio-group .form-radio__container .form-radio__input-default:enabled:hover+.form-radio__control,
.radio-group .form-radio__container .form-radio__input-default:enabled:focus+.form-radio__control,
.form-donation__input:enabled+.form-donation__control:hover,
.form-donation__input:enabled+.form-donation__control:focus {
	border-color: var(--form-color--60)
}

.input-group__input:disabled,
.textarea-group .textarea-group__textarea:disabled,
.select__container select.form__select:disabled,
.form-checkbox__container .form-checkbox__input:disabled+.form-checkbox__control,
.radio-group .form-radio__container .form-radio__input-default:disabled+.form-radio__control,
.stepper-group .form-stepper--disabled,
.form-donation__input:disabled+.form-donation__control {
	background: var(--color-gray-05);
	color: var(--form-color--40)
}

.form-checkbox__container .form-checkbox__input:disabled:checked+.form-checkbox__control,
.radio-group .form-radio__container .form-radio__input-default:disabled:checked+.form-radio__control {
	background-color: var(--form-color--40);
	border-color: var(--form-color--40)
}

.input--error,
.textarea-group .textarea-group__textarea--error,
.select__container select.form__select--error,
.checkbox-group--error .form-checkbox__input:not(:disabled)+.form-checkbox__control,
.radio-group--error .form-radio__container .form-radio__input:not(:disabled)+.form-radio__control,
.stepper-group .form-stepper--error {
	border-color: var(--color-urgent)
}

.form-donation__input:enabled+.form-donation__control:hover {
	background: var(--color-gray-05)
}

.select__container select.form__select:enabled:hover {
	background: var(--color-gray-05)
}

.select__container select.form__select:enabled:focus {
	background: var(--color-gray-10)
}

.select__container.select__container--disabled {
	border-color: var(--form-color--50)
}

.select__container select.form__select.form__select--empty {
	color: var(--form-placeholder-color)
}

.form-checkbox__container .form-checkbox__input+.form-checkbox__control::after {
	border-color: var(--primary-button-text-color)
}

.form-checkbox__container .form-checkbox__input:checked+.form-checkbox__control,
.radio-group .form-radio__container .form-radio__input-default:checked+.form-radio__control {
	background-color: #656666;
	border-color: #656666
}

.radio-group .form-radio__container .form-radio__input-default+.form-radio__control::after {
	background-color: var(--form-inner-icon-color)
}

.radio-group .radio__selected-color-name {
	color: var(--form-color--80)
}

.radio-group .form-radio__container .form-radio__input-color:not(:disabled)+.form-radio__control::after {
	border-color: var(--form-color--20)
}

.radio-group .form-radio__container .form-radio__input-color:not(:disabled):hover+.form-radio__control::after {
	border-color: var(--form-color--60)
}

.radio-group .form-radio__container .form-radio__input-color:checked+.form-radio__control::before {
	border-color: var(--form-color--30)
}

.radio-group .form-radio__container .form-radio__input-color+.form-radio__control .form-radio__slash {
	border-color: var(--form-color--30)
}

.radio-group .form-radio__container .form-radio__input-color+.form-radio__control .form-radio__slash.form-radio__slash-dark {
	border-color: var(--light-text-color--60)
}

.stepper-group .form-stepper {
	border-radius: var(--form-stepper-border-radius)
}

.stepper-group .stepper__container .form-stepper__number {
	color: var(--form-text-color)
}

.stepper-group .stepper__container .form-stepper__button-minus::after,
.stepper-group .stepper__container .form-stepper__button-plus::before,
.stepper-group .stepper__container .form-stepper__button-plus::after {
	background-color: var(--color-gray-30)
}

.stepper-group .stepper__container .form-stepper__button:enabled:hover::after,
.stepper-group .stepper__container .form-stepper__button:enabled:hover::before {
	background-color: var(--color-gray-60)
}

.stepper-group .form-stepper--disabled .form-stepper__number {
	color: inherit
}

:lang(ja) {
	font-style: normal !important
}

body {
	font-family: var(--body-font);
	font-weight: var(--body-font-weight, 400);
	background: var(--body-background-color)
}

h1 {
	font-family: var(--headline-font);
	font-weight: var(--headline-font-weight, 500);
	color: inherit
}

h2 {
	font-family: var(--section-title-font);
	font-weight: var(--section-title-font-weight, 500);
	color: inherit
}

h3 {
	font-family: var(--section-callout-font);
	font-weight: var(--section-callout-font-weight, 400);
	color: inherit
}

h4 {
	font-family: var(--primary-font);
	font-weight: var(--primary-font-weight, 400);
	color: inherit
}

h5 {
	font-weight: var(--primary-font-weight, 500);
	color: inherit
}

h6 {
	font-family: var(--attribution-font);
	font-weight: var(--attribution-weight, 600);
	color: inherit
}

.w-sitetitle h2 {
	font-family: var(--site-title-font);
	font-weight: var(--site-title-font-weight, 600);
	color: inherit
}

.w-button {
	font-family: var(--button-font, var(--body-font));
	font-weight: var(--button-font-weight, 600)
}

.w-nav {
	font-family: var(--navigation-font);
	font-weight: var(--navigation-font-weight, 500)
}

.font--product-price,
.font--product-price span,
.font--product-price a,
.font--product-price p,
.font--product-price h1,
.font--product-price h2,
.font--product-price h3,
.font--product-price h4,
.font--product-price h5,
.font--product-price h6 {
	font-family: var(--product-price-font);
	font-weight: var(--product-price-font-weight, 400)
}

body,
.w-background-light,
.w-background-dark {
	color: var(--text-color)
}

.w-background-light .font--small a,
.w-background-light .font--medium a,
.w-background-light .font--large a {
	color: var(--primary-color)
}

.w-background-dark .font--small a,
.w-background-dark .font--medium a,
.w-background-dark .font--large a {
	color: inherit
}

.font--small span a,
.font--medium span a,
.font--large span a {
	color: inherit !important
}

.w-background-light .link--browser a,
.w-background-dark .link--browser a,
.link--browser span,
.link--browser p a {
	color: var(--color-link-color)
}

.w-background-light .link--browser a,
.w-background-dark .link--browser a,
.link--browser span a,
.link--browser p a {
	text-decoration: none
}

.w-background-light .link--browser a:hover,
.w-background-dark .link--browser a:hover,
.link--browser span a:hover,
.link--browser p a:hover {
	opacity: 1;
	text-decoration: underline
}

.nav-icon {
	--icon-fill: var(--text-color)
}

.w-background-light .w-nav li,
.w-background-dark .w-nav li,
.nav__subnav>.w-background-light li.nav__item,
.nav__subnav>.w-background-dark li.nav__item {
	color: var(--nav-color-link)
}

.w-background-light .w-nav li a,
.w-background-dark .w-nav li a,
.nav__subnav>.w-background-light li.nav__item a,
.nav__subnav>.w-background-dark li.nav__item a {
	color: inherit
}

.nav--desktop li a:hover,
.w-nav li a.router-link-exact-active {
	transition: color var(--transition-fast);
	color: var(--text-color)
}

.nav--desktop li a {
	position: relative;
	display: inline-block
}

.nav--desktop li a::after {
	content: "";
	display: block;
	height: 0;
	border-bottom: 2px solid var(--text-color);
	opacity: 1;
	top: 2px;
	left: 0;
	position: relative;
	transform: scaleY(0.8) scaleX(0) translateZ(0);
	transition: transform 200ms ease-in-out;
	transform-origin: top left
}

.nav--desktop li a:hover::after {
	transform: scaleY(0.8) scaleX(1) translateZ(0);
	transition: transform 200ms ease-in-out 50ms
}

.nav--desktop li.font--small a,
.nav--desktop li.font--medium a,
.nav--desktop li.font--large a {
	font-size: inherit
}

.font--small a:hover,
.font--medium a:hover,
.font--large a:hover {
	transition: opacity var(--transition-fast);
	opacity: .4
}

.nav-icon:hover {
	opacity: .4;
	transition: opacity var(--transition-fast)
}

.hover-fade-80 {
	cursor: pointer;
	transition: opacity 200ms ease-in-out
}

.hover-fade-80:hover {
	opacity: .8
}

.w-button,
.w-button * {
	transition: all var(--transition-fast)
}

.w-button:enabled:focus p {
	opacity: .8
}

.w-button--primary {
	background-color: var(--primary-button-color);
	color: var(--primary-button-text-color);
	overflow: hidden
}

.w-button--primary.w-button--dark {
	color: var(--light-text-color)
}

.w-button--primary:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0
}

.w-button--primary:enabled:hover:before {
	background-color: var(--color-black-alpha-05)
}

.w-button--primary.w-button--dark:enabled:hover:before {
	background-color: var(--color-white-alpha-10)
}

.w-button--primary:enabled:focus:before {
	background-color: var(--color-black-alpha-10)
}

.w-button--primary.w-button--dark:enabled:focus:before {
	background-color: var(--color-white-alpha-10)
}

.w-button--primary:disabled {
	opacity: .3
}

.w-button--secondary {
	background-color: transparent;
	color: var(--secondary-button-color);
	border: 1px solid var(--secondary-button-color)
}

.w-button--secondary:hover {
	background-color: var(--color-white-alpha-10)
}

.w-button--secondary.w-button--dark:enabled:hover {
	background-color: var(--color-black-alpha-10)
}

.w-button--secondary:focus {
	background-color: var(--color-white-alpha-20)
}

.w-button--secondary.w-button--dark:enabled:focus {
	background-color: var(--color-black-alpha-20)
}

.w-button--secondary:disabled {
	opacity: .6
}

.w-button--text {
	background: none;
	height: auto;
	padding: 0;
	color: var(--primary-button-color)
}

.w-button--text p {
	font-size: inherit
}

.add-to-cart__submit .w-button--primary:focus,
.add-to-cart__submit .w-button--secondary:focus {
	box-shadow: none
}

.checkbox-group {
	border: 0;
	padding: 0
}

.form-checkbox__container {
	display: inline-flex;
	cursor: pointer
}

.form-checkbox__control {
	width: 20px;
	height: 20px;
	transition: .2s ease;
	border-radius: 2px;
	box-sizing: border-box;
	user-select: none;
	position: relative;
	border: 1px solid var(--color-black)
}

.checkbox-group__legend {
	margin-bottom: 8px;
	padding: 0
}

.form-checkbox {
	display: flex;
	align-items: center;
	margin-bottom: 8px;
	position: relative
}

.form-checkbox:last-child {
	margin-bottom: 0
}

.form-checkbox__label {
	display: inline-flex;
	margin-left: 8px;
	cursor: pointer
}

.form-checkbox--disabled .form-checkbox__label {
	opacity: .3
}

.form-checkbox__input {
	width: 20px;
	height: 20px;
	/*position:absolute;*/
	z-index: var(--z-index-block-element);
	opacity: 0.6;
	align-items: start;
	cursor: pointer;
	z-index: 1;
	margin-top: 0 !important;
}

.form-checkbox__control::after {
	content: "";
	display: none;
	border-style: solid;
	border-color: var(--color-white);
	border-width: 0 2px 2px 0;
	width: 5px;
	height: 8px;
	transform: rotate(45deg);
	position: absolute;
	top: 4px;
	left: 7px;
	opacity: 0;
	transition: opacity var(--transition-fast)
}

.form-checkbox__input:checked+.form-checkbox__control::after {
	opacity: 1;
	display: block;
	color: #fff;
}

.radio-group {
	border: 0;
	margin-bottom: -8px
}

.form-radio__container {
	display: inline-flex;
	cursor: pointer
}

.radio-group__legend {
	margin-bottom: 4px;
	padding-left: 0
}

.radio__selected-color-name {
	font-size: 14px;
	font-style: italic;
	display: inline-block
}

.form-radio__input {
	padding: 0;
	position: absolute;
	opacity: 0;
	align-items: center;
	cursor: pointer
}

.form-radio__input,
.form-radio__control {
	width: var(--radio-outer-size);
	height: var(--radio-outer-size)
}

.form-radio__control {
	transition: .2s ease;
	border-radius: 100%;
	box-sizing: border-box;
	user-select: none;
	cursor: pointer
}

.form-radio__label {
	display: inline-flex;
	margin-left: 8px;
	cursor: pointer
}

.form-radio {
	display: flex;
	align-items: center;
	margin-bottom: 8px
}

.form-radio--disabled .form-radio__label {
	opacity: .3
}

.form-radio__input+.form-radio__control::after {
	content: "";
	display: block;
	position: relative;
	border-radius: 100%;
	opacity: 0;
	transition: opacity var(--transition-fast)
}

.form-radio__input:checked+.form-radio__control::after {
	opacity: 1
}

.form-radio__input-default+.form-radio__control {
	border: 1px solid var(--color-black);
	display: flex;
	justify-content: center;
	align-items: center
}

.form-radio--color {
	display: inline-block;
	padding: var(--color-swatch-inner-spacing);
	margin-right: 8px
}

.form-radio--color .form-radio__input,
.form-radio--color .form-radio__control {
	width: var(--color-swatch-size);
	height: var(--color-swatch-size)
}

.form-radio--color .form-radio__control {
	box-sizing: initial;
	cursor: pointer;
	position: relative
}

.form-radio__control-color::before {
	content: "";
	display: block;
	position: absolute;
	border-radius: 100%;
	width: calc(100% + (var(--color-swatch-inner-spacing) * 2));
	height: calc(100% + (var(--color-swatch-inner-spacing) * 2));
	left: calc((var(--color-swatch-inner-spacing) * -1) - 1px);
	top: calc((var(--color-swatch-inner-spacing) * -1) - 1px);
	border: var(--color-swatch-outer-border-width) solid transparent;
	transition: border var(--transition-fast)
}

.form-radio__input-default+.form-radio__control::after {
	width: var(--radio-inner-size);
	height: var(--radio-inner-size)
}

.form-radio__input-color+.form-radio__control::after {
	width: 100%;
	height: 100%;
	opacity: 1;
	border: var(--color-swatch-inner-border-width) solid var(--form-color--20);
	left: calc((var(--color-swatch-inner-border-width) * -1));
	top: calc((var(--color-swatch-inner-border-width) * -1));
	transition: border var(--transition-fast)
}

.form-radio--color .form-radio__slash {
	content: "";
	display: block;
	border-style: solid;
	border-width: 0 0 1px;
	width: var(--color-swatch-size);
	height: 1px;
	transform: rotate(-45deg);
	position: absolute;
	top: calc(var(--color-swatch-size) / 2);
	opacity: 0;
	transition: opacity var(--transition-fast)
}

.form-radio__input-color:disabled+.form-radio__control .form-radio__slash {
	opacity: 1
}

.form-radio--aligned-top {
	align-items: flex-start
}

.select__container {
	position: relative;
	width: 100%
}

.form__select {
	padding: 0 40px 0 16px;
	width: 100%;
	font-size: 14px;
	height: var(--select-height)
}

.form__select:enabled {
	cursor: pointer
}

@media (max-width: 900px) {
	.form__select {
		font-size: 16px
	}
}

.select__label {
	padding-bottom: 4px
}

.select__container::after {
	width: 0;
	height: 0;
	display: inline-block;
	content: "";
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 6px solid var(--form-text-color);
	position: absolute;
	top: calc(50% - 3px);
	right: 16px;
	cursor: pointer;
	pointer-events: none
}

.textarea-group__textarea--fixed {
	resize: none
}

.textarea-group,
.textarea-group__textarea {
	width: 100%
}

@media (max-width: 900px) {
	.textarea-group__textarea {
		font-size: 16px
	}
}

.textarea-group__label {
	margin-bottom: 4px
}

.data-descriptive-icon {
	width: 16px;
	height: 16px;
	margin-top: 5px;
	margin-right: 16px;
	display: block;
	position: absolute
}

.data-descriptive-icon+* {
	display: block;
	margin-left: 32px
}

.data-descriptive-icon--24 {
	margin-top: 0;
	width: 24px;
	height: 24px
}

.data-descriptive-icon--24+* {
	display: block;
	margin-left: 40px
}

.obs-icon--envelope-stroked {
	background: url(/appointments/assets/obs/envelope-stroked.svg)
}

.obs-icon--globe {
	background: url(/appointments/assets/obs/globe.svg)
}

.obs-icon--social-instagram {
	background: url(/appointments/assets/obs/social-instagram.svg)
}

.obs-icon--location-stroked {
	background: url(/appointments/assets/obs/location-stroked.svg)
}

.obs-icon--mobile {
	background: url(/appointments/assets/obs/mobile.svg)
}

.obs-icon--social-facebook {
	background: url(/appointments/assets/obs/social-facebook.svg)
}

.obs-icon--social-twitter {
	background: url(/appointments/assets/obs/social-twitter.svg)
}

.obs-icon--time {
	background: url(/appointments/assets/obs/time.svg)
}

.obs-icon--item-services {
	background: url(/appointments/assets/obs/item-services.svg)
}

.obs-icon--profile {
	background: url(/appointments/assets/obs/profile.svg)
}

.obs-icon--lock-closed-filled {
	background: url(/appointments/assets/obs/lock-closed-filled.svg)
}

.obs-icon--alert-triangle-filled {
	background: url(/appointments/assets/obs/alert-triangle-filled.svg)
}

.obs-icon--info--24 {
	background: url(/appointments/assets/obs/info--24.svg)
}

.color--full-black {
	color: var(--color-black)
}

.color--green {
	color: #00b23b
}

.color--red {
	color: #cc0023
}

.giftcard-widget {
	min-width: 240px;
	border: 1px solid #d9d9d9;
	background: #f7f7f7;
	padding: 40px;
	border-radius: 3px;
	display: flex;
	flex-direction: column;
	margin: 24px 0;
	text-align: left
}

.giftcard-widget h4 {
	font-weight: 500
}

.giftcard-widget__content {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: column;
	align-items: center
}

.giftcard-widget__image {
	max-height: 170px;
	border-radius: 16px;
	box-shadow: 1px 1px 12px rgba(0, 0, 0, 0.2);
	background-size: cover
}

.giftcard-widget__body {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 187px;
	max-width: 360px;
	font-weight: 500;
	text-align: center
}

.giftcard-widget__body__content {
	font-size: 16px;
	line-height: 24px;
	color: #151c1f;
	margin-bottom: 31px;
	padding-top: 31px
}

.giftcard__cta {
	background-color: #576475;
	padding: 10px 50px;
	border-radius: 4px;
	font-size: 14px;
	line-height: 21px;
	border-width: 0;
	color: #fff;
	text-decoration: none
}

.m-top--4 {
	margin-top: 4px
}

@media (max-width: 599.98px) {
	.m-top--4--xs-only {
		margin-top: 4px
	}
}

@media (min-width: 600px) {
	.m-top--4--sm {
		margin-top: 4px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--4--sm-only {
		margin-top: 4px
	}
}

@media (min-width: 900px) {
	.m-top--4--md {
		margin-top: 4px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--4--md-only {
		margin-top: 4px
	}
}

@media (min-width: 1200px) {
	.m-top--4--lg {
		margin-top: 4px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--4--lg-only {
		margin-top: 4px
	}
}

@media (min-width: 1600px) {
	.m-top--4--xl {
		margin-top: 4px
	}
}

.m-bottom--4 {
	margin-bottom: 4px
}

@media (max-width: 599.98px) {
	.m-bottom--4--xs-only {
		margin-bottom: 4px
	}
}

@media (min-width: 600px) {
	.m-bottom--4--sm {
		margin-bottom: 4px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--4--sm-only {
		margin-bottom: 4px
	}
}

@media (min-width: 900px) {
	.m-bottom--4--md {
		margin-bottom: 4px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--4--md-only {
		margin-bottom: 4px
	}
}

@media (min-width: 1200px) {
	.m-bottom--4--lg {
		margin-bottom: 4px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--4--lg-only {
		margin-bottom: 4px
	}
}

@media (min-width: 1600px) {
	.m-bottom--4--xl {
		margin-bottom: 4px
	}
}

.m-top--8 {
	margin-top: 8px
}

@media (max-width: 599.98px) {
	.m-top--8--xs-only {
		margin-top: 8px
	}
}

@media (min-width: 600px) {
	.m-top--8--sm {
		margin-top: 8px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--8--sm-only {
		margin-top: 8px
	}
}

@media (min-width: 900px) {
	.m-top--8--md {
		margin-top: 8px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--8--md-only {
		margin-top: 8px
	}
}

@media (min-width: 1200px) {
	.m-top--8--lg {
		margin-top: 8px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--8--lg-only {
		margin-top: 8px
	}
}

@media (min-width: 1600px) {
	.m-top--8--xl {
		margin-top: 8px
	}
}

.m-bottom--8 {
	margin-bottom: 8px
}

@media (max-width: 599.98px) {
	.m-bottom--8--xs-only {
		margin-bottom: 8px
	}
}

@media (min-width: 600px) {
	.m-bottom--8--sm {
		margin-bottom: 8px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--8--sm-only {
		margin-bottom: 8px
	}
}

@media (min-width: 900px) {
	.m-bottom--8--md {
		margin-bottom: 8px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--8--md-only {
		margin-bottom: 8px
	}
}

@media (min-width: 1200px) {
	.m-bottom--8--lg {
		margin-bottom: 8px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--8--lg-only {
		margin-bottom: 8px
	}
}

@media (min-width: 1600px) {
	.m-bottom--8--xl {
		margin-bottom: 8px
	}
}

.m-top--12 {
	margin-top: 12px
}

@media (max-width: 599.98px) {
	.m-top--12--xs-only {
		margin-top: 12px
	}
}

@media (min-width: 600px) {
	.m-top--12--sm {
		margin-top: 12px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--12--sm-only {
		margin-top: 12px
	}
}

@media (min-width: 900px) {
	.m-top--12--md {
		margin-top: 12px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--12--md-only {
		margin-top: 12px
	}
}

@media (min-width: 1200px) {
	.m-top--12--lg {
		margin-top: 12px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--12--lg-only {
		margin-top: 12px
	}
}

@media (min-width: 1600px) {
	.m-top--12--xl {
		margin-top: 12px
	}
}

.m-bottom--12 {
	margin-bottom: 12px
}

@media (max-width: 599.98px) {
	.m-bottom--12--xs-only {
		margin-bottom: 12px
	}
}

@media (min-width: 600px) {
	.m-bottom--12--sm {
		margin-bottom: 12px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--12--sm-only {
		margin-bottom: 12px
	}
}

@media (min-width: 900px) {
	.m-bottom--12--md {
		margin-bottom: 12px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--12--md-only {
		margin-bottom: 12px
	}
}

@media (min-width: 1200px) {
	.m-bottom--12--lg {
		margin-bottom: 12px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--12--lg-only {
		margin-bottom: 12px
	}
}

@media (min-width: 1600px) {
	.m-bottom--12--xl {
		margin-bottom: 12px
	}
}

.m-top--16 {
	margin-top: 16px
}

@media (max-width: 599.98px) {
	.m-top--16--xs-only {
		margin-top: 16px
	}
}

@media (min-width: 600px) {
	.m-top--16--sm {
		margin-top: 16px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--16--sm-only {
		margin-top: 16px
	}
}

@media (min-width: 900px) {
	.m-top--16--md {
		margin-top: 16px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--16--md-only {
		margin-top: 16px
	}
}

@media (min-width: 1200px) {
	.m-top--16--lg {
		margin-top: 16px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--16--lg-only {
		margin-top: 16px
	}
}

@media (min-width: 1600px) {
	.m-top--16--xl {
		margin-top: 16px
	}
}

.m-bottom--16 {
	margin-bottom: 16px
}

@media (max-width: 599.98px) {
	.m-bottom--16--xs-only {
		margin-bottom: 16px
	}
}

@media (min-width: 600px) {
	.m-bottom--16--sm {
		margin-bottom: 16px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--16--sm-only {
		margin-bottom: 16px
	}
}

@media (min-width: 900px) {
	.m-bottom--16--md {
		margin-bottom: 16px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--16--md-only {
		margin-bottom: 16px
	}
}

@media (min-width: 1200px) {
	.m-bottom--16--lg {
		margin-bottom: 16px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--16--lg-only {
		margin-bottom: 16px
	}
}

@media (min-width: 1600px) {
	.m-bottom--16--xl {
		margin-bottom: 16px
	}
}

.m-top--24 {
	margin-top: 24px
}

@media (max-width: 599.98px) {
	.m-top--24--xs-only {
		margin-top: 24px
	}
}

@media (min-width: 600px) {
	.m-top--24--sm {
		margin-top: 24px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--24--sm-only {
		margin-top: 24px
	}
}

@media (min-width: 900px) {
	.m-top--24--md {
		margin-top: 24px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--24--md-only {
		margin-top: 24px
	}
}

@media (min-width: 1200px) {
	.m-top--24--lg {
		margin-top: 24px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--24--lg-only {
		margin-top: 24px
	}
}

@media (min-width: 1600px) {
	.m-top--24--xl {
		margin-top: 24px
	}
}

.m-bottom--24 {
	margin-bottom: 24px
}

@media (max-width: 599.98px) {
	.m-bottom--24--xs-only {
		margin-bottom: 24px
	}
}

@media (min-width: 600px) {
	.m-bottom--24--sm {
		margin-bottom: 24px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--24--sm-only {
		margin-bottom: 24px
	}
}

@media (min-width: 900px) {
	.m-bottom--24--md {
		margin-bottom: 24px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--24--md-only {
		margin-bottom: 24px
	}
}

@media (min-width: 1200px) {
	.m-bottom--24--lg {
		margin-bottom: 24px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--24--lg-only {
		margin-bottom: 24px
	}
}

@media (min-width: 1600px) {
	.m-bottom--24--xl {
		margin-bottom: 24px
	}
}

.m-top--32 {
	margin-top: 32px
}

@media (max-width: 599.98px) {
	.m-top--32--xs-only {
		margin-top: 32px
	}
}

@media (min-width: 600px) {
	.m-top--32--sm {
		margin-top: 32px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--32--sm-only {
		margin-top: 32px
	}
}

@media (min-width: 900px) {
	.m-top--32--md {
		margin-top: 32px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--32--md-only {
		margin-top: 32px
	}
}

@media (min-width: 1200px) {
	.m-top--32--lg {
		margin-top: 32px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--32--lg-only {
		margin-top: 32px
	}
}

@media (min-width: 1600px) {
	.m-top--32--xl {
		margin-top: 32px
	}
}

.m-bottom--32 {
	margin-bottom: 32px
}

@media (max-width: 599.98px) {
	.m-bottom--32--xs-only {
		margin-bottom: 32px
	}
}

@media (min-width: 600px) {
	.m-bottom--32--sm {
		margin-bottom: 32px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--32--sm-only {
		margin-bottom: 32px
	}
}

@media (min-width: 900px) {
	.m-bottom--32--md {
		margin-bottom: 32px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--32--md-only {
		margin-bottom: 32px
	}
}

@media (min-width: 1200px) {
	.m-bottom--32--lg {
		margin-bottom: 32px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--32--lg-only {
		margin-bottom: 32px
	}
}

@media (min-width: 1600px) {
	.m-bottom--32--xl {
		margin-bottom: 32px
	}
}

.m-top--48 {
	margin-top: 48px
}

@media (max-width: 599.98px) {
	.m-top--48--xs-only {
		margin-top: 48px
	}
}

@media (min-width: 600px) {
	.m-top--48--sm {
		margin-top: 48px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--48--sm-only {
		margin-top: 48px
	}
}

@media (min-width: 900px) {
	.m-top--48--md {
		margin-top: 48px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--48--md-only {
		margin-top: 48px
	}
}

@media (min-width: 1200px) {
	.m-top--48--lg {
		margin-top: 48px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--48--lg-only {
		margin-top: 48px
	}
}

@media (min-width: 1600px) {
	.m-top--48--xl {
		margin-top: 48px
	}
}

.m-bottom--48 {
	margin-bottom: 48px
}

@media (max-width: 599.98px) {
	.m-bottom--48--xs-only {
		margin-bottom: 48px
	}
}

@media (min-width: 600px) {
	.m-bottom--48--sm {
		margin-bottom: 48px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--48--sm-only {
		margin-bottom: 48px
	}
}

@media (min-width: 900px) {
	.m-bottom--48--md {
		margin-bottom: 48px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--48--md-only {
		margin-bottom: 48px
	}
}

@media (min-width: 1200px) {
	.m-bottom--48--lg {
		margin-bottom: 48px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--48--lg-only {
		margin-bottom: 48px
	}
}

@media (min-width: 1600px) {
	.m-bottom--48--xl {
		margin-bottom: 48px
	}
}

.m-top--64 {
	margin-top: 64px
}

@media (max-width: 599.98px) {
	.m-top--64--xs-only {
		margin-top: 64px
	}
}

@media (min-width: 600px) {
	.m-top--64--sm {
		margin-top: 64px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--64--sm-only {
		margin-top: 64px
	}
}

@media (min-width: 900px) {
	.m-top--64--md {
		margin-top: 64px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--64--md-only {
		margin-top: 64px
	}
}

@media (min-width: 1200px) {
	.m-top--64--lg {
		margin-top: 64px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--64--lg-only {
		margin-top: 64px
	}
}

@media (min-width: 1600px) {
	.m-top--64--xl {
		margin-top: 64px
	}
}

.m-bottom--64 {
	margin-bottom: 64px
}

@media (max-width: 599.98px) {
	.m-bottom--64--xs-only {
		margin-bottom: 64px
	}
}

@media (min-width: 600px) {
	.m-bottom--64--sm {
		margin-bottom: 64px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--64--sm-only {
		margin-bottom: 64px
	}
}

@media (min-width: 900px) {
	.m-bottom--64--md {
		margin-bottom: 64px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--64--md-only {
		margin-bottom: 64px
	}
}

@media (min-width: 1200px) {
	.m-bottom--64--lg {
		margin-bottom: 64px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--64--lg-only {
		margin-bottom: 64px
	}
}

@media (min-width: 1600px) {
	.m-bottom--64--xl {
		margin-bottom: 64px
	}
}

.m-top--80 {
	margin-top: 80px
}

@media (max-width: 599.98px) {
	.m-top--80--xs-only {
		margin-top: 80px
	}
}

@media (min-width: 600px) {
	.m-top--80--sm {
		margin-top: 80px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--80--sm-only {
		margin-top: 80px
	}
}

@media (min-width: 900px) {
	.m-top--80--md {
		margin-top: 80px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--80--md-only {
		margin-top: 80px
	}
}

@media (min-width: 1200px) {
	.m-top--80--lg {
		margin-top: 80px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--80--lg-only {
		margin-top: 80px
	}
}

@media (min-width: 1600px) {
	.m-top--80--xl {
		margin-top: 80px
	}
}

.m-bottom--80 {
	margin-bottom: 80px
}

@media (max-width: 599.98px) {
	.m-bottom--80--xs-only {
		margin-bottom: 80px
	}
}

@media (min-width: 600px) {
	.m-bottom--80--sm {
		margin-bottom: 80px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--80--sm-only {
		margin-bottom: 80px
	}
}

@media (min-width: 900px) {
	.m-bottom--80--md {
		margin-bottom: 80px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--80--md-only {
		margin-bottom: 80px
	}
}

@media (min-width: 1200px) {
	.m-bottom--80--lg {
		margin-bottom: 80px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--80--lg-only {
		margin-bottom: 80px
	}
}

@media (min-width: 1600px) {
	.m-bottom--80--xl {
		margin-bottom: 80px
	}
}

.m-top--96 {
	margin-top: 96px
}

@media (max-width: 599.98px) {
	.m-top--96--xs-only {
		margin-top: 96px
	}
}

@media (min-width: 600px) {
	.m-top--96--sm {
		margin-top: 96px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-top--96--sm-only {
		margin-top: 96px
	}
}

@media (min-width: 900px) {
	.m-top--96--md {
		margin-top: 96px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-top--96--md-only {
		margin-top: 96px
	}
}

@media (min-width: 1200px) {
	.m-top--96--lg {
		margin-top: 96px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-top--96--lg-only {
		margin-top: 96px
	}
}

@media (min-width: 1600px) {
	.m-top--96--xl {
		margin-top: 96px
	}
}

.m-bottom--96 {
	margin-bottom: 96px
}

@media (max-width: 599.98px) {
	.m-bottom--96--xs-only {
		margin-bottom: 96px
	}
}

@media (min-width: 600px) {
	.m-bottom--96--sm {
		margin-bottom: 96px
	}
}

@media (min-width: 600px) and (max-width: 899.98px) {
	.m-bottom--96--sm-only {
		margin-bottom: 96px
	}
}

@media (min-width: 900px) {
	.m-bottom--96--md {
		margin-bottom: 96px
	}
}

@media (min-width: 900px) and (max-width: 1199.98px) {
	.m-bottom--96--md-only {
		margin-bottom: 96px
	}
}

@media (min-width: 1200px) {
	.m-bottom--96--lg {
		margin-bottom: 96px
	}
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
	.m-bottom--96--lg-only {
		margin-bottom: 96px
	}
}

@media (min-width: 1600px) {
	.m-bottom--96--xl {
		margin-bottom: 96px
	}
}

.w-button--rounded {
	border-radius: 4px
}

.w-button--pill {
	border-radius: 28px
}

.tab {
	color: var(--color-black-alpha-60)
}

.tab:hover,
.tab:active,
.tab:focus {
	color: var(--color-link-color)
}

.tab--active {
	color: var(--color-link-color)
}

.tab-content--inactive {
	display: none
}

.tab-content--active {
	display: inherit
}

.widget-header {
	position: fixed;
	width: 100%;
	z-index: 1
}

.widget-bar {
	padding: 16px var(--gutter-column-xs);
	background: #fff;
	display: flex;
	flex-direction: column;
	justify-content: space-between
}

@media (min-width: 600px) {
	.widget-bar {
		padding: 16px 40px;
		border-bottom: 1px solid var(--color-black-alpha-10)
	}
}

.widget-bar .widget-bar__main-content {
	display: flex
}

.widget-bar .widget-bar__title-section a {
	text-decoration: none
}

.widget-bar .widget-bar__title-section .merchant-header {
	display: flex;
	align-items: center
}

.widget-bar .widget-bar__title-section .merchant-header .item-image-holder {
	height: 36px;
	width: 36px
}

.widget-bar .widget-bar__title-section .merchant-header .item-image-holder p {
	line-height: 36px
}

.widget-bar .widget-bar__title-section .merchant-header .item-image-holder .item-image {
	height: 36px;
	width: 36px;
	background-size: 36px 36px
}

.widget-bar .widget-bar__change-location-section {
	align-items: center;
	display: flex;
	text-align: left;
	margin-left: 8px;
	min-height: 36px
}

.widget-bar .widget-bar__menu-section {
	align-items: center;
	display: flex;
	text-align: right;
	margin-left: auto;
	min-height: 36px
}

.widget-bar .widget-bar__menu-section .widget-bar__menu {
	display: flex
}

.widget-bar .widget-bar__menu-section .widget-bar__menu h5 {
	font-size: 1rem;
	margin-left: 16px
}

.widget-bar__menu-actions {
	display: flex
}

.merchant-header__unit-name {
	display: none;
	font-size: 1rem
}

@media (min-width: 600px) {
	.merchant-header__unit-name {
		display: block
	}
}

.merchant-header__unit-title {
	margin-left: 16px
}

.merchant-header__unit-separator {
	margin-right: 8px
}

.sidebar .company-intro,
.sidebar .company-location-hours,
.sidebar .company-connect {
	overflow-wrap: break-word;
	clear: both
}

.sidebar .company-name,
.sidebar .company-location {
	text-align: center
}

.sidebar .item-image-holder {
	margin-left: auto;
	margin-right: auto
}

.sidebar .company-open-hours p {
	line-height: 1.3125;
	display: inline
}

.sidebar .company-open-hours .data-descriptive-icon {
	margin-top: 2px
}

.sidebar .open-hours-table {
	margin-top: 0;
	color: #737373;
	line-height: 1.3125
}

.sidebar .open-hours-table dt,
.sidebar .open-hours-table dd {
	margin-bottom: 8px
}

.sidebar .open-hours-table dt:last-child,
.sidebar .open-hours-table dd:last-child {
	margin-bottom: 0
}

.sidebar .open-hours-table dt {
	float: left;
	clear: both;
	width: 48px
}

.sidebar .open-hours-table dd {
	display: block;
	margin-left: 48px
}

.sidebar .company-contact-info a {
	margin-bottom: 16px
}

.sidebar .company-contact-info .data-descriptive-icon {
	margin-top: 0
}

.sidebar .w-button {
	width: 100%
}

.sidebar:after {
	content: "";
	display: block;
	width: 100vw;
	height: 1px;
	background: #e1e1e1;
	position: absolute;
	bottom: 0;
	left: calc(var(--gutter-column-xs) / -2)
}

@media (min-width: 900px) {
	.sidebar {
		padding-right: 43px
	}

	.sidebar:after {
		display: none
	}
}

.flash-message {
	display: none
}

.flash-message a {
	font-weight: 600
}

.flash-message--is-visible {
	display: block
}

.flash-message--is-error {
	color: #cc0023
}

.flash-message--is-error .flash-message__body:before {
	background: url(/appointments/assets/obs/alert-triangle-filled-518fe3c21f3aeea392b29f229f3d71bae5e9fead1fd808729ecdedc3e4b7aa20.svg);
	width: 16px;
	height: 16px;
	content: "";
	vertical-align: bottom;
	display: inline-block;
	margin-right: 16px
}

.widget-toolbar-container {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	padding: 16px 24px;
	border-top: 1px solid var(--color-black-alpha-10);
	z-index: 99;
	background: var(--color-white)
}

.widget-toolbar-container .widget-toolbar-container__actions {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	width: 100%
}

.widget-toolbar-container .widget-toolbar-container__actions .continue_btn,
.widget-toolbar-container .widget-toolbar-container__actions .show_service_button {
	border-radius: 48px;
	padding: 9px 23px;
	font-size: 16px;
	margin: 0;
	border: none;
	height: 50px;
	background: #000;
	color: #fff
}

.widget-toolbar-container .widget-toolbar-container__actions .continue_btn:hover,
.widget-toolbar-container .widget-toolbar-container__actions .continue_btn:focus,
.widget-toolbar-container .widget-toolbar-container__actions .show_service_button:hover,
.widget-toolbar-container .widget-toolbar-container__actions .show_service_button:focus {
	background: #666;
	color: #fff
}

.widget-toolbar-container .widget-toolbar-container__actions .widget-toolbar-container__button+.widget-toolbar-container__button {
	margin-left: 24px
}

.widget-toolbar-container .widget-toolbar-container__actions .widget-toolbar-container__button--previous {
	margin-right: auto;
	margin-left: none
}

.widget-toolbar-container .widget-toolbar-container__actions .widget-toolbar-container__button--continue {
	margin-left: auto
}

.widget-toolbar-container .widget-toolbar-container__actions .widget-toolbar-container__button--cookie-preferences,
.widget-toolbar-container .widget-toolbar-container__actions .widget-toolbar-container__anchor--cookie-policy {
	font-size: 14px;
	font-weight: var(--primary-font-weight);
	border: none
}

@media (min-width: 600px) {
	.widget-toolbar-container {
		display: flex;
		padding: 14px 40px
	}
}

.multipass-mimic__overlay {
	background-color: #f7f7f7;
	z-index: 2000;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: fixed;
	display: block
}

.multipass-mimic__body {
	border-radius: 3px;
	border: 1px solid #e0e2e3;
	background: #fff;
	position: absolute;
	width: 465px;
	height: fit-content;
	padding: 40px;
	line-height: 1.5;
	color: #3d454d;
	margin: auto;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%)
}

@media screen and (max-width: 465px) {
	.multipass-mimic__body {
		width: 100%
	}
}

.multipass-mimic__logo {
	fill: #c2c7cc;
	margin: 0 auto 36px;
	width: 48px;
	height: 48px;
	box-sizing: border-box;
	display: block
}

.multipass-mimic__body {
	text-align: center
}

.modal,
.modal-layout {
	padding: 0;
	margin: 0;
	max-width: 100%;
	position: relative;
	z-index: 999
}

.modal__veil,
.modal,
.modal-layout {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5)
}

@media (min-width: 600px) {

	.modal__veil,
	.modal,
	.modal-layout {
		overflow: scroll
	}
}

.modal-container {
	display: none
}

.modal-container.modal--active {
	display: block
}

.modal-confirmation,
.modal-confirm-cancellation {
	text-align: center
}

.modal__body,
.dialog--modal {
	position: fixed;
	width: 100%;
	max-height: calc(100vh - 80px);
	top: auto;
	right: 0;
	transform: translate(-50%, 0);
	bottom: 0;
	left: 50%;
	z-index: 0;
	overflow: auto;
	background: var(--color-white);
	border-radius: 8px 8px 0 0;
	padding: 32px var(--gutter-column-xs)
}

@media (min-width: 600px) {

	.modal__body,
	.dialog--modal {
		position: relative;
		margin-top: 20%;
		margin-bottom: 15%;
		bottom: auto;
		border-radius: 8px;
		padding: 48px 86px;
		max-height: 60%
	}
}

.modal__body .modal__close,
.modal__body .modal-layout__close-button,
.dialog--modal .modal__close,
.dialog--modal .modal-layout__close-button {
	position: absolute;
	top: 24px;
	right: calc(var(--gutter-column-xs) - 10px);
	z-index: 1;
	width: 40px;
	height: 40px;
	-webkit-appearance: none;
	border: none;
	font-size: 32px;
	font-weight: 200;
	padding: 0;
	background: none
}

.modal__body .modal__close span,
.modal__body .modal-layout__close-button span,
.dialog--modal .modal__close span,
.dialog--modal .modal-layout__close-button span {
	margin-top: -4px;
	display: block
}

.modal__body .modal__close:hover,
.modal__body .modal-layout__close-button:hover,
.dialog--modal .modal__close:hover,
.dialog--modal .modal-layout__close-button:hover {
	opacity: .6
}

.modal__body .modal__close:active,
.modal__body .modal-layout__close-button:active,
.dialog--modal .modal__close:active,
.dialog--modal .modal-layout__close-button:active {
	opacity: .6
}

.modal__body .modal__close:focus,
.modal__body .modal-layout__close-button:focus,
.dialog--modal .modal__close:focus,
.dialog--modal .modal-layout__close-button:focus {
	outline: none
}

@media (min-width: 600px) {

	.modal__body .modal__close,
	.modal__body .modal-layout__close-button,
	.dialog--modal .modal__close,
	.dialog--modal .modal-layout__close-button {
		right: var(--gutter-column)
	}
}

.modal__body .modal-layout__header-title,
.dialog--modal .modal-layout__header-title {
	text-align: center
}

.modal__body .modal-layout__footer-button-wrapper,
.dialog--modal .modal-layout__footer-button-wrapper {
	display: flex;
	justify-content: center
}

.modal__body .modal-layout__footer-button-wrapper .modal-layout__footer-button,
.dialog--modal .modal-layout__footer-button-wrapper .modal-layout__footer-button {
	flex-grow: 1;
	width: 50%
}

.modal__body .modal-layout__footer-button-wrapper .modal-layout__footer-button+.modal-layout__footer-button,
.dialog--modal .modal-layout__footer-button-wrapper .modal-layout__footer-button+.modal-layout__footer-button {
	margin-left: 16px
}

.item-image-holder {
	width: 70px;
	height: 64px;
	text-align: center;
	position: relative;
	z-index: 0
}

.item-image-holder p {
	color: var(--color-white);
	line-height: 64px
}

.item-image-holder .item-image {
	margin: 0 auto;
	width: 64px;
	height: 64px;
	border-radius: 100%;
	overflow: hidden;
	background-size: cover;
	background-position: center
}

.item-image-holder .item-image--null {
	background: var(--accent-color)
}

.item-image-holder .item-image-status {
	position: absolute;
	top: 0;
	right: 0;
	width: 18px;
	height: 18px;
	z-index: 5
}

.item-image-holder--multiple p {
	line-height: 48px
}

.item-image-holder--multiple .item-image {
	margin: 0;
	width: 48px;
	height: 48px
}

.item-image-holder--multiple .item-image:last-child {
	position: relative;
	z-index: 1;
	margin-left: 22px;
	margin-top: -32px;
	width: 50px;
	height: 50px;
	border: 2px solid var(--color-white)
}

.item-image-holder--multiple .item-image:last-child>* {
	width: 48px;
	margin-top: -2px;
	margin-left: -2px
}

.w-background-light .item-image {
	border-color: var(--color-white)
}

.item-filter>* {
	display: inline;
	margin-right: 24px
}

.item-filter>* a {
	text-decoration: none
}

.item-filter>* a.tab--active {
	border-bottom: 1px solid var(--color-link-color)
}

[data-see-more-less]:not(.see-more-less--xs) {
	display: block
}

[data-see-more-less]:not(.see-more-less--xs) [data-see-more-less-contracted] {
	display: inline
}

[data-see-more-less]:not(.see-more-less--xs) .see-more-less__toggle--inline {
	display: inline
}

[data-see-more-less]:not(.see-more-less--xs):not(.see-more-less--expanded) [data-see-more-less-expanded],
[data-see-more-less]:not(.see-more-less--xs):not(.see-more-less--expanded) .see-more-less__toggle--contract {
	display: none
}

[data-see-more-less]:not(.see-more-less--xs).see-more-less--expanded [data-see-more-less-contracted],
[data-see-more-less]:not(.see-more-less--xs).see-more-less--expanded .see-more-less__toggle--expand {
	display: none
}

[data-see-more-less]:not(.see-more-less--xs).see-more-less--expanded [data-see-more-less-expanded] {
	display: block
}

@media (max-width: 600px) {
	[data-see-more-less].see-more-less--xs {
		display: block
	}

	[data-see-more-less].see-more-less--xs [data-see-more-less-contracted] {
		display: inline
	}

	[data-see-more-less].see-more-less--xs .see-more-less__toggle--inline {
		display: inline
	}

	[data-see-more-less].see-more-less--xs:not(.see-more-less--expanded) [data-see-more-less-expanded],
	[data-see-more-less].see-more-less--xs:not(.see-more-less--expanded) .see-more-less__toggle--contract {
		display: none
	}

	[data-see-more-less].see-more-less--xs.see-more-less--expanded [data-see-more-less-contracted],
	[data-see-more-less].see-more-less--xs.see-more-less--expanded .see-more-less__toggle--expand {
		display: none
	}

	[data-see-more-less].see-more-less--xs.see-more-less--expanded [data-see-more-less-expanded] {
		display: block
	}
}

@media (min-width: 600px) {
	[data-see-more-less].see-more-less--xs .see-more-less__toggle {
		display: none
	}
}

.dropdown .description,
.dropdown .trigger {
	display: none
}

.dropdown.dropdown--trigger-inline .dropdown__trigger-holder,
.dropdown.dropdown--trigger-inline .shortened-description {
	display: inline
}

.dropdown .dropdown__trigger {
	-webkit-appearance: none;
	border: none;
	padding: 0;
	margin: 0;
	font-size: 1rem
}

.dropdown.dropdown-is-active .shortened-description,
.dropdown.dropdown-is-active .shortened-trigger {
	display: none
}

.dropdown.dropdown-is-active .description {
	display: block
}

.dropdown.dropdown-is-active .trigger {
	display: inline
}

.dropdown.dropdown-is-active.dropdown--trigger-inline .description {
	display: inline
}

.card {
	background: var(--color-white);
	border: 1px solid #d9d9d9;
	padding: 24px 0;
	border-width: 0
}

.card.card--interactive {
	cursor: pointer
}

.card.card--interactive:hover {
	border-color: #adb1b5
}

.card.card--border-top,
.card.card--border-top-bottom {
	border-top-width: 1px
}

.card.card--border-bottom,
.card.card--border-top-bottom {
	border-bottom-width: 1px
}

.card.card--secondary {
	border: none;
	padding: 16px 24px;
	background: #f7f7f7;
	cursor: default
}

.card.card--full-width-xs {
	padding-left: var(--gutter-column-xs);
	padding-right: var(--gutter-column-xs);
	margin-left: calc(var(--gutter-column-xs) * -1);
	width: calc(100% + calc(var(--gutter-column-xs) * 2))
}

.card.card--mobile {
	border-radius: 4px;
	padding: 24px 32px;
	border-width: 1px
}

.card+.card {
	border-top-width: 1px
}

.card+.card.card--border-bottom {
	border-top-width: 0
}

.card.card--border-top-bottom+.card {
	border-top-width: 0
}

.card.card--secondary+.card.card--secondary {
	margin-top: 8px
}

.card.card--mobile+.card.card--mobile {
	margin-top: 24px
}

@media (min-width: 600px) {
	.card {
		width: 100%;
		border-radius: 4px;
		padding: 24px 25px;
		border-width: 1px
	}

	.card.row {
		margin-right: 0;
		margin-left: 0
	}

	.card.card--no-padding {
		padding: 0
	}

	.card.card--full-width-xs {
		padding: 24px 25px;
		margin-left: 0;
		width: 100%
	}

	.card.card--secondary {
		padding: 16px 24px
	}

	.card.card--active {
		border-color: var(--accent-color)
	}

	.card+.card {
		margin-top: 10px
	}

	.card+.card.card--border-bottom {
		border-top-width: 1px
	}
}

a.card {
	display: block;
	text-decoration: none
}

.picker__box {
	margin: 0
}

.picker--loading tbody div {
	color: #f8f8f8 !important;
	background-color: #f8f8f8 !important;
	border: none !important
}

.picker--loading tbody td {
	border: none !important
}

.picker__header {
	position: relative;
	margin: 0 16px 10px;
	line-height: 25px;
	text-align: center
}

.picker__header .picker__month,
.picker__header .picker__year {
	display: inline-block;
	font-size: 22px;
	color: #3b475a
}

.picker__header .picker__nav--prev,
.picker__header .picker__nav--next {
	position: absolute;
	top: 50%;
	width: 25px;
	height: 25px;
	margin-top: -13px;
	border: 1px solid var(--accent-color);
	border-radius: 50%;
	text-align: center
}

.picker__header .picker__nav--prev {
	left: 0
}

.picker__header .picker__nav--prev:before {
	content: "‹"
}

.picker__header .picker__nav--next {
	right: 0
}

.picker__header .picker__nav--next:before {
	content: "›"
}

.picker__header .picker__nav--disabled {
	border-color: #f2f2f2;
	cursor: default
}

.picker__header .picker__nav--disabled:before {
	color: #f2f2f2
}

.picker__table {
	width: 99.9%;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
	border: none
}

.picker__table .picker__weekday {
	padding: 15px 0;
	text-align: center;
	text-transform: uppercase;
	color: #2e3b4e
}

.picker__table td {
	border: 1px solid #e9e9e9;
	padding: 0
}

.picker__table td .picker__day {
	display: inline-block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	text-align: center;
	color: var(--accent-color);
	cursor: pointer
}

.picker__table td .picker__day--today {
	position: relative;
	text-decoration: none
}

.picker__table td .picker__day--today:after {
	content: "";
	position: absolute;
	top: 33px;
	left: 50%;
	width: 16px;
	margin-left: -8px;
	border-bottom: 3px solid var(--accent-color)
}

.picker__table td .picker__day--selected {
	border: 2px solid var(--accent-color);
	line-height: 36px
}

.picker__table td .picker__day--selected.picker__day--today:after {
	top: 31px
}

.picker__table td .picker__day--disabled {
	color: #c8c8c8;
	cursor: default
}

.picker__table td .picker__day--disabled:after {
	border-bottom: 1px solid #c8c8c8
}

.picker__table td .picker__day--outfocus {
	background: #f7f7f7;
	color: #f7f7f7
}

.picker__table td .picker__day--outfocus:after {
	display: none
}

.sq-pickadate {
	border: 1px solid #d5d9dc;
	border-radius: 3px;
	box-sizing: border-box
}

@media (max-width: 600px) {
	.sq-pickadate {
		border: none
	}
}

.picker__header {
	display: flex;
	justify-content: center;
	margin: 0 0 16px;
	padding: 10px 12px;
	line-height: 40px;
	border-bottom: 1px solid #d5d9dc
}

.picker__header:lang(ja) {
	flex-direction: row-reverse
}

.picker__header .picker__month,
.picker__header .picker__year {
	font-size: 20px;
	color: #000;
	font-weight: 600;
	margin: 0 4px
}

.picker__header .picker__nav--prev,
.picker__header .picker__nav--next {
	position: absolute;
	top: 50%;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	border: 1px solid var(--accent-color);
	color: var(--accent-color);
	border-radius: 4px;
	line-height: 36px;
	font-size: 24px;
	text-align: center;
	font-weight: 500;
	cursor: pointer
}

.picker__header .picker__nav--prev:hover:not(.picker__nav--disabled),
.picker__header .picker__nav--next:hover:not(.picker__nav--disabled) {
	color: #fff;
	background-color: var(--accent-color)
}

.picker__header .picker__nav--prev.picker__nav--disabled,
.picker__header .picker__nav--next.picker__nav--disabled {
	color: #d9d9d9;
	border-color: #d9d9d9;
	cursor: not-allowed
}

.picker__header .picker__nav--prev {
	margin-left: 12px
}

.picker__header .picker__nav--next {
	margin-right: 12px
}

.picker__table thead {
	background-color: transparent
}

.picker__table th {
	font-size: 14px
}

.picker__table td {
	border: none;
	padding: 4px;
	text-align: center
}

.picker__table td .picker__day {
	display: inline-block;
	width: 40px;
	height: 40px;
	font-weight: 500;
	font-size: 14px;
	line-height: 38px;
	text-align: center;
	color: var(--accent-color);
	cursor: pointer;
	border: 1px solid var(--accent-color);
	background: transparent;
	border-radius: 50% 50%
}

.picker__table td .picker__day:hover:not(.picker__day--disabled) {
	background: var(--accent-color);
	color: #fff
}

@media (max-width: 600px) {
	.picker__table td .picker__day {
		width: 36px;
		height: 36px;
		line-height: 34px
	}
}

.picker__table td .picker__day--disabled {
	color: #adb1b5;
	background: transparent;
	font-weight: 500;
	border: none;
	cursor: default
}

.picker__table td .picker__day--infocus:hover {
	background-color: transparent
}

.picker__table td .picker__day--today {
	color: var(--accent-color)
}

.picker__table td .picker__day--today:after {
	content: "";
	position: absolute;
	top: 70%;
	left: 25%;
	width: 20px;
	margin-left: 0;
	border-bottom: 1px solid var(--accent-color)
}

@media (max-width: 600px) {
	.picker__table td .picker__day--today:after {
		width: 18px
	}
}

.picker__table td .picker__day--today.picker__day--disabled:after {
	border-color: var(--color-gray)
}

.picker__table td .picker__day--outfocus {
	color: #fafafa;
	background: none;
	border: none
}

.picker__table td .picker__day--outfocus:hover {
	background-color: transparent
}

.picker__table td .picker__day--selected {
	background: var(--accent-color);
	color: var(--primary-button-text-color)
}

.picker__table td .picker__day--selected:hover {
	color: var(--accent-color)
}

.payment-summary__table {
	width: 100%;
	border-top: 1px solid #d9d9d9;
	border-bottom: 1px solid #d9d9d9;
	border-spacing: 0;
	border-collapse: collapse
}

.payment-summary__table .payment-summary__subtitle {
	padding-top: 8px;
	display: block
}

.payment-summary__table .payment-summary__price-cell {
	text-align: right;
	line-height: 1.25
}

.payment-summary__table td {
	vertical-align: top;
	height: auto;
	overflow: unset;
	padding-top: 8px;
	padding-bottom: 8px
}

.payment-summary__table .payment-summary__cart-item:first-child td {
	padding-top: 24px
}

.payment-summary__table .payment-summary__cart-item:last-child td {
	padding-bottom: 24px
}

.payment-summary__table .payment-summary__subtotal td {
	padding-top: 24px;
	border-top: 1px solid #d9d9d9;
	border-spacing: 0;
	padding-bottom: 0
}

.payment-summary__table .payment-summary__total td {
	padding-top: 32px;
	padding-bottom: 32px
}

.payment-summary__table .payment-summary__disclaimer td {
	padding-top: 24px;
	border-top: 1px solid #d9d9d9;
	border-spacing: 0
}

.payment-summary__table tfoot tr:last-child td {
	padding-bottom: 24px
}

.payment-summary__tip-button {
	background: none;
	cursor: pointer;
	border: 1px solid #d5d9dc;
	font-size: 14px;
	line-height: 24px;
	box-sizing: border-box;
	border-right-width: 0;
	flex: 1;
	min-width: 65px;
	max-width: 180px
}

.payment-summary__tip-button[aria-pressed] {
	color: #fff;
	background-color: #323b43
}

.payment-summary__tip-button:first-child {
	border-bottom-left-radius: 3px;
	border-top-left-radius: 3px
}

.payment-summary__tip-button:last-child {
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
	border-right-width: 1px
}

.payment-summary__tip-button.custom-tip {
	flex: 0
}

.payment-summary__row--tipping-buttons,
.payment-summary__row--custom-tipping-buttons {
	height: 50px;
	max-width: 475px;
	display: flex
}

.payment-summary__row--custom-tipping {
	margin-top: 8px
}

.payment-summary__tip-custom__input {
	flex: 1;
	font-size: 14px;
	line-height: 24px;
	padding: 12px 16px;
	box-sizing: border-box;
	border: 1px solid #d5d9dc;
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px
}

.input-icon {
	position: relative
}

.input-icon--card__input {
	padding-right: 56px
}

.input-icon--card__amex-icon {
	background-image: url(/appointments/assets/obs/icon-cc-americanexpress-a5034a243d9b561e608f48b1f899dd905d6a528080e86791223aae0f6663fe72.svg)
}

.input-icon--card__card-icon {
	background-image: url(/appointments/assets/obs/icon-cc-blank-063a0f512a9bb569fc4599a9bf53a1bc85bff6ee73e65e4d64a2ad046f68c70a.svg)
}

.input-icon--card__discover-icon {
	background-image: url(/appointments/assets/obs/icon-cc-discover-046a2580bc083724ccf1dd643856816b0c40b51e22488cfc608bbc1e23de21ee.svg)
}

.input-icon--card__jcb-icon {
	background-image: url(/appointments/assets/obs/icon-cc-jcb-a0ff635255abf64e8a54dfd19b97a1349e281e2132b5bde8821ab3ae84b703a1.svg)
}

.input-icon--card__mastercard-icon {
	background-image: url(/appointments/assets/obs/icon-cc-mastercard-3e392e0741e7f91d699ad95346b73b0450fc3e969649f2bcdef74dfede4729ee.svg)
}

.input-icon--card__visa-icon {
	background-image: url(/appointments/assets/obs/icon-cc-visa-c93f5a0103802918d7787046bdcb514211cc284a66a2a157409c48b467d49390.svg)
}

.input-icon--card__amex-icon,
.input-icon--card__card-icon,
.input-icon--card__discover-icon,
.input-icon--card__jcb-icon,
.input-icon--card__mastercard-icon,
.input-icon--card__visa-icon {
	background-repeat: no-repeat;
	background-color: #fff;
	background-position: center;
	position: absolute;
	height: 41px;
	width: 53px;
	top: 3px;
	right: 3px
}

.credit-card-summary {
	display: flex;
	align-items: center
}

.credit-card-summary .credit-card-summary__info {
	margin-left: 24px
}

.reservation-list-item .reservation-list-item__details-link {
	float: right;
	color: var(--accent-color)
}

.reservation-list-item .reservation-list-item__details-link--mobile {
	display: none
}

.reservation-list-item .reservation-list-item__staff {
	display: flex;
	align-items: center
}

.reservation-list-item .reservation-list-item__staff .reservation-list-item__staff__info {
	margin-left: 16px
}

.reservation-list-item .reservation-list-item__confirmation-status {
	width: 24px;
	height: 24px;
	position: absolute;
	right: -6px;
	bottom: -6px
}

@media (max-width: 600px) {
	.reservation-list-item .item__book-now {
		margin-left: 32px
	}

	.reservation-list-item .reservation-list-item__details-link {
		display: none
	}

	.reservation-list-item .reservation-list-item__details-link--mobile {
		display: block;
		margin: 32px
	}
}

.reservation-list-item .reservation-list-item__details__heading__no-show {
	color: #cc0023
}

.reservation-list-item .item-image-holder--multiple .reservation-list-item__confirmation-status {
	width: 24px;
	height: 24px;
	position: absolute;
	right: -8px;
	bottom: -20px
}

.add-instrument-modal__card-authorization {
	padding-top: 32px;
	border-top: 1px solid #d9d9d9
}

.company-location-map {
	border-radius: 4px;
	overflow: hidden
}

.form-field__select {
	position: relative;
	z-index: 5;
	border: none;
	border-radius: 0;
	min-height: 50px;
	padding: 13px 39px 13px 24px;
	width: 100%;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: transparent
}

@media (max-width: 600px) {
	.form-field__select {
		min-height: 0;
		width: 100%;
		background: #d9d9d9;
		padding: 6px 16px 16px;
		font-size: 16px
	}
}

@media (max-width: 600px) {
	.form-field__select {
		padding-right: 31px;
		background: transparent;
		min-height: 46px
	}
}

.form-field--is-disabled .form-field__select,
.form-field--is-read-only .form-field__select {
	cursor: default
}

.form-field__caret-container {
	position: relative
}

.form-field__caret-container.input-is-invalid {
	background: transparent
}

.form-field__caret {
	position: absolute;
	right: 25px;
	top: 21.5px;
	border-bottom: solid 2px var(--color-black);
	border-right: solid 2px var(--color-black);
	display: block;
	width: 7px;
	height: 7px;
	transform: rotate(45deg)
}

@media (max-width: 600px) {
	.form-field__caret {
		top: 16.5px
	}
}

.form-field--is-disabled .form-field__caret,
.form-field--is-read-only .form-field__caret {
	border-color: #d9d9d9
}

.form-field__caret--positioned {
	left: 0;
	right: auto;
	margin-left: 8px
}

.form-field--split-even .form-field__content {
	width: 50%
}

.form-field--no-label .form-field__content {
	width: 100%
}

.form-field--is-focused .form-field__select {
	border-color: var(--accent-color);
	border-width: 0 0 1px;
	background-color: transparent
}

.form-field--is-invalid .form-field__select {
	border-color: #cc0023;
	border-width: 0 0 1px;
	background-color: transparent
}

.form-field-measure-container {
	display: block;
	min-height: 50px;
	font-size: 16px;
	line-height: 1.5;
	position: absolute;
	left: 0;
	top: 0;
	padding: 0;
	visibility: hidden
}

@media (max-width: 600px) {
	.form-field-measure-container {
		font-size: 16px
	}
}

.form-fieldset--altratio .form-field__content {
	width: 65%
}

.form-fieldset--altratio .form-field--split-even .form-field__content,
.form-fieldset--altratio .form-field--split-even .form-field__label {
	width: 50%
}

.service-card__footer {
	cursor: default;
	display: inline-block
}

.service-card__button {
	background-color: #fff !important;
	border: none;
	color: #656666 !important;
	cursor: pointer;
	font-size: unset;
	padding: 0 !important;
	font-weight: 500 !important
}

.service-card__dropdown-trigger {
	background-color: #fff
}

.service-card__header {
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 500 !important
}

.service-card__header--multi-service {
	margin-bottom: -5px
}

@media (min-width: 600px) {
	.select-staff-modal .modal__body {
		margin: 0;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		max-height: 70%
	}
}

@media (max-width: 599.98px) {
	.select-staff-modal__staff {
		border-top: 1px solid #d9d9d9
	}
}

.select-staff-modal__kicker {
	color: #737373
}

@media (max-width: 599.98px) {
	.select-staff-modal__kicker {
		color: var(--color-black)
	}
}

.dropdown {
	position: relative
}

.dropdown button {
	background: none
}

.dropdown__trigger {
	outline: none;
	cursor: pointer
}

.dropdown__trigger--is-active.caret-down:after,
.dropdown__trigger--is-active .caret-down:after,
.dropdown-is-active .button--pill.caret-down:after {
	transform: rotate(-90deg);
	right: 2.5px
}

.dropdown__trigger--text-only {
	color: #005ad9;
	font-size: 18px;
	font-weight: 700;
	line-height: 1
}

.dropdown__list-keyboard-event-handler {
	height: 100%;
	width: 100%
}

.no-scroll {
	position: fixed;
	overflow-y: scroll;
	width: 100%
}

.focus-manager__capture-focus {
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0
}

.popover {
	position: absolute;
	z-index: 600;
	background-clip: padding-box;
	background-color: #fff;
	border: solid 0 #d9d9d9;
	border-radius: 4px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1), 0 2px 16px rgba(0, 0, 0, 0.1);
	opacity: 0;
	visibility: hidden;
	transition: visibility 0 linear 0.3s, opacity .3s ease, transform .3s cubic-bezier(0.175, 0.855, 0.32, 1.275)
}

.popover--popper {
	position: relative
}

.popover--position-fixed-top,
.popover--position-fixed-bottom,
.popover--position-fixed-left,
.popover--position-fixed-right {
	position: fixed
}

.popover--position-fixed-top {
	margin-bottom: 4px
}

.popover--position-fixed-bottom {
	margin-top: 4px
}

.popover--position-fixed-left {
	margin-right: 4px
}

.popover--position-fixed-right {
	margin-left: 4px
}

.popover--fly-up {
	left: 0;
	bottom: 100%;
	margin-bottom: 4px;
	transform: translate3d(0, 7px, 0)
}

.popover--fly-up.popover--align-right {
	right: 0;
	left: auto
}

.popover--fly-up.popover--align-center {
	left: 50%;
	transform: translate3d(-50%, -7px, 0)
}

.popover--fly-right {
	top: 0;
	left: 100%;
	margin-left: 4px;
	transform: translate3d(-7px, 0, 0)
}

.popover--fly-down {
	top: 100%;
	left: 0;
	margin-top: 4px;
	transform: translate3d(0, -7px, 0)
}

.popover--fly-down.popover--align-right {
	right: 0;
	left: auto
}

.popover--fly-down.popover--align-center {
	left: 50%;
	transform: translate3d(-50%, -7px, 0)
}

.popover--fly-left {
	top: 0;
	right: 100%;
	margin-right: 4px;
	transform: translate3d(7px, 0, 0)
}

.popover--popper.popover--fly-up,
.popover--popper.popover--fly-right,
.popover--popper.popover--fly-down,
.popover--popper.popover--fly-left {
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
	margin: initial
}

.popover--center {
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto
}

.popover--align-center {
	left: 50%;
	transform: translate3d(-50%, 0, 0)
}

.popover--is-active {
	opacity: 1;
	visibility: visible;
	transform: translate3d(0, 0, 0);
	transition: visibility 0 linear 0s, opacity .3s ease, transform .3s cubic-bezier(0.175, 0.855, 0.32, 1.275)
}

.popover--is-active.popover--align-center {
	transform: translate3d(-50%, 0, 0)
}

.popover--filter,
.popover--item-select {
	width: 250px
}

@media screen and (max-width: 599px) {

	.popover--filter,
	.popover--item-select {
		width: 100%
	}
}

.popover--filter .popover--filter-list__radio-row,
.popover--item-select .popover--filter-list__radio-row {
	max-width: 195px
}

.popover--filter-search {
	padding: 10px;
	text-align: center
}

.popover-list {
	min-width: 160px;
	max-width: 320px;
	width: -webkit-max-content;
	width: max-content
}

.popover-list .option:hover:not(.option--is-disabled) {
	background-color: #e6f0ff;
	color: #005ad9
}

.popover-list__filter-input {
	border-width: 0;
	border-bottom-width: 1px;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0
}

.popover-list__item {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5714285714;
	display: block;
	padding: 12px 16px;
	width: 100%;
	text-align: left
}

.popover-list__item.cursor-pointer {
	cursor: pointer
}

.popover-list__item:hover,
.popover-list__item.popover-list__item--is-focused {
	background-color: #e6f0ff;
	color: #005ad9
}

a.popover-list__item {
	color: #1a1a1a
}

a.popover-list__item.button--secondary.button--destructive {
	line-height: 1.5
}

a.popover__item--destructive,
.popover__item--destructive {
	color: #cc0023
}

.popover-list__item--is-disabled {
	color: inherit;
	cursor: default;
	opacity: .5
}

.popover-list__item--is-disabled:hover,
.popover-list__item--is-disabled.popover-list__item--is-focused {
	color: inherit
}

.popover-list__item--option {
	display: flex
}

.popover-list__item--option .option {
	padding: 12px 16px
}

.popover-list__item .popover--filter-list__radio-row {
	vertical-align: top;
	white-space: normal;
	line-height: 1.3;
	overflow: hidden
}

.popover-list__footer-button {
	width: 100%;
	border: none;
	border-top: 1px solid #d9d9d9;
	border-top-left-radius: 0;
	border-top-right-radius: 0
}

.popover-list__footer {
	background-color: #f2f2f2;
	border-top: 1px solid #f2f2f2;
	padding: 0
}

.popover-list__footer:hover,
.popover-list__footer.popover-list__item--is-focused {
	background-color: #f2f2f2
}

.popover-list__footer>.popover-list__button {
	line-height: 1
}

.popover-list__footer--divided {
	position: relative
}

.popover-list__footer--divided:after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 1px;
	height: 10px;
	margin-left: -.5px;
	margin-top: -5px;
	background: #737373
}

.popover-list__button {
	text-align: center;
	padding: 10px 0;
	font-size: 12px
}

.popover-list__button:hover,
.popover-list__button .popover-list__item--is-focused {
	color: #737373
}

.popover-list__button--stacked:first-of-type {
	border-bottom: 1px solid #ccc
}

.popover-list__scroll-box {
	max-height: 409px;
	overflow-y: auto
}

.popover-list--with-headers {
	padding: 16px 0
}

.popover-list__item--with-headers {
	cursor: pointer;
	padding: 4px 24px;
	line-height: inherit
}

.popover-list__item--with-headers+.popover-list__header {
	padding-top: 16px
}

.popover-list__header {
	letter-spacing: 1px;
	text-transform: uppercase;
	letter-spacing: .05em;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.667;
	color: #b3b3b3;
	padding: 8px 24px 4px
}

.caret-up:after {
	position: relative;
	content: ">";
	display: inline-block;
	font-size: 16px;
	line-height: 14px;
	top: 2px;
	margin-left: 2px;
	transform: rotate(-90deg);
	transition: transform 250ms
}

.caret-right:after {
	position: relative;
	content: ">";
	display: inline-block;
	font-size: 16px;
	line-height: 14px;
	top: 2px;
	margin-left: 2px;
	top: 0
}

.caret-down:after {
	position: relative;
	content: ">";
	display: inline-block;
	font-size: 16px;
	line-height: 14px;
	top: 2px;
	margin-left: 2px;
	transform: rotate(90deg);
	transition: transform 250ms
}

.caret-right--table,
.caret-down--table {
	margin-left: -4px;
	top: -2px;
	position: relative;
	font-size: 17px;
	color: #005ad9;
	font-weight: 500
}

.caret-left:after {
	position: relative;
	content: ">";
	display: inline-block;
	font-size: 16px;
	line-height: 14px;
	top: 2px;
	margin-left: 2px;
	top: 0
}

.caret-right--checkbox-table,
.caret-down--checkbox-table {
	position: absolute;
	top: -5px;
	font-size: 17px;
	color: #005ad9;
	font-weight: 500
}

.caret-down--checkbox-table {
	margin-right: -3px
}

.caret-right--checkbox-table {
	margin-left: -2px;
	margin-right: -1px
}

a,
.hyperlink,
.action {
	cursor: pointer;
	color: #005ad9;
	text-decoration: none
}

a:hover,
.hyperlink:hover,
.action:hover {
	color: #005fe6
}

.customer-address-form {
	display: flex;
	flex-direction: column
}

.week-select {
	align-items: center;
	background: #f2f2f2;
	border-radius: 4px;
	display: flex;
	justify-content: space-between;
	min-width: 210px;
	font-size: 14px;
	line-height: 22px;
	color: #1a1a1a
}

.week-select__arrow {
	border: none;
	cursor: pointer;
	font: inherit;
	padding: 0;
	background-color: transparent;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center
}

.week-select__arrow[disabled] {
	opacity: .25;
	cursor: not-allowed
}

.week-select__arrow path {
	fill: #1a1a1a
}

.class-booking-payment-table {
	border: 1px solid #f2f2f2;
	border-radius: 6px;
	padding: 0 16px;
	margin-top: 24px
}

.class-booking-payment-table__row {
	display: flex;
	padding: 16px 0;
	justify-content: space-between;
	font-size: 16px;
	line-height: 24px;
	font-weight: 400;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #191919
}

.class-booking-payment-table__row--underline {
	border-bottom: 1px solid #f2f2f2
}

.class-booking-payment-table__row--highlight {
	font-weight: 600
}

.class-booking-sidebar {
	border: 1px solid #f2f2f2;
	border-radius: 6px
}

@media (min-width: 600px) {
	.class-booking-sidebar__wrapper {
		width: 194px
	}
}

.class-booking-sidebar__top {
	background-color: #f7f7f7;
	padding: 12px 16px 16px
}

.class-booking-sidebar__bottom {
	background-color: #fff;
	padding: 12px 16px 16px
}

.class-booking-sidebar__class-name {
	display: block;
	font-size: 16px;
	line-height: 24px;
	font-weight: 600;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #191919
}

.class-booking-sidebar__class-staff {
	display: block;
	font-size: 14px;
	line-height: 22px;
	font-weight: 400;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #191919
}

.class-booking-sidebar__class-description {
	display: inline-block;
	margin-top: 8px;
	font-size: 14px;
	line-height: 22px;
	font-weight: 400;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #005ad9;
	border: 0;
	border-bottom: 1px dashed #005ad9;
	padding: 0;
	background: transparent;
	cursor: pointer
}

.class-booking-sidebar__metadata+.class-booking-sidebar__metadata {
	margin-top: 8px
}

.class-booking-sidebar__metadata-label {
	display: block;
	font-size: 14px;
	line-height: 22px;
	font-weight: 700;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #191919
}

.class-booking-sidebar__metadata-value {
	display: inline-block;
	font-size: 14px;
	line-height: 22px;
	font-weight: 400;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #191919
}

.class-card__right-column {
	text-align: right
}

.card.class-card--disabled {
	border-color: #f2f2f2;
	color: #b3b3b3;
	cursor: not-allowed
}

.card.class-card--disabled:hover {
	border-color: #f2f2f2
}

.card.class-card--disabled p {
	color: #d9d9d9
}

.card.class-card--disabled a {
	color: #cce1ff;
	cursor: not-allowed
}

.class-card__book-now-link {
	color: var(--color-link-color)
}

.class-card__book-now-link:hover {
	color: var(--color-link-color)
}

.class-card__already-booked {
	color: #38a100
}

.activity-indicator {
	display: flex;
	justify-content: center
}

.activity-indicator svg {
	fill: currentColor;
	animation: 1s linear 0 infinite normal none running rotation
}

@keyframes rotation {
	0% {
		transform: rotate(0deg)
	}

	100% {
		transform: rotate(360deg)
	}
}

.web-payments-form {
	min-height: 88px
}

.web-payments-form-error-card {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between
}

.class-booking-show {
	text-align: center
}

.book-another-class-button {
	position: relative;
	color: var(--primary-button-text-color)
}

.book-another-class-button:hover {
	color: var(--primary-button-text-color)
}

.book-another-class-button::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0
}

.book-another-class-button:hover::before {
	background-color: var(--color-black-alpha-05)
}

.book-another-class-button:focus::before {
	background-color: var(--color-black-alpha-10)
}

.classes-book {
	display: flex;
	width: 100%;
	gap: 40px;
	flex-wrap: wrap;
	align-items: flex-start
}

.classes-book__sidebar {
	flex: 1 1 100%
}

@media (min-width: 600px) {
	.classes-book__sidebar {
		flex: none
	}
}

.classes-book__main {
	flex: 1
}

.classes-book__heading {
	font-size: 25px;
	line-height: 32px;
	font-weight: 700;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #191919
}

.classes-book__flash {
	margin-top: 40px
}

.classes-book__body {
	margin-top: 48px
}

.classes-book__body-section+.classes-book__body-section {
	margin-top: 40px
}

.classes-book__subheading {
	font-size: 19px;
	line-height: 26px;
	font-weight: 700;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #191919
}

.classes-book__subheading-description {
	margin-top: 8px;
	font-size: 16px;
	line-height: 24px;
	font-weight: 400;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #191919
}

.classes-book__contact-form {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 16px;
	margin-top: 24px
}

@media (min-width: 600px) {
	.classes-book__contact-form {
		grid-template-columns: repeat(2, 1fr)
	}
}

.classes-book__contact-form input:disabled:-webkit-autofill {
	-webkit-text-fill-color: var(--form-color--40);
	-webkit-box-shadow: 0 0 0 40px var(--color-gray-05) inset
}

.classes-book__contact-field input {
	border: 1px solid #f2f2f2;
	border-radius: 6px;
	height: 64px;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif
}

.classes-book__payment-form {
	margin-top: 24px;
	background-color: #f2f2f2;
	border-radius: 6px;
	padding: 16px
}

.classes-book__authorization-info {
	margin-top: 24px
}

.classes-book__cancel-auth-button {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font-family: inherit;
	font-size: inherit;
	color: var(--color-link-color);
	cursor: pointer
}

.classes-select__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 16px
}

.classes-select__empty-state {
	padding: 96px 0
}

.classes-select__no-classes-message {
	text-align: center;
	font-size: 16px;
	line-height: 24px;
	font-weight: 400;
	font-family: "Square Sans Display VF", "Square Sans Display", Helvetica, Arial, sans-serif;
	color: #191919
}

.landing-widget .landing {
	padding-top: 120px
}

.landing-widget .modal--menu ul {
	list-style-type: none
}

@media (min-width: 600px) {
	.landing-widget .staff-info {
		display: flex
	}

	.landing-widget .staff-info .item-image-holder {
		margin-right: 16px
	}
}

.landing-widget .item__book-now {
	white-space: nowrap
}

@media (min-width: 600px) {
	.landing-widget .item__book-now {
		text-align: right
	}
}

.landing-widget .location {
	margin-bottom: 24px
}

.landing-widget .location:last-child {
	margin-bottom: 0
}

.landing-widget .location+.location {
	padding-top: 24px;
	border-top: 1px solid #d9d9d9
}

.landing-widget .giftcard-image {
	min-width: 135px;
	background-image: url(/appointments/assets/giftcard-bf34be4d6da333ed58a3587ac885f98c998e924463f259c3446c8160c18d0560.png);
	min-height: 115px;
	background-size: cover;
	background-position: 10px -15px
}

.profile-reservations,
.profile-edit {
	width: 100%;
	display: flex;
	flex-wrap: wrap
}

.profile-reservations .sidebar,
.profile-edit .sidebar {
	text-align: center
}

.profile-edit .profile-edit__buyer-data {
	margin-left: 40px
}

.profile-edit .profile-edit__cards-on-file-title,
.profile-edit .profile-edit__add-instrument-button {
	display: inline-block
}

.profile-edit .profile-edit__add-instrument-button {
	margin-left: 16px
}

@media (max-width: 600px) {
	.profile-edit .profile-edit__delete-instrument {
		margin-left: 48px
	}
}

.reservations-show {
	text-align: center
}

.reservations-show .reservations-show__header-button+.reservations-show__header-button {
	margin-left: 32px
}

.reservations-show .reservations-show__staff {
	display: flex;
	text-align: left;
	justify-content: center;
	align-items: center
}

.reservations-show .reservations-show__staff .reservations-show__staff__info {
	margin-left: 16px
}

.reservations-show .reservations-show__phone {
	text-decoration: none;
	line-height: 1.62
}

.modal-add-to-calendar {
	text-align: center
}

.modal-add-to-calendar .reservations-show__button--calendar {
	width: 45%;
	padding: 0
}

.page-layout {
	margin-bottom: 100px;
	background-color: var(--color-white)
}

.page-layout__content {
	overflow-x: hidden;
	padding-bottom: 100px
}

.modal--menu ul {
	list-style-type: none
}

@media (min-width: 600px) {
	.staff-info {
		display: flex
	}

	.staff-info .item-image-holder {
		margin-right: 16px
	}
}

@media (min-width: 600px) {
	.item__book-now {
		text-align: right
	}
}

.dropdown .dropdown__trigger {
	font-size: inherit
}

.l-checkbox-row {
	display: flex
}

.l-checkbox-row .form-checkbox__label {
	display: block;
	margin-left: 24px;
	line-height: 1.5
}

.appointment-info .appointment-steps {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.appointment-info .appointment-steps .sidebar-section-title {
	display: inline;
	color: var(--color-gray);
	font-size: 18px;
	font-weight: 500
}

.appointment-info .appointment-steps .sidebar-section-title--complete {
	color: var(--color-black)
}

.appointment-info .appointment-steps .sidebar-section-title {
	color: #444;
}

.card--no-padding.l-item-booking-flow .col:first-child {
	padding-left: 0
}

.card--no-padding.l-item-booking-flow .item__book-now {
	padding-right: 32px
}

.user-signup-form--active .widget-toolbar-container {
	display: none
}

.location {
	margin-bottom: 24px
}

.location:last-child {
	margin-bottom: 0
}

.location+.location {
	padding-top: 24px;
	border-top: 1px solid #d9d9d9
}

.widget-reservation-contact .checkbox-group .form-checkbox {
	justify-content: flex-end
}

.widget-reservation-contact .widget-contact__new-account-explanation {
	border-top: 1px solid #d9d9d9;
	padding-top: 24px
}

.widget-reservation-contact__consent-message {
	font-size: 16px
}

.widget-contact_card-form_hidden {
	display: none
}

.intl-phone-field__country-input-container select.form__select {
	font-size: 16px;
	font-weight: 500;
	color: var(--color-link-color)
}

.intl-phone-field__country-input-container .select__container::after {
	border-top-color: var(--color-link-color)
}

.intl-phone-field__country-input-container.disabled .select__container::after {
	border-top-color: var(--form-color--40)
}

.intl-phone-field__phone-input-container {
	display: flex;
	align-items: center;
	width: 100%;
	padding: 0
}

.intl-phone-field__phone-input-container.input--error .intl-phone-field__country-calling-code {
	border-right-color: var(--color-urgent)
}

.intl-phone-field__country-calling-code {
	height: 100%;
	width: auto;
	display: flex;
	align-items: center;
	flex: none;
	padding-left: 16px;
	padding-right: 16px;
	border-right: 1px solid var(--form-color--30)
}

.intl-phone-field__phone-input {
	flex: 1 0 50%;
	height: 100%;
	border: none
}

.intl-phone-field__phone-input:focus {
	outline: 1px solid var(--form-color--60)
}

.appointment-time {
	scroll-margin: 68px
}

.appointment-time .appointment-time-items button {
	margin: 0 8px 8px 0;
	width: 140px
}

.appointment-time .appointment-time-items button:disabled {
	background: #f2f2f2;
	color: #b3b3b3
}

.widget-join_waitlist {
	border-top: 1px solid #d9d9d9;
	padding-top: 24px
}

.widget-reservation-location .l-item-map {
	line-height: 0
}

.widget-reservation-location .location-name {
	padding-left: 20px
}

.widget-reservation-location .customer-location .customer-location__img-holder:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(/appointments/assets/obs/customer-location-cb63a6f683c1a0bed286509893919f450236d589452bf0aedc48e280096634fd.svg);
	background-size: cover;
	width: 40px;
	height: 40px;
	z-index: 98
}

.widget-reservation-location .customer-location__img-holder,
.widget-reservation-location .no-location__img-holder {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 100%
}

.widget-reservation-location .customer-location__img-holder img,
.widget-reservation-location .no-location__img-holder img {
	content: url(/appointments/assets/obs/328x190_static-de8587487ab15878e26c2c4abffaf6ca2b1586a08d1ffa0dad36f318551fbcd5.png);
	filter: blur(5px);
	transform: scale(1.075)
}

.widget-reservation-services .select__container {
	padding: 15px 10px;
	border: 1px solid var(--color-gray);
	border-radius: 4px;
	display: block
}

.widget-reservation-services .select__container .form__select {
	border: none;
	padding-left: 0;
	width: 100%;
	height: auto
}

.widget-reservation-services .select__container .form__select:enabled {
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis
}

.widget-reservation-services .select__container .form__select:enabled:focus,
.widget-reservation-services .select__container .form__select:enabled:hover {
	background: none
}

.widget-reservation-services .checkbox-group {
	margin-top: 3px
}

.widget-reservation-services .checkbox-group .form-checkbox {
	justify-content: flex-end
}

.widget-reservation-services .service-duration-and-price {
	display: inline
}

.widget-reservation-services--category-header-container {
	display: flex
}

.widget-reservation-services--category-header {
	display: flex;
	margin-top: 47px;
	border-bottom: 1px solid #d9d9d9
}

.widget-header .widget-reservation-services--category-header {
	margin-top: 26px;
	border-bottom: none;
	justify-content: flex-start
}

.widget-header .widget-reservation-services--category-header.widget-reservation-services--category-iframe-header {
	position: relative;
	left: -12px
}

.widget-reservation-services--category-header-element {
	margin-right: 24px;
	font-weight: 500;
	cursor: pointer;
	color: #0000008c;
	padding-bottom: 15px;
	width: 135px;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	text-align: center
}

.widget-reservation-services--category-header-element:hover {
	color: var(--accent-color)
}

.widget-reservation-services--category-header-element.active {
	color: var(--accent-color);
	padding-bottom: 15px;
	border-bottom: 3px solid var(--accent-color)
}

.widget-reservation-services--category-header-more {
	text-overflow: unset;
	overflow: unset;
	white-space: unset
}

.widget-reservation-services--category-header-more .dropdown__trigger--text-only,
.widget-reservation-services--category-header-more .popover-list__item {
	color: #0000008c
}

.widget-reservation-services--category-header-more .popover-list__item {
	font-weight: 500
}

.widget-reservation-services--category-header-more .popover-list__item:hover {
	color: var(--accent-color)
}

.widget-reservation-services--category {
	position: relative
}

.widget-reservation-services--category .widget-reservation-services--category-anchor {
	position: absolute;
	top: -150px;
	left: 0
}

.landing-widget .widget-reservation-services--category-header {
	max-width: 750px;
	overflow: scroll
}

.landing-widget .widget-reservation-services--category .widget-reservation-services--category-anchor {
	top: -90px
}

.landing-widget .widget-reservation-services--category-header-element {
	min-width: 90px
}

.landing-widget .widget-reservation-services--category-header-element:hover {
	color: var(--color-link-color)
}

.landing-widget .widget-reservation-services--category-header-element.active {
	color: var(--color-link-color);
	border-bottom: 3px solid var(--color-link-color)
}

.widget-reservation-staff button.dropdown__trigger {
	cursor: pointer
}

.sign-in-to-view {
	align-items: center;
	display: flex;
	flex-direction: column;
	font-size: 26px;
	font-weight: 600;
	height: 100vh;
	justify-content: center;
	margin-top: -120px;
	text-align: center;
	width: 100%
}

.sign-in-to-view__body {
	margin: 30px
}

.widget-waitlist__header {
	text-align: center
}

.widget-waitlist__edit-services-link {
	position: absolute;
	right: 40px;
	background-color: #fff;
	border: none;
	color: var(--accent-color);
	cursor: pointer;
	font-size: unset;
	padding: 0
}

.widget-waitlist__service-list-item {
	text-align: center;
	margin: 0 50px
}

.widget-waitlist__service-list-item:last-of-type>.widget-waitlist__service-list-separator {
	display: none
}

.widget-waitlist__service-list-item-label {
	font-weight: 500;
	margin-bottom: 4px
}

.widget-waitlist__service-list-separator {
	font-size: 8px;
	margin: 8px
}

.widget-waitlist__customer-note {
	margin-bottom: 28px
}

.widget-waitlist__customer-note-count {
	text-align: right
}

p,
span,
a {
	color: var(--color-black-alpha-60)
}

h6 {
	text-transform: none;
	letter-spacing: 0
}

.input-group__input,
.textarea-group__textarea,
.select__container select.form__select {
	font-family: var(--body-font)
}

.select__container select.form__select:enabled:hover {
	background: var(--color-black-alpha-05)
}

.select__container select.form__select:enabled:focus {
	background: var(--color-black-alpha-05)
}

.radio-group .form-radio__container .form-radio__input-default:hover+.form-radio__control {
	background-color: var(--accent-color--darkened)
}

.form-checkbox__container .form-checkbox__input:hover+.form-checkbox__control {
	background-color: #656666
}

.form-checkbox__container .form-checkbox__input:checked:hover+.form-checkbox__control {
	background-color: #656666;
	border-color: #656666
}

.form-checkbox__input:hover+.form-checkbox__control::after {
	opacity: 1
}

.w-background-light .link--browser a:hover,
.w-background-dark .link--browser a:hover,
.link--browser span a:hover,
.link--browser p a:hover,
.link--browser .dropdown__trigger:hover span,
.w-background-light .link--browser a:focus,
.w-background-dark .link--browser a:focus,
.link--browser span a:focus,
.link--browser p a:focus,
.link--browser .dropdown__trigger:focus span {
	color: var(--color-link-color--darkened)
}

.textarea-group__textarea {
	font-size: 16px
}

.l-hide,
.hide {
	display: none
}

.l-fill {
	width: 100%
}

.row--no-padding>.col:first-child {
	padding-left: 0
}

.row--no-padding>.col:last-child {
	padding-right: 0
}

.contact-field--small-padding-right {
	padding-right: 6px
}

.contact-field--small-padding-left {
	padding-left: 6px
}

.obs-message-banner {
	background: #1a1a1a;
	padding: 28px 24px;
	border-radius: 4px;
	margin-bottom: 56px;
	width: 100%
}

.obs-message-banner__message {
	color: #fff
}

.obs-message-banner__button {
	background: #fff;
	color: #1a1a1a;
	margin-top: 28px
}

.salonist_appointment .h1,
.salonist_appointment .h2,
.salonist_appointment .h3,
.salonist_appointment .h4,
.salonist_appointment .h5,
.salonist_appointment .h6,
.salonist_appointment h1,
.salonist_appointment h2,
.salonist_appointment h3,
.salonist_appointment h4,
.salonist_appointment h5,
.salonist_appointment h6 .salonist_appointment p,
.salonist_appointment div,
.salonist_appointment label,
.salonist_appointment button {
	font-family: 'Open Sans', sans-serif !important;
}

.custom-background {
	background-color: #eaedf7 !important;
}

body {
	overflow-x: hidden;
}

#main {
	padding: 0;
}

#main .entry-content {
	margin: 0;
}

button:focus {
	outline: none !important;
	border: none !important;
}

/*@font-face {
    font-family: 'Jenna Sue';
    src: url('JennaSue.woff2') format('woff2'),
        url('JennaSue.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}*/
/*container*/
.container {
	width: 100%;
	max-width: 1200px !important;
	margin: auto;
}

.staff-container {
	margin-top: 20px;
	border-top: 0px solid #d2d2d2;
}

.title-block.title-seprate {
	background: #ddd;
	padding: 12px;
	border-radius: 8px;
	-webkit-border-radius: 8px;
}

.title-block {
	font-size: 18px;
	text-transform: uppercase;
	text-align: center;
	color: #000;
	font-weight: bold;
	margin-bottom: 10px;
	margin-top: 0px !important;
}

.staff-wrap {
	/*max-height: 600px; overflow-y: auto; */
	padding: 5px;
}

.staff-wrap .staff-card {
	box-shadow: none;
	border-radius: 4px;
	padding: 10px 30px;
	cursor: pointer;
}

.staff-wrap .staff-card:hover {
	border-color: #adb1b5;
}

.staff-card .services-content {
	width: 80%;
}

.staff-name {
	font-size: 16px;
	color: #000;
	font-weight: bold;
	margin-bottom: 0px;
}

.staff-card .card-icon {
	margin-right: 0;
	background: #f0f2f4;
	-webkit-border-radius: 100px;
}

/* service card CSS*/
.service-card,
.staff-card {
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.23);
	border: 1px solid #ddd;
	-webkit-border-radius: 8px;
	width: 100%;
	display: flex;
	align-items: center;
	padding: 0px 10px;
}

.service_info {
	min-width: 40px;
	max-width: inherit;
	text-align: left;
	margin-left: 15px;
}

.staff-pic {
	position: relative;
	width: 45px;
	height: 45px;
	margin-right: 25px;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	margin-top: 5px;
	margin-bottom: 5px;
}

.staff-pic img {
	width: 45px;
	height: 45px;
	object-fit: cover;
	-webkit-border-radius: 100px;
}

.selected-staff .staff-pic::before {
	content: '';
	width: 15px;
	height: 15px;
	border: 2px solid #fff;
	border-radius: 60px;
	-webkit-border-radius: 60px;
	background: url(../images/pic-tick.png) no-repeat center;
	background-size: 15px;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 1;
}

.selected-staff .card-icon {
	background-image: url(../images/tick.png) !important;
	background-size: cover !important;
}

.services-content {
	padding-right: 15px;
}

.services-content span {
	color: #b2b2b2;
}

.card-icon {
	width: 32px;
	height: 32px;
	min-width: 32px;
	min-height: 32px;
}

/* Packages moretext CSS*/
.service-card__footer .content_desc {
	/*float: right;margin-left: 20px;*/
	margin: 10px 0 0;
	width: 100%;
	display: inline-block;
}

.service-card__footer .content_desc .moretext {
	margin-top: 25px;
	width: 100%;
}

.service-card__footer .content_desc .moretext p {
	margin-bottom: 0;
	font-size: 12px;
}

.service-card__footer .content_desc .moretext .moretext_inner {
	background: #f7f7f7;
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
	align-items: center;
	border: 1px solid#ddd;
	width: 100%;
}

.service-card__footer .content_desc .moretext .moretext_inner .acc-body {
	margin-right: 15px;
	border-right: 1px solid#ddd;
}

.service-card__footer .content_desc .moretext .moretext_inner .services-item {
	display: flex;
	border-bottom: 1px solid#ddd;
	padding: 6px 10px;
}

.service-card__footer .content_desc .moretext .moretext_inner .services-item:last-child {
	border-bottom: none;
}

.service-card__footer .content_desc .moretext .moretext_inner .services-item:nth-child(odd) {
	background: #f5f5f5;
}

.service-card__footer .content_desc .moretext .moretext_inner .services-item .services-name {
	width: 100%;
	min-width: 225px;
}

.service-card__footer .content_desc .moretext .moretext_inner .services-item .services-price {
	width: 100%;
	min-width: 110px;
	font-size: 14px;
}

.service-card__footer .content_desc .moretext .moretext_inner .services-item p {
	font-weight: 500;
}

/*Calendar CSS*/
.calendar-container {
	padding: 15px 0;
	margin-bottom: 20px;
}

.calendar-container .dflex {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0
}

/* #calendar_select{width:100%;box-shadow:0 0 10px rgba(0,0,0,0.12);-webkit-box-shadow:0 0 10px rgba(0,0,0,0.12);padding:18px;}*/
#calendar_select .ui-datepicker.ui-widget-content {
	width: 100%;
	position: static;
	border: 0
}

#calendar_select .ui-datepicker-calendar {
	width: 100%;
	text-align: center
}

#calendar_select .ui-datepicker thead,
#calendar_select .ui-datepicker th {
	background: transparent
}

#calendar_select .ui-datepicker-calendar thead th span {
	display: block;
	border: 1px solid #f2f2f2;
	border-radius: 9px;
	-webkit-border-radius: 9px;
	margin: 5px 2px;
	font-weight: 600;
	padding: 3px 6px;
	font-size: 14px;
	color: #000;
	background: #eee;
	white-space: nowrap;
}

#calendar_select .ui-datepicker td {
	background: #ffffff
}

#calendar_select .ui-widget-content .ui-state-default {
	text-decoration: none;
	background: transparent;
	color: #000;
	padding: 1px;
	display: block;
	font-size: 13px;
	font-weight: 600;
	max-width: 35px;
	margin: auto;
	height: 35px;
	line-height: 30px;
	border-radius: 50%;
	text-align: center;
}

#calendar_select .ui-widget-content .ui-state-default.ui-state-highlight,
#calendar_select .ui-widget-content .ui-state-default.ui-state-highlight.ui-state-active {
	background: #169957;
	border: 0;
	color: #fff;
}

#calendar_select .ui-widget-content .ui-state-default.ui-state-active {
	background: #FFBD00;
	border: 0;
	color: #000000;
}

#calendar_select .ui-datepicker .ui-widget-header {
	text-align: center;
	border: 0;
	background: transparent;
	padding-bottom: 5px;
	color: #000
}

#calendar_select .ui-datepicker .ui-datepicker-prev {
	float: left;
	line-height: 2.5rem;
	background: #626262;
	width: 35px;
	height: 22px;
	padding-top: 5px;
	border-radius: 25px;
}

#calendar_select .ui-datepicker .ui-datepicker-next {
	float: right;
	background: #adb1b5;
	width: 35px;
	height: 22px;
	padding-top: 5px;
	border-radius: 25px;
}

#calendar_select .ui-datepicker .ui-datepicker-prev span,
#calendar_select .ui-datepicker .ui-datepicker-next span {
	background: none;
	text-indent: 0;
	display: flex;
	justify-content: center;
}

#calendar_select .ui-datepicker-calendar tr th,
#calendar_select .ui-datepicker-calendar tr td {
	padding: 4px 8px;
	border: 1px solid#ddd;
}

#calendar_select .ui-datepicker-calendar tr th .ui-state-default,
#calendar_select .ui-datepicker-calendar tr td .ui-state-default {
	border-radius: 5px !important;
	padding: 2px 8px;
	height: 30px;
	line-height: 26px;
}


a.ui-datepicker-next:before {
	content: "\f105";
	font-family: FontAwesome;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	font-weight: normal;
	align-items: center;
	justify-content: center;
	color: white !important;
}

a.ui-datepicker-prev:before {
	content: "\f104";
	font-family: FontAwesome;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	font-weight: normal;
	align-items: center;
	justify-content: center;
	color: white !important;
}

.ui-icon-circle-triangle-e,
.ui-icon-circle-triangle-w {
	display: none !important;
}

.time-section {
	width: 100%;
	padding: 0px;
	margin-top: 24px;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 7px 5px;
}

.time-section label {
	color: #000;
	display: inline-block;
	width: 100px;
	border: 1px solid #4f4f4f;
	position: relative;
	cursor: pointer;
	margin: 0px;
	font-size: 13px;
	padding: 5px 8px;
	border-radius: 8px;
}

.time-section label input[type="radio"] {
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 3;
	opacity: 0;
	visibility: hidden;
	left: 0;
	top: 0;
}

.time-section label input[type="radio"]:checked+.check_icon {
	background: url(../images/checkwhite.svg) no-repeat center center;
	width: 100%;
	height: 100%;
	display: block;
	background-size: 16px;
	margin-top: 4px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	text-align: center;
	margin: 0 auto;
	background:
		/*#4f4f4f*/
		rgba(0, 0, 0, 0.26) !important;
}

.time-section label.active {
	background: #000;
	color: #fff;
	border-color: #000000;
}

.checkbox-group input[type="checkbox"]::after {
	left: 8px;
	top: 3px;
}

/* Designer Css*/
.m-bottom--20 {
	margin-bottom: 20px !important;
}

.spinner_wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
}

.spinner_overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(3px);
}

.spinner_container {
	position: relative;
	z-index: 10000;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.spinner_container.position-absolute {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

/* Modern Impressive Loader */
.salonist_loader {
	width: 60px;
	height: 60px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.salonist_loader::before,
.salonist_loader::after {
	content: '';
	position: absolute;
	border-radius: 50%;
	animation: pulsate 1.2s ease-out infinite;
	border: 3px solid #039be5;
	box-shadow: 0 0 15px rgba(3, 155, 229, 0.4);
}

.salonist_loader::before {
	width: 100%;
	height: 100%;
}

.salonist_loader::after {
	width: 60%;
	height: 60%;
	animation-delay: 0.3s;
}

@keyframes pulsate {
	0% {
		transform: scale(0.1);
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		transform: scale(1.2);
		opacity: 0;
	}
}

.spinner_overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.7);
	backdrop-filter: blur(4px);
	transition: all 0.3s ease;
}

.product button#myBtn {
	display: flex;
	align-items: center;
}


@-moz-keyframes spin {
	from {
		-moz-transform: rotate(0deg);
	}

	to {
		-moz-transform: rotate(360deg);
	}
}

@-webkit-keyframes spin {
	from {
		-webkit-transform: rotate(0deg);
	}

	to {
		-webkit-transform: rotate(360deg);
	}
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}


/*appointment*/
.salonist_appointment {
	max-width: 100% !important;
	height: 100%;
	margin: 0;
	padding: 20px 15px 70px;
}

.salonist_appointment .appointment-content .card {
	position: relative;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	min-width: 0;
	word-wrap: break-word;
	background-color: #fff;
	background-clip: border-box;
	border: 1px solid rgba(0, 0, 0, .125);
	border-radius: .25rem;
	padding: 10px 25px;
}

.salonist_appointment .white-card {
	background: #fff;
	border: 1px solid#ddd;
	height: 100%;
	border-radius: 8px;
	padding: 20px;
}

.salonist_appointment .white-card .customer_data input {
	width: 100%;
	border: solid 1px #e9e4e4;
	border-radius: 5px;
}

.salonist_appointment .white-card .customer_data .custom_cart {
	width: 20%;
	border-radius: 450px;
	font-size: 15px;
}

.salonist_appointment .appointment-content h3 {
	font-weight: 700 !important;
	font-size: 22px;
	line-height: 1.3;
	letter-spacing: -0.2px;
}

.salonist_appointment .service-wrap .service-card {
	padding: 5px 10px;
	background: #f5f5f5;
	box-shadow: none;
}

.salonist_appointment .service-wrap .service-card svg path {
	fill: #000;
}

.salonist_appointment .service-wrap .service-card .service-name {
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 500;
}

/*.salonist_appointment .service-wrap.disabled .service-card{opacity: 0.4;}
.salonist_appointment .service-wrap.disabled .service-card.selected-branch{opacity: 1;}*/
.salonist_appointment .appointment-content-data .card .row {
	align-items: baseline;
	display: flex;
	justify-content: space-between;
}

.modal {
	display: none;
}

.salonist_appointment .appointment-content-data .tab {
	margin-bottom: 30px;
	border-bottom: 1px solid#ddd;
	display: inline-block;
	width: 100%;
}

.salonist_appointment .appointment-content-data .tab .tabbing {
	background: transparent !important;
	padding: 10px 2px;
	margin-right: 20px;
	line-height: 1;
	border: none;
	color: #000 !important;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 500;
}

.salonist_appointment .appointment-content-data .tab .tabbing.active,
.appointment-content-data .tab .tabbing:hover {
	border-bottom: 3px solid#999 !important;
	border: none;
}

.salonist_appointment .widget-toolbar-container {
	background: #fff;
}


/*salonist service tab*/
.salonist_appointment .salonist_service_tab .salonist_services_heads_titles {
	list-style: none;
	position: relative;
	padding: 12px 0px;
	line-height: 1;
	border: none;
	color: #000 !important;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 500;
	border-bottom: 1px solid#ddd;
	margin: 0;
}

.salonist_appointment .salonist_service_tab .salonist_services_heads_titles:before {
	content: "";
	transition: .5s;
	background: url(../images/down-arrow.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: 20px;
	width: 20px;
	height: 20px;
	display: block;
	position: absolute;
	right: 0;
}

.salonist_appointment .salonist_service_tab .salonist_services_heads_titles.active {
	border-bottom: none;
}

.salonist_appointment .salonist_service_tab .salonist_services_heads_titles.active:before {
	transform: rotate(-180deg);
}

.salonist_appointment .salonist_service_tab .salonist_heads_services {
	padding: 0px 0 20px;
}



@media only screen and (min-width: 767px) {
	.row-reverse {
		flex-direction: row-reverse;
	}

	.salonist_appointment {
		display: flex;
		/*min-height: 100vh;*/
		flex-direction: column;
		justify-content: space-between;
	}

	.sidebar-sticky {
		position: sticky;
		top: 0;
		height: 80vh !important;
		overflow: auto;
	}

	.salonist_appointment .appointment-content .appointment-content-data {
		height: 80vh;
		overflow: auto;
	}
}


/*appointment booking sidebar info*/
.appointment-info .sidebar-sticky::-webkit-scrollbar-track,
.salonist_appointment .appointment-content .appointment-content-data::-webkit-scrollbar-track {
	-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
	border-radius: 10px;
	background-color: #F5F5F5;
}

.appointment-info .sidebar-sticky::-webkit-scrollbar,
.salonist_appointment .appointment-content .appointment-content-data::-webkit-scrollbar {
	width: 5px;
	background-color: #F5F5F5;
}

.appointment-info .sidebar-sticky::-webkit-scrollbar-thumb,
.salonist_appointment .appointment-content .appointment-content-data::-webkit-scrollbar-thumb {
	border-radius: 10px;
	-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
	background-color: #666;
}

.appointment-info .appointment-steps li {
	padding: 12px 0;
	border-bottom: 1px solid#ddd;
}

.appointment-info .service_detail_card {
	background: #f5f5f5;
	margin: 10px 0;
	border-radius: 5px;
	padding: 15px;
}

.appointment-info .service_detail_card .service_name {
	font-size: 16px;
	font-weight: 600;
	color: #000;
}

.appointment-info .service_detail_card .service_time {
	font-size: 14px;
	font-weight: 600;
	color: #777;
}

.appointment-info .service_detail_card .staff_name {
	font-size: 16px;
	font-weight: 600;
	color: #000;
}

.appointment-info .service_detail_card .services_data {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid#ddd;
	padding: 6px 0;
	align-items: center;
	font-size: 16px;
	color: #444;
	text-transform: capitalize;
}

.appointment-info .service_detail_card .salonist_services_satff {
	margin-bottom: 10px;
}

.appointment-info .service_detail_card .services_data .salonist_col_title {
	font-size: 16px;
	color: #000;
	margin: 0;
	font-weight: 700 !important;
	padding-right: 10px;
	white-space: nowrap;
}

.appointment-info .service_detail_card .service_val {
	text-align: right;
	font-size: 14px;
	color: #444;
	line-height: 1.2;
	display: inline-block;
}

.appointment-info .service_detail_card .services_data .price_symbol {
	display: flex;
	align-items: baseline;
	gap: 2px;
}

.appointment-info .service_detail_card .services_data .price_symbol .currency {
	font-size: 16px;
	margin: 0;
}

/*appointment calender modal*/
#myModaldata {
	max-width: 100%;
}

#calender_modal {
	width: 95%;
	top: 50%;
	transform: translateY(-50%);
	background: #fff;
	border-radius: 8px;
	padding: 0 !important;
	max-width: 775px;
	height: auto;
	margin: auto;
	max-height: 80%;
	overflow-y: overlay;
}

#calender_modal .modal-dialog {
	max-width: 100%;
	margin-block: 15px 0;
	padding-inline: 10px;
}

#calender_modal .modal-dialog .modal-content {
	border: none;
	box-shadow: none;
}

#calender_modal .modal-content .close {
	position: absolute;
	right: 20px;
	top: 0px;
	z-index: 1;
}

#calendar_select .ui-widget-content .ui-state-default.ui-state-highlight,
#calendar_select .ui-widget-content .ui-state-default.ui-state-highlight.ui-state-active {
	background: transparent !important;
	color: #000;
	border: 1px solid #c5c5c5;
}

/*Calendar form */
#calender_modal .modal-footer {
	justify-content: center;
}

#calender_modal .modal-footer button.custom_detail {
	border-radius: 48px;
	padding: 9px 23px;
	font-size: 16px;
}

#calender_modal .modal-body button.custom_detail:focus,
#calender_modal .modal-body button.custom_detail:hover {
	background: #fff;
	color: #000;
	border: solid #000 !important;
}

.time-section label:hover {
	background: #dddddd;
}

.customer_detail_form {
	background: #fff;
	border: 1px solid#ddd;
	height: 100%;
	border-radius: 8px;
	padding: 20px;
	display: inline-block;
	width: 100%;
}

.customer_detail_form .show_service_button {
	background: #000;
	color: #fff;
	padding: 9px 20px;
	display: inline-block;
	line-height: 1;
	border-radius: 32px;
	cursor: pointer;
}

.customer_detail_form #add_detail {
	margin-top: 30px;
}

.customer_detail_form #add_detail .form-group .field-data {
	margin: 7px 0 5px;
	line-height: 1;
	font-size: 15px;
}

.customer_detail_form #add_detail .form-group {
	width: 100%;
	float: none;
}

.customer_detail_form #add_detail .form-group input {
	width: 100%;
	border: 1px solid#ddd;
	font-size: 16px;
	border-radius: 32px !important;
	height: 45px;
	padding: 10px 20px;
}

.customer_detail_form #add_detail .form-group input:focus-visible {
	outline: none;
	border-color: #7a7a7a;
}

.customer_detail_form #add_detail .button.custom_cart,
.customer_detail_form #add_detail .paypal_btn {
	background: #000;
	border: solid #000 !important;
	color: #fff;
	border-radius: 48px;
	padding: 9px 23px;
	font-size: 16px;
	margin: 20px auto 20px;
	display: block;
	float: none;
}

.customer_detail_form #add_detail .button.custom_cart,
.customer_detail_form #add_detail .stripe_btn {
	background: #000;
	border: solid #000 !important;
	color: #fff;
	border-radius: 48px;
	padding: 9px 23px;
	font-size: 16px;
	margin: 20px auto 20px;
	display: block;
	float: none;
}

.customer_detail_form #add_detail .button.custom_cart:focus,
.customer_detail_form #add_detail .button.custom_cart:hover,
.customer_detail_form #add_detail .paypal_btn:focus,
.customer_detail_form #add_detail .paypal_btn:hover {
	background: #666;
	color: #fff;
	border: solid #666 !important;
}

.customer_detail_form #add_detail .full-col {
	width: 100%;
	float: left;
	margin-bottom: 20px;
}

.customer_detail_form .appointment_confirmed {
	text-align: center;
	border: 1px solid green;
	padding: 20px;
	font-size: 18px;
	color: green;
	width: 80%;
	margin: 30px auto;
}

.customer_detail_form .appointment_failure {
	text-align: center;
	border: 1px solid #ff0000;
	padding: 20px;
	font-size: 18px;
	color: #ff0000;
	width: 80%;
	margin: 30px auto;
}


@media only screen and (min-width: 767px) {
	.customer_detail_form #add_detail .half_col {
		width: 48%;
		display: inline-block;
		vertical-align: top;
	}

	.customer_detail_form #add_detail .half_col:nth-child(odd) {
		float: right;
	}

}


/*salonist-payment-m*/
.salonist-payment-m {
	display: inline-block;
	width: 100%;
	padding-left: 0;
	margin: 15px 0;
}

.salonist-payment-m li {
	list-style: none;
	display: inline-flex;
	margin-right: 15px;
}

.salonist-payment-m li input[type="radio"] {
	border: 3px solid #e6e6e6;
}

.salonist-payment-m li input[type="radio"]::after {
	left: 4px;
	top: 4px;
}

#paypal_btn {
	opacity: 0;
	visibility: hidden;
	width: 0;
	padding: 0;
}

.salonist-payment-m li .stripe-button-el {
	position: absolute;
	z-index: -0;
	width: 0;
}

.salonist-payment-m li label {
	margin-bottom: 0;
	line-height: 1.4;
}

.salonist_payment_btn {
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: center;
}

.salonist_payment_btn .button-primary {
	border-radius: 32px;
	padding: 15px 25px;
	line-height: 1;
	color: #fff !important;
	text-transform: capitalize;
	font-size: 16px;
	background: #000 !important;
}

.salonist_payment_btn .button-primary:hover {
	border: 3px solid #000;
	color: #fff !important;
	background: #000 !important;
}

.row.common_div.coupon_div {
	margin-bottom: 20px;
}


/*responsive*/
@media only screen and (max-width: 1023px) {
	.salonist_appointment #calender_modal {
		width: 95%;
	}

	.service-card__footer .content_desc .moretext .moretext_inner .services-item {
		display: block;
	}

	.service-card__footer .content_desc .moretext .moretext_inner {
		display: block;
	}

	.service-card__footer .content_desc .moretext .moretext_inner .acc-body {
		margin-right: 0;
		border-right: none;
	}

	.service-card__footer .content_desc .moretext .moretext_inner .services-item .services-name {
		padding: 0;
	}

	.service-card__footer .content_desc .moretext p {
		padding: 9px 10px;
	}

	/*gift card design*/
	.salonist_gifts_container .tab-menu ul {
		flex-wrap: wrap;
	}

	.salonist_gifts_container .all-templates label {
		width: 49% !important;
	}

	p.back_to_btn {
		text-align: center;
	}


}

@media (min-width: 768px) and (max-width: 1023px) {
	.salonist_appointment .white-card {
		padding: 10px;
	}

	.appointment-info .appointment-steps .sidebar-section-title {
		font-size: 18px;
	}

	.salonist_appointment section.row .col-md-8 {
		-ms-flex: 0 0 64%;
		flex: 0 0 64%;
		max-width: 64%;
	}

	.salonist_appointment section.row .col-md-4 {
		-ms-flex: 0 0 36%;
		flex: 0 0 36%;
		max-width: 36%;
	}

	.form-bordered {
		margin-left: 10px;
	}
}

@media only screen and (max-width: 767px) {
	.salonist_appointment section.row {
		display: block;
	}

	.salonist_appointment section.container {
		padding: 0;
	}

	.salonist_appointment .appointment-info {
		margin-top: 30px;
	}

	.salonist_appointment .appointment-content .card {
		padding: 20px 15px;
	}

	.salonist_appointment .white-card {
		padding: 12px !important;
		height: auto !important;
		width: 100% !important;
		margin: auto !important;
		overflow: auto !important;
	}

	.salonist_appointment .back-to-location {
		margin-bottom: 0 !important;
		float: none !important;
	}

	.salonist_appointment .appointment-content-data .tab {
		display: flex !important;
	}

	.salonist_appointment .appointment-content-data .tab .tabbing {
		font-size: 14px;
		padding: 20px 5px !important;
	}

	.salonist_appointment .customer_detail_form {
		height: auto !important;
	}

	#calender_modal .timeframe .time-section label {
		width: 90px;
		margin: 4px;
		padding: 5px 4px;
	}

	.form-bordered .col-xs-12.col-md-4 {
		padding: 15px !important;
	}

	.salonist_appointment .service-wrap .service-card .service-name {
		font-size: 14px !important;
	}

	.customer_detail_form #add_detail .coupon-code-group {
		margin: 0 auto 20px;
	}

}

#rzp-button1,
.form-bordered .salonist_payment_btn .button,
.payment_page .modal-dialog .btn_wiz_pop_pay {
	background: #000;
	border: solid #000 !important;
	color: #fff;
	border-radius: 32px;
	padding: 15px 25px;
	font-size: 16px;
	margin: 20px auto 20px;
	display: block;
	float: none;
}

.salonist_heads_services .service-card__footer:not(html[dir="rtl"] .salonist_heads_services .service-card__footer) {
	direction: rtl !important;
	text-align: left !important;
}

/*gift card design*/

.salonist_gifts_container {
	max-width: 100% !important;
}

.salonist_gifts_container .row {
	text-align: center;
}

.salonist_gifts_container .row>div {
	padding: 0;
}

.salonist_gifts_container h1 {
	text-align: center;
	font-size: 52px;
	text-transform: capitalize;
}

.salonist_gifts_container .tab-menu ul {
	display: flex;
	list-style: none;
	justify-content: center;
	padding: 0;
}

.salonist_gifts_container .tab-menu ul button {
	background: #fff !important;
	border: 1px solid #D3D2D6 !important;
	-webkit-border-radius: 50px;
	padding: 10px 20px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1;
	margin: 8px 5px;
	color: #4f4f4f !important;
}

.salonist_gifts_container .tab-menu ul button:hover {
	background: #0f0e0e !important;
	color: #fff !important;
}

.salonist_gifts_container .tab-menu ul button.tab-a.active-a {
	color: #000;
	text-decoration: none;
}

.salonist_gifts_container .tab-menu ul button:hover a {
	color: #fff !important;
	text-decoration: none;
}

.salonist_gifts_container .all-templates label img,
.card-template img {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15);
	-webkit-box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15);
}

.salonist_gifts_container .all-templates label {
	width: 32.3333%;
	display: inline-block;
	padding: 10px;
	margin: 0;
	border: 0;
	cursor: pointer;
}

.salonist_gifts .all-templates {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

input:focus {
	outline: none !IMPORTANT;
}

.payment_page .transactions {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1000;
	background-color: #00000080;
}

.payment_page .modal-dialog button.close {
	margin: 0 !IMPORTANT;
	background: none;
	color: #000;
	opacity: 1;
}

.payment_page .modal-dialog .form-group input {
	width: 100%;
}

.payment_page .modal-dialog .form-group p.field-data {
	margin-bottom: 0;
}

.payment_page .modal-dialog .salonist-payment-m input:focus {
	outline: none !IMPORTANT;
}

.payment_page .transactions .modal-header {
	flex-direction: row-reverse;
	align-items: center;
}

.payment_page span.error {
	border: none !important;
}

.form-bordered {
	margin-bottom: 25px;
}

.form-bordered .whitebox {
	background: #fff;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	padding: 15px;
	height: 100%;
}

.form-bordered .input-xlarge,
.payment_page .modal-dialog .form-group input {
	height: 46px !important;
	border: 1px solid #E0E0E0;
	-webkit-border-radius: 5px;
	padding-left: 20px !important;
	padding-right: 20px !important;
	margin: 0;
}

.form-bordered .input-group input.form-control+.input-group-addon {
	width: 38px;
	background: #F5F5F5;
	border-radius: 0 5px 5px 0;
	border: solid 1px #d2d6de;
	text-align: center;
	color: #555;
}

.form-bordered textarea.input-xlarge {
	height: 68px !IMPORTANT;
}

.form-bordered h3 {
	font-size: 18px;
}

.form-bordered h2 {
	font-size: 24px;
}

.form-bordered label.error {
	border: none;
}

.form-bordered .error {
	border: solid 1px red;
	color: red;
}

p.back_to_btn {
	margin: 0 0 8px 13px !important;
}

p.back_to_btn a.link {
	color: #000;
}

.amount label.large-text {
	margin-bottom: 0;
}

.form-bordered .form-group.amount div {
	display: flex;
	align-items: baseline;
}

.customer_detail_form #add_detail .half_col .error {
	position: static;
	font-size: 12px;
	color: #f00;
}

.customer_detail_form #add_detail .half_col {
	position: relative;
}

.svelte-1w9o673 {
	margin-top: 0 !important;
}

iframe.razorpay-checkout-frame {
	max-height: 100% !important;
}

button.save-btn {
	font-size: 14px;
	border-radius: 24px;
	padding: 7px 16px;
	border-color: #000;
}

@media(min-width:767px) {
	section.salnist_gift_card_template {
		padding: 0;
		max-width: 1329px !important;
	}

	.form-bordered .col-xs-12.col-md-4 {
		padding-left: 0;
	}
}


.customer_detail_form #add_detail .salonist_payment_btn #paytab-button {
	background: #000;
	border: solid #000 !important;
	color: #fff;
	border-radius: 48px;
	padding: 9px 23px;
	font-size: 16px;
	margin: 20px auto 20px;
	display: block;
	float: none;
}

.customer_detail_form #add_detail .salonist_payment_btn #paytab-button:hover,
.customer_detail_form #add_detail .salonist_payment_btn #paytab-button:focus {
	background: #666;
	color: #fff;
	border: solid #666 !important;
}

.apply_coupon_btn {
	width: 100%;
	border: 1px solid #ddd !important;
	font-size: 16px !important;
	border-radius: 32px !important;
	height: 45px;
	padding: 10px 20px !important;
	background: gray !important;
}

.apply_coupon_btn:hover {
	background: black !important;
}

.coupon_error {
	margin-top: 5px;
	font-size: 14px;
	color: #f00;
}

.salonist_gifts_container .tab-menu ul li.tab-a.active button {
	background: #000 !important;
	color: #fff !important;
}

.salonist_appointment .back-to-location {
	padding: 10px 25px !important;
	border-radius: 20px;
	line-height: 1;
	margin-bottom: -30px;
	display: block;
	background: #000 !important;
	color: #fff !important;
	border: 1px solid#000;
	float: right;
	position: relative;
	z-index: 1;
}

.salonist_appointment .back-to-location:hover {
	background: #666 !important;
	color: #fff !important;
}

.salonist_appointment .calendar-container #calender_ttle {
	text-align: center;
	margin-bottom: 25px;
	font-size: 26px;
	font-weight: 800;
	line-height: 1.2;
}

.salonist_appointment .service-wrap .service-card.selected-branch svg path {
	fill: #fff;
}

.salonist_appointment .service-wrap .service-card.selected-branch {
	color: #fff;
}


.customer_detail_form .appointment_confirmed.error {
	border-color: #f00;
	color: #f00;
}


html[dir="rtl"] .salonist_appointment .appointment-content-data .tab {
	text-align: end;
}

html[dir="rtl"] .salonist_appointment .salonist_service_tab .salonist_services_heads_titles:before {
	right: auto;
	left: 0;
}

html[dir="rtl"] .appointment-info .service_detail_card .services_data:first-child .service_val {
	text-align: left;
	padding-right: 10px;
}

html[dir="rtl"] .customer_detail_form #add_detail .form-group input {
	text-align: right;
}

.customer_detail_form #add_detail .form-group {
	padding-inline: 10px;
}

.customer_detail_form #add_detail .coupon-code-group .col-sm-4,
.customer_detail_form #add_detail .coupon-code-group .col-sm-3 {
	padding-right: 0;
}

.customer_detail_form #add_detail .coupon-code-group {
	padding-right: 0;
}

.customer_detail_form ul.salonist-payment-m {
	padding-right: 0;
}

.customer_detail_form ul.salonist-payment-m li.customer_payment_method {
	gap: 5px;
	align-items: center;
	margin-top: 10px;
}

.salonist_appointment .appointment-content-data button.moreless-button {
	font-size: 14px;
	margin-left: 7px;
	text-decoration: underline;
}

.salonist_appointment section.row.row-reverse {
	padding: 0 0 80px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: -15px;
	margin-left: -15px;
}

.appointment-info .service_detail_card .services_data {
	align-items: baseline;
}

.customer_detail_form button#apply_coupon {
	width: auto;
}

div .salonist_appointment {
	padding: 0;
	width: 100%;
}

.salonist_appointment section.container {
	padding: 0;
	max-width: 100%;
}

.salonist_appointment .widget-toolbar-container {
	border-top: 1px solid #e7e7e7;
	box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.salonist_appointment .appointment-content ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

div.modal-backdrop {
	background: #000000cf;
	z-index: 998;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.modal-content .close {
	width: 38px;
	height: 38px;
	background: #dbb1ab;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	opacity: 1;
	border-radius: 50%;
	padding-left: 1px;
	border: 1px solid #dbb1ab;
	font-size: 24px;
	right: 10px !important;
	top: 10px !important;
	cursor: pointer;
	font-weight: 600;
}

.customer_detail_form #add_detail .form-group .field-data {
	margin: 7px 0 10px;
}

.service-card__footer {
	width: 100%;
}

.moretext {
	width: 100%;
	margin-block: 15px;
	overflow-x: overlay;
	overflow-y: visible;
}

.salonist_appointment .service-wrap .service-card {
	cursor: pointer;
	margin-bottom: 10px;
}

.salonist_appointment .col-md-8,
.salonist_appointment .col.col-md-4 {
	width: 100%;
}

@media only screen and (min-width: 767px) {
	.salonist_appointment .col-md-8 {
		width: 66.66666667%;
		padding-inline: 15px;
	}

	.salonist_appointment .col.col-md-4 {
		width: 33.33333333%;
		padding-inline: 15px;
	}

}

@media only screen and (max-width: 600px) {
	.salonist_appointment section.row.row-reverse .appointment-content {
		width: 100%;
	}

	.salonist_appointment .white-card div#calender_ttle {
		font-size: 20px !important;
	}

	body.page-id-2476 section#wrap-page,
	body.page-id-2466 section#wrap-page {
		padding-inline: 0;
	}

	#calendar_select .ui-datepicker-calendar tr th,
	#calendar_select .ui-datepicker-calendar tr td {
		padding: 4px 0;
	}

	.customer_detail_form #add_detail .form-group {
		padding-inline: 0px;
	}

	.staff-wrap .staff-card {
		padding: 10px
	}

	.modal-content .close {
		right: 0 !important;
		top: 0 !important;
	}

	.salonist_appointment .appointment-content-data .card .row .col.col-10 {
		width: 80%;
	}

	.service-card__button {
		font-size: 13px;
	}

	.salonist_appointment .appointment-content-data .card .row {
		justify-content: space-between;
	}

	.salonist_appointment .appointment-content-data .card .row .col-2 {
		width: 20%;
	}

	.service-card__footer .content_desc .moretext {
		font-size: 14px;
	}

	.salonist_appointment section.row.row-reverse .customer-data {
		order: 1;
		margin-top: 30px;
		margin-bottom: 60px;
	}

	.salonist_appointment section.row.row-reverse .customer-data+.appointment-info .white-card {
		max-height: 380px !important;
	}

	.widget-reservation-services .checkbox-group {
		text-align: right;
	}


}