/*
Theme Name: CS-I
Author: Mike Burns
Description: CS-I / AERIAL theme
Version: 1.0
Text Domain: csi
*/

.print-only {
  display:none!important;
}
* {
  font-family: 'Source Sans Pro', sans-serif;
}
html, body {
  margin:0;
  padding:0;
  background:#eee;
}
a, .blue  {
  color:#00a0e3;
  border-color:#00a0e3;
}
.gray {
  color:#666;
  border-color:#666;
}
.dark-gray {
  color:#2b2a29;
  border-color:#2b2a29;
}
.light-gray {
  color:#b2b3b3;
  border-color:#b2b3b3;
}
.full-width {
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  position:relative;
}
.hidden {
  display:none;
}
.align-left {
  text-align:left;
}
.align-center {
  text-align:center;
}
.align-right {
  text-align:right;
}
small {
  font-size:0.666em;
}

/* WP aligns */
.alignright {
  float: right;
  margin: 0.5em 0 0.5em 1em;
}
.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

input[type=text], input[type=number], input[type=email], input[type=password], textarea {
  outline:none;
  padding:7.5px;
  box-sizing:border-box;
  font-size:1.05em;
  color:#b2b3b3;
  border:1px solid #888;
  -moz-appearance: textfield;
}
input[type=text]:focus, input[type=number]:focus, input[type=email]:focus, input[type=password]:focus, textarea:focus {
  color:#2b2a29;
  border-color:#00a0e3;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type=button], input[type=submit], input[type=reset], button, .button {
  outline:none;
  border:0;
  height:45px;
  padding:0 15px;
  display:inline-block;
  background:#b2b3b3;
  color:#666;
  cursor:pointer;
  font-weight:600;
  font-size:1.05em;
  text-transform:uppercase;
  text-decoration:none;
  line-height:45px;
}
input[type=button].rounded, input[type=submit].rounded, input[type=reset].rounded, button.rounded, .button.rounded {
  -webkit-border-radius: 30px;
  border-radius: 30px;
}
input[type=button].small, input[type=submit].small, input[type=reset].small, button.small, .button.small {
  height:25px;
  line-height:25px;
  font-size:0.8em;
}
input[type=button]:hover, input[type=submit]:hover, input[type=reset]:hover, button:hover, .button:hover {
  background:#666;
  color:#2b2a29;
}
input[type=submit], button[type=submit], .button.primary, button.primary {
  background:#00a0e3;
  color:#fff;
}
button:hover, .button:hover, input[type=submit]:hover, button[type=submit]:hover {
  outline: none;
  border: 2px solid #00a0e3;
  background: #fff;
  color: #00a0e3;

}

/* buttons that have text + icon */
input[type=button].has-icon > *, input[type=submit].has-icon > *, input[type=reset].has-icon > *, button.has-icon > *, .button.has-icon > * {
  height:45px;
  line-height:45px;
  display:block;
  float:left;
}
select {
  height:30px;
  line-height:30px;
  width:214px;
}

.error, .success {
  display:none;
  color:#cc0000;
  margin:15px 0;
  font-size:1.1em;
  font-weight:bold;
}
.success {
  color:#61B329;
}

.clickable {
  cursor:pointer;
}
.clickable:hover {
  color:#000;
}

/* tables */
body.logged-in main table {
  margin:30px 0;
  width:100%;
  border-collapse:collapse;
}

/* overlays */
#modal-bg {
  width:100%;
  height:100%;
  background:rgba(0, 0, 0, 0.6);
  position:fixed;
  top:0;
  left:0;
  z-index:1000;
  display:none;
}
.overlay {
  z-index:1001;
  background:#fff;
  position:fixed;
  top:-999px;
  left:-999px;
}
.overlay > .inner {
  position:relative;
}
.overlay > .inner > .close {
  position:absolute;
  top:0;
  right:0;
  width:45px;
  height:45px;
  line-height:45px;
  text-align:center;
  font-size:2em;
}
.overlay > .inner > .title {
  height:45px;
  line-height:45px;
  padding:0 60px 0 15px;
  font-size:1.5em;
  color:#00a0e3;
  font-weight:300;
}
.overlay > .inner > .content {
  padding:15px;
}

/* waiting animation */
div.waiting {
  background:url('./img/waiting.svg');
  background-size:contain;
  height:45px;
  width:45px;
  margin:30px auto;
  display:none!important;
}
button > div.waiting {
  display:none!important;
}
div.waiting.white {
  background-image:url('./img/waiting-white.svg');
  background-repeat:no-repeat;
}
button > div.waiting {
  margin:0 0 0 10px;
  width:25px;
}
button.has-icon > * {
  display:inline-block!important;
  height:25px!important;
  line-height:25px!important;
}
button.waiting > div.waiting {
  display:inline-block!important;
}

