@charset "utf-8";

body,html{
   font-family:Verdana;
}
#select-service {
    opacity: 0;
    height: 0px;
    margin: 0px !important;
    padding: 0;
}
#select-provider {
    opacity: 0;
    height: 1px;
}
#appointmentMessage {
   text-transform: uppercase;
}
.coloredLoader {
    height: 200px;
    background-repeat: no-repeat;
    background-position-x: center;
}
.hoursCol {
    float: left !important;
    margin-right: auto !important;
    display: none;
}
/* *********************************************************************** 	BASIC */
body {
  font-size: 16px;
  line-height: 20px;
  background-color: #fff;
  color: #5a5a5a;
  letter-spacing: normal;
}
a, a:focus,a:hover {
    text-decoration: underline;
    outline: 0;
}
p {
	margin: 0 0 10px;
}
header {
    height: 0;
    text-align: right;
    margin-top: 10px;
    display: none;
}
#bookSuccess {
    padding: 25px;
}
/*#notApp {
    display: none;
}*/
#notApp p {
    font-size: 12px;
    margin: 20px 0 0 0;
    color: #000;
}
#notApp .label{
    font-weight: normal;
    font-size: 12px !important;
    line-height: 25px;
    white-space: normal;
}
.label {
    padding: .4em .6em;
}
.center {
    text-align: center;
}

#accordion {
    padding: 25px;
}
#select-language2 {
    cursor: pointer;
}
.underconstruction {
    min-height: 600px;
}
.underconstruction h1 {
    text-align: center;
    line-height: 40px;
    margin: 40px 0;
    font-size: 30px;
}
.underconstruction h3 {
    font-size: 21px;
    color: #444;
    text-align: center;
}
/* *********************************************************************** NEW */
.wizardTitleText {
    float: right;
}
#service-description {
    opacity: 0;
    height: 1px;
}
#book-appointment-wizard {
    box-shadow: none !important;
    min-height: 300px;
    display: none;
}
#book-appointment-wizard .wizard-frame {
    height:auto;
    background: #f5f5f5;
    padding: 0;
}
.panel-group .panel {
     box-shadow: none;
     margin: 0 !important;
}
.panel-default > .panel-heading,
.panel-heading {
     background-color: #fff;
     padding: 16px 20px;
     color: #fff;
     border-top-left-radius: 0px;
     border-top-right-radius: 0px;
     border: 1px solid #dfdfdf;
     margin-bottom: -1px;
}
#first.panel-heading {
     border-top-left-radius: 5px;
     border-top-right-radius: 5px;
}
.panel-title {
     /*font-size: 20px;*/
     color: #333;
}
.panel-selected .panel-title{
     color: #fff;
}
.panel-group .panel-heading+.panel-collapse>.panel-body {
    border: 1px solid #dddddd;
}
.accordion-toggle, .accordion-toggle:hover, .accordion-toggle:focus, .accordion-toggle:active {
    text-decoration: none;
}
/*.collapse.in .panel-body {
    background-color: #f5f5f5;
    padding: 12px 20px;
}*/
.command-buttons {
    margin-top: 50px;
    clear: both;
    text-align: center;
    padding: 40px 0 30px 0;
  }
