/*
Author - Imenso Software
font-family: 'Open Sans', sans-serif;dfsdfdsfds
*/
:root {
    --dark-color: #353535;
    --clr-purple: #FF285C;
    --green-color: #7BD483;
    --white-color: #fff;
}

body {
  font-family: 'Open Sans', 'Helevetica', sans-serif !important;
  font-size: 16px;
    line-height: 22px;
    color:#4D4D4D;
}
body.appointment {
    background: #f4f4f4;
}

h1, h2, h3, h4, h5 {
	font-weight: 600;
  line-height: 1.3;
}
h2{
    font-weight: 700;
    font-size: 20px;
    line-height: 27.24px;
    margin: 64px 0 40px 0;
}
.el_info{
    font-weight: 600;
    font-size: 18px;
    line-height: 24.51px;
}
.login-button {
    margin: auto 10px;
    position: absolute;
    top: 0;
    bottom: 0;
    height: 34px;
    width: 80px;
    right: 10px;
}
.btn-primary {
    color: #fff;
    background-color: #2F80ED;
    border-color: #2F80ED;
}

.nav > li > a:focus, .nav > li > a:hover {
    background-color: transparent;
    text-decoration: none;
}
.nav .open > a, .nav .open > a:focus, .nav .open > a:hover {
    background-color: transparent;
}
.blue-bg {
  background-color: #305896;
}
.white-bg {
  background-color: #FFF;
}
.grey-bg {
  background-color: #ECECEC;
}
.blk-bg {
  background-color: #666;
}
.green-button {
    background-color: #3ab54a;
    border-color: #3ab54a;
    color: #fff;
}
.white-text {
  color: #FFF;
}

.badge-light {
    font-weight: normal;
    background-color: #28a745;
    font-size: 12pt;
}

.dotted {
    /*border-bottom: 3px dotted;
    line-height: 1.5;*/
    cursor: pointer;
    color: #2F80ED;
}

.octb_form {
  background-color: #FFFFFF;
  padding: 40px 50px 20px;
  width: 500px;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 32px auto;
  border-radius: 8px;
  box-shadow: 0px 8px 32px rgba(0,0,0,0.15);
}

.line-heading {
    margin: 0 auto;
    font-size: 20px;
}
.line-heading p {
    background-color: #fff !important;
    color: #333;
    display: inline-block;
    font-size: 36px;
    font-weight: 600;
    letter-spacing: 2px;
    margin: 0;
    padding: 0 20px;
    position: relative;
    text-transform: capitalize;
    z-index: 1;
}
.form-control {
  border: 1px solid #BFBFBF;
  background: #FFFFFF;
  box-shadow: none;
  box-sizing: border-box;
  border-radius: 4px;
  padding: 6px 12px;
  height: 40px;
  width: 320px;

  font-size: 15px;
}
#addwallet .form-control {
    width: 100%;
    max-width: 320px;
}
.form-control:focus {
  box-shadow: none;
  border-color: #000;
}
.btn-alpha {
  background: #2F80ED;
  color: #FFF;
  text-transform: uppercase;
  border: none;
  height: 50px;
  font-size: 14px;
  padding: 10px 40px;
  display: inline-block;
  text-align: center;
  font-weight: 600;
  border-radius: 3px;
  line-height: 31px;
}
.btn-alpha:hover {
  background: #305896 !important;
  color: #FFF !important;
}
.btn-alpha:focus {
  color: #FFF;
}
.btn-beta {
  background: #EEE;
  color: #000;
  text-transform: uppercase;
  border: none;
  height: 40px;
  font-size: 12px;
  padding: 8px 20px;
  display: inline-block;
  text-align: center;
  font-weight: 600;
  border-radius: 3px;
  line-height: 23px;
}

.btn-beta.green-btn {
    background: var(--green-color);
    color: var(--white-color);
}

.btn-header {
    padding: 7px 7px;
}

.octb_vcabulary .btn-beta {
  height: 50px;

}
.modal .btn-beta {
  height: 50px;
  font-size: 14px;

}
.btn-beta:hover {
  background: #DDD !important;
  color: #000 !important;
}
.btn-beta.green-btn:hover {
    background: var(--green-color) !important;
    color: var(--white-color) !important;
}
.lesson-per-week-duration {
    color: #000;
    text-transform: uppercase;
    height: 40px;
    font-size: 12px;
    padding: 8px 20px;
    text-align: center;
    font-weight: 600;
    line-height: 23px;
}
.lesson-per-week-duration select {
    border: 1px solid #DDD;
    height: 40px;
    padding: 8px 10px;
    font-size: 13px;
    margin-left: 10px;
}
.lesson-per-week-duration select:focus {
    outline: none;
}
.page-heading {
    margin: 20px 0;
}
.appointment_area {
    background: #fff;
    padding: 2% 2% 0;
    margin-top: 30px;
}
.ph-icon {
    background: #2F80ED;
    border-radius: 100%;
    box-shadow: 0 5px 10px #ddd;
    color: #fff;
    float: left;
    padding: 15px;
    height: 50px;
    line-height: 16px;
    text-align: center;
    width: 50px;
}

.mt0 {
  margin-top: 0;
}
.mt1 {
  margin-top: 10px;
}
.mt2 {
  margin-top: 20px;
}
.mt3 {
  margin-top: 30px;
}
.mt4 {
  margin-top: 40px;
}
.mt5 {
  margin-top: 50px;
}
.mb1 {
  margin-bottom: 10px;
}
.mb2 {
  margin-bottom: 20px;
}
.mb3 {
  margin-bottom: 30px;
}
.mb5 {
  margin-bottom: 50px;
}
#msform {
  margin: 50px auto;
  text-align: center;
  position: relative;
}
.form-header {
  width: 500px;
}
/*Hide all except first fieldset*/
#msform fieldset:not(:first-of-type) {
  display: none;
}


.form-option li {
  list-style: none;
  display: inline-block;
  margin: 0 10px;
}
.form-option li input {
  height: 100px;
  width: 200px;
  background-color: #3C63A3;
  display: inline-block;
  color: #FFF;
  font-weight: 600;
  text-align: center;
  line-height: 100px;
  font-size: 20px;
  border: none;
}
.time-box {
    background-color: #3c63a3;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    height: 160px;
    margin: 10px;
    padding: 28px 10px 10px;
    text-align: center;
    width: 160px;
}
.time-box label, .time-box select, .time-box button {display: inline-block; margin: 4px 0;}
.burger {
  padding: 50px 0;
}
.time-box select {color: #000;}
.btn-sml {
   background-color: #fbfbfb;
    color: #2a57a1;
    cursor: pointer;
    font-size: 0.8em;
    font-weight: 600;
    margin: 0 auto;
    padding: 6px 30px;
    border-radius: 2px;
    border: 0;
}
.navbar-default {
  background: #2850A3;
  height: 90px;
  border: none;
  border-radius: 0;
  margin-bottom: 0;
}
.navbar-default .navbar-nav > li > a {
  color: #FFF;
  font-size: 18px;
}
.navbar-default .navbar-nav > li > a:hover {
  color: #FFF;
}

.big-form-inner p {
  font-size: 13px;
  color: #777;
}
.big-form-inner select {
  width: 100%;
  text-align: center;
}
.big-form-inner label {
  font-weight: normal;
}
.btn-big-blue {
     background: #2850A3;
    border: medium none;
    border-radius: 10px;
    color: white;
    min-width: 280px;
    padding: 18px 40px;
    text-transform: uppercase;
}
#footer {
  font-size: 12px;
}
.footer-links li {
    border-right: 1px solid #DDD;
    display: inline-block;
    line-height: 10px;
    list-style: outside none none;
    margin-right: 4px;
    padding-bottom: 1px;
    padding-right: 8px;
    padding-top: 1px;
}
.footer-links li span.teacher-choose-popup {
    cursor: pointer;
    user-select: none;
}
.footer-links li:last-child {
  border-right:none;
}
.footer-links li a {
  color: #FFF;
}
.db-box {
  border: 1px solid #CCC;
  border-radius: 10px;
  padding: 50px;
}
.db-box h3 {
  font-weight: 600;
  font-size: 16px;
}
.db-box-sml {
    background: #EEE none repeat scroll 0 0;
    border-radius: 10px;
    margin-bottom: 30px;
    width: 100%;
    overflow: hidden;
}
.db-box-sml h4 {
  font-size: 30px;
  color: #2850a3;
  font-weight: 600;
  margin-bottom: 22px;
}
.display-table {
  display: table;
}
.left-part {
  display: table-cell;
  width: 30%;
  vertical-align: middle;
  padding: 40px;
  background: #DDD;
}
.left-part ul li {
  margin: 10px 0;
  font-size: 14px;
}
.left-part ul li img {
  margin-right: 5px;
  width: 17px;
}
.right-part {
  display: table-cell;
  width: 70%;
  vertical-align: middle;
  padding: 30px;
  background: #EEE;
}
.right-part img {
    width: 64px;
}
.right-part a {
  /*opacity: 0.6;*/
  position: relative;
}
.right-part a:hover {
  opacity: 1;
}
.right-part ul li {
  display: inline-block;
  margin: 20px;
  text-align: center;
}
.act-title {
  display: block;
  text-align: center;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 13px;
  color: #000;
  margin-top: 5px;
}
.modal-dialog {
  width: 60%;
}
.modal-backdrop {
  background: rgba(0,0,0,0.8);
}
ul {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0; }

a:focus, a:hover, a:active {
  text-decoration: none;
  outline: none; }

.pad_0 {
  padding: 0 !important; }

.marg_0 {
  margin: 0; }
.mt30{
  margin-top: 30px;
}

.side_bar {
  width: 9%;
  background-color: #2F80ED;
  position: fixed;
  text-align:center;
  top: 0;
  bottom: 0;
  overflow-y:auto;
  flex-shrink: 0;
}


.side_bar ul {
  display: flex;
  flex-direction: column; }

.side_bar ul span {
  font-size: 12px;
  font-weight: 600;
  margin-top: 5px;
  line-height: 17px;
  }

.side_bar i {
  color: #fff;
  font-size: 43px; }
.no-record {
    display: block;
    margin-top: 12%;
    position: relative;
    text-align: center;
    color: #777;
}
.side_bar ul a {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-direction: column;
  color: #fff;

  width: 100%;
     padding: 16px 0;
  background: transparent !important; }

.side_bar ul a:hover {
  background-color: transparent !important; }

.side_bar li.active {
    background-color: #7BD483;
}

.side_bar li:hover {
  background-color: #008DD8;
  }

