html, body {
    position: relative;
    display: block;
    height: 100%;
    width: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


.hidden-h1 {
    width: 1px;
    height: 1px;
    z-index: -1;
}

.scrollbar-track-y {
    display: none !important;
}

#js-scroll {
    height: 100%;
}
html.has-js-scroll,
html.has-js-scroll body {
    overflow: hidden;
}
html.has-js-scroll #js-page-scroll {
    height: 100%;
}
html.has-js-scroll .scroll-content {
    overflow-x: hidden;
}

.header {
    transform: translate3d(0px,0px,0px);
}

b,strong {
    font-weight: 700;
}
ul, ol {
    list-style: none;
}
ul, li {
    list-style-type: none;
}
a, a:visited, a:focus, a:active, a:hover,
button, button:visited, button:focus, button:active, button:hover {
    outline: none !important;
}
a::-moz-focus-inner,
button::-moz-focus-inner {
    outline: none !important;
}

.container {
    position: relative;
}
.container--inside {
    position: relative;
}

header, main, footer {
    display: block;
}
main {
    min-height: 100%;
}
section {
    position: relative;
}

img {
    /*max-width: 100%;*/
    height: auto;
}

label {
    pointer-events: inherit;
}
form.disable {
    opacity: 0.5;
    pointer-events: none;
}
input,
select,
textarea {
    width: 100%;
    padding: 15px;
    border: 1px solid #9b9b9b;
    border-radius: 0px;
    outline: none;
    font-size: 16px;
    background-color: transparent;
    box-shadow: none;
    -webkit-box-shadow: 0 0 0px 1000px transparent inset;
}
textarea {
    resize: none;
    height: auto;
    min-height: 38px;
    overflow: hidden;
}
.required-label:before {
    content: "*";
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translate(0%, -50%);
}

button {
    border: none;
    box-shadow: none;
    outline: none;
    cursor: pointer;
}

.entry-row {
    position: relative;
    display: block;
    margin: 0px;
    padding: 5px 0px 10px;
}
.entry-row.focused > label {
    top: 5px;
}
.entry-row > label {
    font-size: 18px;
    position: absolute;
    top: 50%;
    left: 15px;
    padding-left: 10px;
    transform: translateY(-50%);
    pointer-events: none;
    color: #9b9b9b;
    transition: top 0.3s ease;
}
.entry-row > input {
    border-top-width: 0px;
    border-left-width: 0px;
    border-right-width: 0px;
    transition: border-color 0.15s ease-in-out, background-color 5000s ease-in-out 0s;
}
.entry-row > input:hover,
.entry-row > input:focus {
    border-color: #00d8fc;
}

::-webkit-input-placeholder {
    color: #a3a7a9;
    text-overflow: ellipsis;
}
::-moz-placeholder {
    color: #a3a7a9;
    text-overflow: ellipsis;
    opacity: 1;
}
::-ms-input-placeholder {
    color: #a3a7a9;
    text-overflow: ellipsis;
}

.form-radio {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
    cursor: pointer;
}
.form-radio:last-child {
    margin-right: 0px;
}
.form-radio--input {
    display: none;
}
.form-radio--input:checked + .form-radio--title:before {
    border-color: #0071f9;
}
.form-radio--input:checked + .form-radio--title:after {
    opacity: 1;
}
.form-radio--title {
    display: block;
    padding-left: 25px;
    line-height: 14px;
    color: #373737;
}
.form-radio--title:before {
    content: "";
    position: absolute;
    top: 0%;
    left: 0%;
    width: 14px;
    height: 14px;
    border: 2px solid #000000;
    border-radius: 50%;
    transition: border-color 300ms linear 0ms;
}
.form-radio--title:after {
    content: "";
    position: absolute;
    top: 4px;
    left: 4px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #0071f9;
    opacity: 0;
    transition: opacity 300ms linear 0ms;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
    padding: 0;
    font-weight: normal;
}

.text-left {
    text-align: left;
}
.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}

.color--blue {
    color: #0071f9;
}
.color--light-blue {
    color: #00d8fc;
}
.color--dark-blue {
    color: #071f3d;
}
.bg--blue {
    background-color: #0071f9;
    color: #ffffff;
}
.bg-white {
    background-color: #ffffff;
}
.bg--dark {
    color: #ffffff;
}
.bg--dark-blue {
    background-color: #071f3d;
    color: #ffffff;
}