#book-appointment-wizard .wizard-frame .command-buttons {
    text-align: center;
    float: none;
    padding: 40px 0;
}
#book-appointment-wizard .frame-container .frame-title {
    text-align: center;
    margin-bottom: 28px;
    color: #fff;
    background: #30b0e0;
    padding: 16px;
    font-size: 20px;
    text-align: left;
}
#appointment-details,
#customer-details {
    text-align: center;
}
#appointment-details{
    margin-top: 20px;
}
#frame-description {
    padding: 20px;
    font-size: 20px;
}
#customer-details h4{
    border-bottom: 1px solid #acacac;
    color: #444;
    padding-bottom: 10px;
}
#appointment-details h4{
    border-bottom: 1px solid #acacac;
    color: #444;
    /*padding-bottom: 10px;*/
}
#appointment-details p{
   margin: 0;
}
#book-appointment-wizard #customer-details p {
    margin: 5px 0;
    font-size: inherit;
    line-height: inherit;
}
#appointment-details b,
#customer-details b,
#signerUser {
    font-size: 20px;
}
#signerUser {
    line-height: 26px;
}
#appointment-details p,
#customer-details p {
    line-height: inherit;
}
.manualTicket {
    margin: 0 auto;
    max-width: 350px;
    text-align: center;
    margin-top: 30px;
}
.ticketValidateMessage {
    font-size: 18px;
    font-weight: bold;
    color: #30b0e0;
    text-align: center;
    margin-top: 10px;
}
.selected-hour .asterisk {
    color: #fff;
}
#wizardLink,
.asterisk,
#shift_appointment
{
    color: #B71C1C;
}
#shift_appointment
{
   text-align: center;
   display: none;
}
.errorMessage {
    color: #B71C1C;
    margin-top: 20px;
    font-size: 18px;
    text-align: center;
}
.label {
    font-weight: normal;
}
.label-alert {
    background-color: #B71C1C;
}
textarea, textarea.form-control, input.form-control, input[type="text"], input[type="password"], input[type="email"], input[type="number"], .form-control[type="text"], .form-control[type="password"], .form-control[type="email"] {
    border-radius: 0;
    box-shadow: none;
    font-size: 18px;
    height: 55px;
    padding: 15px;
    border: 1px solid #B8B8B8;
    background: #ffffff;
}
textarea:focus, textarea.form-control:focus, input.form-control:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, input[type="number"]:focus, .form-control[type="text"]:focus, .form-control[type="password"]:focus, .form-control[type="email"]:focus {
    box-shadow: none;
    border: 1px solid #30b0e0;
}
input[readonly],
input[readonly="readonly"] {
   background: #f3f3f3 !important;
   cursor: not-allowed;
   border: 1px solid #ccc !important;
}
.existingAppointment {
    display: none;
    font-weight: bold;
    margin: 0 0 25px 5px;
    font-size: 13px;
    color: #000;
}
.noavailability {
    color: #B71C1C;
    text-align: center;
}
.no_available_hours {
    color: #B71C1C;
    margin-bottom: 25px;
    display: none;
    text-align: center;
}
.successpage_title,.successpage_title_wimg {
	font-size: 30px;
	margin-bottom: 60px;
	text-align: center;
}
.successpage_img {
    margin-bottom: 60px;
    text-align: center;
}
.successpage_text {
    color: #5a5a5a;
    font-size: 16px;
    line-height: 24px;
    text-align: center;
}
#add-to-google-calendar {
    cursor: pointer;
    color: #30b0e0;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 16px;
}
.appointmentdata {
    color: #30b0e0;
    font-size: 20px;
    margin: 22px 0;
    font-weight: bold;
}
#cadesc {
   font-size: 16px;
   line-height: 20px;
   margin-left: 5px;
}
#logo {
  margin: 0 auto;
  width: 160px;
  height: 76px;
  background-size: cover;
  /*display: none;*/
}
#logo img {
	max-width: 160px;
}
#select-language,
#choose-language,
#select-timezone {
    text-decoration: none;
}
#choose-language,
#select-timezone {
    position: relative;
    top: 8px;
    font-size: 14px;
}
a#choose-language,
#TimezoneSelect a {
    color: #000;
}
#TimezoneSelect {
    margin-bottom: 40px;
}
.moreSurveyInfo_button {
	text-align: center;
	margin-top: 30px;
}
.moreSurveyInfo {
    text-align: center;
    font-size: 24px;
    color: #30b0e0;
}
.loaderWhite {
    float: left;
    height: 60px;
    margin-top: 25px;
    width: 100%;
}
.loaderWhite {
    background: url("../img/loaderWhite.gif") no-repeat scroll center center rgba(0, 0, 0, 0);
}


/* *********************************************************************** modale */
.modale img {
	margin-top: 24px;
}
.modale .title {
	display: block;
	font-size: 18px;
	line-height: 24px;
	font-weight: 400;
	margin: 14px 0 5px 0;
}
.modale p.error {
	font-size: 14px;
	font-weight: 300;
	line-height: 19px;
	margin: 0;
	padding: 0 30px;
}
.modale .button {
	height: 40px;
	bottom: 0;
	left: 0;
	right: 0;
	background: #de0024;
	color: #fff;
	line-height: 40px;
	font-size: 14px;
	font-weight: 400;
	cursor: pointer;
	margin-top: 25px;
	position: absolute;
}
.modale {
	position: absolute;
	min-width: 280px;
	min-height: 210px;
	top: 95px;
	left: 160px;
	background: #fff;
	border-radius: 3px;
	box-shadow: 4px 8px 12px 0 rgba(0,0,0,0.4);
	text-align: center;
	overflow: hidden;
}
#errorModal .modal-content {
    -webkit-box-shadow: none;
    box-shadow: none;
 }
