/*** FONTS ***/

@font-face {

  font-family: 'Vision Regular';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Regular'), url('/Assets/fonts/Vision.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Italic';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Italic'), url('/Assets/fonts/Vision-Regular italic.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Thin Italic';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Thin Italic'), url('/Assets/fonts/Vision-Thin italic.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Thin';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Thin'), url('/Assets/fonts/Vision-Thin.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Light';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Light'), url('/Assets/fonts/Vision-Light.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Light Italic';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Light Italic'), url('/Assets/fonts/Vision-LightItalic.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Bold';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Bold'), url('/Assets/fonts/Vision-Bold.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Bold Italic';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Bold Italic'), url('/Assets/fonts/Vision-BoldItalic.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Black Italic';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Black Italic'), url('/Assets/fonts/Vision-Black italic.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Heavy';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Heavy'), url('/Assets/fonts/Vision-Heavy.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Heavy Italic';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Heavy Italic'), url('/Assets/fonts/Vision-HeavyItalic.woff') format('woff');

  }

  



  @font-face {

  font-family: 'Vision Black';

  font-style: normal;

  font-weight: normal;

  src: local('Vision Black'), url('/Assets/fonts/Vision-Black.woff') format('woff');

  }

  

/*** GENERAL ***/

html {

  scroll-behavior: smooth;

  overflow-x:hidden;

  width:100vw;

}

#front_body {

  font-family: 'Vision Regular', sans-serif;

  color:#A3A3A3;

  background:#FFFFFF;

  overflow-x:hidden;

  width:100vw;

}

#front_body h1, h2, h3 {

  font-family: "Ovo", serif;

}

h2 {

  color:#8C6446;

}



/*** BTNS ***/

.btn-round {

  border-radius:100px;

  border:0!important;

  box-shadow:none!important;

  padding:.8em 1.5em!important;

  font-family: 'Vision Regular', sans-serif!important;

  text-transform:none!important;

  transition:all .3s ease;

  background:#FFFFFF;

}

.btn-round.btn-light {

  color:#73c1ca!important;

}

.btn-round.btn-light:hover {

  color:#FFFFFF!important;

  background:#244975!important;

}

.btn-round.btn-aquablue {

  color:#FFFFFF!important;

  background:#73c1ca!important;

  border:1px solid #73c1ca!important;

}

.btn-round.btn-aquablue:hover {

  color:#73c1ca!important;

  background:#FFFFFF!important;

}



/*** INTRO ***/

.intro-block {

  display: flex;

  flex-direction: column;

  align-items: center;

  justify-content: center;

  background-size: cover;

  width:100%;

}

#intro_escaperoom {

  height:100vh;

}

.parallax{ 

  height: 100vh;

  padding-bottom: 50px;

  padding-top: 50px; 

  width:100%;

  justify-content: center;

  align-items: center;

  display: flex;

}

.parallax video,

.parallax > img{ 

  min-width: 100%;

  position: fixed;

  top:0;

  z-index: -999;

  min-height: 100%;

}

.intro-block .intro-inner {

  max-width:600px;

  margin:0 auto;

  text-align:center;

  color:#FFFFFF;

  padding:1em;

  position: relative;

}

.intro-block .intro-inner > * {

  position: relative;

  z-index:2;

}

.intro-block h1 {

  font-size:4em;

  line-height: 1em;

  margin-bottom: .5em;

}

.intro-block .intro-inner::before {

  content:"";

  display: block;

  position: absolute;

  height:150%;

  width:150%;

  border-radius:50%;

  filter: blur(150px);

  opacity: .8;

  z-index:1;

  top: -25%;

  left:-25%;

}

#intro_escaperoom .intro-inner::before {

  background:#000000;

}

