@import url('https://fonts.googleapis.com/css?family=Roboto|Work+Sans');

/*****************************************************************************/
/*                                 GLOBALS                                   */
/*****************************************************************************/

html
{
  height: 100%;
}

body
{
  height: 100%;
  font-family: 'Roboto', sans-serif;
  padding: 0;
  margin: 0;
}

.fill {
  /* Firefox */
  min-height: -moz-calc(100% - 139px);
  /* WebKit */
  min-height: -webkit-calc(100% - 139px);
  /* Opera */
  min-height: -o-calc(100% - 139px);
  /* Standard */
  min-height: calc(100% - 139px);
}

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

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

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

.hidden.text {
  color: white;
  margin: 0;
  display: inline;
  font-size: 0px;
  height: 0;
}

.no-underline-hover:hover, .no-underline-hover a:hover {
  text-decoration:none;
}

.global-full-height {
  min-height: calc(100vh - 66px - 90px);
}

.global-border-sides {
  border-left: 1px solid black;
  border-right: 1px solid black;
}

.global-no-border {
  border: none;
}

.global-inline {
  display: inline;
}

.global-button {
  padding: 5px 20px 5px 20px;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 1.0rem;
  border-radius: 2px;
}


/*****************************************************************************/
/*                              NAVIGATION BAR                               */
/*****************************************************************************/

.global-navbar-wrapper {
  margin-bottom: 0;
  background: white;
  border-top: 0px !important;
  border-left: 0px !important;
  border-right: 0px !important;
  border-bottom: 5px solid white;
  font-family: "Work Sans", sans-serif;
  border-left: 0;
  border-right: 0;
}

.global-navbar-logo {
  max-height: 35px;
  max-width: 220px;
  padding: 0;
  margin: 0;
  display: inline-block;
}

.navbar-nav > li{
  margin-left: 10px;
  margin-right: 10px;
  font-size: 1em;
}


/*****************************************************************************/
/*                                  FOOTER                                   */
/*****************************************************************************/

.footer {
  height: 90px;
  display: flex;
  align-items: center;
  border-top: 5px solid white;
}

.footer-body {
  width: 100%;
}

.footer-logo {
  float: left;
}

.footer-menu {
  float: right;
  padding-top: 5px;
}

.footer-menu a,
.footer-menu span {
  padding: 0 10px;
  font-size: 14px;
}

@media screen and (max-width: 768px) {
  .footer-logo {
    padding-top: 10px;
  }
  
  .footer-menu {
    padding: 5px;
    width: 100%;
  }
  
  .footer-menu a,
  .footer-menu span {
    padding: 0 10px 0 0;
  }
}


/*****************************************************************************/
/*                                  FONTS                                    */
/*****************************************************************************/

.font-work-sans {
  font-family: "Work Sans", sans-serif !important;
}

.font-roboto {
  font-family: "Roboto", sans-serif !important;
}

.font-weight-bold {
  font-weight: 900 !important;
}

.font-weight-normal {
  font-weight: normal !important;
}


/*****************************************************************************/
/*                               FONT SIZES                                  */
/*****************************************************************************/

.font-size-12  { font-size: 0.75rem  !important; }
.font-size-14  { font-size: 0.875rem !important; }
.font-size-16  { font-size: 1rem     !important; }
.font-size-18  { font-size: 1.125rem !important; }
.font-size-20  { font-size: 1.25rem  !important; }
.font-size-22  { font-size: 1.375rem !important; }
.font-size-24  { font-size: 1.5rem   !important; }
.font-size-26  { font-size: 1.625rem !important; }
.font-size-28  { font-size: 1.75rem  !important; }
.font-size-30  { font-size: 1.875rem !important; }
.font-size-32  { font-size: 2rem     !important; }
.font-size-36  { font-size: 2.25rem  !important; }
.font-size-38  { font-size: 2.375rem !important; }
.font-size-40  { font-size: 2.5rem   !important; }
.font-size-48  { font-size: 3rem     !important; }
.font-size-56  { font-size: 3.5rem   !important; }
.font-size-58  { font-size: 3.675rem !important; }
.font-size-64  { font-size: 4rem     !important; }
.font-size-144 { font-size: 9rem     !important; }


/*****************************************************************************/
/*                              FORM ELEMENTS                                */
/*****************************************************************************/

/* CUSTOM RADIO & CHECKBOXES
   http://stackoverflow.com/a/17541916/383904 */
.rad,
.ckb{
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}
.rad > input,
.ckb > input{ /* HIDE ORG RADIO & CHECKBOX */
  visibility: hidden;
  position: absolute;
}
/* RADIO & CHECKBOX STYLES */
.rad > i,
.ckb > i{     /* DEFAULT <i> STYLE */
  display: inline-block;
  vertical-align: middle;
  /*width:  16px;
  height: 16px;*/
  /*width: 100%;*/
  width: 25px;
  height: 20px;
  border-radius: 0%;
  transition: 0.2s;
  box-shadow: inset 0 0 0 8px #fff;
  border: 1px solid gray;
  background: gray;
}
/* CHECKBOX OVERWRITE STYLES */
.ckb > i {
  width: 35px;
  border-radius: 0px;
  background-color: #E7E7E7;
  box-shadow: inset 0 0 0 2px #fff;
}
.rad:hover > i{ /* HOVER <i> STYLE */
  box-shadow: inset 0 0 0 3px #fff;
  background: gray;
}
.rad > input:checked + i{ /* (RADIO CHECKED) <i> STYLE */
  box-shadow: inset 0 0 0 3px #fff;
  background: orange;
}
/* CHECKBOX */
.ckb > input + i:after{
  content: "";
  display: block;
  height: 14px;
  width:  14px;
  margin: 2px;
  border-radius: inherit;
  transition: inherit;
  background: gray;
}
.ckb > input:checked + i:after{ /* (RADIO CHECKED) <i> STYLE */
  margin-left: 17px;
  background:  orange;
}