/* *********************************************************************** loader */
.loader {
    height: 60px;
    margin-top: 25px;
    width: 100%;
    display: none;
}
.loader {
    background: url("../img/loader.gif") no-repeat center center rgba(0, 0, 0, 0);
}
/* *********************************************************************** btn */
.btn-primary {
    background: #fff;
    border: 1px solid #000;
    border-radius: 50px;
    text-shadow: none;
    /*text-transform: uppercase;*/
    color: #000;
    /*font-weight: bold;*/
    font-size: 15px;
    line-height: 20px;
    padding: 5px 25px;
    /*min-width: 150px !important;*/
    box-shadow: none !important;
}
.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus,
.btn-primary:active:hover {
    background: #000;
    border-color: #000;
    /*border-radius: 20px;
    text-shadow: none;*/
    /*text-transform: uppercase;*/
    color: #fff;
    /*font-weight: bold;
    line-height: 20px;
    padding: 8px 20px;*/
    outline: none !important;
}
#iframeVisi {
    width: 100%;
    min-height: 550px;
    overflow-y: auto;
}
/* OVERWRITE general.css
 ------------------------------------------------------------------------------ */
 #book-appointment-wizard #book-appointment-form {
    width: auto;
    float: none;
}
.backend-page .filter-records {
    max-width: 100%;
}
/*
************************ JUST COLORS */
 .ui-corner-all a {
    transition: none;
}
body .ui-widget.ui-widget-content {
    border: 1px solid #ffffff;
}
body .ui-datepicker .ui-widget-header {
	padding: 0;
}
body .ui-datepicker .ui-datepicker-title {
    text-transform: uppercase;
    padding: inherit;
}
.ui-widget-header a,.ui-widget-header a:hover {
    color: #ffffff;
	height: 20px!important;
    top: 4px!important;
}
.ui-datepicker-prev {
    text-align: right;
}
body .ui-datepicker th {
    background: #ffffff;
    font-weight: normal;
    text-transform: uppercase;
}
body .ui-datepicker td a, body .ui-datepicker td span {
    color: #666666 !important;
}
html body .ui-datepicker td a.ui-state-active {
	font-weight: bold!important;
}
body .ui-datepicker td a.ui-state-highlight {
    background: #5a5a5a!important;
	font-weight: bold!important;
}
#book-appointment-wizard #available-hours .available-hour {
     margin: 0 5px 5px 0;
     width: 75px;
     font-size: 12px;
     background: #fff;
     text-align: center;
 }
#book-appointment-wizard #available-hours .available-hour:hover {
	cursor: pointer;
    font-weight: normal;
    background-color: #fff;
}
#book-appointment-wizard #available-hours .selected-hour,
#book-appointment-wizard #available-hours .selected-hour:hover {
    display: inline-block;
	color: #fff;
    font-weight: bold;
}
#timezone_offset {
    font-size: 60%;
    font-weight: bold;
    clear: both;
    width: 100%;
    padding-top: 20px;
    display: none;
}
.badge {
    background: #fff;
    color: #30b0e0;
    font-weight: bold;
    padding: 4px 7px;
    opacity: 0.5;
    font-size: 14px;
}
.badge.active {
    opacity: 1;
}
.badge.success{
    background: #30b0e0;
    color: #FFF;
    opacity: 1;
    text-transform: uppercase;
}
#language-list,
#timezone-list {
    margin-top: 10px;
    overflow-y: auto;
    overflow-x:hidden;
}
#timezone-list {
    max-height: 250px;
}
#timezone-list button {
   text-align: left;
   padding: 0 15px;
   font-size: 12px !important;
}
/*
************************ DIMENSIONS */
body .ui-datepicker .ui-datepicker-title {
    font-size: 16px;
}
.ui-datepicker {
    width: 100%;
}
.ui-datepicker table,
.ui-datepicker i  {
    font-size: 16px;
}
html body .ui-datepicker td a.ui-state-active,
body .ui-datepicker td a.ui-state-highlight,
body .ui-datepicker td a, body .ui-datepicker td span {
   height: 35px;
   width: 35px;
   margin: 0 auto;
}
.ui-datepicker td span, .ui-datepicker td a {
    padding: 0;
}

body .ui-datepicker td a.ui-state-highlight,
html body .ui-datepicker td a.ui-state-active {
    line-height: 2.2;
}
.ui-state-default:hover
 {
	font-weight: bold!important;
}

.ui-datepicker-prev.ui-corner-all.ui-state-disabled {
    text-align: right;
}
.ui-state-default,
.ui-state-hover,
.ui-state-highlight,
html body .ui-datepicker td a.ui-state-active,
body .ui-datepicker td a.ui-state-highlight {
    margin: 0 auto;
}
body .ui-datepicker td a.ui-state-highlight {
    background: #cccccc
}
body .ui-draggable .ui-dialog-titlebar {
    background: #30b0e0;
}

.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br {
    border: 0 none !important;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}