.intro-block .tripadvisor-block {

  position:absolute;

  bottom:1em;

  right:1em;

  display: flex;

  z-index: 3;

}

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

  #intro_escaperoom .parallax {

    align-items: flex-start;

  }

  #intro_escaperoom .intro-inner {

    margin-top: 90px;

  }

  .intro-block h1 {

    font-size:3em;

  }

  .intro-block .tripadvisor-block img {

    width:70px;

  }

}



/*** AFFAIRES ***/

#affaires {

  background: url('/Assets/img/front/steps.svg') no-repeat top right #FFFFFF;

  background-size:400px 500px;

}

#affaires .card {

  border-radius:10px;

  box-shadow: 0 0 20px rgba(0,0,0,.2);

  z-index: 3;

}

#affaires .card .right-block {

  padding:2em 2em 3em;

  max-width: 450px;

  margin: 0 auto;

}

#affaires .card .left-block {

  display: flex;

  align-items:flex-end;

  justify-content:center;

  position:relative;

  overflow: hidden;

  height:100%;

  border-radius:10px 0 0 10px;

}

#affaires .card .left-block .inner-content {

  position:relative;

  z-index:3;

  padding:2em;

}

#affaires .card .left-block .bg-img {

  z-index:1;

  position:absolute;
  
  top:0;

  min-width: 100%;

  min-height: 100%;

  object-fit:cover;

  width:100%;

}

#affaires .card .left-block::after {

  content:"";

  z-index:2;

  position:absolute;

  display: block;

  bottom:0;

  width:100%;

  height:100%;

  background:linear-gradient(rgba(0,0,0,0), rgba(0,0,0,1));

}

#affaires .card .left-block .flag {

  z-index:4;

  position:absolute;

  background:#73c1ca;

  font-family: "Open Sans Condensed", sans-serif;

  color:#FFFFFF;

  padding:.5em 1em;

  width: 210px;

  text-transform: uppercase;

  transform: rotate(-25deg);

  top: 7px;

  left: -20px;

}

#affaires .right-block .options {

  display: flex;

  justify-content: space-between;

}

#affaires .right-block .options .stars {

  display: flex;

  margin-left:1em;

  color:#8C6446;

}

#affaires .right-block .options .difficulty {

  display: flex;

}



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

  #affaires .card .left-block {

    border-radius:10px 10px 0 0;

  }

}



/*** RESERVATION ***/



.booking-block {

  background: url('/Assets/img/front/bg-grey.jpg') no-repeat center center;

  background-size: cover;

  position: relative;

}

#booking_escape {

  padding:4em 1em 10em;

  margin-top: -4em;

}

#booking_kdo {

  padding:4em 1em;

}

#booking_escape::before {

  content:"";

  background:url('/Assets/img/front/credence-960.png') no-repeat;

  background-position: cover;

  position: absolute;

  width: calc(100% - 10%);

  height:435px;

  left: 5%;

  opacity: .7;

  top: 20%;

  z-index:1;

}

.booking-block #wizard_escape {

  background:#FFFFFF;

  border-radius:10px;

  box-shadow: 0 0 20px rgba(0,0,0,.2);

  position: relative;

  z-index:2;

}

.booking-block #wizard_escape .tab-pane {

  padding:2em 2em 1em 2em;

  max-width:900px;

  margin:0 auto;

  /* min-height:452px; */

}

#booking_escape_title {

  position: relative;

}

#booking_escape_title::before {

  content:"";

  background:url('/Assets/img/front/fingerprint.png') no-repeat;

  transform: rotate(45deg);

  position: absolute;

  width:77px;

  height:107px;

  left: 20%;

  opacity: .3;

  top: -.5em;

}



/* WIZARD */

.booking-block #wizard_escape .nav-container {

  box-shadow:0 5px 5px #e0e0e0;

  position: relative;

}

.booking-block #wizard_escape .nav::before {

  content: "";

  display: block;

  width: 81%;

  border-bottom: 3px dotted #D2D2D2;

  position: absolute;

  top: 3em;

  z-index: 1;

  background: none !important;

  left: 3em;

  transition: all .3s ease;

}