.button {
    display: inline-block;
    vertical-align: middle;
    width: auto;
    height: 60px;
    border-radius: 0px;
    font-family: 'Rubik', sans-serif;
    font-weight: 500;
    margin: 0px;
    padding: 0px 15px;
    border: 2px solid transparent;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
}
.button[disabled] {
    color: #ffffff !important;
    background-color: #9b9b9b !important;
    border-color: #9b9b9b !important;
    cursor: default;
}
a.button .button--title-default,
a.button .button--title-clicked {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
}

.button.clicked .button--title-default,
.button--title-clicked {
    display: none;
}
.button.clicked .button--title-clicked {
    display: inline;
}

.button--fluid {
    width: 100%;
}

.button--blue {
    color: #ffffff;
    background-color: #0071f9;
    transition: background-color 0.15s ease-in-out;
}
.button--blue:hover,
.button--blue:focus {
    background-color: #071f3d;
}

.button--white-transparent {
    color: #ffffff;
    border-color: #ffffff;
    background-color: transparent;
    transition: border-color 0.15s ease-in-out, color 0.15s ease-in-out;
}
.button--white-transparent:hover,
.button--white-transparent:focus {
    border-color: #00d8fc;
    color: #00d8fc;
}

.button--white-transparent.button--hover-fill {
    transition: border-color 0.15s ease-in-out;
}
.button--white-transparent.button--hover-fill:hover,
.button--white-transparent.button--hover-fill:focus {
    background-color: #333333;
    border-color: #333333;
    color: #ffffff;
}

.button--small-width {
    width: 100%;
    max-width: 180px;
}
.button--medium-width {
    width: 100%;
    max-width: 220px;
}

.table {
    display: table;
}
.table--cell {
    display: table-cell;
}

.main-wrapper {
    position: relative;
}

/*swiper*/
.custom-swiper-pagination {
    position: absolute;
    width: 100%;
    bottom: 30px;
    height: 40px;
    font-size: 0px;
    text-align: left;
    z-index: 2;
}
.custom-swiper-pagination.swiper-pagination--hidden {
    display: none;
}
.custom-swiper-pagination--item {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 58px;
    height: 40px;
    margin-right: 10px;
    cursor: pointer;
    overflow: hidden;
}
.custom-swiper-pagination--item:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0%;
    width: 100%;
    height: 4px;
    margin-top: -2px;
    background-color: #ffffff;
    z-index: 1;
}
.custom-swiper-pagination--item:last-child {
    margin-right: 0px;
}
.custom-swiper-pagination--progress {
    position: absolute;
    display: block;
    top: 50%;
    left: 0%;
    width: 100%;
    height: 4px;
    margin-top: -2px;
    transform-origin: 0% 0%;
    transform: translate3d(0px, 0px, 0px) scale(0, 1);
    background-color: #0071f9;
    opacity: 1;
    z-index: 2;
}
.custom-swiper-pagination--progress.done {
    opacity: 0;
    transition: transform 0.2s linear 0s, opacity 0.1s linear 0s;
}
/*swiper*/

/*section basic style*/
.section-grid-row {
    position: absolute;
    top: 0%;
    left: 0%;
    right: 0%;
    bottom: 0%;
    height: 100%;
    z-index: 1;
}
.section-grid-row > [class^="col-"]:before {
    content: "";
    position: absolute;
    top: 0%;
    left: 15px;
    width: 1px;
    height: 100%;
    background-color: #d8d8d8;
    opacity: 0.15;
}
.section-grid-row > [class^="col-"]:last-child:after {
    content: "";
    position: absolute;
    top: 0%;
    right: 15px;
    width: 1px;
    height: 100%;
    background-color: #d8d8d8;
    opacity: 0.15;
}


.section-title {
    position: relative;
    font-weight: 500;
    line-height: 1;
}
.title--with-border {
    padding-left: 20px;
}
.title--with-border:before {
    content: "";
    position: absolute;
    top: 5%;
    left: 0%;
    width: 4px;
    height: 90%;
    background-color: #0071f9;
    transform: scaleY(0);
    transition: transform 0.3s ease-out 0.1s;
    transform-origin: 50% 50%;
}
.title--with-border.animated:before {
    transform: scaleY(1);
}

.section-description {
    margin-top: 20px;
}
.section-description:first-child {
    margin-top: 0px;
}

.section-header,
.section-body {
    position: relative;
    z-index: 2;
}
/*section basic style*/

