@font-face{
    font-family: 'DIN-Light';
    src: url('din-light/din-light-webfont.eot');
    src: url('din-light/din-light-webfont.eot?#iefix') format('embedded-opentype'),
        url('din-light/din-light-webfont.woff') format('woff'),
        url('din-light/din-light-webfont.ttf') format('truetype'),
        url('din-light/din-light-webfont.svg#webfont') format('svg');
}
@font-face{
    font-family: 'DIN-Medium';
    src: url('din-medium/din-medium-webfont.eot');
    src: url('din-medium/din-medium-webfont.eot?#iefix') format('embedded-opentype'),
        url('din-medium/din-medium-webfont.woff') format('woff'),
        url('din-medium/din-medium-webfont.ttf') format('truetype'),
        url('din-medium/din-medium-webfont.svg#webfont') format('svg');
}

@font-face { 
    font-family: "DIN-REGULAR";
    src: url('din-regular/D-DIN.otf') format("opentype");
}

@font-face { 
    font-family: "DIN-BOLD";
    src: url('din-bold/D-DIN-Bold.otf') format("opentype");
}

html {
    margin: 0;
    padding: 0; 
}

body { 
    margin:0; 
    padding:0; 
    font-family: "DIN-Light",Arial,Tahoma,Verdana,sans-serif; 
    font-size: 16px; 
    line-height: 26px; 
    color: #3c3c3c; 
    background-color: #fff;
}

* {
    outline: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

p { margin:0 0 15px; padding:0; }
form { margin:0; padding:0; }
a { 
    text-decoration:underline; 
    color:#a8bfb2; 
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    -o-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
}
a:hover { text-decoration:none; }
a.style_1 { text-decoration:none; color:#474c55; }
a.style_1:hover { text-decoration:underline; }
a.style_2 { text-decoration:none; }
a.style_2:hover { text-decoration:underline; }
.fantom { clear:both; line-height:1px; font-size:0; }

img {
    max-width: 100%;
    max-height: 100%;
    vertical-align: middle;
}

input, select, textarea { font-family:DIN-Light; outline:none; }

.ib {
    display: inline-block;
}

.mb0 {
    margin-bottom: 0 !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mt10 {
    margin-top: 10px;
}

.mt20 {
    margin-top: 20px;
}

.ml10 {
    margin-left: 10px;
}

.mr40 {
    margin-right: 40px;
}

.fleft {
    float: left;
}

.fright {
    float: right;
}

.tcenter {
    text-align: center;
}

table {
    width: 100%;
}

.row {
    display: inline-block;
    width: 100%;
}

.button {
    display: inline-block;
    float: right;
    padding: 4px 15px 2px 15px;
    background-color: #a8bfb2;
    border: none;
    font-size: 15px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    text-transform: uppercase;
    cursor: pointer;
}

.button:hover { 
    background-color:#474c55;
    color:#fff;
}

.button-o {
    display: inline-block;
    padding: 10px 45px;
    margin-top: 30px;
    border: 7px solid #8ea99a;
    background-color: #fff;
    text-align:center;
    color: #3c3c3c; 
    text-decoration:none;
    text-transform: uppercase;
    cursor: pointer;
}

.button-o:hover {
    background-color:#8ea99a;
    color:#fff; 
}

.ui-widget {
    font-size: 16px; 
    line-height: 26px;
}

.btn_gotop {
    position: fixed;
    display: none;
    right: 10px;
    bottom: 10px;
    padding: 5px 10px;
    background-color: #474c55;
    font-family: 'DIN-Medium';
    font-size: 14px;
    line-height: 24px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    z-index: 1001;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

.btn_gotop .fa {
    margin-right: 3px;
}

.btn_gotop:hover {
    background-color: #4f5d73;
}

.small_txt {
    font-size: 14px;
}

.separator {
    display: inline-block;
    width: 80px;
    height: 2px;
    margin: 0 0 5px 0;
    border: none;
    background-color: #474c55;
}


/* main */
/*#body h2, #body h3{  margin: 0 0 15px; padding: 0; text-transform: uppercase; font-family: DIN-Light; font-size: 18px; font-weight: normal; color: #474c55; }*/
/*#body h2, #body h3{  margin: 0 0 15px; padding: 0; text-transform: uppercase; font-family: DIN-Light; font-size: 18px; font-weight: normal; color: #474c55; }*/

#center { 
    width: 1283px; 
    margin: 0 auto;
    padding-bottom: 30px; 
}

.title_1 { margin:0 0 20px; padding:0; font-family:DIN-Medium; font-size:12px; font-weight:normal; color:#3b3b3b; }
.title_2 { 
    margin: 15px 0; 
    padding:0; 
    text-transform:uppercase; 
    font-family:DIN-Light; 
    font-size: 24px; 
    line-height: 34px;
    font-weight:normal; 
    color:#474c55; 
}

.title_2.with_border {
    padding-bottom: 5px;
    border-bottom: 4px solid #474c55
}

.title_4 { margin:0 0 15px; padding:0 0 0 5px; text-transform:uppercase; font-family:DIN-Light; font-size:12px; line-height:20px; font-weight:bold; color:#fff; background:#a8bfb2; }
.main_left { float:left; width:170px; }
.main_right { float:left; width:640px; min-height:400px; padding:0; }
.main_right2 { float:right; width:700px; }
.main_full_width { min-height:400px; }

.ch_box_lbl {
    display: inline-block;
    cursor: pointer;
}

.ch_box {
    display: none;
}

.sqr {
    display: inline-block;
    width: 20px !important;
    height: 20px;
    margin-right: 5px;
    background: url(../_img/ch_box.png) no-repeat center left;
    vertical-align: middle;
    transition: all 0.15s ease-out;
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    -o-transition: all 0.15s ease-out;
}

.ch_box:checked + .sqr {
    background: url(../_img/ch_box_checked.png) no-repeat center left;
}

/*
#sh_index_image{
        position:relative;
        width:600px;
        height:auto;
        background: no-repeat center top;
}

#sh_index_image > span{
        position:absolute; left: 60px; bottom:13px; z-index:10;
        display:block;
        width:470px;
        font-size:26px;
        font-weight:bold;
        line-height:30px;
        font-style:italic;
        color:#fff;
}

#sh_index_image > div{
        position:absolute; left: 0px; bottom:0; z-index:5;
        width:600px;
        height:87px;
        background:#fff;
        opacity:0.5;
        filter:alpha(opacity=50);
}

#index_left .title_1{
        color:#231f20;
        font-size:13px;
        color: #5F5F5F; font-size: 13px; font-weight: bold;
}
*/

/* PAGE LOCATION */
.page_location_box {
    display: inline-block;
    float: left;
    width: 100%;
    margin-bottom: 20px;
}

.page_location {
    display: block;
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.page_location li {
    display: inline-block;
    float: left;
}

.page_location li span {
    display: inline-block;
    float: left;
    color: #8ea99a;
}

.page_location a {
    color: #3c3c3c;
    text-decoration: none;
}

.page_location a:hover {
    text-decoration: underline;
}

.page_location li::after {
    display: inline-block;
    content: '';
    width: 5px;
    height: 9px;
    margin: 0 10px;
    background: url('../_img/i_arrow_left.png') no-repeat right center;
}

.page_location li:last-child::after {
    display: none;
}


/* Index slider */
#index_slider_box { 
    position: relative; 
    display: inline-block;
    width: 100%;
    max-height: 500px;
    margin-top: 30px;
    margin-bottom: 50px; 
}

#index_slider_box .slider {
    margin: 0;
    padding: 0;
    height: 100%;
}

#index_slider_box .slick-list {
    height: 100%;
}

#index_slider_box .slick-dots li button {
    width: 30px;
    height: 30px;
}

#index_slider_box .slick-dots li button:before {
    width: 30px;
    height: 30px; 
    line-height: 30px;
    font-size: 16px;
    color: #8ea99a;
    opacity: 1;
}

#index_slider_box .slick-dots li.slick-active button:before {
    color: #4a4e57;
}

#index_slider_box .slick-prev, 
#index_slider_box .slick-next{
    display: none !important;
}

ul.bjqs-controls.v-centered li a{ display:block; padding:10px; background:#fff; color:#000; text-decoration: none; }
ul.bjqs-controls.v-centered li a:hover{ background:#000; color:#fff; }
.bjqs-wrapper { margin:0 0 28px 0; }
ol.bjqs-markers { position:absolute; margin-top:13px; }
ol.bjqs-markers li a{ outline:none; margin:5px; text-decoration:none; overflow:hidden; text-indent:-999px; background:url("../_img/index-slider-bullet.png") center center no-repeat; height:13px; width:13px; }
ol.bjqs-markers li.active-marker a,
ol.bjqs-markers li a:hover{ background:url("../_img/index-slider-bullet-selected.png") center center no-repeat; }
p.bjqs-caption{ background: rgba(255,255,255,0.5); }
.bjqs-prev, .bjqs-next { display:none; }


#body {
    display: inline-block;
    float: left;
    width: 100%;
}

#page_left,
.header_left { 
    float: left; 
    width: 220px;
    text-align: center;
}

#page_right,
.header_right { 
    float: right; 
    width: 1063px; 
}

#page_left {
    margin-top: 30px;
}

#page_right {
    margin-top: -15px;
    padding-left: 28px;
}

/* form */
.btn { 
    display: inline-block;
    padding: 10px 15px 8px 15px;
    background: #a8bfb2; 
    border: 1px solid #a8bfb2;
    font-size: 14px;
    line-height: 26px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    text-transform: uppercase;
    cursor: pointer;
}

.btn_style_1 { margin:0; padding:0; height:25px; color:#5F5F5F; background:#fff; border:solid 1px #5F5F5F; cursor:pointer; }

.btn:hover { 
    background:#474c55; border:solid 1px #474c55; 
}
.form input.input { height:25px; padding:0 5px; margin:0; font-size:13px; border:solid 1px #dbdcdd; background:#fff; }


/* logo column */
#logo_column { padding:22px 0 0 0; float:left; }


/* header */
#header { 
    display: inline-block;
    float: left;
    width: 100%;
    padding-top: 30px;
}

.header_right {
    margin-top: 130px;
    text-align: center;
}

#header .to_login {
    float: right;
    padding: 15px;
    margin-top: -9px;
    background-color: #8ea99a;
    font-size: 16px;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
}

#header .to_login:hover {
    background-color: #474c55;
}

#top_line { padding:0 0 10px; font-size:14px; color:#7c7c7c; text-align:right; line-height:23px; }
#top_line a { text-decoration:none; }
#top_line a:hover { text-decoration:underline; }

#top_line2 { 
    display: inline-block;
    float: left;
    width: 100%;
    margin-top: -70px;
    color: #4a4e57; 
    text-align: right;
}

#top_line2 .user_row {
    display: inline-block;
    float: left;
    width: 100%;
}

#top_line2 a { 
    color:#8ea99a;
    text-decoration:none; 
}

#top_line2 a:hover { 
    color: #474c55; 
}

#logo2 { float:left; }
#logo2 img { float:left; height:150px; }

/* top menu */
#top_menu {
    display: inline-block;
    margin:0;
    padding: 0 0 15px 0;
    width: 85%;
    list-style-type:none;
    border-bottom: 7px solid #8ea99a;
}
#top_menu li { 
    float:left; 
    margin-right: 2.5%;
}

#top_menu li:last-child {
    margin-right: 0;
}

#top_menu li a { 
    position: relative;
    display:block; 
    text-transform:uppercase; 
    text-align:center; 
    white-space:nowrap; 
    text-decoration:none; 
    color:#fff; 
    font-size: 15px; 
    line-height: 25px;  
    color: #8ea99a;
    text-transform: uppercase;
}

#top_menu li a:hover {
    color: #474c55;
}

#top_menu li a::after {
    position: absolute;
    display: inline-block;
    content: '';
    left: 0;
    bottom: -22px;
    width: 100%;
    height: 7px;
    background-color: #474c55;
    border-left: 3px solid #fff;
    border-right: 3px solid #fff;
    opacity: 0;
    visibility: hidden;
}

#top_menu .selected { 
    color: #474c55;
}

#top_menu .selected::after {
    opacity: 1;
    visibility: visible;
}


/* footer */
#footer { width:1087px; margin:0 auto 20px; padding:15px 0 15px 20px; color:#fff; line-height:22px; background:#474c55; }
#footer a { color:#fff; text-decoration:none; }
#footer_column_1, #footer_column_2, #footer_column_3, #footer_column_4 { float:left; width:251px; padding:0 20px 0 0; }
#footer .title { margin:0 0 10px; padding:0 0 5px; font-size:14px; font-weight:normal; text-transform:uppercase; border-bottom:solid 1px #fff; }
.fb_ico_footer { display:block; margin:10px 0 0 0; line-height:17px; }
.fb_ico_footer img { float:left; margin:0 5px 0 0; }