/* panels */
.panels {
  width:100%;
  text-align:center;
}
.panels > div {
  display:none;
}
.panels > div.current {
  display:block;
}

/* main navigation / header */
nav {
  width:100%;
  height:60px;
  z-index:100;
  background:#fff;
  padding:0 10px;
  box-sizing:border-box;
}
body.admin-bar nav {
  top:32px;
}
@media screen and (max-width: 782px) {
  body.admin-bar nav {
    top:46px;
  }
}
#logo {
  display:block;
  position:absolute;
  top:0;
  left:0;
  z-index:10;
}
#logo > img {
  display:block;
  height: 80px;
  box-shadow: 0 0 5px 0 rgba(0,0,0,.5);
}

@media screen and (max-width: 599px) {
  #menu-button {
    height:60px;
    width:60px;
    float:right;
    text-align:center;
    line-height:60px;
    font-size:2em;
  }
  a#notifications {
    height:60px;
    line-height:60px;
    float:right;
    text-decoration:none;
  }
  nav .menu {
    display:none;
    position:absolute;
    left:-10px;
    top:60px;
    width:calc(100% + 20px);
    margin-top:60px;
    z-index:5;
    margin:0;
    padding:0;
    list-style:none;
    background:#fff;
    border-bottom:1px solid #666;
    -webkit-box-shadow: 0 5px 5px 0 rgba(0,0,0,0.5);
    box-shadow: 0 5px 5px 0 rgba(0,0,0,0.5);
    text-align:right;
  }
  nav .menu li > a {
    display:block;
    height:60px;
    line-height:60px;
    padding:0 15px;
    text-decoration:none;
    border-top:1px solid #666;
  }
  nav .menu li.menu-item-has-children > a {
    display:none;
  }
  nav .menu .sub-menu {
    padding:0;
    margin:0;
  }
}

header > .header-image {
  display:none;
  width:100%;
  height:250px;
  background-size:cover;
  background-position:center;
}
header > .full-width {
  padding:30px 15px 0 10px;
  box-sizing:border-box;
}
header > .full-width > h1 {
  font-weight:500;
  color:#00a0e3;
  margin:0;
  font-size: 2.5em;
  letter-spacing:-0.025em;
}
header > .full-width > h2 {
  font-weight:100;
  margin:0;
  color:#aaa;
  font-size: 2.5em;
  line-height: 1.0em;
}

/* footer */
footer {
  text-align:center;
  background:#fff;
  margin-top:45px;
}
footer.fixed {
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
}
#menu-footer-menu {
  list-style:none;
  margin:0;
  padding:0;
  background:#aaa;
  height:50px;
}
#menu-footer-menu > li {
  display:inline-block;
}
#menu-footer-menu > li > a {
  display:block;
  height:50px;
  padding:0 15px;
  text-decoration:none;
  text-transform:uppercase;
  color:#fff;
  line-height:50px;
  letter-spacing: 0.05em;
}
#menu-footer-menu > li > a:hover {
  color:#00a0e3;
}
#footer-logos {
  max-width:800px;
  margin:auto;
  padding:15px;
}
#back-to-top {
  display:none;
  position:fixed;
  height:45px;
  width:45px;
  bottom:15px;
  right:15px;
  background:#ccc;
  color:#fff;
  line-height:45px;
  text-align:center;
  font-size:1.8em;
  -webkit-box-shadow: 0 0 15px 0 rgba(0,0,0,0.5);
  box-shadow: 0 0 15px 0 rgba(0,0,0,0.5);
}
#back-to-top:hover {
  background:#00a0e3;
}

/* main content */
main#main-content {
  width:100%;
  padding:0 10px;
  box-sizing: border-box;
  position:relative;
}
main#main-content > h3 {
  font-weight:100;
  font-size: 2.45em;
}
main#main-content > p {
  line-height:1.3em;
  font-size:1.5em;
}
main#main-content img {
  max-width:100%;
  height:auto;
}
.csi-article-content ul {
  font-size: 1.5em;
}
.text-question > form > ul {
  font-size: inherit;
}

/* widgets */
aside#main-sidebar {
  display:block;
  text-align:center;
}
aside#main-sidebar > .widget {
  vertical-align:top;
  text-align:left;
  padding:5px;
  width:calc(100% - 10px);
  box-sizing:border-box;
  display:inline-block;
  margin:15px 5px;
}
aside#main-sidebar > .widget > .widget-title {
  font-size:1.45em;
  font-weight:100;
  margin-bottom:7.5px;
}
aside#main-sidebar > .widget > .widget-content {
  background:#fff;
  padding:7.5px;
}

#loginform  > p > label,
#loginform  > p > input[type=text],
#loginform  > p > input[type=password] {
  display:block;
  margin-bottom:7.5px;
}