/*main sidebar*/
.main-sidebar {
    position: fixed;
    top: 0%;
    left: 0%;
    right: 0%;
    bottom: 0%;
    width: 100%;
    height: 0%;
    z-index: 3;
}
.main-sidebar > .container,
.main-sidebar > .container > .row,
.main-sidebar--content {
    height: 100%;
}
.main-sidebar--content {
    position: relative;
    max-width: 230px;
    min-width: 160px;
    height: 100vh;
    color: #ffffff;
    text-align: center;
    overflow: hidden;
    opacity: 0;
    transition: opacity 0.3s ease-in-out 0s;
}
.main-sidebar--bg-mask {
    position: absolute;
    top: 0%;
    left: 0%;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(330deg, #0070f9, #00d8fb);
    z-index: 1;
}
.main-sidebar--content .section--glow-mask {
    width: 1000px;
    height: 1000px;
    right: -100%;
    top: 0%;
    background-size: 700px;
    background-position: 100% 0%;
    opacity: 1;
}
.main-sidebar--header-sub-title {
    text-transform: uppercase;
}
.main-sidebar--header-sub-title,
.main-sidebar--header-title {
    font-weight: 300;
}
.main-sidebar--header-sub-title:first-child,
.main-sidebar--header-title:first-child {
    margin-top: 0px;
}
.main-sidebar--article-title,
.main-sidebar--article-sub-title {
    display: block;
}

.main-sidebar.fixed--bottom .main-sidebar--content-inside footer {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.15s ease-in-out 0s, visibility 0s linear 0.2s;
}
.main-sidebar--content-inside footer {
    opacity: 1;
    visibility: visible;
    transition: visibility 0s linear 0s, opacity 0.15s ease-in-out 0.05s;
}


.main-sidebar--content-inside {
    position: relative;
    height: 100%;
    /*outline: 1px solid black;*/
    z-index: 3;
}
.main-sidebar--content-center {
    position: relative;
    top: 50%;
    transform: translate(0%, -50%);
    /*outline: 1px solid red;*/
}
.main-sidebar--content-inside article,
.main-sidebar--content-inside footer {
    position: relative;
    margin-top: 40px;
    z-index: 3;
}
.main-sidebar--content-inside article:first-child,
.main-sidebar--content-inside footer:first-child,
.main-sidebar--content-inside article > ul > li:first-child {
    margin-top: 0px;
}
.main-sidebar--content-inside article > ul > li {
    margin-top: 20px;
}
/*main sidebar*/

/*top slider section*/
.top-slider--item {
    position: relative;
    background-color: #071F3D;
    box-sizing: border-box;
}
.top-slider--image {
    position: absolute;
    top: 0%;
    left: 0%;
    right: 0%;
    bottom: 0%;
    width: 100%;
    height: 100%;
    opacity: 0.4;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 1;
}
.top-slider--item > .container {
    z-index: 2;
}
.top-slider.no-auto-play .top-slider--content-inside,
.top-slider--item.is-animate .top-slider--content-inside {
    opacity: 1;
}
.top-slider--item > .container,
.top-slider--item > .container > .container--inside,
.top-slider--item > .container > .container--inside > .row{
    height: 100%;
}
.top-slider--content {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    flex-flow: row;
    align-items: center;
    height: 100%;
    color: #ffffff;
}
.top-slider--title {
    font-weight: 500;
}
.top-slider--content-inside {
    position: relative;
    opacity: 0;
    transition: opacity 0.15s ease-in-out 0.3s;
    z-index: 2;
}
.top-slider--content-inside > header,
.top-slider--content-inside > article,
.top-slider--content-inside > footer {
    margin: 25px 0px 0px;
}
.top-slider--content-inside > header:first-child,
.top-slider--content-inside > article:first-child {
    margin-top: 0px;
}
.top-slider--content-inside > article ul li {
    position: relative;
}
.top-slider--content-inside > article ul li:before {
    content: "";
    position: absolute;
    top: 0%;
    left: 0%;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #ffffff;
}
/*top slider section*/

/*statistics section*/
.statistics-article--wrapper {
    position: relative;
}

.statistics-content > .row:first-child {
    margin-top: 0px;
}
.statistics-item {
    position: relative;
    cursor: pointer;
}
.statistics-item--title,
.statistics-item--sub-title {
    position: relative;
    display: inline-block;
    vertical-align: bottom;
}
.statistics-item--title {
    font-weight: 300;
}
.statistics-item--sub-title {
    text-transform: uppercase;
}

.statistics-item--title {
    text-align: right;
}
.statistics-item--title:before {
    content: attr(data-title);
    display: block;
    height: 0px;
    overflow: hidden;
    visibility: hidden;
}
/*statistics section*/

/*about section*/
.about-section--description img {
    max-width: 100%;
    width: auto;
    height: auto;
}
.about-section--list > .row:first-child,
.about-section--description p:first-child,
.about-section--description-block:first-child {
    margin-top: 0px;
}
/*about section*/

/*speakers section*/
.speaker-item:first-child {
    margin-top: 0px;
}
.speaker-item--image img {
    max-width: 100%;
    height: auto;
}
.speaker-item--logo img {
    height: auto;
}
.speaker-item--title {
    font-weight: 500;
}
.speaker-item--sub-title {
    text-transform: uppercase;
    color: #9b9b9b;
}
.speaker-item--socials > ul > li {
    display: inline-block;
    vertical-align: middle;
    margin: 0px 10px 0px 0px;
}
.speaker-item--socials > ul > li:last-child {
    margin-right: 0px;
}
.speaker-item--socials > ul > li > a {
    font-size: 28px;
    color: #333333;
    transition: color 0.15s ease-in-out;
}
.speaker-item--socials > ul > li > a:hover {
    color: #00d8fc;
}
.speaker-item--title:first-child,
.speaker-item--sub-title:first-child,
.speaker-item--socials:first-child,
.speaker-item--description:first-child,
.speaker-item--footer:first-child,
.speaker-item--column:first-child {
    margin-top: 0px;
}
.speaker-item--socials {
    line-height: 1;
}
/*speakers section*/

/*schedule section*/
.schedule-section {
    overflow: hidden;
}
.schedule-section .section-header,
.schedule-section .section-body {
    z-index: inherit;
}
.schedule-section .section--glow-mask {
    width: 560px;
    height: 560px;
    right: -50px;
    bottom: -50px;
    background-size: 800px;
    background-position: 0% 0%;
    opacity: 0.5;
}
.schedule-section--grid {
    position: absolute;
    top: 0%;
    left: 0%;
    right: 0%;
    bottom: 0%;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.schedule-section--grid > .container,
.schedule-section--grid > .container > .container--inside {
    height: 100%;
}


.schedule-section--list:first-child,
.schedule-module--header:first-child,
.schedule-module--body:first-child,
.schedule-module--footer:first-child,
.schedule-module--speakers:first-child,
.schedule-module--title:first-child,
.schedule-module--sub-title:first-child,
.schedule-speaker--title:first-child,
.schedule-speaker--sub-title:first-child {
    margin-top: 0px;
}

.schedule-module {
    position: relative;
    overflow: hidden;
}
.schedule-module > .container {
    z-index: 2;
}
.schedule-module:first-child .schedule-module--row-top > [class^="col-"] {
    padding-top: 0px;
}
.schedule-module:first-child .schedule-module--row-top .schedule-module--progress {
    display: none;
}
.schedule-module .schedule-module--row-top .schedule-module--progress {
    height: calc(100% - 60px);
}
.schedule-module--spoiler {
    display: none;
}
.schedule-module.module--opened .schedule-module--spoiler {
    display: block;
}

.schedule-module--footer {
    padding-bottom: 1px;
}

.schedule-module--speakers > .row > [class^="col-"] {
    padding-top: 30px;
}
.schedule-module--speakers > .row > [class^="col-"]:first-child {
    padding-top: 0px;
}

.schedule-module.module--opened .schedule-module--wrapper .schedule-module--speakers {
    display: none;
}
.schedule-module.module--opened .schedule-module--bg-mask {
    /*background-color: rgba(255,255,255, 0.2);*/
}
.schedule-module.module--opened .schedule-module--footer .button--title-default {
    display: none;
}
.schedule-module.module--opened .schedule-module--footer .button--title-clicked {
    display: inline;
}
.schedule-module.module--opened .schedule-module--icon.icon--plus .icon--line-ver > span:before {
    height: 0%;
}

.schedule-module.module--hovered .schedule-module--wrapper .schedule-module--title,
.schedule-module.module--hovered .schedule-module--wrapper .schedule-module--sub-title,
.schedule-module.module--opened .schedule-module--wrapper .schedule-module--title,
.schedule-module.module--opened .schedule-module--wrapper .schedule-module--sub-title {
    color: #0071f9;
}

.schedule-module.module--opened .schedule-close-wrapper {
    transform: scale(1);
}

.schedule-module.module--icon-rotate .schedule-module--icon.icon--plus {
    transform: rotate(90deg);
}
.schedule-module.module--opened .schedule-module--icon.icon--plus {
    transform: rotate(0deg);
    transition: none;
}

.schedule-module--border {
    position: absolute;
    width: 40px;
    height: 100%;
    top: 0%;
    left: 50%;
    z-index: 2;
}
.schedule-module--border-content {
    position: relative;
    height: 100%;
}
.schedule-module--progress {
    position: absolute;
    top: 0px;
    left: 50%;
    width: 3px;
    height: calc(100% + 1px);
    background-color: #0071f9;
    transform: translate(-50%, 0%);
}

.schedule-module--icon {
    position: absolute;
    bottom: 15px;
    left: 50%;
    width: 40px;
    height: 40px;
    margin-left: -20px;
    transform-origin: 50% 50%;
    transform: rotate(0deg);
    transition: transform 0.3s ease-in-out;
}
.schedule-module--icon.icon--plus {
    cursor: pointer;
    bottom: 5px;
}
.schedule-module--icon.icon--plus .icon--line-hor {
    position: absolute;
    display: block;
    top: 50%;
    left: 0%;
    width: 100%;
    height: 3px;
    background-color: #0071f9;
    margin-top: -2px;
}
.schedule-module--icon.icon--plus .icon--line-ver > span {
    position: absolute;
    display: block;
    left: 50%;
    width: 3px;
    height: 50%;
    margin-left: -1px;
    opacity: 1;
    transform-origin: 50% 50%;
}
.schedule-module--icon.icon--plus .icon--line-ver > span:first-child {
    display: flex;
    flex-flow: column-reverse;
}
.schedule-module--icon.icon--plus .icon--line-ver > span:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #0071f9;
    transition: height 0.3s ease-in-out;
}
.schedule-module--icon.icon--plus .icon--line-ver > span:first-child {
    top: 0%;
}
.schedule-module--icon.icon--plus .icon--line-ver > span:last-child {
    bottom: 0%;
}
.schedule-module--icon.icon--point:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    background-color: #0071f9;
}