.booking-block #wizard_escape .nav {

  display: flex;

  max-width: 500px;

  padding: 1em 2em;

  margin:0 auto;

  justify-content: space-between;

  position:relative;

}

.booking-block #wizard_escape .nav li {

  position:relative;

  z-index:2;

  width: 40px;

}

.booking-block #wizard_escape .nav-link {

  display: flex;

  flex-direction: column;

  align-items:center;

  font-weight: 700;

  text-transform: uppercase;

  font-size:.9em;

  color:#8C6446;

}

.booking-block #wizard_escape .nav-link.inactive:hover {

  cursor:not-allowed;

}

.booking-block #wizard_escape .nav-link.inactive.done:hover {

  cursor: pointer;

}

.booking-block #wizard_escape .nav-link.active:hover {

  cursor: default;

}

.booking-block #wizard_escape .nav-link span {

  margin-top:1em;

}

.booking-block #wizard_escape .nav-link::before {

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background: #8C6446;

  color: #FFFFFF;

  width: 48px;

  height: 48px;

  font-family: "Ovo", serif;

}

.booking-block #wizard_escape .nav-link::after {

  display: none;

}

.booking-block #wizard_escape .nav-link.active,

.booking-block #wizard_escape .nav-link.active span {

  color:#8C6446;

}

.booking-block #wizard_escape .nav-link.inactive::before {

  background-color:#fff;

	color:#8C6446;

	border:2px solid #8C6446;

}

.booking-block #wizard_escape .nav-link.inactive.done::before {

  background-color:#A3A3A3;

  border:2px solid #A3A3A3;

  color:#FFF!important;

}

.booking-block #wizard_escape .nav-link.active::before {

  background-color:#8C6446;

  color: #FFFFFF;

}

.booking-block #wizard_escape .nav-link.done {

  color:#A3A3A3!important;

}

.booking-block #wizard_escape .nav::before {

  background-color:#e0e0e0;

}

/* Steps */

.booking-block #wizard_escape .nav-item:nth-child(1) .nav-link::before {

  content:"1";

}

.booking-block #wizard_escape .nav-item:nth-child(2) .nav-link::before {

  content:"2";

}

.booking-block #wizard_escape .nav-item:nth-child(3) .nav-link::before {

  content:"3";

}

.booking-block #wizard_escape .nav-item:nth-child(4) .nav-link::before {

  content:"4";

}



/*** STEP 1 ***/

.booking-block #wizard_escape .block-check {

  width: 100%;

}

@media screen and (min-width:767.98px) {

  .booking-block #wizard_escape .block-check {

    width: calc(50% - 1em);

    margin-right: 1em;

  }

}

.booking-block #wizard_escape .block-check label {

  background:#FFFFFF;

  border-radius:10px;

  position:relative;

  padding:1em;

  color:#A3A3A3;

  margin-bottom: 1em;

  border:1px solid #D2D2D2;

  display: flex;

  flex-direction: column;

  text-align: center;

  transition: all .3s ease;

}

.booking-block #wizard_escape .block-check input:checked + label .active,

.booking-block #wizard_escape .block-check input:not(:checked) + label .inactive {

  display:block

}

.booking-block #wizard_escape .block-check input:checked + label .inactive,

.booking-block #wizard_escape .block-check input:not(:checked) + label .active {

  display:none

}

.booking-block #wizard_escape .block-check label:hover {

  cursor:pointer;

}

.booking-block #wizard_escape .block-check input:checked + label  {

  background:#244975;

  color:#FFFFFF;

  border:1px solid #244975;

}

.booking-block #wizard_escape .block-check label i {

  display: none;

}

.booking-block #wizard_escape .block-check input:checked + label i {

  display: block;

  position:absolute;

  top:1em;

  left:1em;

}

#affaires svg {

  fill: #FFFFFF;

}

.booking-block #wizard_escape .block-check svg {

  margin:0 auto .5em;

}