/* frontpage slider */
#frontpage-slider {
  width:100%;
  height:400px;
  overflow:hidden;
  position:relative;
}
#frontpage-slider > .background {
  height:400px;
  position:relative;
  opacity:0.8;
}
#frontpage-slider > .background > div {
  position:absolute;
  width:100%;
  height:400px;
  top:0;
  left:0;
  background-position:center;
  background-size:cover;
}
#frontpage-slider > .foreground {
  position:absolute;
  width:100%;
  height:400px;
  text-align:center;
  top:0;
  left:0;
  padding-top:100px;
}
#frontpage-slider > .foreground > div {
  color:#fff;
  font-size:3em;
  text-shadow:0 0 15px black;
}
#frontpage-slider > .foreground > a {
  margin-top:10px;
}

/* slider control */
.csi-slider {
  margin-bottom:30px;
}
.csi-slider > .text {
  height:45px;
  position:relative;
}
.csi-slider > .text > .min {
  position:absolute;
  top:0;
  left:0;
}
.csi-slider > .text > .mid {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  text-align:center;
}
.csi-slider > .text > .max {
  position:absolute;
  top:0;
  right:0;
}
.csi-slider .ui-slider {
  height:25px;
  width:calc(100% - 60px);
  background:#ccc;
  position:relative;
  margin:auto;
  cursor:pointer;
}
.csi-slider .ui-slider > .ui-slider-handle {
  height:45px;
  position:absolute;
  top:-10px;
  left:0;
  width:30px;
  background:#00a0e3;
  margin-left:-15px;
  cursor:pointer;
}
.csi-slider > .value {
  text-align:center;
  font-weight:100;
  font-size:2em;
  margin:30px 0;
}

/* accordion */
.ui-accordion-header {
  font-size:1.3em;
  font-weight:300;
  padding:15px 15px 15px 45px;
  position:relative;
  border-bottom:1px solid #a0a0a0;
  cursor:pointer;
  background:#fff;
  color:#999;
}
.ui-accordion-header-active {
  background:#00a0e3;
  color:#fff;
  border-bottom:none;
}
.ui-icon {
  font-family:csi-icons;
}
.ui-accordion-header-icon.ui-icon {
  position:absolute;
  left:15px;
  top:15px;
}
.ui-accordion-header-icon.ui-icon-triangle-1-e:before {
  content: "\6e";
}
.ui-accordion-header-icon.ui-icon-triangle-1-s:before {
  content: "\6c";
}
.ui-accordion-content {
  padding:15px;
  border-bottom:1px solid #a0a0a0;
}

/* swiper */
.swiper-button-disabled {
  display:none;
}

/* add to home screen */
.ath-container {
  background:#fff!important;
  -webkit-box-shadow: 0 0 20px 0 rgba(0,0,0,0.7)!important;
  box-shadow: 0 0 20px 0 rgba(0,0,0,0.7)!important;
}
.ath-phone:after,
.ath-tablet:after {
  background:#fff!important;
  bottom:-1.1em!important;
}

#debug {
  z-index:9999;
  position:fixed;
  top:0;
  left:0;
  padding:15px;
  background:red;
  color:white;
  opacity:0.75;
}

/* pop-up dialog */
.ui-dialog {
  background:#fff;
  -webkit-box-shadow: 0 0 15px 0 rgba(0,0,0,0.5);
  box-shadow: 0 0 15px 0 rgba(0,0,0,0.5);
}
.ui-dialog-titlebar {
  background:#00a0e3;
  color:#fff;
  font-weight:bold;
  padding:7.5px 15px;
  height:30px;
  line-height:30px;
}
.ui-dialog-content {
  padding:15px;
  max-height:350px;
  overflow-y:auto;
}
.ui-dialog .ui-dialog-titlebar button {
  right:0;
  position: absolute;
  background: transparent;
  color: #fff;
  top:0;
}
.ui-dialog .ui-dialog-titlebar .ui-button-text {
  display:none;
}

/* joyride */
.joyride-next-tip,
.joyride-next-tip:hover,
.joyride-next-tip:active {
  background:#00a0e3!important;
  color:#fff!important;
  border:none!important;
}

#take-tour-again {
  text-decoration:none;
  font-size:2em;
  position:absolute;
  top:-25px;
  right:15px;
}

/* show/hide */
div.show-hide > a {
  display:block;
  margin-bottom:7.5px;
}
div.show-hide > a.show {
  display:block;
}
div.show-hide > .contents {
  background:#fff;
  padding:10px;
  margin:7.5px 15px;
}
div.show-hide > .contents,
div.show-hide> a.hide,
div.show-hide.active > a.show {
  display:none;
}
div.show-hide.active > .contents,
div.show-hide.active > a.hide {
  display:block;
}

/* e-coach hinweis */
.ecoach-hinweis,
.border-box {
  font-size: 1.5em;
  font-weight: 100;
  border: 7.5px solid #ccc;
  padding: 15px;
}