﻿/* general */
body,
body * {
  box-sizing: border-box;
}

body {
  margin: 0;
  color: #444;
}

html,
body {
  margin: 0;
  height: 100%;
  min-height: 100%;
}

img {
  border: 0;
}
noscript {
  display: block;
  margin: 1em 0;
  padding: 1em;
  width: 100%;
  background-color: #c9302c;
  color: #fff;
  text-align: center;
}

#content-wrapper {
  min-height: 100%;
  padding-bottom: 65px; /* space for footer*/
  position: relative;
}

#content {
  position: relative;
}

.q-content {
  padding: 2em;
  background-color: #fff;
  line-height: 1.5;
}
.q-content-centered {
  margin: 0 auto;
  max-width: 565px;
}
.q-article {
  margin-bottom: 2em;
  line-height: 1.5;
}

h1,
h2,
h3 {
  margin-top: 0;
}

.page-title {
  font-size: 24px;
  padding: 1em 0.5em;
  margin: 0;
  text-align: center;
  word-wrap: break-word;
}

footer {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  padding: 2em;
}
.footer-content {
  display: table;
  width: 100%;
}
.footer-section {
  display: table-cell;
}
.footer-copy {
  text-align: left;
}
.footer-menu {
  text-align: right;
}
.footer-menu a {
  color: #fff;
  display: inline-block;
  margin-left: 1em;
  text-decoration: none;
}

.text-de-emphasize {
  color: #444;
}
.text-capitalize {
  text-transform: capitalize;
}
.text-bold {
  font-weight: bold;
}
.text-smaller {
  font-size: 80%;
}
.text-no-decoration,
.q-link.text-no-decoration,
.q-link.text-no-decoration:hover {
  text-decoration: none;
}
.text-select-none {
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}
.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-break-word {
  word-wrap: break-word;
}
.text-nowrap {
  white-space: nowrap;
}
.align-middle {
  vertical-align: middle;
}
.outline-none {
  outline: none;
}

.variable-content img,
.variable-content video,
.variable-content audio,
.variable-content embed,
.variable-content object,
.variable-content iframe {
  max-width: 100%;
  border: 0;
}

.q-shadow-box {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
  border: 1px solid #dedede;
  background-color: #fff;
  padding: 1em;
}

.q-notice {
  background-color: #f9edbe;
  padding: 1em;
}
.q-notice-critical {
  background-color: #c9302c;
  color: #fff;
}
.q-notice-critical a.q-link {
  color: #fff;
  text-decoration: underline;
}
.q-notice-critical a.q-link:hover {
  color: #fff;
}
.q-notice-general {
  text-align: center;
}
.q-notice-wrapper:before {
  color: #f9edbe;
}
.q-notice-wrapper-critical:before {
  color: #c9302c;
}
.q-notice-pointer-top {
  position: relative;
}
.q-notice-pointer-top:before {
  content: '\f0d8';
  background: transparent;
  color: #f9edbe;
  position: absolute;
  font-family: FontAwesome;
  font-size: 40px;
  display: inline-block;
  top: -27px;
  left: 1em;
}
.q-notice-pointer-critical:before {
  color: #c9302c;
}

.q-top-buffer,
.q-button-container.q-top-buffer {
  margin-top: 1em;
}
.q-bottom-buffer {
  margin-bottom: 1em;
}
.q-inline-block {
  display: inline-block;
}
.q-block {
  display: block;
}
.q-left-buffer {
  margin-left: 1em;
}
.q-right-buffer {
  margin-right: 1em;
}
.q-bottom-buffer-2x {
  margin-bottom: 2em;
}
.q-top-buffer-2x {
  margin-top: 2em;
}
.q-padding-top {
  padding-top: 1em;
}
.q-padding-bottom {
  padding-bottom: 1em;
}

.q-hide {
  display: none !important;
}
.q-offscreen {
  position: absolute;
  left: -99999px;
  top: -99999px;
}
.q-offscreen-x {
  position: absolute;
  left: -99999px;
}
.q-hide-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.q-full-chrome .q-full-chrome-hide {
  display: none;
}
.q-position-relative {
  position: relative;
}

.q-col-2 {
  width: 50%;
}
.q-col-3 {
  width: 33.3333333333%;
}
.q-col-4 {
  width: 25%;
}
.q-col-5 {
  width: 20%;
}

/*  navigation */
header {
  display: table;
  width: 100%;
}
nav {
  position: absolute;
  top: 0;
  right: 1em;
}
.logo {
  max-height: 60px;
  line-height: 60px; /* match max-height -> alt text displayed will be vertically centered */
  max-width: 275px;
  vertical-align: middle;
}
.logo-container,
.q-nav-trigger-container {
  display: table-cell;
  padding: 0 2em;
}
.logo-container a {
  text-decoration: none;
  display: inline-block;
}
.logo-container a.logo-graphic {
  line-height: 80px;
}
.logo-container a.logo-text {
  padding: 2em 0;
}
.q-nav-trigger-container,
nav {
  text-align: right;
}
.q-nav-item-container {
  text-align: center;
  display: inline-block;
  padding: 1em 0;
  vertical-align: bottom;
}
.q-nav-item-container form {
  margin: 0;
  padding: 0;
}
.q-nav-item-container form button {
  width: 100%;
}
.q-nav-item {
  cursor: pointer;
  font-size: inherit;
  text-decoration: none;
  border: 0;
  background-color: transparent;
  text-align: center;
  display: block;
  margin: 0;
  padding: 1em;
}

.q-nav-text {
  white-space: nowrap;
  font-size: 90%;
}
.q-nav-item .fa {
  display: inline-block;
}
.q-nav-trigger-container {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
}
.q-nav-item-superscript {
  vertical-align: super;
  padding: 0.1em 0.4em;
  border-radius: 50%;
  font-size: 70%;
  font-style: normal;
  display: inline-block;
  background-color: #c9302c;
  color: #fff;
}

