/* ===== FONTS ===== */
@font-face{font-family:"TSFont";src:url("fonts/ts_light.woff") format("woff");font-weight:300}
@font-face{font-family:"TSFont";src:url("fonts/ts_regular.woff") format("woff");font-weight:400}
@font-face{font-family:"TSFont";src:url("fonts/ts_medium.woff") format("woff");font-weight:500}
@font-face{font-family:"TSFont";src:url("fonts/ts_semibold.woff") format("woff");font-weight:700}

/* ===== RESET ===== */
html,body{width:100%}
*{box-sizing:border-box}
*:before,*:after{box-sizing:border-box}
html{font-size:62.5%;-webkit-tap-highlight-color:transparent}
body{font-family:"TSFont",Arial,Helvetica,sans-serif;font-size:15px;color:#222;background:#fff;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;display:flex;flex-direction:column}
body > header,body > .keyvisual,body > footer{flex:0 0 auto}
body > .main{flex:1 0 auto}
a{color:#009fe9;font-size:18px;text-decoration:none;transition:color .1s ease-in-out}
a:hover{color:#8c8c8c;text-decoration:none}
h2{font-size:30px;font-weight:400;margin:0 0 20px;padding:0;line-height:32px}
h3{font-size:18px;font-weight:500;margin:0 0 10px}
p{font-size:15px;line-height:18px;margin:20px 0}
ul{padding:0 0 0 25px;margin:0 0 20px}
label{font-weight:400;display:inline-block;max-width:100%;margin-bottom:5px}
img{vertical-align:middle;border:0}

/* ===== GRID ===== */
.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}
.container:after{content:"";display:table;clear:both}
.row{margin-left:-15px;margin-right:-15px}
.row:after{content:"";display:table;clear:both}
[class*=col-]{position:relative;min-height:1px;padding-left:15px;padding-right:15px}
.col-md-12,.col-md-6,.col-sm-4,.col-sm-8{float:left}
.col-md-6{width:50%}.col-md-12{width:100%}.col-sm-4{width:33.33333%}.col-sm-8{width:66.66667%}.col-sm-offset-4{margin-left:33.33333%}
@media(min-width:768px){.container{width:750px}.col-sm-4,.col-sm-8{float:left}}
@media(min-width:992px){.container{width:969px}}
@media(min-width:1280px){.container{width:1256px}}

/* ===== FORMS ===== */
.form-control{display:block;width:100%;height:36px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#666;background:#fff;border:1px solid #fff;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.075);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;float:left}
.form-control:focus{border-color:transparent;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(0,0,0,.6)}
.form-control::-moz-placeholder{color:#999;opacity:1}
.form-control:-ms-input-placeholder{color:#999}
.form-control::-webkit-input-placeholder{color:#999}
.form-group{margin-bottom:15px}
.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}
.form-horizontal .form-group:after{content:"";display:table;clear:both}
@media(min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}

/* checkbox custom */
input[type=checkbox].css-checkbox{position:absolute;z-index:-1000;left:-1000px;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}
input[type=checkbox].css-checkbox+label.css-label{padding-left:30px;height:20px;display:inline-block;line-height:20px;background:url(images/icons/checkbox.png) no-repeat 0 0;font-size:15px;vertical-align:middle;cursor:pointer}
input[type=checkbox].css-checkbox:checked+label.css-label{background-position:0 -20px}

/* ===== BUTTONS ===== */
.btn{position:relative;background:#009fe9;color:#fff;border:0;border-radius:10px;font-size:17px;font-weight:500;padding:7px 5px 5px;text-align:center;min-width:100px;transition:background .1s ease-in-out;cursor:pointer;display:inline-block;text-decoration:none}
.btn:hover{color:#fff;background:#a8d6e9}
.btn-send{padding:7px 50px 5px 20px;font-family:"TSFont",Arial,Helvetica,sans-serif}
.btn-send:after{position:absolute;content:"";background:url(images/icons/more.svg) no-repeat;width:23px;height:23px;right:20px;top:6px}

/* ===== ALERTS ===== */
.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}
.alert-danger{color:#a94442;background:#f2dede;border-color:#ebccd1}
.validation-summary-errors,.validation-summary-errors li{color:red}

/* ===== HAMBURGER MENU (pure CSS) ===== */
#menu-toggle{display:none}
.hamburger{display:none;position:absolute;right:15px;top:23px;width:24px;height:22px;background:url(images/icons/hamburger.png) no-repeat;cursor:pointer;z-index:1001}
@media(max-width:991px){
  .hamburger{display:block}
  .top-links ul{display:none;position:absolute;right:0;top:70px;width:140px;background:#eee;padding:15px;z-index:1000}
  .top-links ul li{width:100%}
  .top-links ul li:first-child a{background:url(images/icons/bullet.png) no-repeat left center}
  #menu-toggle:checked~header .top-links ul,
  #menu-toggle:checked~.top-links ul{display:block!important}
}

/* ===== HEADER ===== */
header{width:100%;float:left;height:100px}
header .row{position:relative}
.logo{float:left;margin-left:-168px}
.logo a{display:block;margin-top:8px}
.logo svg{height:84px!important;width:215px!important}
.top-links{float:right;background:#eee;padding:7px 0}
.top-links ul{padding:0;margin:0}
.top-links ul li{float:left;list-style:none}
.top-links ul li a{font-size:14px;color:#8c8c8c;padding:0 24px;font-weight:500;background:url(images/icons/bullet.png) no-repeat left center;transition:color .1s ease-in-out}
.top-links ul li:first-child a{background:none}
.top-links ul li a:hover{color:#009fe9}

/* ===== KEYVISUAL ===== */
.keyvisual{float:left;width:100%;height:120px;background:#0fb1e6 url(images/bg/keyvisual-bg.png) no-repeat center top}
.keyvisual h1{color:#fff;font-weight:400;font-size:50px;text-shadow:1px 1px 1px rgba(0,0,0,.35);line-height:50px;padding:0;margin:32px 0 0}

/* ===== MAIN ===== */
.main{float:left;width:100%;min-height:580px;margin-top:50px;padding-bottom:30px}
.main ul{padding:0 0 0 25px;margin:0 0 20px}
.main ul li{list-style:none;padding:0 0 0 14px;background:url(images/icons/black-bullet.png) no-repeat left center;line-height:22px}
.login-box{padding:15px 100px 10px 20px;background:#d4edff;margin-bottom:45px}

/* ===== FOOTER ===== */
footer{float:left;width:100%;padding:20px 0 15px;background:#25a9e0;border-top:5px solid #a8d6e9}
.footer-links{display:flex;flex-wrap:wrap;justify-content:space-between;color:#fff;font-size:14px}
.footer-links a{color:#fff;font-size:14px}
.footer-links a:hover{text-decoration:underline}

/* ===== RESPONSIVE ===== */
@media(max-width:1500px){.logo{margin-left:-82px}}
@media(max-width:1280px){.login-box{padding:15px 25px 10px 20px}}
@media(max-width:991px){
  header{height:80px}
  .login-box{padding:15px 100px 10px 20px}
  .logo{margin-left:0}.logo svg{height:60px!important;width:160px!important}.logo a{margin-top:10px}
  .main{margin-top:30px}
  .top-links ul li:first-child a{background:url(images/icons/bullet.png) no-repeat left center}
}
@media(max-width:768px){
  .login-box{padding:15px 20px 10px;margin-bottom:30px}
  h2{font-size:28px}
  .keyvisual{background:#0fb1e6 url(images/bg/keyvisual-bg.png) no-repeat -438px top}
  .col-md-6{width:100%;float:none}
  .col-sm-4,.col-sm-8{width:100%;float:none}
  .col-sm-offset-4{margin-left:0}
  .form-horizontal .control-label{text-align:left;padding-top:0}
}