.footer_links { margin:0; padding:0 0 0 15px; }
#footer .footer_links a:hover { text-decoration:none; }

.footer_news { margin:0; padding:0 0 0 15px; }
.footer_news li { padding:0 0 5px; }
.footer_news a { text-decoration:none; }


/* footer style #2 */
#footer2 { width:892px; margin:0 auto 20px; padding:30px 0 0 215px; /*padding:17px 0 0;*/ }
#footer2 a { color:#000; text-decoration:none; }
#footer2 .linkslist { margin:0; padding:0; list-style-type:none; }
#footer2 .column_title { margin:0; padding:0; font-size:12px; }
#footer2_col_1, #footer2_col_2, #footer2_col_3  { float:left; width:190px; padding:0 10px 15px 0; }
#footer2_col_1 { padding-left:215px; }
#footer2_col_4  { float:right; width:240px; padding:0 10px 15px 0; line-height:16px; }
#footer2_col_4  img { margin:0 7px 0 0; float:left; }
#footer2_col_4  .line { padding-bottom:5px; }
#footer2_col_4  .search_line .input { font-size:12px; padding:0 2px; width:100px; background:#ececec; border:solid 1px #b8b8b8; }
#footer2_inner { clear:both; /* background:#ececec; */ color:#000; font-size:13px; padding:10px 0; text-align:center; border-top:solid 1px #b8b8b8; }

/* Footer social links */
#footer_social { text-align:center; }
#footer_social a { display:inline-block; padding:5px 0; height:32px; width:32px; margin:0 5px; background-position:0 0; background-repeat:no-repeat; }
#footer_social a:hover { background-position:right top; }
#footer_social .fb { background-image:url('../_img/ico-fb1.png'); }
#footer_social .youtube { background-image:url('../_img/ico-youtube1.png'); }
#footer_social .email { background-image:url('../_img/ico-mail1.png'); }

/* Footer go to top */
#footer_to_top { padding:15px 0 0 0; text-align:center; }
#footer_to_top a { padding:5px 10px; color:#4a4a4a; background:#ececec; }

/* newsletter subscribe form */
#newsletter_subscribe .label { display:block; padding:0 0 5px; font-size:15px; }
#newsletter_subscribe .input { margin:0 0 5px 0; padding:0 5px; width:240px; height:25px; background:#fff; border:solid 1px #fff; }
#newsletter_subscribe .submit { margin:0; height:27px; width:80px; color:#474c55; font-weight:bold; font-size:15px; background:#fff; cursor:pointer; border:solid 1px #fff; }


/* lightbox */



/* index */
#index_left { float:left; width:583px; }
#index_right { float:right; width:255px; }

#index_right_links { margin:0 0 65px; padding:0; list-style-type:none; }
#index_right_links li { padding:0 0 5px; }
#index_right_links a { padding:10px 0 10px 50px; text-decoration:none; display:block; line-height:20px; color:#fff; text-transform:uppercase; background:#a8bfb2; }
#index_right_links a:hover { text-decoration:underline; }
#index_right_links .s1 a { background:#474c55; }


/* news box */
#news_box { margin:0; font-size:14px; }
#news_box .article { padding:12px 5px; border-bottom:solid 1px #b3b2b2; }
#news_box .title { padding:0; margin:0 0 2px; text-decoration:none; font-weight:normal; line-height:16px; }
#news_box .title a { color:#a8bfb2; text-decoration:none; }
#news_box .title a:hover { text-decoration:underline; }
#news_box .text { color:#5f5f5f; font-size:12px; line-height:14px; }
#news_box .box_title { margin:0 0 9px; padding:0; font-size:13px; line-height:40px; font-weight:normal; text-align:center; color:#fff; background:#474c55; }


/* search form */
#search_form { height:20px; padding:0 0 0 3px; border:solid 1px #b3b2b2; overflow:hidden; }
#search_form .inputf { margin:0; padding:0; float:left; height:18px; width:185px; border:solid 1px #fff; outline:none; }
#search_form .submit { float:right; width:50px; height:20px; }


/* index trinity */
.index_trinity { 
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.index_trinity .block {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 30.6%;
    margin-right: 4%;
    margin-bottom: 40px;
    text-align: center;
    vertical-align: middle; 	
}

.index_trinity .block:nth-child(3n+3) {
    margin-right:0; 
}

.index_trinity .block_last { 
    margin-right:0; 
}

.index_trinity .title { 
    margin:0 0 10px 0; 
    font-weight:bold; 
    text-transform:uppercase; 
}

.index_trinity .title a {
    font-weight:bold; 
    text-transform:uppercase; 
    text-decoration:none; 
    color:#5F5F5F;
}

.index_trinity .img { 
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    margin: 0 0 20px 0;
}

.index_trinity .content_box {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
}

.index_trinity .text { 
    height: 55px; 
    overflow: hidden;
}

.index_trinity .link {
    display: inline-block;
    float: right;
    padding: 4px 15px 2px 15px;
    background: #a8bfb2;
    font-size: 14px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    text-transform: uppercase;
}

.index_trinity .link:hover { 
    color:#fff; 
    background:#474c55; 
}

.index_trinity_t1 .title { 
    float: left;
    font-size: 14px; 
}

.index_trinity_t2 .text { font-size:12px;}

/* INDEX VIDEO */
.video_box {
    display: inline-block;
    float: left;
    width: 100%;
    margin-top: 40px;
}

.video_box iframe {
    width: 100%;
    height: 500px;
}

/* INDEX TEACHER SLIDER */
.index_teachers_slider_box {
    position: relative;
    display: inline-block;
    float: left;
    width: 100%;
    margin-top: 50px;
}

.index_teachers_slider_box .main_title {
    display: none;
    float: left;
    margin: 0;
    font-size: 58px;
    line-height: 68px;
    color: #8ea99a;
    font-weight: 300;
}

.index_teachers_slider_box .button {
    position: absolute;
    top: 10px;
    right: 0;
    z-index: 1;
}

.index_teachers_slider {
    display: inline-block;
    float: left;
    width: 100%;
}

.index_teachers_slider .main_title {
    display: inline-block;
}

.index_teacher_item {
    display: -webkit-box !important;
    display: -moz-box !important;
    display: -ms-flexbox !important;
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.index_teacher_item .teacher_images {
    width: 30%;
    padding: 0;
    padding-right: 4%;
}

.index_teacher_item  .teacher_text_box {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    width: 70%;
}

.index_teacher_item .teacher_name {
    display: inline-block;
    float: left;
    width: 100%;
    margin: 50px 0;
    font-size: 32px;
    font-weight: 300;
    line-height: 42px;
    text-transform: uppercase;
}

.index_teacher_item .teacher_info {
    display: inline-block;
    width: 100%;
} 

.index_teacher_item .button-o {
    padding: 10px 25px;
}

.index_teachers_slider .slick-dots {
    top: 12px;
    bottom: auto;
    right: 120px;
    width: auto;
}

.slick-dots li:only-child {
    display: none;
}

.index_teachers_slider .slick-dots li button {
    width: 30px;
    height: 30px;
}

.index_teachers_slider .slick-dots li button:before {
    width: 30px;
    height: 30px; 
    line-height: 30px;
    font-size: 16px;
    color: #8ea99a;
    opacity: 1;
}

.index_teachers_slider .slick-dots li.slick-active button:before {
    color: #4a4e57;
    opacity: 1;
}

.index_teachers_slider .slick-prev, 
.index_teachers_slider .slick-next{
    display: none !important;
}

/* INSTAGRAM GALLERY */
.instagram_gallery_box {
    position: relative;
    display: inline-block;
    float: left;
    width: 100%;
    margin: 50px 0;
    padding: 65px 55px;
    border: 1px solid #cedad3;
}

.instagram_gallery_box .title {
    position:  absolute;
    display: inline-block;
    top: -35px;
    right: 40px;
    margin: 0;
    font-size: 58px;
    line-height: 68px;
    color: #8ea99a;
    font-weight: 300;
}

.instagram_gallery_box .title span {
    padding: 0 22px;
    background-color: #fff;
}

.instagram_gallery_box .btn_box {
    display: inline-block;
    position: absolute;
    left: 55px;
    bottom: -30px;
}

.instagram_gallery_box .button-o {
    position: relative;
    padding-left: 95px;
}

.instagram_gallery_box .button-o .icon {
    position: absolute;
    display: inline-block;
    top: 0;
    left: 0;
    width: 55px;
    height: 48px;
    padding: 2px 0;
    background-color: #8ea99a;
    border: 7px solid #8ea99a;
    text-align: center; 
}

.instagram_gallery_box .button-o .icon::after {
    position: absolute;
    display: inline-block;
    content: '';
    top: 0;
    right: -8px;
    width: 1px;
    height: 100%;
    background-color: #fff;
}



/* newslist */
.newslist .block { margin-right:10px; width:210px; }

/*.sh_trinity .block{
    width: 30%;
    margin-right: 4%;
    vertical-align: top;
}

.sh_trinity .block_last {
    margin-right: 0;
}

.sh_trinity .index_trinity .img {
        height: 140px;
}
#index_left .index_trinity .block{
        width:165px;
}*/


/* login-register page */
#login_register form,
.amnesiac_form {
    display: inline-block;
    float: left;
    width: 100%;
}

.amnesiac_form .label {
    display: inline-block;
    float: left;
    padding: 5px 25px 5px 0;
}

.amnesiac_form .input_text {
    display: inline-block;
    float: left;
    width: 30%; 
    margin-bottom: 10px;
    margin-right: 1%;
}

.amnesiac_form .btn {
    height: auto;
    padding: 5px 10px 2px 10px;
}


#login_register .title {
    display: inline-block;
    float: left;
    width: 100%;
}

#login_register .title span {
    font-family: DIN-Medium;
    font-size: 24px;
    line-height: 34px;

}

#login_register .label { 
    position: relative;
    display: inline-block;
    float: left;
    width: 25%;
    padding: 5px 25px 5px 0; 
}

#login_register .label .asterisk {
    position: absolute;
    top: 10px;
    right: 0;
    width: 20px; 
    color: #474c55; 
}

#login_register .input { 
    padding:5px 0 5px 10px; 
}

#login_register .input { 
    display: inline-block;
    float: left;
    width: 75%;
    height: 35px; 
    padding: 0 10px; 
    margin: 0; 
    border: 1px solid #a8bfb2;
    background: #fff; 
    font-size: 16px;
}


#login_register .container { 
    display: inline-block;
    float: left;
    width: 75%;
}

#login_register .select { 
    float: left; 
    width: 100px;
    height: 35px; 
    padding: 0 10px; 
    margin:0 10px 0 0; 
    border: 1px solid #a8bfb2;
    background: #fff url('../_img/i_select.png') no-repeat right center;
    font-size: 16px;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
}

#login_register .container .code {
    width: 100px;
}

#login_register .container .input {
    width: calc(100% - 110px);
}

/*#login_register .submit_line { padding:0 0 0 100px; }*/
#login_register .submit_line .btn { 
    margin:0 15px 10px 0; 
}

#login_register .submit_line .forgot_pass {
    color: #3c3c3c;
}

#login_register .submit_line .info { 
    display: inline-block;
    color:#474c55; 
}


/* profle page */
#profile_side { float:left; width:170px; }
#profile_menu { margin:0; padding:0; list-style-type:none; }
#profile_menu li { padding:0 0 12px; }
#profile_menu a { display:block; padding:3px 10px 3px 30px; line-height:14px; color:#000; text-decoration:none; }
#profile_menu a:hover { text-decoration:underline; }
#profile_menu .selected { color:#fff; background:#474c55; }

#profile_main { float:right; width:700px; }
#profile_images { padding:0 0 40px; }
#profile_images .img { display:inline-block; border:solid 3px #eef0f3; }

#profile_name { 
    padding: 10px 20px;
    margin:0 0 13px; 
    font-weight:bold; 
    color:#fff; 
    background:#474c55;
}

#profile_form .label { width:273px; padding:0 0 5px 0; font-size:13px; }
#profile_form .input { padding: 0 2px 5px 0;}
#profile_form td.input input.input { float:right; width:650px; height:25px; padding:0 5px; margin:0; font-size:13px; border:solid 1px #dbdcdd; background:#fff; }
#profile_form .file_border { float:left; width:410px; height:25px; border:solid 1px #dbdcdd; background:#fff; margin-left:8px; }
#profile_form .file_border input { display:block; width:410px; height:25px; float:left; margin:0 0 0 0; padding:0; cursor:pointer; }
#profile_form .submit_line .btn { padding:0 20px; margin:0 0 0 100px; text-transform:uppercase; }
#profile_form .container { display:block; padding:0 0 0 5px; }
#profile_form .select { float:left; height:25px; padding:0; margin:0 10px 0 0; font-size:14px; border:solid 1px #dbdcdd; background:#fff; }
#profile_form .btn_style_1{ margin-left:8px;}

