/*Booking form styling*/
.vvibkg-container {
    margin: 3vh 0;
	font-family: var(--e-global-typography-primary-font-family), Sans-serif;
}

.vvibkg-section.vvibkg-fields {
    display: flex;
    flex-direction: column;
    padding: 2vh 0;
}

.vvibkg-section.vvibkg-fields input[type=number] {
	max-width: 5vw;
}

.vvibkg-section.vvibkg-fields input[type=checkbox] {
	width: 1.5vw;
    height: 1.5vw;
	accent-color: #A52846;
}

.vvibkg-section.vvibkg-fields .vvibkg-guest-number {
    font-weight: 700;
}

.vvibkg-section.vvibkg-fields .vvibkg-guest-number:not(:first-child) {
    margin: 3vh 0 0;
}

.vvibkg-section.vvibkg-buttons {
	display: flex;
    flex-direction: row;
    column-gap: 3vw;    
	padding: 3vh 0 4.5vh;
}

.vvibkg-section.vvibkg-review p.vvibkg-review-title{
    margin-bottom: 0;
    margin-top: 3vh;
    font-weight: 700;
}

.vvibkg-section.vvibkg-review-suggestions{
	margin-top: 7vh;
}

.vvibkg-section.vvibkg-review-suggestions p{
	margin: 0;
	padding: 0;
	font-size: var(--e-global-typography-text-font-size);
}

.vvibkg-section.vvibkg-fields input.vvibkg-required-error, .vvibkg-section.vvibkg-fields input.vvibkg-wrong-error{
	border-color:red;
}

.vvibkg-section.vvibkg-fields label.vvibkg-required-label-error::after {
    content: " - Please fill out this field";
    color: red;
}

.vvibkg-section.vvibkg-fields label.vvibkg-max-label-error::after {
    content: " - Number of guests exceeds availability";
    color: red;
}

.vvibkg-section.vvibkg-fields label.vvibkg-wrong-label-error::after {
    content: " - Please check this field";
    color: red;
}


.vvibkg-container {
    font-family: var(--e-global-typography-text-font-family), sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
}

.vvibkg-section.vvibkg-fields label:not(:first-child) {
    margin-top: 2vw;
}

.vvibkg-section.vvibkg-fields label {
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
    color: var(--e-global-color-secondary);
}

.vvibkg-section.vvibkg-fields input {
    background-color: #FFFFFF00;
    border-width: 0px 0px 1px 0px;
    border-radius: 0;
    border-color: black;
    color: var(--e-global-color-d7ac311);
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
}

.vvibkg-section.vvibkg-fields input:focus {
    outline: 1px solid #e1e1e1;
}

button.button.primary-button.vvibkg-next-step-submit,
button.button.primary-button.vvibkg-previous-step-submit{
    font-family: var(--e-global-typography-11f8e6c-font-family), Sans-serif;
    font-size: var(--e-global-typography-11f8e6c-font-size);
    font-weight: var(--e-global-typography-11f8e6c-font-weight);
    text-transform: var(--e-global-typography-11f8e6c-text-transform);
    letter-spacing: var(--e-global-typography-11f8e6c-letter-spacing);
    padding: 0.7vw 1.5vw 0.7vw 1.5vw;
}

button.button.primary-button.vvibkg-next-step-submit {
    background-color: var( --e-global-color-accent );
    fill: var(--e-global-color-text);
    color: var(--e-global-color-text);
    border: none;
}

button.button.primary-button.vvibkg-next-step-submit:hover {
    background-color: var(--e-global-color-0e1b250);
}

button.button.primary-button.vvibkg-previous-step-submit {
    background-color: white;
    fill: var(--e-global-color-text);
    color: var(--e-global-color-accent);
    box-shadow: inset 0px 0px 0px 1px var(--e-global-color-accent);
	border: none;
}

button.button.primary-button.vvibkg-previous-step-submit:hover {
    background: var(--e-global-color-accent);
    color: white;
}

.vvibkg-section.vvibkg-titles h5 {
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
    color: var(--e-global-color-d7ac311);
}

.vvibkg-section.vvibkg-titles h3 {
    font-family: var(--e-global-typography-11f8e6c-font-family), Sans-serif;
    font-size: var(--e-global-typography-11f8e6c-font-size);
    font-weight: var(--e-global-typography-11f8e6c-font-weight);
    text-transform: var(--e-global-typography-11f8e6c-text-transform);
    letter-spacing: var(--e-global-typography-11f8e6c-letter-spacing);
    color: var(--e-global-color-d7ac311);
}

.vvibkg-section.vvibkg-titles p.vvibkg-secondary-description {
    font-weight: 700;
    margin-top: 4vh;
    margin-bottom: 0.5vh;
}

.vvibkg-section.vvibkg-titles p.vvibkg-tertiary-description {
    font-size: 0.80em;
    line-height: 1.35em;
}

.vvibkg-section.vvibkg-fields .vvibkg-checkbox label {
    color: black;
    margin: 0;
}

.vvibkg-checkbox {
    display: flex;
    align-items: center;
    column-gap: 1vw;
    margin-top: 2vw;
}

input[readonly] {
    font-style: italic;
    opacity: 0.6;
    pointer-events: none;
}

.vvibkg-errors {
    min-height:25px;
	font-weight: 700;
    color: #A52846;
}

.vvibkg-loader{
	display: flex;
	justify-content: center;
	align-items: center;
}

/*loader css*/
.lds-ellipsis {
  /* change color here */
  color: #A52846
}
.lds-ellipsis,
.lds-ellipsis div {
  box-sizing: border-box;
}
.lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
  margin-left: 20px;
}
.lds-ellipsis div {
  position: absolute;
  top: 33.33333px;
  width: 13.33333px;
  height: 13.33333px;
  border-radius: 50%;
  background: currentColor;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}


@media only screen and (max-width: 1024px) and (min-width: 768px) {
	
  	button.button.primary-button.vvibkg-next-step-submit,
	button.button.primary-button.vvibkg-previous-step-submit{
    	padding: 1vw 3vw 1vw 3vw;
	}
	
	.vvibkg-section.vvibkg-fields input[type=number] {
		max-width: 15vw;
	}
	
	.vvibkg-section.vvibkg-fields input[type=checkbox] {
		width: 2.5vw;
		height: 2.5vw;
	}
	
	.vvibkg-checkbox {
		margin-top: 4vw;
	}
}

@media only screen and (max-width: 767px) {
	
  	button.button.primary-button.vvibkg-next-step-submit,
	button.button.primary-button.vvibkg-previous-step-submit{
    	padding: 2vw 5vw 2vw 5vw;
	}
	
	.vvibkg-section.vvibkg-fields input[type=number] {
		max-width: 30vw;
	}
	
	.vvibkg-section.vvibkg-fields input[type=checkbox] {
		width: 10vw;
		height: 10vw;
	}
	
	.vvibkg-checkbox {
		column-gap: 4vw;
		margin-top: 6vw;
	}
	
}