#home-page-url {
  max-width: 250px;
  overflow: hidden;
  text-overflow: ellipsis;
}

/*  menu lists */
.q-menu-list {
  list-style-type: none;
  margin: 0 0 1em 0;
  padding: 0;
  max-width: 500px;
}
.q-menu-item {
  display: inline-block;
  position: relative;
}
.q-menu-link {
  padding: 1em;
  display: block;
}
a.q-menu-link {
  text-decoration: none;
  cursor: pointer;
}
a.q-menu-link.q-link:hover {
  text-decoration: none;
}
.q-menu-item.q-menu-selected:after {
  content: '\f0d7';
  background-color: transparent;
  position: absolute;
  font-family: FontAwesome;
  font-size: 40px;
  display: block;
  line-height: 1;
  bottom: -22px;
  width: 100%;
  left: 0;
}

/* infobar */
#infobar {
  position: relative;
  padding: 1em;
  text-align: center;
  color: #fff;
}
#infobar:empty {
  display: none;
}
.q-infobar-normal {
  background-color: #277d27;
}
.q-infobar-warning {
  background-color: #c9302c;
}
#infobar-close {
  color: #fff;
  display: inline-block;
  position: absolute;
  right: 1em;
  top: 1em;
  text-decoration: none;
}
#infobar a,
#infobar a:visited,
#infobar a:hover {
  color: #fff;
  text-decoration: underline;
}

/* loading indicator */
#load-bar {
  min-height: 4px;
  background-color: #fff;
}
.q-load-bar {
  height: 4px;
  width: 100%;
  position: relative;
  overflow: hidden;
  background-color: #fff;
}
.q-load-bar:before {
  display: block;
  position: absolute;
  content: '';
  left: -200px;
  width: 200px;
  height: 4px;
  background-color: #277d27;
  animation: loading 2s linear infinite;
}

@keyframes loading {
  from {
    left: -200px;
    width: 30%;
  }
  50% {
    width: 30%;
  }
  70% {
    width: 70%;
  }
  80% {
    left: 50%;
  }
  95% {
    left: 120%;
  }
  to {
    left: 100%;
  }
}

/* forms */
.q-form input[type='radio'] + label {
  margin-right: 1em;
}
.q-form input[type='radio'] + label,
.q-form input[type='checkbox'] + label {
  margin-left: 0.2em;
}
.q-form input::-ms-clear {
  display: none;
}
.q-form input,
.q-form textarea,
.q-form select {
  padding: 0.5em;
  font-size: 16px; /* ie11 */
  font-size: initial;
  border-radius: 2px;
}
.q-form input[type='checkbox'],
.q-form input[type='radio'] {
  padding: 0;
}
.q-form input[type='text'],
.q-form input[type='password'],
.q-form input[type='email'],
.q-form input[type='search'],
.q-form input[type='tel'],
.q-form input[type='number'],
.q-form textarea {
  -webkit-appearance: none;
  appearance: none;
}
.q-form input[type='text'],
.q-form input[type='password'],
.q-form input[type='email'],
.q-form input[type='search'],
.q-form input[type='tel'],
.q-form textarea,
.q-form select,
.mldd-list {
  width: 500px;
}
.q-form input[type='text'],
.q-form input[type='password'],
.q-form input[type='email'],
.q-form input[type='search'],
.q-form input[type='tel'],
.q-form input[type='number'],
.q-form input[type='date'],
.q-form textarea,
.q-form select {
  color: #444;
  border: 1px solid #c0c0c0;
}
.q-form textarea {
  height: 7em;
}
.q-form select {
  background-color: #fff;
}
.q-form fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}
.q-form input[type='text'].q-middle-initial {
  width: 7.2em;
}
.q-form input[type='tel'].q-phone {
  width: 10em;
}
.q-form select.q-phone {
  width: 11em;
}
.q-form input[type='text'].q-phone-ext {
  width: 5em;
}

.q-form input[type='text'].q-state {
  width: 4em;
}
.q-form input[type='text'].q-zip {
  width: 7em;
}
.q-form .q-check-list-vertical .q-check-list-item {
  display: block;
  margin-bottom: 0.25em;
}
.q-form .q-check-list-horizontal .q-check-list-item {
  display: inline-block;
  margin-right: 0.3em;
}
.q-form input:invalid,
.q-form select:invalid,
.q-form .q-invalid-element,
.q-form .q-invalid-element input {
  background-color: #fbdddd;
}

:-ms-input-placeholder {
  color: #c0c0c0;
  font-weight: 400;
}
::-ms-input-placeholder {
  color: #c0c0c0;
  font-weight: 400;
}
::-webkit-input-placeholder {
  color: #c0c0c0;
  font-weight: 400;
}
::-moz-placeholder {
  color: #c0c0c0;
  font-weight: 400;
}
::placeholder {
  color: #c0c0c0;
  font-weight: 400;
}

.q-form-element-container,
.q-block-container,
.q-button-container {
  margin: 0 0 1.2em 0;
  padding: 0;
  position: relative;
}

.q-form-label {
  display: block;
}
.q-form-label-required:after {
  content: '*';
  color: #c9302c;
  margin-left: 0.2em;
}
.q-form-label-required.q-form-label-required-disabled:after {
  content: '';
  color: transparent;
  display: none;
}

.q-form-element-description {
  color: #6c6c6c;
}