.schedule-module--bg-mask {
    position: absolute;
    left: 0%;
    right: 0%;
    bottom: 0%;
    width: 100%;
    height: 100%;
    background-color: transparent;
    /*transition: background-color 0.3s ease-in-out;*/
    z-index: 1;
}
.schedule-module--title,
.schedule-module--sub-title {
    margin-top: 10px;
    font-weight: 300;
    line-height: 1;
    transition: color 0.3s ease-in-out;
}
.schedule-module--title,
.schedule-module--sub-title {
    position: relative;
    z-index: 1;
}
.schedule-module--sub-title {
    text-transform: uppercase;
}
.schedule-module--category {
    font-weight: 500;
}
.schedule-module--description {
    margin-top: 15px;
}
.schedule-module--description:first-child {
    margin-top: 0px;
}

.schedule-head--text-content {
    display: inline-block;
    cursor: pointer;
}

.schedule-speaker {
    position: relative;
    display: flex;
    align-items: flex-end;
    padding-left: 120px;
    min-height: 95px;
}
.schedule-speaker--image {
    position: absolute;
    top: 0%;
    left: 0%;
}
.schedule-speaker--image img  {
    max-width: 95px;
    height: auto;
}
.schedule-speaker--title {
    font-weight: 500;
}
.schedule-speaker--sub-title {
    opacity: 0.5;
}
.schedule-speaker--title,
.schedule-speaker--sub-title {
    margin-top: 5px;
}