#user_courses { padding:13px 0 0 0; }
#user_courses .title { 
    margin:0 0 15px; padding:0; 
    font-size:14px;
    font-weight:bold;
}
#user_courses table {  margin:0 0 25px; padding:0 0 25px; }
#user_courses th{ 
    padding-right: 20px;
    border-bottom: 1px solid #878586;
    text-align:left; 
    font-family:Arial;
}

#user_courses td {
    padding: 5px 20px 5px 0;
    border-bottom: 1px solid #878586;
    vertical-align: top;
}

.profile_img_box {
    box-sizing: border-box;
    display: inline-block;
    float: left;
    width: 300px;
    margin-bottom: 20px;
}

.profile_img {
    box-sizing: border-box;
    display: inline-block;
    float: left;
    width: 100%;
    max-width: 200px;
    max-height: 290px;
    line-height: 255px;
    margin-bottom: 10px;
    padding: 13px;
    border: 1px solid #dadada;
    text-align: center;
    overflow: hidden;
}

.profile_img img {
    max-width: 100%;
    max-height: 100%;
}

.upload_box {
    box-sizing: border-box;
    display: inline-block;
    float: left;
    width: 100%;
    padding: 20px;
    margin-bottom: 20px;
    border: 1px solid #dadada;
}

.btn_del_pic,
.btn_rotate_img {
    display: inline-block;
    float: left;
    margin-right: 10px;
    padding: 12px 15px 8px 15px;
    font-size: 16px;
    font-weight: 400;
    color: #fff;
    background-color: #f04b54;
    text-decoration: none;
}

.btn_del_pic:hover,
.btn_rotate_img:hover {
    background-color: #474c55;
}

.profile_avatar.empty_avatar .func_btn {
    display: none;
}

.profile_avatar .btn_rotate_img,
.profile_avatar .btn_del_pic {
    position: absolute;
    display: inline-block;
    top: 0;
    right: 0;
    width: 30px;
    height: 30px;
    line-height: 30px;
    margin-right: 0;
    padding: 0;
    background-color: #f04b54;
    border: none;
    font-family: Arial, sans-serif;
    font-size: 13px;
    color: #fff;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
}

.profile_avatar .btn_rotate_img {
    left: 0;
    background-color: #ff9500;
}

.profile_avatar .btn_rotate_img .fa,
.profile_avatar .btn_del_pic .fa {
    margin-top: 8px;
}

.profile_avatar .btn_rotate_img:hover {
    background-color: #f04b54;
}

.profile_avatar .btn_del_pic:hover {
    background-color: #ff9500;
}

/* change courses */
#change_courses { 
    width:100%; 
    padding:0 0 50px 0; 
}

#change_courses .label {
    position: relative;
    display: inline-block;
    float: left;
    width: 25%;
    padding: 5px 25px 5px 0;
}

#change_courses select { 
    display: inline-block;
    float: left;
    width: 75%;
    height: 35px;
    padding: 0 10px;
    margin: 0;
    border: 1px solid #a8bfb2;
    font-size: 16px;
}

#change_courses .txt1 { 
    display:inline-block; 
    padding:0 0 0 15px; 
    color:#a8bfb2; 
}

.txt1 h2,
.txt1 h3,
.info_p{
    margin: 0 0 15px 0;
    padding: 0;
    text-transform: uppercase;
    font-family: DIN-Light;
    font-size: 24px;
    line-height: 34px;
    font-weight: normal;
    color: #474c55;
    text-transform:uppercase;
}

/* PC FILTERS */
.calendar_pc_filters {
    display: inline-block;
    float: left;
    width: 100%;
    background-color: #e1e1e1;
    margin-top: 10px;
    margin-bottom: 20px;
    padding: 15px 15px;
}

.calendar_pc_filters form {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    width: 100%;
}

.calendar_pc_filters .form_lbl {
    flex-shrink: 0;
    margin-right: 5px;
    margin-top: 13px;
}

.calendar_pc_filters .button {
    height: 40px;
    padding: 4px 10px 2px 10px;
    margin-top: 5px;
    background-color:#474c55;
}

.calendar_pc_filters .button:hover {
    background: #4f5d73;
}

.simulation_select {
    position: relative;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    margin-right: 1%;
    margin-top: 5px;
    margin-bottom: 5px;
    height: 40px;
    line-height: 40px; 
    background-color: #fff;
}

.simulation_select input {
    display: none; 
}

.simulation_select .lbl {
    display: inline-block;
    width: 100%;
    padding: 0 10px;
    padding-right: 25px;
    background: #fff url('../_img/i_arrow_black.png') no-repeat right center;
    border: 1px solid #cfcfcf;
    cursor: pointer; 
}

.simulation_select .lbl:hover {
    border-color: #b1b1b1; 
}

.simulation_select .filter_qty {
    position: absolute;
    margin-left: 3px;
}

.simulation_select .all_options {
    position: absolute;
    display: inline-block;
    top: 41px;
    left: 0;
    width: 100%;
    max-height: 250px;
    line-height: 28px;
    padding: 20px 0;
    border: 1px solid #cfcfcf;
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    -o-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
    overflow: auto;
    z-index: 2; 
}

.simulation_select input:checked + .all_options {
    opacity: 1;
    visibility: visible; 
}

.simulation_select .row {
    padding: 0 20px;
    margin-bottom: 5px;
}

.simulation_select .row:last-child {
    margin-bottom: 0;
}

.simulation_select .chbox_input + .ch_box_lbl {
    display: inline-block;
    width: 100%;
    padding-left: 28px;
    background: url('../_img/ch_box_v2.png') no-repeat 0 5px;
    font-size: 16px;
    line-height: 24px;
    cursor: pointer;
}

.simulation_select .chbox_input:checked + .ch_box_lbl {
    background-image: url('../_img/ch_box_v2_checked.png');
}

.simulation_select .btn {
    float: left;
    width: 50%;
    padding: 10px;
    margin-top: 0; 
}

.simulation_select .mCSB_inside > .mCSB_container {
    margin-right: 10px; 
}

/* MOBILE FILTERS */
.btn_open_filters {
    display: none;
    float: left;
    background-color: #81848b;
}

.btn_open_filters:hover {
    background: #4f5d73;
}

.calendar_mobile_filters {
    position: fixed;
    display: none;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 350px;
    height: 100%;
    padding: 30px 20px;
    background-color: #fff;
    box-shadow: 0px 0px 10px #000;
    font-family: "DIN-REGULAR";
    font-size: 18px;
    color: #474c55;
    overflow: auto;
    z-index: 1000;
}

.mobile_filters_head {
    display: inline-block;
    float: left;
    width: 100%;
    font-family: "DIN-BOLD";
    font-size: 16px;
    color: #81848b;
    text-transform: uppercase;
}

.mobile_filters_head .title {
    font-size: 24px;
    color: #474c55;
    cursor: pointer;
}

.mobile_filters_head .title img {
    width: 14px;
    margin-right: 10px;
    margin-top: 3px;
    vertical-align: top;
}

.calendar_mobile_filters .filters_list {
    display: inline-block;
    float: left;
    width: 100%;
    margin-top: 30px;
}

.calendar_mobile_filters .accordion_item {
    display: inline-block;
    float: left;
    width: 100%;
    margin-bottom: 20px;
}

.calendar_mobile_filters .accordion_title {
    display: inline-block;
    float: left;
    width: 100%;
    padding: 15px 20px 15px 30px;
    background: #e1e1e1 url('../_img/i_arrow_down_big.png') no-repeat right center;
    text-transform: uppercase;
}

.calendar_mobile_filters .accordion_item.open .accordion_title {
    background-color: #a8bfb2;
    background-image: url('../_img/i_arrow_up_big.png');
}

.calendar_mobile_filters .accordion_content {
    display: none;
    float: left;
    width: 100%;
}

.calendar_mobile_filters .accordion_content .row {
    display: inline-block;
    float: left;
    width: 100%;
    padding: 15px 20px 15px 30px;
    border-bottom: 3px solid #a8bfb2;
}

.calendar_mobile_filters input {
    display: none;
}

.calendar_mobile_filters .chbox_input + .ch_box_lbl {
    display: inline-block;
    width: 100%;
    background: url(../_img/ch_box_big.png) no-repeat right center;
    background-size: auto 100%;
    cursor: pointer;
}

.calendar_mobile_filters .chbox_input:checked + .ch_box_lbl {
    background-image: url('../_img/ch_box_big_checked.png');
}

.calendar_mobile_filters .button {
    width: 100%;
    height: 60px;
    background-color: #81848b;
    font-size: 22px;
}

.calendar_mobile_filters .button:hover {
    background: #4f5d73;
}

/* CALNDAR */
.calendar_box {
    display: inline-block;
    float: left;
    width: 100%;
}

.calendar_legend { 
    display: inline-block;
    float: left;
    width: 100%; 
    margin-top: 10px;
}

.calendar_legend ul { float:right; margin:0; padding:0; list-style-type:none; }
.calendar_legend li { 
    float:left; 
    margin: 5px 15px 5px 0;
}

.calendar_legend li:last-child {
    margin-right: 0;
}

.calendar_legend li::before {
    display: inline-block;
    content: '';
    width: 12px;
    height: 12px;
    border-radius: 12px;
    margin-right: 15px;
}

.calendar_legend li.color_1::before { 
    background-color:#a8bfb2; 
}

.calendar_legend li.color_2::before { 
    background-color:#ffec95;
}

.calendar_legend li.color_3::before { 
    background-color:#f04b54; 
}

.calendar .class_name { margin:0; padding:0; font-weight:normal; }
.calendar .class_name span { 
    display:inline-block; 
    font-family:DIN-Medium;
    font-size: 22px; 
    line-height: 32px;
    text-transform: uppercase;
}