.q-input-wrapper {
  display: inline-block;
  position: relative;
}
input.q-input-with-button {
  padding-right: 2em;
}
.q-input-inner-button {
  border: 0;
  background-color: transparent;
  position: absolute;
  right: 0.5em;
  top: 0;
  height: 100%;
  color: #444;
  cursor: pointer;
}
.q-fileuploader-button {
  cursor: pointer;
}
.q-fileuploader-button .fa {
  margin-right: 0.3em;
}
.q-sms-command {
  font-weight: bold;
  font-size: 110%;
}

/* file list */

.q-filelist:not(:empty) {
  margin-top: 1em;
}
.q-filelist-delete {
  display: inline-block;
  margin-left: 0.3em;
}
.q-filelist-container {
  padding-bottom: 1em;
}
.q-filelist[data-file-limit]:empty::after {
  content: 'Upload up to ' attr(data-file-limit)
    ' photos or files. Drag and drop here to upload.';
  display: block;
  color: #808080;
  margin-top: 1em;
}
input.q-fileuploader-input.q-offscreen {
  top: auto;
}

.q-filelist-item {
  margin: 0 0 0.5em 0;
}

.q-filelist-item-link.q-link {
  margin-top: 0.3em;
  display: inline-block;
}

/* mp3,wav */

.q-filetype-icon::before {
  font-family: FontAwesome;
  font-size: 1em;
  padding: 0.3em;
  content: '\f016'; /* file-o */
  margin-right: 0.3em;
  color: #fff;
  vertical-align: middle;
  background-color: #444;
  border-radius: 2px;
}
.q-filetype-icon[data-ext='jpg']::before,
.q-filetype-icon[data-ext='jpeg']::before,
.q-filetype-icon[data-ext='png']::before,
.q-filetype-icon[data-ext='gif']::before,
.q-filetype-icon[data-ext='bmp']::before,
.q-filetype-icon[data-ext='tif']::before,
.q-filetype-icon[data-ext='tiff']::before {
  content: '\f1c5'; /* file-image-o */
  background-color: #1c85ba;
}

.q-filetype-icon[data-ext='doc']::before,
.q-filetype-icon[data-ext='docx']::before {
  content: '\f1c2'; /* file-word-o */
  background-color: #1c85ba;
}
.q-filetype-icon[data-ext='pdf']::before {
  content: '\f1c1'; /* file-pdf-o */
  background-color: #c9302c;
}

.q-filetype-icon[data-ext='xls']::before,
.q-filetype-icon[data-ext='xlsx']::before,
.q-filetype-icon[data-ext='csv']::before {
  content: '\f1c3'; /* file-excel-o */
  background-color: #277d27;
}

.q-filetype-icon[data-ext='ppt']::before,
.q-filetype-icon[data-ext='pptx']::before {
  content: '\f1c4'; /* file-powerpoint-o */
  background-color: #c9302c;
}

.q-filetype-icon[data-ext='mp4']::before,
.q-filetype-icon[data-ext='mov']::before,
.q-filetype-icon[data-ext='3gp']::before {
  content: '\f1c8'; /* file-video-o */
  background-color: #ec971f;
}

.q-filetype-icon[data-ext='mp3']::before,
.q-filetype-icon[data-ext='wav']::before {
  content: '\f1c7'; /* file-audio-o */
  background-color: #ec971f;
}

/* list items */
.q-list-item {
  padding-left: 1.4em;
  position: relative;
}
.q-list-item-icon {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
.q-list-item-header {
  display: inline-block;
  margin: 0;
  white-space: pre-wrap;
  word-wrap: break-word;
  max-width: 100%;
  overflow: hidden;
}
.q-list-item-text {
  margin: 0;
}

.q-link-list-item {
  margin-bottom: 1em;
  position: relative;
}

/* flexbox */
.q-flex-container {
  display: flex;
  justify-content: space-around;
}
.q-flex-item {
  display: inline-block;
}

/* Sidebar  */

.q-sidebar {
  position: fixed;
  box-sizing: border-box;
  height: 100%;
  width: 400px;
  top: 0;
  right: 0;
  z-index: 1100;
  margin-right: -400px;
  box-shadow: 0 2px 10px rgb(0, 0, 0, 0.2);
}

.q-sidebar-header {
  position: relative;
  padding: 1em;
  background-color: #f0f2f4;
  box-shadow: -0.75px 1.74px 3px rgba(0, 0, 0, 0.2);
}
.q-sidebar-header h1 {
  font-size: 24px;
  padding: 0;
  margin: 0;
  color: #444;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.q-sidebar-button-container {
  display: inline-block;
  position: absolute;
  top: 10%;
  right: 0;
  padding: 10px;
}
.q-sidebar-button {
  color: #c0c0c0;
  font-size: 20px;
  font-weight: bold;
}
.q-sidebar-button:hover {
  text-decoration: none;
  color: #444;
}

.q-sidebar-button + .q-sidebar-button {
  margin-left: 0.4em;
}

.q-sidebar-content {
  padding: 10px;
  overflow: auto;
  background-color: #fff;
  word-break: break-word;
}

.q-sidebar-load-indicator:after {
  display: inline-block;
  content: '';
  height: 16px;
  width: 16px;
  background: url('/qcore/images/progress/indicator.gif');
  background-repeat: no-repeat;
  margin-left: 0.5em;
}

.q-sidebar-animate-open {
  margin-right: 0px;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-name: sidebar-animate-open;
  -webkit-animation-iteration-count: 1;
  -moz-animation-duration: 0.5s;
  -moz-animation-name: sidebar-animate-open;
  -moz-animation-iteration-count: 1;
  animation-duration: 0.5s;
  animation-name: sidebar-animate-open;
  animation-iteration-count: 1;
}
@-webkit-keyframes sidebar-animate-open {
  from {
    margin-right: -400px;
  }
  to {
    margin-right: 0px;
  }
}
@-moz-keyframes sidebar-animate-open {
  from {
    margin-right: -400px;
  }
  to {
    margin-right: 0px;
  }
}
@keyframes sidebar-animate-open {
  from {
    margin-right: -400px;
  }
  to {
    margin-right: 0px;
  }
}

.q-sidebar-animate-close {
  margin-right: -400px;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-name: sidebar-animate-close;
  -webkit-animation-iteration-count: 1;
  -moz-animation-duration: 0.5s;
  -moz-animation-name: sidebar-animate-close;
  -moz-animation-iteration-count: 1;
  animation-duration: 0.5s;
  animation-name: sidebar-animate-close;
  animation-iteration-count: 1;
}
@-webkit-keyframes sidebar-animate-close {
  from {
    margin-right: 0px;
  }
  to {
    margin-right: -400px;
  }
}
@-moz-keyframes sidebar-animate-close {
  from {
    margin-right: 0px;
  }
  to {
    margin-right: -400px;
  }
}
@keyframes sidebar-animate-close {
  from {
    margin-right: 0px;
  }
  to {
    margin-right: -400px;
  }
}

.q-lightbox {
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  box-sizing: border-box;
  z-index: 5001;
  padding: 100px 0 0 0;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.8);
  overflow: hidden;
}
.q-lightbox-toolbar {
  position: fixed;
  top: 0;
  right: 0;
  display: inline-block;
  padding: 1em;
}
.q-lightbox-toolbar-button {
  color: #fff;
  cursor: pointer;
  margin: 0 1em;
}
.q-lightbox-toolbar-button:hover {
  text-decoration: none;
}
.q-lightbox-toolbar-button .fa {
  font-size: 2em;
}
.q-lightbox a {
  outline: none;
}
.q-lightbox img,
.q-lightbox video {
  max-height: 300px;
  max-width: 300px;
  min-height: 50px;
  min-width: 50px;
  max-height: calc(100% - 100px);
  max-width: calc(100% - 40px);
}