.ui-dialog .ui-dialog-title {
    font-size: 20px;
    margin: 0;
}
#content {
	min-height: 600px;
}
/*
*******************************************
footer
*******************************************
*/
.survey {
  width: 100%;
  background-color: #595856;
  padding: 10px;
  text-align: left;
  /*display: none;*/
}
.footerTable{
   display: table;
   margin: 0 auto;
}
.footerRow{
   display: table-row;
}
.footerCell{
   display: table-cell;
   padding: 0 10px;
   line-height: 12px;
}
footer,
footer a {
    margin: 0;
    font-size: 10px;
    color: #fff;
    text-decoration: none;
}
footer a,
footer a:active,
footer a:hover,
footer a:focus {
    color: #fff;
    white-space: nowrap;
    text-decoration: none;
}
footer .img-fluid {
   max-width: 80px;
}
/* ************************************************* Header */
h1.titlepagecustom, h1.heading_title {
	color: #30b0e0;
   font-size: 30px;
   margin: 30px 0 40px 0;
}
#top .btn-link {
   font-size: 14px;
   color: #555;
   text-align: left;
   padding-left: 20px;
   border-radius: 0px;
}
.btn-link:hover, .btn-link:active:hover {
    color: #fff !important;
}
/* *************************************************************************** CUSTOM MEDIA QUERIES *******************************************/
/* ************************************************* XS DESKTOP */
@media (max-width: 767px) {
   .row {
       margin-left: 0;
       margin-right: 0;
   }
   #accordion {
       padding: 25px 0;
   }
   #book-appointment-wizard {
       padding-left: 0;
       padding-right: 0;
   }
    #book-appointment-wizard .wizard-frame #select-date {
        width: auto;
    }
    #book-appointment-wizard #available-hours {
      overflow: hidden;
		text-align: center;
		width: 100%;
		margin-top: 30px;
      display: flex;
    }
    .visiContainer {
		padding: 0 !important;
	}
     #frame-description {
         margin-bottom: 35px;
     }
}
/* ************************************************* XS */
/* @media (max-width: 768px) and (orientation : portrait)*/
/* @media (max-width: 768px) and (orientation : portrait) {*/
/*@media (max-device-width: 768px) and (orientation : portrait){*/
@media (max-width: 768px) {
   .container-fluid {
       padding-left: 0;
       padding-right: 0;
   }
   .container{
      padding-right: 0;
      padding-left: 0;
   }
   #survyPage {
       padding-left: 0;
       padding-right: 0;
   }
   .row {
       margin-left: 0;
       margin-right: 0;
   }
   #accordion {
       padding: 25px 0;
   }
   #book-appointment-wizard {
       padding-left: 0;
       padding-right: 0;
   }
   #book-appointment-wizard .wizard-frame {
      padding: 0;
   }
   #book-appointment-wizard button.btn {
       /*float: none !important;
       width: 80% !important;*/
       margin: 6px 0;
   }
   #book-appointment-wizard .wizard-frame .command-buttons .btn {
         margin: 10px 0;
     }
   #book-appointment-wizard #book-appointment-form {
       width: 100%;
   }
   #frame-description {
       margin-bottom: 35px;
   }
   .wizardTitleText {
       font-size: 18px;
   }
   #customer-details {
       margin-top: 35px;
   }
   .mobileButtonSpace {
       height: 25px;
   }
   .visiContainer {
		padding: 0 !important;
	}
   #appointmentMessage,
   #appointment {
      white-space: nowrap !important;
   }
   .menu_link {
       display: none;
   }
   #langSelect,#TimezoneSelect {
       display: inline;
   }
   #TimezoneSelect {
       margin-top: 5px;
   }
}
/* ************************************************* SM DESKTOP */
@media (min-width: 768px) and (max-width: 991px) {
   body, html,
   #accordion {
      padding: 0;
   }
	#top, .page {
		padding: 0 10px;
	}
   #book-appointment-wizard {
       padding-left: 0;
       padding-right: 0;
   }
    #timezone_offset {
        min-width: 90px;
        padding: 20px 10px 0 10px;
    }
    .visiContainer {
		padding: 0 30px !important;
	}
}
/* ************************************************* MD DESKTOP */
@media (min-width: 992px) and (max-width: 1199px) {
	#top,.page {
		padding: 0 45px;
	}
    .visiContainer {
		padding: 0 30px !important;
	}
}
/* ************************************************* LG DESKTOP */
@media (min-width: 1200px) {
	#top,.page {
		padding: 0 45px;
	}
    .visiContainer {
		padding: 0 30px !important;
	}
}


::-webkit-input-placeholder { /* Chrome/Opera/Safari */
}
::-moz-placeholder { /* Firefox 19+ */
}
:-ms-input-placeholder { /* IE 10+ */
}
:-moz-placeholder { /* Firefox 18- */
}