.booking-block #wizard_escape .block-check input + label > svg {

  fill: #244975;

}

.booking-block #wizard_escape .block-check input:checked + label > svg {

  fill: #FFFFFF;

}

.booking-block #wizard_escape .block-check label img {

  margin:0 auto .5em;

}

.booking-block #wizard_escape .block-check input {

  display: none;

}

.booking-block #wizard_escape .radio-block {

  display: flex;

  flex-wrap:wrap;

}

.booking-block #wizard_escape .radio-block label {

  margin:0 1em 1em 0;

  padding:.5em 2em;

  border:1px solid #D2D2D2;

  border-radius:50px;

  color:#A3A3A3;

  transition: all .3s ease;

  width: 110px;

}

.booking-block #wizard_escape .radio-block label:hover {

  cursor:pointer;

}

.booking-block #wizard_escape .radio-block input:checked + label {

  background:#244975;

  color:#FFFFFF;

  border:1px solid #244975;

}

.booking-block #wizard_escape .radio-block input {

  display: none;

}

.booking-block #wizard_escape .radio-block > * {

  position:relative;

}

.booking-block #wizard_escape .radio-block i {

  display: none;

}

.booking-block #wizard_escape .radio-block input:checked + label i {

  display: block;

  position:absolute;

  top:1em;

  left:1em;

  font-size:.8em;

}

.booking-block #wizard_escape .radio-block input:disabled + label {

  border:1px solid #D2D2D2;

  background:#D2D2D2;

  color:#A3A3A3;

}

.booking-block #wizard_escape .parts-block i {

  margin:0 2px;

}

.booking-block #wizard_escape .parts-block input:checked + label {

  color:#244975

}

.booking-block #wizard_escape .parts-block label {

  transition: all .3s ease;

}

.booking-block #wizard_escape .parts-block label:hover {

  cursor:pointer;

}

.booking-block #wizard_escape input[type="date"] {

  border:1px solid #D2D2D2;

  padding:.5em 0 .5em 3em;

  color:#A3A3A3;

  border-radius:50px;

  -webkit-appearance: textfield;

  -moz-appearance: textfield;

  height: 42px;

  width: 180px;

  background-color: #FFFFFF;

}

.booking-block #wizard_escape input[type="date"]:hover {

  cursor:pointer;

}

.booking-block #wizard_escape .date-block {

  position:relative;

}

.booking-block #wizard_escape .date-block::before {

  content:"\f073";

  font-family: "Font Awesome 5 Free";

  color:#244975;

  position:absolute;

  top:10px;

  left:20px;

}

.booking-block #wizard_escape .toolbar {

  display: flex;

  justify-content: center;

  padding-bottom:2em;

}

.booking-block #wizard_escape .toolbar button {

  background:#73c1ca;

  border:1px solid #73c1ca;

  border-radius:50px;

  padding:.5em 2em;

}

.toolbar .btn.sw-btn-next.disabled {

  display: none!important;

}



/*** STEP 3 ***/

.booking-block #wizard_escape .price-block {

  background: #244975;

  color:#FFFFFF;

  text-transform: uppercase;

  padding:.5em 1em;

  border-radius: 10px;

  margin:1em auto;

  align-items: center;

}

.booking-block #wizard_escape .cgv-block,

.booking-block #wizard_escape .price-block {

  max-width:500px;

  display: flex;

  justify-content: center;

}

.booking-block #wizard_escape .cgv-block {

  margin:0 auto;

}

.booking-block #wizard_escape .price-block #recap_old_price {

  font-size:.9em;

  font-weight: bold;

  position: relative;

}

.booking-block #wizard_escape .price-block #recap_old_price::before {

  position: absolute;

  content: "";

  left: 0;

  top: 50%;

  right: 0;

  border-top: 2px solid;

  border-color: inherit;

  transform:rotate(-25deg);

}

.booking-block #wizard_escape .price-block #recap_new_price {

  color:#73c1ca;

  font-weight: bold;

}