.side_bar li {
   text-align: center;
  transition: background ease-in-out 0.3s; }
  .side_bar lihover {
    background-color: #fff; }

.right_container {
  display: block;
  width: 91%;
  margin-left: 9%; }


.main_heading {
  font-weight: bold; }

.comn_pad {
  padding-right: 25px;
  padding-left: 25px; }

.header {
  padding: 3px 25px;
  border-bottom: 1px solid #DDD;
  min-height: 58px;
  position: relative;
  background: #f4f4f4;
 }
 .header .navbar-nav li {

 }
 .dropdown-menu li{
  margin:0 !important;
 }
 .header .navbar-nav li:last-child {
  margin-right:15px;
 }
.btn-header {
  height: 35px;
  padding: 7px 18px !important;
  margin-top: 7px;
}
.inner_tabs {
  padding: 15px 0;
 }
  .inner_tabs li {
    background-color: #e8eceb;
    margin-right: 4px; }

.inner_tabs.nav a {
  color: #666;
  font-size: 14px;
  text-align: center;
  font-weight: 700;
  min-width: 170px;
  border-radius: 0;
  padding: 9px 15px !important;
  text-transform: uppercase; }

.nav-pills.inner_tabs li.active a {
  border: 1px solid #ddd;
  background-color: #fff !important;
  color: #333 !important; }

.bdr_tb {
  background: #EFF5F5; }

.icons_wrp {
  list-style: outside none none;
  padding-top: 15px;
  padding-left: 0;
  margin-bottom: 0; }
  .icons_wrp li {
    background-color: #EAECE9;
    float: left;
    margin-bottom: 5px;
    margin-right: 5px;
    width: 32%; }
    .icons_wrp li a {
      align-items: center;
      display: flex;
      height: 250px;
      justify-content: center; }
      .icons_wrp li a img {
        max-height: 170px; }

.light_bdr_tb {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd; }

.latest_box {
  padding: 15px 0; }

.padd_15tb {
  padding-bottom: 15px;
  padding-top: 15px; }

.latest_box ul {
  list-style: outside none none;
  padding-left: 10px; }
  .latest_box ul li {
    font-size: 16px;
    margin-bottom: 0.6em;
    position: relative; }
    .latest_box ul li:before {
      color: #305896;
      content: "\f04d";
      font-family: FontAwesome;
      font-size: 14px;
      margin-right: 15px; }

.drop_down_btn {
  background: transparent none repeat scroll 0 0;
  border: medium none;
  color: #333;
  font-size: 14px;
  position: relative;
  text-transform: uppercase;
  padding-left: 25px; }
  .drop_down_btn:before {
    color: #999;
    content: "\f107";
    font-family: FontAwesome;
    font-size: 31px;
    left: 0;
    position: absolute;
    transition: all ease-in-out 0.3s;
   }
.caret-dd:after {
   content: "\f107";
    font-family: FontAwesome;
    font-size: 19px;
    margin-left: 4px;
    font-weight: 400;
}

.dropdown {
  margin-left: 3px;
}
.dropdown-menu::before {
    border-bottom: 10px solid rgba(190, 190, 190, 0.4);
    border-left: 14px solid transparent;
    border-right: 14px solid transparent;
    bottom: 100%;
    content: " ";
    height: 0;
    left: 80%;
    margin-left: -9px;
    pointer-events: none;
    position: absolute;
    width: 0;
}
.dropdown-menu::after {
    border-bottom: 9px solid #fff;
    border-left: 13px solid transparent;
    border-right: 13px solid transparent;
    bottom: 100%;
    content: " ";
    height: 0;
    left: 80%;
    margin-left: -8px;
    pointer-events: none;
    position: absolute;
    width: 0;
}
.dropdown-menu {
    background: #fff none repeat scroll 0 0;
    border: medium none;
    border-radius: 4px !important;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
    position: absolute;
    right: 0;
    top: 50px;
    z-index: 501;
    text-align: left;
    padding: 10px 0;
    text-transform: none;
}
.dropdown-menu > li > a {
  padding:7px 20px;
}
body.appointment .multiselect-container.dropdown-menu > li > a {
    padding: 0;
}
.dropdown > a {
  color: #000;
  text-transform: capitalize;
  font-weight: 600;
  transition: color 300ms;
}

.dropdown > a:hover{
    color: #8fb1ce;
}
/*.main_flex {*/
/*  display: flex;*/
/*  flex-direction: row; }*/

/*========================login-resgister form css==========================*/
.form_hero {
  min-height: 651px;
  background-color: #305896; }

.form_head {
  color: #fff; }

.cookie_wrp {
  font-size: 15px;
  padding: 20px 0;
  background-color: #fff; }

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

.cookie_inner button {
  background: #305896 none repeat scroll 0 0;
  color: #fff;
  font-size: 16px;
  margin-left: 20px;
  transition: background-color 0.3s ease 0s; }
  .cookie_inner button:hover, .cookie_inner button:focus {
    color: #fff;
    background-color: #008DD8; }

.cookie_wrp {
  bottom: 0;
  position: fixed;
  width: 100%; }

.custm_form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 580px; }

.custm_form_inner {
  background-color: #fff;
  border-radius: 9px;
  padding: 30px 50px; }

.custm_form_inner input {
  border-radius: 0;
  color: #999;
  font-size: 1.4em;
  height: 55px;
  transition: all ease-in-out 0.3s;
  padding: 2%;
  text-align: center; }
  .custm_form_inner input:focus, .custm_form_inner input:active {
    box-shadow: none;
    border-color: #eee; }

.form_header p {
  font-size: 20px;
  position: relative; }


.form_header {
  margin: 0 auto 15px;
   }

.form_logo_wrp {
  align-items: center;
  background: #008DD8;
  border-radius: 50%;
  display: flex;
  height: 90px;
  justify-content: center;
  margin: 0 auto 25px;
  width: 90px; }

.form_header p::before {
  right: 0; }

.custm_form_inner button {
  background-color: #ececec;
  border: medium none;
  font-size: 1.2em;
  padding: 10px;
  text-transform: uppercase;
  width: 100%; }

.error-text{
  color: red;
  font-weight: normal;
}

.checkbox .cr{
    border: 1px solid #ccc;
    border-radius: 2px;
    color: #008DD8;
    display: inline-block;
    float: left;
    font-size: 16px;
    height: 20px;
    margin-right: 0.5em;
    padding-left: 0;
    position: relative;
    width: 20px;
}
.checkbox label input[type="checkbox"]{
    display: none;
}
.checkbox .cr .cr-icon{
    font-size: 0.8em;
    left: 20%;
    line-height: 0;
    position: absolute;
    top: 50%;
}
.checkbox label input[type="checkbox"] + .cr > .cr-icon{
    opacity: 0;
    transform: scale(3) rotateZ(-20deg);
    transition: all 0.3s ease-in 0s;
}
.checkbox label input[type="checkbox"]:checked + .cr > .cr-icon{
    opacity: 1;
    transform: scale(1) rotateZ(0deg);
}
.radio .cr{
    border: 1px solid #ccc;
    border-radius: 100%;
    color: #008DD8;
    display: inline-block;
    float: left;
    height: 20px;
    margin-right: 0.5em;
    position: relative;
    width: 20px;
}
.radio label input[type="radio"]{
    display: none;
}
.radio .cr .cr-icon{
    font-size: 0.8em;
    left: 20%;
    line-height: 0;
    position: absolute;
    top: 50%;
}
.h-radio {
  padding: 10px !important;
}
.h-radio label {
  margin-bottom: 0;
}
.h-radio:hover {
  background-color: #EEE;
}
.d-block {
  display: block !important;
}
.radio label input[type="radio"] + .cr > .cr-icon{
    opacity: 0;
    transform: scale(3) rotateZ(-20deg);
    transition: all 0.3s ease-in 0s;
}
.radio label input[type="radio"]:checked + .cr > .cr-icon{
    opacity: 1;
    transform: scale(1) rotateZ(0deg);
}
.loader_wraper .canvas-holder canvas {
    height: 100% !important;
    width: 100% !important;
}
.loader_wrap .canvas-holder hr {
    border-color: #000;
    border-width: 2px;
    margin-bottom: 10px;
    margin-top: 10px;
    width: 50%;
}
.dashh {
    font-size: 17px !important;
    margin-bottom: 25px;
}
#app {
 min-height: 92vh;
}
/*.comn_pad {min-height: 800px;}*/
.loader_wrap .canvas-holder{
  width: 92% !important;
  margin: 0 auto;
}
.side_bar ul{
  width: 100%;
}
.side_bar .navbar-brand{
  height: 85px;
  display: block;
  float: none;
}
.side_bar .navbar{
  margin-bottom: 0px;
  border: none;
}
.navbar-brand img {
    /*height: 100%;
    width: auto;*/
    margin: 0 auto;
}
.side_bar .navbar-brand img{width: 100%; height: auto; max-width: 70px;}
.container .navbar-brand img{ height: auto; width: 180px;}
.side_bar .navbar-nav li img{
  width: 27px;
}
strike{
			text-decoration:line-through;
			color: red;
		}
		added{
			font-weight:700;
			color: green;
		}
		#conversation{
			padding: 12px;
			border:1px solid #DDD;
      margin: 30px 0;
		}
    .complete #conversation{
      padding: 0;
      border:none;
      margin: 30px 0;
    }
/*---Start Progress Bar---*/
#homework_hint_button input {
    background-color: #ddd;
     border: 1px solid #ccc;
    border-radius: 20px;
    color: #000;
    cursor: pointer;
    font-size: 1em;
    margin: 1em auto;
    padding: 6px;
    width: 23%;
}
.octb_progressbar{
  height: 30px;
  background-color: #f9f9f9;
  box-shadow: none;
}
.octb_bar {
	box-shadow: none;
    background-color: #008000;
    color: #FFF;
    line-height: 29px;
}
.stars img {
  width: 35px;
  margin-right: 6px;
}
.stars span {
    font-size: 24px;
    font-weight: 600;
}
.octb_btn {
    background-color: #2850a3;
    border-radius: 10px;
    color: #fff;
    font-size: 1em;
    margin: 1em auto;
    padding: 1em;
    text-align: center;
    width: 80%;
}
#progress_bar p {
    background: #f9f9f9 none repeat scroll 0 0;
}
.octb_view_lesson_btn {
    background-color: #008000;
    border-radius: 16px;
    color: #fff;
    padding: 5px 80px;
}
.octb_btn:hover{
  color: #fff;
}
.octb_view_lesson_btn:hover{
  color: #fff;
}
.gutter-xl {
  padding: 0 150px;
}
#octb_textarea {
    min-height: 200px;
    width: 100%;
}
.octb_submit_btn{
 background-color: #2850a3;
    border-radius: 10px;
    color: #ffffff;
    cursor: pointer;
    font-size: 1.5em;
    margin: 5px auto;
    padding: 15px 80px;
    width: 20%;
}
.octb_submit_btn:hover{
  color: #fff;
}
.octb_sub{
  text-align: center;
}
/*---End Progress Bar---*/

/*---Start Buy Lessons ---*/
.panel-heading{
  background-image: url(../images/pricebg.png) !important;
  border-radius: 15px;
}
.plans {
  padding: 0 !important;
}
.plans h5 {
  background: #ed1c24;
  padding: 10px 10px;
  color: #fff;
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: bold;}

.panel-pricing {
  -moz-transition: all .3s ease;
  -o-transition: all .3s ease;
  -webkit-transition: all .3s ease;
}
.panel-pricing .panel-heading {
  padding:13px 10px;
  color:#fdfdfd;
}
.panel-pricing .panel-heading .fa {
  margin-top: 10px;
  font-size: 58px;
}
.panel-pricing .list-group-item {
  color: #777777;
  border-bottom: 1px solid rgba(250, 250, 250, 0.5);
}
.panel {
    background: #FFF none repeat scroll 0 0;
    border-radius: 10px;
    border: 1px solid #DDD;
}
.panel-pricing .panel-body {
  padding:0px;
}
.panel-footer {
 background-color:transparent;
 padding: 40px 0px;
 border-top: 0px;
}
.p-title {
    font-size: 50px;
    margin: 0;
    color: #305896;
    text-align: center;
    text-transform: capitalize;
    font-weight: 600;
}
.p-title .sml-text {
  font-size: 0.5em;
}
.panel-heading h3 {
    font-size: 50px;
    margin: 0;
}
.p-time {
  font-size:18px;
  text-align: center;
  text-transform: capitalize;
}
.p-price {
 font-size:18px;
 text-align: center;
 text-transform: capitalize;
 color: #ed1c24;
 font-weight: bold;
}
.p-tax {
  background-color: #f5f5f5;
 font-size:15px;
 text-align: center;
 text-transform: capitalize;
 padding: 2px;
}
.octb_buy {
    font-size: 16px;
}

/*---End Buy Lessons---*/
/*---Start popup section---*/


.words {
    background: #f9f9f9 none repeat scroll 0 0;
    margin: 20px 0;
    padding: 10px;
    text-align: left;
}
.modal-header {
    border-bottom:none;
    padding: 10px;
    background: #EEE;
}
.modal-header h4 {
  font-size: 14px;
  font-weight: 700;
}
hr{
	border-color: #DDD;
}
.caps {
  text-transform: uppercase;
}
.modal-footer{
	border-top: none;
}
.all-done {
  font-size: 20px;
  font-weight: 600;
}


#conversation th {
    text-align: center;
}#conversation td {
    text-align: center;
}
.pnote {
    padding-top: 20px;
    padding-bottom: 50px;
}
/*---End popup section---*/

/*loader*/
/** BEGIN LOADER **/

#link {
    color: #E45635;display:block;
    font-size: 12px;
    text-align:center; text-decoration: none;
}
#link:hover {color: #CCCCCC}
#link, #link:hover {-webkit-transition: color 0.5s ease-out;-moz-transition: color 0.5s ease-out;-ms-transition: color 0.5s ease-out;-o-transition: color 0.5s ease-out;transition: color 0.5s ease-out;}


        @keyframes rotate-loading {
            0%  {transform: rotate(0deg);-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); -o-transform: rotate(0deg); -moz-transform: rotate(0deg);}
            100% {transform: rotate(360deg);-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); -o-transform: rotate(360deg); -moz-transform: rotate(360deg);}
        }

        @-moz-keyframes rotate-loading {
            0%  {transform: rotate(0deg);-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); -o-transform: rotate(0deg); -moz-transform: rotate(0deg);}
            100% {transform: rotate(360deg);-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); -o-transform: rotate(360deg); -moz-transform: rotate(360deg);}
        }

        @-webkit-keyframes rotate-loading {
            0%  {transform: rotate(0deg);-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); -o-transform: rotate(0deg); -moz-transform: rotate(0deg);}
            100% {transform: rotate(360deg);-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); -o-transform: rotate(360deg); -moz-transform: rotate(360deg);}
        }

        @-o-keyframes rotate-loading {
            0%  {transform: rotate(0deg);-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); -o-transform: rotate(0deg); -moz-transform: rotate(0deg);}
            100% {transform: rotate(360deg);-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); -o-transform: rotate(360deg); -moz-transform: rotate(360deg);}
        }

        @keyframes rotate-loading {
            0%  {transform: rotate(0deg);-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); -o-transform: rotate(0deg); -moz-transform: rotate(0deg);}
            100% {transform: rotate(360deg);-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); -o-transform: rotate(360deg); -moz-transform: rotate(360deg);}
        }

        @-moz-keyframes rotate-loading {
            0%  {transform: rotate(0deg);-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); -o-transform: rotate(0deg); -moz-transform: rotate(0deg);}
            100% {transform: rotate(360deg);-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); -o-transform: rotate(360deg); -moz-transform: rotate(360deg);}
        }

        @-webkit-keyframes rotate-loading {
            0%  {transform: rotate(0deg);-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); -o-transform: rotate(0deg); -moz-transform: rotate(0deg);}
            100% {transform: rotate(360deg);-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); -o-transform: rotate(360deg); -moz-transform: rotate(360deg);}
        }

        @-o-keyframes rotate-loading {
            0%  {transform: rotate(0deg);-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); -o-transform: rotate(0deg); -moz-transform: rotate(0deg);}
            100% {transform: rotate(360deg);-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); -o-transform: rotate(360deg); -moz-transform: rotate(360deg);}
        }

        @keyframes loading-text-opacity {
            0%  {opacity: 0}
            20% {opacity: 0}
            50% {opacity: 1}
            100%{opacity: 0}
        }

        @-moz-keyframes loading-text-opacity {
            0%  {opacity: 0}
            20% {opacity: 0}
            50% {opacity: 1}
            100%{opacity: 0}
        }

        @-webkit-keyframes loading-text-opacity {
            0%  {opacity: 0}
            20% {opacity: 0}
            50% {opacity: 1}
            100%{opacity: 0}
        }

        @-o-keyframes loading-text-opacity {
            0%  {opacity: 0}
            20% {opacity: 0}
            50% {opacity: 1}
            100%{opacity: 0}
        }
        .loading-inner,
        .loading {
            height: 100px;
            position: relative;
            width: 100px;
            border-radius: 100%;
            margin: 3% auto 0;
        }
.loading-container {
  backdrop-filter: blur(6px);
  background:rgba(255,255,255,0.8);
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 99999;
}
.loading-inner {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9999;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 100px;
    height: 100px;
}
        .loading {
            border: 2px solid transparent;
            /*//border-color: transparent #fff transparent #FFF;*/
            border-color: transparent black transparent black;
            -moz-animation: rotate-loading 1.5s linear 0s infinite normal;
            -moz-transform-origin: 50% 50%;
            -o-animation: rotate-loading 1.5s linear 0s infinite normal;
            -o-transform-origin: 50% 50%;
            -webkit-animation: rotate-loading 1.5s linear 0s infinite normal;
            -webkit-transform-origin: 50% 50%;
            animation: rotate-loading 1.5s linear 0s infinite normal;
            transform-origin: 50% 50%;
        }

        .loading-inner:hover .loading {
            border-color: transparent #E45635 transparent #E45635;
        }
        .loading-inner:hover .loading,
        .loading-inner .loading {
            -webkit-transition: all 0.5s ease-in-out;
            -moz-transition: all 0.5s ease-in-out;
            -ms-transition: all 0.5s ease-in-out;
            -o-transition: all 0.5s ease-in-out;
            transition: all 0.5s ease-in-out;
        }

        #loading-text {
            -moz-animation: loading-text-opacity 2s linear 0s infinite normal;
            -o-animation: loading-text-opacity 2s linear 0s infinite normal;
            -webkit-animation: loading-text-opacity 2s linear 0s infinite normal;
            animation: loading-text-opacity 2s linear 0s infinite normal;
            color: black;
            font-size: 10px;
            font-weight: bold;
            margin-top: 8px;
            opacity: 0;
            position: absolute;
            text-align: center;
            text-transform: uppercase;
            top: 40px;
            width: 100px;
        }
/*end loader*/

/*message*/
.ph-text {
  margin-left: 20px;
    position: relative;
}
.ph-text h4 {
  margin-top: 3px;
  margin-bottom: 4px;
}
.help-block {
  color: red;
  font-size: 13px;
}
.outer-wall {
	background: #FFF;
	padding: 50px;
	border: 2px solid #DDD;
}
.side_bar .navbar-header {
  width: 100%;
}
/*end message*/
.table-octb {
  border: 1px solid #DDD;
  font-size: 14px;
}
.table-octb td, .table-octb th {
  border-left: none !important;
}
table.dataTable thead th, table.dataTable thead td {
  border-bottom: 2px solid #DDD !important;
}
table.dataTable.no-footer {
  border-bottom: 1px solid #DDD !important;
}
.table-octb {
  margin-bottom: 50px;
}
#datatable_filter input {
  border: 1px solid #DDD;
  height: 40px;
  padding: 8px 10px;
  background-image: url(../images/search.png) !important;
  background-repeat: no-repeat;
  background-position: 94% center;
  background-size: 12% auto;
  font-size: 13px;
  margin: 5px 0;
  width: 97%;

}
#datatable_filter label {
  display: block;
}
#datatable_filter {
  font-size: 0;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: #EEE !important;
  border: 1px solid #EEE !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: #666 !important;
  border: 1px solid #666 !important;
}
table.dataTable thead th, table.dataTable thead td {
  padding: 8px !important;
}
.farer {
  margin-top: 20px;
  margin-bottom: 40px;
}
.modal-content {
  border: none;
  box-shadow: none;
  border-radius: 0;
}

.modal-open {
    overflow: hidden;
}
.modal .close {
  font-size: 38px;
  margin-top: -40px !important;
}
.dropdown .flags li a span, .dropdown dt a span {
    background-image: url("../images/flags.png");
    background-repeat: no-repeat;
    cursor: pointer;
    float: left;
    height: 11px;
    margin: 5px 6px 0 0;
    width: 16px;
}
.us a span {
    background-position: 0 0;
}
.uk a span {
    background-position: -16px 0;
}
.fr a span {
    background-position: -32px 0;
}
.de a span {
    background-position: -48px 0;
}
.nl a span {
    background-position: -64px 0;
}
.m-menu {
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
}
#answer_wrong {
  background: #FE8484;
    border-radius: 10px;
    bottom: 30px;
    color: #fff;
    left: 10%;
    padding: 20px;
    position: fixed;
    z-index: 999;
}
#answer_wrong h1 {
  font-size: 20px;
  margin-top: 0;
}
#answer_wrong h2 {
  font-size: 16px;
  margin-top: 0;
}
#answer_correct {
  background: #00d664;
    border-radius: 10px;
    bottom: 30px;
    color: #fff;
    left: 10%;
    padding: 20px;
    position: fixed;
    z-index: 999;
    text-align: center;
    display: none;
}
#answer_correct img {
  padding: 20px;
  width: 100px;
}
#answer_correct h1 {
  font-size: 20px;
  margin-top: 0;
  margin-bottom: 0;
}
#answer_correct h2 {
  font-size: 16px;
  margin-top: 0;
}


.completesuccess {
    margin-left: 6px;
    margin-top: -20px;
    width: 22px !important;
}


/*mj css*/
.text_heading_schedule {
  font-size: 1.5em;
    background: #ececec;
    margin: 10px 0;
    padding: 10px 0;
    color: #2850a3;
    font-weight:900;
}
.schedule_calendar_dow {
  display: inline-block;
    padding: 15px 5px;
    margin: 2px;
    font-weight: 900;
    min-width: 100px;
    font-size: 0.7em;
    cursor:not-allowed;
    text-align:center;
    background:#2850a3;
  border:#2850a3;
  border-style: solid;
    border-width: thin;
  color:#fff;
}