.schedule-module .schedule-module--spoiler-section .schedule-module--row-top .schedule-module--category {
    display: flex;
    align-items: flex-end;
    height: 100%;
}
.schedule-module .schedule-module--spoiler-section .schedule-module--row-top .schedule-module--progress {
    display: block;
    height: calc(100% - 61px);
}
.schedule-module .schedule-module--spoiler-section .schedule-module--row-top .schedule-module--icon.icon--point {
    bottom: 5px;
}
.schedule-module .schedule-module--spoiler-section .schedule-module--row-middle .schedule-module--border {
    padding-top: 10px;
}
.schedule-module .schedule-module--spoiler-section .schedule-module--row-middle .schedule-module--icon {
    display: none;
}

.schedule-module .schedule-module--spoiler-section .schedule-module--row-top > [class^="col-"] {
    display: flex;
    justify-content: flex-end;
    flex-flow: column;
}

.schedule-module.module--opened:last-child .schedule-module--wrapper .schedule-module--row-middle > [class^="col-"] {
    padding-bottom: 0px;
}
.schedule-module:last-child .schedule-module--row-middle .schedule-module--progress {
    display: none;
}
.schedule-module.module--opened:last-child .schedule-module--row-middle .schedule-module--progress {
    display: block;
}
.schedule-module:last-child .schedule-module--spoiler-section:last-child .schedule-module--row-middle .schedule-module--progress {
    display: none;
}