.booking-block #wizard_escape #step-4 {

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-direction: column;

}



/* Masquer le countdown */

.countdown {

  display: none;

}



/*** STEP 4 ***/

.f-modal-alert .f-modal-icon {

  border-radius: 50%;

  border: 4px solid gray;

  box-sizing: content-box;

  height: 80px;

  margin: 20px auto;

  padding: 0;

  position: relative;

  width: 80px;

}

.f-modal-alert .f-modal-icon.f-modal-success, .f-modal-alert .f-modal-icon.f-modal-error {

  border-color: #73c1ca;

}

.f-modal-alert .f-modal-icon.f-modal-success:after, .f-modal-alert .f-modal-icon.f-modal-success:before, .f-modal-alert .f-modal-icon.f-modal-error:after, .f-modal-alert .f-modal-icon.f-modal-error:before {

  background: #fff;

  content: "";

  height: 120px;

  position: absolute;

  transform: rotate(45deg);

  width: 60px;

}

.f-modal-alert .f-modal-icon.f-modal-success:before, .f-modal-alert .f-modal-icon.f-modal-error:before {

  border-radius: 120px 0 0 120px;

  left: -33px;

  top: -7px;

  transform-origin: 60px 60px;

  transform: rotate(-45deg);

}

.f-modal-alert .f-modal-icon.f-modal-success:after, .f-modal-alert .f-modal-icon.f-modal-error:after {

  border-radius: 0 120px 120px 0;

  left: 30px;

  top: -11px;

  transform-origin: 0 60px;

  transform: rotate(-45deg);

}

.f-modal-alert .f-modal-icon.f-modal-success .f-modal-placeholder, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-placeholder {

  border-radius: 50%;

  border: 4px solid rgba(115,193,202,.3);

  box-sizing: content-box;

  height: 80px;

  left: -4px;

  position: absolute;

  top: -4px;

  width: 80px;

  z-index: 2;

}

.f-modal-alert .f-modal-icon.f-modal-success .f-modal-fix, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-fix {

  background-color: #fff;

  height: 90px;

  left: 28px;

  position: absolute;

  top: 8px;

  transform: rotate(-45deg);

  width: 5px;

  z-index: 1;

}

.f-modal-alert .f-modal-icon.f-modal-success .f-modal-line, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-line {

  background-color: #73c1ca;

  border-radius: 2px;

  display: block;

  height: 5px;

  position: absolute;

  z-index: 2;

}

.f-modal-alert .f-modal-icon.f-modal-success .f-modal-line.f-modal-tip, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-line.f-modal-tip {

  left: 14px;

  top: 46px;

  transform: rotate(45deg);

  width: 25px;

}

.f-modal-alert .f-modal-icon.f-modal-success .f-modal-line.f-modal-long, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-line.f-modal-long {

  right: 8px;

  top: 38px;

  transform: rotate(-45deg);

  width: 47px;

}

.f-modal-alert .f-modal-icon.f-modal-error {

  border-color: #f27474;

}

.f-modal-alert .f-modal-icon.f-modal-error .f-modal-x-mark {

  display: block;

  position: relative;

  z-index: 2;

}

.f-modal-alert .f-modal-icon.f-modal-error .f-modal-placeholder {

  border: 4px solid rgba(200, 0, 0, 0.2);

}

.f-modal-alert .f-modal-icon.f-modal-error .f-modal-line {

  background-color: #f27474;

  top: 37px;

  width: 47px;

}

.f-modal-alert .f-modal-icon.f-modal-error .f-modal-line.f-modal-left {

  left: 17px;

  transform: rotate(45deg);

}

.f-modal-alert .f-modal-icon.f-modal-error .f-modal-line.f-modal-right {

  right: 16px;

  transform: rotate(-45deg);

}

.f-modal-alert .f-modal-icon + .f-modal-icon {

  margin-top: 50px;

}