.schedule_calendar_day {
  display: inline-block;
    padding: 15px 5px;
    margin: 2px;
    cursor: pointer;
    color: #3089ce;
    background: #fff;
    border: #2850a3;
    border-style: solid;
    border-width: thin;
    font-weight: 900;
    min-width: 100px;
    font-size: 0.7em;
    text-align:center;
}

.schedule_calendar_day_group {
  display: inline-block;
    padding: 15px 5px;
    margin: 2px;
    cursor: pointer;
    color: #3089ce;
    background: #fff;
    border: #2850a3;
    border-style: solid;
    border-width: thin;
    font-weight: 900;
    min-width: 100px;
    font-size: 0.7em;
    text-align:center;
}

.schedule_calendar_day_dead {
  display: inline-block;
    padding: 15px 5px;
    margin: 2px;
    color: #fff;
    background: #ececec;
    border: #ececec;
    border-style: solid;
    border-width: thin;
    font-weight: 900;
    min-width: 100px;
    font-size: 0.7em;
    cursor:not-allowed;
    text-align:center;
}

.timepicker_col_student {
  display:inline-block;
  vertical-align:top;
  width:400px;
  border-right:#ececec;
  border-right-style: solid;
    border-right-width: thin;
}

.timepicker_col_teacher {
  display:inline-block;
  vertical-align:top;
  width:400px;
}

.timepicker_col_title {
  margin: 10px;
    font-size: 2em;
    font-weight: 800;
}

.timepicker_col_tz {
  margin: 10px;
    font-style: italic;
    min-height:150px;
}

#calendar_hours_available input {
  text-align: center;
    font-size: 3em;
    width: 200px;
    margin: 10px auto;
    padding:5px;

}

#timepicker_hours_client, #timepicker_hours_teacher ,#timepicker_hours_client_group,#timepicker_hours_teacher_group {
    background: #fff none repeat scroll 0 0;
    border: thin solid #ececec;
    box-shadow: 5px 15px 35px #ececec;
    display: none;
    height: 200px;
    left: 97px;
    overflow-x: hidden;
    overflow-y: scroll;
    position: absolute;
    text-align: center;
    top: 132px;
    width: 200px;
    z-index: 100;
}


.timepicker_fulltime_c,.timepicker_fulltime_t {
  margin:5px auto;
  background:#fff;
  cursor:pointer;
  padding:5px 0px;
}

.timepicker_fulltime_c:hover {
  background:#ececec;
}
.timepicker_fulltime_t:hover {
  background:#ececec;
}

#timepicker_notice {
  margin:10px;
  background:#eab3b3;
  padding:10px;
  display:none;
  font-weight:900;
  color:#fff;
}
.time_box_flex {
    display: flex;
    justify-content: center;
}
.timepicker_col_student > input , .timepicker_col_teacher input{
    font-size: 3em;
    text-align: center;
    width: 200px;
}
.timepicker_col_student , .timepicker_col_teacher{
  position: relative;
}

.duration_selector, .duration_selectorgroup {
  padding: 30px;
    background: #2850a3;
    text-transform: uppercase;
    text-align: center;
    cursor: pointer;
    font-size: 1.2em;
    display: inline-block;
    margin: 5px;
    min-width: 150px;
    color: #ffffff;
    border-color: #2850a3;
    border-width: 1px;
    border-style: solid;
}

.duration_selector:hover, .duration_selector.active,
 .duration_selectorgroup.active{
  background: #ffffff;
  color: #2850a3;
}

.duration_selector_clicked {
  padding: 30px;
    background: #ffffff;
    text-transform: uppercase;
    text-align: center;
    cursor: pointer;
    font-size: 1.2em;
    display: inline-block;
    margin: 5px;
    min-width: 150px;
    color: #2850a3;
    border-color: #2850a3;
    border-width: 1px;
    border-style: solid;
}
#fnb_hint_button {
  height: 50px !important;
}

.language_selector {
  padding: 30px;
    background: #2850a3;
    text-transform: uppercase;
    text-align: center;
    cursor: pointer;
    font-size: 1.2em;
    display: inline-block;
    margin: 5px;
    min-width: 150px;
    color: #fff;
    border-color: #2850a3;
    border-width: 1px;
    border-style: solid;
}

.language_selector:hover,.language_selector.active {
  background: #ffffff;
  color:#2850a3;
}

.language_selector_clicked {
  padding: 30px;
    background: #ffffff;
  color:#2850a3;
    text-transform: uppercase;
    text-align: center;
    cursor: pointer;
    font-size: 1.2em;
    display: inline-block;
    margin: 5px;
    min-width: 150px;
    border-color: #2850a3;
    border-width: 1px;
    border-style: solid;
}

/* fnb selected */

.selected{
  background-color:rgba(255,0,0,0.7);
  color:#fff !important;
}
.selected:hover{
  background: rgba(255,0,0,0.3);
}
.selected .cr{
  color: #fff;
  border-color: #fff;
}
.part-1 {
	background: #EFF5F5;
	position: fixed;
	width: 30%;
	top: 0;
	bottom: 0;
	border-right: 1px solid #DDD;
	overflow:auto;
}
.client-list ul li.active {
    border-bottom: medium none;
}
.client-list {
    margin-top: 100px;
}
.sidebar-topper {
	position: fixed;
	width: 27%;
	background: #EFF5F5;
	z-index: 99;
}
.client-list ul li {
    border-bottom: 1px solid #fff;
}
.mobile-show .nav > li {
    border-bottom: none;
}
.nav > li {
    display: block;
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.nav > li.refer {
    background: #F82872;
    user-select: none;
}
.nav > li:last-child {
    border-bottom: none;
}
.client-list ul li a {
    color: #333;
    font-weight: 400;
    line-height: 16px;
    padding: 8px 10px;
}
.sml {
    font-size: 11px;
}
.sidebar-search .inpt {
    background-color: #e4eded;
    border: medium none;
}
.search {
    background-image: url("../images/search.png");
    background-position: 346px center;
    background-repeat: no-repeat;
    background-size: 4% auto;
}
.inpt {
    background-color: #fff;
    border: 1px solid #ddd;
    color: #555;
    display: block;
    font-size: 14px;
    height: 40px;
    line-height: 1.42857;
    padding: 6px 12px;
    transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
    width: 100%;
}
.client-list ul li.active a {
    background-color: #f6f9fb;
    border-left: 2px solid #5b9bd1;
    color: #0078d7;
    margin-left: -2px;
}
.client-list ul li a:hover {
    background-color: #fafcfd;
    color: #000;
}
.fs13 {
	font-size: 13px;
}
.sidebar-header h4 {
	margin-top: 20px;
}

.success {
    background-color: #00D664;
}
.start_over_btn {
    height: 42px !important;
    padding: 6px 35px !important;
}
.form-option.lessontype > li span {
    bottom: 8px;
    color: #fff;
    font-size: 13px;
    left: 0;
    line-height: 15px;
    position: absolute;
    width: 100%;
}
.lessontype > li{
  position: relative;
}
.new-alert {
  background: green none repeat scroll 0 0;
    border-radius: 0;
    color: white;
    left: 0;
    padding: 20px;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 9999;
}
.error-alert{
  background:#f00;
    border-radius: 0;
    color: white;
    left: 0;
    padding: 20px;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 9999;
}
.no_minuts input {
    background: #ececec !important;
}

.grouplesson_schedule {
  display:inline-block;
    text-align: center;
    margin: 10px;
    padding: 30px;
    background: #ececec;
}

.grouplesson_schedule_item {
  margin:5px auto;
  font-size:0.8em;
  text-align:left;
}

.grouplesson_schedule_button {
  margin: 20px auto 0 auto;
    min-width: 150px;
    max-width: 150px;
    padding: 15px 5px;
    background: #3089ce;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
    cursor: pointer;
    font-size: 0.8em;
}

.bar {
  background-color:#efeaea;
  width:99%;
  height:1px;
  margin:10px auto;
}

.count_wrap {
    align-items: center;
    background: #448ccb none repeat scroll 0 0;
    border-radius: 4px;
    color: #fff;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    font-size: 0.9em;
    margin-right: 10px;
    padding-top: 4px;
    width: 75px;
}
.count_wrap span:nth-child(2){
  font-weight: 600;
}
.flex_row{
  display: flex;
  flex-direction: row;
}
.cancel_lesson { cursor:pointer}

.modal-dialog.octb_modal{
      transform: translateY(161px) !important;
    width: 30% !important;
}
.octb_modal .modal-footer{
text-align: center !important;
   margin-top: 0;
}
.octb_modal button{
   font-size: 13px !important;
    height: 45px  !important;
  line-height: 24px;
}
.custom_modal .modal-dialog {
    transform: translateY(15%);
    width: 35%;
}
.custom_modal .close {
    background-color: #f5f5f5;
    height: 40px;
    margin: 0 !important;
    opacity: 0.4;
    padding: 10px;
    transition: all 0.3s ease 0s;
    width: 40px;
}
.custom_modal .close:hover{
  opacity: 0.8;
}
.custom_modal .close:hover img{
  opacity: 0.4;
}
.custom_modal .modal-header {
    background-color: #305896;
    color: #f5f5f5;
}
.custom_modal button.btn {
    height: 39px;
    line-height: 20px;
    padding: 10px 21px;
}
.custom_modal .modal-title{
  font-size: 17px;
}
.custom_modal input{
     border: 2px solid #eee;
    height: 40px;
}
.plus {
    align-items: center;
    background: #01579b none repeat scroll 0 0;
    border-radius: 0 0 4px 4px;
    display: flex;
    font-size: 13px;
    font-weight: bold;
    justify-content: center;
    margin: 0;
    padding: 4px 0;
    width: 100%;
    color: #f1f1f1;
}
.plus img {
    margin-right: 10px;
    max-height: 13px;
}
.blue_box {
    background-color: #305896;
    color: #fff;
    display: flex;
    flex-direction: column;
    height: 90px;
    justify-content: center;
    border-radius: 3px;
    padding: 0 10px;
    width: 19%;
}
.grid_5{
   justify-content: space-between;
}
.blue_box > p {
    font-weight: 600;
    text-transform: capitalize;
}

#alldata tr td {
    font-size: 13px;
    padding: 8px;
}
.add_more_item span{
  margin-right: 10px;
}
.group-table {
  width: 100%;
  border: 1px solid #DDD;
}
.group-table td {
  padding: 8px;
  border-left: 1px solid #DDD;
}
.group-table span {
  display: block;
}
.thick-text {
    color: #777;
    font-size: 12px;
    font-weight: 600;
}
.big-text {
    font-size: 14px;
    margin-top: 4px;
}
.tabel_wrap tbody{
  padding: 8px;
}
.submituser_form{
  background: #eee none repeat scroll 0 0;
    padding: 40px;
}
.big_modal .modal-dialog{
  width: 60% !important;
}
.big_modal input{
  height: unset;
  border:1px solid;
}
.big_modal .btn-beta{
   margin-left: 10px;
}
#removegroup:hover{
  cursor: pointer;
}
.status_icon{
    bottom: -25px;
    left: -11px;
    position: absolute;
}
.status_icon.red {
    align-items: center;
    background: red none repeat scroll 0 0;
    border-radius: 100%;
    color: #fff;
    display: flex;
    font-size: 11px;
    height: 23px;
    justify-content: center;
    position: absolute;
    width: 23px;
}
.status_icon img {
    background: #fff none repeat scroll 0 0;
    border-radius: 100%;
}
#conversation th{ min-width: 140px !important }

.stw2 { width:19% !important;}
.partw2 {width:22% !important}