.schedule-close-wrapper {
    position: absolute;
    bottom: 5px;
    width: 46px;
    height: 46px;
    transform: scale(0);
    transition: transform 0.3s ease-in-out;
    transform-origin: 50% 50%;
    z-index: 2;
}
.schedule-close-btn {
    display: block;
    width: 46px;
    height: 46px;
    padding: 0px;
    border-radius: 50%;
    background-color: #0071f9;
    box-shadow: none;
    outline: none;
    border: none;
    cursor: pointer;
    transition: background-color 0.15s ease-in-out;
}
.schedule-close-btn:hover {
    background-color: #ffffff;
}
.schedule-close-btn:hover .schedule-close-btn--lines:before,
.schedule-close-btn:hover .schedule-close-btn--lines:after {
    background-color: #373737;
}
.schedule-close-btn--lines {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    margin-top: -10px;
    margin-left: -10px;
    width: 20px;
    height: 20px;
}
.schedule-close-btn--lines:before,
.schedule-close-btn--lines:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0%;
    margin-top: -1px;
    width: 20px;
    height: 2px;
    background-color: #ffffff;
    transition: background-color 0.15s ease-in-out;
}
.schedule-close-btn--lines:before {
    transform: rotate(-45deg);
}
.schedule-close-btn--lines:after {
    transform: rotate(45deg);
}

.schedule-module--row-top-content {
    position: relative;
    padding-left: 1rem;
    padding-right: 1rem;
}
.schedule-module--row-top-content.is--left {

}
.schedule-module--row-top-content.is--right {
    display: inline-block;
}
.schedule-module--head-mask {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0%;
    left: 0%;
    cursor: pointer;
    z-index: 3;
}
.schedule-module--row-top-content.is--right .schedule-module--head-mask {
    width: calc(100% + 1rem);
    left: -1rem;
}
.schedule-module--row-top.is--head {
    padding-bottom: 10px;
}
.schedule-module--row-top.is--head > [class^="col-"] {
    padding-left: 0px;
    padding-right: 0px;
}

/*schedule section*/

/*register-section*/
.register-form .row.row--description,
.register-form .row.row--options,
.register-form .row.row--submit {
    margin-top: 40px;
}

.register-form .row.row--options .row {
    margin-top: 14px;
}
.register-form .row.row--options .row:first-child {
    margin-top: 0px;
}
/*register-section*/

/*header and footer*/
.header {
    position: absolute;
    width: 100%;
    top: 0%;
    left: 0%;
    background-color: rgba(0,0,0,0.7);
    z-index: 5;
}
.header-wrapper {
    position: relative;
    padding: 20px 0px;
}

.header-logo svg,
.footer-logo svg {
    max-width: 100%;
    height: auto;
}
.header .menu-social--custom {
    padding-top: 20px;
    text-align: center;
}
.header .menu-social--custom > li > a {
    color: #333333;
}

.header-menu--item:first-child,
.footer-menu--item:first-child {
    margin-top: 0px;
}
.header-menu--item:last-child,
.footer-menu--item:last-child {
    margin-right: 0px;
}

.header-menu--link,
.footer-menu--link {
    display: inline-block;
    vertical-align: middle;
    text-decoration: none;
    border-bottom: 3px solid transparent;
    transition: color 0.4s ease 0s;
    cursor: pointer;
}
.header-menu--link:hover,
.footer-menu--link:hover {
    color: #00d8fc;
}
.header-menu--item.active .header-menu--link,
.footer-menu--item.active .footer-menu--link {
    border-color: #00d8fc;
}