/*  request list */
.request-list-search-container {
  padding: 1em 0;
}
.q-request-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-top: 1em;
}
.q-request-list-item {
  display: inline-block;
  position: relative;
  margin: 0 0 2em 0;
  width: 400px;
  padding: 0;
}
.q-request-list-link:hover {
  background-color: #f5f5f5;
}
.q-request-list-link {
  display: block;
  text-decoration: none;
  color: #444;
  padding: 1.5em;
  position: relative;
  height: 100%;
}
.q-request-list-link:visited,
.q-request-list-link:hover,
.q-request-list-link:active,
.q-request-list-link:focus {
  text-decoration: none;
}

#request-list-no-search-results {
  display: flex;
  justify-content: center;
}

/*  request  view  */
.request-view-reason {
  margin-bottom: 0.3em;
  display: inline-block;
  font-weight: bold;
}

/* knowledge base  */

.q-kb-tree > ul {
  list-style-type: none;
}
.q-kb-tree > ul > li {
  font-weight: bold;
}
.q-kb-tree ul ul li {
  font-weight: normal;
}

.q-kb-title {
  margin: 0;
}
.q-kb-article a {
  text-decoration: underline;
}
.q-kb-text {
  margin: 0.5em 0;
}
.q-kb-title,
.q-kb-text,
.q-kb-category {
  word-wrap: break-word;
}
.q-kb-article-link {
  margin-bottom: 1em;
  position: relative;
}
.q-kb-category a:after {
  display: inline-block;
  content: ', ';
  margin-right: 0.2em;
}
.q-kb-category a:last-child:after {
  content: '';
}
.q-kb-list-header {
  text-align: center;
  padding: 1em 1em 0.5em 1em;
  border-bottom: 1px solid #c0c0c0;
}
.q-kb-counter {
  counter-reset: kb-counter;
}
.q-kb-counter .q-kb-article-link {
  counter-increment: kb-counter;
}
.q-kb-counter .q-kb-article-link:before {
  content: counter(kb-counter) '.';
  padding-right: 0.3em;
}
.q-kb-tree-item {
  margin-bottom: 1em;
}
.q-kb-tree-item .q-kb-tree-list {
  margin-top: 1em;
}
.q-kb-feedback
  [data-selection='true']
  .kb-feedback-trigger[data-value='false'] {
  opacity: 0.4;
}
.q-kb-feedback
  [data-selection='false']
  .kb-feedback-trigger[data-value='true'] {
  opacity: 0.4;
}
.q-kb-feedback [data-selection] .kb-feedback-trigger[data-value]:hover {
  opacity: 1;
}
.q-kb-feedback [data-selection='true'] .kb-feedback-trigger[data-value='true'] {
  border-bottom: 1px solid #277d27;
}
.q-kb-feedback
  [data-selection='false']
  .kb-feedback-trigger[data-value='false'] {
  border-bottom: 1px solid #c9302c;
}