.calendar_table { margin:0 0 35px 0; }
.calendar_table th { font-weight:normal; font-size:17px; line-height:30px; color:#fff; background:#474c55; border-right:solid 10px #fff; }
.calendar_table th.last { border-right:0; }
.calendar_table td { position:relative; padding:5px 5px 35px 5px; color:#000; background:#a8bfb2; border-right:solid 10px #fff; }
.calendar_table td .cell_btn { position:absolute; bottom:0; left:0; width:100%; text-align:center; text-decoration:none; color:#fff; line-height:25px; background:#ccc; }
.calendar_table td .cell_btn:hover { text-decoration:underline; }
.calendar_table td .cell_btn_1 { background:#a8bfb2; }
.calendar_table td .cell_btn_2 { background:#ffec95; }
.calendar_table td .cell_btn_3 { background:#f04b54; }
.calendar_table td.last { border-right:0; }


.calendar_table2 {
    margin: 20px 0 0 0; 
    width: 100%;
}

.calendar_table2 .column { 
    float:left; 
    width: 19.2%;
    margin-right: 1%;
}
.calendar_table2 .last_column { margin-right:0; }
.calendar_table2 .weekday { padding:0; font-weight:normal; font-size:15px; line-height:23px; text-align:center; color:#fff; background:#474c55;  }

.calendar_table2 .cell { 
    position:relative; 
    height:150px; 
    margin-bottom:8px; 
    padding:5px 5px 25px 5px; 
    font-size: 14px;
    line-height: 16px; 
    color:#000;
    background:#daeaf0; 
}

.calendar_table2 .cell .overlay_link {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.calendar_table2 .cell .overlay_link:hover {
    background-color: #cce6f0;
}

.calendar_table2 .cell .inner {
    position: relative;
    display: inline-block;
    float: left;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.calendar_table2 .cell .inner a {
    pointer-events: auto;
}

.calendar_table2 .cell strong { font-weight:normal; }
.calendar_table2 .cell_btn { 
    position:absolute; 
    bottom:0; 
    left:0; 
    width:100%; 
    padding: 5px;
    text-align:center; 
    text-decoration:none; 
    color:#3c3c3c; 
    line-height:15px; 
    font-size:13px; 
    background:#ffe46b; 
}

.calendar_table2 .cell_btn:hover { text-decoration:underline; }
.calendar_table2 .cell_btn_1 { background:#a8bfb2; color: #fff;}
.calendar_table2 .cell_btn_2 { background:#ffec95; color: #fff;}
.calendar_table2 .cell_btn_3 { background:#f04b54; color: #fff;}

.calendar { margin:0 auto; /*width:712px;*/ padding:0 0 10px 0; }

.calendar .reg_close {
    display: inline-block;
}

.calendar .reg_close:hover {
    text-decoration: none;
}

/* course pages */
#courses_side { float:left; width:170px; }
#courses_main { float:right; width:600px; padding:0 40px 0 0; }
.courses_side_menu, .courses_side_menu ul { margin: 0; padding:0; list-style-type:none; }
.courses_side_menu { margin:10px 0 0 0; padding:0; width:170px; float:right; list-style-type:none; }

.courses_side_menu ul { background:#e9e9e9; }
.courses_side_menu a { padding:6px 10px 6px 25px; line-height:12px; text-decoration:none; text-transform: uppercase; font-size:12px; }
.courses_side_menu li { padding:0 0 5px; }
.courses_side_menu a:hover { text-decoration:underline; }
.courses_side_menu li.underlined { margin-bottom:5px; border-bottom:solid 1px #5F5F5F; }
.courses_side_menu li.selected a { padding:5px 10px 5px 25px; color:#fff; background:#474c55; }
.courses_side_menu li.selected ul { display:block; }
.courses_side_menu li.selected ul ul { display:none; }
.courses_side_menu li.selected ul a {
    padding:6px 10px 6px 25px;
    color:#5f5f5f;
    background:none;
}
.courses_side_menu li.selected li { padding-bottom:0; }
.courses_side_menu li.selected a.selected { color:#474c55 }
.courses_side_menu a { display:block; color:#5F5F5F; }
.courses_side_menu .list_title { padding:10px 10px 10px 25px; display:block; color:#474c55; background:#e9e9e9; }
.courses_side_menu li.selected li.list_title { padding-bottom:10px; }
.courses_side_menu .list_style_1 .selected { background:#d1d2d4; }

.courses_list { margin:0 0 15px 0; padding:0; height:50px; list-style-type:none; overflow:hidden; }
.courses_list li { float:left; padding:0 5px 6px 0; }
.courses_list li a { display:block; width:176px; text-align:center; text-decoration:none; font-size:12px; line-height:20px; text-decoration:nonoe; text-transform:uppercase; color:#fff; background:#a8bfb2; }
.courses_list li a:hover { text-decoration:none; }
.courses_list li .selected { background:#474c55; }
.courses_list li.backto_dancestyle a{width:160px;}
.courses_side_menu li.selected .time_plan_sub { font-size:12px; padding-bottom:10px; }
.courses_side_menu li.selected ul.time_plan_sub a { color:#5f5f5f; padding:8px 0; }
.courses_side_menu li.selected ul .selected_time_plan ul { display:block; }
.courses_side_menu li.selected ul .selected_time_plan a { color:#474c55; }
.courses_side_menu li.selected ul .selected_time_plan ul a { color:#5f5f5f; }
.courses_side_menu li.selected ul .selected_time_plan ul .selected_sub { color:#474c55; }


/* side menu */
.side_menu, .side_menu ul { margin:0; padding:0; list-style-type:none; }
.side_menu ul { display:none; padding-bottom:5px; }
.gallery_side_menu ul { display:inline-block; padding-bottom:5px; }
.side_menu .menu_title { 
    display:block; 
    padding:8px 10px 5px 20px; 
    font-size: 13px;
    line-height: 20px; 
    text-transform:uppercase; 
    cursor:pointer; 
}

.side_menu a { 
    padding: 8px 10px 5px 20px; 
    text-decoration:none; 
    font-size: 13px; 
    line-height: 20px; 
    text-transform:uppercase; 
}

.side_menu li { }
.side_menu a:hover { text-decoration:underline; }
.side_menu li.underlined { margin-bottom:5px; border-bottom:solid 1px #5F5F5F; }
.side_menu .selected > ul { display:block; background:#e1e1e1; }
.side_menu .selected .menu_title { background:#474c55; color:#fff; }
.side_menu .selected .menu_title_sub { 
    display:block; 
    font-size:13px; 
    line-height:14px; 
    text-transform:uppercase; 
    cursor:pointer;
}

.side_menu ul li.selected .menu_title_sub {
    background: #474c55;
    color: #fff;
}

.side_menu span.menu_title_sub { padding:7px 10px 7px 20px; }
.side_menu .selected_time_plan .menu_title_sub { color:#474c55; }
.side_menu .menu_title:hover, .side_menu .menu_title_sub:hover { text-decoration:underline; }
.side_menu li.selected_sub { display:block; padding:7px 0 0 0; }
.side_menu li.selected_sub a { color:#474c55; background:none; }
/* .side_menu li.selected li { padding-bottom:0; } */
.side_menu li.selected a.selected { color:#474c55; }
.side_menu a { display:block; /*color:#5F5F5F;*/ color: #474c55; }
.side_menu .list_title { padding:10px 10px 10px 25px; display:block; color:#474c55; }
.side_menu li.selected li.list_title { padding-bottom:10px; }
.side_menu .list_style_1 .selected { background:#d1d2d4; }
.side_menu .selected .selected li a { padding-left:30px; }


.side_menu li.selected .time_plan_sub { font-size:12px; }
.side_menu li.selected a.selected { color:#474c55; }
.time_plan_sub li { line-height:17px; }
.time_plan_sub li a { padding-left:20px; }
.time_plan_sub li span { padding:0 10px 0 20px; }
.time_plan_sub label { padding:2px 2px 10px; display:block; line-height:17px; cursor:pointer; }
.time_plan_sub .title { padding:5px 10px 5px 20px; }
.time_plan_sub label input { float:right; }
.time_plan_sub .check_all { font-weight:bold; }
.time_plan_sub .submit { padding:0; height:25px; font-size:0; }
.time_plan_sub .submit .btn { display:block; width:170px; margin:0; padding:0; font-weight:bold; height:25px; line-height:15px; }
.time_plan_sub ul { display:none; margin:0; padding:0; list-style-type:none; }
.time_plan_sub ul li { font-size:12px; text-transform:none; }
.side_menu ul ul li a { font-size:14px; text-transform:none; }
.side_menu li.selected ul .selected_time_plan ul { display:block; }
.side_menu li.selected ul .selected_time_plan a { color:#474c55; }
.side_menu li.selected ul .selected_time_plan ul a { color:#5f5f5f; }
.side_menu li.selected ul .selected  ul .selected_sub { color:#474c55; }
.selected > .menu_title_sub { color:#474c55; }
.time_plan_sub ul li a { padding-left:30px; }

.side_menu .section_title { text-transform:uppercase; }


/* cart table */
.cart_table { width:100%; margin:0 0 10px 0; }
.cart_table th { 
    padding: 10px 20px;
    background: #d1d2d4;
    border: 1px solid #d1d2d4;
    text-align: center;
}

.cart_table th:first-child {
    text-align: left;
}

.cart_table td {
    padding: 10px 20px;
    border-top: 1px solid #d1d2d4;
    border-bottom: 1px solid #d1d2d4;
    text-align: center;
}

.cart_table .middle .left {
    border-left: 1px solid #d1d2d4;
    text-align: left;
}

.cart_table .middle .right {
    border-right: 1px solid #d1d2d4; 
}

.empty_cart {
    text-align: left;
}

.cart_table .middle .right a { 
    font-family: 'DIN-Medium';
    color: #ff0000; 
    text-decoration:none; 
}

.cart_table .middle .right a:hover {
    color: #3c3c3c;
}

.cart_agree_box {
    display: inline-block;
    float: left;
    margin-top: 10px;
}




/* birthday calendar */
#birthday_calendar_holder .title_2 { 
    display: inline-block;
    float: left;
    margin-top: 0;
    text-align: left;

}

.birthday_calendar_legend { 
    display: inline-block;
    float:right; 
    margin:0; 
    padding:0;
    list-style-type:none; 
}

.birthday_calendar_legend li { 
    float:left; 
    margin-bottom: 10px;
    padding:0 15px 0 4px; 
    line-height:14px; 
    border-left:solid #a8bfb2 14px; 
}

.birthday_calendar_legend .color_2 { border-color:#474c55; }

.birtday_calendar { float:left; margin:0 0 20px 0; }
.birtday_calendar_last{ float:right; }
.birtday_calendar th { text-align:center; font-size:23px; color:#474c55; font-weight:normal; text-align:center; }
.birtday_calendar td { width:28px; height:28px; text-align:center; color:#939598; font-size:14px; background:#d1d2d4; border:solid 2px #fff; }
.birtday_calendar .day { width:28px; height:28px; }
.birtday_calendar .week_labels td { color:#000; background:#fff; }
.birtday_calendar .week { color:#2a2627; background:#d1d2d4; }
.birtday_calendar .color_1 { background:#a8bfb2; color:#000; }
.birtday_calendar .color_2 { background:#474c55; color:#000; }


/* birthday calendar #2 */
#birthday_calendar_holder {
    display: inline-block;
    width: 100%;
    margin-top: 20px;
}

.birthday_calendar_2 { 
    display: inline-block; 
    width: 275px;
    margin: 0 20px;
    padding:0 0 30px; 
}

.birthday_calendar_2 .month { 
    height:20px; 
    text-align:center; 
    font-size:16px; 
    line-height:16px; 
    color:#ed0080; 
}

.birthday_calendar_2 .weekday { 
    float:left; 
    width:36px;
    margin:0 3px 3px 0; 
    line-height:33px; 
    text-align:center; 
}

.birthday_calendar_2 .week { 
    float:left; 
    width:36px;
    margin:0 3px 3px 0; 
    line-height:33px; 
    text-align:center; 
    background:#d1d3d4; 
}

.birthday_calendar_2 .day { 
    float:left; 
    width:36px;
    margin:0 3px 3px 0; 
    line-height:33px; 
    text-align:center; 
    color:#939598;
    background:#d1d3d4;
}

.birthday_calendar_2 .day_style_1 { background:#a8bfb2; color:#000; }
.birthday_calendar_2 .day_style_2 { background:#474c55; color:#000; }
.birthday_calendar_2 .day_style_1 a, .birthday_calendar_2 .day_style_2  a { display:block; height:100%; color:#000; }


/* buy course */
.buy_course_table { 
    float:left;
    margin: 0; 
    width: 48%;
    color:#000; 
}

.buy_course_table_right { float:right; }
.buy_course_table th { 
    padding: 5px 20px; 
    color:#fff; 
    text-align:left; 
    background:#474c55; 
    border-bottom:solid 3px #fff; 
}

.buy_course_table .labels td { 
    padding: 5px 20px; 
    background:#d1d2d4; 
}

.buy_course_table .separator td { height:9px; font-size:0; line-height:1; }
.buy_course_table .main td { 
    padding: 0 0 0 20px; 
    border-top:solid 1px #d1d2d4;
    border-bottom:solid 1px #d1d2d4;
}

.buy_course_table .main .l { border-left:solid 1px #d1d2d4; }
.buy_course_table .main .r  { border-right:solid 1px #d1d2d4; }
.buy_course_table .main .r .btn { 
    float: right; 
    width: 70px; 
    padding: 5px 10px;
    text-align: center; 
}
.buy_course_table .main .r .btn_disabled { background:#474c55; border: solid 1px #474c55; }

.week_navigation { 
    display: inline-block;
    float: left;
    width: 100%;
    margin:0 auto; 
    padding:20px 0 0 0; 
    list-style-type:none;  
}
.week_navigation li { float:left; margin:0;  text-align:center; }
.week_navigation li.next { float:right;}
.week_navigation li.right { float:right; }
.week_navigation li a { text-decoration:none; color:#000; }
.week_navigation li a:hover { color:#a8bfb2; }




/* birthdays buy form */
#birthdays_buy .title { 
    padding:0 0 0 30px; 
    text-align:left; 
    line-height:30px; 
    font-weight:normal; 
    color:#fff; 
    background:#474c55; 
}

#birthdays_buy .label { 
    position: relative;
    display: inline-block;
    float: left;
    width: 25%;
    padding: 5px 25px 5px 0;
}

#birthdays_buy .asterisk { 
    position: absolute;
    top: 10px;
    right: 0;
    width: 20px;
    color: #474c55;
}

#birthdays_buy .input { 
    display: inline-block;
    float: left;
    width: 75%;
    height: 35px;
    padding: 0 10px;
    margin: 0;
    border: 1px solid #a8bfb2;
    background: #fff;
    font-size: 16px;
}

#birthdays_buy select.input {
    background: #fff url(../_img/i_select.png) no-repeat right center;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
}

#birthdays_buy .info_row {
    display: inline-block;
    float: left;
    width: 75%;
}


#birthdays_buy .submit_line { padding:0 0 0 100px; }
#birthdays_buy .submit_line .btn { padding:0 20px; margin:0 15px 0 0; }
#birthdays_buy .submit_line .info { color:#474c55; }

#birthdays_buy .error_label { color:red; }
#birthdays_buy .error_input, #birthdays_buy td.input input.error_input, #birthdays_buy td.select select.error_input { border:solid red 1px; }

#birthdays_buy #show_popup {
    float: none;
    margin-left: 20px;
    text-decoration: underline;
}

#birthdays_buy #show_popup:hover {
    text-decoration: none;
}

#birthdays_buy .btn {
    margin: 0 15px 10px 0;
}

#birthdays_buy .info {
    display: inline-block;
    color: #474c55;
}


/* teachers list */
.teachers_list { 
    width: 100%;
    margin:0;
    padding:0 0 30px; 
    list-style-type:none; 
    overflow:hidden;
}

.teachers_list li { float:left; width:99px; height:138px; margin-bottom:2px; }
.teachers_list li a { 
    display: inherit;
    width:97px; 
    height:138px; 
    line-height: 138px;
    background-color: #e9e9e9;
    background-position: center center; 
    background-repeat:no-repeat; 
    font-size: 48px;
    text-align: center;
}

.teachers_list li a:hover { 
    /*width:91px; 
     height:132px; 
     width:93px\9;
     height:134px\9; */
    border:solid 3px #474c55; 
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    -moz-transform: scale(0.9);
    -o-transform: scale(0.9);
    transform: scale(0.9);
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    -o-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;

}

.teachers_list li img { display:none; }
.teachers_list li.last_in_line { width:97px; }
.teachers_list li.new_line { float:none; clear:both; font-size:0; height:3px; line-height:1px; }


/* index gallery */
.index_gallery { padding:10px 0 0 0; }
.index_gallery .box_title { margin:0 0 35px; padding:0; font-size:17px; line-height:50px; font-weight:normal; text-align:center; color:#fff; background:#474c55; text-transform:uppercase; }
.index_gallery .thumb { float:left; width:75px; height:75px; margin:0 12px 12px 0; overflow:hidden; border:solid 5px #ccc; }
.index_gallery .thumb:hover { border-color:#474c55; }
.index_gallery .last { margin-right:0; }
.index_gallery .goto_gallery { display:none; text-align:center; }


/* images list */
.images_1 a { float:left; height:140px; width:170px; margin: 0 2px 0 0; background-repeat:no-repeat; background-position: center center; }
.images_1 img { display:none; }
.images_1 .last { margin-right:0; }


/* teacher images */
.teacher_images { 
    float:left; 
    width: 22%;
    padding:0 30px 45px 0; 
}

.teacher_profile_image { float:left; }
.teacher_additional_image { float:right; }

/* teacher text */
.teacher_text { 
    float:left; 
    width: 78%;
}

/* gallery page */
.gal_thumb { margin:0 27px 27px 0; float:left; }
.last_gal_thumb { margin-right:0; }




/* cart payments */
.cart_payments { margin:0; padding:20px 0 20px 0; list-style:none; }
.cart_payments .title { margin:0 0 5px; padding:0; list-style:none; font-weight:normal; }
.cart_payments .payment { float:left; width:145px; height:60px; padding:7px 5px 5px; text-align:center; cursor:pointer; border:solid 1px #fff; }
.cart_payments .payment:hover { border:solid 1px #ccc; }
.cart_payments .img { display:block; height:40px; text-align:center; }
.cart_payments input { margin:0 2px 0 0; }


/* user info form */
.user_info_form td { text-align:left; padding:3px 0; vertical-align:top; }
.user_info_form .title { padding:0 0 0 30px; text-align:left; line-height:30px; font-weight:normal; color:#fff; background:#474c55; }
.user_info_form .label { padding:5px 0; width:195px; }
.user_info_form .label span { display:block; width:170px; }
.user_info_form .asterisk { color:#474c55; width:15px; }
.user_info_form td.input input.input { float:left; width:400px; height:22px; padding:0 5px; margin:0; border:solid 1px #dbdcdd; background:#fff; }
.user_info_form td.select select { float:left; width:371px; padding:2px; margin:0; border:solid 1px #dbdcdd; background:#fff; }
.user_info_form .submit_line { padding:20px 0 0 0; }
.user_info_form .container { display:block; float:right; width:420px; }
.user_info_form .select { float:left; height:22px; padding:0; margin:0 10px 0 0; font-size:14px; border:solid 1px #dbdcdd; background:#fff; }

/* info form */
.info_form_box .title {
    display: inline-block;
    float: left;
    width: 100%;
    font-family: DIN-Medium;
    font-size: 24px;
    line-height: 34px;
}


.info_form_box {
    display: inline-block;
    float: left;
    width: 100%;
}

.info_form_box form {
    display: inline-block;
    float: left;
    width: 100%; 
}

.info_form_box .label {
    position: relative;
    display: inline-block;
    float: left;
    width: 25%;
    padding: 5px 25px 5px 0;
}

.info_form_box .input_text { 
    display: inline-block;
    float: left;
    width: 75%;
}

.info_form_box textarea {
    height:100px;
}


/* contact form */
.input_row {
    display: inline-block;
    float: left;
    width: 100%;
    margin-bottom: 20px;
}

.contact_form .title { 
    display: inline-block;
    float: left;
    width: 100%;
    font-family: DIN-Medium;
    font-size: 24px;
    line-height: 34px;
}

.contact_form .label {
    position: relative;
    display: inline-block;
    float: left;
    width: 25%;
    padding: 5px 25px 5px 0;
}

.contact_form .input { 
    display: inline-block;
    float: left;
    width: 75%;
    height: 35px;
    padding: 0 10px;
    margin: 0;
    border: 1px solid #a8bfb2;
    background: #fff;
    font-size: 16px;; 
}

.contact_form textarea.input { 
    height:100px;
}

.contact_form select { float:left; width:371px; padding:2px; margin:0; border:solid 1px #dbdcdd; background:#fff; }
.contact_form .submit_line { 
    padding: 10px 0 0 0; 
}

.contact_form_success_msg_1 { padding:5px 10px; margin:10px 0; color:#20711c; background:#cdeacc; border:solid 1px #77d072; }

.captcha,
.submit_line {
    display: inline-block;
}

/* form errors */
td.error,
label.error { color:red; }

input.error,
#profile_form td.input input.error,
#profile_form select.error,
#login_register td.input input.error,
#login_register td select.error,
.user_info_form td select.error { border:solid red 1px; }

.teachersMenu .t_sel a { color:#fff; background:#474c55; }



/* shterev new code */
.main_right{
    width: 100%;
}

.right_login { padding:0 0 0 0; }


.user_profile_table {

}

.side_menu{
    display: inline-block;
    margin:  0 auto;
    padding: 0;
    width: 100%;
    list-style-type: none;
    background-color: #e1e1e1;
    text-align: left;
}

.login_side_menu{
    margin:0;
}

#logo {
    display:block;
    position:relative;
    text-align: right;
}

.courses_list{
    width: 959px;
}
.courses_list li a{
    width: 176px;
}

#sh_gallery{
    margin:0;
    padding:0;
    overflow:hidden;
    list-style-type:none;
}

#sh_gallery li{
    margin:0;
    padding:0 6px 6px 0;
    float:left;
}

#sh_gallery a{
    display:block;
    width:170px;
    height:140px;
    /* border: solid 1px #000; */
    background: no-repeat center center;

}

#sh_gallery a img{
    display:none;
}


/* Gallery */

.gallery { margin:0; padding:0; list-style:none; }

.gallery .cell { 
    display: inline-block;
    width: 18%; 
    margin-right: 2%;
    vertical-align: top;
}

.gallery .cell:nth-child(5n+5) {
    margin-right: 0;
}

.gallery .link { display:block; text-decoration:none; }
.gallery .img { display:block; overflow:hidden; height:124px; text-align:center; background-repeat:no-repeat; background-position:center center; }
.gallery .catimg { height:auto; text-align:center; }
.gallery .inner { display:block; }

.gallery_item img {
    max-width: none;
}

.gallery .clear { clear:both; float:none; font-size:0px; line-height:1px; width:100%; }

#gallery_page .cell, #rooms_page .cell { 
    margin-bottom:20px; 
}

#gallery_page .desc, #rooms_page .desc { padding-top:5px; }

#gallery_page .title, #rooms_page .title { display:block; padding:0 2px; margin-bottom:5px; line-height:14px; height:28px; font-size:13px; overflow:hidden; color:#5F5F5F; text-decoration:none; font-weight:bold; }


#info_main_image{
    display:block;
    margin:0 0 25px 0;
}

.contact_left_side h2{ color:#474c55; }

.contact_left_side{
    float:left;
    width: 65%;
    padding:0 20px 20px 0;
}
.contact_right_side{
    float:left;
    width: 35%;
    text-align:justify;
    padding:0 0 20px 0;
}

#show_popup{
    display: inline-block;
    float: left;
    margin-right: 20px;
    margin-bottom: 10px;
    color:#474c55;
    cursor:pointer;
}

#show_popup:hover{
    text-decoration:underline;
}



#overlay_info{
    position:absolute; left:0; top:0; z-index:5;
    width: 100%!important;
    height: 100%!important;
    display:none;
    background:#000;
    opacity:0.8;
    filter:alpha(opacity=80);
}
#popup_info{
    position:fixed; left:50%; top:50%; z-index:10;
    margin:-300px 0 0 -250px;
    padding:10px;
    width:500px;
    min-height:400px;
    display:none;
    background:#fff;
    border-radius:5px;
    border: solid 2px #474c55;
}
#popup_info.cart {max-height:600px; overflow-y: scroll;}
#popup_info.cart .close_hold {
    position: fixed;
    display: inline-block;
    width: inherit;
    height: 20px;

}
#popup_info.cart #close_popup {
    position: relative; 
    right: 35px;
    background-color: #fff;
}
#popup_info > div{clear:both;}
#popup_info #close_popup{
    display:block;
    width:20px;
    height:20px;
    float:right;
    cursor:pointer;
    font: bold 11px/21px Arial;
    text-align:center;
    border-radius: 4px;
    border: solid 1px #000;
    line-height: 20px;
}
#popup_info #close_popup:hover{
    border-color:#474c55;
    color:#474c55;
}

.birthdaystyles_list .block { 
    width: 30%;
    margin-right: 4%;
    vertical-align: top;
}

.birthdaystyles_list .block:nth-child(3n+3) {
    margin-right: 0;
}

#googlemaps {
    display: block;
    float: left;
    width: 100%;
    height: 400px;
    margin:0 0 20px 0;
    padding:2px;
    border: solid 1px #474c55;
}

#googlemaps iframe {
    display: block;
    float: left;
    width: 100%;
    height: 100%;
}

#courses_flash{
    margin:0 0 20px 0;
    width:892px;
    height:310px;
}

a.green_button{
    margin-top:20px;
    display: block;
    float: left;
    padding: 5px 10px;
    color:#fff;
    text-decoration: none;
    background: #a8bfb2;
}

a.green_button:hover{
    background: #474c55;
}

#profile_form  tr.grey td{
    padding: 5px 3px;
    background: #ECECEC;
}
#profile_form  tr.grey input.input{
    background: #fcfbfb;

}

strong.col_pink{
    color:#474c55;
}
.style_menu li a{
    padding: 0px 20px;
    width: auto !important;
    word-wrap:none !important;
}

.flexible_menu{
    margin-bottom:20px;
    width:100%;
    border-collapse:collapse;
}
.flexible_menu td{
    width:15%;
}

.flexible_menu a{
    display: block;
    text-align: center;
    text-decoration: none;
    font-size: 12px;
    line-height: 20px;
    text-decoration: nonoe;
    text-transform: uppercase;
    color: white;
    background: #a8bfb2;
}
.flexible_menu a:hover{
    background: #474c55;
}

.flexible_menu a.selected{
    background: #474c55;
    cursor:default;
}
.prod_image_thumb{
    display:block;
    margin:0 5px 5px 0;
    width:180px;
    height:180px;
    float:left;
    overflow:hidden;
    background: no-repeat center center;
    border: solid 1px #474c55;
}
.prod_image_thumb img{display:none;}


/* Shop link */
.shop_link  { display:inline-block; float:right; width:170px; margin-top:10px; border-top:solid 1px #ccc; }
.shop_link  a { display:block; margin:10px 0 0 18px; color:#5f5f5f; text-transform:uppercase; text-decoration:none; font-size:12px; }
.shop_link  a:hover { text-decoration:underline; }

.birthdaycalendar_left {
    float:left; 
    width: 40%;
    padding:0 30px 20px 0; 
}

.birthdaycalendar_left .big_image { 
    margin-bottom:20px; 
}

.birthdaycalendar_right { float:left; 
                          width: 60%;
}

.birthdaycalendar_full { 
    padding:20px 0 0 0; 
}

/* Info page */
.infopage_images { 
    float: left; 
    padding: 0 30px 45px 0; 
    width: 25%;
}

.infopage_text { 
    float: left; 
    width: 75%;
}


/* Accordeon 1 */
.accordeon_title { 
    padding: 10px 10px 7px 10px;
    font-size: 14px;
    line-height: 24px;
    cursor: pointer; 
}

.accordeon_title::after {
    display: inline-block;
    content: '';
    float: right;
    width: 20px;
    height: 16px;
    margin-top: 4px;
    background: url('../_img/i_arrow_down.png') no-repeat center center;
    background-size: 100% auto;
}

.accordeon_title:hover { 
    background :#4fa038; 
}

.accordeon_title span { 
    display:inline-block; 
    /*padding-right:21px; 
    background:url('../_img/arrow-02.png') right center no-repeat; */
}

/*.accordeon_title_selected span { 
    background:url('../_img/arrow-02a.png') right center no-repeat; 
}*/

.always_visible {
    display: inline-block !important;
    float: left;
    width: 100%;
}

.accordeon_content_hide { display:none; }

.calendar_select_dropdown label { 
    display: inline-block;
    float: left;
    padding: 5px 25px 5px 0;
}

.calendar_select_dropdown select {
    font-size: 16px; 
}



/* Info page */

.info_left { float:left; }
.info_right { float:right; }

/* News list v2 */
.newslist_v2 .news { margin:0 0 10px; }
.newslist_v2 .title { margin:0 0 10px; padding:0; text-transform:uppercase; font-size:15px; color:#5f5f5f; }
.newslist_v2 .title a { text-transform:uppercase; font-size:15px; color:#5f5f5f; text-decoration:none; }
.newslist_v2 .title small { font-size:12px; }
.newslist_v2 .img { float:left; margin:0 10px 5px 0; }
.newslist_v2 .img img { border:solid 2px #fff; }
.newslist_v2 .img:hover img { border:solid 2px #ccc; }

.ui-dialog {
    padding: 20px;
    border-radius: 0;
    background-color: #474c55;
    color: #fff;

}
/*.ui-dialog .close_btn_container { position:absolute; left:0; bottom:0; height:35px; padding:10px 0 0; width:100%; }
.ui-dialog .close_btn {  display:block; width:60px; margin:0 auto; text-align:center; }
*/
.ui-dialog .ui-button {
    border-radius:0;
    outline:none;
    border:none;
    background:#a8bfb2;
    height:25px;
    font-size:13px;
    padding: 0 10px;;
    line-height:25px;
    color:#fff;
}
.ui-dialog .ui-button:hover {
    background:#e1e1e1;
    color: #5F5F5F;
}
.ui-dialog-titlebar { display:none; }
.ui-widget-overlay {
    background:#fff !important;
    opacity:0.6 !important;
    filter: Alpha(Opacity=60)!important;
}

/* PRODUCT PAGE */
.prod_img {
    display: inline-block;
    float: left;
    width: 40%;
    padding: 0 30px 20px 0;
}

.prod_img a {
    display: inline-block;
}

.prod_img img {
    max-width: 100%;
    max-height: 100%;
}

.prod_info {
    display: inline-block;
    float: left;
    width: 60%;
}

.prod_info .input_text {
    width: 120px;
    height: 45px;
    margin: 0 5px 10px 5px;
    vertical-align: top;
}

.btn_sub {
    display: inline-block;
    padding: 15px 20px 10px 20px;
    border: none;
    background-color: #a8bfb2;
    font-family: 'DIN-Medium';
    font-size: 15px;
    line-height: 20px;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
}

.btn_sub:hover {
    background-color: #474c55;
}

/* CHRISTMAS MODUL */
.mtop20 {
    margin-top: 20px;
}

.mtop40 {
    margin-top: 40px;
}

.christmas_modul .inner_title {
    display: inline-block;
    float: left;
    width: 100%;
    margin: 0;
    font-size: 22px;
    font-weight: 700;
    line-height: 30px;
}

.christmas_modul .inner_text {
    display: inline-block;
    float: left;
    width: 100%;
    margin: 10px 0 20px 0;
}

.christmas_modul .tbl_holder {
    display: inline-block;
    float: left;
    width: 100%;
    margin-top: 20px;
}

.christmas_modul .tbl_attend,
.tbl_box .tbl_attend {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

.christmas_modul .tbl_attend:last-child {
    margin-bottom: 0 !important;
}

.christmas_modul .tbl_attend th,
.christmas_modul .tbl_attend td,
.tbl_box .tbl_attend th,
.tbl_box  .tbl_attend td  {
    padding: 10px 15px;
    border: 1px solid #d0d0d0;
    text-align: center;
}

.christmas_modul .tbl_attend th,
.tbl_box .tbl_attend th {
    background-color: #f6f6f6;
    font-weight: 700;
}

.christmas_modul .short_cell {
    width: 130px;
}

.christmas_modul .short_cell span {
    display: inline-block;
    width: 130px;
}

.christmas_modul .ch_box_lbl {
    display: inline-block;
    float: left;
    width: 100%;
    cursor: pointer;
}

.christmas_modul .ch_box {
    display: none;
}

.christmas_modul .sqr {
    display: inline-block;
    width: 20px !important;
    height: 20px;
    margin-right: 5px;
    background: url(../_img/ch_box.png) no-repeat center left;
    vertical-align: middle;
    transition: all 0.15s ease-out;
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    -o-transition: all 0.15s ease-out;
}

.christmas_modul .tbl_attend .sqr {
    margin-right: 0;
}

.ch_box:checked + .sqr {
    background: url(../_img/ch_box_checked.png) no-repeat center left;
}

.christmas_modul .input_text {
    box-sizing: border-box;
    display: inline-block;
    padding: 0 15px;
    border: 1px solid #dbdcdd;
    background-color: #fff;
    font-size: 14px;
    transition: all 0.15s ease-out;
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    -o-transition: all 0.15s ease-out;
}

.christmas_modul textarea.input_text {
    width: 70%;
    height: 150px;
    resize: none;
}

.input_text[disabled] {
    background-color: #eee;
}

.christmas_modul .btn_sub {
    display: inline-block;
    min-width: 150px;
    margin-top: 20px;
    margin-right: 20px;
    padding: 18px 20px 12px 20px;
    background-color: #474c55;
    border: none;
    font-family: DIN-Light, sans-serif;
    font-size: 14px;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.15s ease-out;
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    -o-transition: all 0.15s ease-out;
}

.christmas_modul .btn_sub:hover {
    background-color: #5eba81;
}

.christmas_modul .btn_no_precense {
    display: none;
}

.christmas_modul .btn_no_precense.active {
    display: inline-block;
}

.christmas_modul .lbl_approved.hide,
.christmas_modul .send_pameldingen.hide {
    display: none;
}

/* SMALL POPUP*/
.small_popup {
    position: fixed;
    display: none;
    top: 50%;
    left: 50%;
    width: 600px;
    height: 110px;
    padding: 20px;
    background-color: #474c55;
    font-size: 16px;
    line-height: 26px;
    color: #fff;
    text-align: center;
    transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    overflow: auto;
    z-index: 1006;
}

.small_popup.active {
    display: inline-block;
}

.small_popup .btn {
    display: inline-block;
    padding: 10px 25px 5px 25px;
    margin-top: 20px;
    text-align: center;
    text-transform: uppercase;
    vertical-align: middle;
}

.small_popup .btn:hover {
    background-color: #e1e1e1;
    color: #5F5F5F;
}

.small_popup.tleft {
    text-align: left;
}

.footer_sec {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;;
    flex-direction: row;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    border-top: 6px solid #a9c0b2;
    position: relative;
    padding: 54px 50px;
    margin-top: 40px;

}

.footer_sec:before {
    content: '';
    position: absolute;
    top: -6px;
    left: 0;
    height: 6px;
    width: 262px;
    background: #474c55;
}

.fcol {
    display: inline-block;
    width: 25%;
    max-width: 230px;
    margin-right: 40px;
    vertical-align: top;
}

.fcol:last-child {
    margin-right: 0;
    float: right;
    width: auto;
}

.fcol h4 {
    margin: 0;
    margin-bottom: 20px;
    font-size: 15px;
    line-height: 24px;
    text-transform: uppercase;
}

.fmenu {
    list-style: none;
    margin: 0;
    padding: 0;
    padding-top: 25px;
}

.fmenu a {
    display: inline-block;
    margin-bottom: 2px;
    color: #474c55;
    text-decoration: none;
}

.fmenu a:hover {
    text-decoration: underline;
}

.fsocs {
    margin-bottom: 15px;
}

.fsocs a {
    display: inline-block;
    width: 40px;
    height: 40px;
    margin-right: 3px;
    transition: all 0.3s ease;
}

.fsocs a.fb { background-image: url(../_img/sc_fb.png); }
.fsocs a.inst { background-image: url(../_img/sc_inst.png); }
.fsocs a.youtube { background-image: url(../_img/sc_yt.png); }
.fsocs a.mail { background-image: url(../_img/sc_mail.png); }

.fsocs a:hover {
    transform: scale(0.9);
}

.copyright {
    display: inline-block;
    width: 100%;
    background: #a9c0b2;
    color: #fff;
    text-align: center;
    padding: 24px;
}

#profile_form * {
    box-sizing: border-box;
}

.profile_welcome {
    margin: 0;
    margin-bottom: 30px;
    /*font-size: 20px;
    font-weight: 300;
    line-height: 24px;*/
    font-size: 13px;
    font-weight: 600;
    color: #474c55;
    text-transform: uppercase;
}

.profile_semesters {
    float: left;
    width: 100%;
    margin-top: 30px;
}

.profile_semesters .w50 {
    width: 48%;
    float: left;
}

.profile_semesters .w50:nth-child(2n+2) {
    float: right;
}

.profile_semesters h4 {
    border-bottom: 4px solid #474c55;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 600;
    color: #474c55;
    padding: 14px 0;
    margin: 0;
    margin-bottom: 0px;
}

.profile_semester_item {
    float: left;
    width: 100%;
    padding: 20px 0;
    border-bottom: 1px solid #ccc;
    color: #474c55;
}

.profile_semester_item .btns_box {
    display: inline-block;
    margin-top: 5px;
}

.profile_semester_item .btn {
    height: auto;
    margin-right: 10px;
    margin-bottom: 5px;
    padding: 5px 10px; 
    font-family: Arial, sans-serif;
    font-size: 12px;
    color: #474c55;
    font-weight: 400;
    background-color: #a9c0b2;
    border: none !important;
    cursor: pointer;
}

.profile_semester_item .btn:last-child {
    margin-right: 0;
}

.profile_semester_item .btn:hover {
    background-color: #c2dacb;
}

/* PROFILE POPUP*/
.popup_box {
    position: fixed;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.3);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 1000;
    overflow-y: auto;
}

.popup_box.active {
    opacity: 1;
    visibility: visible;
}

.popup {
    position: relative;
    display: inline-block;
    width: 600px;
    padding: 20px;
    background-color: #474c55;
    font-size: 16px;
    line-height: 26px;
    color: #fff;
    text-align: center;
    overflow: auto;
    z-index: 1006;        
}

.popup .btn_close_popup {
    position: absolute;
    display: inline-block;
    top: 0;
    right: 0;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background-color: #f04b54;
    cursor: pointer;
}

.popup .btn_close_popup .fa {
    margin-top: 12px;
}

.popup .btn_close_popup:hover {
    background-color: #ff9500;
}

.popup_content {
    display: inline-block;
    float: left;
    width: 100%;
    margin-top: 20px;
}

.popup .btn {
    display: inline-block;
    height: auto;
    line-height: 23px;
    padding: 10px 25px 8px 25px;
    margin-top: 20px;
    border: none !important;
    text-align: center;
    text-transform: uppercase;
}

.popup .btn:hover {
    background-color: #e1e1e1;
    color: #5F5F5F;
}

.profile_popup .input_text {
    width: 48%;
    margin-right: 2%;
    margin-top: 10px;
    border: none;
    font-size: 14px;
    line-height: 24px;
    color: #474c55;
}

.profile_popup .input_text:last-child {
    margin-right: 0;
}

.lbl {
    display: inline-block;
    vertical-align: top;
}

.red {
    color: red;
}

.profile_meldpa_bar {
    background: #e4e7e5;
    float: left;
    width: 48%;
    margin: 13px 0 40px 0;
    padding: 12px 20px;
}

.profile_meldpa_bar a {
    color: #474c55;
}

.profile_avatar_box {
    float: left;
    width: 180px;
    /*padding-top: 21px;*/
}

.profile_avatar {
    position: relative;
    float: left;
    width: 100%;
    height: 185px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ccc;
    text-align: center;
    margin-bottom: 13px;
    padding: 15px;
}

.profile_avatar_box label {
    display: inline-block;
    float: left;
    width: 100%;
    margin-bottom: 2px;
}

.profile_avatar_inputs {
    float: left;
    width: 100%;
}

/*.profile_avatar_inputs label {
        display: block;
        font-size: 13px;
        margin-bottom: 10px;
        font-weight: 600;
}*/

.noAvatar {
    display: inline-block;
    width: 100%;
    height: 32px;
    border: 1px solid #ccc;
    padding: 7px 15px;
    margin-bottom: 13px;
}

#avatar_upload {
    display: none;
}

.avatar_buttons button {
    background: #474c55;
    color: #fff;
    height: 32px;
    padding: 5px 13px;
    border: none;
    cursor: pointer;
    margin-top: 10px;
}

.avatar_buttons button:hover {
    background: #4f5d73;
}

.avatar_buttons button.remove_avatar {
    float: right;
    height: 45px;
    width: 87px;
    background-color: #f04b54;
    color: #fff;
}

.avatar_buttons button.remove_avatar:hover {
    background-color: #474c55;
}

#avatar_button {
    float: left;
    width: 95px;
    height: 45px;
    background: #474c55;
    color: #fff;
    padding: 10px 13px;
    border: none;
    cursor: pointer;
}

#avatar_button:hover {
    background: #4f5d73;
}

.avatar_buttons #avatar_button {
    margin-top: 10px;
    font-family: Arial, sans-serif;

}

#preview-avatar {
    max-width: 100%;
    max-height: 100%;
}

.profile_tables_box {
    float: right;
    width: calc(100% - 205px);
}

.profile_tables {
    float: left;
    width: 100%;
}

.profile_tables * {
    box-sizing: border-box;
}

.profile_tables .w50 {
    float: left;
    width: 48%;
}

.profile_tables .w50:last-child {
    float: right;
}


.save_avatar_button,
.remove_avatar {
    display: none;
}

.ip_cell {
    float: left;
    width: 100%;
    margin-bottom: 13px;
}

.ip_cell label {
    float: left;
    width: 100%;
    margin-bottom: 2px;
}

select.input_text {
    padding-right: 30px;
    background: #fff url(../_img/i_select.png) no-repeat right center;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
}

select:disabled {
    opacity: 1;
}

.input_text {
    height: 35px;
    padding: 0 10px;
    background: #fff;
    border: 1px solid #a8bfb2;
}

.ip_cell .input_text {
    width: 100%;
}

.input_text.day {
    width: 20%;
    margin-right: 2%;
    padding: 0 3px;
    float: left;
    text-align: center;
}

.input_text.month {
    width: 44%;
    margin-right: 2%;
    float: left;
}

.input_text.year {
    float: left;
    width: 32%;
}

.input_text.country_code {
    width: 25%;
    margin-right: 2%;
    padding: 0 6px;
    float: left;
}

.input_text.phone {
    width: 73%;
    float: left;
}

.input_text:focus {
    border-color: #7d7d7d;
}

.profile_buttons {
    float: left;
    width: 100%;
    background: #e4e7e5;
}


.profile_buttons a {
    display: inline-block;
    height: 45px;
    padding: 10px 15px;
    color: #474c55;
}

.xmas_menu {
    display: inline-block;
    width: 100%;
    margin-top: 20px;
}

.xmas_menu span.menu_title {
    background: #474c55;
    color: #fff;
    cursor: auto;
}

.xmas_menu span.menu_title:hover {
    text-decoration: none;
}

.xmas_menu .selected .menu_title {
    background: transparent;
    color: #474c55;
    text-decoration: underline;
}

.xmas_link {
    box-sizing: border-box;
    display: inline-block;
    width: 100%;
    min-height: 44px;
    margin-bottom: 10px;
    padding-top: 2px;
    background: url(../_img/christmas.png) no-repeat 6px 0;
    font-size: 14px;
    padding-left: 60px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 22px;
    text-decoration: none;
    color: #474c55;
}

.xmas_link:hover {
    color: #a9c0b2;
}

.xmas_menu .side_menu {
    background-color: #d3e1d8;
}


#calendar_alert.ui-widget-content,
.ui-widget-content {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    float: left;
    width: 100%;
    background: #fff !important;
}

.ui-dialog {
    background-color: #474c55 !important;
}

.ui-dialog .ui-dialog-buttonpane {
    margin-top: 0 !important;
}

.lightbox img {
    max-width: none;
    max-height: none;
}

/* SLIDER STUDIOS */
.studio_slider_box {
    display: none;
    float: left;
    width: 100%;
    margin-top: 10px;
}

.studio_slider_box .slider-nav {
    padding: 10px 20px;
    background-color: #474c55;
}

.studio_slider_box .slider-nav.fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    margin-top: 0;
    z-index: 1000;
}

.studio_slider_box .slider-nav.fixed.top80 {
    top: 80px;
}

.studio_slider_box .slider-nav .slick-slide {
    font-size: 0;
    line-height: 28px;
    font-weight: 700;
    color: #a9c0b2;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
}

.studio_slider_box .slider-nav .slick-slide::before {
    display: inline-block;
    content: attr(data-short);
    font-size: 12px;
    text-transform: uppercase;
    vertical-align: middle;
}

.studio_slider_box .slider-nav .slick-current {
    font-family: "DIN-BOLD";
    font-size: 18px;
    line-height: 28px;
    color: #fff;
}

.studio_slider_box .slider-nav .slick-current::before {
    display: none;
}

.studio_slider_box .slick-prev,
.studio_slider_box .slick-next {
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
}

.studio_slider_box .slick-prev {
    left: 0
}

.studio_slider_box .slick-next{
    right: 0
}

.studio_slider_box .slick-prev:before,
.studio_slider_box .slick-next:before {
    font-family: FontAwesome !important;
    font-size: 28px;
    color: #fff;
    line-height: 38px !important;
    opacity: 1 !important;
}

.studio_slider_box .slick-prev:before {
    content: "\f104" !important;
}

.studio_slider_box .slick-next:before {
    content: "\f105" !important;
}


/* MOBILE CALENDAR */
.mobile_calendar_box .calendar {
    display: inline-block;
    float: left;
    width: 100%;
    color: #474c55;
}

.mobile_calendar_box .weekday {
    display: inline-block;
    float: left;
    width: 100%;
    margin: 15px 0;
    font-size: 16px;
    line-height: 26px;
    color: #474c55;
    font-weight: 700;
    text-transform: uppercase;
}

.mobile_calendar_box .calendar_rows_box {
    display: inline-block;
    float: left;
    width: 100%;
}

.mobile_calendar_box .calendar_row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 10px;
    background-color: #eaf5f9;
    font-size: 14px;
    line-height: 24px;
}

.mobile_calendar_box .calendar_row:last-child {
    margin-bottom: 0;
}

.mobile_calendar_box .left_part {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    width: 25%;
    max-width: 140px;
    background-color: #daeaf0;
}

.mobile_calendar_box .right_part {
    position: relative;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-top: 10px;
    background-color: #eaf5f9;
}

.mobile_calendar_box .overlay_link {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.mobile_calendar_box .inner {
    position: relative;
    display: inline-block;
    float: left;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.mobile_calendar_box .inner a {
    pointer-events: auto;
}

.mobile_calendar_box .teacher_img {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-align-items: center;
    align-items: center;
}

.mobile_calendar_box .time {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    height: 100%;
}

.mobile_calendar_box .cells_box {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
}

.mobile_calendar_box .cell_w50 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start;
    width: 65%;
    padding: 0 10px;
}

.mobile_calendar_box .cell_w50:last-child {
    width: 35%;
}

.mobile_calendar_box .btns_box {
    display: inline-block;
    float: left;
    width: 100%;
    margin-top: 5px;
}

.mobile_calendar_box .cell_btn,
.mobile_calendar_box .teacher_name {
    display: inline-block;
    float: left;
    width: 100%; 
    height: 30px;
    padding: 5px;
    background-color: #ffe46b; 
    font-size: 12px;
    line-height: 22px;
    color: #3c3c3c; 
    text-align: center; 
    text-decoration: none; 
    text-transform: uppercase;
    overflow: hidden;
}

.mobile_calendar_box .teacher_name {
    background-color: #81848b;
    color: #fff;
}

.mobile_calendar_box .time_box {
    display: inline-block;
    text-align: center;
    line-height: 14px;
}

.mobile_calendar_box .studio_name_box {
    line-height: 34px;
}

.mobile_calendar_box .cell_btn:hover { 
    text-decoration: underline;
}

.mobile_calendar_box .cell_btn_1 { 
    background-color: #a8bfb2; 
    color: #fff;
}

.mobile_calendar_box .cell_btn_2 { 
    background-color: #ffec95;
    color: #fff;
}

.mobile_calendar_box .cell_btn_3 { 
    background-color: #f04b54; 
    color: #fff;
}

/* MOBILE PROFILE SUBMENU SLIDER*/
.slider_profile_submenu {
    display: none !important;
    float: left;
    width: 100%;
    margin-top: 5px;
    background-color: #a9c0b2;
}

.slider_profile_submenu .slick-track {
    margin-left: 0;
    margin-right: 0;
}

.slider_profile_submenu a {
    padding: 5px 0;
    font-family: "DIN-REGULAR";
    color: #3c3c3c;
    text-decoration: none;
}

.slider_profile_submenu a.selected {
    font-family: "DIN-BOLD";
    text-decoration: underline;
}

.slider_profile_submenu .slick-prev,
.slider_profile_submenu .slick-next {
    width: 36px;
    height: 36px;
    line-height: 36px;
    background-color: #a9c0b2 !important;
    text-align: center;
    z-index: 1;
}

.slider_profile_submenu .slick-prev {
    left: 0;
    box-shadow: 2px 0px 5px -2px rgba(0,0,0,0.75);
}

.slider_profile_submenu .slick-next{
    right: 0;
    box-shadow: -2px 0px 5px -2px rgba(0,0,0,0.75);
}

.slider_profile_submenu .slick-prev:before,
.slider_profile_submenu .slick-next:before {
    font-family: FontAwesome !important;
    font-size: 25px;
    color: #3c3c3c;
    line-height: 38px !important;
    opacity: 1 !important;
}

.slider_profile_submenu .slick-prev:before {
    content: "\f104" !important;
}

.slider_profile_submenu .slick-next:before {
    content: "\f105" !important;
}

.slider_profile_submenu .slick-prev.slick-disabled,
.slider_profile_submenu .slick-next.slick-disabled {
    display: none !important;
}

/* MOBILE */
.mobile_btns_holder {
    display: none;
    float: left;
    width: 100%;
    height: 70px;
    line-height: normal;
    background-color: #474c55;
    border-top: 1px solid #393d44;
    border-bottom: 1px solid #393d44;
    transition: all 0.2s ease-out;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    z-index: 1000;
}

.mobile_btns_holder.fixed {
    position: fixed;
    top: 0;
    left: 0;
    margin-top: 0;
    z-index: 1000;
}

.mobile_header_btns {
    position: relative;
    display: table;
    width: 100%;
    height: 100%;
}

.mobile_header_btns a {
    display: table-cell;
    text-align: center;
    font-size: 14px;
    color: #fff;
    font-weight: 400;
    vertical-align: middle;
}

.mobile_header_btns a .fa {
    font-size: 28px;
    line-height: 28px;
    margin-bottom: 5px;
}


.mobile_header_btns a span {
    display: inline-block;
    width: 100%;
}

.mobile_header_btns .i_box {
    width: 30px;
    margin-bottom: 5px;
}

.mobile_header_btns .i_box.i_menu {
    width: 28px;
}

.mobile_header_btns a.current {
    color: #303133;
}

.hsocs {
    display: none;
    float: right;
    margin-top: 18px;
}
.hsocs a{
    display: inline-block;
    width: 30px;
    height: 30px;
    transition: all 0.3s ease;
}

.mobile_logo,
.btn_mobile_menu {
    display: none;
}

.header_right .mobile_row {
    display: none;
    width: 100%;
}

.header_right .mobile_row .login_link {
    float: right;
    margin-top: 20px;
    font-size: 20px;
    line-height: 30px;
    color: #fff;
}

.header_right .mobile_user_row {
    display: inline-block;
    float: right;
    margin-top: 25px;
    font-size: 16px;
    color: #fff;
}

.mm-listview {
    font-size: 16px !important;
    line-height: 22px !important;
}

.mm-listview>li:not(.mm-divider):after {
    border: none !important;
    width: 100%;
    height: 1px;
    background: url("../_img/bg_menu.png")no-repeat top left;
    background-size: 100% 100%;
}

.mm-listview .mm-next:before {
    display: none !important;
}

.mm-menu .mm-listview>li .mm-next:after {
    border-color: #bdc4d1 !important;
}

.mm-listview .mm-vertical .mm-panel, 
.mm-vertical .mm-listview .mm-panel {
    padding-top: 0 !important;
}

.mm-listview>li>a,
.mm-listview>li>span {
    padding: 15px 10px 15px 20px !important;
}

.mm-listview>li li>a {
    color: #bdc4d1 !important;
}

.mm-listview>li li>a {
    padding: 5px 10px 5px 20px !important;
}

.mm-listview>li li:not(.mm-divider):after {
    background: none;
}

.mm-listview>li.mm-vertical>.mm-next, 
.mm-vertical .mm-listview>li>.mm-next {
    height: 100% !important;
}

.mm-listview>li.mm-vertical>.mm-next:after, 
.mm-vertical .mm-listview>li>.mm-next:after {
    top: 20px !important;
}

.mm-listview .mm-listview>li>.mm-next:after {
    top: 8px !important;
}

.mm-menu {
    background-color: #474c55 !important;
}

.mm-opened .btn_mobile_menu {
    background-color: #474c55 !important;
    border-color: transparent !important;
}

.mm-menu .mm-divider, 
.mm-menu .mm-listview>li.mm-opened.mm-vertical>.mm-panel, 
.mm-menu .mm-listview>li.mm-opened.mm-vertical>a.mm-next,
.mm-menu.mm-vertical .mm-listview>li.mm-opened>.mm-panel,
.mm-menu.mm-vertical .mm-listview>li.mm-opened>a.mm-next {
    background-color: #474c55 !important;
}

/* RESPONSIVE */
@media(max-width: 1283px) {
    #page_left,
    .header_left {
        width: 20%;
    }

    #page_right,
    .header_right{
        width: 80%;
    }

    .header_right {
        margin-top: 10%;
    }

    #logo {
        text-align: left;
    }

    #top_menu {
        width: 88%;
    }

    #top_menu li {
        margin-right: 1.5%;
    }

    #top_menu li a {
        font-size: 1.2vw;
    }

    #top_line2 {
        margin-top: -50px;
        font-size: 1.45vw;
    }

    #header .to_login {
        margin-top: 4px;
        padding: 10px 10px 7px 10px;
        font-size: 13px;
    }

    .side_menu { 
        float: left;
        width: 100%;
    }
    
    .side_menu a,
    .side_menu .menu_title {
        padding: 8px 10px 5px 15px;
        font-size: 12px;
    }

    #center {
        width: 100%;
        padding-left: 2%;
        padding-right: 2%;
    }

    .footer_sec {
        padding-top: 40px;
        padding-bottom: 40px;
        padding-left: 2%;
        padding-right: 2%;
        margin-top: 0;
    }

    .fcol,
    .fcol:last-child  {
        width: 21%;
        max-width: none;
        margin-right: 4%;
    }

    .fcol:last-child {
        margin-right: 0;
    }

    .main_right {
        width: 100%;
    }

    .infopage_images,
    .birthdaycalendar_left,
    .teacher_images,
    .prod_img {
        padding-right: 15px;
    }

    .gallery .cell {
        width: 17.5%;
    }

    .gallery .img {
        height: auto;
    }

    .teachers_list li {
        width: 16.5%;
    }

    .teachers_list li a {
        width: 98%;
    }

    .calendar_mobile_filters.open {
        display: none;
    }

    .simulation_select .all_options {
        min-width: 220px;
    }

    #birthday_calendar_holder {
        text-align: center;
    }

    #birthday_calendar_holder .title_2 {
        width: 100%;
        text-align: center;
    }

    .birthday_calendar_legend {
        float: none;
    }
}

@media(max-width: 1024px) {
    #center {
        padding-left: 0;
        padding-right: 0;
    }

    #body {
        padding-left: 2%;
        padding-right: 2%;
    }

    #header {
        padding: 0 0 10px 0;
    }

    #page_right {
        margin-top: 20px;;
    }

    #top_menu,
    #top_line2 .user_row,
    #page_left {
        display: none;
    }

    #page_right {
        width: 100%;
        padding-left: 0;
    }

    .header_left {
        display: none;
    }

    .header_right {
        width: 100%;
        margin-top: 0;
    }

    #header .to_login {
        display: none;
    }

    .header_right .mobile_row {
        display: inline-block;
    }

    #top_line2 {
        margin-top: 0;
        padding: 10px 2%;
        background-color: #a9c0b2;
        text-align: left;
    }

    #top_line2 a {
        color: #fff;
    }

    #top_line2 .btn_mobile_menu {
        display: inline-block;
        float: left;
        width: 40px;
        height: 40px;
        line-height: 40px;
        padding: 12px 8px 8px 8px;
        margin-top: 12px;
        border: 1px solid rgba(255, 255, 255, .51);
        background-color: transparent;
    }

    .mobile_btns_holder,
    .mobile_logo,
    .btn_mobile_menu,
    .hsocs {
        display: inline-block;
    }

    .slider_profile_submenu {
        display: inline-block !important;
    }

    .mobile_logo {
        display: inline-block;
        float: left;
        width: 100px;
    }

    .to_login {
        float: right;
        margin-top: 22px;
        font-size: 24px;
        line-height: 34px;
    }

    .index_teacher_item .teacher_name {
        margin: 30px 0;
        font-size: 26px;
        line-height: 36px;
    }





}

@media(max-width: 900px) {
    .button-o {
        border-width: 4px;
    }

    .index_trinity_t1 .block,
    .birthdaystyles_list .block {
        text-align: center;
    }

    .index_trinity .link,
    .index_trinity_t1 .title,
    .index_trinity .price {
        float: none;
    }

    .user_courses_tbl {
        border-bottom: 2px solid #474c55 !important;
    }

    .user_courses_tbl thead {
        display: none;
    }

    .user_courses_tbl td {
        display: inline-block;
        width: 100%;
        padding: 10px;
        border-bottom: 1px solid #878586;
    }

    .user_courses_tbl td::before {
        display: inline-block;
        content: attr(data-th)": ";
        width: 100px;
        font-size: 14px;
        font-weight: 700;
        color: #474c55;
        vertical-align: top;
    }

    .user_courses_tbl tr {
        display: block;
        border-top: 2px solid #474c55;
    }

    .user_courses_tbl tr:last-child {
        margin-bottom: 0;
    }

    .calendar_box {
        display: none;
    }

    .studio_slider_box {
        display: inline-block;
    }

    .calendar_pc_filters {
        display: none;
    }

    .btn_open_filters {
        display: inline-block;
    }

    .calendar_mobile_filters.open {
        display: inline-block;
    }

    .index_teachers_slider_box .main_title {
        display: inline-block;
        margin-bottom: 20px;
        font-size: 34px;
        text-transform: uppercase;
    }

    .index_teachers_slider .main_title {
        display: none;
    }

    .index_teachers_slider_box {
        margin-top: 20px;
    }

    .index_teachers_slider .slick-dots {
        top: -70px;
    }

    .index_teachers_slider_box .button {
        top: 15px;
    }

    .index_teachers_slider_box .slick-track {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .index_teacher_item {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0 5px;
        height: auto !important;
    }

    .index_teacher_item .teacher_images {
        width: 100%;
        padding-right: 0;
        margin-bottom: 20px;
    }

    .index_teacher_item .teacher_name {
        margin: 0 0 10px 0;
        font-size: 20px;
        line-height: 30px;
    }

    .index_teacher_item .teacher_text_box {
        width: 100%;
        -webkit-box-flex: 1;
        -moz-box-flex: 1;
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1;
    }

    .index_teacher_item .teacher_info {
        height: 50px;
        overflow: hidden;
    }

    .index_teacher_item .button-o {
        padding: 10px 15px;
        font-size: 16px;
        line-height: 26px;
    }

    .instagram_gallery_box .title {
        left: 0;
        right: 0;
        font-size: 34px;
        text-transform: uppercase;
        text-align: center;
    }

    .instagram_gallery_box .btn_box {
        left: 0;
        right: 0;
        text-align: center;
    }

    .instagram_gallery_box .button-o {
        padding-left: 65px;
        padding-right: 15px;
    }

    .video_box {
        margin-top: 20px;
    }
}

@media(max-width: 700px) {
    .index_infos .block {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        width: 100%;
        margin-right: 0;
        text-align: left;
    }

    .index_infos .block .img {
        width: 45%;
        margin-right: 4%;
        margin-bottom: 0;
    }

    .index_infos .block .content_box {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: flex-start;
        align-items: flex-start;
        width: 50%;
    }


    .video_box iframe {
        height: 400px;
    }

    .gallery .cell {
        width: 22.3%;
    }

    .gallery .cell:nth-child(5n+5) {
        margin-right: 2%;
    }


    .teachers_list li {
        width: 20%;
    }

    .profile_tables_box {
        width: 100%;
    }

    .profile_tables_box {
        margin-top: 20px;
    }

    .profile_avatar_box button {
        width: 48%
    }

    .profile_semesters .w50,
    .profile_meldpa_bar {
        width: 100%;
    }

    .popup {
        width: 90%;
    }

    .fcol h4 {
        font-size: 14px;
    }

    .buy_course_table th,
    .buy_course_table .labels td,
    .buy_course_table .main td {
        padding: 5px 10px;
    }

    .buy_course_table .main td {
        padding: 0 0 0 10px;
    }
}

@media(max-width: 590px) {
    .index_teachers_slider_box .main_title {
        width: 100%;
        padding-right: 10px;
        font-size: 28px;
        text-align: center;
    }

    .index_teachers_slider .slick-dots {
        left: 0;
        right: auto;
    }

    .index_teachers_slider .slick-dots li {
        margin: 0;
    }

    .index_teachers_slider_box .button {
        padding: 4px 7px 2px 7px;
    }

    .instagram_gallery_box .title {
        font-size: 28px;
    }

    .fcol,
    .fcol:last-child {
        width: 47%;
        margin-bottom: 30px;
    }

    .fcol:last-child {
        float: none;
    }

    .fcol:nth-child(2n+2) {
        margin-right: 0;
    }

    .fmenu {
        padding-top: 0;
    }

    .infopage_images,
    .infopage_text,
    .birthdaycalendar_left,
    .birthdaycalendar_right,
    .contact_left_side,
    .contact_right_side,
    .teacher_images,
    .teacher_text,
    .prod_img,
    .prod_info { 
        width: 100%;
        padding: 0;
    }

    .prod_img,
    .prod_info {
        text-align: center;
    }

    .teacher_images {
        margin-bottom: 30px;
    }

    .index_trinity_t1 .block,
    .birthdaystyles_list .block {
        width: 47%;
    }
    
    .index_trinity_t1 .block:nth-child(3n+3),
    .index_trinity_t1 .block_last,
    .birthdaystyles_list .block_last {
        margin-right: 4%;
    }

    .index_trinity_t1 .block:nth-child(2n+2),
    .birthdaystyles_list .block:nth-child(2n+2) {
        margin-right: 0;
    }

    .gallery .cell {
        width: 30.5%;
    }

    .gallery .cell:nth-child(5n+5) {
        margin-right: 2%;
    }

    .teachers_list li {
        width: 25%;
    }

    #popup_info {
        width: 90%;
        margin-left: -45%;
    }

    .buy_course_table {
        float: left;
        width: 100%;
        margin-bottom: 30px;
    }

    .buy_course_table:last-child {
        margin-bottom: 0;
    }

    .calendar_mobile_filters {
        max-width: none;
    }

    .contact_form .label,
    .contact_form .input,
    #change_courses .label,
    #change_courses select,
    #login_register .label,
    #login_register .input,
    #login_register .container,
    .amnesiac_form label,
    .amnesiac_form input[type="text"],
    #birthdays_buy .label,
    #birthdays_buy .input,
    #birthdays_buy .info_row,
    .info_form_box .label,
    .info_form_box .input_text {
        width: 100%;
    }

    .input_row {
        margin-bottom: 10px;
    }

    #login_register .label .asterisk,
    #birthdays_buy .asterisk {
        position: static;
        float: none;
    }

    #login_register .label.fantom,
    #birthdays_buy .label.fantom,
    .contact_form .label.fantom,
    .info_form_box .label.fantom {
        display: none;
    }

    .profile_tables .w50 {
        width: 100%;
    }

    .profile_tables .inner_cell {
        margin-bottom: 13px;
    }

    .profile_tables .inner_cell:last-child {
        margin-bottom: 0;
    }

    .cart_table th,
    .cart_table .middle td {
        padding: 10px;
    }

    .btn_back {
        margin-top: 8px;
        padding: 5px;
        font-size: 12px;
    }

}



@media(max-width: 450px) {
    .index_infos .block {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center;
    }

    .index_infos .block .img {
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
    }

    .index_infos .block .content_box {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        -webkit-align-items: center;
        align-items: center;
        width: 100%;
    }

    .gallery .cell {
        width: 48%;
    }

    .gallery .cell:nth-child(5n+5) {
        margin-right: 2%;
    }

    .gallery .cell:nth-child(2n+2) {
        margin-right: 0;
    }


    .teachers_list li {
        width: 33.3%;
    }

    /*.cart_table thead {
        display: none;
    }

    .cart_table td {
        display: inline-block;
        width: 100%;
        text-align: left;
        border-top: none;
    }

    .cart_table .middle .left {
        border-left: none;
        background: #d1d2d4;
    }

    .cart_table .middle .right {
        border-right: none;
    }

    .cart_table td::before {
        display: inline-block;
        content: attr(data-th)": ";
        width: 130px;
        font-weight: 700;
        vertical-align: top;
    }

    .cart_table td.empty_cart::before {
        display: none;
    }*/








}

@media(max-width: 360px) {
    .fcol,
    .fcol:last-child {
        width: 100%;
        max-width: none;
        margin-right: 0;
        text-align: center;
    }

    .fcol:last-child {
        float: none;
        margin-bottom: 0;
    }
}