.select select{ border: 1px solid #DDD; height: 40px; padding: 8px 10px; font-size: 13px; margin: 5px 0;}
.appointment-data-video,
.appointment_data {
    width: 100%;
    padding: 30px 25px;
    font-size: 13px;
    min-height: 400px;
}
.appointment-data-video {
    background: #fff;
    outline: 1px solid #f1f1f1;
    box-shadow: 0px 8px 32px rgb(0 0 0 / 15%);
    border-radius: 8px;
}
.appointment_data > div:first-child {
    padding-left: 0;
    display: flex;
}
.profile-img {
    position: relative;
    text-align: left;
    float: left;
    width: auto;
    margin-right: 20px;
}
.profile-img img {
    width: 280px;
}
.profile-info {
    display: grid;
    grid-template-columns: auto auto;
    grid-template-areas:
        "A B"
        "C C";
}
.profile-info-data {
    grid-area: A;
}
.profile-info-button {
    grid-area: B;
}
.appointment_data .addmore {
    grid-area: C;
}
.appointment_data .profile-img img {
    border-radius: 4px;
}
.appointment_data .profile-img div.video-icon {
    position: absolute;
    bottom: -7px;
    left: -7px;
    width: 26px;
    height: 26px;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -0px -392px;
    display: none;
}
.desc{}
.desc h3{ color:#2F80ED; font-weight:bold; margin-top:0; font-size: 18px}
.appointment_data span.name {
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    color: var(--dark-color);
    font-size: 24px;
    line-height: 33px;
    padding-right: 20px;
}
.appointment_data span.reviews {
    display: inline-block;
}
.desc p{}
.cnt_details ul{ margin-bottom:20px !important; margin:0; padding:0}
.cnt_details li{ padding:5px 0; position:relative;}
.cnt_details li i{ position:absolute; left:0; top:8px;}
.cnt_details .btn-alpha{ margin-bottom:10px; width:100%}

.appointment_popup{ border-top:1px solid #ccc; padding-top:10px; position:relative; display:none}
.appointment_popup_close a{ position:absolute; top:15px; right:10px; color:#2F80ED; cursor:pointer; font-size:20px;}
.appointment_popup_close:hover a{ color:#305896 !important}
.appointment_popup li{ display:block; float:left; padding:10px; width:25%; text-align:center; font-size:14px; font-weight:bold}
.app_data{ margin:20px auto}
.app_data table{ width:100%;}
.app_data table td, .appointment_popup table th{ padding:8px; border-left:1px solid #ccc;}
.app_data table td { width:10.5%}
.app_data table{border-right:1px solid #ccc; }
th.app_data, td.app_data{border-top:1px solid #ccc; border-bottom:1px solid #ccc; }
.appointment_popup table th div{ font-weight:normal !important; font-size:11px}
.appointment_popup table th{text-align: center !important; font-size:17px;}
.app_data table del{ color:#ccc}
.app_data table span{ color:#00a500;cursor: pointer;}
.app_data table span, .app_data table del{ width:100%; display:inline-block}
.app_data .pick { color: blue !important; }
.appointment_data .btn, .appointment_data .btn-beta{height: 40px; line-height: 22px; padding:10px 40px}
#alldataproblem tr td { font-size: 13px; padding: 8px;}
.admin_header .nav.navbar-nav li{width: 50px; height: 50px;margin: 7px auto;border-radius: 100%; -webkit-border-radius: 100%; -moz-border-radius: 100%; -o-border-radius: 100%; overflow: visible; }
.admin_header .nav.navbar-nav a{ display: block; padding: 12px 0 ; line-height: 50px; position: relative !important; overflow: hidden; }
.admin_header .nav.navbar-nav a:hover{ overflow: visible; }
.admin_header .nav.navbar-nav li:first-child a{ padding-top: 12px !important }
.admin_header .clickload a span{ position: absolute !important; padding: 3px 5px; background: #333; top: 100px; transition: all .2s; -webkit-transition: all .2s; -moz-transition: all .2s; -o-transition: all .2s; opacity: 0; border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; -o-border-radius: 3px; transform: translateX(-50%); -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -o-transform: translateX(-50%); left: 50%; text-align: center; z-index: 11111111; font-size: 11px; font-weight: 300}
.admin_header .clickload a:hover span { opacity: 1;top: 40px;}
.admin_header .side_bar .navbar-brand{ height: 70px !important; padding:10px  0 ; float: none !important; margin: 0 auto !important }
.admin_header .side_bar{ overflow-x: visible !important; width: 7% !important; min-width: 80px; z-index: 1 }
.admin_header .right_container { width: 93%; margin-left: 7%;}
.dataTable{ border-collapse: collapse !important }
.table{ border: 1px solid #DDD !important }
.table th{ border-bottom: none !important; border-collapse: collapse !important }
.admin_header .header .dropdown{ right: -40px !important; position: relative; }
#view_model .nav-tabs>li>a{ color: #fff !important ; background: #008DD8 !important; }
#view_model .nav-tabs>li.active>a, #view_model .nav-tabs>li.active>a:hover, #view_model .nav-tabs>li.active>a:focus{ color: #555 !important ; background: #fff !important; }
.custom_field{text-align: center; }
.custom_field div{ position: relative; width:18%; min-width: 100px; height: 100px; margin: 10px 1.2%; float: left; vertical-align: top; line-height: 100px; text-align: center; box-sizing: border-box; }
.custom_field span{ /*background: #fff; border:1px solid #2850a3;*/  color: #2850a3; font-size: 20px; left: 50%; line-height: 14px; margin: -8px 0 0 -32px; position: absolute; top: 50%; width: 65px;  padding: 0; display: none}
.custom_field [type="radio"]:checked, .custom_field [type="radio"]:not(:checked) {position: absolute; left: -9999px; opacity: 0 }
.custom_field [type="radio"]:checked + label, .custom_field [type="radio"]:not(:checked) + label {position: relative;  cursor: pointer; text-align: center; display: inline-block; color: #666; width: 100%; height: 100%; position: relative; top:0; left: 0; }
.custom_field [type="radio"]:checked + label:before, .custom_field [type="radio"]:not(:checked) + label:before {content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border:1px solid #2850a3; color: #2850a3; background: #fff}
.custom_field [type="radio"]:checked + label:after, .custom_field [type="radio"]:not(:checked) + label:after { width: 100%; height:100%; background:#2850a3; color: #fff; position: absolute;  -webkit-transition: all 0.2s ease; transition: all 0.2s ease;left: 0; top: 0; font-size: 20px; z-index: 11   }

.custom_field [type="radio"]:checked + label[for="test1"]:after, .custom_field [type="radio"]:not(:checked) + label[for="test1"]:after{content: '15 Min';}
.custom_field [type="radio"]:checked + label[for="test2"]:after, .custom_field [type="radio"]:not(:checked) + label[for="test2"]:after{content: '30 Min';}
.custom_field [type="radio"]:checked + label[for="test3"]:after, .custom_field [type="radio"]:not(:checked) + label[for="test3"]:after{content: '45 Min';}
.custom_field [type="radio"]:checked + label[for="test4"]:after, .custom_field [type="radio"]:not(:checked) + label[for="test4"]:after{content: '60 Min';}
.custom_field [type="radio"]:checked + label[for="test5"]:after, .custom_field [type="radio"]:not(:checked) + label[for="test5"]:after{content: '90 Min';}
.custom_field [type="radio"]:not(:checked) + label:after {opacity: 1; -webkit-transform: scale(1); transform: scale(1); background: #fff; color: #2850a3; border: 1px solid #2850a3 }
.custom_field [type="radio"]:checked + label:after {opacity: 1; -webkit-transform: scale(1); transform: scale(1); }

.min_450{ min-height: 600px }
.img-wallet .dropdown-toggle{ background: none; padding: 10px 0 !important; color: #333; margin-top: -1px; }
.img-wallet .dropdown-toggle:hover{ background: none !important; color: #333 !important;}
.img-wallet .dropdown-toggle img{ vertical-align: -7px; }
.img-wallet img{ width: 30px }
.table-right{ margin: 30px 0 }
.table-right table{ float: right; font-size: 16px; }
.table-right table tr{ border-bottom: 1px solid #ccc }
.table-right table td, .table-right table th{ padding: 10px 0 }
.dark_bdr{ border-top: 2px solid #000 }
.s_txt{ font-size: 13px; color: #777 }
.modal-header .s_txt{ color: #fff; font-weight: normal; font-size: 14px; }
/*#schedule_model .modal-header, #addwallet .modal-header{ color: #fff; background: #448ccb}
#schedule_model .modal-header h4, #addwallet .modal-header h4{font-size: 18px;}
#schedule_model .close, #addwallet .close {color: #fff; opacity: .8}*/
.language_detail li{ padding: 8px; background: rgba(0,0,0,.04); margin-bottom: 3px; display: inline-block;text-transform: capitalize; }
.addmore .p_line{ height: 88px; overflow: hidden;}
.addmore .addmore-text.short {height: 90px; overflow: hidden}
.appointment_data .addmore {
    font-family: Open Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 22px;
    margin-top: 15px;
}
.appointment_data .addmore span.txtopenclose {
    font-family: Open Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 22px;
    color: #2F80ED;
    display: inline-block;
    margin-top: 15px;
    cursor: pointer;
}
.addmore p{
    transition: all 1s;
    -webkit-transition: all 1s;
    -moz-transition: all 1s;
    -o-transition: all 1s;
    margin: 0;
    margin-top: 15px;
    padding-right: 40px;
}
.text-bold{ font-weight: bold !important; }
.rate_input{border: 1px solid transparent;text-align:center;width: 50px;}
.rate_input:hover{border: 1px solid #ccc;}
.facebook_shear a {
    background: #3b5998 none repeat scroll 0 0;
    border-radius: 4px;
    color: #fff !important;
    display: inline-block;
    font-size: 16px;
    font-weight: 600;
    margin-top: 20px;
    padding: 5px 17px;
}
.facebook_shear a i{ margin-left: 5px}

.facebook_shear a:hover { background: #428bca}

.header h3{ display: inline-block; }
.topbtn{    display: inline-block; margin-left: 10px; vertical-align: 6px;}
.header  .topbtn .btn-beta{background: #2F80ED; color: #FFF !important; cursor: pointer;}
.header  .topbtn .btn-beta:hover{ background: #305896 }

.table.table-octb, .dataTables_filter{ margin-bottom: 20px !important }

.payment-done-process{ background: #f1f1f1; padding: 20px; margin-bottom: 40px; display: inline-block; width: 100% }
.payment_box{ width: 100%; display: inline-block; padding: 20px; box-sizing: border-box; border: 1px solid #ccc; background: #fff; float: left; text-align: left; font-size: 16px}
.payment_box span{ display: block; font-size: 20px; color: #333; }
.payment-done-process .col-md-3{position: relative; }
.payment_box:last-child{ margin-right: 0 }

.payment-done-process .col-md-3:nth-child(1):after, .payment-done-process .col-md-3:nth-child(2):after, .payment-done-process .col-md-3:nth-child(3):after{ position: absolute; right: -9px; top: 50%; margin-top: -10px; font-size: 30px; font-weight: 600; color: #333; width: 20px; height: 20px; line-height: 20px; text-align: center;  }
.payment-done-process .col-md-3:nth-child(1):after{ content:' - ' }
.payment-done-process .col-md-3:nth-child(2):after{ content: ' + ' }
.payment-done-process .col-md-3:nth-child(3):after{ content: ' = ' }
.custom_width700{ width: 100%; max-width: 700px; margin: 0 auto }
.notification{display: none;}

.chat-1{ position: relative; display: inline-block; padding: 5px; margin-bottom: 25px; width: 25px; text-align: center; margin-right: 20px}
.chat-1 span{ position: absolute; min-width: 30px; min-height: 15px; right:-20px; top:0; border: 2px solid #fff; text-align: center; font-size: 11px; line-height: 17px; z-index: 11; border-radius: 13px; -webkit-border-radius: 13px; -moz-border-radius: 13px; -o-border-radius: 13px; background: #448ccb; color: #fff}

#lessonlink {bottom: 0; color: #ffffff; cursor: pointer; padding: 3px; position: fixed; right:0; text-align: right; text-transform: uppercase; width: auto; z-index: 20; }
.lessonlink_img {background: #3089ce; border-radius: 5px; display: inline-block; margin: 0 3px; padding:18px 15px; vertical-align: middle; font-weight: bold; font-size: 14px; }
/*#lessonchat_chatbox{ border: none !important} */
#lessonchat_chatbox_header {background: #3089ce; cursor: pointer; height: 40px; margin: 0 auto; text-align: center; text-transform: uppercase; width: 100%; }
#lessonchat_chatbox_header_title {background: #3089ce; color: #fff; float: left; height: 23px; margin: 0 auto; padding-top: 0; text-align: center; text-transform: uppercase; width: 91%;font-weight: 600; font-size: 14px;  line-height: 42px; }
#lessonchat_chatbox_messages {background: #fff; border-top: thin solid #ececec; height: 250px; margin: 0 auto; overflow-x: hidden; overflow-y: scroll; position: absolute; width: 100%; bottom:152px; }
#lessonchat_chatbox {background: #fff; border: 1px solid#ececec; bottom: 0px; right: 25%; display: none; height: 444px; width: 300px; position: fixed;  }
.chat-cancel{ width: 20px !important; height: 16px !important;overflow: hidden; position: absolute;right: 15px; top: 10px; }
.strip{ width: 2px; height: 21px; background: #fff; display: inline-block;}
.strip_1{-moz-transform: rotate(45deg); -webkit-transform: rotate(45deg); -o-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg);}
.strip_2{-moz-transform: rotate(135deg); -webkit-transform: rotate(135deg); -o-transform: rotate(135deg); -ms-transform: rotate(135deg); transform: rotate(135deg);}
#lessonchat_chatbox_input{background: rgba(0,0,0,.02); border:none; color: #000; height: 60px; margin: 0 auto; padding:10px; width:100%; box-sizing: border-box; border-top: 1px solid #ccc; font-size: 13px;bottom:0;position:absolute;}
.lessonchat_chatbox_messages_container {background: #2850a3 none repeat scroll 0 0; border-radius: 20px; color: #fff; margin: 18px; padding: 15px; width: 80%; font-size: 14px }
.lessonchat_teachername {font-size: 0.8em; padding-bottom: 5px; text-transform: uppercase; font-weight: bold }
.lessonchat_msg_content {overflow-wrap: break-word; }
.teacher, .student{ position: relative; margin: 28px auto}
.student{ background: #eee; color: #333}
.student:before {content:""; position:absolute; bottom:-20px; left:190px; border:0; border-right-width:30px; border-bottom-width:20px; border-style:solid; border-color:transparent #eee; display:block; width:0; }
.student:after {content:""; position:absolute; bottom:-20px; left:210px; border:0; border-right-width:10px; border-bottom-width:20px; border-style:solid; border-color:transparent #fff; display:block; width:0; }

.teacher{ background: #2850a3;}
.teacher:before{content:""; position:absolute; bottom:-20px; right:190px; border:0; border-left-width:30px; border-bottom-width:20px; border-style:solid; border-color:transparent #2850a3; display:block; width:0; }
.teacher:after {content:""; position:absolute; bottom:-20px; right:210px; border:0; border-left-width:10px; border-bottom-width:20px; border-style:solid; border-color:transparent #fff; display:block; width:0; }


.font_13, .font_13 h5, .font_13 div{ font-size: 13px !important}
.language_filed{ min-width: 250px; height: 40px; text-align: left !important;}
.available-option div{text-align: left !important; padding: 3px}
.m_b20{ margin-bottom: 20px}
.custom_field div:first-child{ margin-left: 0}
.custom_field div:last-child{ margin-right: 0}
.disable,.disable:hover{cursor:not-allowed !important;background:#ccc !important;color:#999 !important;}
.download_app{ top: -4px; display: inline-block; position: relative; }
.download_app img{ height: 41px  }

.download_app a{ display: inline-block; padding: 5px 3px 5px 8px }
.chat_heading{position: relative; top: -10px}
.chat_heading i{position: relative !important; margin-left: 10px; top: 4px !important;}



.inbox_msgfromclient, .inbox_msgfromteacher{ position: relative; padding: 30px !important; margin-bottom: 40px !important; text-align: left !important; border-radius: 15px !important; -webkit-border-radius: 15px !important; -o-border-radius: 15px !important; -moz-border-radius: 15px !important }
.inbox_msgfromclient:after{content: ' '; position: absolute; width: 0; height: 0; left: 30px; right: auto; top: -20px; bottom: auto; border: 12px solid; border-color: transparent transparent #33599b  #33599b ; }
.inbox_msgfromteacher:after{content: ' '; position: absolute; width: 0; height: 0; left: auto; right: 30px; top: auto; bottom: -20px; border: 12px solid; border-color: #b9dcf7 #b9dcf7 transparent transparent ; }
.inbox_msgfromteacher { background: #b9dcf7 !important; color: #333 !important }
#inbox_container{  position: relative; }
#inbox_container #inbox_msgbar{ background: #f1f1f1; padding: 10px 0 10px 10px; height: auto !important; display: inline-block; position: absolute; left: 0; width: 100%; bottom: -5px}

#inbox_container #inbox_msgbar input{ float: left; padding: 5px; box-sizing: border-box; border: none !important; height: 66px; font-size: 14px }
#inbox_container #inbox_msgbar button{ float: right; width: 20% !important; padding: 25px 0 !important; background: transparent; color: #33599b; font-weight: 700 }
#inbox_container{  overflow: hidden; }
#inbox_main{ margin-right: -17px !important; margin-bottom: 20% !important; height: 80% !important;}
#app{ position: relative; }
#app #cr_sidebar2{ left: 0 !important; width: 30%; height: 100% !important }
#app .cr_main { left: 30%; width: 69% !important; position: absolute; bottom:0; top: 00px; background: #FFF; height: 90% !important }
.inbox_profile_photo{ width: 50px; height: 50px; overflow: hidden; text-align: center; line-height:46px; padding: 0 !important }
.inbox_profile_photo img{ min-width: 100%; min-height: 100% }
.inbox_msg_container{ position: relative; }
.inbox_time{ position: absolute; right: 0; bottom: 0 }

.header .mt1, .topbtn{ position: relative; }
.header .mt1{ top: -10px }
.topbtn{ top: -5px }
/*.inbox_msgfromclient, .inbox_msgfromteacher{ position: relative; padding: 30px !important; margin-bottom: 40px !important; text-align: left !important; border-radius: 15px !important; -webkit-border-radius: 15px !important; -o-border-radius: 15px !important; -moz-border-radius: 15px !important; }
.inbox_msgfromclient:after{content: ' '; position: absolute; width: 0; height: 0; left: 30px; right: auto; top: auto; bottom: -20px; border: 12px solid; border-color: #33599b transparent transparent #33599b; }
.inbox_msgfromteacher:after{content: ' '; position: absolute; width: 0; height: 0; left: auto; right: 30px; top: auto; bottom: -20px; border: 12px solid; border-color: #3089ce #3089ce transparent transparent ; }*/

#inbox_container{position: relative; height: 100% !important; min-height: auto !important}
.unread_msgs{ min-width: 17px; min-height: 17px; padding: 0 2px; font-size: 10px !important; line-height:15px !important; display: inline-block; vertical-align: middle; text-align: center; position: absolute; right: -15px; bottom: 8px; color:#fff !important; background: #f00; border-radius: 10px;}
#share-buttons{ margin: 30px auto !important }
#share-buttons a, #share-buttons img{ display: inline-block; vertical-align: middle; padding: 0 5px; margin-bottom: 0 }
#share-buttons a{ margin-bottom: 10px !important }
.other-login{text-align: center; margin: 20px auto; position: relative;}
.other-login:after{border-bottom: 1px solid #000; content: ""; display: block; left: 0; margin-top: -1.5px; position: absolute; right: 0; top: 12px; }
.other-login p {background-color: #fff !important; color: #333; display: inline-block; font-size: 14px; font-weight: 600; letter-spacing: 2px; margin: 0; padding: 0 20px; position: relative; text-transform: uppercase; z-index: 1;}
.other-login .fb a{ background: #3b5998; color: #fff; padding: 8px 15px; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -o-border-radius: 5px;}
.other-login .fb, .other-login .google, .other-login .stepik{ display: inline-block; margin: 5px }
.other-login .google a{ background: #df4a32; color: #fff; padding: 8px 15px; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -o-border-radius: 5px; }
.other-login .fb a:hover, .other-login .google a:hover,.other-login .stepik a:hover{opacity: .9}
.all-done>img{ margin-bottom: 20px }

.other-login .stepik a{ background: #66cc66; color: #fff; padding: 8px 15px; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -o-border-radius: 5px; }
.fa-stepik {font-size: 17px;font-weight: bold;}

.inbox_sidebar_msg {margin:5px auto; text-align:left; padding:5px 0; cursor:pointer; font-size:0.9em; } .inbox_sidebar_msg:hover {background:#ececec; }
.index_profile_photo_container {display:inline-block; max-width:18%; width:18%; margin: 10px 10px; vertical-align: middle; text-align: center; }
.inbox_profile_photo {padding: 20px 15px; border-radius: 100px; background: #3089ce; font-size: 1.5em; color: #fff; }
.inbox_msg_container {display: inline-block; margin: 0 2px; max-width:70%; width:70%; text-align: left; vertical-align: middle; }
.inbox_msg_name {margin:0 auto; }
.inbox_msg_msg {margin:5px auto 0 auto; font-size:0.9em; } .inbox_time {font-size: 0.9em; text-align:right; }
#inbox_main {margin: 0 auto; height:520px; max-height:520px; overflow-y:scroll; }
.inbox_msgfromteacher {margin: 5px 5% 5px 49%; padding: 5px; background: #3089ce; max-width: 50%; /*border-radius: 25px;*/ color: #fff; }
.inbox_msgfromclient {margin: 5px 49% 5px 5%; padding: 5px; background: #33599b; max-width: 50%; /*border-radius: 25px; */color: #fff; }

#inbox_msgbar {width: 850px; height: 50px; } #inbox_container {min-height:600px; }
#inbox_msgbar input {height:50px; font-size:1.2em; text-align:left; width:80%; display:inline-block; vertical-align: middle; }
#inbox_msgbar button {padding: 15px 5px; font-size: 1em; text-align: center; width: 16%; display: inline-block; vertical-align: middle; background: #2dc164; cursor:pointer; border: 0; color: white; text-transform: uppercase; }
#unread_msgs {position: absolute; display:none; left: 61px; top: 143px; background: red; color: white; padding: 2px 5px; border-radius: 50px; font-size: 0.5em; }
#cr_sidebar2 {position: absolute; width: 354px; min-height:100%; left: 100px; top:0; text-align: center; border-right: 1px; border-right-color: #ececec; border-right-style: solid; }
#cr_sidebar2 input {width:90%; height:30px; text-align:center; font-size:1em; margin:10px auto; }
.generic_title {margin: 20px; text-align: center; text-transform: uppercase; font-weight: 700; }
.error_msg {display:none; position: fixed; top: 0; left:0; background: #ff0000; width: 100%; text-align: center; padding: 20px 0; color: #fff; z-index:5; }
.success_msg {display:none; position: fixed; top: 0; left:0; background: green; width: 100%; text-align: center; padding: 20px 0; color: #fff; z-index:5; }
.inbox_sidebar_msg.active {background: rgb(185, 220, 247);}
.header h3{ font-size: 20px; white-space: nowrap; text-overflow: ellipsis; max-width:300px; overflow: -moz-hidden-unscrollable; overflow: -webkit-hidden-unscrollable; overflow: -0-hidden-unscrollable; overflow: hidden-unscrollable; }
.header h3, .header .topbtn{top: 3px !important }

#notification123{ width: 36px; height: 36px; padding: 7px 0; border-radius: 100%; text-align:center; background: #2F80ED; color: #ffffff}
.notification_msg .dropdown-menu{ border: 1px solid #ddd; padding:0px; right: -40px; max-height: 350px; overflow-y: auto;  }
.notification_msg .dropdown-menu .dat{ font-size: 10px; color: #999; padding-left: 0px }
.notification_msg .dropdown-menu .dat i{ position: relative !important; left: 0px; right: auto; top: 0 !important; background: none; display: inline-block !important; }
.notification_msg .dropdown-menu a{ padding: 15px 30px 15px 15px !important; border-bottom: 1px solid #ddd; font-weight: 600; color: #096a97 }
.notification_msg .dropdown-menu li{ position: relative; }
.notification_msg .dropdown-menu li:last-child a{ border: 0 !important }
.notification_msg .dropdown-menu i{ position: absolute; right: 5px; top: 25px; width: 17px; height: 15px; text-align: center; ; text-align: center; }
.notification_msg .dropdown-menu a:hover{ color: #000 }
.notification_msg .dropdown-menu a:hover .dat{ color: #999 !important }
/*.notification_msg .dropdown-menu>li>a:hover, .notification_msg .dropdown-menu>li>a:focus{ background:#f1fafe !important }*/
.notification_msg .no-notification div{padding: 10px; font-weight: 600; }
.mobile-icon .notification_msg>a>i{ display: inline-block; vertical-align: middle; line-height: 22px }
.cr_loading{ padding-left: 10px; padding-right: 10px }

#app #cr_sidebar2, #app .cr_main { transition: all .3s; -webkit-transition: all .3s; -moz-transition: all .3s; -o-transition: all .3s;}
#app #cr_sidebar2{max-height:700px;overflow-y:scroll}
input#search{border: 1px solid #DDD;height: 40px; padding-left: 10px}
.appointment_area .select>div{ display: inline-block; margin-left: 10px }
.mobile-icon i{ display: none; }
.chat_question_button{ padding: 5px 0; background: rgba(0,0,0,.03);bottom:59px; position:absolute;width:100%; }
.chat_question_button p{font-size: 13px; width: 100%; margin: 5px 0}
.chat_question_button a{ display: inline-block; font-size: 11px !important; padding: 3px 8px; margin: 2px 2px 2px 0; border: 1px solid #999 !important; border-radius: 15px; -webkit-border-radius: 15px; -moz-border-radius: 15px; -o-border-radius: 15px; color: #333 }
.chat_question_button a:hover, .chat_question_button a.active{ background: #ccc !important }
.mobile-show{ display: none; }
.img-wallet a #refreshusd, #balancemins{    line-height: 0;padding: 2px 9px;height: 20px;font-size: 20px !important; color: black; font-weight: 400; border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px; -o-border-radius: 20px; z-index: 11; text-align: center;}
#balancemins { font-size: 12px !important; top: -2px}
.page-heading-appointment.comn_pad .pull-right,
.page-heading.comn_pad .pull-right{ margin-top: 10px !important }
.dropdown-menu > li > a{/*white-space: normal;*/word-wrap: break-word;word-break: break-all;}

.m_t10{ margin-top: 10px }
.m_t20{ margin-top: 20px }
.m_b10{ margin-bottom: 10px }
.appointment_tab a{ display: block;-webkit-transition: all 0.5s ease-in-out; -moz-transition: all 0.5s ease-in-out; -ms-transition: all 0.5s ease-in-out; -o-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; }
.appointment_tab img{ width: 40px }
.gray_img{ filter: grayscale(100%); -webkit-filter: grayscale(100%); -o-filter: grayscale(100%); -moz-filter: grayscale(100%);}
.appointment_tab a:hover .gray_img{ filter: grayscale(0%); -webkit-filter: grayscale(0%); -o-filter: grayscale(0%); -moz-filter: grayscale(0%);}
.no_slot{ position: absolute; top: 50%; width: 100%; text-align: center; transform: translateY(-50%); -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -o-transform: translateY(-50%); padding: 20px; font-size: 13px; color: #999; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; }
  #app_data_123 td{ height: 200px !important; position: relative;}

.logo_img_header {
    margin: 15px auto 50px;
    width: 80%;
}

.dropdown-menu.lang-list > li {
    padding: 7px 20px;
    cursor: pointer;
}
.dropdown-menu.lang-list > li:hover {
    color: #262626;
    background-color: #f5f5f5;
}

#holidayoffer {
    position: fixed;
    width: 750px;
    background: red;
    z-index: 13;
    color: #fff;
    top: 10%;
    left: 22%;
    text-align: left;
}

#holidayoffer_santa {
       display:inline-block;
        vertical-align: middle;
        background:green;
        text-align:center;
        padding:2px 10px;
}

#holidayoffer_santa img {
       max-width:300px;
}

#holidayoffer_text {
       display:inline-block;
        vertical-align: middle;
        width:400px;
        text-align:center;
        margin-left:9px;
        word-wrap: break-word;
}

#holidayoffer_go {
    border: 0;
    color: green;
    font-size: 1.3em;
    margin: 10px;
    text-transform: uppercase;
    background: #fff;
}

#holidayoffer_fade {
	z-index:12;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:#808280;
	opacity:0.8;
}

#holidayoffer_close {
	position: absolute;
    top: 5px;
    right: 5px;
    border: 1px #fff solid;
    padding: 2px 10px;
    cursor:pointer;
}

#holidayoffer_input {
	width:100%;
	color:#000;
}

#holidayoffer_sharebox {
	margin: 5px auto;
}

.holidayoffer_shareicon {
   margin:0px 5px;
    max-width: 40px;
    display: inline-block;
    vertical-align: middle;
}

.newformdes {
	padding:2px 15px;
}

.w-100{ width: 100% }

/* The switch - the box around the slider */
.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
    margin-right: 5px;
}

/* Hide default HTML checkbox */
.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

/* The slider */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}

input:checked + .slider {
    background-color: #2196F3;
}

input:checked + .slider.green {
    background-color: var(--green-color);
}

input:focus + .slider {
    box-shadow: 0 0 1px #2196F3;
}

input:focus + .slider.green {
    box-shadow: 0 0 1px var(--green-color);
}

input:checked + .slider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}
.recurring-list input[disabled] + .slider {
    opacity: 0.3;
}

.floating-label-input {
  position: relative;
  margin-bottom: 1.2em;
}

.floating-label-input .floating-label {
  position: absolute;
  font-size: 15px;
  font-family: Open Sans;
  font-style: normal;
  font-weight: 600;
  line-height: 16px;
  display: flex;
  align-items: center;
  top: 20px;
  left: 12px;
  transform: translateY(-50%);
  margin: 0;
  color: #474747;
  opacity: .7;
  transition: .4s;
}

.floating-label-input.active .floating-label {
  font-size: 12px;
  padding: 3px;
  background: white;
  top: -12px;
  transform: none;
  opacity: 1;
}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active  {
  -webkit-box-shadow: 0 0 0 30px white inset;
}

.floating-label-input input:-webkit-autofill + .floating-label,
.floating-label-input input:-webkit-autofill:active + .floating-label {
  font-size: 12px;
  padding: 3px;
  background: white;
  top: -12px;
  transform: none;
  opacity: 1;
}

.dropdown_minutes .dropdown-toggle {
  display: flex;
  align-items: center;
  padding: 0 15px;
}

.subscription-flag {
  background-image: url("../images/grey_flag.png");
  background-size: contain;
  background-repeat: no-repeat;
  width: 32px;
  height: 48px;
  position: relative;
  text-align: center;
  font-size: 1.2em;
  top: -4px;
  margin-right: .9em;
  color: white;
  padding-top: 10px;
}

.subscription-flag.user-subscribed {
  background-image: url("../images/green_flag.png");
}

.dropdown_minutes span.unavailable-minutes {
    color: #F9834D;
}

.mobile-icon .nav.navbar-nav.monly {
  display: flex;
  align-items:center;
}

@media only screen and (max-width: 1100px) {
    .subscription-flag {
      top: -5px;
      margin-right: .5em ;
    }
    .appointment-filter .filter-button button span {
       font-size: 10px !important;
    }
    .appointment-filter .btn-group svg.cancel {
        width: 16px !important;
    }
    .appointment-filter-time-container {
        margin-right: 0;
    }
}
@media only screen and (max-width: 1420px) {
    .appointment-filter .btn-group svg.cancel {
        width: 18px !important;
    }

}
@media only screen and (min-width: 1101px) {
    .appointment-filter .mobile-only {
        display: none;
    }
    #appointment-filter {
        display: block !important;
        position: static;
        overflow: inherit;
    }
}
@media only screen and (max-width: 767px) {
  .subscription-button > span {
    display: none;
  }

  .dropdown.language-1 {
    display: none;
  }
  .mobile-icon .nav.navbar-nav.monly {
    align-items: center;
  }
  .mobile-icon .nav.navbar-nav.monly > * {
    margin: 0 .4em;
  }
  .mobile-icon .select_payment_option {
      padding: 0;
  }
  .mobile-icon .select_payment_option button {
      font-size: 12px;
  }
  .caret-dd:not(.wallet-caret, .minutes) {
    display: none;
  }
  .header.clearfix {
    display: block;
    z-index: 1001;
  }
  .subscription-flag {
    height: 42px;
    width: 28px;
    padding-top: 5px;
  }

  .mobile-icon .mobile-show li img {
    display: none;
  }
  .navbar-collapse {
    max-height: none;
  }
  
  .navbar-collapse.in {
    padding: 0;
  }
  .navbar-collapse.in .navbar-nav {
    background: #2F80ED;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: calc(100vh - 50px);
    margin: 0;
    text-align: center;
    padding: 1em;
  }
  
  .navbar-collapse.in .navbar-nav > li a {
    font-size: 18px;
    margin: .5em;
    font-weight: 600;
    color: white;
  }
}
@media only screen and (max-width: 350px) {
  .mobile-icon .nav.navbar-nav.monly > * {
    margin: 0 .2em;
  }
}

.mobile-language-list {
  position: absolute;
  bottom: 1em;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}

.mobile-language-list a {
  font-size: 16px;
  color: #AEC2D2;
}

.mobile-language-list a.active {
  font-size: 16px;
  color: white;
}

#burger {
  width: 24px;
  height: 18px;
  padding: 0;
  position: absolute;
  right: 16px;
  top: -37px;
  cursor: pointer;
  z-index: 50;
  display: block;
}

#burger span {
  position: absolute;
  width: 100%;
  overflow: hidden;
  left: 0;
  background: #305896;
  transition: 0.4s;
  height: 2px;
  border-radius: 1px;
}

#burger span:nth-child(1) {
  top: 0;
}

#burger span:nth-child(2) {
  top: 50%;
}

#burger span:nth-child(3) {
  top: 100%;
}

#burger span::after {
  content: '';
  width: 40%;
  transition: 0.3s;
  top: 0;
  position: absolute;
  background: #fff;
  left: -40%;
  height: 100%;
}

#burger span:nth-child(2)::after {
  transition-delay: 0.075s;
}

#burger span:nth-child(3)::after {
  transition-delay: 0.15s;
}

#burger:hover span::after {
  left: 100%;
}

#burger.active span:nth-child(1) {
  top: 50%;
  transform: rotate(135deg);
  transform-origin: center;
}

#burger.active span:nth-child(2) {
  top: 50%;
  transform: rotate(-135deg);
  transform-origin: center;
}

#burger.active span:nth-child(3) {
  opacity: 0;
}

.sign-in-logo {
  margin: .6em auto 1.2em;
}

@media only screen and (max-width: 767px) {
  .sign-in-logo {
    margin: 1.2em .3em;
  }
  .octb_form {
    box-shadow: none;
    border: none;
  }
}

@media only screen and (min-width: 768px) {
  .notifications-bell {
    filter: brightness(0) invert(1);
  }
  .myaccount img{
    display: none;
  }
}

.phone-errors {
  color: red;
}

#payButton {
  display: flex;
  justify-content: center;
  align-items: center;
}

.loader {
  border: 6px solid #f3f3f3; /* Light grey */
  border-top: 6px solid #3498db; /* Blue */
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: spin 2s linear infinite;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.tp-widget-wrapper {
  display: flex;
  flex-direction: column;
}

.how-it-works {
    margin: 0 auto;
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-bottom: 2em;
}

.how-it-works h4 {
    text-align: center;
    margin-bottom: .3em;
}

.how-it-works ul{
    list-style: disc;
    list-style-position: inside;
}

.how-it-works li{
    font-size: 1em;
    font-weight: 600;
    line-height: 19px;
    margin: .25em;
    font-style: normal;
    color: #4D4D4D;
}

.how-it-works.no-list ul {
  list-style: none;
  text-align: center;
}

.dropdown.referal-link {
  display: none;
}

@media only screen and (max-width: 768px) {
  .dropdown.notification_msg {
    display: none;
  }

  .dropdown.referal-link {
    display: block;
    height: 40px;
    background: #F82872;
    width: 40px;
  }
}
.subscription-flag.user-subscribed.with-minutes img{
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width:768px){
    .cont{
        padding: 0 25px;
    }
}
#tutorial{
    position: fixed;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 999;
}
#tutorial .skip-bottom {
    background: #86D660;
    color: #fff;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    position: absolute;
    bottom: 0px;
    width: 9%;
    cursor: pointer;
    text-align: center;
    padding: 16px 8px;
}
#tutorial-text {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    position: absolute;
    background: #fff;
    padding: 16px;
    width: 400px;
    border-radius: 8px;
    z-index: 999;
    box-shadow: 0 0 16px rgba(0,0,0,1);
    display: none;
}
#tutorial-text.tutorial-media {
    background: transparent;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    border-radius: 0;
    z-index: 999;
    box-shadow: none;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    padding: 0;
    width: 100%;
}
#tutorial-text.tutorial-media .close {
    position: absolute;
    right: -20px;
    top: -25px;
    color: #fff !important;
    font-size: 25px;
    width: 20px;
    opacity: 1;
    height: 28px;
    text-align: center;
    font-weight: normal;
    line-height: 28px;
}
#tutorial-text.tutorial-media.desktop {
    width: 100%;
    max-width: 1056px;
}
#tutorial-text.tutorial-media > div {
    background: #fff;
    max-width: 1065px;
    width: 90%;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    border-radius: 8px;
    z-index: 999;
    box-shadow: 0 0 16px rgba(0,0,0,1);
    padding: 16px;
    position: relative;
}
#tutorial-text.tutorial-media.desktop > div {
    height: calc(100% - 60px);
    max-height: 682px;
}
#tutorial-text.tutorial-media img {
    width: 100%;
    height: 100%;
}
#tutorial-text a{
    cursor: pointer;
}
#tutorial-text.left:after, #tutorial-text.right:after,
#tutorial-text.top:after, #tutorial-text.bottom:after,
#tutorial-text .pointer{
    content:'';
    position:absolute;
    width:16px;
    height:16px;
    background:inherit;
    transform:rotate(45deg);
}
#tutorial-text .pointer{
    bottom: -8px;
}

#tutorial-text.left:after{
    right:-8px;
    top: 43%;
}
#tutorial-text.right:after{
    left:-8px;
    top: 43%;
}
#tutorial-text.top:after{
    bottom:-8px;
    left: 47%;
}
#tutorial-text.bottom:after{
    left: 47%;
    top: -8px;
}

#tutorial-text.example:before{
    content:'Example';
    position:absolute;
    color: #F5F7FA;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: bold;
    font-size: 20px;
    line-height: 27px;
    position: absolute;
    bottom: -50px;
    left: 36%;
}

@media only screen and (max-width: 992px) {
    #tutorial .skip-bottom{
        width: 100%;
    }
    #tutorial-text{
        width: calc(100% - 40px);
        margin-left: 20px;
    }
    #tutorial-text.tutorial-media {
        width: 100%;
        margin: 0;
    }
    #tutorial-text.example:before{
        left: 42%;
    }
}
#tutorial-text.mobile #tutorial-media {
    width: 100%;
    overflow: hidden;
    margin-bottom: 15px;
}
#tutorial-text.desktop #tutorial-media {
    width: 100%;
    margin-bottom: 8px;
    height: calc(100% - 25px);
}
#tutorial-text.mobile #tutorial-media:before {
    content: "";
    display: block;
    float: left;
    padding-bottom: 84.55%;
}
#tutorial-text.desktop #tutorial-media:before {
    content: "";
    display: block;
    float: left;
    padding-bottom: 62.5%;
}
#tutorial-text #tutorial-media video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
#tutorial-text #tutorial-media img {
    display: block;
    width: 100%;
    object-fit: contain;
}
#tutorial-text.tutorial-media .t {
    display: block;
}
#tutorial-text.tutorial-media.desktop .t {
    height: calc(100% - 30px);
    max-height: 610px;
    margin: 0;
}
#tutorial-text.tutorial-media .t span{
    display: inline;
}
#tutorial-text .t{
    display: table;
    margin-bottom: 10px;
}
#tutorial-text .t span{
    display: table-cell;
}
#tutorial-text .t span:nth-child(1){
    width: 26px;
}
#tutorial-text a.next {
    float: left;
    margin-left: 26px;
    display: inline-block;
    color: #86D660
}
#tutorial-text a.skip {
    float: right;
    margin-right: 26px;
    display: inline-block;
    color: #2F80ED;
}
#tutorial-text.tutorial-media a.next {
    margin-left: 15px;
    margin-top: 10px;
}
#tutorial-text.tutorial-media a.skip {
    margin-right: 15px;
    margin-top: 10px;
}
#tutorial-text.example a.next {
    color: #2F80ED;
}
.tutorial {
    display: none;
    height: 124px;
    background: #F5F7FA;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    padding: 0 40px;
}
.tutorial-text {
    font-family: Open Sans;
    font-style: normal;
    font-weight: bold;
    font-size: 18px;
    line-height: 25px;
    color: #4D4D4D;
    padding-right: 10px;
}
.tutorial-button {
    width: 240px;
    height: 56px;
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    text-align: center;
    color: #FFFFFF;
    background: #86D660;
    border: 1px solid #86D660;
    border-radius: 4px;
}
.timer{
    background: #F5F7FA;
    padding: 49px 40px;
    font-size: 20px;
    font-weight: 700;
    line-height: 27.24px;
    display: none;
}
.timer > div.js-timer-t > span{
    font-size: 32px;
    line-height: 43.58px;
    vertical-align: sub;
}
.timer > div{
    display: none;
}

.hc-p{
    margin-bottom: 24px;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 25px;
}

.hc{
    min-width: 310px;
    height: 280px;
}
.hc-all{
    min-width: 310px;
    height: 339px;
    margin: 0 auto 20px auto;
    border-radius: 30px;
    padding: 30px 0;
    box-shadow: 0 0 30px rgba(0,0,0,0.2);
    position: relative;
}
.hc-all .name-x{
    position: absolute;
    bottom: 15px;
    left: 45px;
    font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 20px;
}
.highcharts-credits, .highcharts-exporting-group {
    display: none;
}
body.appointment .header-info .trustpilot-widget {
    width: 245px;
    height: 20px;
    top: 61px;
    left: 3%;
    position: absolute !important;
}
body.appointment .page-heading-appointment {
}
body.appointment .page-heading-appointment.online .appointment-area-menu .sort-by-container,
body.appointment .page-heading-appointment.online .header-text,
body.appointment .page-heading-appointment.online .appointment-filter {
    display: none;
}
.appointment-filter-time-container {
    min-width: 246px;
    margin: 0 2%;
}
.appointment-filter-all-container {
    width: 705px;
}

.appointment-filter .btn-group>.btn:hover,
.appointment-filter .btn-group-vertical>.btn:hover,
.appointment-filter .btn-group>.btn:focus,
.appointment-filter .btn-group-vertical>.btn:focus,
.appointment-filter .btn-group>.btn:active,
.appointment-filter .btn-group-vertical>.btn:active,
.appointment-filter .btn-group>.btn.active,
.appointment-filter .btn-group-vertical>.btn.active {
    z-index: inherit;
}
.appointment-filter .select-a-time {
    border: 1px solid #7BD483;
    border-radius: 3px;
}

.appointment-filter .select-a-time:before {
    position: absolute;
    width: 67px;
    height: 64px;
    border: 1px solid #7BD483;
    z-index: 2222;
    right: -1px;
    top: -1px;
}

.appointment-filter .tutor-is-from .btn-group,
.appointment-filter .select-a-time .btn-group,
.appointment-filter .specialties .btn-group,
.appointment-filter .also-speaks .btn-group {
    display: block;
}
.appointment-filter .tutor-is-from .btn-group button,
.appointment-filter .specialties button,
.appointment-filter .also-speaks button {
    height: 62px;
    width: 100%;
    position: relative;
    padding-right: 62px;
    border-radius: 0;
    border: none;
}
.appointment-filter .select-a-time button#dropdownSelectATime {
    height: 62px;
}
.appointment-filter .tutor-is-from .btn-group button {
    border-radius: 3px 0 0 3px;
}
.appointment-filter .select-a-time button.dropdown-toggle {
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    border-radius: 3px;
    border: none;
}
.appointment-filter {
    margin-top: 10px;
    width: 100%;
    height: 62px;
    display: flex;
    justify-content: center;
}
.filter-button {
    width: 100%;
    position: relative;
}
.filter-button.filter-kids {
    padding: 0;
    width: 236px;
    height: 64px;
    margin-right: 2%;
    border: 1px solid rgba(53, 53, 53, 0.5);
    margin-left: -1px;
    border-radius: 0 3px 3px 0;
    background: #fff;
}

.appointment-filter .dropdown-menu.select-a-time-container {
    width: 280px;
    background: #fff;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 10px;
}

.appointment-filter .select-a-time-container h5 {
    margin: 15px 10px 5px;
    font-size: 15px;
    font-weight: 700;
}
.appointment-filter .select-a-time-container .loading {
    margin: 71px auto 90px;
}
.appointment-filter .select-a-time-container .form-control {
    width: 100%;
}
.appointment-filter .select-a-time-container .form-control:focus {
    border: 1px solid #BFBFBF;
    box-shadow: none;
}

.select-a-time-container #datetimepicker .table-condensed {
    width: 98%;
    margin: auto;
}
.appointment-filter .table-condensed>thead>tr>th,
.appointment-filter .table-condensed>tbody>tr>th,
.appointment-filter .table-condensed>tfoot>tr>th,
.appointment-filter .table-condensed>thead>tr>td,
.appointment-filter .table-condensed>tbody>tr>td,
.appointment-filter .table-condensed>tfoot>tr>td {
    padding: 5px;
    text-align: center;
    width: calc(100% / 7);
    font-weight: bold;
}
.appointment-filter .table-condensed>thead>tr>th {
    cursor: default;
}
.appointment-filter .table-condensed>thead>tr>th.next,
.appointment-filter .table-condensed>thead>tr>th.prev,
.appointment-filter .table-condensed>tbody>tr>td {
    cursor: pointer;
}
#teacher-mode-popup-modal .modal-body-calendar .day.disabled,
.select-a-time-container .day.disabled {
    opacity: 0.3;
    cursor: default;
}
#teacher-mode-popup-modal .modal-body-calendar .day.active,
.select-a-time-container .day.active {
    background: #2F80ED;
    color: #fff;
}