/* landing */
.home-content {
  margin: 3em auto;
  text-align: center;
  max-width: 855px;
  word-wrap: break-word;
}
.landing-banner {
  width: 100%;
  height: 333px;
  padding: 3em 10em;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.landing-banner-left {
  margin-top: 3em;
}
.landing-banner-left,
.landing-banner-right {
  width: 49%;
  display: inline-block;
  vertical-align: top;
}
.landing-banner-left {
  text-align: right;
  padding-right: 2em;
}
.landing-banner-right {
  text-align: left;
  padding-left: 2em;
}
.landing-banner-left-inner {
  display: inline-block;
}
.landing-page-title {
  font-size: 24px;
  margin: 0 0 1em 0;
  text-align: center;
}
.landing-launch-container {
  margin: 3em 0;
  width: 100%;
  text-align: center;
}
.landing-launch {
  text-align: center;
  display: inline-block;
}
.landing-launch:nth-child(even) {
  margin-left: 3em;
  margin-right: 3em;
}
.landing-launch-link {
  height: 120px;
  width: 250px;
  display: inline-block;
  padding-top: 35px;
}
.landing-launch-link:hover {
  opacity: 0.95;
}
.landing-launch-text {
  margin-top: 1em;
  font-weight: bold;
}

.app-download-container {
  margin-top: 2em;
  margin-bottom: 2em;
  text-align: center;
}
.app-download-link img {
  max-width: 150px;
}

/* contact */
.contact-list-description {
  margin: 0.5em 0 2em 0;
  padding: 1em;
}
.contact-list {
  margin-bottom: 2em;
}
.contact-list h3 {
  margin: 0 0 0.4em 0;
  font-size: 18px;
}
.contact-type-description {
  margin: 0 0 0.4em 0;
}
.contact-list .contact-icon-twitter {
  color: #55acee;
}
.contact-list .contact-icon-mail {
  color: #fe854d;
}
.contact-list .contact-icon-sms {
  color: #277d27;
}
.contact-list .contact-icon-phone {
  color: #c9302c;
}
.contact-account-container {
  margin-bottom: 0.3em;
}

/* buttons & links */
.q-link,
.q-link:hover,
.q-link:visited,
.q-link:active {
  text-decoration: underline;
}

.q-button-container a,
.q-button-container button {
  display: inline-block;
  margin-right: 1em;
}
.q-button-container .q-link {
  text-decoration: none;
}
.q-button-container .q-link:hover,
.q-button-container .q-link:active {
  text-decoration: underline;
}

/* file uploader */

.q-fileupload-progress-bar-container {
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 50;
  background-color: #f5f5f5;
  padding: 1em;
  vertical-align: middle;
  display: inline-block;
  border-top: 1px solid #ccc;
  text-align: center;
}
.q-fileupload-progress-text {
  vertical-align: middle;
  line-height: 20px;
  margin-right: 10px;
}
.q-fileupload-progress-bar {
  text-align: left;
}
.q-fileupload-progress-innerbar {
  background-color: #277d27;
  color: #ffffff;
  text-align: center;
}

.q-file-drop-target {
  background-color: #fff;
  border: 3px solid #277d27;
  box-sizing: border-box;
  text-align: center;
  color: #277d27;
  font-size: 18px;
  z-index: 50; /* show over map dashboard */
}

.q-file-drop-target-display {
  outline: 0px solid #277d27;
  -webkit-animation-duration: 1.25s;
  -webkit-animation-name: containeroutline;
  -webkit-animation-iteration-count: 2;
  -moz-animation-duration: 1.25s;
  -moz-animation-name: containeroutline;
  -moz-animation-iteration-count: 2;
  animation-duration: 1.25s;
  animation-name: containeroutline;
  animation-iteration-count: 2;
}
@-webkit-keyframes containeroutline {
  from {
    outline-width: 0px;
  }
  50% {
    outline-width: 5px;
  }
  to {
    outline-width: 0px;
  }
}
@-moz-keyframes containeroutline {
  from {
    outline-width: 0px;
  }
  50% {
    outline-width: 5px;
  }
  to {
    outline-width: 0px;
  }
}
@keyframes containeroutline {
  from {
    outline-width: 0px;
  }
  50% {
    outline-width: 5px;
  }
  to {
    outline-width: 0px;
  }
}

/* dialogs */
.q-dialog-type-error .ui-widget-header {
  background-color: #c9302c;
}
.q-dialog-type-error .ui-icon-alert {
  display: none;
}
.q-dialog .ui-dialog-buttonset .ui-button {
  padding: 0.4em 1em;
}
.q-dialog .ui-dialog-buttonset .ui-button-text {
  font-size: 16px;
}
.q-dialog .ui-dialog-content.ui-state-active a.q-link,
.q-dialog .ui-dialog-content.ui-state-active a.q-link:link,
.q-dialog .ui-dialog-content.ui-state-active a.q-link:visited {
  color: #006699;
  text-decoration: underline;
}

/* callout */
.callout_container {
  position: absolute;
  display: block;
  background-color: transparent;
}
.callout_content {
  padding: 1em;
  border: 1px solid #c0c0c0;
  position: relative;
  background-color: #fff;
}
.callout_content h1,
.callout_content h2,
.callout_content h3,
.callout_content h4,
.callout_content h5,
.callout_content h6,
.callout_content p {
  margin-top: 0;
  margin-bottom: 0.5em;
}
.callout_footer1 {
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-top: 14px solid #808080;
  position: relative;
  background: transparent;
  width: 0px;
  height: 0px;
  left: 0px;
  top: -1px;
  margin-left: 20px;
}
.callout_footer2 {
  border-left: 13px solid transparent;
  border-right: 13px solid transparent;
  border-top: 13px solid #fff;
  background: transparent;
  position: relative;
  left: -13px;
  height: 0px;
  width: 0px;
  top: -14px;
}

.callout_topfooter1 {
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-bottom: 14px solid #808080;
  position: absolute;
  width: 0px;
  height: 0px;
  left: 0px;
  top: -13px;
  margin-left: 20px;
}

.callout_topfooter2 {
  border-left: 13px solid transparent;
  border-right: 13px solid transparent;
  border-bottom: 13px solid #fff;
  position: relative;
  left: -13px;
  height: 0px;
  width: 0px;
  top: 1px;
}

.callout_pointer_right .callout_content {
  min-height: 30px;
}
.callout_pointer_right .callout_footer1 {
  position: absolute;
  margin-right: -20px;
  top: 14px;
  right: 0px;
  left: auto;
  transform: rotate(-90deg);
}

.callout_pointer_left .callout_content {
  min-height: 30px;
}
.callout_pointer_left .callout_footer1 {
  position: absolute;
  margin-right: -20px;
  top: 14px;
  right: auto;
  left: -40px;
  transform: rotate(-270deg);
}

.callout_icon {
  position: relative;
  display: inline;
  float: left;
  margin-right: 5px;
}

.callout_warning .callout_content {
  background-color: #c9302c;
  color: #fff;
}
.callout_warning .callout_footer2 {
  border-top-color: #c9302c;
}
.callout_warning .callout_topfooter2 {
  border-bottom-color: #c9302c;
}

.callout_success .callout_content {
  background-color: #277d27;
  color: #fff;
}
.callout_success .callout_footer2 {
  border-top-color: #277d27;
}
.callout_success .callout_topfooter2 {
  border-bottom-color: #277d27;
}

/* maps */
.map {
  height: 300px;
  position: relative;
  border: 1px solid #c0c0c0;
}
.map-container {
  position: relative;
}

#map-infobox .callout_content {
  background-color: #fff;
  padding-right: 3em;
}
#map-infobox .callout_footer2 {
  border-top-color: #fff;
}
#map-infobox .map-infobox-close {
  display: inline-block;
  position: absolute;
  right: 0;
  top: 10px;
  text-decoration: none;
  color: #fff;
  padding: 0.4em;
}
#map-infobox .map-infobox-close:before {
  font-family: FontAwesome;
  content: '\f057';
  display: inline-block;
  color: #c0c0c0;
}
#map-infobox .q-map-link {
  text-decoration: none;
}
#map-infobox .q-map-marker-title {
  color: #444;
  max-width: 350px;
  word-wrap: break-word;
}
#map-infobox .q-map-link-icon {
  margin-left: 0.7em;
  color: #096898;
}

