.sk-shapp-progress {
   padding: 10px 0px;
   display: none;
}

.sk-shapp-rounded {
   border-radius: 10px;
}

.sk-shapp-booknow-icon { padding-right: 5px; }
.sk-shapp-booknow-caption { font-size: 18px; padding-right: 5px; }
.sk-shapp-businesshours { margin-top: 15px; text-align: left; }
.sk-shapp-booknow-button { cursor: pointer; width: auto; }
.sk-shapp-title-selectservice { margin-bottom: 10px; }
.sk-shapp-button-disabled { opacity:0.15; }
.sk-shapp-title-selectstaff { margin: 16px 0 6px 0; font-size: 18px; }
.sk-shapp-title-selecttime { margin-bottom: 5px; }
.sk-shapp-timezonenote { 
   margin: 20px 0; 
   text-align: center; 
}
.sk-shapp-title-confirmbooking { margin-bottom: 2px; }
.sk-shapp-form .sk-shapp-step-content .sk-shapp-summarytitle {
   margin: 15px 0;
   font-size: 20px;
}

.sk-shapp-confirm-form {
   margin-bottom: 15px;
}

.sk-shapp-field {
   background-color: #f3f3f3;
   border: none;
   border-radius: 4px;
   background-image: none;
   height: 38px;
}

.sk-shapp-field-name { width: 230px; }
.sk-shapp-field-email { width: 230px; }
.sk-shapp-label-phone { width: 230px; }
.sk-shapp-field-comments { 
   width: 350px; 
   height: 100px;
   resize: none; 
}

.sk-shapp-form .button { cursor: pointer; }

.sk-shapp-initial > div {
   display: inline-block;
   border-radius: 6px;
}

.sk-shapp-title-loadinginfo {
   padding-top: 20px;
   font-size: 24px;
}

.sk-shapp-booknow-container {
  text-align: center; 
}

.sk-shapp-form .sk-shapp-nav .button { 
   -webkit-appearance: none;
   min-height: 36px;
   margin-left: 5px;
   padding: 6px 16px;
   font-size: 14px;
   line-height: 1.7em;
   background: #0075C4;
   color: #fff;
   border: none;
   border-radius: 18px;
   text-transform: none;
   cursor: pointer;
   outline: none;
}

.sk-shapp-form .sk-shapp-step2 .sk-shapp-container-calendar {
   padding: 0;
}

.sk-shapp-form fieldset,
.sk-shapp-form legend {
   margin: 0;
   padding: 0;
   border: none;
}

.sk-shapp-service { 
   min-height: 45px;
   padding: 7px 18px;
   border-bottom: solid 1px #ccc;
}

.sk-shapp-service:last-child {
   border: none;
}

.sk-shapp-service-heading {
   display: block;
}

.sk-shapp-services .sk-shapp-nowrap .sk-shapp-service-title {
   font-size: 20px;
}

.sk-shapp-service-content { 
   display: block;
   overflow:hidden; 
}

.sk-shapp-service-price { 
   float: right;
}

.sk-shapp-form .sk-shapp-step1 .sk-shapp-service-price {
   font-size: 15px;
   background: none;
}

.sk-shapp-service-description {
   display: inline-block;
}

.sk-shapp-service:hover {
   background: rgba(0, 0, 0, .06);
}

.sk-shapp-nowrap { white-space: nowrap; }

.sk-shapp-service-radio { 
	float: left;
   margin-right: 10px;
   padding-top: 5px;
}

.sk-shapp-calendar {
   display: flex;
   padding: 0px 5px;
   align-items: flex-start;
   flex-wrap: wrap;
}

.sk-shapp-calendar-prev,
.sk-shapp-calendar-next {
   width: 22px;
   cursor: pointer;
}

.sk-shapp-calendar-prev {
   float: left;
}

.sk-shapp-calendar-next {
   float: right;
}

.sk-shapp-calendar-arrow {
   position: relative;
   border: solid #1f61da;
   border-width: 0 2px 2px 0;
   display: inline-block;
   padding: 4px;
   border-radius: 2px;
   cursor: pointer;
}

.sk-shapp-calendar-arrow.prev {
   left: 8px;
   transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}