.select-a-time-container .time-picker-container {
    display: none;
}
.select-a-time-container .time-picker {
    height: 200px;
    overflow-y: auto;
}
.modal-body-calendar .time-picker {
    height: 240px;
    overflow-y: auto;
}
.select-a-time-container.dropdown-menu li {
    cursor: pointer;
    text-align: center !important;
    border-left: none;
    border-right: none;
    border-top: none;
}
.modal-body-calendar .time-picker li {
    cursor: pointer;
    text-align: center !important;
    border-left: none;
    border-right: none;
    border-top: none;
    border-bottom: 1px solid #ddd;
    margin-bottom: 0;
}
.modal-body-calendar .time-picker li:hover,
.select-a-time-container .time-picker li:hover {
    color: #23527c;
    background-color: #eee;
    border-color: #ddd;
}
.modal-body-calendar .time-picker li.active,
.select-a-time-container .time-picker li.active {
    background: #2F80ED;
    color: #fff;
    border-color: #2F80ED;
}
.appointment-filter .dropdown-menu::after,
.appointment-filter .dropdown-menu::before {
    border: none;
}
.appointment-filter div[data-top-text] {
    position: relative;
}
.appointment-filter div[data-top-text]::after {
    content: attr(data-top-text);
    position: absolute;
    top: 2px;
    left: 8px;
    font-size: 13px;
    background: #fff;
    padding: 0 5px;
    font-weight: 500;
    text-transform: uppercase;
}
.appointment-filter .filter-button .btn-group.open .dropdown-toggle {
    box-shadow: none;
}
.appointment-filter .filter-button .btn-default:hover,
.appointment-filter .filter-button .btn-default:focus,
.appointment-filter .filter-button .btn-default:active,
.appointment-filter .filter-button .btn-default.active,
.appointment-filter .filter-button.open .dropdown-toggle.btn-default,
.appointment-filter .filter-button .open .dropdown-toggle.btn-default {
    background-color: #fff;
    border-color: #ccc;
    box-shadow: none;
}
.appointment-filter .filter-button.btn-group.open .dropdown-toggle {
    box-shadow: none;
}
.appointment-filter .filter-button .btn:focus,
.appointment-filter .filter-button .btn:active:focus,
.appointment-filter .filter-button .btn.active:focus {
    outline: none;
}
.appointment-filter .multiselect-container>li>a>label {
    font-weight: 500;
    padding: 5px 20px 5px 40px;
}
.appointment-filter .multiselect-container>li.disabled>a>label {
    cursor: default;
}
.appointment-filter .multiselect-container {
    overflow-y: auto;
    max-height: 400px;
}
.appointment-filter label.form-check-label {
    font-weight: 400;
}
.appointment-filter .filter-button button span {
    max-width: 142px;
    display: inline;
    float: left;
    font-size: 14px;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
    height: 35px;
    vertical-align: middle;
    line-height: 39px;
    font-weight: 600;
    margin-top: 10px;
}
.filter-kids .form-check {
    text-align: center;
    font-size: calc(12px + .2vw);
    padding-top: 11px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.filter-kids .form-check label {
    display: inline-block;
    margin-bottom: 10px;
    vertical-align: middle;
    margin-left: 4px;
}
.appointment-filter input[type=checkbox]#filter-kids {
    margin: 12px 0 0 0;
}
.appointment-filter .filter-button button b {
    display: block;
    float: right;
}
.appointment-filter .btn-group svg.cancel {
    width: 18px;
    height: 24px;
    color: #777;
    float: left;
    margin-top: 18px;
    display: none;
    margin-left: 0;
    background: #fff;
}
.appointment-filter .btn-group svg.cancel:hover {
    color: #000;
}
.appointment-filter .btn-group svg.cancel.active {
    display: inline;
}
.appointment-filter .btn-group b.caret {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border: none;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -570px -0;
    width: 67px;
    height: 62px;
}
.appointment-filter .btn-group.open b.caret {
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -570px -62px;
}
.appointment-filter .select-a-time.btn-group b.caret {
    border-left: 1px solid #7BD483;
    background-position: -570px -124px;
}
.appointment-filter .select-a-time.btn-group.open b.caret {
    background-position: -570px -186px;
}
.appointment-filter .dropdown-menu {
    position: absolute;
    z-index: 1000;
    float: left;
    min-width: 220px;
    padding: 5px 0;
    margin: 0 0;
    top: 64px;
    list-style: none;
    font-size: 14px;
    background-color: #fff;
    border: 1px solid #ccc;
    border: 1px solid rgba(0,0,0,.15);
    border-radius: 4px;
    -webkit-box-shadow: 0 6px 12px rgb(0 0 0 / 18%);
    box-shadow: 0 6px 12px rgb(0 0 0 / 18%);
    background-clip: padding-box;
}
.appointment-filter .dropdown-menu li.disabled {
    position: relative;
}
body.appointment .popover {
    max-width: 210px;
    font-size: 13px;
    line-height: 19px;
    z-index: 1100;
}
.appointment-filter-container {
    display: flex;
    align-items: center;
    justify-content: center;
}
.appointment-filter-container > div,
.appointment-filter > div {
    padding: 0;
}
.appointment-filter > div {
    border-radius: 3px;
}
.appointment-filter-container > div {
    border: 1px solid rgba(53, 53, 53, 0.5);
    border-radius: 0;
    margin-left: -1px;
    background: #fff;
    width: 100%;
}
.appointment-filter-container > div:first-child {
    border-radius: 3px 0 0 3px;
}
.appointment-filter-container > div:last-child {
    border-radius: 0;
}
.appointment-filter .filter-button.dropdown {
    margin: 0;
}
.appointment_area .sort-by-container {
    font-size: 16px;
    font-weight: 600;
    height: 39px;
    line-height: 20px;
    text-align: center;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: auto;
    flex-grow: 1;
    margin-left: 5px;
}
.appointment_area .sort-by-container select {
    border: none;
    outline: none;
    text-align: center;
    padding: 0 18px 0 10px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(../images/chevron-down.svg) no-repeat;
    background-position: 100% 55%;
}
.appointment_area .online-checkbox {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    font-weight: 600;
    flex-grow: 0;
    margin-right: 2%;
}
.appointment_area .online-checkbox label.switch {
    margin: 0 8px 0 0;
}
.appointment-filter input[type=checkbox] {
    height: 18px;
    width: 18px;
    margin-left: -28px;
    margin-top: 0;
}
#appointment-filter-btn-open {
    width: 90px;
    border-radius: 3px;
    border: 1px solid #7BD483;
    color: #7BD483;
    outline: none;
    background: #fff;
    height: 64px;
    margin-left: -5px;
    position: relative;
}
#appointment-filter-btn-open:active {
    box-shadow: none;
}
#appointment-filter-btn-open span.mobile-filters-button-img {
    width: 40px;
    height: 50px;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -570px -298px;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 21px;
}
#appointment-filter-btn-open span.mobile-filters-button-img.active {
    background-position: -570px -248px;
}
#appointment-filter .modal-header {
    height: 60px;
    background: #fff;
}
#appointment-filter .modal-footer button {
    border-radius: 2px;
    width: 100%;
    height: 45px;
    font-size: 19px;
    max-width: 400px;
    margin: auto;
    display: block;
}
#appointment-filter .close {
    margin-top: -35px !important;
}
.appointment_area .appointment-area-menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
#teacher-mode-popup-modal {
    width: 100%;
    overflow-y: auto;
}
#teacher-mode-popup-modal div.modal-dialog {
    width: 80%;
    max-width: 900px;
}

