@media only screen and (max-width: 1023px) {
.body { width:92%;}
.text-slider { bottom:50px; right:auto; left:50%; transform:translateX(-50%)}
.button { padding-left:0; width:19%;}
.home-buttons { font-size:1.125rem;}
.left-content { width:100%; float:left; padding-right:0;}
.sidebar { width:660px; float:none; clear:both; margin:0 auto;}
.job, .banner { width:300px; margin:0 15px;}
.news-image { width:25%;}

.calendar table thead tr td, .calendar table tr td em { display:none; height:0;}
.calendar table { border-collapse:collapse;}
.calendar table tr td { display:block; width:100%; margin-bottom:2px; text-align:left;}
.calendar table tr td a { height:auto !important; position:relative; line-height: normal; padding:1rem 2rem;}
.calendar table tr td a:before {content: attr(data-title); float: left; opacity: 0.5; color:#ffffff; font-size:.75rem}
.calendar table tr td a span { position:relative; display:block; opacity:1; height:auto; bottom:auto; text-align:left; width:auto; left:auto; margin-left:0; transition:none; padding:0;}
.calendar table tr td a span:after { display:none;}
.calendar table tr td a:hover span {opacity:1; height:auto; bottom:auto;}

.js .menu-wrapper nav[role=navigation] { overflow: hidden; max-height: 0em;}
.js .menu-wrapper nav[role=navigation].active { max-height: 30em; transition: max-height 0.5s ease-out;}
.menu-wrapper { width:100%;}
.menu-wrapper a.menu-link {display: block; width: auto; border: none; margin: 0; text-align:left; line-height:50px; padding-left:0 }
.menu-wrapper a.menu-link:hover { background-color:transparent;}
.ico-caret-down { float:left; width:32px; height:32px; line-height:50px; text-align:center; position:relative;}
.ico-caret-down:before { content:'—'; display:block; position:absolute; top:0; left:0; line-height:44px; text-align:center;width:32px; }
.ico-caret-down:after { content:'—'; display:block; position:absolute; top:0; left:0; line-height:56px; text-align:center;width:32px; }
.menu-wrapper .menu .menu { padding-bottom: 5px;}

.menu-wrapper .menu li { display: block;}
.menu-wrapper .menu li:first-of-type {}
.menu-wrapper .menu > li {padding: 0px; border-bottom: 1px solid #e9e9e9; border-top: none; background:#252525;}
.menu-wrapper .menu > .current-menu-item > a, .menu-wrapper .menu > .current-menu-ancestor > a { border-bottom: 0px solid #ed1c24;}
.menu-wrapper .menu > li + li { }
.menu-wrapper .menu a { padding:0 1rem;  margin: 0px;  border: none; }
.menu-wrapper .menu a:hover {background: #0a2b68; color:#ffffff;}
.menu-wrapper .menu .rightalign { float: none; }
.menu-wrapper li + li a:before {content: "";}
.menu-wrapper li:hover .sub-menu { max-height: 0em; transition: none;}
.menu-wrapper .sub-menu { background: none; margin-left: 0px; margin-top:0; display: block; width: 100%; }
.menu-wrapper .sub-menu li, .menu-wrapper .sub-menu li a { margin: 0; display: block; width: 100%;}
.menu-wrapper .sub-menu li a {padding-left: 0.8em}
.menu-wrapper .menu .has-subnav { position: relative;}
.menu-wrapper li .sub-menu.active { max-height: 30em; overflow: visible; position: relative; z-index: 9; transition: max-height 0.5s ease-out;}
.menu-wrapper .toggle-link {display: block; position: absolute; right: 0px; z-index: 200; font-size: 0em; cursor: pointer; speak: none; font-style: normal; font-weight: normal; line-height: 1;  -webkit-font-smoothing: antialiased;}
.menu-wrapper .toggle-link:hover {transition: all 0.2s;}
.menu-wrapper .menu .has-subnav > .toggle-link:after { content: "↓"; position: absolute; width:50px; height:50px; line-height:50px; text-align:center; top: 50%; bottom: 50%; right:0; font-size:1.5rem; color: #ffffff; font-weight:400; background:#0a2b68}


.inner-sidebar .inner-buttons { width:30%; float:left; padding-bottom:1.5rem;}
.inner-sidebar .banner { width:40%;  float:left; padding-bottom:1.5rem; margin-left:0; margin-right:0}
.inner-sidebar .upcomming  { width:30%;  float:left; padding-bottom:1.5rem; margin-left:0; border:0px solid #e9e6e6; padding-top:0rem}
.inner-sidebar .inner-buttons .button { margin-bottom:0}

.partner { text-align:center}
.cell { margin-left:.5rem; text-align:center; display:inline-block; float:none;}
.partner h4, .course-form h4 { text-align:left; margin-left:0}

/*.cell:nth-of-type(6n+1) { margin-left:1.7rem;}
.cell:nth-of-type(5n+1) { margin-left:0;}*/
}

@media only screen and (max-width: 959px) {
.button { width:49%; margin-bottom:1.5rem; text-align:left;}
.home-buttons { text-align:center;}
.news-image { width:32%;}

.inner-sidebar .inner-buttons { width:calc(100% - 300px);}
.inner-sidebar .banner { width:300px; float:right;}
.inner-sidebar .upcomming  { width:100%; }
.list-news img { width:20%}

.course-form input[type=text] {width:100%; margin-left:0;}
.box { width:49%; float:left; margin-left:2%; margin-bottom:1.5rem}
.box:nth-of-type(4n+1) { margin-left:2%}
.box:nth-of-type(2n+1) { margin-left:0}
}

@media only screen and (max-width: 767px) {
.company-info span { padding-right:0; display:block;}
.sidebar { width:300px; float:none; clear:both; margin:0 auto;}
.job, .banner { width:300px; margin:0;}
.pages { font-size:1.875rem}
.pages a { width:32px; height:32px; -webkit-border-radius:50%; border-radius:50%; background:#e9e6e6; display:inline-block; margin:0 .5rem;  line-height:32px; text-align:center;}
.pages strong {width:32px; height:32px; -webkit-border-radius:50%; border-radius:50%; background:#0a2b68; color:#ffffff; display:inline-block; margin:0 .5rem; line-height:32px; text-align:center;}
.product-image { width:300px; float:none; margin:1.5rem auto}
.product-info { width:100%; float:right; clear:both; padding-left:0; margin-top:3rem}
}

@media only screen and (max-width: 640px) {
.upcomming table tr td { display:block; width:100% !important; clear:both; text-align:left !important;}
.upcomming table tr td a { border:none !important}
.upcomming table tr td img { display:block;}
.upcomming h1, .calendar h2, .calendar table caption, .price  { font-size:2rem}
.news-image { width:40%;}
.news-content { width:60%;}

.inner-sidebar .inner-buttons { width:100%;}
.inner-sidebar .banner { width:100%; float:left; text-align:center}
.inner-sidebar .upcomming  { width:100%; }

.page img { display:none;}
.page .cell img, .list-news img, .partner table tr td img, .contact-image img, .product-image img, .table img { display:block;}
.partner table tr td { display:block; clear:both; width:100%; border-bottom:0px solid #e9e6e6;}
.partner table tr td:first-of-type { width:100%;}
.partner table tr td:last-of-type {border-bottom:5px solid #e9e6e6; padding-top:0}
.partner table tr td img { margin-top:0}
.partner table tr td span {border-left:0px solid #ffffff; border-bottom:1px solid #ffffff; display:block; padding:1.8rem 0 .5rem 1rem; height:100%;}
.partner table tr td:last-of-type span {border-bottom:0px solid #ffffff; padding:.5rem 0 0 1rem;}

.cat-image img { display:inline-block;}
}

@media only screen and (max-width: 599px) {
.logo { width:60%;}
.top-buttons { width:40%;}
.button { width:100%; margin-bottom:1.5rem; display:block;}
.copy, .abc { width:100%; text-align:center; line-height:2}
.news-image { display:none;}
.news-content { width:100%;}
.list-news img { width:35%}
.list-news p.date { margin-bottom:2rem}

.box { width:100%; margin-left:0}
.box:nth-of-type(4n+1) { margin-left:0}
.box:nth-of-type(2n+1) { margin-left:0}
}

@media only screen and (max-width: 400px) {
.text-slider { width:100%; max-width:300px; -webkit-border-radius: 600px 600px 0 0; border-radius: 600px 600px 0 0;}
.sidebar { width:100%; max-width:300px;}
.job, .banner { width:100%; margin:0;}

.pages { font-size:1.25rem; padding-bottom:3rem}
}

@media only screen and (max-width: 320px) {
.product-image { width:100%; float:none; margin:1.5rem auto}
}