.animateSuccessTip {

  -webkit-animation: animateSuccessTip 0.75s;

          animation: animateSuccessTip 0.75s;

}



.animateSuccessLong {

  -webkit-animation: animateSuccessLong 0.75s;

          animation: animateSuccessLong 0.75s;

}



.f-modal-icon.f-modal-success.animate:after {

  -webkit-animation: rotatePlaceholder 4.25s ease-in;

          animation: rotatePlaceholder 4.25s ease-in;

}



.f-modal-icon.f-modal-error.animate:after {

  -webkit-animation: rotatePlaceholder 4.25s ease-in;

          animation: rotatePlaceholder 4.25s ease-in;

}



.animateErrorIcon {

  -webkit-animation: animateErrorIcon 0.5s;

          animation: animateErrorIcon 0.5s;

}



.animateXLeft {

  -webkit-animation: animateXLeft 0.75s;

          animation: animateXLeft 0.75s;

}



.animateXRight {

  -webkit-animation: animateXRight 0.75s;

          animation: animateXRight 0.75s;

}



@-webkit-keyframes animateSuccessTip {

  0%, 54% {

    width: 0;

    left: 1px;

    top: 19px;

  }

  70% {

    width: 50px;

    left: -8px;

    top: 37px;

  }

  84% {

    width: 17px;

    left: 21px;

    top: 48px;

  }

  100% {

    width: 25px;

    left: 14px;

    top: 45px;

  }

}



@keyframes animateSuccessTip {

  0%, 54% {

    width: 0;

    left: 1px;

    top: 19px;

  }

  70% {

    width: 50px;

    left: -8px;

    top: 37px;

  }

  84% {

    width: 17px;

    left: 21px;

    top: 48px;

  }

  100% {

    width: 25px;

    left: 14px;

    top: 45px;

  }

}

@-webkit-keyframes animateSuccessLong {

  0%, 65% {

    width: 0;

    right: 46px;

    top: 54px;

  }

  84% {

    width: 55px;

    right: 0;

    top: 35px;

  }

  100% {

    width: 47px;

    right: 8px;

    top: 38px;

  }

}

@keyframes animateSuccessLong {

  0%, 65% {

    width: 0;

    right: 46px;

    top: 54px;

  }

  84% {

    width: 55px;

    right: 0;

    top: 35px;

  }

  100% {

    width: 47px;

    right: 8px;

    top: 38px;

  }

}

@-webkit-keyframes rotatePlaceholder {

  0%, 5% {

    transform: rotate(-45deg);

  }

  100%, 12% {

    transform: rotate(-405deg);

  }

}

@keyframes rotatePlaceholder {

  0%, 5% {

    transform: rotate(-45deg);

  }

  100%, 12% {

    transform: rotate(-405deg);

  }

}

@-webkit-keyframes animateErrorIcon {

  0% {

    transform: rotateX(100deg);

    opacity: 0;

  }

  100% {

    transform: rotateX(0deg);

    opacity: 1;

  }

}

@keyframes animateErrorIcon {

  0% {

    transform: rotateX(100deg);

    opacity: 0;

  }

  100% {

    transform: rotateX(0deg);

    opacity: 1;

  }

}

@-webkit-keyframes animateXLeft {

  0%, 65% {

    left: 82px;

    top: 95px;

    width: 0;

  }

  84% {

    left: 14px;

    top: 33px;

    width: 47px;

  }

  100% {

    left: 17px;

    top: 37px;

    width: 47px;

  }

}

@keyframes animateXLeft {

  0%, 65% {

    left: 82px;

    top: 95px;

    width: 0;

  }

  84% {

    left: 14px;

    top: 33px;

    width: 47px;

  }

  100% {

    left: 17px;

    top: 37px;

    width: 47px;

  }

}

@-webkit-keyframes animateXRight {

  0%, 65% {

    right: 82px;

    top: 95px;

    width: 0;

  }

  84% {

    right: 14px;

    top: 33px;

    width: 47px;

  }

  100% {

    right: 16px;

    top: 37px;

    width: 47px;

  }

}