#teacher-mode-popup-modal div.modal-header,
#teacher-choose-popup-modal div.modal-header {
    background: transparent;
    position: relative;
}
#teacher-mode-popup-modal div.modal-header {
    height: 60px;
}
#teacher-mode-popup-modal div.modal-body-logo {
}
#teacher-mode-popup-modal div.modal-body-logo img {
    margin: 0 auto 30px;
}
#teacher-mode-popup-modal div.modal-body {
    padding-top: 0;
}
#teacher-mode-popup-modal div.modal-body-header {
    text-align: center;
    font-weight: 600;
    font-size: 39px;
    line-height: 56px;
    color: var(--dark-color);
}
#teacher-mode-popup-modal div.modal-body-header h3 {
    font-size: 40px;
    line-height: 46px;
    margin-bottom: 0;
    margin-top: 0;
}

#teacher-mode-popup-modal div.modal-body-header p {
    font-size: 16px;
    line-height: 20px;
    margin: 15px 0 0;
}

#teacher-mode-popup-modal div.modal-body-header div.loading {
    width: 60px;
    height: 60px;
    border-color: transparent var(--bs-blue) transparent var(--bs-blue);
    margin-bottom: 15px;
}

#teacher-mode-popup-modal div.modal-body-img {
    display: flex;
    align-items: center;
    justify-content: center;
}
#teacher-mode-popup-modal div.modal-body-img img {
    height: 280px;
    margin: 40px 0 50px;
}
#teacher-mode-popup-modal div.modal-body-calendar {
    display: flex;
    align-items: flex-start;
    justify-content: space-evenly;
    margin: 20px 0 60px;
}
#teacher-mode-popup-modal div.modal-body-calendar .day-picker-container {
    width: 260px;
}
#teacher-mode-popup-modal div.modal-body-calendar .time-picker-container {
    display: none;
    width: 260px;
    height: 280px;
}
#teacher-mode-popup-modal div.modal-body-youtube {
    display: flex;
    margin-bottom: 20px;
    flex-direction: row;
    justify-content: space-around;
}
#teacher-mode-popup-modal div.modal-body-youtube iframe {
    width: 251px;
    height: 445px;
}
#teacher-mode-popup-modal div.modal-body-buttons {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    margin-bottom: 30px;
}
#teacher-mode-popup-modal div.modal-body-buttons button {
    width: 250px;
    height: 60px;
    font-size: 16px;
    font-weight: 700;
}
#teacher-mode-popup-modal[data-type="no-tutors"] div.modal-body-buttons button {
    margin: 50px 0 20px;
}
#teacher-choose-popup-modal div.modal-header button.close {
    margin: 0;
    position: absolute;
    right: 30px;
    top: 60px;
}
#teacher-mode-popup-modal div.modal-header button.close {
    margin: 0;
    position: absolute;
    right: 20px;
    top: 50px;
}
#teacher-mode-popup-modal div.header,
#teacher-choose-popup-modal div.header {
    border: none;
    width: 80%;
    background: transparent;
}
#teacher-mode-popup-modal div.header div,
#teacher-choose-popup-modal div.header div {
    padding-left: 90px;
    position: relative;
    height: 80px;
    display: table;
    margin-top: 5px;
    margin-left: 20px;
}
#teacher-choose-popup-modal div.header div span {
    vertical-align: middle;
    display: table-cell;
    font-weight: 700;
    line-height: 20px;
    font-size: 18px;
}
#teacher-choose-popup-modal div.header div::after {
    width: 80px;
    height: 80px;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
}
#teacher-choose-popup-modal div.header div.teacher-choose-popup-payment-options:after {
    background-position: -490px -0;
}
#teacher-choose-popup-modal div.header div.teacher-choose-popup-cancellations:after {
    background-position: -490px -80px;
}
#teacher-choose-popup-modal div.header div.teacher-choose-popup-learn-more:after {
    background-position: -490px -160px;
}
.modal-backdrop.in {
    opacity: .5;
}
#teacher-mode-popup-modal .modal-content,
#teacher-choose-popup-modal .modal-content {
    border-radius: 6px;
}
#teacher-choose-popup-modal .modal-dialog {
    position: absolute;
    top: 50% !important;
    transform: translate(0, -50%) !important;
    -ms-transform: translate(0, -50%) !important;
    -webkit-transform: translate(0, -50%) !important;
    margin: auto;
    width: 90%;
    height: 80%;
    left: 0;
    right: 0;
    max-width: 1000px;
}
#teacher-choose-popup-modal .modal-content {
    min-height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