.q-public-notice-map {
  height: 250px;
  position: relative;
  border: 1px solid #c0c0c0;
}
.q-public-notice-body {
  word-break: break-word;
}

/*!
Pure v0.5.0
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
https://github.com/yui/pure/blob/master/LICENSE.md
*/
.pure-button {
  /* Structure */
  display: inline-block;
  *display: inline; /*IE 6/7*/
  zoom: 1;
  line-height: normal;
  white-space: nowrap;
  vertical-align: baseline;
  text-align: center;
  cursor: pointer;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Firefox: Get rid of the inner focus border */
.pure-button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/*csslint outline-none:false*/

.pure-button {
  font-family: inherit;
  font-size: 100%;
  padding: 1em; /*0.5em 1em;*/
  color: #444; /* rgba not supported (IE 8) */
  color: rgba(0, 0, 0, 0.8); /* rgba supported */
  border: none rgba(0, 0, 0, 0); /*IE9 + everything else*/
  background-color: #e6e6e6;
  text-decoration: none;
  border-radius: 2px;
  min-width: 120px;
}

.pure-button-hover,
.pure-button:hover,
.pure-button:focus {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#1a000000',GradientType=0);
  background-image: -webkit-gradient(
    linear,
    0 0,
    0 100%,
    from(transparent),
    color-stop(40%, rgba(0, 0, 0, 0.05)),
    to(rgba(0, 0, 0, 0.1))
  );
  background-image: -webkit-linear-gradient(
    transparent,
    rgba(0, 0, 0, 0.05) 40%,
    rgba(0, 0, 0, 0.1)
  );
  background-image: -moz-linear-gradient(
    top,
    rgba(0, 0, 0, 0.05) 0%,
    rgba(0, 0, 0, 0.1)
  );
  background-image: -o-linear-gradient(
    transparent,
    rgba(0, 0, 0, 0.05) 40%,
    rgba(0, 0, 0, 0.1)
  );
  background-image: linear-gradient(
    transparent,
    rgba(0, 0, 0, 0.05) 40%,
    rgba(0, 0, 0, 0.1)
  );
  text-decoration: none;
}
.pure-button:focus {
  outline: 0;
}
.pure-button-active,
.pure-button:active {
  box-shadow:
    0 0 0 1px rgba(0, 0, 0, 0.15) inset,
    0 0 6px rgba(0, 0, 0, 0.2) inset;
}

.pure-button[disabled],
.pure-button-disabled,
.pure-button-disabled:hover,
.pure-button-disabled:focus,
.pure-button-disabled:active {
  border: none;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  filter: alpha(opacity=40);
  -khtml-opacity: 0.4;
  -moz-opacity: 0.4;
  opacity: 0.4;
  cursor: not-allowed;
  box-shadow: none;
  text-decoration: none;
}

.pure-button-hidden {
  display: none;
}

/* Firefox: Get rid of the inner focus border */
.pure-button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.pure-button-primary,
input[type='submit'].pure-button-primary,
input[type='button'].pure-button-primary,
.pure-button-selected,
a.pure-button-primary,
a.pure-button-selected {
  background-color: #096898; /*rgb(0, 120, 231);*/
  color: #fff;
}

.button-success,
.button-error,
.button-warning,
.button-secondary {
  color: #fff;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
}

a[disabled].button-success,
a[disabled].button-error,
a[disabled].button-warning,
a[disabled].button-secondary {
  color: #fff;
}

.button-success {
  background-color: #277d27; /* #449d44 forest green */
}

.button-error {
  background-color: #c9302c; /* dark red */
}

.button-warning {
  background-color: #ec971f; /* orange */
}

.button-secondary {
  background-color: #31b0d5; /* light blue */
}
.button-light {
  background-color: #ffffff; /* white */
}

.q-mobile-scrollbar::-webkit-scrollbar {
  width: 7px;
  height: 7px;
}
.q-mobile-scrollbar::-webkit-scrollbar-thumb {
  background-color: #c0c0c0;
}

.icon-button-success,
.icon-button-success .fa {
  color: #277d27; /* #449d44 forest green */
}
.icon-button-error,
.icon-button-error .fa {
  color: #c9302c; /* dark red */
}
.icon-button-warning,
.icon-button-warning .fa {
  color: #ec971f; /* orange */
}
.icon-button-secondary,
.icon-button-secondary .fa {
  color: #31b0d5; /* light blue */
}
.icon-button-light,
.icon-button-light .fa {
  color: #ffffff; /* white */
}
.icon-button-primary,
.icon-button-primary .fa {
  color: #096898; /* qscend blue */
}
.icon-button-twitter,
.icon-button-twitter .fa {
  color: #1da1f2;
}
.icon-button-dark,
.icon-button-dark .fa {
  color: #444444;
}
.icon-button-success:hover,
.icon-button-error:hover,
.icon-button-warning:hover,
.icon-button-secondary:hover,
.icon-button-secondary:hover,
.icon-button-light:hover,
.icon-button-primary:hover {
  text-decoration: none;
}

.icon-buffer-right {
  margin-right: 0.3em;
}
.icon-buffer-left {
  margin-left: 0.3em;
}

/* material-design switches */
.q-toggle {
  box-sizing: border-box;
  display: inline-block;
}
.q-toggle-label {
  display: inline-block;
  position: relative;
  width: 40px;
  height: 16px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.26);
  -webkit-transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  vertical-align: middle;
  cursor: pointer;
}
.q-toggle-label + label {
  margin-left: 0.7em;
}
.q-toggle-label::before {
  content: '';
  position: absolute;
  top: -4px;
  left: -4px;
  width: 24px;
  height: 24px;
  background: #fafafa;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
  border-radius: 50%;
  -webkit-transition:
    left 0.28s cubic-bezier(0.4, 0, 0.2, 1),
    background 0.28s cubic-bezier(0.4, 0, 0.2, 1),
    box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  transition:
    left 0.28s cubic-bezier(0.4, 0, 0.2, 1),
    background 0.28s cubic-bezier(0.4, 0, 0.2, 1),
    box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}
