@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,300,600);

/*------------------------------Typography------------------------------------*/

body {
  background-color: #fff;
  color: #333;
  font-family: "Source Sans Pro", sans-serif;
  line-height: 24px;
}

h1, .h1 {
  font-weight: 300;
  line-height: 48px;
}

h2, .h2 {
  font-weight: normal;
  line-height: 36px;
}

h3, .h3 {
  font-weight: 600;
  line-height: 24px;
}

h4, .h4 {
  font-weight: bold;
  line-height: 18px;
}

h1, .h1,
h2,.h2,
h3,.h3 {
  margin-bottom: 24px;
}

hr {
  background-color: #E1E3E6;
  height: 1px;
  margin: 10px 0;
  padding: 0 10px;
}

.text-wrap {
  word-break: break-all;
}

.text-transparent {
    color: rgba(0, 0, 0, 0);
}

.text-gray-darker {
  color: #222 !important;
}

.text-gray-dark {
  color: #333 !important;
}

.text-gray {
  color: #555 !important;
}

.text-gray-light {
  color:  #e1e3e6 !important;
}

.text-gray-lighter {
  color:  #f5f5f5 !important;
}

.fa-21px {
  font-size: 21px !important;
}

/*--------------------------------Tables--------------------------------------*/

.table thead tr th {
  color: #0A568A;
  font-weight: 400;
  cursor: pointer;
}

.table tbody tr td {
  padding: 10px;
}

table.table-hover > tbody > tr:hover {
	background-color: #00558c;
	cursor: pointer;
	color: #f5f5f5;
	-o-transition:.25s;
  -ms-transition:.25s;
  -moz-transition:.25s;
  -webkit-transition:.25s;
  transition:.25s;
}

/*------------------------------Alerts----------------------------------------*/

.alert {
  border-width: 5px;
}

.alert-info {
  background-color: #d9edf7 !important;
  border: none;
  color: #00558c !important;
}

.alert-info .alert-link {
    color: #00558c !important;
}

/*-----------------------------Buttons----------------------------------------*/

.btn {
	border: 1px solid #f5f5f5 !important;
}

.btn.btn-link {
  border: none !important;
}

.btn:hover {
	-o-transition:.5s;
   -ms-transition:.5s;
   -moz-transition:.5s;
   -webkit-transition:.5s;
   transition:.5s;
}

.btn:active {
	background-color: #333 !important;
	color: #fff !important;
}

.btn.btn-primary:hover, .btn.btn-default:hover{
	background-color: #00558c;
	color: white;
}

.btn.btn-link:active, .btn.btn-link:focus {
  background-color: inherit !important;
  color: #00558c !important;
  outline: none !important;
  outline-offset: none !important;
}

.btn-link:hover .fa, .btn-link:focus .fa {
  text-decoration: none;
}

.text-danger .btn.btn-link:active,
.text-danger .btn.btn-link:focus,
.btn.btn-link.text-danger:active,
.btn.btn-link.text-danger:focus {
    background-color: inherit !important;
    color: #ff0000 !important;
    outline: none !important;
    outline-offset: none !important;
}

.btn-lg {
	padding-left: 1.75em;
	padding-right: 1.75em;
	font-size: inherit;
}

/*----------------------Contextual backgrounds--------------------------------*/

.bg-success, .bg-info,
.bg-warning, .bg-danger {
  color: #fff;
}

.list-group-item-success, .list-group-item-info,
.list-group-item-warning, .list-group-item-danger {
  color: #fff;
}

a.list-group-item-success, button.list-group-item-success,
a.list-group-item-info, button.list-group-item-info,
a.list-group-item-warning, button.list-group-item-warning,
a.list-group-item-danger, button.list-group-item-danger {
  color: #fff;
}

a.list-group-item-success:hover, button.list-group-item-success:hover,
a.list-group-item-success:focus, button.list-group-item-success:focus,
a.list-group-item-info:hover, button.list-group-item-info:hover,
a.list-group-item-info:focus, button.list-group-item-info:focus,
a.list-group-item-warning:hover, button.list-group-item-warning:hover,
a.list-group-item-warning:focus, button.list-group-item-warning:focus,
a.list-group-item-danger:hover, button.list-group-item-danger:hover,
a.list-group-item-danger:focus, button.list-group-item-danger:focus {
  color: #f5f5f5;
}