#teacher-choose-popup-modal .modal-body {
    position: absolute;
    top: 110px;
    bottom: 45px;
    left: 0;
    right: 0;
    overflow-y: auto;
    padding: 0 5%;
}
#teacher-choose-popup-modal .modal-body ul {
    padding-inline-start: 5%;
    margin-bottom: 10px;
    list-style-type: disc;
}
#teacher-choose-popup-modal .modal-body li {
    margin: 2% 0;
}
#teacher-choose-popup-modal .modal-body ul ul {
    list-style-type: circle;
}
#teacher-choose-popup-modal .modal-body ul ul ul {
    list-style-type: square;
}
#teacher-choose-popup-modal .modal-body ul li.no-list-style {
    list-style: none;
}
#teacher-choose-popup-modal .modal-footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
.header-info {
    padding: 0 2%;
}
.header-info h2 {
    font-family: Open Sans;
    font-style: normal;
    font-weight: bold;
    font-size: 45px;
    line-height: 61px;
    color: #4D4D4D;
    margin: 40px auto 15px;
    text-align: center;
}
.header-info p {
    font-family: Open Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 18px;
    color: #4D4D4D;
    margin: 35px auto;
    text-align: center;
}
.appointment_area .region {
    padding: 0 10px;
    font-size: 12px;
    line-height: 16px;
}
.appointment_area .region span {
    margin: 0 6px 0 0;
 }
.appointment_area .flag {
    width: 24px;
    height: 16px;
    border-radius: 1px;
}
.appointment_area .good-for-kids {
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -0 -553px;
    width: 126px;
    height: 24px;
    display: inline-block;
    vertical-align: middle;
    margin: -4px 0 0 0;
}
.appointment_data .taught-lang span.taught-lang-text {
    margin-right: 30px;
}
.appointment_data .region {
    display: inline-block;
}
span.native-lang-text {
    padding-right: 20px;
}
.appointment_data .taught-lang {
    margin-top: 17px;
    font-size: 14px;
    line-height: 25px;
    color: var(--dark-color);
    font-weight: 600;
}
.appointment_data span.taught-lang-icon {
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -610px -248px;
    width: 27px;
    height: 16px;
    display: inline-block;
    margin: -3px 8px 0 0;
    vertical-align: middle;
}
.appointment_data div.reviews {
    line-height: 30px;
    height: 30px;
}
.appointment_data span.reviews-star-icon {
    display: inline-block;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -350px -229px;
    width: 16px;
    height: 15px;
    margin-right: 5px;
}
.appointment_data span.reviews-star-number {
    width: 11px;
    height: 25px;
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 25px;
    color: #4D4D4D;
}
.appointment_data span.reviews-quantity {
    height: 16px;
    font-family: Open Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    line-height: 16px;
    color: #4D4D4D;
    margin-left: 8px;
}
.appointment_data div.students-lessons {
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 30px;
    color: #4D4D4D;
}
.appointment_data div.students-lessons > div {
    display: inline-block;
}
.appointment_data div.students-lessons .students {
    margin-left: 6px;
    margin-right: 30px;
}
.appointment_data div.students-lessons div.lessons {
    padding-left: 25px;
    position: relative;
}
.appointment_data div.students-lessons div.lessons:before {
    content: '';
    width: 16px;
    position: absolute;
    left: 3px;
    height: 20px;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -610px -298px;
    top: 4px;
}
.appointment_data div.students-lessons .students span.students-icon {
    display: inline-block;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -610px -264px;
    width: 15px;
    height: 24px;
    margin-right: 3px;
    margin-top: -3px;
    vertical-align: middle;
}
.appointment_data .teacher-schedule-btn.appointment_data div.students-lessons .lessons {
    margin-left: 15px;
}
.appointment_data div.native-lang {
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    color: #4D4D4D;
    line-height: 30px;
    margin: 15px 0 5px;
}
.appointment_data div.specialties {
    margin: 10px 0 5px;
    font-size: 14px;
    line-height: 30px;
}
.appointment_data div.specialties:not(:empty):before {
    content: attr(data-before-text);
    font-weight: 600;
}
.appointment_data .teacher-schedule-btn {
    width: 200px;
    height: 70px;
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 67px;
    text-align: center;
    color: #FFFFFF;
    background: #2F80ED;
    border: 2px solid #2F80ED;
    border-radius: 4px;
    float: right;
}
.appointment_data .teacher-schedule-btn:hover {
    background: #305896 !important;
    color: #FFF !important;
}
.appointment_data .teacher-schedule-btn:focus {
    color: #FFF;
}
.appointment_data div.native-lang span.native-lang-icon {
    display: inline-block;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -570px -348px;
    width: 44px;
    height: 24px;
    vertical-align: middle;
    margin: -4px 0 0 5px;
}
.appointment-data-video {
    height: 400px;
    position: absolute;
    overflow: hidden;
}
.appointment-data-video.open {
    z-index: 1;
}
.appointment-data-video-content {
    width: 100%;
    line-height: 335px;
    margin: 0 auto 50px;
    position: relative;
    cursor: pointer;
}
.appointment-data-video-content img {
    width: 100%;
    box-shadow: 0 2px 3px 1px rgb(0 0 0 / 16%);
    border-radius: 3px;
}
.appointment-data-video-content::after {
    content: "";
    width: 68px;
    height: 48px;
    border: none;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -71px -577px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
}
.appointment-data-video-content:hover::after {
    width: 71px;
    height: 50px;
    background-image: url(../images/appointment.png);
    background-repeat: no-repeat;
    background-position: -0 -577px;
}
.appointment-data-video-youtube {
    background: rgba(0,0,0,0.5);
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
}
.appointment-data-video-youtube iframe {
    left: 0;
    right: 0;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 560px;
    height: 315px;
    width: 90vw;
    margin: auto;
    height: 50.625vw;
}
.appointment-data-video-desc {
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 25px;
    color: #4D4D4D;
    margin: 6px auto 0;
}
.appointment-data-video-table {
    position: relative;
    height: 270px;
}
.appointment-data-video-table .loading {
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
#teachers-container > div.loading {
    margin: 30px auto;
    width: 50px;
    height: 50px;
    border-color: transparent var(--bs-blue) transparent var(--bs-blue);
}
body.appointment .page-heading-appointment.online #teachers-container {
    position: relative;
    padding-bottom: 100px;
}
body.appointment .page-heading-appointment.online #teachers-container:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    width: 50px;
    height: 50px;
    margin: 25px auto 0;
    border-bottom: 2px solid transparent;
    border-left: 2px solid var(--bs-blue);
    border-right: 2px solid var(--bs-blue);
    border-top: 2px solid transparent;
    border-radius: 50%;
    animation: rotate-loading 1.5s linear 0s infinite normal;
    transform-origin: 50% 50%;
}
.appointment-data-video-table table {
    margin: auto;
}
.appointment-data-video-table table tr {
}
.appointment-data-video-table table tr:first-child td {
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 19px;
    text-align: center;
    color: #4D4D4D;
}
.appointment-data-video-table table td {
    width: 45px;
    height: 54px;
    vertical-align: middle;
    text-align: center;
    background: #F5F7FA;
    outline: 1px solid #fff;
}
.appointment-data-video-table table td.low1 {
    background: rgba(151, 214, 122, .2);
}
.appointment-data-video-table table td.low2 {
    background: rgba(151, 214, 122, .4);
}
.appointment-data-video-table table td.mid {
    background: rgba(151, 214, 122, .6);
}
.appointment-data-video-table table td.high1 {
    background: rgba(151, 214, 122, .8);
}
.appointment-data-video-table table td.high2 {
    background: rgba(151, 214, 122, 1);
}
.appointment-data-video-table table td span {
    display: block;
    color: #4D4D4D;
    font-weight: normal;
    font-size: 12px;
    line-height: 16px;
}
.appointment-data-video-table table td span:first-child {
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
}
.appointment-data-video-table table td:first-child {
    width: 90px;
    height: 54px;
    background: #fff;
}
.appointment-data-video-button {
    width: 80%;
    max-width: 426px;
    height: 56px;
    background: #FFFFFF;
    border: 2px solid #2F80ED;
    border-radius: 4px;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 52px;
    text-align: center;
    color: #2F80ED;
    margin: 10px auto 0;
    display: block;
}

#teachers-container {
    padding-bottom: 50px;
}