.q-toggle-label:active::before {
  box-shadow:
    0 2px 8px rgba(0, 0, 0, 0.28),
    0 0 0 20px rgba(128, 128, 128, 0.1);
}
.q-toggle input[type='checkbox'] {
  position: absolute;
  outline: none;
  top: auto;
  left: -9999px;
}
.q-toggle input:checked + .q-toggle-label {
  background: #b2deb3;
}
.q-toggle input:checked + .q-toggle-label::before {
  left: 20px;
  background: #277d27;
}
.q-toggle input:checked + .q-toggle-label:active::before {
  box-shadow:
    0 2px 8px rgba(0, 0, 0, 0.28),
    0 0 0 20px rgba(0, 150, 136, 0.2);
}

/* fancy checkboxes */
.q-custom-checkbox {
  position: absolute;
  top: auto;
  left: -99999px;
  outline: none;
}
.q-custom-checkbox + label:before {
  font-family: FontAwesome;
  content: '\f00c';
  background-color: #fff;
  color: #fff;
  margin-right: 0.45em;
  display: inline-block;
  border: 1px solid #808080;
  height: 1em;
  width: 1em;
  line-height: 1;
  padding: 0.2em;
  border-radius: 2px;
}
.q-custom-checkbox:checked + label:before {
  background-color: #67c767;
  border-color: #67c767;
  color: #fff;
}
.q-custom-checkbox:focus + label:before {
  box-shadow: 0px 1px 3px 0 #808080;
}

/* mult-level dropdown (request type dropdown) */

.mldd-container {
  display: inline-block;
  position: relative;
}