.bg-gray-darker {
  color: #fff;
  background-color: #222 !important;
}

.bg-gray-dark {
  color: #fff;
  background-color: #333 !important;
}

.bg-gray {
  color: #fff;
  background-color: #555 !important;
}

.bg-gray-light {
  background-color:  #e1e3e6 !important;
}

.bg-gray-lighter {
  background-color:  #f5f5f5 !important;
}

/*---------------------------------Forms--------------------------------------*/

.form-container {
    padding: 1.5em;
    padding-bottom: 10px;
    border-radius: 1px;
    margin-bottom: 1.5em;
}

.form-container h4 {
    padding-top: 0px;
    padding-bottom: 0px;
    margin-top: 0px;
    margin-bottom: 1.5em;
}

.form-container label {
    padding-top: 0px;
    padding-bottom: 0px;
    margin-top: 0px;
    margin-bottom: 12px;
}

.form-container .block-label {
    padding-top: 10px;
    padding-bottom: 7px;
    margin-bottom: 1.5em;
}

.form-container .block-label > .form-control {
    margin-top: 0px;
    margin-bottom: 0px;
    margin-right: 5px;
    margin-left: 0px;
}

.form-container .form-control {
    padding-top: 0px;
    margin-top: 0px;
    padding-bottom: 0px;
}

.form-group a + button, .form-group button + a,
.form-group button + button {
  margin-left: 1.5em;
}

.input-group button + button {
  margin-left: 0;
}

.form-control {
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	-ms-border-radius: 2px;
	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-webkit-box-shadow: inset 0 1px 1px 0 rgba(0, 0, 0, 0.075);
}

.has-success .input-group-addon {
  color: #a4d65e;
  background-color: #fff;
}

.has-warning .input-group-addon {
  color:  #f0ad4e;
  background-color: #fff;
}

.has-error .input-group-addon {
  color: #ff0000;
  background-color: #fff;
}

.has-success label,
.has-warning label,
.has-error label {
  color: #333 !important;
}

/* Input Groups */

.input-group-btn > .btn.btn-link {
  border: 1px solid #dee2e6 !important;
}

.input-group-btn:first-child > .btn.btn-link,
.input-group-btn:first-child > .btn-group {
  z-index: 0 !important;
}

.input-group-btn:last-child > .btn.btn-link,
.input-group-btn:last-child > .btn-group {
  z-index: 0 !important;
}

input[type=text]:focus, textarea:focus {
    box-shadow: 0 0 8px rgba(82, 168, 236, .6) !important;
    border: 1px solid #52A8EC !important;
}

/* Button Checkbox */
.block-label input[type="radio"],
.block-label input[type="checkbox"],
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
    position: relative !important;
    margin-left: 0 !important;
    margin-right: 5px !important;
}

.has-error * .block-label {
    border: 1px solid #ff0000;
}


/* International Selectors */

intl-country .form-group, intl-subregion .form-group, intl-phone .form-group {
  margin-bottom: 0;
}

/* Angular */
input.ng-invalid.ng-touched > .control-msg {
    font-size: 13px;
}

input.ng-invalid.ng-touched > .control-msg:before {
    font-family: 'FontAwesome';
    content: '\f057';
    margin-right: 2px;
}

input.ng-invalid.ng-touched .control-label {
    color: #ff0000 !important;
}

input.ng-invalid.ng-touched .form-control {
    border-color: #ff0000;
}

input.ng-invalid.ng-touched * .input-group-btn > i.fa-check-circle::before {
    content: '\f057';
    color: #ff0000;
}

input.ng-invalid.ng-touched * .hint-text {
    display: none;
}

input.ng-invalid.ng-touched * .block-label {
    border: 1px solid #ff0000;
}

.ng-hide.ng-hide-animate {
  display: none !important;
}

/*--------------------------------Loading-------------------------------------*/