.sk-shapp-calendar-arrow.next {
   left: -8px;
   transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

.sk-shapp-calendar-prev.disabled,
.sk-shapp-calendar-next.disabled {
   cursor: default;
   opacity: 0.5;
}

.sk-shapp-calendar-prev.disabled .sk-shapp-calendar-arrow,
.sk-shapp-calendar-next.disabled .sk-shapp-calendar-arrow {
   cursor: default;
}

.sk-shapp-datepicker,
.sk-shapp-timepicker {
   margin-top: 30px;
}

.sk-shapp-timepicker {
   min-width: 300px;
   max-width: 420px;
}

.sk-shapp-datepicker {
   margin-right: 30px;
}

.sk-shapp-timepicker-hours {
   display: flex;
   margin-top: 15px;
   flex-wrap: wrap;
}

.sk-shapp-timepicker input {
   display: none;
}

.sk-shapp-container-selectstaff {
   width: 30%;
   min-width: 250px;
   display: inline-block;
   margin-left: 14px;
}

.sk-shapp-timeslot-wrapper {
   width: 97px;
   margin: 4px;
   background-color: #f6f6f6;
   text-align: center;
   font-size: 14px;
   border-radius: 4px;
}

.sk-shapp-timeslot {
   display: block;
   height: 38px;
   line-height: 38px;
   border-radius: 4px;
}

.sk-shapp-timeslot,
.sk-shapp-timeslot input {
   cursor: pointer;
}

.sk-shapp-timeslot:hover {
   background: #f9f9f9;
}

.sk-shapp-timepicker input:checked + label.sk-shapp-timeslot {
   background: #0075C4; 
   color:#fff;
}

.sk-shapp-datepicker {
   padding: 14px;
   border: solid 1px #ccc;
   border-radius: 2px;
}


.sk-shapp-datepicker > table {
   border-collapse: collapse;
   padding: 0;
}

.sk-shapp-datepicker > table tr th,
.sk-shapp-datepicker > table tr td {
   max-width: 40px;
}

.sk-shapp-datepicker > table tr th {
   padding: 5px;
   font-weight: normal;
   text-align: center;
}

.sk-shapp-datepicker-day  {
   border: 1px solid transparent;
   display: block;
   width: 32px;
   height: 32px;
   margin: 1px;
   padding: 0;
   line-height: 32px;
   text-align: center;
   border-radius: 150px;
   cursor: pointer;
}

.sk-shapp-datepicker-day.selected {
   background-color: #0075C4;
   color: #fff;
}

.sk-shapp-datepicker-day.disabled {
   color: #ccc;
   cursor: default;
}

.sk-shapp-datepicker-navigation {
   height: 32px;
   line-height: 32px;
   text-align: center;
}

.sk-shapp-datepicker-navigation > p,
.sk-shapp-timepicker > p {
   font-size: 16px;
}



.sk-shapp-steps {
   margin-bottom: 3px;
}

.sk-shapp-step-header,
.sk-shapp-step-footer,
.sk-shapp-step-content {
   padding: 0 18px;
   border: solid 1px #ccc;
   font-size: 14px;
   color: #444;
}

.sk-shapp-step-content {
   background-color: #fff;
}

.sk-shapp-step-header,
.sk-shapp-step-footer {
   height: 63px;
   line-height: 63px;
   background-color: #fafafa;
}

.sk-shapp-step-header {
   border-top-left-radius: 8px;
   border-top-right-radius: 8px;
   border-bottom-width: 0;
}

.sk-shapp-step-footer {
   border-top-width: 0;
   border-bottom-left-radius: 8px;
   border-bottom-right-radius: 8px;
}

.sk-shapp-form .sk-shapp-step-header h1,
.sk-shapp-form .sk-shapp-step-header h2,
.sk-shapp-form .sk-shapp-step-header h3,
.sk-shapp-form .sk-shapp-step-content h1,
.sk-shapp-form .sk-shapp-step-content h2,
.sk-shapp-form .sk-shapp-step-content h3,
.sk-shapp-form .sk-shapp-step-footer p,
.sk-shapp-step-content p {
   color: #444;
}

.sk-shapp-step-footer .sk-shapp-nav {
   line-height: 63px;
}

.sk-shapp-step-header h1 {
   font-size: 20px;
   line-height: 63px;
}

.sk-shapp-nav {
   float: right;
}

.sk-shapp-cancel { 
   color: #444;
   cursor: pointer;
}

.sk-shapp-cancel:hover {
   color: #c5c5c5;
}


.sk-shapp-confirmation-summary-table {
   width: 100%;
   margin: 15px 0;
   border-collapse: collapse;
}

.sk-shapp-confirmation-summary-table td {
   padding: 5px;
   border-bottom: solid 1px #ccc;
}

.sk-shapp-confirmation-summary-table td:nth-child(2){
   min-width: 100px;
   font-weight: bold;
}

.sk-shapp-confirmation-summary-table tr:last-child td {
  border: none;
}


.sk-shapp-mesasges .sk-shapp-title {
   margin: 15px 0 10px 0;
   font-size: 18px;
}

.sk-shapp-step1,
.sk-shapp-step3,
.sk-shapp-mesasges {
   max-width: 600px;
   margin: 0px auto;
   text-align: left;
}

.sk-shapp-step2 {
   max-width: 800px;
   margin: 0px auto;
   text-align: left;
}

/*--- Responsive Styles ------------------------------------------------------*/
@media screen and (max-width: 660px) {
   .sk-shapp-calendar {
      flex-wrap: wrap;
   }
   .sk-shapp-datepicker {
      margin-right: 0;
   }
}


@media screen and (max-width: 400px) {
   .sk-shapp-timeslot-wrapper {
      width: 95px;
      margin: 3px;
   }
   
   .sk-shapp-timepicker {
      width: 100%;
   }
   
   .sk-shapp-field-name,
   .sk-shapp-field-email,
   .sk-shapp-label-phone,
   .sk-shapp-field-comments { 
      width: 100%; 
   }
}

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

   .sk-shapp-time-no-slots {
      padding: 0 30px;
   }

  .sk-shapp-timepicker-hours {
   padding: 8px 4px;
   justify-content: center;
  }

   .sk-shapp-step-header h1 {
      font-size: 18px;
   }

   .sk-shapp-step2 .sk-shapp-step-content,
   .sk-shapp-calendar {
      padding: 0;
   }

   .sk-shapp-timepicker {
      margin-top: 20px;
      text-align: center;
   }
   
   .sk-shapp-datepicker {
      margin: 0 auto;
      margin-top: 20px;
      padding: 8px 4px;
   }

   .sk-shapp-step-footer {
      margin-bottom: 50px;
      text-align: center;
   }

   .sk-shapp-step-footer .sk-shapp-nav {
      float: none;
      width: 100%;
      text-align: center;
   }
}