.mldd-container::after {
  font-family: FontAwesome;
  content: '\f0d7';
  position: absolute;
  right: 6px;
  top: 50%;
  -moz-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

.mldd-input {
  display: inline-block;
  position: relative;
  padding-right: 1.5em !important;
}
.mldd-input::-ms-clear {
  display: none;
}

.mldd-list,
.mldd-list *,
.mldd-container,
.mldd-container * {
  box-sizing: border-box;
}

.mldd-clear-btn {
  display: none;
  position: absolute;
  right: 20px;
  height: 98%;
  height: calc(100% - 2px);
  border: 0;
  background: #fff;
  margin-top: 1px;
  color: #444;
}
.mldd-input-clear-enabled:hover .mldd-clear-btn {
  display: inline-block;
}

.mldd-hide-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.mldd-list {
  position: absolute;
  padding: 0;
  background-color: #fff;
  border: 1px solid #c0c0c0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
  max-height: 320px;
  max-width: 400px;
  overflow: auto;
  -moz-user-select: none;
  user-select: none;
}

.mldd-list ul {
  list-style-type: none;
}

.mldd-root {
  padding-left: 0;
  margin: 0;
}

.mldd-root:empty:after {
  content: 'No matches found';
  display: block;
  font-style: italic;
  padding: 1em;
  text-align: center;
  -moz-user-select: none;
  user-select: none;
}
.mldd-search-results:not(:empty)::before {
  content: 'Search Results';
  display: block;
  text-align: left;
  font-size: 16px;
  padding: 0.4em 1em;
  font-weight: bold;
}

.mldd-list .mldd-category {
  padding-left: 2em;
}

.mldd-list li {
  cursor: pointer;
  position: relative;
}

.mldd-text {
  display: inline-block;
  width: 100%;
  padding: 0.4em 1em;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mldd-text:hover,
.mldd-item-focus > .mldd-text {
  background-color: #cfeff7;
}
.mldd-item-focus,
.mldd-root li:focus {
  outline: none;
}

.mldd-root .mldd-category-parent > .mldd-text::after {
  font-family: 'FontAwesome';
  font-weight: normal;
  content: '\f0d7';
  position: absolute;
  left: 0;
  top: 0;
  padding: 0.4em 0.2em;
  display: inline-block;
  background-color: transparent;
}

.mldd-root .mldd-category-parent.mldd-collapsed > .mldd-text::after {
  transform: rotate(-90deg);
}

.mldd-collapsed > .mldd-category {
  display: none;
}

/* request status */
.status-0 {
  color: #277d27;
}
.status-3 {
  color: #096898;
}
.status-1 {
  color: #c9302c;
}
.status-4 {
  color: #e4911c;
}

.app-download-link {
  text-decoration: none;
  display: inline-block;
}

/*  animations  */

.callout-outline {
  outline: 0px solid #ec971f;
  outline-offset: 0.5em;
  animation-duration: 1s;
  animation-name: calloutoutline;
  animation-iteration-count: 1;
}
@keyframes calloutoutline {
  from {
    outline-width: 5px;
  }
  50% {
    outline-width: 15px;
  }
  to {
    outline-width: 5px;
  }
}

.q-full-chrome .q-nav-animate-open {
  margin-right: 0px;
  animation-duration: 0.5s;
  animation-name: nav-animate-open;
  animation-iteration-count: 1;
}
@keyframes nav-animate-open {
  from {
    margin-right: -200px;
  }
  to {
    margin-right: 0px;
  }
}

.q-full-chrome .q-nav-animate-close {
  margin-right: -200px;
  animation-duration: 0.5s;
  animation-name: nav-animate-close;
  animation-iteration-count: 1;
}
@keyframes nav-animate-close {
  from {
    margin-right: 0px;
  }
  to {
    margin-right: -200px;
  }
}

.q-animate-shake {
  animation: shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  perspective: 1000px;
}
@keyframes shake {
  10%,
  90% {
    transform: translate3d(-1px, 0, 0);
  }

  20%,
  80% {
    transform: translate3d(2px, 0, 0);
  }

  30%,
  50%,
  70% {
    transform: translate3d(-4px, 0, 0);
  }

  40%,
  60% {
    transform: translate3d(4px, 0, 0);
  }
}

.q-animate-spin {
  animation-duration: 0.5s;
  animation-name: spin;
  animation-iteration-count: infinite;
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* unsupported browsers */
.q-unsupported-notice {
  display: none;
}
.q-unsupported .q-unsupported-notice {
  display: block;
  padding: 1em;
  font-weight: bold;
  text-align: center;
}
.q-unsupported .q-col-2 {
  width: 49%;
}
.q-unsupported .q-col-3 {
  width: 32%;
}
.q-unsupported .q-col-4 {
  width: 24%;
}
.q-unsupported .q-col-5 {
  width: 19%;
}

/*  media queries  */

@media (max-width: 736px) {
  .q-form input[type='text'],
  .q-form input[type='password'],
  .q-form input[type='email'],
  .q-form input[type='search'],
  .q-form textarea,
  .q-form select,
  .q-input-wrapper {
    width: 100%;
    max-width: 500px;
  }

  .q-menu-link {
    padding: 1em 0.3em;
  }

  /* requests */
  .q-request-list-item {
    display: block;
  }

  #map-infobox .callout_content {
    font-size: 75%;
  }

  .request-list-search-container {
    display: block;
  }

  /* landing */
  .landing-launch-container {
    display: block;
  }
  .landing-launch {
    margin-bottom: 2em;
    display: block;
  }
  .landing-banner {
    padding: 1em;
  }
  .landing-page-title {
    display: none;
  }

  /* footer */
  .footer-section {
    display: block;
    text-align: center;
  }
}

@media (max-width: 1024px) {
  /* navigation */
  #home-page-url {
    max-width: 170px;
  }

  .q-full-chrome nav {
    position: fixed;
    top: 0;
    right: 0;
    margin-right: -200px;
    width: 200px;
    z-index: 1001;
    height: 100%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
  }
  .q-full-chrome .q-nav-item-container {
    display: block;
    padding: 0;
  }
  .q-full-chrome .q-nav-list {
    padding-top: 1em;
  }
  .q-full-chrome nav .q-nav-item {
    padding: 1em;
  }
  .q-full-chrome nav .q-nav-text {
    font-size: initial;
  }
  .q-full-chrome .q-nav-item .fa {
    display: block;
    font-size: 90%;
  }
  .q-full-chrome .q-nav-item .fa {
    font-size: 1.6em;
  }

  .q-full-chrome .q-nav-trigger-container {
    display: inline-block;
    padding: 1em;
  }

  .app-download-link {
    display: block;
    margin-bottom: 1em;
  }
  .app-download-link.q-right-buffer {
    margin-right: 0;
  }
  .landing-banner-screenshot {
    max-width: 200px;
  }
  .landing-launch:nth-child(even) {
    margin-left: 1em;
    margin-right: 1em;
  }
  #infobar {
    padding: 1em 2em;
  }
  .home-content {
    padding: 0 2em;
  }

  .mldd-list li {
    line-height: 1.5;
  }
}

@media (max-width: 480px) {
  .landing-banner-screenshot {
    max-width: 130px;
    margin-top: 1em;
  }
  .q-content {
    padding: 1em;
  }
}

/* embedded mode */
.q-no-chrome header,
.q-no-chrome footer,
.q-no-chrome .page-title,
.q-no-chrome .q-no-chrome-hide {
  display: none;
}
.q-no-chrome .page-title.page-title-no-chrome {
  background-color: inherit;
  color: inherit;
  display: block;
}
.q-no-chrome .q-nav-item {
  padding: 1em;
}
.q-no-chrome .q-content {
  padding-top: 0;
}
.q-no-chrome nav {
  position: relative;
  text-align: center;
  top: auto;
  right: auto;
}