.loading-overlay {
	position : absolute;
	background-color: white;
	width: 100%;
	height: 100%;
	margin: auto 0;
	z-index: 1000;
}

.loading-spinner.loading-page {
	position: absolute;
	left: 50%;
	top: 50%;
	margin-top: -50px;
	margin-left: -50px;
	width: 100px;
	height: 100px;
}

.loading-overlay::after {
	position: absolute;
	left: 50%;
	top: 50%;
	margin-top: 70px;
	margin-left: -40px;
	content: 'Loading...';
	font-family: 'Arial';
	font-size: 20px;
}

.loading-spinner {
  width: 20px; height: 20px;
  position: relative;
  display: none;
  border-radius: 50%;
  border: 3px solid transparent;
  border-top-color: #8bc040;
  -webkit-animation: spin 2s linear infinite;
          animation: spin 2s linear infinite;
}

.loading-spinner.visible {
  display: inline-block;
}

.loading-spinner:before {
    content: "";
    position: absolute;
    top: -3px; left: -3px; right: -3px; bottom: -3px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #cf5b33;
    -webkit-animation: spin 3s linear infinite;
            animation: spin 3s linear infinite;
}

.loading-spinner:after {
    content: "";
    position: absolute;
    top: -3px; left: -3px; right: -3px; bottom: -3px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #57a8ad;
    -webkit-animation: spin 1.5s linear infinite;
            animation: spin 1.5s linear infinite;
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

/*----------------------------------Nav---------------------------------------*/

.tab-content {
	padding: 20px;
  padding-top: 40px;
}

.tab-pane .content-section {
    margin-top: -20px;
    margin-left: -20px;
}

.nav-tabs {
	border-bottom: 4px solid #333;
}

.nav-tabs > li.active>a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
	background-color: #333;
	color: #fff;
	border: 1px solid #333;
}

.nav-tabs > li {
	background-color: #f5f5f5;
	border-bottom: 1px solid #333;
}

.nav-tabs > li > a {
	margin: 0;
  padding-right: 2.5em;
  padding-left: 2.5em;
}

.nav-tabs > li > a:hover {
	background-color: #00558c;
	color: #fff;
	-o-transition:.5s;
	 -ms-transition:.5s;
	 -moz-transition:.5s;
	 -webkit-transition:.5s;
	 transition:.5s;
}

.left-nav {
    background-color: #f5f5f5;
    border-radius: 3px;
    -webkit-box-shadow: 3px 3px 3px #f1f1f1;
    -moz-box-shadow: 3px 3px 3px #f1f1f1;
    box-shadow: 3px 3px 3px #f1f1f1;
    list-style: none;
    margin-left: -19px;
    padding: 0px;
}

.left-nav > li {
    padding: 10px 15px;
    cursor: pointer;
}

.left-nav > li:hover {
    background: #333;
    transition: .5s all;
    color: #FFF;
}

.left-nav > li:hover > a {
    color: #FFF;
    text-decoration: none;
}

.left-nav > li.divider {
    border-top: 1px solid #999;
    padding: 0;
    margin: 10px 0;
}

.nav-stacked.nav-pills > li {
  margin-left: 5px;
}

.nav-stacked.nav-pills li > a:focus,
.nav-stacked.nav-pills li > a:hover {
  background-color: #fff;
}

.nav-stacked.nav-pills > li.active {
  margin-left: 0px;
  border-left: 5px solid #333;
}

.nav-stacked.nav-pills li.active > a {
  background: #fff;
  font-weight: bold;
  color: #333;
}

@media (max-width: 500px) {
  .nav-stacked.nav-pills > li,
  .nav-stacked.nav-pills > li.active {
    text-align: left;
    display: block;
    margin-left: 0px;
    border-left: 1px solid #f5f5f5;
    border-right: 1px solid #f5f5f5;
    border-bottom: 1px solid #f5f5f5;
  }
  .nav-stacked.nav-pills li.active > a:before {
    content: "\F068";
    font-family: 'FontAwesome';
    position: absolute;
    right: 0px;
    margin-right: 30px;
  }
}