.header-btn-wrapper {
    position: absolute;
    top: 50%;
    transform: translate(0%, -50%);
    right: 1rem;
}
.header-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 46px;
    transition: 0.3s;
    width: 46px;
    background: #373737;
    border-radius: 50%;
}
.header-btn:hover, .header-btn:focus {
    background-color: #0071f9;
    transition: background-color 0.15s ease-in-out;
}
.header-btn--lines {
    display: inline-block;
    height: 2px;
    width: 20px;
    transition: 0.3s;
    background: #ffffff;
    position: relative;
}
.header-btn--lines:before,
.header-btn--lines:after {
    display: inline-block;
    height: 2px;
    width: 20px;
    background: #ffffff;
    content: '';
    position: absolute;
    left: 0;
    transform-origin: 50% 50%;
    transition: top .3s .6s ease, transform .3s ease;
}
.header-btn--lines:before {
    top: 5px;
}
.header-btn--lines:after {
    top: -5px;
}
.header-btn.pressed .header-btn--lines {
    background: transparent;
}
.header-btn.pressed .header-btn--lines:before,
.header-btn.pressed .header-btn--lines:after {
    top: 0;
    transition: top .3s ease, transform .3s .5s ease;
    width: 20px;
}
.header-btn.pressed .header-btn--lines:before {
    transform: rotate3d(0, 0, 1, 45deg);
}
.header-btn.pressed .header-btn--lines:after {
    transform: rotate3d(0, 0, 1, -45deg);
}

.menu-social--custom {
    line-height: 1;
}
.menu-social--custom > li {
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}
.menu-social--custom > li:last-child {
    margin-right: 0px;
}
.menu-social--custom > li > a {
    font-size: 32px;
    text-decoration: none;
    transition: color 0.15s ease-in-out;
}

.footer {
    position: relative;
    color: #ffffff;
    background-color: rgba(0,0,0,0.7);
    z-index: 4;
}
.footer .row--bottom {
    margin-top: 50px;
}
.footer .row--top:first-child,
.footer .row--middle:first-child,
.footer .row--bottom:first-child {
    margin-top: 0px;
}
.footer .copyright {
    font-size: 12px;
    opacity: 0.7;
}
.footer .to-top-wrapper {
    text-align: right;
}
.footer .menu-social--custom > li > a {
    color: #ffffff;
}
.footer .menu-social--custom > li > a:hover {
    color: #00d8fc;
}

html.header-menu--opened .header {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0%;
    left: 0%;
    background-color: #ffffff;
    z-index: 11;
}
html.header-menu--opened .header-wrapper,
html.header-menu--opened .header-wrapper > .container,
html.header-menu--opened .header--row {
    height: 100%;
}
html.header-menu--opened .header-logo path {
    fill: #333333;
}
html.header-menu--opened .header--right {
    display: block;
}

@media screen and (orientation:landscape) {

    html.is-iOS.header-menu--opened .header--right {
        padding-bottom: 100px;
    }

}