/*****************************************************************************/
/*                                 MARGINS                                   */
/*****************************************************************************/

.margin-sides-auto { margin-left: auto !important; margin-right: auto !important; }

.margin-top-0  { margin-top: 0px  !important; }
.margin-top-5  { margin-top: 5px  !important; }
.margin-top-10 { margin-top: 10px !important; }
.margin-top-15 { margin-top: 15px !important; }
.margin-top-20 { margin-top: 20px !important; }
.margin-top-25 { margin-top: 25px !important; }
.margin-top-30 { margin-top: 30px !important; }
.margin-top-35 { margin-top: 35px !important; }
.margin-top-40 { margin-top: 40px !important; }

.margin-right-0  { margin-right: 0px  !important; }
.margin-right-5  { margin-right: 5px  !important; }
.margin-right-10 { margin-right: 10px !important; }
.margin-right-15 { margin-right: 15px !important; }
.margin-right-20 { margin-right: 20px !important; }
.margin-right-25 { margin-right: 25px !important; }
.margin-right-30 { margin-right: 30px !important; }
.margin-right-35 { margin-right: 35px !important; }
.margin-right-40 { margin-right: 40px !important; }

.margin-bottom-0  { margin-bottom: 0px  !important; }
.margin-bottom-5  { margin-bottom: 5px  !important; }
.margin-bottom-10 { margin-bottom: 10px !important; }
.margin-bottom-15 { margin-bottom: 15px !important; }
.margin-bottom-20 { margin-bottom: 20px !important; }
.margin-bottom-25 { margin-bottom: 25px !important; }
.margin-bottom-30 { margin-bottom: 30px !important; }
.margin-bottom-35 { margin-bottom: 35px !important; }
.margin-bottom-40 { margin-bottom: 40px !important; }

.margin-left-0  { margin-left: 0px  !important; }
.margin-left-5  { margin-left: 5px  !important; }
.margin-left-10 { margin-left: 10px !important; }
.margin-left-15 { margin-left: 15px !important; }
.margin-left-20 { margin-left: 20px !important; }
.margin-left-25 { margin-left: 25px !important; }
.margin-left-30 { margin-left: 30px !important; }
.margin-left-35 { margin-left: 35px !important; }
.margin-left-40 { margin-left: 40px !important; }

.margin-0  { margin: 0px  !important; }
.margin-5  { margin: 5px  !important; }
.margin-10 { margin: 10px !important; }
.margin-15 { margin: 15px !important; }
.margin-20 { margin: 20px !important; }
.margin-25 { margin: 25px !important; }
.margin-30 { margin: 30px !important; }
.margin-35 { margin: 35px !important; }
.margin-40 { margin: 40px !important; }

.padding-top-0  { padding-top: 0px  !important; }
.padding-top-5  { padding-top: 5px  !important; }
.padding-top-10 { padding-top: 10px !important; }
.padding-top-15 { padding-top: 15px !important; }
.padding-top-20 { padding-top: 20px !important; }
.padding-top-25 { padding-top: 25px !important; }
.padding-top-30 { padding-top: 30px !important; }
.padding-top-35 { padding-top: 35px !important; }
.padding-top-40 { padding-top: 40px !important; }

.padding-right-0  { padding-right: 0px  !important; }
.padding-right-5  { padding-right: 5px  !important; }
.padding-right-10 { padding-right: 10px !important; }
.padding-right-15 { padding-right: 15px !important; }
.padding-right-20 { padding-right: 20px !important; }
.padding-right-25 { padding-right: 25px !important; }
.padding-right-30 { padding-right: 30px !important; }
.padding-right-35 { padding-right: 35px !important; }
.padding-right-40 { padding-right: 40px !important; }

.padding-bottom-0  { padding-bottom: 0px  !important; }
.padding-bottom-5  { padding-bottom: 5px  !important; }
.padding-bottom-10 { padding-bottom: 10px !important; }
.padding-bottom-15 { padding-bottom: 15px !important; }
.padding-bottom-20 { padding-bottom: 20px !important; }
.padding-bottom-25 { padding-bottom: 25px !important; }
.padding-bottom-30 { padding-bottom: 30px !important; }
.padding-bottom-35 { padding-bottom: 35px !important; }
.padding-bottom-40 { padding-bottom: 40px !important; }

.padding-left-0  { padding-left: 0px  !important; }
.padding-left-5  { padding-left: 5px  !important; }
.padding-left-10 { padding-left: 10px !important; }
.padding-left-15 { padding-left: 15px !important; }
.padding-left-20 { padding-left: 20px !important; }
.padding-left-25 { padding-left: 25px !important; }
.padding-left-30 { padding-left: 30px !important; }
.padding-left-35 { padding-left: 35px !important; }
.padding-left-40 { padding-left: 40px !important; }

.padding-0  { padding: 0px  !important; }
.padding-5  { padding: 5px  !important; }
.padding-10 { padding: 10px !important; }
.padding-15 { padding: 15px !important; }
.padding-20 { padding: 20px !important; }
.padding-25 { padding: 25px !important; }
.padding-30 { padding: 30px !important; }
.padding-35 { padding: 35px !important; }
.padding-40 { padding: 40px !important; }


/*****************************************************************************/
/*                           BOOTSTRAP OVERRIDES                             */
/*****************************************************************************/

.row {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.navbar {
  border-radius: 0 !important;
}

button {
  border: 0 !important;
}

.breadcrumb {
  margin: 0;
  border-radius: 0 !important;
}