/* -------------------------------Navbar--------------------------------------*/

.navbar {
	margin-bottom: 0px;
}

.navbar-inverse .navbar-brand {
	background-image: url("../images/logo-full.png");
	background-repeat: no-repeat;
	background-size:contain;
	background-position:center;
	width: 150px;
}

.navbar-default {
	background-color: #f1efe5;
}

.navbar-default .navbar-brand {
	font-size: 32px;
	font-weight: 300;
	padding-left: 20px;
	padding-top: 15px;
}

.navbar-inverse {
	border-bottom: 5px solid #ffe359;
}

/*-------------------------------Modal----------------------------------------*/

.modal-header {
  border-left: 10px solid #ffe359;
  border-bottom: 0;
}

.modal-footer {
  text-align: left;
  border-top: 0;
}


/*----------------------------Progress Bar-------------------------------------*/

progress-bar .progress-bar-link.current-state > .progress-icon-non-clickable,
progress-bar .progress-bar-link.completed-state > .progress-icon-non-clickable {
    color: #fff;
}

progress-bar .progress-bar-link > .progress-icon-non-clickable {
    color: #949494;
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
  progress-bar {
    font-size: 16px;
    font-weight: 300;
  }
  progress-bar .state-progress-bar > li:before {
      top: 25px;
      left: -80px;
      width: 80px;
  }

  progress-bar .state-progress-bar>li {
      width: 40px;
      height: 40px;
      text-align: center;
      line-height: 40px;
      margin: 0 40px;
  }

  progress-bar .progress-label-non-clickable {
      max-width: none;
      font-size: 16px;
  }
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {
  progress-bar {
    font-size: 18px;
    font-weight: 300;
  }
  progress-bar .state-progress-bar > li:before {
      top: 25px;
      left: -100px;
      width: 100px;
  }

  progress-bar .state-progress-bar>li {
      width: 50px;
      height: 50px;
      text-align: center;
      line-height: 50px;
      margin: 0 50px;
  }

  progress-bar .progress-label-non-clickable {
      max-width: none;
      font-size: 16px;
  }
}

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
  progress-bar {
    font-size: 24px;
    font-weight: 300;
  }
  progress-bar .state-progress-bar > li:before {
      top: 25px;
      left: -120px;
      width: 120px;
  }

  progress-bar .state-progress-bar>li {
      width: 60px;
      height: 60px;
      text-align: center;
      line-height: 60px;
      margin: 0 50px;
  }

  progress-bar .progress-label-non-clickable {
      max-width: none;
      font-size: 16px;
  }
}


/*-----------------------------Pagination-------------------------------------*/

.pagination li:first-of-type {
  display: none;
}

.pagination li:last-of-type {
  display: none;
}

.pagination li:first-of-type {
  display: none;
}

.pagination > li > a {
  color: #00558c;
  padding-left: 16px;
  padding-right: 16px;
}

.pagination > .active > a, .pagination > .active > span,
.pagination > .active > a:hover, .pagination > .active > span:hover,
.pagination > .active > a:focus, .pagination > .active > span:focus {
  color: #00558c;
}

/*-----------------------------Accordion--------------------------------------*/

.panel-default {
  border-color: #e1e3e6;
}

.panel-default > .panel-heading {
  color: #333;
  background-color: #e1e3e6;
  border-color: #e1e3e6;
}

.panel.inactive .panel-heading {
  color: #666;
  background-color: #fff !important;
}

.panel.inactive h1,
.panel.inactive h2,
.panel.inactive h3,
.panel.inactive h4,
.panel.inactive h5,
.panel.inactive h6 {
  color: #666 !important;
}

.panel-info {
  border-color: #d9edf7;
}

.panel-info > .panel-heading {
  color: #00558c;
  background-color: #d9edf7;
  border-color: #d9edf7;
}

.panel-group .panel {
  border-radius: 4px;
}

.panel-group .panel + .panel {
  margin-top: 0;
}

/*--------------------------Firefox specific----------------------------------*/
:-moz-ui-invalid {
    box-shadow: none;
}
