
/* Login page stype */
.path-user .content-header, .path-user .region-breadcrumb,
.path-user .messages--error a {display:none;}
.path-user .region-content .block-system-main-block {padding-top: 20%;}
.path-user main .region-content{
  max-width: 40%;
  background: white;
  padding: 1rem 1rem;
  margin: 0 auto;
  border-radius: 0.3rem; }

body.path-user .field--label-inline .field__label {
  width: 100px;
  color: #ff4e2e; }

body.path-user .field--label-inline .field__item {
  padding: 0.25rem 1rem;
  border-radius: 1rem;
  background: #e9ecef;
  min-width: 250px;
  margin: 0.25rem 0; }

body.path-user .field--label-above .field__label {
  color: #ff4e2e; }

body.path-user .field--label-above .field__item {
  padding: 0.25rem 1rem;
  border-radius: 1rem;
  background: #e9ecef;
  width: 100%;
  margin: 0.25rem 0; }

  /**
 * @file
 * Theme styling for user module.
 */
/* Visual styling for the Password strength indicator */
.password-strength__meter {
  margin-top: 0.5em;
  background-color: #e9ecef; }

.password-strength__indicator {
  background-color: #28a745;
  -webkit-transition: width 0.5s ease-out;
  -o-transition: width 0.5s ease-out;
  transition: width 0.5s ease-out; }

.password-strength__indicator.is-weak {
  background-color: #dc3545; }

.password-strength__indicator.is-fair {
  background-color: #ffc107; }

.password-strength__indicator.is-good {
  background-color: #17a2b8; }

.password-strength__indicator.is-strong {
  background-color: #28a745; }

.password-confirm,
.password-field,
.password-strength,
.password-confirm-match {
  width: 55%; }

.password-suggestions {
  padding: 0.2em 0.5em;
  margin: 0.7em 0;
  max-width: 34.7em;
  border: 1px solid #dee2e6; }

.password-suggestions ul {
  margin-bottom: 0; }

.confirm-parent,
.password-parent {
  clear: left;
  /* LTR */
  margin: 0;
  max-width: 33em;
  overflow: hidden; }

[dir="rtl"] .confirm-parent,
[dir="rtl"] .password-parent {
  clear: right; }

/* Styling for the status indicator of the passwords match test.  */
.password-confirm .ok {
  color: #28a745;
  font-weight: bold; }

.password-confirm .error {
  color: #dc3545;
  font-weight: bold; }

#user-login-form {
	background: #fff;
    padding: 4.3125rem 5.3125rem 6.6875rem;
    border-radius: 4px;
    -webkit-box-shadow: 0 0 24px 0 rgb(0 0 0 / 11%);
    box-shadow: 0 0 24px 0 rgb(0 0 0 / 11%);
}

.user-login-form input {
	width: 100% !important;
    padding: 0.625rem 0 !important;
    font-size: 1rem !important;
    color: #000000 !important;
    margin-bottom: .5rem !important;
    border: none !important;
    border-bottom: 1px solid #d4d4d4 !important;
    outline: none !important;
    background: transparent !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

#user-login-form .btn {
    width: 150px !important;
    float: right;
    border-color: #009bdf !important;
    border-radius: 4px !important;
    background-color: #009bdf !important;
    font-family: inherit !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    font-stretch: normal !important;
    font-style: normal !important;
    line-height: 2.14 !important;
    letter-spacing: 0.01875rem !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    margin-bottom: 0 !important;
}
#user-login-form .btn:hover {
    color: #fff !important;
    background-color: #0080b9 !important;
    border-color: #0078ac !important;
    cursor: pointer !important;
}


/* VIP Pass Login */
/* #vip-pass-login #block-galleria-content .content{
  background: #D9CFC3;
  width: 490px;
  margin: 50px auto;
  padding: 60px 40px;
} */
#vip-pass-login #block-galleria-content .content .vip-pass-btn{
  background: #000 !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  padding: 16px 41px !important;
  font-family: "town-text-bold" !important;
  font-size: 14px !important;
  line-height: 17px !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase !important;
  border-color: transparent;
  border-radius: 0px;
  justify-content: center !important;
  box-shadow: none !important;
  outline: 0 !important;
}
#vip-pass-login #block-galleria-content .content .vip-pass-btn + .vip-pass-btn{
  margin-top: 45px;
}
.link-wrp{
  display: flex;
  justify-content: space-between;
  margin-top: 1rem !important;
}
@media (max-width: 576px){
  .link-wrp{
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
  }
}
.link-wrp a, .terms-condition-pass-link{
  font-family: "town-text-bold" !important;
  font-size: 14px !important;
  line-height: 17px !important;
  letter-spacing: 1.4px !important;
  padding: 0px !important;
  background: transparent !important;
  border: 0px !important;
  /* border-bottom: 1px solid #000 !important; */
  color: #000 !important;
  border-radius: 0px !important;
}
.terms-condition-pass-link{
  margin-bottom: 20px;
}
/* VIP Pass Registration */
.galleria-salesforce-registration{
  background: #D9CFC3;
  width: 490px;
  margin: 50px auto;
  padding: 60px 40px;
}
.galleria-salesforce-registration .js-form-item label{
  color: rgba(42, 40, 41, 0.50);
  font-family: "town-text-bold" !important;
  font-size: 12px !important;
  font-style: normal;
  font-weight: 700 !important;
  line-height: normal !important;
  letter-spacing: 0.6px !important;
}
.galleria-salesforce-registration .js-form-item input{
  outline: 0 !important;
  box-shadow: none !important;
  padding: 16px 24px !important;
  font-family: "town-text-book" !important;
  color: #000 !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 350 !important;
  line-height: 24px !important; 
  letter-spacing: 0.32px !important;
  border-radius: 0px !important;
  border:0px !important;
}
.galleria-salesforce-registration input.form-submit{
  background: #000 !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  padding: 16px 41px !important;
  font-family: "town-text-bold" !important;
  font-size: 14px !important;
  line-height: 17px !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase !important;
  border-color: transparent;
  border-radius: 0px;
  justify-content: center !important;
  box-shadow: none !important;
  outline: 0 !important;
}

/* Password Match */
.galleria-salesforce-registration .form-type-password-confirm{
  position: relative;
}
.galleria-salesforce-registration .form-type-password-confirm .password-suggestions{
  position: absolute;
  top: 0;
  left: 470px;
  width: 300px;
  background: #D9CFC3;
  padding: 20px;
  border: 0px;
  font-family: "town-text-bold" !important;
  font-size: 16px !important;
  line-height: 20px !important;
  letter-spacing: 1.4px !important;
}
.galleria-salesforce-registration .form-type-password-confirm .password-suggestions ul{
  padding-left: 10px !important;
  margin-top: 10px !important;
}
.galleria-salesforce-registration .form-type-password-confirm .password-suggestions ul li{
  list-style: disc;
  font-family: "town-text-bold" !important;
  font-size: 14px !important;
  line-height: 18px !important;
  letter-spacing: 1.4px !important;
}
.galleria-salesforce-registration .password-confirm, .galleria-salesforce-registration .password-field, .galleria-salesforce-registration .password-strength, .galleria-salesforce-registration .password-confirm-match{
  width: 100%;
}

/* Password Reset */
.galleria-salesforce-password-rest{
  background: #D9CFC3;
  width: 490px;
  margin: 50px auto;
  padding: 60px 40px;
}
.galleria-salesforce-password-rest .js-form-item label{
  color: rgba(42, 40, 41, 0.50);
  font-family: "town-text-bold" !important;
  font-size: 12px !important;
  font-style: normal;
  font-weight: 700 !important;
  line-height: normal !important;
  letter-spacing: 0.6px !important;
}
.galleria-salesforce-password-rest .js-form-item input{
  outline: 0 !important;
  box-shadow: none !important;
  padding: 16px 24px !important;
  font-family: "town-text-book" !important;
  color: #000 !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 350 !important;
  line-height: 24px !important; 
  letter-spacing: 0.32px !important;
  border-radius: 0px !important;
  border:0px !important;
}
.galleria-salesforce-password-rest button.form-submit{
  background: #000 !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  padding: 16px 41px !important;
  font-family: "town-text-bold" !important;
  font-size: 14px !important;
  line-height: 17px !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase !important;
  border-color: transparent;
  border-radius: 0px;
  justify-content: center !important;
  box-shadow: none !important;
  outline: 0 !important;
  width: 100% !important;
}

/* Common Form */
.common-wrapper-form form{
  background: #D9CFC3;
  width: 490px;
  margin: 50px auto;
  padding: 60px 40px;
}
@media (max-width: 576px){
  .common-wrapper-form form{
    width: 95%;
    padding: 30px 20px;
  }
}
.common-wrapper-form form .js-form-item label, .common-wrapper-form form .phone-number-field label{
  color: rgba(42, 40, 41, 0.50);
  font-family: "town-text-bold" !important;
  font-size: 12px !important;
  font-style: normal;
  font-weight: 700 !important;
  line-height: normal !important;
  letter-spacing: 0.6px !important;
}
.common-wrapper-form form .js-form-item input, .common-wrapper-form form .js-form-item select, .common-wrapper-form form .js-form-item textarea{
  outline: 0 !important;
  box-shadow: none !important;
  padding: 16px 24px !important;
  font-family: "town-text-book" !important;
  color: #000 !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 350 !important;
  line-height: 24px !important; 
  letter-spacing: 0.32px !important;
  border-radius: 0px !important;
  border:0px !important;
}
.common-wrapper-form form .js-form-item input.FromTime__c, .common-wrapper-form form .js-form-item input.ToTime__c{
  pointer-events: none;
}
.common-wrapper-form form .js-form-item select{
  background-color: #fff !important;
  width: 100% !important;
}
.common-wrapper-form form button.form-submit, .common-wrapper-form form input.form-submit, .common-wrapper-form form .deactivate-popup-form{
  background: #000 !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  padding: 16px 41px !important;
  font-family: "town-text-bold" !important;
  font-size: 14px !important;
  line-height: 17px !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase !important;
  border-color: transparent;
  border-radius: 0px;
  justify-content: center !important;
  box-shadow: none !important;
  outline: 0 !important;
  width: 100% !important;
}
.common-wrapper-form form .phone-number-field{
  display: flex;
  flex-wrap: wrap;
}
.common-wrapper-form form .phone-number-field label{
  width: 100%;
}
.common-wrapper-form form .phone-number-field .js-form-item-sfa-registration-mobilephone-country-code{
  width: 85px;
}
.common-wrapper-form form .phone-number-field .js-form-item-sfa-registration-mobilephone-phone{
  width: calc(100% - 85px);
  min-width: calc(100% -85px);
}
.common-wrapper-form form .phone-number-field .js-form-item-sfa-registration-mobilephone-phone input{
  width: calc(100% - 20px);
  height: 56px;
  margin-left: 20px;
}
.common-wrapper-form form .phone-number-field .country-select{
    height: 56px !important;
    background: #fff !important;
    display: flex !important;
    width: fit-content !important;
    align-items: center !important;
    justify-content: center !important;
    padding-left: 10px !important;
}
@media (max-width: 576px){
  .common-wrapper-form form button.form-submit, .common-wrapper-form form input.form-submit, .common-wrapper-form form .deactivate-popup-form{
    padding: 16px 20px !important;
    text-align: center;
  }
}
.common-wrapper-form form .deactivate-popup-form{
  margin-top: 20px;
}
/* Form Error */
.common-wrapper-form form .error{
  color: red;
  margin-top: 3px;
}
/* TimePicker */
.common-wrapper-form form .k-timepicker{
  border: 0px !important;
  border-radius: 0px !important;
  padding: 0px !important;
  position: relative;
}
.common-wrapper-form form .k-timepicker .k-input-button{
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
}


/* My Booked services list page */
.booking-services-list-page, .lost-found-list-page{
  margin-top: 50px;
}
.booking-services-list-page .heading-section, .lost-found-list-page .heading-section{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}
.booking-services-list-page .heading-section h1, .lost-found-list-page .heading-section h1{
  font-size: 60px !important;
  line-height: 70px !important;
}
@media (max-width: 992px){
  .booking-services-list-page .heading-section h1, .lost-found-list-page .heading-section h1{
    font-size: 35px !important;
    line-height: 35px !important;
  }
}
@media (max-width: 576px){
  .booking-services-list-page.m-wrap .heading-section{
    flex-direction: column;
    align-items: flex-start;
  }
}
.booking-services-list-page .heading-section .new-booking-btn, .lost-found-list-page .heading-section .new-booking-btn{
  background: #000 !important;
  color: #fff !important;
  border: unset !important;
  border-radius: 0px !important;
  padding: 16px 41px !important;
  font-size: 14px !important;
  line-height: 17px !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase;
  height: fit-content;
}
.booking-services-list-page .heading-section .new-booking-btn:hover, .lost-found-list-page .heading-section .new-booking-btn:hover{
  background: #fff !important;
  color: #000 !important;
  border:1px solid #000 !important;
}
.dark-theme .booking-services-list-page .heading-section .new-booking-btn, .dark-theme .lost-found-list-page .heading-section .new-booking-btn {
  background:rgba(255, 255, 255, 0.2) 0% 0% no-repeat padding-box !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  color: #ffffff !important;
}
.dark-theme .booking-services-list-page .heading-section .new-booking-btn:hover, .dark-theme .lost-found-list-page .heading-section .new-booking-btn:hover{
    background:#fff !important;
    border:1px solid #fff !important;
    color:#000 !important;
}
@media (max-width: 576px){
  .booking-services-list-page .heading-section .new-booking-btn, .lost-found-list-page .heading-section .new-booking-btn{
    padding: 16px 12px !important;
    text-align: center;
    white-space: nowrap;
  }
}
.booking-services-list-page .booking-services-listing, .lost-found-list-page .lost-found-listing{
  margin-bottom: 50px;
}
@media (max-width: 576px){
  .booking-services-list-page .booking-services-listing, .lost-found-list-page .lost-found-listing{
    overflow-x: auto;
  }
}
.booking-services-list-page .booking-services-listing table, .lost-found-list-page .lost-found-listing table{
  width: 100%;
  border: 1px solid #D9CFC3;
}
@media (max-width: 576px){
  .booking-services-list-page .booking-services-listing table, .lost-found-list-page .lost-found-listing table{
    width: 500px;
    margin: 0 auto;
  }
}
.booking-services-list-page .booking-services-listing table tr, .lost-found-list-page .lost-found-listing table tr{
  border-bottom: 1px solid #D9CFC3;
}
.booking-services-list-page .booking-services-listing table tr th, .booking-services-list-page .booking-services-listing table tr td,
.lost-found-list-page .lost-found-listing table tr th, .lost-found-list-page .lost-found-listing table tr td{
  padding: 10px 8px;
}
.booking-services-list-page .booking-services-listing table tr th, .lost-found-list-page .lost-found-listing table tr th{
  background: #D9CFC3;
}

/* Vip Pass Layer */
.vip-pass-layer{
  margin: 50px auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 50px;
}
@media (max-width: 576px){
  .vip-pass-layer{
    gap: 30px;
  }
}
.vip-pass-layer .image-layer{
  /* position: relative; */
}
.vip-pass-layer .image-layer img{
  width: 500px;
}
@media (max-width: 576px){
  .vip-pass-layer .image-layer img{
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
.vip-pass-layer .image-layer .content{
  position: absolute;
  bottom: 0px;
  display: flex;
  justify-content: space-between;
  left: 0;
  right: 0;
  align-items: center;
  padding: 20px;
}
@media (max-width: 576px){
  .vip-pass-layer .image-layer .content{
    padding: 10px;
    bottom: 10px;
    left: 10px;
    right: 10px;
  }
}
.vip-pass-layer .user-details{
  display: flex;
  flex-direction: column;
  gap: 5px;
  text-align: center;
}
.vip-pass-layer .vip-text{
  font-family: "town-text-bold" !important;
    font-weight: normal !important;
    font-size: 26px !important;
    line-height: 30px !important;
    color: #957A50 !important;
    letter-spacing: 0px !important;
    text-transform: uppercase;
}
@media (max-width: 576px){
  .vip-pass-layer .vip-text{
    font-size: 16px !important;
    line-height: 20px !important;
  }
}
.vip-pass-layer .name, .vip-pass-layer .pass-number{
    font-family: "town-text-bold" !important;
    font-weight: normal !important;
    font-size: 22px !important;
    line-height: 26px !important;
    color: #957A50 !important;
    letter-spacing: 0px !important;
    text-transform: uppercase;
}
@media (max-width: 576px){
  .vip-pass-layer .name, .vip-pass-layer .pass-number{
    font-size: 16px !important;
    line-height: 20px !important;
  }
}
/* Deactivate Model Content */
.ui-widget.ui-widget-content{
  padding: 0;
}
.ui-widget-header{
  background: none !important;
  border: 0 !important;
  border-bottom: 1px solid #ccc !important; 
  border-radius: 0px !important;
}
.ui-dialog .ui-dialog-title{
    font-family: "town-text-bold" !important;
    font-weight: normal !important;
    font-size: 26px !important;
    line-height: 36px !important;
    color: #000 !important;
    letter-spacing: 0px !important;
}
.ui-dialog .ui-dialog-titlebar-close{
  height: 30px !important;
  width: 30px !important;
  background: none !important;
  border-radius: 0px !important;
  border: 0px !important;
  display: none;
}
.ui-dialog .ui-dialog-titlebar-close .ui-icon-closethick::after{
  content: "X";
  display: inline-block;
  width: 30px;
  height: 30px;
}
.deactivate-modal-content{
  padding: 50px;
}
.deactivate-modal-content h1{
  font-size: 36px !important;
  line-height: 46px !important;
}
.deactivate-modal-content .note{
  font-family: "town-text-book" !important;
  font-size: 16px !important;
  line-height: 19px !important;
  color: #000 !important;
  font-weight: 700;
  margin-bottom: 20px;
}
.deactivate-modal-content .points{
  padding-left: 20px !important;
}
.deactivate-modal-content .points li{
  list-style: disc;
  font-family: "town-text-book" !important;
  font-size: 16px !important;
  line-height: 19px !important;
  color: #000 !important;
}
.deactivate-modal-content .btn-actions{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 40px;
}
.deactivate-modal-content .btn-actions .cancel-btn, .deactivate-modal-content .btn-actions .agree-btn{
  background: #000 !important;
  color: #fff !important;
  border: unset !important;
  border-radius: 0px !important;
  padding: 16px 41px !important;
  font-size: 14px !important;
  line-height: 17px !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase;
  height: fit-content;
}
.deactivate-modal-content .btn-actions .cancel-btn{
  margin-right: 20px;
}
@media (max-width: 1200px){
  .ui-dialog{
    width: 70% !important;
  }
  .deactivate-modal-content{
    padding: 35px;
  }
}
@media (max-width: 992px){
  .ui-dialog{
    width: 80% !important;
  }
  .deactivate-modal-content{
    padding: 25px;
  }
}
@media (max-width: 576px){
  .ui-dialog{
    width: 90% !important;
  }
  .ui-dialog-content{
    height: 400px !important;
    max-height: 400px !important;
    padding: 0px !important;
  }
  .deactivate-modal-content{
    padding: 20px;    
  }
  .deactivate-modal-content h1{
    font-size: 22px !important;
    line-height: 32px !important;
  }
  .deactivate-modal-content .btn-actions{
    margin-top: 20px;
  }
}

/** Vip pass card Flip **/
.flip-card {
  background-color: transparent;
  width: 500px;
  height: 340px;
  perspective: 1000px;
}
@media (max-width: 576px){
  .flip-card {
    height: auto;
    width: 100%;
  }
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
}

.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}
@media (max-width: 576px){
  .flip-card:hover .flip-card-inner {
    transform: none;
  }
}
.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
@media (max-width: 576px){
  .flip-card-front, .flip-card-back {
    position: relative;
  }
}
.flip-card-front {
  color: black;
}

.flip-card-back {
  transform: rotateY(180deg);
}
@media (max-width: 576px){
  .flip-card-back {
    transform: none;
    margin-top: 30px;
  }
}
.flip-card-back img{
  width: 500px;
}
@media (max-width: 576px){
  .flip-card-back img{
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
.vip-pass-layer .offers-links{
  font-family: "town-text-book" !important;
  font-size: 16px !important;
  line-height: 19px !important;
  color: #000 !important;
  font-weight: 700;
  margin-bottom: 20px;
}
.vip-pass-layer .offers-links a{
  font-family: "town-text-book" !important;
  font-size: 16px !important;
  line-height: 19px !important;
  font-weight: 700;
  margin-bottom: 20px;
}
.pass-login-error-message {
  color: red;
  padding-bottom: 10px;
  font-weight: bold;
}
input.required.error.is-invalid.form-control {
  border: 1px solid red !important;
  padding-right: 30px !important;
}