@keyframes animateXRight {

  0%, 65% {

    right: 82px;

    top: 95px;

    width: 0;

  }

  84% {

    right: 14px;

    top: 33px;

    width: 47px;

  }

  100% {

    right: 16px;

    top: 37px;

    width: 47px;

  }

}

.validation-block .top-title {

  margin:.5em 0;

  font-size:2em;

  display: block;

}



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

  #booking_escape::before {

    display: none;

  }

  .booking-block .container {

    padding:0!important;

  }

  .booking-block #wizard_escape .nav-link span {

    font-size:.7em;

  }

}



/*** FORMS ***/

textarea {

  resize:none;

  width:100%;

  border:1px solid #D2D2D2;

  border-radius:10px;

  padding:1em;

  color:#A3A3A3;

}

input[type="text"],input[type="email"],input[type="phone"],

.bootstrap-select, .bootstrap-select button  {

  width:100%;

  border-radius:100px!important;

  border:1px solid #d2d2d2!important;

  box-shadow:none!important;

  color:#A3A3A3;

}

.bootstrap-select button {

  border: none!important;

  box-shadow:none!important;

  color:#A3A3A3!important;

}



.form-box, .form-select {

  display:flex;

  align-items:center;

  justify-content: space-between;

  margin:.5em 0;

}

.form-box label, .form-select label {

  margin-right:1em;

  text-align: left;

  min-width: 120px;

}

.form-box input, .form-select .bootstrap-select {

  width:100%!important;

}

legend.required::after, label.required::after {

  color:#A3A3A3;

}

/* Checkboxes */

.form-check {

  display: flex;

  text-align: left;

  align-items: center;

  font-size:.9em;

}

.form-check input:hover,

.form-check label:hover {

  cursor:pointer;

}

.form-check input {

  margin-right:1em;

  width: 25px;

  height: 25px;

  min-width: 25px;

}

.form-check label {

  margin-bottom:0;

}

.input-btn {

  position:relative;

}

.input-btn input {

  height: 40px;

  padding:0 1em;

}

.input-btn input:focus-visible,

.input-btn input:focus {

  outline:none;

  border:1px solid #73c1ca;

}

.input-btn button {

  position: absolute;

  top:0;

  right:0;

  height: 40px;

  width: 40px;

  align-items: center;

  justify-content: center;

  padding:0!important;

}

#coupon_valid {

  font-size:.8em;

}

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

  .form-box, .form-select {

    flex-direction: column;

    align-items: flex-start;

  }

}



/*** ABOUT ***/



#about_escape {

  background: url('/Assets/img/front/bg-map.jpg') no-repeat center center;

  background-size:cover;

  padding-bottom:5em;

}

#about_escape .banner {

  display: flex;

  align-items:center;

  border-radius:10px;

  justify-content: center;

  height:300px;

  overflow:hidden;

  width:100%;

  margin-top: 8em;

}

#about_escape .description {

  max-width:600px;

  margin:0 auto;

  padding-top: 3em;

}



input.invalid,

select.invalid,

textarea.invalid

{

  border:1px solid red !important;

}

label.invalid

{

  color:red !important;

}



/*** CONFIRMATION DE COMMANDE ***/

#intro_confirmation {

  max-height:500px;

}

#intro_confirmation h1 {

  margin-bottom:0;

  margin-top:1em;

}

#intro_confirmation .parallax > img {

  min-height:auto!important;

  margin-left: -1.1em;

}

#confirmation {

  min-height:calc(100vh - 400px);

  min-height: calc(100vh - 400px);

  display: flex;

  justify-content: center;

  align-items: center;

}



.ui-menu.ui-widget.ui-autocomplete{

  z-index:10000000;

}

.ui-menu.ui-widget.ui-autocomplete .ui-menu-item .ui-menu-item-wrapper{

  cursor:pointer;

  background:white;

}