.teacher-container {
    margin-top: 2%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.col-teacher {
    min-height: 400px;
    overflow-x: hidden;
    background: #fff;
    outline: 1px solid #f1f1f1;
    box-shadow: 0px 8px 32px rgb(0 0 0 / 15%);
    border-radius: 8px;
    flex: 1 0 60%;
}
.col-video {
    min-height: 400px;
    position: relative;
    margin-left: 2%;
    max-width: 474px;
    flex: 1 0 40%;
}
main.demo {
    color: var(--dark-color);
    background: #F4F4F4;
    padding-top: 53px;
}
main.demo > h1 {
    font-weight: 600;
    font-size: 46px;
    line-height: 56px;
    margin-top: 0;
    text-align: center;
    padding: 0 1%;
}
main.demo > a {
    width: 347px;
    height: 69px;
    margin: auto;
    background: #2F80ED;
    color: #fff;
    border: 2px solid #2F80ED;
    border-radius: 4px;
    display: block;
    font-size: 16px;
    margin-top: 36px;
    line-height: 53px;
    font-weight: 600;
}
main.demo div.demo-content {
    background: #fff;
    margin-top: 58px;
    padding: 2%;
}
main.demo section {
    box-shadow: 0px 8px 32px rgba(0, 0, 0, 0.15);
    border-radius: 8px;
    display: grid;
    grid-template-columns: 39% 37% 24%;
    grid-template-rows: 134px min-content;
    grid-template-areas:
        "h h h"
        "a b c";
}
main.demo section.demo-s1 {
}
main.demo section.demo-s2 {
    margin-top: 2%;
}
main.demo section > h3 {
    font-weight: 600;
    font-size: 24px;
    line-height: 56px;
    grid-area: h;
    height: 56px;
    padding-left: 3%;

}
main.demo section > p {
    position: relative;
    font-weight: normal;
    padding-top: 63px;
    padding-right: 40%;
    line-height: 20px;
    margin-bottom: 35px;
}
main.demo section > p a {
    text-decoration: underline;
}
main.demo section > p:before {
    content: '';
    position: absolute;
    width: 90px;
    height: 90px;
    left: 0;
    top: -15px;
    background: #fff;
    background-image: url(../images/demo.png);
    background-repeat: no-repeat;
    text-align: center;
    margin-top: -40px;
    box-shadow: 0 0 0 10px #fff;
}
main.demo section.demo-s1 > p.demo-p1:before {
    background-position: -5px -5px;
}
main.demo section.demo-s1 > p.demo-p2:before {
    background-position: -205px -5px;
}
main.demo section.demo-s1 > p.demo-p3:before {
    background-position: -105px -5px;
}
main.demo section.demo-s2 > p.demo-p1:before {
    background-position: -5px -105px;
}
main.demo section.demo-s2 > p.demo-p2:before {
    background-position: -105px -105px;
}
main.demo section.demo-s2 > p.demo-p3:before {
    background-position: -205px -105px;
}
main.demo section p.demo-p1 {
    grid-area: a;
    margin-left: 8%;
    margin-right: 1%;
    border-top: 2px solid #2F80ED;
}
main.demo section p.demo-p2 {
    grid-area: b;
    margin-right: 1%;
    border-top: 2px solid #2F80ED;
}
main.demo section p.demo-p3 {
    grid-area: c;
}
@media only screen and (max-width: 1500px) {
    .appointment_data .teacher-schedule-btn {
        font-size: 14px;
    }
    .profile-img {
        position: relative;
        text-align: left;
        float: left;
        width: 140px;
        height: auto;
        margin-right: 10px;
        margin-bottom: 10px;
    }
    .profile-img img{
        width: 130px;
        height: auto;
    }
    .appointment_data .addmore {
        margin-left: 0;
    }
}
@media only screen and (max-width: 1380px) {
    .appointment-filter .filter-button button span {
        font-size: 12px;
    }
    .filter-button.filter-kids {
        width: 120px;
    }
    .filter-kids .form-check {
        padding-top: 0;
    }
}
@media only screen and (max-width: 1273px) {
    .appointment-filter .tutor-is-from .btn-group button,
    .appointment-filter .specialties button,
    .appointment-filter .also-speaks button {
        padding-right: 50px;
    }
    .appointment-filter .tutor-is-from .btn-group b.caret,
    .appointment-filter .specialties .btn-group b.caret,
    .appointment-filter .also-speaks .btn-group b.caret {
        width: 50px;
        background-position: -578px -0;
    }
    .appointment-filter .tutor-is-from .btn-group.open b.caret,
    .appointment-filter .specialties .btn-group.open b.caret,
    .appointment-filter .also-speaks .btn-group.open b.caret {
        background-position: -578px -62px;
    }
    .appointment-data-video-table table tr:first-child td {
        font-size: 9px;
    }
    .appointment-data-video-table table td span:first-child {
        font-size: 11px;
        line-height: 14px;
    }
    .appointment-data-video-table table td span {
        font-size: 9px;
        line-height: 14px;
    }
}
@media only screen and (max-width: 1199px) {
    body.appointment .header-info .trustpilot-widget {
        top: 0;
        left: 0;
        margin: auto;
        right: 0;
        position: relative !important;
    }
    .appointment-filter  .tutor-is-from button span,
    .appointment-filter .specialties button span,
    .appointment-filter .also-speaks button span {
        max-width: 124px;
    }
    .filter-button.filter-kids {
        width: 130px;
    }
    .appointment-filter .tutor-is-from .btn-group button,
    .appointment-filter .specialties button,
    .appointment-filter .also-speaks button {
        padding-right: 40px;
    }
    .appointment-filter .tutor-is-from .btn-group b.caret,
    .appointment-filter .specialties .btn-group b.caret,
    .appointment-filter .also-speaks .btn-group b.caret {
        width: 40px;
        background-position: -582px -0;
    }
    .appointment-filter .tutor-is-from .btn-group.open b.caret,
    .appointment-filter .specialties .btn-group.open b.caret,
    .appointment-filter .also-speaks .btn-group.open b.caret {
        background-position: -582px -62px;
    }
    .profile-info {
        display: grid;
        grid-template-columns: auto;
        grid-template-areas:
            "A"
            "B"
            "C";
    }
    .profile-info-data {
        grid-area: A;
    }
    .appointment_data .addmore {
        grid-area: B;
    }
    .profile-info-button {
        grid-area: C;
    }
    .appointment-data-video,
    .appointment_data {
        padding: 20px;
    }
    .appointment_data .teacher-schedule-btn {
        font-size: 16px;
        display: block;
        margin: 15px auto 0;
        width: 100%;
        max-width: none;
        height: 56px;
        line-height: 50px;
    }
    .appointment_data .addmore span.txtopenclose {
        margin: 0 0 6px;
    }
    .addmore .addmore-text.short {
        height: 65px;
    }
    .appointment_data .addmore {
        margin-top: 10px;
    }
}
@media only screen and (max-width: 1100px) {
    .appointment-filter .btn-group svg.cancel {
        margin-top: 20px;
    }
    .appointment-filter  .tutor-is-from button span,
    .appointment-filter .specialties button span,
    .appointment-filter .also-speaks button span {
        max-width: 330px;
    }
    .appointment-filter .tutor-is-from .btn-group button,
    .appointment-filter .specialties button,
    .appointment-filter .also-speaks button {
        padding-right: 67px;
    }
    .appointment-filter .tutor-is-from .btn-group b.caret,
    .appointment-filter .specialties .btn-group b.caret,
    .appointment-filter .also-speaks .btn-group b.caret {
        width: 67px;
        background-position: -570px -0;
    }
    .appointment-filter .tutor-is-from .btn-group.open b.caret,
    .appointment-filter .specialties .btn-group.open b.caret,
    .appointment-filter .also-speaks .btn-group.open b.caret {
        background-position: -570px -62px;
    }
    .appointment-filter-container {
        flex-direction: column;
    }
    .appointment-filter .filter-button button span {
        font-size: 14px !important;
        line-height: 44px;
    }
    #appointment-filter .modal-content {
        width: 90%;
        max-width: 500px;
        margin: auto;
        padding: 30px;
        border-radius: 5px;
        height: 470px;
        position: absolute;
        left: 0;
        right: 0;
        top: 10px;
    }
    #appointment-filter .filter-button {
        padding: 0;
        width: 100%;
        display: block;
    }
    #appointment-filter .dropdown-menu {
        background: #fff !important;
    }
    #appointment-filter {
    }
    .appointment-filter .mobile-only {
        display: block;
    }
    .appointment-filter-container > div {
        margin: 5px 0;
    }
    .appointment-filter {
        width: 345px;
        height: 100px;
        margin: 10px auto 0;
        flex-flow: row wrap;
    }
    .appointment_area {
        margin-top: 30px;
    }
    .appointment-filter-time-container {
        margin: 0;
        width: 260px;
    }
    .filter-button.filter-kids {
        flex: 0 1 345px;
        align-self: flex-end;
        height: 26px;
        margin: 0;
        border: none;
        background: transparent;
    }
    .filter-kids .form-check {
        padding: 0 0 0 10px;
        text-align: left;
    }
    .appointment-filter input[type=checkbox]#filter-kids {
        margin: 5px 0 0 0;
    }
    .filter-kids .form-check label {
        vertical-align: top;
        margin-left: 5px;
        margin-top: 3px;
    }
    .appointment-filter-all-container {
        width: auto;
    }
    .appointment-filter .select-a-time.btn-group b.caret {
        border-left: none;
        width: 50px;
        background-position: -578px -124px;
    }
    .appointment-filter .select-a-time.btn-group.open b.caret {
        background-position: -578px -186px;
    }
}

@media only screen and (max-width: 991px) {
    .profile-img img {
        width: 80px;
    }
    .profile-img {
        width: 90px;
        height: auto;
    }
    .appointment_data .addmore {
        margin-left: 0;
    }
    .appointment-data-video-desc {
        font-size: 16px;
    }
    #teacher-choose-popup-modal .modal-body {
        top: 90px;
    }
    .header-info.row {
        margin: 0;
        padding: 0 15px;
    }
    #teacher-choose-popup-modal div.header div span {
        font-size: 14px;
        line-height: 18px;
    }
    #teacher-choose-popup-modal div.header div {
        padding-left: 80px;
        height: 80px;
    }
    #teacher-choose-popup-modal div.header div::after {
        width: 64px;
        height: 64px;
    }
    #teacher-choose-popup-modal div.header div.teacher-choose-popup-payment-options:after {
        background-position: -490px -240px;
    }
    #teacher-choose-popup-modal div.header div.teacher-choose-popup-cancellations:after {
        background-position: -490px -304px;
    }
    #teacher-choose-popup-modal div.header div.teacher-choose-popup-learn-more:after {
        background-position: -0 -418px;
    }
}
@media only screen and (max-width: 767px) {
    body.appointment .header-info .trustpilot-widget {
        position: absolute !important;
        left: 0;
        right: auto;
        width: 245px;
        top: -40px;
        height: 20px;
    }
    body.appointment .page-heading-appointment.online .header-info .trustpilot-widget {
        left: 0;
        right: 0;
        margin: auto;
        top: 3px;
    }
    body.appointment .page-heading-appointment .header-info h2 {
        margin: 20px auto 0px;
    }
    body.appointment .page-heading-appointment .header-info p {
        margin: 25px auto;
    }
    .appointment_area .appointment-area-menu {
        align-items: flex-start;
        flex-direction: column;
        width: 94%;
        margin: auto;
    }
    .appointment_area .online-checkbox {
        margin-bottom: 1%;
    }
    .appointment_area .online-checkbox:not(.online) {
        position: absolute;
        right: 10px;
        margin-top: -37px;
    }
    .appointment-filter .select-a-time.btn-group b.caret {
        display: none;
    }
    .appointment-filter .filter-button button span {
        max-width: none;
    }
    .header {
        background: #fff;
    }
    main.demo {
        padding-top: 20px;
        background: #fff;
    }
    main.demo > h1 {
        line-height: 28px;
        font-size: 24px;
        text-align: left;
        width: 320px;
        margin: auto;
    }
    main.demo > a {
        width: 320px;
        height: 55px;
        font-size: 16px;
        line-height: 39px;
        font-weight: 600;
        margin-top: 24px;
    }
    main.demo div.demo-content {
        margin-top: 32px;
    }
    main.demo section {
        display: grid;
        width: 320px;
        margin: 0 auto 32px;
        grid-template-columns: none;
        grid-template-rows: 73px min-content min-content min-content;
        grid-template-areas:
            "h"
            "a"
            "b"
            "c";
    }
    main.demo section.demo-s1 {
    }
    main.demo section.demo-s2 {
        margin-top: 2%;
    }
    main.demo section > h3 {
        font-size: 18px;
        line-height: 40px;
        padding-left: 16px;
    }
    main.demo section > p {
        line-height: 20px;
        margin: 0;
        padding: 0 20px 18px 37px;
    }
    main.demo section > p:before {
        width: 40px;
        height: 40px;
        left: 0;
        top: 0;
        margin: 0 0 0 -18px;
        box-shadow: 0 0 0px 5px #fff;
    }
    main.demo section.demo-s1 > p.demo-p1:before {
        background-position: -5px -205px;
    }
    main.demo section.demo-s1 > p.demo-p2:before {
        background-position: -55px -205px;
    }
    main.demo section.demo-s1 > p.demo-p3:before {
        background-position: -105px -205px;
    }
    main.demo section.demo-s2 > p.demo-p1:before {
        background-position: -155px -205px;
    }
    main.demo section.demo-s2 > p.demo-p2:before {
        background-position: -205px -205px;
    }
    main.demo section.demo-s2 > p.demo-p3:before {
        background-position: -255px -205px;
    }
    main.demo section p.demo-p1 {
        margin: 0 0 2px 32px;
        border-top: none;
        border-left: 1px solid #2F80ED;
    }
    main.demo section p.demo-p2 {
        margin: 2px 0 2px 32px;
        border-top: none;
        border-left: 1px solid #2F80ED;
    }
    main.demo section p.demo-p3 {
        margin: 2px 0 10px 32px;
        border: none;
    }
    .appointment_data span.reviews {
        padding-left: 20px;
        display: block;
        margin-top: 8px;
    }
    .appointment_data .taught-lang {
        margin-top: 5px;
    }
    .appointment_data span.name {
        font-size: 18px;
        line-height: 25px;
    }
    .profile-info {
        display: block;
    }
    .appointment_data {
        padding: 15px;
    }
    .header-info {
        width: 90%;
        margin: auto;
        padding: 0;
    }
    .header-info h2 {
        font-weight: 500;
        color: var(--dark-color);
        text-align: left;
        font-size: 24px;
        line-height: 28px;
    }
    .header-info p {
        text-align: left;
        font-size: 12px;
        line-height: 18px;
    }
    .appointment-filter {
        margin: 30px auto 0;
        width: 320px;
    }
    .appointment-filter-time-container {
        width: auto;
        min-width: 220px;
    }
    .appointment-filter .select-a-time-container.dropdown-menu {
        background: #fff !important;
    }
    #teacher-choose-popup-modal div.header div::after {
        width: 70px;
        height: 71px;
    }
    #teacher-choose-popup-modal div.header div.teacher-choose-popup-payment-options:after {
        background-position: -0 -482px;
    }
    #teacher-choose-popup-modal div.header div.teacher-choose-popup-cancellations:after {
        background-position: -70px -482px;
    }
    #teacher-choose-popup-modal div.header div.teacher-choose-popup-learn-more:after {
        background-position: -140px -482px;
    }
    body.appointment {
        background: #fff;
    }
    .appointment_data .profile-img div.video-icon {
        display: block;
    }
    .appointment_data .teacher-schedule-btn {
        float: none;
        display: block;
        margin: 10px 0% 0;
        width: 100%;
        max-width: none;
        height: 56px;
        line-height: 50px;
    }
    .appointment_data div.native-lang {
        font-family: Open Sans;
        font-style: normal;
        font-weight: 600;
        font-size: 14px;
        color: #4D4D4D;
        line-height: 30px;
        margin: 10px 0 0;
    }
    .addmore p {
        margin-top: 20px;
        padding-right: 0;
    }
    .addmore .addmore-text {
        margin-top: 10px;
    }
    .addmore .addmore-text.short {
        height: 90px;
    }
    .appointment_data .addmore a {
        margin: 7px 0 0;
    }
    .appointment_data .addmore {
        margin-top: 15px;
    }
    .profile-img img {
        width: 80px;
    }
    .profile-img {
        width: 90px;
        height: auto;
    }
    .appointment_data .addmore {
        margin-left: 0;
    }
    .appointment_area {
        margin-top: 0;
    }
    .header-info.row {
        margin: 0;
        padding: 0;
    }
    .header-info p {
        margin-bottom: 5px;
    }
    .tutorial {
        height: 170px;
        flex-direction: column;
    }
    .tutorial-text {
        text-align: center;
        display: flex;
        height: 60px;
        display: flex;
        margin-top: 20px;
        align-items: center;
        padding: 0;
    }
    .tutorial-button {
        margin: auto;
        max-width: 320px;
        width: 100%;
    }
    #teacher-mode-popup-modal {
        width: 100%;
        margin: 0 0;
        max-width: none;
        background: #fff;
    }
    #teacher-mode-popup-modal .modal-dialog {
        margin: 0 auto;
    }
    #teacher-mode-popup-modal .modal-content {
        border-radius: 0;
    }
    #teacher-mode-popup-modal div.modal-body {
        padding: 0px 10px 10px;
    }
    #teacher-mode-popup-modal div.modal-header {
        height: 50px;
        padding: 0px 10px;
    }
    #teacher-mode-popup-modal div.modal-header button.close {
        top: 45px;
    }
    #teacher-mode-popup-modal div.modal-body-header h3 {
        font-size: 23px;
        line-height: 27px;
    }
    #teacher-mode-popup-modal div.modal-body-buttons {
        flex-direction: column;
    }
    #teacher-mode-popup-modal[data-type="no-tutors"] div.modal-body-buttons button {
        margin: 15px 0;
    }
    #teacher-mode-popup-modal div.modal-body-buttons button {
        width: 94%;
        margin-bottom: 15px;
    }
    #teacher-mode-popup-modal div.modal-body-header div.loading {
        margin-bottom: 0;
    }
    #teacher-mode-popup-modal div.modal-body-logo img {
        margin: 0 auto 20px;
    }
    #teacher-mode-popup-modal div.modal-body-calendar {
        flex-direction: column;
        align-items: center;
    }
    #teacher-mode-popup-modal div.modal-body-calendar .day-picker-container {
        width: 90%;
    }
    #teacher-mode-popup-modal div.modal-body-calendar .time-picker-container {
        margin-top: 20px;
        width: 90%;
    }
    .footer-links {
        margin-bottom: 10px;
    }
}
@media only screen and (max-width: 560px) {
    .appointment-filter  .tutor-is-from button span,
    .appointment-filter .specialties button span,
    .appointment-filter .also-speaks button span {
        max-width: 160px;
    }
    .appointment-filter .tutor-is-from .btn-group button,
    .appointment-filter .specialties button,
    .appointment-filter .also-speaks button {
        padding-right: 50px;
    }
    .appointment-filter .tutor-is-from .btn-group b.caret,
    .appointment-filter .specialties .btn-group b.caret,
    .appointment-filter .also-speaks .btn-group b.caret {
        width: 50px;
        background-position: -578px -0;
    }
    .appointment-filter .tutor-is-from .btn-group.open b.caret,
    .appointment-filter .specialties .btn-group.open b.caret,
    .appointment-filter .also-speaks .btn-group.open b.caret {
        background-position: -578px -62px;
    }
    #teacher-mode-popup-modal div.modal-body-youtube {
        justify-content: normal;
        overflow: auto;
        padding: 0 30px;
    }
    #teacher-mode-popup-modal div.modal-body-youtube iframe {
        margin: 0 10px 30px;
    }
}