@media (min-width: 1px) {

    .header--row {
        display: block;
    }
    .header-logo svg,
    .footer-logo svg,
    .header-logo img,
    .footer-logo img {
        width: 200px;
    }

    .header--left {
        height: 50px;
    }
    .header--right {
        display: none;
        padding-top: 20px;
        height: calc(100% - 50px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
    .header-btn-wrapper {
        display: block;
    }

    .header-menu {
        min-height: calc(100% - 55px);
    }
    .header-menu--item,
    .footer-menu--item {
        display: block;
        margin-top: 15px;
    }

    .header-menu--link {
        font-size: 16px;
        color: #333333;
    }
    .footer-menu--link {
        font-size: 16px;
        color: #ffffff;
    }

    .header .menu-social--custom {
        display: block;
    }

    .footer-wrapper {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .footer .row--middle {
        margin-top: 30px;
    }
    .footer-menu,
    .footer .copyright,
    .footer .menu-social--custom {
        text-align: center;
    }
    .footer .row--middle [class^="col-"] {
        margin-top: 30px;
    }
    .footer .row--middle [class^="col-"]:first-child {
        margin-top: 0px;
    }

}

@media (min-width: 576px) {

    .header-logo svg,
    .footer-logo svg,
    .header-logo img,
    .footer-logo img {
        width: 250px;
    }

    .footer .copyright,
    .footer-menu {
        text-align: left;
    }
    .footer .menu-social--custom {
        text-align: right;
    }
    .footer .menu-social--custom {
        padding-right: 7px; /*(46-32)/2*/
    }
    .footer .row--middle [class^="col-"] {
        margin-top: 0px;
    }

}

@media (min-width: 992px) {

    .header--row {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
    }

    .header-logo svg,
    .footer-logo svg,
    .header-logo img,
    .footer-logo img {
        width: 302px;
    }

    .header--left {
        height: auto;
    }
    .header--right {
        display: block;
        padding-top: 0px;
        height: auto;
        overflow-y: inherit;
        -webkit-overflow-scrolling: auto;
    }
    .header-btn-wrapper {
        display: none;
    }

    .header-menu {
        text-align: right;
        min-height: inherit;
    }
    .header-menu--item,
    .footer-menu--item {
        display: inline-block;
        vertical-align: middle;
        text-align: left;
        margin-top: 0px;
        margin-right: 30px;
        text-transform: uppercase;
    }

    .header-menu--link {
        color: #ffffff;
    }

    .header .menu-social--custom {
        display: none;
    }

    .footer-wrapper {
        padding-top: 140px;
        padding-bottom: 60px;
    }
    .footer .row--middle {
        margin-top: 80px;
    }

}

@media (max-width: 991px) {
    .header-logo .middle-text,
    .footer-logo .middle-text {
        display: none;
    }
}
/*header and footer*/


.top-slider--sub-title {
    margin-bottom: 10px;
    text-transform: uppercase;
}
.top-slider--sub-title:last-child {
    margin-bottom: 0px;
}
.top-slider--content-inside > article p {
    margin-top: 15px;
}
.top-slider--content-inside > article p:first-child {
    margin-top: 0px;
}

.schedule-module--row-top.is--head .table {
    width: 100%;
}
.schedule-module--row-top.is--head .table--cell:nth-child(1) {
    vertical-align: middle;
}
.schedule-module--row-top.is--head .table--cell:nth-child(2) {
    vertical-align: bottom;
}
.schedule-module--row-top.is--head .schedule-module--hr-line {
    position: relative;
    bottom: 25px;
    display: block;
    width: 100%;
    height: 3px;
    background-color: #0071f9;
    transform: scaleX(0);
    transition: transform 0.3s ease-in-out;
    transform-origin: 0% 50%;
}
.schedule-module.module--opened .schedule-module--row-top.is--head .schedule-module--hr-line {
    transform: scaleX(1);
}

.register-section .container--inside {
    padding: 35px 0px;
}

@media (min-width: 480px) {
    .register-section .container--inside {
        padding: 55px 0px;
    }
}

.register-blue-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.register-blue-background--inside {
    height: 100%;
    background-image: linear-gradient(135deg, #0070F9 0%, #00D8FB 100%);
    min-width: calc(100% + 3rem);
    width: calc(100% + 3rem + (100vw - 1140px) / 2);
    margin-left: -2rem;
}

@media (min-width: 992px) {
    .register-blue-background--inside {
        height: 100%;
        background-image: linear-gradient(135deg, #0070F9 0%, #00D8FB 100%);
        min-width: calc(100% + 2rem);
        width: calc(100% + 2rem + (100vw - 1140px) / 2);
        margin-left: -1rem;
    }
}

.register-section .section-title {
    position: relative;
    font-weight: 400;
    line-height: 1.15;
}

.register-section .with-blue-background .title--with-border:before {
    background-color: white;
}

.register-section .with-blue-background label {
    color: white;
}

.register-section .with-blue-background input {
    border-color: white;
}

.register-section .button--small-width {
    letter-spacing: 0.53px;
    font-weight: 400;
}

.register-section .with-blue-background .button--small-width {
    max-width: 255px;
}

@media (min-width: 992px) {
    .container--inside.with-blue-background {
        padding-left: 20px;
    }
    .register-section .container--inside {
        padding-right: 20px;
    }
}

.bordered-title:not(:first-child){
    margin-top: 15px;
}
.bordered-title {
    margin-bottom: 15px;
}

.bordered-title--side {
    flex-grow: 1;
}

.bordered-title--side > div {
    height: 2px;
    background-color: currentColor;
}

.bordered-title--label {
    font-size: 20px;
    line-height: 30px;
    text-transform: uppercase;
}

.checkcontainer {
    display: block;
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    font-size: 16px;
    line-height: 1.5;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.checkcontainer input {
    display: none;
    position: absolute;
    opacity: 0;
    cursor: pointer;
}
.checkcontainer .radiobtn {
    background-color: currentColor;
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    border-radius: 50%;
}
.checkcontainer .radiobtn:after {
    content: "";
    position: absolute;
    display: none;
    top: 9px;
    left: 9px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #0070F9;
}
.checkcontainer input:checked ~ .radiobtn:after {
    display: block;
}