@charset "UTF-8";
/* Overrides for foundation variables */
/* Markers used by wiredep to inject sass files of bower.json dependencies */
/*!
 *  Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url("../fonts/fontawesome-webfont.eot?v=4.5.0");
  src: url("../fonts/fontawesome-webfont.eot?#iefix&v=4.5.0") format("embedded-opentype"), url("../fonts/fontawesome-webfont.woff2?v=4.5.0") format("woff2"), url("../fonts/fontawesome-webfont.woff?v=4.5.0") format("woff"), url("../fonts/fontawesome-webfont.ttf?v=4.5.0") format("truetype"), url("../fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal;
}

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-fw {
  width: 1.28571em;
  text-align: center;
}

.fa-ul {
  padding-left: 0;
  margin-left: 2.14286em;
  list-style-type: none;
}

.fa-ul > li {
  position: relative;
}

.fa-li {
  position: absolute;
  left: -2.14286em;
  width: 2.14286em;
  top: 0.14286em;
  text-align: center;
}

.fa-li.fa-lg {
  left: -1.85714em;
}

.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eee;
  border-radius: .1em;
}

.fa-pull-left {
  float: left;
}

.fa-pull-right {
  float: right;
}

.fa.fa-pull-left {
  margin-right: .3em;
}

.fa.fa-pull-right {
  margin-left: .3em;
}

/* Deprecated as of 4.4.0 */
.pull-right {
  float: right;
}

.pull-left {
  float: left;
}

.fa.pull-left {
  margin-right: .3em;
}

.fa.pull-right {
  margin-left: .3em;
}

.fa-spin {
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  animation: fa-spin 1s infinite steps(8);
}

@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}

.fa-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  transform: rotate(90deg);
}

.fa-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  transform: rotate(180deg);
}

.fa-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0);
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  transform: scale(1, -1);
}

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}

.fa-stack-1x, .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: #fff;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "";
}

.fa-music:before {
  content: "";
}

.fa-search:before {
  content: "";
}

.fa-envelope-o:before {
  content: "";
}

.fa-heart:before {
  content: "";
}

.fa-star:before {
  content: "";
}

.fa-star-o:before {
  content: "";
}

.fa-user:before {
  content: "";
}

.fa-film:before {
  content: "";
}

.fa-th-large:before {
  content: "";
}

.fa-th:before {
  content: "";
}

.fa-th-list:before {
  content: "";
}

.fa-check:before {
  content: "";
}

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "";
}

.fa-search-plus:before {
  content: "";
}

.fa-search-minus:before {
  content: "";
}

.fa-power-off:before {
  content: "";
}

.fa-signal:before {
  content: "";
}

.fa-gear:before,
.fa-cog:before {
  content: "";
}

.fa-trash-o:before {
  content: "";
}

.fa-home:before {
  content: "";
}

.fa-file-o:before {
  content: "";
}

.fa-clock-o:before {
  content: "";
}

.fa-road:before {
  content: "";
}

.fa-download:before {
  content: "";
}

.fa-arrow-circle-o-down:before {
  content: "";
}

.fa-arrow-circle-o-up:before {
  content: "";
}

.fa-inbox:before {
  content: "";
}

.fa-play-circle-o:before {
  content: "";
}

.fa-rotate-right:before,
.fa-repeat:before {
  content: "";
}

.fa-refresh:before {
  content: "";
}

.fa-list-alt:before {
  content: "";
}

.fa-lock:before {
  content: "";
}

.fa-flag:before {
  content: "";
}

.fa-headphones:before {
  content: "";
}

.fa-volume-off:before {
  content: "";
}

.fa-volume-down:before {
  content: "";
}

.fa-volume-up:before {
  content: "";
}

.fa-qrcode:before {
  content: "";
}

.fa-barcode:before {
  content: "";
}

.fa-tag:before {
  content: "";
}

.fa-tags:before {
  content: "";
}

.fa-book:before {
  content: "";
}

.fa-bookmark:before {
  content: "";
}

.fa-print:before {
  content: "";
}

.fa-camera:before {
  content: "";
}

.fa-font:before {
  content: "";
}

.fa-bold:before {
  content: "";
}

.fa-italic:before {
  content: "";
}

.fa-text-height:before {
  content: "";
}

.fa-text-width:before {
  content: "";
}

.fa-align-left:before {
  content: "";
}

.fa-align-center:before {
  content: "";
}

.fa-align-right:before {
  content: "";
}

.fa-align-justify:before {
  content: "";
}

.fa-list:before {
  content: "";
}

.fa-dedent:before,
.fa-outdent:before {
  content: "";
}

.fa-indent:before {
  content: "";
}

.fa-video-camera:before {
  content: "";
}

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "";
}

.fa-pencil:before {
  content: "";
}

.fa-map-marker:before {
  content: "";
}

.fa-adjust:before {
  content: "";
}

.fa-tint:before {
  content: "";
}

.fa-edit:before,
.fa-pencil-square-o:before {
  content: "";
}

.fa-share-square-o:before {
  content: "";
}

.fa-check-square-o:before {
  content: "";
}

.fa-arrows:before {
  content: "";
}

.fa-step-backward:before {
  content: "";
}

.fa-fast-backward:before {
  content: "";
}

.fa-backward:before {
  content: "";
}

.fa-play:before {
  content: "";
}

.fa-pause:before {
  content: "";
}

.fa-stop:before {
  content: "";
}

.fa-forward:before {
  content: "";
}

.fa-fast-forward:before {
  content: "";
}

.fa-step-forward:before {
  content: "";
}

.fa-eject:before {
  content: "";
}

.fa-chevron-left:before {
  content: "";
}

.fa-chevron-right:before {
  content: "";
}

.fa-plus-circle:before {
  content: "";
}

.fa-minus-circle:before {
  content: "";
}

.fa-times-circle:before {
  content: "";
}

.fa-check-circle:before {
  content: "";
}

.fa-question-circle:before {
  content: "";
}

.fa-info-circle:before {
  content: "";
}

.fa-crosshairs:before {
  content: "";
}

.fa-times-circle-o:before {
  content: "";
}

.fa-check-circle-o:before {
  content: "";
}

.fa-ban:before {
  content: "";
}

.fa-arrow-left:before {
  content: "";
}

.fa-arrow-right:before {
  content: "";
}

.fa-arrow-up:before {
  content: "";
}

.fa-arrow-down:before {
  content: "";
}

.fa-mail-forward:before,
.fa-share:before {
  content: "";
}

.fa-expand:before {
  content: "";
}

.fa-compress:before {
  content: "";
}

.fa-plus:before {
  content: "";
}

.fa-minus:before {
  content: "";
}

.fa-asterisk:before {
  content: "";
}

.fa-exclamation-circle:before {
  content: "";
}

.fa-gift:before {
  content: "";
}

.fa-leaf:before {
  content: "";
}

.fa-fire:before {
  content: "";
}

.fa-eye:before {
  content: "";
}

.fa-eye-slash:before {
  content: "";
}

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "";
}

.fa-plane:before {
  content: "";
}

.fa-calendar:before {
  content: "";
}

.fa-random:before {
  content: "";
}

.fa-comment:before {
  content: "";
}

.fa-magnet:before {
  content: "";
}

.fa-chevron-up:before {
  content: "";
}

.fa-chevron-down:before {
  content: "";
}

.fa-retweet:before {
  content: "";
}

.fa-shopping-cart:before {
  content: "";
}

.fa-folder:before {
  content: "";
}

.fa-folder-open:before {
  content: "";
}

.fa-arrows-v:before {
  content: "";
}

.fa-arrows-h:before {
  content: "";
}

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "";
}

.fa-twitter-square:before {
  content: "";
}

.fa-facebook-square:before {
  content: "";
}

.fa-camera-retro:before {
  content: "";
}

.fa-key:before {
  content: "";
}

.fa-gears:before,
.fa-cogs:before {
  content: "";
}

.fa-comments:before {
  content: "";
}

.fa-thumbs-o-up:before {
  content: "";
}

.fa-thumbs-o-down:before {
  content: "";
}

.fa-star-half:before {
  content: "";
}

.fa-heart-o:before {
  content: "";
}

.fa-sign-out:before {
  content: "";
}

.fa-linkedin-square:before {
  content: "";
}

.fa-thumb-tack:before {
  content: "";
}

.fa-external-link:before {
  content: "";
}

.fa-sign-in:before {
  content: "";
}

.fa-trophy:before {
  content: "";
}

.fa-github-square:before {
  content: "";
}

.fa-upload:before {
  content: "";
}

.fa-lemon-o:before {
  content: "";
}

.fa-phone:before {
  content: "";
}

.fa-square-o:before {
  content: "";
}

.fa-bookmark-o:before {
  content: "";
}

.fa-phone-square:before {
  content: "";
}

.fa-twitter:before {
  content: "";
}

.fa-facebook-f:before,
.fa-facebook:before {
  content: "";
}

.fa-github:before {
  content: "";
}

.fa-unlock:before {
  content: "";
}

.fa-credit-card:before {
  content: "";
}

.fa-feed:before,
.fa-rss:before {
  content: "";
}

.fa-hdd-o:before {
  content: "";
}

.fa-bullhorn:before {
  content: "";
}

.fa-bell:before {
  content: "";
}

.fa-certificate:before {
  content: "";
}

.fa-hand-o-right:before {
  content: "";
}

.fa-hand-o-left:before {
  content: "";
}

.fa-hand-o-up:before {
  content: "";
}

.fa-hand-o-down:before {
  content: "";
}

.fa-arrow-circle-left:before {
  content: "";
}

.fa-arrow-circle-right:before {
  content: "";
}

.fa-arrow-circle-up:before {
  content: "";
}

.fa-arrow-circle-down:before {
  content: "";
}

.fa-globe:before {
  content: "";
}

.fa-wrench:before {
  content: "";
}

.fa-tasks:before {
  content: "";
}

.fa-filter:before {
  content: "";
}

.fa-briefcase:before {
  content: "";
}

.fa-arrows-alt:before {
  content: "";
}

.fa-group:before,
.fa-users:before {
  content: "";
}

.fa-chain:before,
.fa-link:before {
  content: "";
}

.fa-cloud:before {
  content: "";
}

.fa-flask:before {
  content: "";
}

.fa-cut:before,
.fa-scissors:before {
  content: "";
}

.fa-copy:before,
.fa-files-o:before {
  content: "";
}

.fa-paperclip:before {
  content: "";
}

.fa-save:before,
.fa-floppy-o:before {
  content: "";
}

.fa-square:before {
  content: "";
}

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "";
}

.fa-list-ul:before {
  content: "";
}

.fa-list-ol:before {
  content: "";
}

.fa-strikethrough:before {
  content: "";
}

.fa-underline:before {
  content: "";
}

.fa-table:before {
  content: "";
}

.fa-magic:before {
  content: "";
}

.fa-truck:before {
  content: "";
}

.fa-pinterest:before {
  content: "";
}

.fa-pinterest-square:before {
  content: "";
}

.fa-google-plus-square:before {
  content: "";
}

.fa-google-plus:before {
  content: "";
}

.fa-money:before {
  content: "";
}

.fa-caret-down:before {
  content: "";
}

.fa-caret-up:before {
  content: "";
}

.fa-caret-left:before {
  content: "";
}

.fa-caret-right:before {
  content: "";
}

.fa-columns:before {
  content: "";
}

.fa-unsorted:before,
.fa-sort:before {
  content: "";
}

.fa-sort-down:before,
.fa-sort-desc:before {
  content: "";
}

.fa-sort-up:before,
.fa-sort-asc:before {
  content: "";
}

.fa-envelope:before {
  content: "";
}

.fa-linkedin:before {
  content: "";
}

.fa-rotate-left:before,
.fa-undo:before {
  content: "";
}

.fa-legal:before,
.fa-gavel:before {
  content: "";
}

.fa-dashboard:before,
.fa-tachometer:before {
  content: "";
}

.fa-comment-o:before {
  content: "";
}

.fa-comments-o:before {
  content: "";
}

.fa-flash:before,
.fa-bolt:before {
  content: "";
}

.fa-sitemap:before {
  content: "";
}

.fa-umbrella:before {
  content: "";
}

.fa-paste:before,
.fa-clipboard:before {
  content: "";
}

.fa-lightbulb-o:before {
  content: "";
}

.fa-exchange:before {
  content: "";
}

.fa-cloud-download:before {
  content: "";
}

.fa-cloud-upload:before {
  content: "";
}

.fa-user-md:before {
  content: "";
}

.fa-stethoscope:before {
  content: "";
}

.fa-suitcase:before {
  content: "";
}

.fa-bell-o:before {
  content: "";
}

.fa-coffee:before {
  content: "";
}

.fa-cutlery:before {
  content: "";
}

.fa-file-text-o:before {
  content: "";
}

.fa-building-o:before {
  content: "";
}

.fa-hospital-o:before {
  content: "";
}

.fa-ambulance:before {
  content: "";
}

.fa-medkit:before {
  content: "";
}

.fa-fighter-jet:before {
  content: "";
}

.fa-beer:before {
  content: "";
}

.fa-h-square:before {
  content: "";
}

.fa-plus-square:before {
  content: "";
}

.fa-angle-double-left:before {
  content: "";
}

.fa-angle-double-right:before {
  content: "";
}

.fa-angle-double-up:before {
  content: "";
}

.fa-angle-double-down:before {
  content: "";
}

.fa-angle-left:before {
  content: "";
}

.fa-angle-right:before {
  content: "";
}

.fa-angle-up:before {
  content: "";
}

.fa-angle-down:before {
  content: "";
}

.fa-desktop:before {
  content: "";
}

.fa-laptop:before {
  content: "";
}

.fa-tablet:before {
  content: "";
}

.fa-mobile-phone:before,
.fa-mobile:before {
  content: "";
}

.fa-circle-o:before {
  content: "";
}

.fa-quote-left:before {
  content: "";
}

.fa-quote-right:before {
  content: "";
}

.fa-spinner:before {
  content: "";
}

.fa-circle:before {
  content: "";
}

.fa-mail-reply:before,
.fa-reply:before {
  content: "";
}

.fa-github-alt:before {
  content: "";
}

.fa-folder-o:before {
  content: "";
}

.fa-folder-open-o:before {
  content: "";
}

.fa-smile-o:before {
  content: "";
}

.fa-frown-o:before {
  content: "";
}

.fa-meh-o:before {
  content: "";
}

.fa-gamepad:before {
  content: "";
}

.fa-keyboard-o:before {
  content: "";
}

.fa-flag-o:before {
  content: "";
}

.fa-flag-checkered:before {
  content: "";
}

.fa-terminal:before {
  content: "";
}

.fa-code:before {
  content: "";
}

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "";
}

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "";
}

.fa-location-arrow:before {
  content: "";
}

.fa-crop:before {
  content: "";
}

.fa-code-fork:before {
  content: "";
}

.fa-unlink:before,
.fa-chain-broken:before {
  content: "";
}

.fa-question:before {
  content: "";
}

.fa-info:before {
  content: "";
}

.fa-exclamation:before {
  content: "";
}

.fa-superscript:before {
  content: "";
}

.fa-subscript:before {
  content: "";
}

.fa-eraser:before {
  content: "";
}

.fa-puzzle-piece:before {
  content: "";
}

.fa-microphone:before {
  content: "";
}

.fa-microphone-slash:before {
  content: "";
}

.fa-shield:before {
  content: "";
}

.fa-calendar-o:before {
  content: "";
}

.fa-fire-extinguisher:before {
  content: "";
}

.fa-rocket:before {
  content: "";
}

.fa-maxcdn:before {
  content: "";
}

.fa-chevron-circle-left:before {
  content: "";
}

.fa-chevron-circle-right:before {
  content: "";
}

.fa-chevron-circle-up:before {
  content: "";
}

.fa-chevron-circle-down:before {
  content: "";
}

.fa-html5:before {
  content: "";
}

.fa-css3:before {
  content: "";
}

.fa-anchor:before {
  content: "";
}

.fa-unlock-alt:before {
  content: "";
}

.fa-bullseye:before {
  content: "";
}

.fa-ellipsis-h:before {
  content: "";
}

.fa-ellipsis-v:before {
  content: "";
}

.fa-rss-square:before {
  content: "";
}

.fa-play-circle:before {
  content: "";
}

.fa-ticket:before {
  content: "";
}

.fa-minus-square:before {
  content: "";
}

.fa-minus-square-o:before {
  content: "";
}

.fa-level-up:before {
  content: "";
}

.fa-level-down:before {
  content: "";
}

.fa-check-square:before {
  content: "";
}

.fa-pencil-square:before {
  content: "";
}

.fa-external-link-square:before {
  content: "";
}

.fa-share-square:before {
  content: "";
}

.fa-compass:before {
  content: "";
}

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "";
}

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "";
}

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "";
}

.fa-euro:before,
.fa-eur:before {
  content: "";
}

.fa-gbp:before {
  content: "";
}

.fa-dollar:before,
.fa-usd:before {
  content: "";
}

.fa-rupee:before,
.fa-inr:before {
  content: "";
}

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "";
}

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "";
}

.fa-won:before,
.fa-krw:before {
  content: "";
}

.fa-bitcoin:before,
.fa-btc:before {
  content: "";
}

.fa-file:before {
  content: "";
}

.fa-file-text:before {
  content: "";
}

.fa-sort-alpha-asc:before {
  content: "";
}

.fa-sort-alpha-desc:before {
  content: "";
}

.fa-sort-amount-asc:before {
  content: "";
}

.fa-sort-amount-desc:before {
  content: "";
}

.fa-sort-numeric-asc:before {
  content: "";
}

.fa-sort-numeric-desc:before {
  content: "";
}

.fa-thumbs-up:before {
  content: "";
}

.fa-thumbs-down:before {
  content: "";
}

.fa-youtube-square:before {
  content: "";
}

.fa-youtube:before {
  content: "";
}

.fa-xing:before {
  content: "";
}

.fa-xing-square:before {
  content: "";
}

.fa-youtube-play:before {
  content: "";
}

.fa-dropbox:before {
  content: "";
}

.fa-stack-overflow:before {
  content: "";
}

.fa-instagram:before {
  content: "";
}

.fa-flickr:before {
  content: "";
}

.fa-adn:before {
  content: "";
}

.fa-bitbucket:before {
  content: "";
}

.fa-bitbucket-square:before {
  content: "";
}

.fa-tumblr:before {
  content: "";
}

.fa-tumblr-square:before {
  content: "";
}

.fa-long-arrow-down:before {
  content: "";
}

.fa-long-arrow-up:before {
  content: "";
}

.fa-long-arrow-left:before {
  content: "";
}

.fa-long-arrow-right:before {
  content: "";
}

.fa-apple:before {
  content: "";
}

.fa-windows:before {
  content: "";
}

.fa-android:before {
  content: "";
}

.fa-linux:before {
  content: "";
}

.fa-dribbble:before {
  content: "";
}

.fa-skype:before {
  content: "";
}

.fa-foursquare:before {
  content: "";
}

.fa-trello:before {
  content: "";
}

.fa-female:before {
  content: "";
}

.fa-male:before {
  content: "";
}

.fa-gittip:before,
.fa-gratipay:before {
  content: "";
}

.fa-sun-o:before {
  content: "";
}

.fa-moon-o:before {
  content: "";
}

.fa-archive:before {
  content: "";
}

.fa-bug:before {
  content: "";
}

.fa-vk:before {
  content: "";
}

.fa-weibo:before {
  content: "";
}

.fa-renren:before {
  content: "";
}

.fa-pagelines:before {
  content: "";
}

.fa-stack-exchange:before {
  content: "";
}

.fa-arrow-circle-o-right:before {
  content: "";
}

.fa-arrow-circle-o-left:before {
  content: "";
}

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "";
}

.fa-dot-circle-o:before {
  content: "";
}

.fa-wheelchair:before {
  content: "";
}

.fa-vimeo-square:before {
  content: "";
}

.fa-turkish-lira:before,
.fa-try:before {
  content: "";
}

.fa-plus-square-o:before {
  content: "";
}

.fa-space-shuttle:before {
  content: "";
}

.fa-slack:before {
  content: "";
}

.fa-envelope-square:before {
  content: "";
}

.fa-wordpress:before {
  content: "";
}

.fa-openid:before {
  content: "";
}

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "";
}

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "";
}

.fa-yahoo:before {
  content: "";
}

.fa-google:before {
  content: "";
}

.fa-reddit:before {
  content: "";
}

.fa-reddit-square:before {
  content: "";
}

.fa-stumbleupon-circle:before {
  content: "";
}

.fa-stumbleupon:before {
  content: "";
}

.fa-delicious:before {
  content: "";
}

.fa-digg:before {
  content: "";
}

.fa-pied-piper:before {
  content: "";
}

.fa-pied-piper-alt:before {
  content: "";
}

.fa-drupal:before {
  content: "";
}

.fa-joomla:before {
  content: "";
}

.fa-language:before {
  content: "";
}

.fa-fax:before {
  content: "";
}

.fa-building:before {
  content: "";
}

.fa-child:before {
  content: "";
}

.fa-paw:before {
  content: "";
}

.fa-spoon:before {
  content: "";
}

.fa-cube:before {
  content: "";
}

.fa-cubes:before {
  content: "";
}

.fa-behance:before {
  content: "";
}

.fa-behance-square:before {
  content: "";
}

.fa-steam:before {
  content: "";
}

.fa-steam-square:before {
  content: "";
}

.fa-recycle:before {
  content: "";
}

.fa-automobile:before,
.fa-car:before {
  content: "";
}

.fa-cab:before,
.fa-taxi:before {
  content: "";
}

.fa-tree:before {
  content: "";
}

.fa-spotify:before {
  content: "";
}

.fa-deviantart:before {
  content: "";
}

.fa-soundcloud:before {
  content: "";
}

.fa-database:before {
  content: "";
}

.fa-file-pdf-o:before {
  content: "";
}

.fa-file-word-o:before {
  content: "";
}

.fa-file-excel-o:before {
  content: "";
}

.fa-file-powerpoint-o:before {
  content: "";
}

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "";
}

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "";
}

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "";
}

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "";
}

.fa-file-code-o:before {
  content: "";
}

.fa-vine:before {
  content: "";
}

.fa-codepen:before {
  content: "";
}

.fa-jsfiddle:before {
  content: "";
}

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "";
}

.fa-circle-o-notch:before {
  content: "";
}

.fa-ra:before,
.fa-rebel:before {
  content: "";
}

.fa-ge:before,
.fa-empire:before {
  content: "";
}

.fa-git-square:before {
  content: "";
}

.fa-git:before {
  content: "";
}

.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "";
}

.fa-tencent-weibo:before {
  content: "";
}

.fa-qq:before {
  content: "";
}

.fa-wechat:before,
.fa-weixin:before {
  content: "";
}

.fa-send:before,
.fa-paper-plane:before {
  content: "";
}

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "";
}

.fa-history:before {
  content: "";
}

.fa-circle-thin:before {
  content: "";
}

.fa-header:before {
  content: "";
}

.fa-paragraph:before {
  content: "";
}

.fa-sliders:before {
  content: "";
}

.fa-share-alt:before {
  content: "";
}

.fa-share-alt-square:before {
  content: "";
}

.fa-bomb:before {
  content: "";
}

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "";
}

.fa-tty:before {
  content: "";
}

.fa-binoculars:before {
  content: "";
}

.fa-plug:before {
  content: "";
}

.fa-slideshare:before {
  content: "";
}

.fa-twitch:before {
  content: "";
}

.fa-yelp:before {
  content: "";
}

.fa-newspaper-o:before {
  content: "";
}

.fa-wifi:before {
  content: "";
}

.fa-calculator:before {
  content: "";
}

.fa-paypal:before {
  content: "";
}

.fa-google-wallet:before {
  content: "";
}

.fa-cc-visa:before {
  content: "";
}

.fa-cc-mastercard:before {
  content: "";
}

.fa-cc-discover:before {
  content: "";
}

.fa-cc-amex:before {
  content: "";
}

.fa-cc-paypal:before {
  content: "";
}

.fa-cc-stripe:before {
  content: "";
}

.fa-bell-slash:before {
  content: "";
}

.fa-bell-slash-o:before {
  content: "";
}

.fa-trash:before {
  content: "";
}

.fa-copyright:before {
  content: "";
}

.fa-at:before {
  content: "";
}

.fa-eyedropper:before {
  content: "";
}

.fa-paint-brush:before {
  content: "";
}

.fa-birthday-cake:before {
  content: "";
}

.fa-area-chart:before {
  content: "";
}

.fa-pie-chart:before {
  content: "";
}

.fa-line-chart:before {
  content: "";
}

.fa-lastfm:before {
  content: "";
}

.fa-lastfm-square:before {
  content: "";
}

.fa-toggle-off:before {
  content: "";
}

.fa-toggle-on:before {
  content: "";
}

.fa-bicycle:before {
  content: "";
}

.fa-bus:before {
  content: "";
}

.fa-ioxhost:before {
  content: "";
}

.fa-angellist:before {
  content: "";
}

.fa-cc:before {
  content: "";
}

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "";
}

.fa-meanpath:before {
  content: "";
}

.fa-buysellads:before {
  content: "";
}

.fa-connectdevelop:before {
  content: "";
}

.fa-dashcube:before {
  content: "";
}

.fa-forumbee:before {
  content: "";
}

.fa-leanpub:before {
  content: "";
}

.fa-sellsy:before {
  content: "";
}

.fa-shirtsinbulk:before {
  content: "";
}

.fa-simplybuilt:before {
  content: "";
}

.fa-skyatlas:before {
  content: "";
}

.fa-cart-plus:before {
  content: "";
}

.fa-cart-arrow-down:before {
  content: "";
}

.fa-diamond:before {
  content: "";
}

.fa-ship:before {
  content: "";
}

.fa-user-secret:before {
  content: "";
}

.fa-motorcycle:before {
  content: "";
}

.fa-street-view:before {
  content: "";
}

.fa-heartbeat:before {
  content: "";
}

.fa-venus:before {
  content: "";
}

.fa-mars:before {
  content: "";
}

.fa-mercury:before {
  content: "";
}

.fa-intersex:before,
.fa-transgender:before {
  content: "";
}

.fa-transgender-alt:before {
  content: "";
}

.fa-venus-double:before {
  content: "";
}

.fa-mars-double:before {
  content: "";
}

.fa-venus-mars:before {
  content: "";
}

.fa-mars-stroke:before {
  content: "";
}

.fa-mars-stroke-v:before {
  content: "";
}

.fa-mars-stroke-h:before {
  content: "";
}

.fa-neuter:before {
  content: "";
}

.fa-genderless:before {
  content: "";
}

.fa-facebook-official:before {
  content: "";
}

.fa-pinterest-p:before {
  content: "";
}

.fa-whatsapp:before {
  content: "";
}

.fa-server:before {
  content: "";
}

.fa-user-plus:before {
  content: "";
}

.fa-user-times:before {
  content: "";
}

.fa-hotel:before,
.fa-bed:before {
  content: "";
}

.fa-viacoin:before {
  content: "";
}

.fa-train:before {
  content: "";
}

.fa-subway:before {
  content: "";
}

.fa-medium:before {
  content: "";
}

.fa-yc:before,
.fa-y-combinator:before {
  content: "";
}

.fa-optin-monster:before {
  content: "";
}

.fa-opencart:before {
  content: "";
}

.fa-expeditedssl:before {
  content: "";
}

.fa-battery-4:before,
.fa-battery-full:before {
  content: "";
}

.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "";
}

.fa-battery-2:before,
.fa-battery-half:before {
  content: "";
}

.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "";
}

.fa-battery-0:before,
.fa-battery-empty:before {
  content: "";
}

.fa-mouse-pointer:before {
  content: "";
}

.fa-i-cursor:before {
  content: "";
}

.fa-object-group:before {
  content: "";
}

.fa-object-ungroup:before {
  content: "";
}

.fa-sticky-note:before {
  content: "";
}

.fa-sticky-note-o:before {
  content: "";
}

.fa-cc-jcb:before {
  content: "";
}

.fa-cc-diners-club:before {
  content: "";
}

.fa-clone:before {
  content: "";
}

.fa-balance-scale:before {
  content: "";
}

.fa-hourglass-o:before {
  content: "";
}

.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "";
}

.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "";
}

.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "";
}

.fa-hourglass:before {
  content: "";
}

.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "";
}

.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "";
}

.fa-hand-scissors-o:before {
  content: "";
}

.fa-hand-lizard-o:before {
  content: "";
}

.fa-hand-spock-o:before {
  content: "";
}

.fa-hand-pointer-o:before {
  content: "";
}

.fa-hand-peace-o:before {
  content: "";
}

.fa-trademark:before {
  content: "";
}

.fa-registered:before {
  content: "";
}

.fa-creative-commons:before {
  content: "";
}

.fa-gg:before {
  content: "";
}

.fa-gg-circle:before {
  content: "";
}

.fa-tripadvisor:before {
  content: "";
}

.fa-odnoklassniki:before {
  content: "";
}

.fa-odnoklassniki-square:before {
  content: "";
}

.fa-get-pocket:before {
  content: "";
}

.fa-wikipedia-w:before {
  content: "";
}

.fa-safari:before {
  content: "";
}

.fa-chrome:before {
  content: "";
}

.fa-firefox:before {
  content: "";
}

.fa-opera:before {
  content: "";
}

.fa-internet-explorer:before {
  content: "";
}

.fa-tv:before,
.fa-television:before {
  content: "";
}

.fa-contao:before {
  content: "";
}

.fa-500px:before {
  content: "";
}

.fa-amazon:before {
  content: "";
}

.fa-calendar-plus-o:before {
  content: "";
}

.fa-calendar-minus-o:before {
  content: "";
}

.fa-calendar-times-o:before {
  content: "";
}

.fa-calendar-check-o:before {
  content: "";
}

.fa-industry:before {
  content: "";
}

.fa-map-pin:before {
  content: "";
}

.fa-map-signs:before {
  content: "";
}

.fa-map-o:before {
  content: "";
}

.fa-map:before {
  content: "";
}

.fa-commenting:before {
  content: "";
}

.fa-commenting-o:before {
  content: "";
}

.fa-houzz:before {
  content: "";
}

.fa-vimeo:before {
  content: "";
}

.fa-black-tie:before {
  content: "";
}

.fa-fonticons:before {
  content: "";
}

.fa-reddit-alien:before {
  content: "";
}

.fa-edge:before {
  content: "";
}

.fa-credit-card-alt:before {
  content: "";
}

.fa-codiepie:before {
  content: "";
}

.fa-modx:before {
  content: "";
}

.fa-fort-awesome:before {
  content: "";
}

.fa-usb:before {
  content: "";
}

.fa-product-hunt:before {
  content: "";
}

.fa-mixcloud:before {
  content: "";
}

.fa-scribd:before {
  content: "";
}

.fa-pause-circle:before {
  content: "";
}

.fa-pause-circle-o:before {
  content: "";
}

.fa-stop-circle:before {
  content: "";
}

.fa-stop-circle-o:before {
  content: "";
}

.fa-shopping-bag:before {
  content: "";
}

.fa-shopping-basket:before {
  content: "";
}

.fa-hashtag:before {
  content: "";
}

.fa-bluetooth:before {
  content: "";
}

.fa-bluetooth-b:before {
  content: "";
}

.fa-percent:before {
  content: "";
}

/*! normalize.css v3.0.1 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

meta.foundation-version {
  font-family: "1.1.0";
}

meta.foundation-mq {
  font-family: "tiny=0&small=30rem&medium=40rem&large=75rem";
}

/*
  GLOBAL
  ------

  Global styles and settings for Foundation for Apps are stored here. This file must always
  be imported, no matter what.

  Includes:
   -
*/
html, body {
  height: 100%;
  font-size: 100%;
}

html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

body {
  background: #fff;
  color: #222;
  padding: 0;
  margin: 0;
  font-family: "Roboto", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
  display: inline-block;
  vertical-align: middle;
}

a, [ui-sref], [zf-open], [zf-close], [zf-toggle] {
  cursor: pointer;
}

#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object {
  max-width: none !important;
}

.padding {
  padding: 1rem;
}

.iconic {
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
}

a > .iconic {
  margin-top: -2px;
  margin-right: 0.25rem;
}

a > .iconic * {
  fill: #00558b;
  stroke: #00558b;
}

a > .iconic *.iconic-property-accent {
  fill: #00558b;
  stroke: #00558b;
}

.iconic * {
  fill: #00558b;
  stroke: #00558b;
}

.iconic *.iconic-property-accent {
  fill: #00558b;
  stroke: #00558b;
}

.iconic-color-primary * {
  fill: #00558b;
  stroke: #00558b;
}

.iconic-color-primary *.iconic-property-accent {
  fill: #00558b;
  stroke: #00558b;
}

.iconic-color-success * {
  fill: #43AC6A;
  stroke: #43AC6A;
}

.iconic-color-success *.iconic-property-accent {
  fill: #43AC6A;
  stroke: #43AC6A;
}

.iconic-color-warning * {
  fill: #F08A24;
  stroke: #F08A24;
}

.iconic-color-warning *.iconic-property-accent {
  fill: #F08A24;
  stroke: #F08A24;
}

.iconic-color-alert * {
  fill: #F04124;
  stroke: #F04124;
}

.iconic-color-alert *.iconic-property-accent {
  fill: #F04124;
  stroke: #F04124;
}

.iconic-color-dark * {
  fill: #232323;
  stroke: #232323;
}

.iconic-color-dark *.iconic-property-accent {
  fill: #232323;
  stroke: #232323;
}

.iconic-color-secondary * {
  fill: #f1f1f1;
  stroke: #f1f1f1;
}

.iconic-color-secondary *.iconic-property-accent {
  fill: #f1f1f1;
  stroke: #f1f1f1;
}

/*
  ACTION SHEET
  ------------

  A dropdown menu that sticks to the bottom of the screen on small devices, and becomes a dropdown menu on larger devices.
*/
/*
  Styles for the list inside an action sheet.
  Don't include this mixin if you want to build custom controls inside the sheet.
*/
/*
  Styles for the action sheet container. Action sheets pin to the top or bottom of the screen.
*/
.action-sheet-container {
  position: relative;
  display: inline-block;
}

.action-sheet-container .button {
  margin-left: 0;
  margin-right: 0;
}

.action-sheet {
  position: fixed;
  left: 0;
  z-index: 1000;
  width: 100%;
  padding: 1rem;
  background: white;
  text-align: center;
  transition-property: transform opacity;
  transition-duration: 0.25s;
  transition-timing-function: ease-out;
  box-shadow: 0 -3px 10px rgba(0, 0, 0, 0.25);
  bottom: 0;
  transform: translateY(100%);
}

.action-sheet.is-active {
  transform: translateY(0%);
}

.action-sheet ul {
  margin: -1rem;
  margin-top: 0;
  list-style-type: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.action-sheet ul:first-child {
  margin-top: -1rem;
}

.action-sheet ul:first-child li:first-child {
  border-top: 0;
}

.action-sheet ul a {
  display: block;
  padding: 0.8rem;
  line-height: 1;
  color: #000;
  border-top: 1px solid #ccc;
}

.action-sheet ul a:hover {
  color: #000;
  background: #f2f2f2;
}

.action-sheet ul .alert > a {
  color: #F04124;
}

.action-sheet ul .disabled > a {
  pointer-events: none;
  color: #999;
}

@media only screen and (min-width: 40em) {
  .action-sheet {
    /*
    Core styles
  */
    position: absolute;
    left: 50%;
    width: 300px;
    border-radius: 4px;
    opacity: 0;
    pointer-events: none;
    /*
    Menu shadow
  */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
    /*
    Active state
  */
    /*
    Menu tail
  */
    /*
    Positioning
  */
    top: auto;
    bottom: 0;
    transform: translateX(-50%) translateY(110%);
  }
  .action-sheet.is-active {
    opacity: 1;
    pointer-events: auto;
  }
  .action-sheet::before, .action-sheet::after {
    content: '';
    position: absolute;
    left: 50%;
    display: block;
    width: 0px;
    height: 0px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    margin-left: -10px;
  }
  .action-sheet.is-active {
    transform: translateX(-50%) translateY(100%);
  }
  .action-sheet::before, .action-sheet::after {
    top: -10px;
    bottom: auto;
    border-top: 0;
    border-bottom: 10px solid white;
  }
  .action-sheet::before {
    top: -12px;
    border-bottom-color: rgba(0, 0, 0, 0.15);
  }
  .action-sheet.top {
    /*
    Core styles
  */
    position: absolute;
    left: 50%;
    width: 300px;
    border-radius: 4px;
    opacity: 0;
    pointer-events: none;
    /*
    Menu shadow
  */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
    /*
    Active state
  */
    /*
    Menu tail
  */
    /*
    Positioning
  */
    top: 0;
    bottom: auto;
    transform: translateX(-50%) translateY(-120%);
  }
  .action-sheet.top.is-active {
    opacity: 1;
    pointer-events: auto;
  }
  .action-sheet.top::before, .action-sheet.top::after {
    content: '';
    position: absolute;
    left: 50%;
    display: block;
    width: 0px;
    height: 0px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    margin-left: -10px;
  }
  .action-sheet.top.is-active {
    transform: translateX(-50%) translateY(-110%);
  }
  .action-sheet.top::before, .action-sheet.top::after {
    top: auto;
    bottom: -10px;
    border-top: 10px solid white;
    border-bottom: 0;
  }
  .action-sheet.top::before {
    bottom: -12px;
    border-top-color: rgba(0, 0, 0, 0.15);
  }
}

.action-sheet.primary {
  background: #00558b;
  color: #fff;
  border: 0;
}

.action-sheet.primary::before {
  display: none;
}

.action-sheet.primary::before, .action-sheet.primary::after {
  border-top-color: #00558b;
}

.action-sheet.primary.top::before, .action-sheet.primary.top::after {
  border-bottom-color: #00558b;
}

.action-sheet.primary ul {
  margin: -1rem;
  margin-top: 0;
  list-style-type: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.action-sheet.primary ul:first-child {
  margin-top: -1rem;
}

.action-sheet.primary ul:first-child li:first-child {
  border-top: 0;
}

.action-sheet.primary ul a {
  display: block;
  padding: 0.8rem;
  line-height: 1;
  color: #fff;
  border-top: 1px solid #006cb0;
}

.action-sheet.primary ul a:hover {
  color: #fff;
  background: #00609e;
}

.action-sheet.primary ul .alert > a {
  color: #F04124;
}

.action-sheet.primary ul .disabled > a {
  pointer-events: none;
  color: #999;
}

.action-sheet.dark {
  background: #232323;
  color: #fff;
  border: 0;
}

.action-sheet.dark::before {
  display: none;
}

.action-sheet.dark::before, .action-sheet.dark::after {
  border-top-color: #232323;
}

.action-sheet.dark.top::before, .action-sheet.dark.top::after {
  border-bottom-color: #232323;
}

.action-sheet.dark ul {
  margin: -1rem;
  margin-top: 0;
  list-style-type: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.action-sheet.dark ul:first-child {
  margin-top: -1rem;
}

.action-sheet.dark ul:first-child li:first-child {
  border-top: 0;
}

.action-sheet.dark ul a {
  display: block;
  padding: 0.8rem;
  line-height: 1;
  color: #fff;
  border-top: 1px solid #393939;
}

.action-sheet.dark ul a:hover {
  color: #fff;
  background: #2e2e2e;
}

.action-sheet.dark ul .alert > a {
  color: #F04124;
}

.action-sheet.dark ul .disabled > a {
  pointer-events: none;
  color: #999;
}

/*
  BLOCK LIST
  ----------

  A generic list component that can accomodate a variety of styles and controls.

  Features:
   - Icons
   - Labels
   - Chevrons
   - Text fields
   - Dropdown menus
   - Checkbox/radio inputs
*/
/*
  Adds styles for a block list container.

  $font-size: global font size for the list.
  $full-bleed: when "true", the margins of the list invert to line it up with the edge of a padded element.
*/
.block-list {
  margin-bottom: 1rem;
  line-height: 1;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.block-list, .block-list ul {
  list-style-type: none;
}

.block-list ul {
  margin-left: 0;
}

/*
  Styles block list headers on the selector you include this mixin in (normally a <header>).

  $color - color of the header.
  $font-size - font size of the header.
  $offset - left margin to add to the header, to line it up with the list items.
*/
/*
  Styles block list items on the selector you include this mixin in (normally an <li>).

  $color - color of items.
  $color-hover - color of items on hover.
  $background - background of items.
  $background-hover - background of items on hover.
  $border - border between items.
  $padding - padding on items.
*/
/*
  Adds label styles to the class you include this mixin in.

  $color - color of the label.
  $left-class - extra class to flip the orientation of the label.
  $left-padding - left padding to use for left-hand labels.
*/
/*
  Adds support for chevrons, which appear on the right-hand side of the item.

  $color - color of the chevron.
  $padding - include the global padding of block list items here.
*/
/*
  Adds icon styles. Call this mixin on a block list container.

  $size - size of the icon as a percentage (decimal) of the list item's height.
  $item-selector - overrides the 'li' selector used for list items.
*/
/*
  Adds support for text fields, select menus, and checkbox/radio groups in block lists.

  $color - color of select menu arrow.
  $background-hover - color of select menu when hovered over.
  $padding - include the global padding of block list items here.
  $dropdown-class - class to use for list items that contain a dropdown.
  $switch-class - class to use for switches inside list items.
*/
.block-list {
  font-size: 1rem;
  margin-left: -1rem;
  margin-right: -1rem;
}

.block-list input[type="text"], .block-list input[type="password"], .block-list input[type="date"], .block-list input[type="datetime"], .block-list input[type="datetime-local"], .block-list input[type="month"], .block-list input[type="week"], .block-list input[type="email"], .block-list input[type="number"], .block-list input[type="search"], .block-list input[type="tel"], .block-list input[type="time"], .block-list input[type="url"], .block-list input[type="color"], .block-list textarea {
  margin: 0;
  border: 0;
  line-height: 1;
  height: auto;
  padding: 0.8rem 1rem;
  color: inherit;
}

.block-list input[type="text"]:hover, .block-list input[type="text"]:focus, .block-list input[type="password"]:hover, .block-list input[type="password"]:focus, .block-list input[type="date"]:hover, .block-list input[type="date"]:focus, .block-list input[type="datetime"]:hover, .block-list input[type="datetime"]:focus, .block-list input[type="datetime-local"]:hover, .block-list input[type="datetime-local"]:focus, .block-list input[type="month"]:hover, .block-list input[type="month"]:focus, .block-list input[type="week"]:hover, .block-list input[type="week"]:focus, .block-list input[type="email"]:hover, .block-list input[type="email"]:focus, .block-list input[type="number"]:hover, .block-list input[type="number"]:focus, .block-list input[type="search"]:hover, .block-list input[type="search"]:focus, .block-list input[type="tel"]:hover, .block-list input[type="tel"]:focus, .block-list input[type="time"]:hover, .block-list input[type="time"]:focus, .block-list input[type="url"]:hover, .block-list input[type="url"]:focus, .block-list input[type="color"]:hover, .block-list input[type="color"]:focus, .block-list textarea:hover, .block-list textarea:focus {
  border: 0;
}

.block-list li > input[type="checkbox"], .block-list li > input[type="radio"] {
  position: absolute;
  left: -9999px;
}

.block-list li > input[type="checkbox"] + label, .block-list li > input[type="radio"] + label {
  display: block;
  font-size: 1rem;
  margin: 0;
}

.block-list li > input[type="checkbox"]:checked + label::before, .block-list li > input[type="radio"]:checked + label::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="32" viewBox="0 0 32 32"><path fill="black" d="M16 0c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm6.906 8.875l2.219 2.031-12.063 13.281-6.188-6.188 2.125-2.125 3.938 3.938 9.969-10.938z"/></svg>');
  content: '';
  background-size: 100% 100%;
  width: 1.5em;
  height: 1.5em;
  color: #00558b;
  float: right;
  pointer-events: none;
  margin-top: -0.25em;
}

@media screen and (min-width: 0\0) {
  .block-list li > input[type="checkbox"]:checked + label::before, .block-list li > input[type="radio"]:checked + label::before {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAdlJREFUeNrMl0FugzAQRY3TRZeoFyhVL0BOkGTXJezaHZwguUnECaCrdFd6gqQnCN11Uyk5QekNOlONJWMVGMCgfGlkEIY3HnsG2xFM3d96PjQB2AJsWdPtAPYOln+dTwXnuw4DHEGzBvNFN6EDCTiS9XIAwB40acNoucKoxODIie0AwAOCu8KOSnIiNx/MakK+A7sW9oTferxx3fP3T1nURoBG/irGVahHwjHm/Ggx7E3TMVdrQmoP0gngghhpZQ3QvG/EdPLUelARWI8Aycjq9Md0qMIdbcNhjmOKLoY7quk3l1Rebeqg4AwFkmq7LWGOh1pmNY0etZAWSq0OX8HoS4JvWuCopbSY26EGR/CW86K0BF+pwkLwlPuyHJhOCl5oe4ZtF++vOqST+GdOYwO+71pN2VNAjmQGPCe42weuHDg0PI8olUwnYrXTGQJH9gxq8l1LKvrQx4O6/YY32Kp/ugb3ey7gZ4xAzuhYiYTxB/UHZFAuaREVXZ2g6yFlvEC2yoKEmbsRZYNgVLk2JeaOaG+xLHN+WCszDWMqLGOrJFa1DlApjSdwoHJGqGzLIb0+cas0wh5Bh780ngswx8GJD7h8sHg2wLA/mfDLPZpdxOF0quP5rwADAAFIzSRvu1m5AAAAAElFTkSuQmCC");
  }
}

.block-list .with-dropdown {
  color: inherit;
}

.block-list .with-dropdown select {
  -webkit-appearance: none;
  -moz-appearance: none;
  outline: 0;
  background: 0;
  border: 0;
  height: auto;
  padding: 0.8rem 1rem;
  margin: 0;
  font-size: 1em;
  line-height: 1;
  color: inherit;
  background-color: transparent;
}

.block-list .switch {
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
}

.block-list.with-icons li > a, .block-list.with-icons li > span, .block-list.with-icons li > label {
  padding-left: 2.8rem;
}

.block-list.with-icons li img, .block-list.with-icons li .iconic {
  position: absolute;
  top: 0.26rem;
  left: 0.26rem;
  width: 2.08rem;
  height: 2.08rem;
  border-radius: 8px;
  pointer-events: none;
}

.block-list header {
  margin-top: 1em;
  color: #666666;
  font-weight: bold;
  margin-bottom: 0.5em;
  margin-left: 1rem;
  font-size: 0.8em;
  cursor: default;
  text-transform: uppercase;
}

.block-list li {
  position: relative;
  border-bottom: 1px solid #d0d0d0;
}

.block-list li:first-child {
  border-top: 1px solid #d0d0d0;
}

.block-list li > a, .block-list li > span, .block-list li > label {
  display: block;
  padding: 0.8rem 1rem;
  padding-left: 1rem;
  color: #000;
  line-height: 1;
}

.block-list li > span {
  cursor: default;
}

.block-list li > a, .block-list li > label {
  cursor: pointer;
}

.block-list li > a:hover, .block-list li > label:hover {
  color: #000;
}

.block-list li > a:hover, .block-list li > label:hover, .block-list li select:hover {
  background: #f4f4f4;
}

.block-list li.caution > a, .block-list li.caution > a:hover {
  color: #F04124;
}

.block-list li.disabled > a {
  cursor: default;
}

.block-list li.disabled > a, .block-list li.disabled > a:hover {
  color: #999;
}

.block-list li.disabled > a:hover {
  background: transparent;
}

.block-list li.with-chevron::after {
  content: '\203A';
  display: block;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  font-weight: bold;
  color: #666666;
  font-size: 2em;
}

.block-list li.with-chevron .block-list-label {
  padding-right: 1.5rem;
}

.block-list li .block-list-label {
  display: inline-block;
  float: right;
  padding: 0;
  color: #999999;
  pointer-events: none;
}

.block-list li .block-list-label.left {
  margin-left: 0.8rem;
  float: none;
}

.button, .button-group > li > a, .button-group > li > label, .button-group > li > button {
  display: inline-block;
  border: 0;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: none;
  -webkit-font-smoothing: antialiased;
  transition: background 0.25s ease-out;
  vertical-align: middle;
  padding: 0.85em 1em;
  margin: 0 1rem 1rem 0;
  font-size: 0.9rem;
  border-radius: 0;
}

.button {
  font-size: 0.9rem;
  display: inline-block;
  width: auto;
  margin: 0 1rem 1rem 0;
  background: #00558b;
  color: #fff;
}

.button .iconic {
  width: 1em;
  height: 1em;
  vertical-align: middle;
  margin-right: 0.25em;
  margin-top: -2px;
}

.button:hover, .button:focus {
  background: #004876;
  color: #fff;
}

.button .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button.tiny {
  font-size: 0.63rem;
}

.button.tiny .iconic {
  width: 1em;
  height: 1em;
  vertical-align: middle;
  margin-right: 0.25em;
  margin-top: -2px;
}

.button.small {
  font-size: 0.72rem;
}

.button.small .iconic {
  width: 1em;
  height: 1em;
  vertical-align: middle;
  margin-right: 0.25em;
  margin-top: -2px;
}

.button.large {
  font-size: 1.17rem;
}

.button.large .iconic {
  width: 1em;
  height: 1em;
  vertical-align: middle;
  margin-right: 0.25em;
  margin-top: -2px;
}

.button.expand {
  display: block;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.button.secondary {
  background: #f1f1f1;
  color: #000;
}

.button.secondary:hover, .button.secondary:focus {
  background: #cdcdcd;
  color: #000;
}

.button.secondary .iconic * {
  fill: #000;
  stroke: #000;
}

.button.secondary .iconic *.iconic-property-accent {
  fill: #000;
  stroke: #000;
}

.button.success {
  background: #43AC6A;
  color: #fff;
}

.button.success:hover, .button.success:focus {
  background: #39925a;
  color: #fff;
}

.button.success .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button.success .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button.warning {
  background: #F08A24;
  color: #fff;
}

.button.warning:hover, .button.warning:focus {
  background: #dc750f;
  color: #fff;
}

.button.warning .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button.warning .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button.alert {
  background: #F04124;
  color: #fff;
}

.button.alert:hover, .button.alert:focus {
  background: #dc2c0f;
  color: #fff;
}

.button.alert .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button.alert .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button.info {
  background: #A0D3E8;
  color: #000;
}

.button.info:hover, .button.info:focus {
  background: #71bddd;
  color: #000;
}

.button.info .iconic * {
  fill: #000;
  stroke: #000;
}

.button.info .iconic *.iconic-property-accent {
  fill: #000;
  stroke: #000;
}

.button.dark {
  background: #232323;
  color: #fff;
}

.button.dark:hover, .button.dark:focus {
  background: #1e1e1e;
  color: #fff;
}

.button.dark .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button.dark .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button.hollow {
  border: 1px solid #00558b;
  background: transparent;
  color: #00558b;
}

.button.hollow:hover, .button.hollow:focus {
  border-color: #008ee8;
  background: transparent;
  color: #008ee8;
}

.button.hollow .iconic * {
  fill: #00558b;
  stroke: #00558b;
}

.button.hollow .iconic *.iconic-property-accent {
  fill: #00558b;
  stroke: #00558b;
}

.button.hollow:hover .iconic * {
  fill: #008ee8;
  stroke: #008ee8;
}

.button.hollow:hover .iconic *.iconic-property-accent {
  fill: #008ee8;
  stroke: #008ee8;
}

.button.hollow.secondary {
  border: 1px solid #f1f1f1;
  background: transparent;
  color: #f1f1f1;
}

.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: whitesmoke;
  background: transparent;
  color: whitesmoke;
}

.button.hollow.secondary .iconic * {
  fill: #f1f1f1;
  stroke: #f1f1f1;
}

.button.hollow.secondary .iconic *.iconic-property-accent {
  fill: #f1f1f1;
  stroke: #f1f1f1;
}

.button.hollow.secondary:hover .iconic * {
  fill: whitesmoke;
  stroke: whitesmoke;
}

.button.hollow.secondary:hover .iconic *.iconic-property-accent {
  fill: whitesmoke;
  stroke: whitesmoke;
}

.button.hollow.success {
  border: 1px solid #43AC6A;
  background: transparent;
  color: #43AC6A;
}

.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: #6dc68e;
  background: transparent;
  color: #6dc68e;
}

.button.hollow.success .iconic * {
  fill: #43AC6A;
  stroke: #43AC6A;
}

.button.hollow.success .iconic *.iconic-property-accent {
  fill: #43AC6A;
  stroke: #43AC6A;
}

.button.hollow.success:hover .iconic * {
  fill: #6dc68e;
  stroke: #6dc68e;
}

.button.hollow.success:hover .iconic *.iconic-property-accent {
  fill: #6dc68e;
  stroke: #6dc68e;
}

.button.hollow.warning {
  border: 1px solid #F08A24;
  background: transparent;
  color: #F08A24;
}

.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: #f4a75b;
  background: transparent;
  color: #f4a75b;
}

.button.hollow.warning .iconic * {
  fill: #F08A24;
  stroke: #F08A24;
}

.button.hollow.warning .iconic *.iconic-property-accent {
  fill: #F08A24;
  stroke: #F08A24;
}

.button.hollow.warning:hover .iconic * {
  fill: #f4a75b;
  stroke: #f4a75b;
}

.button.hollow.warning:hover .iconic *.iconic-property-accent {
  fill: #f4a75b;
  stroke: #f4a75b;
}

.button.hollow.alert {
  border: 1px solid #F04124;
  background: transparent;
  color: #F04124;
}

.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: #f4715b;
  background: transparent;
  color: #f4715b;
}

.button.hollow.alert .iconic * {
  fill: #F04124;
  stroke: #F04124;
}

.button.hollow.alert .iconic *.iconic-property-accent {
  fill: #F04124;
  stroke: #F04124;
}

.button.hollow.alert:hover .iconic * {
  fill: #f4715b;
  stroke: #f4715b;
}

.button.hollow.alert:hover .iconic *.iconic-property-accent {
  fill: #f4715b;
  stroke: #f4715b;
}

.button.hollow.info {
  border: 1px solid #A0D3E8;
  background: transparent;
  color: #A0D3E8;
}

.button.hollow.info:hover, .button.hollow.info:focus {
  border-color: #b8deee;
  background: transparent;
  color: #b8deee;
}

.button.hollow.info .iconic * {
  fill: #A0D3E8;
  stroke: #A0D3E8;
}

.button.hollow.info .iconic *.iconic-property-accent {
  fill: #A0D3E8;
  stroke: #A0D3E8;
}

.button.hollow.info:hover .iconic * {
  fill: #b8deee;
  stroke: #b8deee;
}

.button.hollow.info:hover .iconic *.iconic-property-accent {
  fill: #b8deee;
  stroke: #b8deee;
}

.button.hollow.dark {
  border: 1px solid #232323;
  background: transparent;
  color: #232323;
}

.button.hollow.dark:hover, .button.hollow.dark:focus {
  border-color: #5a5a5a;
  background: transparent;
  color: #5a5a5a;
}

.button.hollow.dark .iconic * {
  fill: #232323;
  stroke: #232323;
}

.button.hollow.dark .iconic *.iconic-property-accent {
  fill: #232323;
  stroke: #232323;
}

.button.hollow.dark:hover .iconic * {
  fill: #5a5a5a;
  stroke: #5a5a5a;
}

.button.hollow.dark:hover .iconic *.iconic-property-accent {
  fill: #5a5a5a;
  stroke: #5a5a5a;
}

.button.disabled {
  opacity: 0.5;
  cursor: default;
  pointer-events: none;
}

.button-group {
  margin: 0;
  margin-bottom: 1rem;
  list-style-type: none;
  display: -ms-inline-flexbox;
  display: inline-flex;
  border-radius: 0;
  overflow: hidden;
  font-size: 0.9rem;
}

.button-group > li {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}

.button-group > li > a, .button-group > li > label, .button-group > li > button {
  border-radius: 0;
  font-size: inherit;
  display: block;
  margin: 0;
}

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

.button-group > li:not(:last-child) > a, .button-group > li:not(:last-child) > label, .button-group > li:not(:last-child) > button {
  border-right: 1px solid #004068;
}

.button-group .iconic {
  width: 1em;
  height: 1em;
  vertical-align: middle;
  margin-right: 0.25em;
  margin-top: -2px;
}

.button-group.segmented, .button-group.segmented.secondary, .button-group.segmented.success, .button-group.segmented.warning, .button-group.segmented.alert {
  border: 1px solid #00558b;
  transition-property: background color;
}

.button-group.segmented > li > input[type="radio"] {
  position: absolute;
  left: -9999px;
}

.button-group.segmented > li > a, .button-group.segmented.secondary > li > a, .button-group.segmented.success > li > a, .button-group.segmented.warning > li > a, .button-group.segmented.alert > li > a, .button-group.segmented > li > label, .button-group.segmented.secondary > li > label, .button-group.segmented.success > li > label, .button-group.segmented.warning > li > label, .button-group.segmented.alert > li > label, .button-group.segmented > li > button, .button-group.segmented.secondary > li > button, .button-group.segmented.success > li > button, .button-group.segmented.warning > li > button, .button-group.segmented.alert > li > button {
  margin-right: 0;
  background: transparent;
}

.button-group {
  display: -ms-inline-flexbox;
  display: inline-flex;
  border-radius: 0;
}

.button-group > li {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}

.button-group > li > a, .button-group > li > label, .button-group > li > button {
  background: #00558b;
  color: #fff;
  border-color: #004876;
}

.button-group > li > a:hover, .button-group > li > a:focus, .button-group > li > label:hover, .button-group > li > label:focus, .button-group > li > button:hover, .button-group > li > button:focus {
  background: #004876;
  color: #fff;
}

.button-group > li > a .iconic *, .button-group > li > label .iconic *, .button-group > li > button .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group > li > a .iconic *.iconic-property-accent, .button-group > li > label .iconic *.iconic-property-accent, .button-group > li > button .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group > li.is-active > a, .button-group > li.is-active > label, .button-group > li.is-active > button {
  background: #004876;
}

.button-group.secondary > li > a, .button-group.secondary > li > label, .button-group.secondary > li > button {
  background: #f1f1f1;
  color: #000;
  border-color: #cdcdcd;
}

.button-group.secondary > li > a:hover, .button-group.secondary > li > a:focus, .button-group.secondary > li > label:hover, .button-group.secondary > li > label:focus, .button-group.secondary > li > button:hover, .button-group.secondary > li > button:focus {
  background: #cdcdcd;
  color: #000;
}

.button-group.secondary > li > a .iconic *, .button-group.secondary > li > label .iconic *, .button-group.secondary > li > button .iconic * {
  fill: #000;
  stroke: #000;
}

.button-group.secondary > li > a .iconic *.iconic-property-accent, .button-group.secondary > li > label .iconic *.iconic-property-accent, .button-group.secondary > li > button .iconic *.iconic-property-accent {
  fill: #000;
  stroke: #000;
}

.button-group.secondary > li.is-active > a, .button-group.secondary > li.is-active > label, .button-group.secondary > li.is-active > button {
  background: #cdcdcd;
}

.button-group.success > li > a, .button-group.success > li > label, .button-group.success > li > button {
  background: #43AC6A;
  color: #fff;
  border-color: #39925a;
}

.button-group.success > li > a:hover, .button-group.success > li > a:focus, .button-group.success > li > label:hover, .button-group.success > li > label:focus, .button-group.success > li > button:hover, .button-group.success > li > button:focus {
  background: #39925a;
  color: #fff;
}

.button-group.success > li > a .iconic *, .button-group.success > li > label .iconic *, .button-group.success > li > button .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group.success > li > a .iconic *.iconic-property-accent, .button-group.success > li > label .iconic *.iconic-property-accent, .button-group.success > li > button .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group.success > li.is-active > a, .button-group.success > li.is-active > label, .button-group.success > li.is-active > button {
  background: #39925a;
}

.button-group.warning > li > a, .button-group.warning > li > label, .button-group.warning > li > button {
  background: #F08A24;
  color: #fff;
  border-color: #dc750f;
}

.button-group.warning > li > a:hover, .button-group.warning > li > a:focus, .button-group.warning > li > label:hover, .button-group.warning > li > label:focus, .button-group.warning > li > button:hover, .button-group.warning > li > button:focus {
  background: #dc750f;
  color: #fff;
}

.button-group.warning > li > a .iconic *, .button-group.warning > li > label .iconic *, .button-group.warning > li > button .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group.warning > li > a .iconic *.iconic-property-accent, .button-group.warning > li > label .iconic *.iconic-property-accent, .button-group.warning > li > button .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group.warning > li.is-active > a, .button-group.warning > li.is-active > label, .button-group.warning > li.is-active > button {
  background: #dc750f;
}

.button-group.alert > li > a, .button-group.alert > li > label, .button-group.alert > li > button {
  background: #F04124;
  color: #fff;
  border-color: #dc2c0f;
}

.button-group.alert > li > a:hover, .button-group.alert > li > a:focus, .button-group.alert > li > label:hover, .button-group.alert > li > label:focus, .button-group.alert > li > button:hover, .button-group.alert > li > button:focus {
  background: #dc2c0f;
  color: #fff;
}

.button-group.alert > li > a .iconic *, .button-group.alert > li > label .iconic *, .button-group.alert > li > button .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group.alert > li > a .iconic *.iconic-property-accent, .button-group.alert > li > label .iconic *.iconic-property-accent, .button-group.alert > li > button .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group.alert > li.is-active > a, .button-group.alert > li.is-active > label, .button-group.alert > li.is-active > button {
  background: #dc2c0f;
}

.button-group > li.secondary > a, .button-group > li.secondary > label, .button-group > li.secondary > button {
  background: #f1f1f1;
  color: #000;
  border-color: #f1f1f1;
}

.button-group > li.secondary > a:hover, .button-group > li.secondary > a:focus, .button-group > li.secondary > label:hover, .button-group > li.secondary > label:focus, .button-group > li.secondary > button:hover, .button-group > li.secondary > button:focus {
  background: #cdcdcd;
  color: #000;
}

.button-group > li.secondary > a:hover, .button-group > li.secondary > a:focus, .button-group > li.secondary > label:hover, .button-group > li.secondary > label:focus, .button-group > li.secondary > button:hover, .button-group > li.secondary > button:focus {
  border-color: #b5b5b5;
}

.button-group > li.secondary > a .iconic *, .button-group > li.secondary > label .iconic *, .button-group > li.secondary > button .iconic * {
  fill: #000;
  stroke: #000;
}

.button-group > li.secondary > a .iconic *.iconic-property-accent, .button-group > li.secondary > label .iconic *.iconic-property-accent, .button-group > li.secondary > button .iconic *.iconic-property-accent {
  fill: #000;
  stroke: #000;
}

.button-group > li.success > a, .button-group > li.success > label, .button-group > li.success > button {
  background: #43AC6A;
  color: #fff;
  border-color: #43AC6A;
}

.button-group > li.success > a:hover, .button-group > li.success > a:focus, .button-group > li.success > label:hover, .button-group > li.success > label:focus, .button-group > li.success > button:hover, .button-group > li.success > button:focus {
  background: #39925a;
  color: #fff;
}

.button-group > li.success > a:hover, .button-group > li.success > a:focus, .button-group > li.success > label:hover, .button-group > li.success > label:focus, .button-group > li.success > button:hover, .button-group > li.success > button:focus {
  border-color: #328150;
}

.button-group > li.success > a .iconic *, .button-group > li.success > label .iconic *, .button-group > li.success > button .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group > li.success > a .iconic *.iconic-property-accent, .button-group > li.success > label .iconic *.iconic-property-accent, .button-group > li.success > button .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group > li.warning > a, .button-group > li.warning > label, .button-group > li.warning > button {
  background: #F08A24;
  color: #fff;
  border-color: #F08A24;
}

.button-group > li.warning > a:hover, .button-group > li.warning > a:focus, .button-group > li.warning > label:hover, .button-group > li.warning > label:focus, .button-group > li.warning > button:hover, .button-group > li.warning > button:focus {
  background: #dc750f;
  color: #fff;
}

.button-group > li.warning > a:hover, .button-group > li.warning > a:focus, .button-group > li.warning > label:hover, .button-group > li.warning > label:focus, .button-group > li.warning > button:hover, .button-group > li.warning > button:focus {
  border-color: #c2680d;
}

.button-group > li.warning > a .iconic *, .button-group > li.warning > label .iconic *, .button-group > li.warning > button .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group > li.warning > a .iconic *.iconic-property-accent, .button-group > li.warning > label .iconic *.iconic-property-accent, .button-group > li.warning > button .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group > li.alert > a, .button-group > li.alert > label, .button-group > li.alert > button {
  background: #F04124;
  color: #fff;
  border-color: #F04124;
}

.button-group > li.alert > a:hover, .button-group > li.alert > a:focus, .button-group > li.alert > label:hover, .button-group > li.alert > label:focus, .button-group > li.alert > button:hover, .button-group > li.alert > button:focus {
  background: #dc2c0f;
  color: #fff;
}

.button-group > li.alert > a:hover, .button-group > li.alert > a:focus, .button-group > li.alert > label:hover, .button-group > li.alert > label:focus, .button-group > li.alert > button:hover, .button-group > li.alert > button:focus {
  border-color: #c2270d;
}

.button-group > li.alert > a .iconic *, .button-group > li.alert > label .iconic *, .button-group > li.alert > button .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group > li.alert > a .iconic *.iconic-property-accent, .button-group > li.alert > label .iconic *.iconic-property-accent, .button-group > li.alert > button .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group.segmented {
  border-color: #00558b;
}

.button-group.segmented > li > a, .button-group.segmented > li > label, .button-group.segmented > li > button {
  border-color: #00558b;
  color: #00558b;
}

.button-group.segmented > li > a:hover, .button-group.segmented > li > label:hover, .button-group.segmented > li > button:hover {
  background: rgba(0, 85, 139, 0.25);
  color: #00558b;
}

.button-group.segmented > li > a .iconic *, .button-group.segmented > li > label .iconic *, .button-group.segmented > li > button .iconic * {
  fill: #00558b;
  stroke: #00558b;
}

.button-group.segmented > li > a .iconic *.iconic-property-accent, .button-group.segmented > li > label .iconic *.iconic-property-accent, .button-group.segmented > li > button .iconic *.iconic-property-accent {
  fill: #00558b;
  stroke: #00558b;
}

.button-group.segmented > li.is-active > a, .button-group.segmented > li.is-active > a:hover,
.button-group.segmented > li > input:checked + label,
.button-group.segmented > li > input:checked + label:hover {
  background: #00558b;
  color: #fff;
}

.button-group.segmented > li.is-active > a .iconic *,
.button-group.segmented > li > input:checked + label .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group.segmented > li.is-active > a .iconic *.iconic-property-accent,
.button-group.segmented > li > input:checked + label .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group.segmented.secondary {
  border-color: #f1f1f1;
}

.button-group.segmented.secondary > li > a, .button-group.segmented.secondary > li > label, .button-group.segmented.secondary > li > button {
  border-color: #f1f1f1;
  color: #f1f1f1;
}

.button-group.segmented.secondary > li > a:hover, .button-group.segmented.secondary > li > label:hover, .button-group.segmented.secondary > li > button:hover {
  background: rgba(241, 241, 241, 0.25);
  color: #f1f1f1;
}

.button-group.segmented.secondary > li > a .iconic *, .button-group.segmented.secondary > li > label .iconic *, .button-group.segmented.secondary > li > button .iconic * {
  fill: #f1f1f1;
  stroke: #f1f1f1;
}

.button-group.segmented.secondary > li > a .iconic *.iconic-property-accent, .button-group.segmented.secondary > li > label .iconic *.iconic-property-accent, .button-group.segmented.secondary > li > button .iconic *.iconic-property-accent {
  fill: #f1f1f1;
  stroke: #f1f1f1;
}

.button-group.segmented.secondary > li.is-active > a, .button-group.segmented.secondary > li.is-active > a:hover,
.button-group.segmented.secondary > li > input:checked + label,
.button-group.segmented.secondary > li > input:checked + label:hover {
  background: #f1f1f1;
  color: #000;
}

.button-group.segmented.secondary > li.is-active > a .iconic *,
.button-group.segmented.secondary > li > input:checked + label .iconic * {
  fill: #000;
  stroke: #000;
}

.button-group.segmented.secondary > li.is-active > a .iconic *.iconic-property-accent,
.button-group.segmented.secondary > li > input:checked + label .iconic *.iconic-property-accent {
  fill: #000;
  stroke: #000;
}

.button-group.segmented.success {
  border-color: #43AC6A;
}

.button-group.segmented.success > li > a, .button-group.segmented.success > li > label, .button-group.segmented.success > li > button {
  border-color: #43AC6A;
  color: #43AC6A;
}

.button-group.segmented.success > li > a:hover, .button-group.segmented.success > li > label:hover, .button-group.segmented.success > li > button:hover {
  background: rgba(67, 172, 106, 0.25);
  color: #43AC6A;
}

.button-group.segmented.success > li > a .iconic *, .button-group.segmented.success > li > label .iconic *, .button-group.segmented.success > li > button .iconic * {
  fill: #43AC6A;
  stroke: #43AC6A;
}

.button-group.segmented.success > li > a .iconic *.iconic-property-accent, .button-group.segmented.success > li > label .iconic *.iconic-property-accent, .button-group.segmented.success > li > button .iconic *.iconic-property-accent {
  fill: #43AC6A;
  stroke: #43AC6A;
}

.button-group.segmented.success > li.is-active > a, .button-group.segmented.success > li.is-active > a:hover,
.button-group.segmented.success > li > input:checked + label,
.button-group.segmented.success > li > input:checked + label:hover {
  background: #43AC6A;
  color: #fff;
}

.button-group.segmented.success > li.is-active > a .iconic *,
.button-group.segmented.success > li > input:checked + label .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group.segmented.success > li.is-active > a .iconic *.iconic-property-accent,
.button-group.segmented.success > li > input:checked + label .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group.segmented.warning {
  border-color: #F08A24;
}

.button-group.segmented.warning > li > a, .button-group.segmented.warning > li > label, .button-group.segmented.warning > li > button {
  border-color: #F08A24;
  color: #F08A24;
}

.button-group.segmented.warning > li > a:hover, .button-group.segmented.warning > li > label:hover, .button-group.segmented.warning > li > button:hover {
  background: rgba(240, 138, 36, 0.25);
  color: #F08A24;
}

.button-group.segmented.warning > li > a .iconic *, .button-group.segmented.warning > li > label .iconic *, .button-group.segmented.warning > li > button .iconic * {
  fill: #F08A24;
  stroke: #F08A24;
}

.button-group.segmented.warning > li > a .iconic *.iconic-property-accent, .button-group.segmented.warning > li > label .iconic *.iconic-property-accent, .button-group.segmented.warning > li > button .iconic *.iconic-property-accent {
  fill: #F08A24;
  stroke: #F08A24;
}

.button-group.segmented.warning > li.is-active > a, .button-group.segmented.warning > li.is-active > a:hover,
.button-group.segmented.warning > li > input:checked + label,
.button-group.segmented.warning > li > input:checked + label:hover {
  background: #F08A24;
  color: #fff;
}

.button-group.segmented.warning > li.is-active > a .iconic *,
.button-group.segmented.warning > li > input:checked + label .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group.segmented.warning > li.is-active > a .iconic *.iconic-property-accent,
.button-group.segmented.warning > li > input:checked + label .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group.segmented.alert {
  border-color: #F04124;
}

.button-group.segmented.alert > li > a, .button-group.segmented.alert > li > label, .button-group.segmented.alert > li > button {
  border-color: #F04124;
  color: #F04124;
}

.button-group.segmented.alert > li > a:hover, .button-group.segmented.alert > li > label:hover, .button-group.segmented.alert > li > button:hover {
  background: rgba(240, 65, 36, 0.25);
  color: #F04124;
}

.button-group.segmented.alert > li > a .iconic *, .button-group.segmented.alert > li > label .iconic *, .button-group.segmented.alert > li > button .iconic * {
  fill: #F04124;
  stroke: #F04124;
}

.button-group.segmented.alert > li > a .iconic *.iconic-property-accent, .button-group.segmented.alert > li > label .iconic *.iconic-property-accent, .button-group.segmented.alert > li > button .iconic *.iconic-property-accent {
  fill: #F04124;
  stroke: #F04124;
}

.button-group.segmented.alert > li.is-active > a, .button-group.segmented.alert > li.is-active > a:hover,
.button-group.segmented.alert > li > input:checked + label,
.button-group.segmented.alert > li > input:checked + label:hover {
  background: #F04124;
  color: #fff;
}

.button-group.segmented.alert > li.is-active > a .iconic *,
.button-group.segmented.alert > li > input:checked + label .iconic * {
  fill: #fff;
  stroke: #fff;
}

.button-group.segmented.alert > li.is-active > a .iconic *.iconic-property-accent,
.button-group.segmented.alert > li > input:checked + label .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.button-group.tiny {
  font-size: 0.63rem;
}

.button-group.small {
  font-size: 0.72rem;
}

.button-group.large {
  font-size: 1.17rem;
}

.button-group.expand {
  display: -ms-flexbox;
  display: flex;
}

.button-group.expand > li {
  -ms-flex: 1;
      flex: 1;
}

.button-group.expand > li > a, .button-group.expand > li > label, .button-group.expand > li > button {
  display: block;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.button-group li.disabled > a, .button-group li.disabled > label, .button-group li.disabled > button {
  opacity: 0.5;
  cursor: default;
  pointer-events: none;
}

/*
  Cards

  Structure:

  titles
  lists
*/
.card {
  border: 1px solid #ededed;
  margin-bottom: 0.5rem;
  background: #fff;
  color: #000;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.card h1, .card h2, .card h3, .card h4, .card h5, .card h6 {
  color: inherit;
}

.card ul {
  margin-bottom: 0;
}

.card img {
  width: 100%;
}

.card.primary {
  border: 0;
  margin-bottom: 0.5rem;
  background: #00558b;
  color: #fff;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.card.primary h1, .card.primary h2, .card.primary h3, .card.primary h4, .card.primary h5, .card.primary h6 {
  color: inherit;
}

.card.primary ul {
  margin-bottom: 0;
}

.card.primary img {
  width: 100%;
}

.card.primary .card-divider {
  background: #0065a5;
  padding: 1rem;
}

.card.success {
  border: 0;
  margin-bottom: 0.5rem;
  background: #43AC6A;
  color: #fff;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.card.success h1, .card.success h2, .card.success h3, .card.success h4, .card.success h5, .card.success h6 {
  color: inherit;
}

.card.success ul {
  margin-bottom: 0;
}

.card.success img {
  width: 100%;
}

.card.success .card-divider {
  background: #4ab873;
  padding: 1rem;
}

.card.warning {
  border: 0;
  margin-bottom: 0.5rem;
  background: #F08A24;
  color: #fff;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.card.warning h1, .card.warning h2, .card.warning h3, .card.warning h4, .card.warning h5, .card.warning h6 {
  color: inherit;
}

.card.warning ul {
  margin-bottom: 0;
}

.card.warning img {
  width: 100%;
}

.card.warning .card-divider {
  background: #f19233;
  padding: 1rem;
}

.card.alert {
  border: 0;
  margin-bottom: 0.5rem;
  background: #F04124;
  color: #fff;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.card.alert h1, .card.alert h2, .card.alert h3, .card.alert h4, .card.alert h5, .card.alert h6 {
  color: inherit;
}

.card.alert ul {
  margin-bottom: 0;
}

.card.alert img {
  width: 100%;
}

.card.alert .card-divider {
  background: #f14e33;
  padding: 1rem;
}

.card.dark {
  border: 0;
  margin-bottom: 0.5rem;
  background: #232323;
  color: #fff;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.card.dark h1, .card.dark h2, .card.dark h3, .card.dark h4, .card.dark h5, .card.dark h6 {
  color: inherit;
}

.card.dark ul {
  margin-bottom: 0;
}

.card.dark img {
  width: 100%;
}

.card.dark .card-divider {
  background: #323232;
  padding: 1rem;
}

.card-divider {
  background: #ededed;
  padding: 1rem;
}

.card-section {
  padding: 1rem;
}

/*
  Odds and ends.
*/
.close-button {
  position: absolute;
  color: #999;
  top: 1rem;
  right: 1rem;
  font-size: 2em;
  line-height: 0.5;
  cursor: pointer;
}

.close-button:hover {
  color: #333;
}

.thumbnail, ul.thumbnails > li img {
  padding: 0.5rem;
  box-shadow: 0 3px 15px rgba(0, 0, 0, 0.25);
}

ul.thumbnails > li {
  margin-bottom: 1rem;
}

ul.thumbnails > li a {
  display: block;
}

/*
  FORMS
  -----

  Our form styles include basic resets for text fields, select menus, and so on, along with some of our own custom components.

  Includes:
   - Text fields
   - Text areas
   - Select menus
   - Checkboxes and radio buttons
   - Range slider
   - Progress bars and meters
*/
input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="week"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="color"], textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  display: block;
  width: 100%;
  height: 2.4rem;
  padding: 0.5rem;
  margin: 0 0 1rem 0;
  border: 1px solid #ccc;
  border-radius: 0;
  background: #fff;
  color: #000;
  font-size: 1rem;
  -webkit-font-smoothing: antialiased;
  vertical-align: middle;
}

input[type="text"]:hover, input[type="password"]:hover, input[type="date"]:hover, input[type="datetime"]:hover, input[type="datetime-local"]:hover, input[type="month"]:hover, input[type="week"]:hover, input[type="email"]:hover, input[type="number"]:hover, input[type="search"]:hover, input[type="tel"]:hover, input[type="time"]:hover, input[type="url"]:hover, input[type="color"]:hover, textarea:hover {
  border: 1px solid #bbb;
  background: #fff;
  color: #000;
}

input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="time"]:focus, input[type="url"]:focus, input[type="color"]:focus, textarea:focus {
  outline: 0;
  border: 1px solid #999;
  background: #fff;
  color: #000;
}

label > input[type="text"], label > input[type="password"], label > input[type="date"], label > input[type="datetime"], label > input[type="datetime-local"], label > input[type="month"], label > input[type="week"], label > input[type="email"], label > input[type="number"], label > input[type="search"], label > input[type="tel"], label > input[type="time"], label > input[type="url"], label > input[type="color"], label > textarea {
  margin-top: 0.5rem;
}

input[type="search"] {
  box-sizing: border-box;
}

input.disabled, input[disabled], input[readonly],
fieldset[disabled] input {
  cursor: not-allowed;
}

input.disabled, input.disabled:hover, input[disabled], input[disabled]:hover, input[readonly], input[readonly]:hover,
fieldset[disabled] input,
fieldset[disabled] input:hover {
  background-color: #f2f2f2;
}

label {
  display: block;
  font-size: 0.9rem;
  margin-bottom: 0.5rem;
  color: #333;
}

label > input, label > textarea {
  margin-top: 0.5rem;
}

input[type="checkbox"],
input[type="radio"] {
  width: 1rem;
  height: 1rem;
}

label > input[type="checkbox"], label > input[type="radio"] {
  margin-right: 0.25rem;
}

input[type="checkbox"] + label, input[type="radio"] + label {
  display: inline-block;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
  vertical-align: baseline;
}

.inline-label {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-align: stretch;
      align-items: stretch;
  margin-bottom: 1rem;
}

label > .inline-label {
  margin-top: 0.5rem;
}

.inline-label > input, .inline-label > select {
  -ms-flex: 1;
      flex: 1;
  margin: 0;
}

.inline-label > .form-label {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  background: #eee;
  color: #333;
  border: 1px solid #ccc;
  padding: 0 0.5rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.inline-label > .form-label:first-child {
  border-right: 0;
}

.inline-label > .form-label:last-child {
  border-left: 0;
}

.inline-label > a,
.inline-label > button,
.inline-label > input[type="button"],
.inline-label > input[type="submit"] {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding-top: 0;
  padding-bottom: 0;
  margin: 0;
  border-radius: 0;
}

textarea {
  height: auto;
  width: 100%;
  min-height: 50px;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  display: block;
  width: 100%;
  height: 2.4rem;
  padding: 0.5rem;
  margin: 0 0 1rem 0;
  font-size: 1rem;
  color: #000;
  border-radius: 0;
  border: 1px solid #ccc;
  background: #fafafa url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: black"></polygon></svg>') right 10px center no-repeat;
  background-size: 8px 8px;
  padding-right: 1.625rem;
}

select:hover {
  background-color: #f0f0f0;
}

select:focus {
  outline: 0;
}

select::-ms-expand {
  display: none;
}

input[type="range"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  display: block;
  width: 100%;
  height: auto;
  cursor: pointer;
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
  border: 0;
  line-height: 1;
}

input[type="range"]:focus {
  outline: 0;
}

input[type="range"]::-webkit-slider-runnable-track {
  height: 1rem;
  background: #ddd;
}

input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: #00558b;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.25rem;
}

input[type="range"]::-moz-range-track {
  -moz-appearance: none;
  height: 1rem;
  background: #ccc;
}

input[type="range"]::-moz-range-thumb {
  -moz-appearance: none;
  background: #00558b;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.25rem;
}

input[type="range"]::-ms-track {
  height: 1rem;
  background: #ddd;
  color: transparent;
  border: 0;
  overflow: visible;
  border-top: 0.25rem solid #fff;
  border-bottom: 0.25rem solid #fff;
}

input[type="range"]::-ms-thumb {
  background: #00558b;
  width: 1.5rem;
  height: 1.5rem;
  border: 0;
}

input[type="range"]::-ms-fill-lower, input[type="range"]::-ms-fill-upper {
  background: #ddd;
}

output {
  line-height: 1.5rem;
  vertical-align: middle;
  margin-left: 0.5em;
}

input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  background: #00558b;
}

progress, meter {
  -webkit-appearance: none;
  -moz-appearance: none;
  display: block;
  width: 100%;
  height: 1.5rem;
  margin-bottom: 1rem;
  background: #ccc;
  border: 0;
}

progress::-webkit-progress-bar {
  background: #ccc;
}

progress::-webkit-progress-value {
  background: #00558b;
}

progress::-moz-progress-bar {
  background: #00558b;
}

progress.high::-webkit-progress-value {
  background: #43AC6A;
}

progress.high::-moz-progress-bar {
  background: #43AC6A;
}

progress.medium::-webkit-progress-value {
  background: #e7cf00;
}

progress.medium::-moz-progress-bar {
  background: #e7cf00;
}

progress.low::-webkit-progress-value {
  background: #F04124;
}

progress.low::-moz-progress-bar {
  background: #F04124;
}

meter {
  background: #ccc;
}

meter::-webkit-meter-bar {
  background: #ccc;
}

meter::-webkit-meter-optimum-value {
  background: #43AC6A;
}

meter::-webkit-meter-suboptimum-value {
  background: #e7cf00;
}

meter::-webkit-meter-even-less-good-value {
  background: #F04124;
}

meter::-moz-meter-bar {
  background: #00558b;
}

meter:-moz-meter-optimum::-moz-meter-bar {
  background: #43AC6A;
}

meter:-moz-meter-sub-optimum::-moz-meter-bar {
  background: #e7cf00;
}

meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
  background: #F04124;
}

/*
  PANEL
  -----

  The friendly panel is an all-purpose container for hiding content off-screen.

  Features:
   - Position at top, right, bottom, or left
   - Anchor to grid block or window
   - Define max width or height
   - Transform into grid block depending on screen size
*/
.panel {
  display: block;
  position: absolute;
  z-index: 100;
  overflow-y: auto;
  display: none;
}

.is-active.panel {
  display: block;
}

.panel {
  /*
    Basic styles
  */
  padding: 0;
  background: #fff;
}

.panel-top {
  /*
    Direction
  */
  top: 0;
  left: 0;
  width: 100%;
  /*
    Sizing
  */
  height: 300px;
  /*
    Shadows
  */
}

.panel-top.is-active {
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25);
}

.panel-right {
  /*
    Direction
  */
  top: 0;
  right: 0;
  height: 100%;
  /*
    Sizing
  */
  width: 100%;
  /*
    Shadows
  */
}

@media only screen and (min-width: 18.75em) {
  .panel-right {
    width: 300px;
  }
}

.panel-right.is-active {
  box-shadow: -3px 0 10px rgba(0, 0, 0, 0.25);
}

.panel-bottom {
  /*
    Direction
  */
  bottom: 0;
  left: 0;
  width: 100%;
  /*
    Sizing
  */
  height: 300px;
  /*
    Shadows
  */
}

.panel-bottom.is-active {
  box-shadow: 2px -3px 10px rgba(0, 0, 0, 0.25);
}

.panel-left {
  /*
    Direction
  */
  top: 0;
  left: 0;
  height: 100%;
  /*
    Sizing
  */
  width: 100%;
  /*
    Shadows
  */
}

@media only screen and (min-width: 18.75em) {
  .panel-left {
    width: 300px;
  }
}

.panel-left.is-active {
  box-shadow: 3px 0 10px rgba(0, 0, 0, 0.25);
}

.panel-fixed {
  position: fixed;
}

/*
  THE GRID
  --------

  Foundation's magical, flexbox-powered grid.

  Features:
   - Horizontal or vertical grids
   - Auto-sizing or percentage width grid blocks
   - Independently-scrollable blocks
   - Column alignment
   - Source ordering
   - Offsets
*/
/*
  Define the size of a grid block. Blocks are flex items. By default, they stretch to fill all available space, based on the size of sibling blocks. This is the "expand" behavior.

  If set to "shrink", the block will contract and only fill as much space as it needs for its content.

  If set to a number, the block will be given a percentage width, based on the total number of columns (12 by default). Percentage widths don't work if a block is inside a vertical grid.

  @group grid

  @param {number|string} $size - Sizing behavior of the block. Should be expand, shrink, or a number.

  @output The flex-basis, flex-grow, and flex-shrink properties.
*/
/*
  Set the orientation of blocks within this block. The grid is re-oriented by changing the flex direction of the block.

  @group grid

  @param {string} $orientation - Direction of the grid, either horizontal or vertical.

  @output A flex-flow property to match the direction given.
*/
/*
  Stretch a grid's child blocks across its cross-axis, making every column appear to have the same height.

  @group grid

  @param {bool} $stretch - Stretch blocks if true, or align blocks to top if false.

  @output Sets align-items to "stretch" if $stretch is true, or "flex-start" (the default value) if false.
*/
/*
  Set the alignment of blocks within a grid.

  left: Items align to the left.
  right: Items align to the right.
  center: Items align to the center.
  justify: Items are spaced equally apart so they occupy the space of the entire grid.
  spaced: Items are given equal space to their left and right.

  @group grid

  @param {string} $align - Alignment to use.

  @output An appropriate justify-content value.
*/
/*
  Set the source order of a block. Items with lower numbers appear first. If multiple items have the same number, the one in the HTML first will appear first.

  @group grid

  @param {number} $order - Position in source order.

  @output An order property.
*/
/*
  Collapse a content block by removing the padding.

  @group grid

  @param {bool} $collapse - Collapses the block if true.

  @output A padding value.

  @todo No way to reverse collapse using this mixin. Solution:
    - If true, add padding: 0;
    - If false, add padding: 1rem;
    - If null, add nothing, to cut down on CSS output
    - Make null the default value
*/
/*
  Constrain the size of a block to the size of the average grid row, and center-align it. This imitates the behavior of ordinary Foundation rows.

  @group grid

  @param {bool} $container - Adds container styles if true.

  @output A maximum width and the good old margin: 0 auto for center alignment.
*/
/*
  Add negative margins to a block, equal to the padding of a content block. This aligns the edges of a block nested inside a content block.

  @group grid

  @param {bool} $nest - Adds negative margins if true.

  @output Negative margin values.
*/
/*
  Offset a block by adding a left margin.

  @group grid

  @param {number | bool} $offset - If false, nothing is output. If a number, offsets the column by the specified number of columns.

  @output A left margin based on the number of columns specified, and the global number of columns.
*/
/*
  Resets styles set by panels. Use this when a panel transforms into a block on larger screens.

  @group grid

  @output Resets to transform, position, and a few visual styles.
*/
/*
  Frames are containers that stretch to the full dimmensions of the browser window.
*/
/*
  Groups are collections of content items. They're the "rows" of Foundation for Apps.
*/
/*
  Blocks are containers for actual content. They're the "columns" of Foundation for Apps.
*/
.vertical.grid-frame, .vertical.grid-block, .vertical.tiny-grid-block, .vertical.small-grid-block, .vertical.medium-grid-block, .vertical.large-grid-block, .vertical.landscape-grid-block, .vertical.portrait-grid-block, .vertical.landscape-tiny-grid-block, .vertical.landscape-small-grid-block, .vertical.landscape-medium-grid-block, .vertical.landscape-large-grid-block, .vertical.portrait-tiny-grid-block, .vertical.portrait-small-grid-block, .vertical.portrait-medium-grid-block, .vertical.portrait-large-grid-block {
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  -ms-flex-align: stretch;
      align-items: stretch;
}

.tiny-vertical.grid-frame, .tiny-vertical.grid-block, .tiny-vertical.tiny-grid-block, .tiny-vertical.small-grid-block, .tiny-vertical.medium-grid-block, .tiny-vertical.large-grid-block, .tiny-vertical.landscape-grid-block, .tiny-vertical.portrait-grid-block, .tiny-vertical.landscape-tiny-grid-block, .tiny-vertical.landscape-small-grid-block, .tiny-vertical.landscape-medium-grid-block, .tiny-vertical.landscape-large-grid-block, .tiny-vertical.portrait-tiny-grid-block, .tiny-vertical.portrait-small-grid-block, .tiny-vertical.portrait-medium-grid-block, .tiny-vertical.portrait-large-grid-block {
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  -ms-flex-align: stretch;
      align-items: stretch;
}

.tiny-horizontal.grid-frame, .tiny-horizontal.grid-block, .tiny-horizontal.tiny-grid-block, .tiny-horizontal.small-grid-block, .tiny-horizontal.medium-grid-block, .tiny-horizontal.large-grid-block, .tiny-horizontal.landscape-grid-block, .tiny-horizontal.portrait-grid-block, .tiny-horizontal.landscape-tiny-grid-block, .tiny-horizontal.landscape-small-grid-block, .tiny-horizontal.landscape-medium-grid-block, .tiny-horizontal.landscape-large-grid-block, .tiny-horizontal.portrait-tiny-grid-block, .tiny-horizontal.portrait-small-grid-block, .tiny-horizontal.portrait-medium-grid-block, .tiny-horizontal.portrait-large-grid-block {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
}

@media only screen and (min-width: 30em) {
  .small-vertical.grid-frame, .small-vertical.grid-block, .small-vertical.tiny-grid-block, .small-vertical.small-grid-block, .small-vertical.medium-grid-block, .small-vertical.large-grid-block, .small-vertical.landscape-grid-block, .small-vertical.portrait-grid-block, .small-vertical.landscape-tiny-grid-block, .small-vertical.landscape-small-grid-block, .small-vertical.landscape-medium-grid-block, .small-vertical.landscape-large-grid-block, .small-vertical.portrait-tiny-grid-block, .small-vertical.portrait-small-grid-block, .small-vertical.portrait-medium-grid-block, .small-vertical.portrait-large-grid-block {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
  }
  .small-horizontal.grid-frame, .small-horizontal.grid-block, .small-horizontal.tiny-grid-block, .small-horizontal.small-grid-block, .small-horizontal.medium-grid-block, .small-horizontal.large-grid-block, .small-horizontal.landscape-grid-block, .small-horizontal.portrait-grid-block, .small-horizontal.landscape-tiny-grid-block, .small-horizontal.landscape-small-grid-block, .small-horizontal.landscape-medium-grid-block, .small-horizontal.landscape-large-grid-block, .small-horizontal.portrait-tiny-grid-block, .small-horizontal.portrait-small-grid-block, .small-horizontal.portrait-medium-grid-block, .small-horizontal.portrait-large-grid-block {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
  }
}

@media only screen and (min-width: 40em) {
  .medium-vertical.grid-frame, .medium-vertical.grid-block, .medium-vertical.tiny-grid-block, .medium-vertical.small-grid-block, .medium-vertical.medium-grid-block, .medium-vertical.large-grid-block, .medium-vertical.landscape-grid-block, .medium-vertical.portrait-grid-block, .medium-vertical.landscape-tiny-grid-block, .medium-vertical.landscape-small-grid-block, .medium-vertical.landscape-medium-grid-block, .medium-vertical.landscape-large-grid-block, .medium-vertical.portrait-tiny-grid-block, .medium-vertical.portrait-small-grid-block, .medium-vertical.portrait-medium-grid-block, .medium-vertical.portrait-large-grid-block {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
  }
  .medium-horizontal.grid-frame, .medium-horizontal.grid-block, .medium-horizontal.tiny-grid-block, .medium-horizontal.small-grid-block, .medium-horizontal.medium-grid-block, .medium-horizontal.large-grid-block, .medium-horizontal.landscape-grid-block, .medium-horizontal.portrait-grid-block, .medium-horizontal.landscape-tiny-grid-block, .medium-horizontal.landscape-small-grid-block, .medium-horizontal.landscape-medium-grid-block, .medium-horizontal.landscape-large-grid-block, .medium-horizontal.portrait-tiny-grid-block, .medium-horizontal.portrait-small-grid-block, .medium-horizontal.portrait-medium-grid-block, .medium-horizontal.portrait-large-grid-block {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
  }
}

@media only screen and (min-width: 75em) {
  .large-vertical.grid-frame, .large-vertical.grid-block, .large-vertical.tiny-grid-block, .large-vertical.small-grid-block, .large-vertical.medium-grid-block, .large-vertical.large-grid-block, .large-vertical.landscape-grid-block, .large-vertical.portrait-grid-block, .large-vertical.landscape-tiny-grid-block, .large-vertical.landscape-small-grid-block, .large-vertical.landscape-medium-grid-block, .large-vertical.landscape-large-grid-block, .large-vertical.portrait-tiny-grid-block, .large-vertical.portrait-small-grid-block, .large-vertical.portrait-medium-grid-block, .large-vertical.portrait-large-grid-block {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
  }
  .large-horizontal.grid-frame, .large-horizontal.grid-block, .large-horizontal.tiny-grid-block, .large-horizontal.small-grid-block, .large-horizontal.medium-grid-block, .large-horizontal.large-grid-block, .large-horizontal.landscape-grid-block, .large-horizontal.portrait-grid-block, .large-horizontal.landscape-tiny-grid-block, .large-horizontal.landscape-small-grid-block, .large-horizontal.landscape-medium-grid-block, .large-horizontal.landscape-large-grid-block, .large-horizontal.portrait-tiny-grid-block, .large-horizontal.portrait-small-grid-block, .large-horizontal.portrait-medium-grid-block, .large-horizontal.portrait-large-grid-block {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
  }
}

.align-right.grid-frame, .align-right.grid-block, .align-right.tiny-grid-block, .align-right.small-grid-block, .align-right.medium-grid-block, .align-right.large-grid-block, .align-right.landscape-grid-block, .align-right.portrait-grid-block, .align-right.landscape-tiny-grid-block, .align-right.landscape-small-grid-block, .align-right.landscape-medium-grid-block, .align-right.landscape-large-grid-block, .align-right.portrait-tiny-grid-block, .align-right.portrait-small-grid-block, .align-right.portrait-medium-grid-block, .align-right.portrait-large-grid-block {
  -ms-flex-pack: end;
      justify-content: flex-end;
}

.align-center.grid-frame, .align-center.grid-block, .align-center.tiny-grid-block, .align-center.small-grid-block, .align-center.medium-grid-block, .align-center.large-grid-block, .align-center.landscape-grid-block, .align-center.portrait-grid-block, .align-center.landscape-tiny-grid-block, .align-center.landscape-small-grid-block, .align-center.landscape-medium-grid-block, .align-center.landscape-large-grid-block, .align-center.portrait-tiny-grid-block, .align-center.portrait-small-grid-block, .align-center.portrait-medium-grid-block, .align-center.portrait-large-grid-block {
  -ms-flex-pack: center;
      justify-content: center;
}

.align-justify.grid-frame, .align-justify.grid-block, .align-justify.tiny-grid-block, .align-justify.small-grid-block, .align-justify.medium-grid-block, .align-justify.large-grid-block, .align-justify.landscape-grid-block, .align-justify.portrait-grid-block, .align-justify.landscape-tiny-grid-block, .align-justify.landscape-small-grid-block, .align-justify.landscape-medium-grid-block, .align-justify.landscape-large-grid-block, .align-justify.portrait-tiny-grid-block, .align-justify.portrait-small-grid-block, .align-justify.portrait-medium-grid-block, .align-justify.portrait-large-grid-block {
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.align-spaced.grid-frame, .align-spaced.grid-block, .align-spaced.tiny-grid-block, .align-spaced.small-grid-block, .align-spaced.medium-grid-block, .align-spaced.large-grid-block, .align-spaced.landscape-grid-block, .align-spaced.portrait-grid-block, .align-spaced.landscape-tiny-grid-block, .align-spaced.landscape-small-grid-block, .align-spaced.landscape-medium-grid-block, .align-spaced.landscape-large-grid-block, .align-spaced.portrait-tiny-grid-block, .align-spaced.portrait-small-grid-block, .align-spaced.portrait-medium-grid-block, .align-spaced.portrait-large-grid-block {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.wrap.grid-frame, .wrap.grid-block, .wrap.tiny-grid-block, .wrap.small-grid-block, .wrap.medium-grid-block, .wrap.large-grid-block, .wrap.landscape-grid-block, .wrap.portrait-grid-block, .wrap.landscape-tiny-grid-block, .wrap.landscape-small-grid-block, .wrap.landscape-medium-grid-block, .wrap.landscape-large-grid-block, .wrap.portrait-tiny-grid-block, .wrap.portrait-small-grid-block, .wrap.portrait-medium-grid-block, .wrap.portrait-large-grid-block {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: start;
      align-items: flex-start;
}

.shrink.grid-block, .shrink.grid-content, .shrink.tiny-grid-block, .shrink.tiny-grid-content, .shrink.small-grid-block, .shrink.small-grid-content, .shrink.medium-grid-block, .shrink.medium-grid-content, .shrink.large-grid-block, .shrink.large-grid-content, .shrink.landscape-grid-block, .shrink.portrait-grid-block, .shrink.landscape-tiny-grid-block, .shrink.landscape-small-grid-block, .shrink.landscape-medium-grid-block, .shrink.landscape-large-grid-block, .shrink.portrait-tiny-grid-block, .shrink.portrait-small-grid-block, .shrink.portrait-medium-grid-block, .shrink.portrait-large-grid-block {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}

.noscroll.grid-block, .noscroll.grid-content, .noscroll.tiny-grid-block, .noscroll.tiny-grid-content, .noscroll.small-grid-block, .noscroll.small-grid-content, .noscroll.medium-grid-block, .noscroll.medium-grid-content, .noscroll.large-grid-block, .noscroll.large-grid-content, .noscroll.landscape-grid-block, .noscroll.portrait-grid-block, .noscroll.landscape-tiny-grid-block, .noscroll.landscape-small-grid-block, .noscroll.landscape-medium-grid-block, .noscroll.landscape-large-grid-block, .noscroll.portrait-tiny-grid-block, .noscroll.portrait-small-grid-block, .noscroll.portrait-medium-grid-block, .noscroll.portrait-large-grid-block {
  overflow: hidden;
}

.grid-frame {
  display: -ms-flexbox;
  display: flex;
  height: 100vh;
  position: relative;
  overflow: hidden;
  backface-visibility: hidden;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: stretch;
      align-items: stretch;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-order: 0;
      order: 0;
}

.grid-block {
  display: -ms-flexbox;
  display: flex;
  height: 100vh;
  position: relative;
  overflow: hidden;
  backface-visibility: hidden;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: stretch;
      align-items: stretch;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-order: 0;
      order: 0;
  height: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.grid-content {
  display: block;
  padding: 0 1rem;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
}

.grid-content.collapse {
  padding: 0;
}

.grid-content .grid-block {
  margin-left: -1rem;
  margin-right: -1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  overflow: visible;
}

.grid-content .grid-block.nowrap {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: stretch;
      align-items: stretch;
}

.grid-content .grid-block .grid-content {
  overflow: visible;
}

.grid-container {
  max-width: 56.25rem;
  margin: 0 auto;
}

.grid-container.contain-left {
  max-width: 56.25rem;
  margin: 0 auto 0 0;
}

.grid-container.contain-right {
  max-width: 56.25rem;
  margin: 0 0 0 auto;
}

.tiny-grid-block {
  display: -ms-flexbox;
  display: flex;
  height: 100vh;
  position: relative;
  overflow: hidden;
  backface-visibility: hidden;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: stretch;
      align-items: stretch;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-order: 0;
      order: 0;
  height: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.tiny-grid-block.panel {
  transform: none;
  position: relative;
  width: auto;
  height: auto;
  z-index: auto;
  box-shadow: none;
  background: transparent;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
}

.tiny-grid-content {
  display: block;
  padding: 0 1rem;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
}

.tiny-grid-content.panel {
  transform: none;
  position: relative;
  width: auto;
  height: auto;
  z-index: auto;
  box-shadow: none;
  background: transparent;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
}

@media only screen and (min-width: 30em) {
  .small-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .small-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (min-width: 30em) {
  .small-grid-content {
    display: block;
    padding: 0 1rem;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
  }
  .small-grid-content.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (min-width: 40em) {
  .medium-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .medium-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (min-width: 40em) {
  .medium-grid-content {
    display: block;
    padding: 0 1rem;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
  }
  .medium-grid-content.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (min-width: 75em) {
  .large-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .large-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (min-width: 75em) {
  .large-grid-content {
    display: block;
    padding: 0 1rem;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
  }
  .large-grid-content.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

.order-1 {
  -ms-flex-order: 1;
      order: 1;
}

.order-2 {
  -ms-flex-order: 2;
      order: 2;
}

.order-3 {
  -ms-flex-order: 3;
      order: 3;
}

.order-4 {
  -ms-flex-order: 4;
      order: 4;
}

.order-5 {
  -ms-flex-order: 5;
      order: 5;
}

.order-6 {
  -ms-flex-order: 6;
      order: 6;
}

.order-7 {
  -ms-flex-order: 7;
      order: 7;
}

.order-8 {
  -ms-flex-order: 8;
      order: 8;
}

.order-9 {
  -ms-flex-order: 9;
      order: 9;
}

.order-10 {
  -ms-flex-order: 10;
      order: 10;
}

.order-11 {
  -ms-flex-order: 11;
      order: 11;
}

.order-12 {
  -ms-flex-order: 12;
      order: 12;
}

.order-13 {
  -ms-flex-order: 13;
      order: 13;
}

.order-14 {
  -ms-flex-order: 14;
      order: 14;
}

.order-15 {
  -ms-flex-order: 15;
      order: 15;
}

.order-16 {
  -ms-flex-order: 16;
      order: 16;
}

.order-17 {
  -ms-flex-order: 17;
      order: 17;
}

.order-18 {
  -ms-flex-order: 18;
      order: 18;
}

.order-19 {
  -ms-flex-order: 19;
      order: 19;
}

.order-20 {
  -ms-flex-order: 20;
      order: 20;
}

.tiny-1 {
  -ms-flex: 0 0 5%;
      flex: 0 0 5%;
  max-width: 5%;
}

.tiny-order-1 {
  -ms-flex-order: 1;
      order: 1;
}

.tiny-offset-1 {
  margin-left: 5%;
}

.tiny-up-1 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-1 > li, .tiny-up-1 > div, .tiny-up-1 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
}

.tiny-2 {
  -ms-flex: 0 0 10%;
      flex: 0 0 10%;
  max-width: 10%;
}

.tiny-order-2 {
  -ms-flex-order: 2;
      order: 2;
}

.tiny-offset-2 {
  margin-left: 10%;
}

.tiny-up-2 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-2 > li, .tiny-up-2 > div, .tiny-up-2 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 50%;
      flex: 0 0 50%;
}

.tiny-3 {
  -ms-flex: 0 0 15%;
      flex: 0 0 15%;
  max-width: 15%;
}

.tiny-order-3 {
  -ms-flex-order: 3;
      order: 3;
}

.tiny-offset-3 {
  margin-left: 15%;
}

.tiny-up-3 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-3 > li, .tiny-up-3 > div, .tiny-up-3 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 33.33333%;
      flex: 0 0 33.33333%;
}

.tiny-4 {
  -ms-flex: 0 0 20%;
      flex: 0 0 20%;
  max-width: 20%;
}

.tiny-order-4 {
  -ms-flex-order: 4;
      order: 4;
}

.tiny-offset-4 {
  margin-left: 20%;
}

.tiny-up-4 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-4 > li, .tiny-up-4 > div, .tiny-up-4 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 25%;
      flex: 0 0 25%;
}

.tiny-5 {
  -ms-flex: 0 0 25%;
      flex: 0 0 25%;
  max-width: 25%;
}

.tiny-order-5 {
  -ms-flex-order: 5;
      order: 5;
}

.tiny-offset-5 {
  margin-left: 25%;
}

.tiny-up-5 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-5 > li, .tiny-up-5 > div, .tiny-up-5 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 20%;
      flex: 0 0 20%;
}

.tiny-6 {
  -ms-flex: 0 0 30%;
      flex: 0 0 30%;
  max-width: 30%;
}

.tiny-order-6 {
  -ms-flex-order: 6;
      order: 6;
}

.tiny-offset-6 {
  margin-left: 30%;
}

.tiny-up-6 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-6 > li, .tiny-up-6 > div, .tiny-up-6 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 16.66667%;
      flex: 0 0 16.66667%;
}

.tiny-7 {
  -ms-flex: 0 0 35%;
      flex: 0 0 35%;
  max-width: 35%;
}

.tiny-order-7 {
  -ms-flex-order: 7;
      order: 7;
}

.tiny-offset-7 {
  margin-left: 35%;
}

.tiny-up-7 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-7 > li, .tiny-up-7 > div, .tiny-up-7 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 14.28571%;
      flex: 0 0 14.28571%;
}

.tiny-8 {
  -ms-flex: 0 0 40%;
      flex: 0 0 40%;
  max-width: 40%;
}

.tiny-order-8 {
  -ms-flex-order: 8;
      order: 8;
}

.tiny-offset-8 {
  margin-left: 40%;
}

.tiny-up-8 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-8 > li, .tiny-up-8 > div, .tiny-up-8 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 12.5%;
      flex: 0 0 12.5%;
}

.tiny-9 {
  -ms-flex: 0 0 45%;
      flex: 0 0 45%;
  max-width: 45%;
}

.tiny-order-9 {
  -ms-flex-order: 9;
      order: 9;
}

.tiny-offset-9 {
  margin-left: 45%;
}

.tiny-up-9 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-9 > li, .tiny-up-9 > div, .tiny-up-9 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 11.11111%;
      flex: 0 0 11.11111%;
}

.tiny-10 {
  -ms-flex: 0 0 50%;
      flex: 0 0 50%;
  max-width: 50%;
}

.tiny-order-10 {
  -ms-flex-order: 10;
      order: 10;
}

.tiny-offset-10 {
  margin-left: 50%;
}

.tiny-up-10 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-10 > li, .tiny-up-10 > div, .tiny-up-10 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 10%;
      flex: 0 0 10%;
}

.tiny-11 {
  -ms-flex: 0 0 55%;
      flex: 0 0 55%;
  max-width: 55%;
}

.tiny-order-11 {
  -ms-flex-order: 11;
      order: 11;
}

.tiny-offset-11 {
  margin-left: 55%;
}

.tiny-up-11 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-11 > li, .tiny-up-11 > div, .tiny-up-11 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 9.09091%;
      flex: 0 0 9.09091%;
}

.tiny-12 {
  -ms-flex: 0 0 60%;
      flex: 0 0 60%;
  max-width: 60%;
}

.tiny-order-12 {
  -ms-flex-order: 12;
      order: 12;
}

.tiny-offset-12 {
  margin-left: 60%;
}

.tiny-up-12 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-12 > li, .tiny-up-12 > div, .tiny-up-12 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 8.33333%;
      flex: 0 0 8.33333%;
}

.tiny-13 {
  -ms-flex: 0 0 65%;
      flex: 0 0 65%;
  max-width: 65%;
}

.tiny-order-13 {
  -ms-flex-order: 13;
      order: 13;
}

.tiny-offset-13 {
  margin-left: 65%;
}

.tiny-up-13 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-13 > li, .tiny-up-13 > div, .tiny-up-13 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 7.69231%;
      flex: 0 0 7.69231%;
}

.tiny-14 {
  -ms-flex: 0 0 70%;
      flex: 0 0 70%;
  max-width: 70%;
}

.tiny-order-14 {
  -ms-flex-order: 14;
      order: 14;
}

.tiny-offset-14 {
  margin-left: 70%;
}

.tiny-up-14 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-14 > li, .tiny-up-14 > div, .tiny-up-14 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 7.14286%;
      flex: 0 0 7.14286%;
}

.tiny-15 {
  -ms-flex: 0 0 75%;
      flex: 0 0 75%;
  max-width: 75%;
}

.tiny-order-15 {
  -ms-flex-order: 15;
      order: 15;
}

.tiny-offset-15 {
  margin-left: 75%;
}

.tiny-up-15 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-15 > li, .tiny-up-15 > div, .tiny-up-15 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 6.66667%;
      flex: 0 0 6.66667%;
}

.tiny-16 {
  -ms-flex: 0 0 80%;
      flex: 0 0 80%;
  max-width: 80%;
}

.tiny-order-16 {
  -ms-flex-order: 16;
      order: 16;
}

.tiny-offset-16 {
  margin-left: 80%;
}

.tiny-up-16 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-16 > li, .tiny-up-16 > div, .tiny-up-16 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 6.25%;
      flex: 0 0 6.25%;
}

.tiny-17 {
  -ms-flex: 0 0 85%;
      flex: 0 0 85%;
  max-width: 85%;
}

.tiny-order-17 {
  -ms-flex-order: 17;
      order: 17;
}

.tiny-offset-17 {
  margin-left: 85%;
}

.tiny-up-17 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-17 > li, .tiny-up-17 > div, .tiny-up-17 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 5.88235%;
      flex: 0 0 5.88235%;
}

.tiny-18 {
  -ms-flex: 0 0 90%;
      flex: 0 0 90%;
  max-width: 90%;
}

.tiny-order-18 {
  -ms-flex-order: 18;
      order: 18;
}

.tiny-offset-18 {
  margin-left: 90%;
}

.tiny-up-18 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-18 > li, .tiny-up-18 > div, .tiny-up-18 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 5.55556%;
      flex: 0 0 5.55556%;
}

.tiny-19 {
  -ms-flex: 0 0 95%;
      flex: 0 0 95%;
  max-width: 95%;
}

.tiny-order-19 {
  -ms-flex-order: 19;
      order: 19;
}

.tiny-offset-19 {
  margin-left: 95%;
}

.tiny-up-19 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-19 > li, .tiny-up-19 > div, .tiny-up-19 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 5.26316%;
      flex: 0 0 5.26316%;
}

.tiny-20 {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  max-width: 100%;
}

.tiny-order-20 {
  -ms-flex-order: 20;
      order: 20;
}

.tiny-offset-20 {
  margin-left: 100%;
}

.tiny-up-20 {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  overflow: visible;
  list-style-type: none;
}

.tiny-up-20 > li, .tiny-up-20 > div, .tiny-up-20 > section {
  padding: 0 1rem 1rem;
  -ms-flex: 0 0 5%;
      flex: 0 0 5%;
}

@media only screen and (min-width: 30em) {
  .small-1 {
    -ms-flex: 0 0 5%;
        flex: 0 0 5%;
    max-width: 5%;
  }
  .small-order-1 {
    -ms-flex-order: 1;
        order: 1;
  }
  .small-offset-1 {
    margin-left: 5%;
  }
  .small-up-1 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-1 > li, .small-up-1 > div, .small-up-1 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
  }
}

@media only screen and (min-width: 30em) {
  .small-2 {
    -ms-flex: 0 0 10%;
        flex: 0 0 10%;
    max-width: 10%;
  }
  .small-order-2 {
    -ms-flex-order: 2;
        order: 2;
  }
  .small-offset-2 {
    margin-left: 10%;
  }
  .small-up-2 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-2 > li, .small-up-2 > div, .small-up-2 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
}

@media only screen and (min-width: 30em) {
  .small-3 {
    -ms-flex: 0 0 15%;
        flex: 0 0 15%;
    max-width: 15%;
  }
  .small-order-3 {
    -ms-flex-order: 3;
        order: 3;
  }
  .small-offset-3 {
    margin-left: 15%;
  }
  .small-up-3 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-3 > li, .small-up-3 > div, .small-up-3 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
  }
}

@media only screen and (min-width: 30em) {
  .small-4 {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%;
  }
  .small-order-4 {
    -ms-flex-order: 4;
        order: 4;
  }
  .small-offset-4 {
    margin-left: 20%;
  }
  .small-up-4 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-4 > li, .small-up-4 > div, .small-up-4 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
  }
}

@media only screen and (min-width: 30em) {
  .small-5 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }
  .small-order-5 {
    -ms-flex-order: 5;
        order: 5;
  }
  .small-offset-5 {
    margin-left: 25%;
  }
  .small-up-5 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-5 > li, .small-up-5 > div, .small-up-5 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
  }
}

@media only screen and (min-width: 30em) {
  .small-6 {
    -ms-flex: 0 0 30%;
        flex: 0 0 30%;
    max-width: 30%;
  }
  .small-order-6 {
    -ms-flex-order: 6;
        order: 6;
  }
  .small-offset-6 {
    margin-left: 30%;
  }
  .small-up-6 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-6 > li, .small-up-6 > div, .small-up-6 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
  }
}

@media only screen and (min-width: 30em) {
  .small-7 {
    -ms-flex: 0 0 35%;
        flex: 0 0 35%;
    max-width: 35%;
  }
  .small-order-7 {
    -ms-flex-order: 7;
        order: 7;
  }
  .small-offset-7 {
    margin-left: 35%;
  }
  .small-up-7 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-7 > li, .small-up-7 > div, .small-up-7 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 14.28571%;
        flex: 0 0 14.28571%;
  }
}

@media only screen and (min-width: 30em) {
  .small-8 {
    -ms-flex: 0 0 40%;
        flex: 0 0 40%;
    max-width: 40%;
  }
  .small-order-8 {
    -ms-flex-order: 8;
        order: 8;
  }
  .small-offset-8 {
    margin-left: 40%;
  }
  .small-up-8 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-8 > li, .small-up-8 > div, .small-up-8 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
  }
}

@media only screen and (min-width: 30em) {
  .small-9 {
    -ms-flex: 0 0 45%;
        flex: 0 0 45%;
    max-width: 45%;
  }
  .small-order-9 {
    -ms-flex-order: 9;
        order: 9;
  }
  .small-offset-9 {
    margin-left: 45%;
  }
  .small-up-9 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-9 > li, .small-up-9 > div, .small-up-9 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 11.11111%;
        flex: 0 0 11.11111%;
  }
}

@media only screen and (min-width: 30em) {
  .small-10 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }
  .small-order-10 {
    -ms-flex-order: 10;
        order: 10;
  }
  .small-offset-10 {
    margin-left: 50%;
  }
  .small-up-10 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-10 > li, .small-up-10 > div, .small-up-10 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 10%;
        flex: 0 0 10%;
  }
}

@media only screen and (min-width: 30em) {
  .small-11 {
    -ms-flex: 0 0 55%;
        flex: 0 0 55%;
    max-width: 55%;
  }
  .small-order-11 {
    -ms-flex-order: 11;
        order: 11;
  }
  .small-offset-11 {
    margin-left: 55%;
  }
  .small-up-11 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-11 > li, .small-up-11 > div, .small-up-11 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 9.09091%;
        flex: 0 0 9.09091%;
  }
}

@media only screen and (min-width: 30em) {
  .small-12 {
    -ms-flex: 0 0 60%;
        flex: 0 0 60%;
    max-width: 60%;
  }
  .small-order-12 {
    -ms-flex-order: 12;
        order: 12;
  }
  .small-offset-12 {
    margin-left: 60%;
  }
  .small-up-12 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-12 > li, .small-up-12 > div, .small-up-12 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
  }
}

@media only screen and (min-width: 30em) {
  .small-13 {
    -ms-flex: 0 0 65%;
        flex: 0 0 65%;
    max-width: 65%;
  }
  .small-order-13 {
    -ms-flex-order: 13;
        order: 13;
  }
  .small-offset-13 {
    margin-left: 65%;
  }
  .small-up-13 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-13 > li, .small-up-13 > div, .small-up-13 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 7.69231%;
        flex: 0 0 7.69231%;
  }
}

@media only screen and (min-width: 30em) {
  .small-14 {
    -ms-flex: 0 0 70%;
        flex: 0 0 70%;
    max-width: 70%;
  }
  .small-order-14 {
    -ms-flex-order: 14;
        order: 14;
  }
  .small-offset-14 {
    margin-left: 70%;
  }
  .small-up-14 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-14 > li, .small-up-14 > div, .small-up-14 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 7.14286%;
        flex: 0 0 7.14286%;
  }
}

@media only screen and (min-width: 30em) {
  .small-15 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }
  .small-order-15 {
    -ms-flex-order: 15;
        order: 15;
  }
  .small-offset-15 {
    margin-left: 75%;
  }
  .small-up-15 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-15 > li, .small-up-15 > div, .small-up-15 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 6.66667%;
        flex: 0 0 6.66667%;
  }
}

@media only screen and (min-width: 30em) {
  .small-16 {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%;
  }
  .small-order-16 {
    -ms-flex-order: 16;
        order: 16;
  }
  .small-offset-16 {
    margin-left: 80%;
  }
  .small-up-16 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-16 > li, .small-up-16 > div, .small-up-16 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 6.25%;
        flex: 0 0 6.25%;
  }
}

@media only screen and (min-width: 30em) {
  .small-17 {
    -ms-flex: 0 0 85%;
        flex: 0 0 85%;
    max-width: 85%;
  }
  .small-order-17 {
    -ms-flex-order: 17;
        order: 17;
  }
  .small-offset-17 {
    margin-left: 85%;
  }
  .small-up-17 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-17 > li, .small-up-17 > div, .small-up-17 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5.88235%;
        flex: 0 0 5.88235%;
  }
}

@media only screen and (min-width: 30em) {
  .small-18 {
    -ms-flex: 0 0 90%;
        flex: 0 0 90%;
    max-width: 90%;
  }
  .small-order-18 {
    -ms-flex-order: 18;
        order: 18;
  }
  .small-offset-18 {
    margin-left: 90%;
  }
  .small-up-18 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-18 > li, .small-up-18 > div, .small-up-18 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5.55556%;
        flex: 0 0 5.55556%;
  }
}

@media only screen and (min-width: 30em) {
  .small-19 {
    -ms-flex: 0 0 95%;
        flex: 0 0 95%;
    max-width: 95%;
  }
  .small-order-19 {
    -ms-flex-order: 19;
        order: 19;
  }
  .small-offset-19 {
    margin-left: 95%;
  }
  .small-up-19 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-19 > li, .small-up-19 > div, .small-up-19 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5.26316%;
        flex: 0 0 5.26316%;
  }
}

@media only screen and (min-width: 30em) {
  .small-20 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }
  .small-order-20 {
    -ms-flex-order: 20;
        order: 20;
  }
  .small-offset-20 {
    margin-left: 100%;
  }
  .small-up-20 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .small-up-20 > li, .small-up-20 > div, .small-up-20 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5%;
        flex: 0 0 5%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-1 {
    -ms-flex: 0 0 5%;
        flex: 0 0 5%;
    max-width: 5%;
  }
  .medium-order-1 {
    -ms-flex-order: 1;
        order: 1;
  }
  .medium-offset-1 {
    margin-left: 5%;
  }
  .medium-up-1 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-1 > li, .medium-up-1 > div, .medium-up-1 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-2 {
    -ms-flex: 0 0 10%;
        flex: 0 0 10%;
    max-width: 10%;
  }
  .medium-order-2 {
    -ms-flex-order: 2;
        order: 2;
  }
  .medium-offset-2 {
    margin-left: 10%;
  }
  .medium-up-2 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-2 > li, .medium-up-2 > div, .medium-up-2 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-3 {
    -ms-flex: 0 0 15%;
        flex: 0 0 15%;
    max-width: 15%;
  }
  .medium-order-3 {
    -ms-flex-order: 3;
        order: 3;
  }
  .medium-offset-3 {
    margin-left: 15%;
  }
  .medium-up-3 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-3 > li, .medium-up-3 > div, .medium-up-3 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-4 {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%;
  }
  .medium-order-4 {
    -ms-flex-order: 4;
        order: 4;
  }
  .medium-offset-4 {
    margin-left: 20%;
  }
  .medium-up-4 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-4 > li, .medium-up-4 > div, .medium-up-4 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-5 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }
  .medium-order-5 {
    -ms-flex-order: 5;
        order: 5;
  }
  .medium-offset-5 {
    margin-left: 25%;
  }
  .medium-up-5 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-5 > li, .medium-up-5 > div, .medium-up-5 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-6 {
    -ms-flex: 0 0 30%;
        flex: 0 0 30%;
    max-width: 30%;
  }
  .medium-order-6 {
    -ms-flex-order: 6;
        order: 6;
  }
  .medium-offset-6 {
    margin-left: 30%;
  }
  .medium-up-6 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-6 > li, .medium-up-6 > div, .medium-up-6 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-7 {
    -ms-flex: 0 0 35%;
        flex: 0 0 35%;
    max-width: 35%;
  }
  .medium-order-7 {
    -ms-flex-order: 7;
        order: 7;
  }
  .medium-offset-7 {
    margin-left: 35%;
  }
  .medium-up-7 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-7 > li, .medium-up-7 > div, .medium-up-7 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 14.28571%;
        flex: 0 0 14.28571%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-8 {
    -ms-flex: 0 0 40%;
        flex: 0 0 40%;
    max-width: 40%;
  }
  .medium-order-8 {
    -ms-flex-order: 8;
        order: 8;
  }
  .medium-offset-8 {
    margin-left: 40%;
  }
  .medium-up-8 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-8 > li, .medium-up-8 > div, .medium-up-8 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-9 {
    -ms-flex: 0 0 45%;
        flex: 0 0 45%;
    max-width: 45%;
  }
  .medium-order-9 {
    -ms-flex-order: 9;
        order: 9;
  }
  .medium-offset-9 {
    margin-left: 45%;
  }
  .medium-up-9 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-9 > li, .medium-up-9 > div, .medium-up-9 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 11.11111%;
        flex: 0 0 11.11111%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-10 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }
  .medium-order-10 {
    -ms-flex-order: 10;
        order: 10;
  }
  .medium-offset-10 {
    margin-left: 50%;
  }
  .medium-up-10 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-10 > li, .medium-up-10 > div, .medium-up-10 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 10%;
        flex: 0 0 10%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-11 {
    -ms-flex: 0 0 55%;
        flex: 0 0 55%;
    max-width: 55%;
  }
  .medium-order-11 {
    -ms-flex-order: 11;
        order: 11;
  }
  .medium-offset-11 {
    margin-left: 55%;
  }
  .medium-up-11 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-11 > li, .medium-up-11 > div, .medium-up-11 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 9.09091%;
        flex: 0 0 9.09091%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-12 {
    -ms-flex: 0 0 60%;
        flex: 0 0 60%;
    max-width: 60%;
  }
  .medium-order-12 {
    -ms-flex-order: 12;
        order: 12;
  }
  .medium-offset-12 {
    margin-left: 60%;
  }
  .medium-up-12 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-12 > li, .medium-up-12 > div, .medium-up-12 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-13 {
    -ms-flex: 0 0 65%;
        flex: 0 0 65%;
    max-width: 65%;
  }
  .medium-order-13 {
    -ms-flex-order: 13;
        order: 13;
  }
  .medium-offset-13 {
    margin-left: 65%;
  }
  .medium-up-13 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-13 > li, .medium-up-13 > div, .medium-up-13 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 7.69231%;
        flex: 0 0 7.69231%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-14 {
    -ms-flex: 0 0 70%;
        flex: 0 0 70%;
    max-width: 70%;
  }
  .medium-order-14 {
    -ms-flex-order: 14;
        order: 14;
  }
  .medium-offset-14 {
    margin-left: 70%;
  }
  .medium-up-14 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-14 > li, .medium-up-14 > div, .medium-up-14 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 7.14286%;
        flex: 0 0 7.14286%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-15 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }
  .medium-order-15 {
    -ms-flex-order: 15;
        order: 15;
  }
  .medium-offset-15 {
    margin-left: 75%;
  }
  .medium-up-15 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-15 > li, .medium-up-15 > div, .medium-up-15 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 6.66667%;
        flex: 0 0 6.66667%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-16 {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%;
  }
  .medium-order-16 {
    -ms-flex-order: 16;
        order: 16;
  }
  .medium-offset-16 {
    margin-left: 80%;
  }
  .medium-up-16 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-16 > li, .medium-up-16 > div, .medium-up-16 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 6.25%;
        flex: 0 0 6.25%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-17 {
    -ms-flex: 0 0 85%;
        flex: 0 0 85%;
    max-width: 85%;
  }
  .medium-order-17 {
    -ms-flex-order: 17;
        order: 17;
  }
  .medium-offset-17 {
    margin-left: 85%;
  }
  .medium-up-17 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-17 > li, .medium-up-17 > div, .medium-up-17 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5.88235%;
        flex: 0 0 5.88235%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-18 {
    -ms-flex: 0 0 90%;
        flex: 0 0 90%;
    max-width: 90%;
  }
  .medium-order-18 {
    -ms-flex-order: 18;
        order: 18;
  }
  .medium-offset-18 {
    margin-left: 90%;
  }
  .medium-up-18 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-18 > li, .medium-up-18 > div, .medium-up-18 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5.55556%;
        flex: 0 0 5.55556%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-19 {
    -ms-flex: 0 0 95%;
        flex: 0 0 95%;
    max-width: 95%;
  }
  .medium-order-19 {
    -ms-flex-order: 19;
        order: 19;
  }
  .medium-offset-19 {
    margin-left: 95%;
  }
  .medium-up-19 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-19 > li, .medium-up-19 > div, .medium-up-19 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5.26316%;
        flex: 0 0 5.26316%;
  }
}

@media only screen and (min-width: 40em) {
  .medium-20 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }
  .medium-order-20 {
    -ms-flex-order: 20;
        order: 20;
  }
  .medium-offset-20 {
    margin-left: 100%;
  }
  .medium-up-20 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .medium-up-20 > li, .medium-up-20 > div, .medium-up-20 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5%;
        flex: 0 0 5%;
  }
}

@media only screen and (min-width: 75em) {
  .large-1 {
    -ms-flex: 0 0 5%;
        flex: 0 0 5%;
    max-width: 5%;
  }
  .large-order-1 {
    -ms-flex-order: 1;
        order: 1;
  }
  .large-offset-1 {
    margin-left: 5%;
  }
  .large-up-1 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-1 > li, .large-up-1 > div, .large-up-1 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
  }
}

@media only screen and (min-width: 75em) {
  .large-2 {
    -ms-flex: 0 0 10%;
        flex: 0 0 10%;
    max-width: 10%;
  }
  .large-order-2 {
    -ms-flex-order: 2;
        order: 2;
  }
  .large-offset-2 {
    margin-left: 10%;
  }
  .large-up-2 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-2 > li, .large-up-2 > div, .large-up-2 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
}

@media only screen and (min-width: 75em) {
  .large-3 {
    -ms-flex: 0 0 15%;
        flex: 0 0 15%;
    max-width: 15%;
  }
  .large-order-3 {
    -ms-flex-order: 3;
        order: 3;
  }
  .large-offset-3 {
    margin-left: 15%;
  }
  .large-up-3 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-3 > li, .large-up-3 > div, .large-up-3 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
  }
}

@media only screen and (min-width: 75em) {
  .large-4 {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%;
  }
  .large-order-4 {
    -ms-flex-order: 4;
        order: 4;
  }
  .large-offset-4 {
    margin-left: 20%;
  }
  .large-up-4 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-4 > li, .large-up-4 > div, .large-up-4 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
  }
}

@media only screen and (min-width: 75em) {
  .large-5 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }
  .large-order-5 {
    -ms-flex-order: 5;
        order: 5;
  }
  .large-offset-5 {
    margin-left: 25%;
  }
  .large-up-5 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-5 > li, .large-up-5 > div, .large-up-5 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
  }
}

@media only screen and (min-width: 75em) {
  .large-6 {
    -ms-flex: 0 0 30%;
        flex: 0 0 30%;
    max-width: 30%;
  }
  .large-order-6 {
    -ms-flex-order: 6;
        order: 6;
  }
  .large-offset-6 {
    margin-left: 30%;
  }
  .large-up-6 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-6 > li, .large-up-6 > div, .large-up-6 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
  }
}

@media only screen and (min-width: 75em) {
  .large-7 {
    -ms-flex: 0 0 35%;
        flex: 0 0 35%;
    max-width: 35%;
  }
  .large-order-7 {
    -ms-flex-order: 7;
        order: 7;
  }
  .large-offset-7 {
    margin-left: 35%;
  }
  .large-up-7 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-7 > li, .large-up-7 > div, .large-up-7 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 14.28571%;
        flex: 0 0 14.28571%;
  }
}

@media only screen and (min-width: 75em) {
  .large-8 {
    -ms-flex: 0 0 40%;
        flex: 0 0 40%;
    max-width: 40%;
  }
  .large-order-8 {
    -ms-flex-order: 8;
        order: 8;
  }
  .large-offset-8 {
    margin-left: 40%;
  }
  .large-up-8 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-8 > li, .large-up-8 > div, .large-up-8 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
  }
}

@media only screen and (min-width: 75em) {
  .large-9 {
    -ms-flex: 0 0 45%;
        flex: 0 0 45%;
    max-width: 45%;
  }
  .large-order-9 {
    -ms-flex-order: 9;
        order: 9;
  }
  .large-offset-9 {
    margin-left: 45%;
  }
  .large-up-9 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-9 > li, .large-up-9 > div, .large-up-9 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 11.11111%;
        flex: 0 0 11.11111%;
  }
}

@media only screen and (min-width: 75em) {
  .large-10 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }
  .large-order-10 {
    -ms-flex-order: 10;
        order: 10;
  }
  .large-offset-10 {
    margin-left: 50%;
  }
  .large-up-10 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-10 > li, .large-up-10 > div, .large-up-10 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 10%;
        flex: 0 0 10%;
  }
}

@media only screen and (min-width: 75em) {
  .large-11 {
    -ms-flex: 0 0 55%;
        flex: 0 0 55%;
    max-width: 55%;
  }
  .large-order-11 {
    -ms-flex-order: 11;
        order: 11;
  }
  .large-offset-11 {
    margin-left: 55%;
  }
  .large-up-11 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-11 > li, .large-up-11 > div, .large-up-11 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 9.09091%;
        flex: 0 0 9.09091%;
  }
}

@media only screen and (min-width: 75em) {
  .large-12 {
    -ms-flex: 0 0 60%;
        flex: 0 0 60%;
    max-width: 60%;
  }
  .large-order-12 {
    -ms-flex-order: 12;
        order: 12;
  }
  .large-offset-12 {
    margin-left: 60%;
  }
  .large-up-12 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-12 > li, .large-up-12 > div, .large-up-12 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
  }
}

@media only screen and (min-width: 75em) {
  .large-13 {
    -ms-flex: 0 0 65%;
        flex: 0 0 65%;
    max-width: 65%;
  }
  .large-order-13 {
    -ms-flex-order: 13;
        order: 13;
  }
  .large-offset-13 {
    margin-left: 65%;
  }
  .large-up-13 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-13 > li, .large-up-13 > div, .large-up-13 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 7.69231%;
        flex: 0 0 7.69231%;
  }
}

@media only screen and (min-width: 75em) {
  .large-14 {
    -ms-flex: 0 0 70%;
        flex: 0 0 70%;
    max-width: 70%;
  }
  .large-order-14 {
    -ms-flex-order: 14;
        order: 14;
  }
  .large-offset-14 {
    margin-left: 70%;
  }
  .large-up-14 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-14 > li, .large-up-14 > div, .large-up-14 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 7.14286%;
        flex: 0 0 7.14286%;
  }
}

@media only screen and (min-width: 75em) {
  .large-15 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }
  .large-order-15 {
    -ms-flex-order: 15;
        order: 15;
  }
  .large-offset-15 {
    margin-left: 75%;
  }
  .large-up-15 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-15 > li, .large-up-15 > div, .large-up-15 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 6.66667%;
        flex: 0 0 6.66667%;
  }
}

@media only screen and (min-width: 75em) {
  .large-16 {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%;
  }
  .large-order-16 {
    -ms-flex-order: 16;
        order: 16;
  }
  .large-offset-16 {
    margin-left: 80%;
  }
  .large-up-16 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-16 > li, .large-up-16 > div, .large-up-16 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 6.25%;
        flex: 0 0 6.25%;
  }
}

@media only screen and (min-width: 75em) {
  .large-17 {
    -ms-flex: 0 0 85%;
        flex: 0 0 85%;
    max-width: 85%;
  }
  .large-order-17 {
    -ms-flex-order: 17;
        order: 17;
  }
  .large-offset-17 {
    margin-left: 85%;
  }
  .large-up-17 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-17 > li, .large-up-17 > div, .large-up-17 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5.88235%;
        flex: 0 0 5.88235%;
  }
}

@media only screen and (min-width: 75em) {
  .large-18 {
    -ms-flex: 0 0 90%;
        flex: 0 0 90%;
    max-width: 90%;
  }
  .large-order-18 {
    -ms-flex-order: 18;
        order: 18;
  }
  .large-offset-18 {
    margin-left: 90%;
  }
  .large-up-18 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-18 > li, .large-up-18 > div, .large-up-18 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5.55556%;
        flex: 0 0 5.55556%;
  }
}

@media only screen and (min-width: 75em) {
  .large-19 {
    -ms-flex: 0 0 95%;
        flex: 0 0 95%;
    max-width: 95%;
  }
  .large-order-19 {
    -ms-flex-order: 19;
        order: 19;
  }
  .large-offset-19 {
    margin-left: 95%;
  }
  .large-up-19 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-19 > li, .large-up-19 > div, .large-up-19 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5.26316%;
        flex: 0 0 5.26316%;
  }
}

@media only screen and (min-width: 75em) {
  .large-20 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }
  .large-order-20 {
    -ms-flex-order: 20;
        order: 20;
  }
  .large-offset-20 {
    margin-left: 100%;
  }
  .large-up-20 {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    overflow: visible;
    list-style-type: none;
  }
  .large-up-20 > li, .large-up-20 > div, .large-up-20 > section {
    padding: 0 1rem 1rem;
    -ms-flex: 0 0 5%;
        flex: 0 0 5%;
  }
}

.grid-content .modal .grid-block {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

/*
  TITLE BAR
  ---------

  A navigational component which can display the current screen the user is on, along with additional controls or menu items.

  The title bar includes classes to create center, left, and right sections, which can be used in any combination. However, in the markup, the sections must come in this order:
   - Center
   - Left
   - Right
*/
.title-bar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;
  overflow: visible;
}

.title-bar .title {
  font-weight: bold;
}

.title-bar .left, .title-bar .center, .title-bar .right {
  display: block;
  white-space: nowrap;
  overflow: visible;
}

.title-bar .left:first-child:last-child, .title-bar .center:first-child:last-child, .title-bar .right:first-child:last-child {
  -ms-flex: 1;
      flex: 1;
  margin: 0;
}

.title-bar .left {
  -ms-flex-order: 1;
      order: 1;
  -ms-flex: 0 0 25%;
      flex: 0 0 25%;
}

.title-bar .center {
  -ms-flex-order: 2;
      order: 2;
  -ms-flex: 0 0 50%;
      flex: 0 0 50%;
  text-align: center;
}

.title-bar .right {
  -ms-flex-order: 3;
      order: 3;
  -ms-flex: 0 0 25%;
      flex: 0 0 25%;
  text-align: right;
}

.title-bar .left:first-child {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
}

.title-bar .left:first-child + .right:last-child {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
}

.title-bar .center:first-child:not(:last-child) {
  margin-left: 25%;
}

.title-bar .center + .left {
  margin-right: -25%;
}

.title-bar {
  background: #eee;
  color: #000;
  padding: 1rem;
  border-bottom: 1px solid #ccc;
}

.title-bar.primary {
  background: #00558b;
  color: #fff;
  padding: 1rem;
  border-bottom: 1px solid #ccc;
}

.title-bar.primary a, .title-bar.primary a:hover {
  color: #fff;
}

.title-bar.primary .iconic * {
  fill: #fff;
  stroke: #fff;
}

.title-bar.primary .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.title-bar.dark {
  background: #232323;
  color: #fff;
  padding: 1rem;
  border-bottom: 1px solid #ccc;
}

.title-bar.dark a, .title-bar.dark a:hover {
  color: #fff;
}

.title-bar.dark .iconic * {
  fill: #fff;
  stroke: #fff;
}

.title-bar.dark .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.title-bar-bottom {
  border-bottom: 0;
  border-top: 1px solid #ccc;
}

/*
  Label
*/
.label {
  line-height: 1;
  white-space: nowrap;
  display: inline-block;
  cursor: default;
}

.label {
  font-size: 0.8rem;
  padding: 0.33333rem 0.5rem;
  background: #00558b;
  border-radius: 0;
  color: #fff;
}

.label.primary {
  background: #00558b;
  border-radius: 0;
  color: #fff;
}

.label.success {
  background: #43AC6A;
  border-radius: 0;
  color: #fff;
}

.label.warning {
  background: #F08A24;
  border-radius: 0;
  color: #fff;
}

.label.alert {
  background: #F04124;
  border-radius: 0;
  color: #fff;
}

.label.dark {
  background: #232323;
  border-radius: 0;
  color: #fff;
}

/*
  Badge
*/
.badge {
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  display: -ms-inline-flexbox;
  display: inline-flex;
  border-radius: 1000px;
}

.badge {
  font-size: 0.8em;
  width: 1.5rem;
  height: 1.5rem;
  background: #00558b;
  color: #fff;
}

.badge.secondary {
  background: #f1f1f1;
  color: #000;
}

.badge.primary {
  background: #00558b;
  color: #fff;
}

.badge.success {
  background: #43AC6A;
  color: #fff;
}

.badge.warning {
  background: #F08A24;
  color: #fff;
}

.badge.alert {
  background: #F04124;
  color: #fff;
}

.badge.dark {
  background: #232323;
  color: #fff;
}

.inline-list {
  list-style-type: none;
  text-align: left;
}

.inline-list li, .inline-list dt, .inline-list dd {
  display: inline-block;
  margin-left: -2px;
  margin-right: -2px;
}

.inline-list li {
  margin-right: 1rem;
  margin-left: 0;
}

/*
  MENU BAR
  --------

  A generic, flexible menu component.

  Features:
   - Orient horizontally and vertically
     - Change orientation at certain breakpoints
   - Items with icons above, below, or to the left or right
   - Text labels for vertical menus and badges for horizontal menus
*/
.menu-bar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
      align-items: stretch;
  margin: 0;
  list-style-type: none;
}

.menu-bar > li {
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  -ms-flex-align: center;
      align-items: center;
}

.menu-bar > li > a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  -ms-flex-align: center;
      align-items: center;
  padding: 1rem;
  font-size: 1rem;
  line-height: 1;
}

/*
  Set the alignment of menu items (li) within a menu-bar

  left: Items align to the left.
  right: Items align to the right.
  center: Items align to the center.
  justify: Items are spaced equally apart so they occupy the space of the entire grid.
  spaced: Items are given equal space to their left and right.

  @group menu-bar

  @param {string} $align - Alignment to use.

  @output An appropriate justify-content value.
*/
/*
  CSS output
*/
.menu-bar {
  background: #fff;
}

.menu-bar > li > a {
  color: #000;
}

.menu-bar > li > a:hover {
  background: #ededed;
  color: #000;
}

.menu-bar .is-active > a {
  background: #ededed;
  color: #000;
}

.menu-bar .iconic * {
  fill: #000;
  stroke: #000;
}

.menu-bar .iconic *.iconic-property-accent {
  fill: #000;
  stroke: #000;
}

.menu-bar, .menu-bar.horizontal {
  /*
    Orientation
  */
  overflow-x: hidden;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  /*
    Stretch
  */
}

.menu-bar > li > a, .menu-bar.horizontal > li > a {
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
}

.menu-bar.vertical {
  /*
    Orientation
  */
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  /*
    Stretch
  */
}

.menu-bar.vertical > li > a {
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
}

.menu-bar.condense > li {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}

.menu-bar.align-right {
  -ms-flex-pack: end;
      justify-content: flex-end;
}

.menu-bar.align-center {
  -ms-flex-pack: center;
      justify-content: center;
}

.menu-bar.align-justify {
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.menu-bar.align-spaced {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.menu-bar.tiny-condense li {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}

.menu-bar.tiny-expand li {
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
}

.menu-bar.tiny-align-left {
  -ms-flex-pack: start;
      justify-content: flex-start;
}

.menu-bar.tiny-align-right {
  -ms-flex-pack: end;
      justify-content: flex-end;
}

.menu-bar.tiny-align-center {
  -ms-flex-pack: center;
      justify-content: center;
}

.menu-bar.tiny-align-justify {
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.menu-bar.tiny-align-spaced {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

@media only screen and (min-width: 30em) {
  .menu-bar.small-condense li {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
  }
  .menu-bar.small-expand li {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto;
  }
  .menu-bar.small-align-left {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
  .menu-bar.small-align-right {
    -ms-flex-pack: end;
        justify-content: flex-end;
  }
  .menu-bar.small-align-center {
    -ms-flex-pack: center;
        justify-content: center;
  }
  .menu-bar.small-align-justify {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .menu-bar.small-align-spaced {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}

@media only screen and (min-width: 40em) {
  .menu-bar.medium-condense li {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
  }
  .menu-bar.medium-expand li {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto;
  }
  .menu-bar.medium-align-left {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
  .menu-bar.medium-align-right {
    -ms-flex-pack: end;
        justify-content: flex-end;
  }
  .menu-bar.medium-align-center {
    -ms-flex-pack: center;
        justify-content: center;
  }
  .menu-bar.medium-align-justify {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .menu-bar.medium-align-spaced {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}

@media only screen and (min-width: 75em) {
  .menu-bar.large-condense li {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
  }
  .menu-bar.large-expand li {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto;
  }
  .menu-bar.large-align-left {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
  .menu-bar.large-align-right {
    -ms-flex-pack: end;
        justify-content: flex-end;
  }
  .menu-bar.large-align-center {
    -ms-flex-pack: center;
        justify-content: center;
  }
  .menu-bar.large-align-justify {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .menu-bar.large-align-spaced {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}

.menu-bar.tiny-horizontal {
  /*
    Orientation
  */
  overflow-x: hidden;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  /*
    Stretch
  */
}

.menu-bar.tiny-horizontal > li > a {
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
}

.menu-bar.tiny-vertical {
  /*
    Orientation
  */
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  /*
    Stretch
  */
}

.menu-bar.tiny-vertical > li > a {
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
}

@media only screen and (min-width: 30em) {
  .menu-bar.small-horizontal {
    /*
    Orientation
  */
    overflow-x: hidden;
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    /*
    Stretch
  */
  }
  .menu-bar.small-horizontal > li > a {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
  }
  .menu-bar.small-vertical {
    /*
    Orientation
  */
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
    /*
    Stretch
  */
  }
  .menu-bar.small-vertical > li > a {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
  }
}

@media only screen and (min-width: 40em) {
  .menu-bar.medium-horizontal {
    /*
    Orientation
  */
    overflow-x: hidden;
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    /*
    Stretch
  */
  }
  .menu-bar.medium-horizontal > li > a {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
  }
  .menu-bar.medium-vertical {
    /*
    Orientation
  */
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
    /*
    Stretch
  */
  }
  .menu-bar.medium-vertical > li > a {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
  }
}

@media only screen and (min-width: 75em) {
  .menu-bar.large-horizontal {
    /*
    Orientation
  */
    overflow-x: hidden;
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    /*
    Stretch
  */
  }
  .menu-bar.large-horizontal > li > a {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
  }
  .menu-bar.large-vertical {
    /*
    Orientation
  */
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
    /*
    Stretch
  */
  }
  .menu-bar.large-vertical > li > a {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
  }
}

.menu-bar > li > img, .menu-bar > li > .iconic, .menu-bar.icon-top > li > img, .menu-bar.icon-top > li > .iconic {
  margin: 0;
  width: 25px;
  height: 25px;
}

.menu-bar > li > a, .menu-bar.icon-top > li > a {
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
}

.menu-bar > li > a > img, .menu-bar > li > a > .iconic, .menu-bar.icon-top > li > a > img, .menu-bar.icon-top > li > a > .iconic {
  margin: 0 0 1rem 0;
}

.menu-bar.icon-right > li > img, .menu-bar.icon-right > li > .iconic {
  margin: 0;
  width: 25px;
  height: 25px;
}

.menu-bar.icon-right > li > a {
  -ms-flex-flow: row-reverse nowrap;
      flex-flow: row-reverse nowrap;
}

.menu-bar.icon-right > li > a > img, .menu-bar.icon-right > li > a > .iconic {
  margin: 0 0 0 1rem;
}

.menu-bar.icon-bottom > li > img, .menu-bar.icon-bottom > li > .iconic {
  margin: 0;
  width: 25px;
  height: 25px;
}

.menu-bar.icon-bottom > li > a {
  -ms-flex-flow: column-reverse nowrap;
      flex-flow: column-reverse nowrap;
}

.menu-bar.icon-bottom > li > a > img, .menu-bar.icon-bottom > li > a > .iconic {
  margin: 1rem 0 0 0;
}

.menu-bar.icon-left > li > img, .menu-bar.icon-left > li > .iconic {
  margin: 0;
  width: 25px;
  height: 25px;
}

.menu-bar.icon-left > li > a {
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-align: center;
      align-items: center;
}

.menu-bar.icon-left > li > a > img, .menu-bar.icon-left > li > a > .iconic {
  margin: 0 1rem 0 0;
}

.menu-bar.tiny-icon-top > li > img, .menu-bar.tiny-icon-top > li > .iconic {
  margin: 0;
  width: 25px;
  height: 25px;
}

.menu-bar.tiny-icon-top > li > a {
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
}

.menu-bar.tiny-icon-top > li > a > img, .menu-bar.tiny-icon-top > li > a > .iconic {
  margin: 0 0 1rem 0;
}

.menu-bar.tiny-icon-right > li > img, .menu-bar.tiny-icon-right > li > .iconic {
  margin: 0;
  width: 25px;
  height: 25px;
}

.menu-bar.tiny-icon-right > li > a {
  -ms-flex-flow: row-reverse nowrap;
      flex-flow: row-reverse nowrap;
}

.menu-bar.tiny-icon-right > li > a > img, .menu-bar.tiny-icon-right > li > a > .iconic {
  margin: 0 0 0 1rem;
}

.menu-bar.tiny-icon-bottom > li > img, .menu-bar.tiny-icon-bottom > li > .iconic {
  margin: 0;
  width: 25px;
  height: 25px;
}

.menu-bar.tiny-icon-bottom > li > a {
  -ms-flex-flow: column-reverse nowrap;
      flex-flow: column-reverse nowrap;
}

.menu-bar.tiny-icon-bottom > li > a > img, .menu-bar.tiny-icon-bottom > li > a > .iconic {
  margin: 1rem 0 0 0;
}

.menu-bar.tiny-icon-left > li > img, .menu-bar.tiny-icon-left > li > .iconic {
  margin: 0;
  width: 25px;
  height: 25px;
}

.menu-bar.tiny-icon-left > li > a {
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-align: center;
      align-items: center;
}

.menu-bar.tiny-icon-left > li > a > img, .menu-bar.tiny-icon-left > li > a > .iconic {
  margin: 0 1rem 0 0;
}

@media only screen and (min-width: 30em) {
  .menu-bar.small-icon-top > li > img, .menu-bar.small-icon-top > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.small-icon-top > li > a {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
  }
  .menu-bar.small-icon-top > li > a > img, .menu-bar.small-icon-top > li > a > .iconic {
    margin: 0 0 1rem 0;
  }
}

@media only screen and (min-width: 30em) {
  .menu-bar.small-icon-right > li > img, .menu-bar.small-icon-right > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.small-icon-right > li > a {
    -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
  }
  .menu-bar.small-icon-right > li > a > img, .menu-bar.small-icon-right > li > a > .iconic {
    margin: 0 0 0 1rem;
  }
}

@media only screen and (min-width: 30em) {
  .menu-bar.small-icon-bottom > li > img, .menu-bar.small-icon-bottom > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.small-icon-bottom > li > a {
    -ms-flex-flow: column-reverse nowrap;
        flex-flow: column-reverse nowrap;
  }
  .menu-bar.small-icon-bottom > li > a > img, .menu-bar.small-icon-bottom > li > a > .iconic {
    margin: 1rem 0 0 0;
  }
}

@media only screen and (min-width: 30em) {
  .menu-bar.small-icon-left > li > img, .menu-bar.small-icon-left > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.small-icon-left > li > a {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    -ms-flex-align: center;
        align-items: center;
  }
  .menu-bar.small-icon-left > li > a > img, .menu-bar.small-icon-left > li > a > .iconic {
    margin: 0 1rem 0 0;
  }
}

@media only screen and (min-width: 40em) {
  .menu-bar.medium-icon-top > li > img, .menu-bar.medium-icon-top > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.medium-icon-top > li > a {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
  }
  .menu-bar.medium-icon-top > li > a > img, .menu-bar.medium-icon-top > li > a > .iconic {
    margin: 0 0 1rem 0;
  }
}

@media only screen and (min-width: 40em) {
  .menu-bar.medium-icon-right > li > img, .menu-bar.medium-icon-right > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.medium-icon-right > li > a {
    -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
  }
  .menu-bar.medium-icon-right > li > a > img, .menu-bar.medium-icon-right > li > a > .iconic {
    margin: 0 0 0 1rem;
  }
}

@media only screen and (min-width: 40em) {
  .menu-bar.medium-icon-bottom > li > img, .menu-bar.medium-icon-bottom > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.medium-icon-bottom > li > a {
    -ms-flex-flow: column-reverse nowrap;
        flex-flow: column-reverse nowrap;
  }
  .menu-bar.medium-icon-bottom > li > a > img, .menu-bar.medium-icon-bottom > li > a > .iconic {
    margin: 1rem 0 0 0;
  }
}

@media only screen and (min-width: 40em) {
  .menu-bar.medium-icon-left > li > img, .menu-bar.medium-icon-left > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.medium-icon-left > li > a {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    -ms-flex-align: center;
        align-items: center;
  }
  .menu-bar.medium-icon-left > li > a > img, .menu-bar.medium-icon-left > li > a > .iconic {
    margin: 0 1rem 0 0;
  }
}

@media only screen and (min-width: 75em) {
  .menu-bar.large-icon-top > li > img, .menu-bar.large-icon-top > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.large-icon-top > li > a {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
  }
  .menu-bar.large-icon-top > li > a > img, .menu-bar.large-icon-top > li > a > .iconic {
    margin: 0 0 1rem 0;
  }
}

@media only screen and (min-width: 75em) {
  .menu-bar.large-icon-right > li > img, .menu-bar.large-icon-right > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.large-icon-right > li > a {
    -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
  }
  .menu-bar.large-icon-right > li > a > img, .menu-bar.large-icon-right > li > a > .iconic {
    margin: 0 0 0 1rem;
  }
}

@media only screen and (min-width: 75em) {
  .menu-bar.large-icon-bottom > li > img, .menu-bar.large-icon-bottom > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.large-icon-bottom > li > a {
    -ms-flex-flow: column-reverse nowrap;
        flex-flow: column-reverse nowrap;
  }
  .menu-bar.large-icon-bottom > li > a > img, .menu-bar.large-icon-bottom > li > a > .iconic {
    margin: 1rem 0 0 0;
  }
}

@media only screen and (min-width: 75em) {
  .menu-bar.large-icon-left > li > img, .menu-bar.large-icon-left > li > .iconic {
    margin: 0;
    width: 25px;
    height: 25px;
  }
  .menu-bar.large-icon-left > li > a {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    -ms-flex-align: center;
        align-items: center;
  }
  .menu-bar.large-icon-left > li > a > img, .menu-bar.large-icon-left > li > a > .iconic {
    margin: 0 1rem 0 0;
  }
}

.menu-bar.label-side > li {
  position: relative;
}

.menu-bar.label-side > li > a {
  padding-right: 3.2rem;
}

.menu-bar.label-side .menu-bar-label {
  display: block;
  font-size: 0.9rem;
  width: 1.2rem;
  height: 1.2rem;
  line-height: 1.2rem;
  text-align: center;
  border-radius: 1000px;
  background: red;
  color: #fff;
  position: absolute;
  pointer-events: none;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}

.menu-bar.label-corner > li {
  position: relative;
}

.menu-bar.label-corner > li > a {
  padding-right: 3.2rem;
}

.menu-bar.label-corner .menu-bar-label {
  display: block;
  font-size: 0.9rem;
  width: 1.2rem;
  height: 1.2rem;
  line-height: 1.2rem;
  text-align: center;
  border-radius: 1000px;
  background: red;
  color: #fff;
  position: absolute;
  pointer-events: none;
  right: 1rem;
  top: 1rem;
}

.menu-bar.primary {
  background: #00558b;
}

.menu-bar.primary > li > a {
  color: #fff;
}

.menu-bar.primary > li > a:hover {
  background: #0065a5;
  color: #fff;
}

.menu-bar.primary .is-active > a {
  background: #0065a5;
  color: #fff;
}

.menu-bar.primary .iconic * {
  fill: #fff;
  stroke: #fff;
}

.menu-bar.primary .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.menu-bar.dark {
  background: #232323;
}

.menu-bar.dark > li > a {
  color: #fff;
}

.menu-bar.dark > li > a:hover {
  background: #323232;
  color: #fff;
}

.menu-bar.dark .is-active > a {
  background: #323232;
  color: #fff;
}

.menu-bar.dark .iconic * {
  fill: #fff;
  stroke: #fff;
}

.menu-bar.dark .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.menu-bar > li.title {
  padding: 1rem;
  cursor: default;
  font-weight: bold;
}

.menu-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media only screen and (min-width: 40em) {
  .menu-group {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

.menu-group > .menu-group-left, .menu-group > .menu-group-right {
  -ms-flex: 1 1 100%;
      flex: 1 1 100%;
}

@media only screen and (min-width: 40em) {
  .menu-group > .menu-group-left, .menu-group > .menu-group-right {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
  }
}

.menu-group .menu-bar {
  margin: 0;
}

.menu-group .menu-bar > li {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}

.menu-group.primary {
  background-color: #00558b;
}

.menu-group.primary .menu-bar {
  background: #00558b;
}

.menu-group.primary .menu-bar > li > a {
  color: #fff;
}

.menu-group.primary .menu-bar > li > a:hover {
  background: #0065a5;
  color: #fff;
}

.menu-group.primary .menu-bar .is-active > a {
  background: #0065a5;
  color: #fff;
}

.menu-group.primary .menu-bar .iconic * {
  fill: #fff;
  stroke: #fff;
}

.menu-group.primary .menu-bar .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

.menu-group.dark {
  background-color: #232323;
}

.menu-group.dark .menu-bar {
  background: #232323;
}

.menu-group.dark .menu-bar > li > a {
  color: #fff;
}

.menu-group.dark .menu-bar > li > a:hover {
  background: #323232;
  color: #fff;
}

.menu-group.dark .menu-bar .is-active > a {
  background: #323232;
  color: #fff;
}

.menu-group.dark .menu-bar .iconic * {
  fill: #fff;
  stroke: #fff;
}

.menu-group.dark .menu-bar .iconic *.iconic-property-accent {
  fill: #fff;
  stroke: #fff;
}

/*
  MODAL
  -----

  The humble modal hides off-canvas until summoned with an fa-open directive. Modals appear over an overlay that darkens the rest of the page, and have a maxmimum width. You can construct a grid inside a modal, or attach panels to it.

  Note that the modal overlay is hardcoded into the CSS, because whether or not you build your modal semantically, the overlay is always required and will always look the same.
*/
.modal {
  position: relative;
  z-index: 1001;
  background: #fff;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  width: 100%;
  height: 100vh;
  max-height: 100%;
  overflow: hidden;
  padding: 1rem;
}

@media only screen and (min-width: 40em) {
  .modal {
    height: auto;
    max-width: 600px;
  }
}

.modal .grid-content, .modal .grid-block {
  margin: 0;
}

.modal .close-button, .modal [fa-close] {
  z-index: 1001;
}

.modal {
  max-width: 600px;
}

.tiny > .modal {
  max-width: 300px;
}

.small > .modal {
  max-width: 500px;
}

.large > .modal {
  max-width: 800px;
}

.dialog > .modal {
  height: auto;
}

.collapse > .modal {
  padding: 0;
}

.modal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: none;
  background-color: rgba(51, 51, 51, 0.7);
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}

.modal-overlay.is-active {
  display: -ms-flexbox;
  display: flex;
}

@keyframes shake {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    transform: translateX(7%);
  }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    transform: translateX(-7%);
  }
  100% {
    transform: translateX(0);
  }
}

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

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

@keyframes wiggle {
  40%, 50%, 60% {
    transform: rotate(7deg);
  }
  35%, 45%, 55%, 65% {
    transform: rotate(-7deg);
  }
  0%, 30%, 70%, 100% {
    transform: rotate(0);
  }
}

/*
    Transitions
  */
.slideInDown.ng-enter, .slideInDown.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  backface-visibility: hidden;
  transform: translateY(-100%);
}

.slideInDown.ng-enter.ng-enter-active, .slideInDown.ng-hide-remove.ng-hide-remove-active {
  transform: translateX(0) translateY(0);
}

.slideInLeft.ng-enter, .slideInLeft.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  backface-visibility: hidden;
  transform: translateX(100%);
}

.slideInLeft.ng-enter.ng-enter-active, .slideInLeft.ng-hide-remove.ng-hide-remove-active {
  transform: translateX(0) translateY(0);
}

.slideInUp.ng-enter, .slideInUp.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  backface-visibility: hidden;
  transform: translateY(100%);
}

.slideInUp.ng-enter.ng-enter-active, .slideInUp.ng-hide-remove.ng-hide-remove-active {
  transform: translateX(0) translateY(0);
}

.slideInRight.ng-enter, .slideInRight.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  backface-visibility: hidden;
  transform: translateX(-100%);
}

.slideInRight.ng-enter.ng-enter-active, .slideInRight.ng-hide-remove.ng-hide-remove-active {
  transform: translateX(0) translateY(0);
}

.slideOutBottom.ng-leave, .slideOutBottom.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  backface-visibility: hidden;
  transform: translateX(0) translateY(0);
}

.slideOutBottom.ng-leave.ng-leave-active, .slideOutBottom.ng-hide-add.ng-hide-add-active {
  transform: translateY(100%);
}

.slideOutRight.ng-leave, .slideOutRight.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  backface-visibility: hidden;
  transform: translateX(0) translateY(0);
}

.slideOutRight.ng-leave.ng-leave-active, .slideOutRight.ng-hide-add.ng-hide-add-active {
  transform: translateX(100%);
}

.slideOutUp.ng-leave, .slideOutUp.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  backface-visibility: hidden;
  transform: translateX(0) translateY(0);
}

.slideOutUp.ng-leave.ng-leave-active, .slideOutUp.ng-hide-add.ng-hide-add-active {
  transform: translateY(-100%);
}

.slideOutLeft.ng-leave, .slideOutLeft.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  backface-visibility: hidden;
  transform: translateX(0) translateY(0);
}

.slideOutLeft.ng-leave.ng-leave-active, .slideOutLeft.ng-hide-add.ng-hide-add-active {
  transform: translateX(-100%);
}

.fadeIn.ng-enter, .fadeIn.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: opacity;
  opacity: 0;
}

.fadeIn.ng-enter.ng-enter-active, .fadeIn.ng-hide-remove.ng-hide-remove-active {
  opacity: 1;
}

.fadeOut.ng-leave, .fadeOut.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: opacity;
  opacity: 1;
}

.fadeOut.ng-leave.ng-leave-active, .fadeOut.ng-hide-add.ng-hide-add-active {
  opacity: 0;
}

.hingeInFromTop.ng-enter, .hingeInFromTop.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: perspective(2000px) rotateX(-90deg);
  transform-origin: top;
  opacity: 0;
}

.hingeInFromTop.ng-enter.ng-enter-active, .hingeInFromTop.ng-hide-remove.ng-hide-remove-active {
  transform: rotate(0deg);
  opacity: 1;
}

.hingeInFromRight.ng-enter, .hingeInFromRight.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: perspective(2000px) rotateY(-90deg);
  transform-origin: right;
  opacity: 0;
}

.hingeInFromRight.ng-enter.ng-enter-active, .hingeInFromRight.ng-hide-remove.ng-hide-remove-active {
  transform: rotate(0deg);
  opacity: 1;
}

.hingeInFromBottom.ng-enter, .hingeInFromBottom.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: perspective(2000px) rotateX(90deg);
  transform-origin: bottom;
  opacity: 0;
}

.hingeInFromBottom.ng-enter.ng-enter-active, .hingeInFromBottom.ng-hide-remove.ng-hide-remove-active {
  transform: rotate(0deg);
  opacity: 1;
}

.hingeInFromLeft.ng-enter, .hingeInFromLeft.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: perspective(2000px) rotateY(90deg);
  transform-origin: left;
  opacity: 0;
}

.hingeInFromLeft.ng-enter.ng-enter-active, .hingeInFromLeft.ng-hide-remove.ng-hide-remove-active {
  transform: rotate(0deg);
  opacity: 1;
}

.hingeInFromMiddleX.ng-enter, .hingeInFromMiddleX.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: perspective(2000px) rotateX(-90deg);
  transform-origin: center;
  opacity: 0;
}

.hingeInFromMiddleX.ng-enter.ng-enter-active, .hingeInFromMiddleX.ng-hide-remove.ng-hide-remove-active {
  transform: rotate(0deg);
  opacity: 1;
}

.hingeInFromMiddleY.ng-enter, .hingeInFromMiddleY.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: perspective(2000px) rotateY(-90deg);
  transform-origin: center;
  opacity: 0;
}

.hingeInFromMiddleY.ng-enter.ng-enter-active, .hingeInFromMiddleY.ng-hide-remove.ng-hide-remove-active {
  transform: rotate(0deg);
  opacity: 1;
}

.hingeOutFromTop.ng-leave, .hingeOutFromTop.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: rotate(0deg);
  transform-origin: top;
  opacity: 1;
}

.hingeOutFromTop.ng-leave.ng-leave-active, .hingeOutFromTop.ng-hide-add.ng-hide-add-active {
  transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}

.hingeOutFromRight.ng-leave, .hingeOutFromRight.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: rotate(0deg);
  transform-origin: right;
  opacity: 1;
}

.hingeOutFromRight.ng-leave.ng-leave-active, .hingeOutFromRight.ng-hide-add.ng-hide-add-active {
  transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}

.hingeOutFromBottom.ng-leave, .hingeOutFromBottom.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: rotate(0deg);
  transform-origin: bottom;
  opacity: 1;
}

.hingeOutFromBottom.ng-leave.ng-leave-active, .hingeOutFromBottom.ng-hide-add.ng-hide-add-active {
  transform: perspective(2000px) rotateX(90deg);
  opacity: 0;
}

.hingeOutFromLeft.ng-leave, .hingeOutFromLeft.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: rotate(0deg);
  transform-origin: left;
  opacity: 1;
}

.hingeOutFromLeft.ng-leave.ng-leave-active, .hingeOutFromLeft.ng-hide-add.ng-hide-add-active {
  transform: perspective(2000px) rotateY(90deg);
  opacity: 0;
}

.hingeOutFromMiddleX.ng-leave, .hingeOutFromMiddleX.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: rotate(0deg);
  transform-origin: center;
  opacity: 1;
}

.hingeOutFromMiddleX.ng-leave.ng-leave-active, .hingeOutFromMiddleX.ng-hide-add.ng-hide-add-active {
  transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}

.hingeOutFromMiddleY.ng-leave, .hingeOutFromMiddleY.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, opacity;
  transform: rotate(0deg);
  transform-origin: center;
  opacity: 1;
}

.hingeOutFromMiddleY.ng-leave.ng-leave-active, .hingeOutFromMiddleY.ng-hide-add.ng-hide-add-active {
  transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}

.zoomIn.ng-enter, .zoomIn.ng-hide-remove {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, property;
  transform: scale(1.5);
  opacity: 0;
}

.zoomIn.ng-enter.ng-enter-active, .zoomIn.ng-hide-remove.ng-hide-remove-active {
  transform: scale(1);
  opacity: 1;
}

.zoomOut.ng-leave, .zoomOut.ng-hide-add {
  transition-duration: 500ms;
  transition-timing-function: ease;
  transition-delay: 0;
  transition-property: transform, property;
  transform: scale(0.5);
  opacity: 1;
}

.zoomOut.ng-leave.ng-leave-active, .zoomOut.ng-hide-add.ng-hide-add-active {
  transform: scale(1);
  opacity: 0;
}

.spinIn.ng-enter, .spinIn.ng-hide-remove {
  transition-property: transform, opacity;
  transform: rotate(-270deg);
  opacity: 0;
}

.spinIn.ng-enter.ng-enter-active, .spinIn.ng-hide-remove.ng-hide-remove-active {
  transform: rotate(0);
  opacity: 1;
}

.spinOut.ng-leave, .spinOut.ng-hide-add {
  transition-property: transform, opacity;
  transform: rotate(0);
  opacity: 1;
}

.spinOut.ng-leave.ng-leave-active, .spinOut.ng-hide-add.ng-hide-add-active {
  transform: rotate(270deg);
  opacity: 0;
}

.spinInCCW.ng-enter, .spinInCCW.ng-hide-remove {
  transition-property: transform, opacity;
  transform: rotate(270deg);
  opacity: 0;
}

.spinInCCW.ng-enter.ng-enter-active, .spinInCCW.ng-hide-remove.ng-hide-remove-active {
  transform: rotate(0);
  opacity: 1;
}

.spinOutCCW.ng-leave, .spinOutCCW.ng-hide-add {
  transition-property: transform, opacity;
  transform: rotate(0);
  opacity: 1;
}

.spinOutCCW.ng-leave.ng-leave-active, .spinOutCCW.ng-hide-add.ng-hide-add-active {
  transform: rotate(-270deg);
  opacity: 0;
}

/*
    Transition modifiers
  */
.slow {
  transition-duration: 750ms !important;
}

.fast {
  transition-duration: 250ms !important;
}

.linear {
  transition-timing-function: linear !important;
}

.ease {
  transition-timing-function: ease !important;
}

.easeIn {
  transition-timing-function: ease-in !important;
}

.easeOut {
  transition-timing-function: ease-out !important;
}

.easeInOut {
  transition-timing-function: ease-in-out !important;
}

.bounceIn {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.bounceOut {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.bounceInOut {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.delay {
  transition-delay: 300ms !important;
}

.long-delay {
  transition-delay: 700ms !important;
}

/*
    Animations
  */
.shake {
  animation-name: shake;
  animation-duration: 500ms;
  animation-timing-function: ease;
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
  animation-delay: 0;
}

.spin-cw {
  animation-name: spin-cw;
  animation-duration: 500ms;
  animation-timing-function: ease;
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
  animation-delay: 0;
}

.spin-ccw {
  animation-name: spin-ccw;
  animation-duration: 500ms;
  animation-timing-function: ease;
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
  animation-delay: 0;
}

.wiggle {
  animation-name: wiggle;
  animation-duration: 500ms;
  animation-timing-function: ease;
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
  animation-delay: 0;
}

/*
    Animation modifiers
  */
.shake.infinite,
.spin-cw.infinite,
.spin-ccw.infinite,
.wiggle.infinite {
  animation-iteration-count: infinite;
}

.shake.linear,
.spin-cw.linear,
.spin-ccw.linear,
.wiggle.linear {
  animation-timing-function: linear !important;
}

.shake.ease,
.spin-cw.ease,
.spin-ccw.ease,
.wiggle.ease {
  animation-timing-function: ease !important;
}

.shake.easeIn,
.spin-cw.easeIn,
.spin-ccw.easeIn,
.wiggle.easeIn {
  animation-timing-function: ease-in !important;
}

.shake.easeOut,
.spin-cw.easeOut,
.spin-ccw.easeOut,
.wiggle.easeOut {
  animation-timing-function: ease-out !important;
}

.shake.easeInOut,
.spin-cw.easeInOut,
.spin-ccw.easeInOut,
.wiggle.easeInOut {
  animation-timing-function: ease-in-out !important;
}

.shake.bounceIn,
.spin-cw.bounceIn,
.spin-ccw.bounceIn,
.wiggle.bounceIn {
  animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.shake.bounceOut,
.spin-cw.bounceOut,
.spin-ccw.bounceOut,
.wiggle.bounceOut {
  animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.shake.bounceInOut,
.spin-cw.bounceInOut,
.spin-ccw.bounceInOut,
.wiggle.bounceInOut {
  animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.shake.slow,
.spin-cw.slow,
.spin-ccw.slow,
.wiggle.slow {
  animation-duration: 750ms !important;
}

.shake.fast,
.spin-cw.fast,
.spin-ccw.fast,
.wiggle.fast {
  animation-duration: 250ms !important;
}

.shake.delay,
.spin-cw.delay,
.spin-ccw.delay,
.wiggle.delay {
  animation-delay: 300ms !important;
}

.shake.long-delay,
.spin-cw.long-delay,
.spin-ccw.long-delay,
.wiggle.long-delay {
  animation-delay: 700ms !important;
}

.stagger {
  transition-delay: 150ms;
  transition-duration: 0;
}

.stort-stagger {
  transition-delay: 150ms;
  transition-duration: 0;
}

.long-stagger {
  transition-delay: 150ms;
  transition-duration: 0;
}

.position-absolute {
  overflow: hidden;
  position: relative;
}

.ui-animation.ng-enter-active, .ui-animation.ng-leave-active {
  position: absolute !important;
  backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

/*
  NOTIFICATION
  ------------

  An alert that pins to the corner of the screen when triggered by JavaScript. It can be set to disappear after a certain period of time, or to stay put until the user clicks on it. A custom action can be asigned to a notification as well.

  Optionally, the notifications directive can also tap into the browser's native notification support, if it exists.
*/
.notification, .static-notification {
  z-index: 1000;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  margin-top: .5rem;
  margin-bottom: .5rem;
  display: none;
}

.notification h1, .static-notification h1 {
  font-size: 1.25em;
  margin: 0;
}

.notification p, .static-notification p {
  margin: 0;
}

.is-active.notification, .is-active.static-notification {
  display: -ms-flexbox;
  display: flex;
}

.notification .close-button, .static-notification .close-button {
  color: white;
}

.notification-container {
  z-index: 3000;
  position: fixed;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

/*
  CSS Output
*/
.notification {
  background: #00558b;
  padding: 1rem;
  border-radius: 4px;
}

.notification, .notification h1, .notification h2, .notification h3, .notification h4, .notification h5, .notification h6 {
  color: white;
}

.notification.success {
  background: #43AC6A;
  padding: 1rem;
  border-radius: 4px;
}

.notification.success, .notification.success h1, .notification.success h2, .notification.success h3, .notification.success h4, .notification.success h5, .notification.success h6 {
  color: white;
}

.notification.warning {
  background: #F08A24;
  padding: 1rem;
  border-radius: 4px;
}

.notification.warning, .notification.warning h1, .notification.warning h2, .notification.warning h3, .notification.warning h4, .notification.warning h5, .notification.warning h6 {
  color: white;
}

.notification.alert {
  background: #F04124;
  padding: 1rem;
  border-radius: 4px;
}

.notification.alert, .notification.alert h1, .notification.alert h2, .notification.alert h3, .notification.alert h4, .notification.alert h5, .notification.alert h6 {
  color: white;
}

.notification.dark {
  background: #232323;
  padding: 1rem;
  border-radius: 4px;
}

.notification.dark, .notification.dark h1, .notification.dark h2, .notification.dark h3, .notification.dark h4, .notification.dark h5, .notification.dark h6 {
  color: #fff;
}

.static-notification {
  background: #00558b;
  padding: 1rem;
  border-radius: 4px;
  position: fixed !important;
}

.static-notification, .static-notification h1, .static-notification h2, .static-notification h3, .static-notification h4, .static-notification h5, .static-notification h6 {
  color: white;
}

.static-notification.top-right {
  width: 25rem;
  right: 1rem;
  top: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .static-notification.top-right {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.static-notification.top-left {
  width: 25rem;
  left: 1rem;
  top: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .static-notification.top-left {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.static-notification.top-middle {
  width: 25rem;
  left: 50%;
  margin-left: -12.5rem;
  top: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .static-notification.top-middle {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.static-notification.bottom-right {
  width: 25rem;
  right: 1rem;
  top: auto;
  bottom: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .static-notification.bottom-right {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.static-notification.bottom-left {
  width: 25rem;
  left: 1rem;
  top: auto;
  bottom: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .static-notification.bottom-left {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.static-notification.bottom-middle {
  width: 25rem;
  left: 50%;
  margin-left: -12.5rem;
  top: auto;
  bottom: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .static-notification.bottom-middle {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.static-notification.success {
  background: #43AC6A;
  padding: 1rem;
  border-radius: 4px;
}

.static-notification.success, .static-notification.success h1, .static-notification.success h2, .static-notification.success h3, .static-notification.success h4, .static-notification.success h5, .static-notification.success h6 {
  color: white;
}

.static-notification.warning {
  background: #F08A24;
  padding: 1rem;
  border-radius: 4px;
}

.static-notification.warning, .static-notification.warning h1, .static-notification.warning h2, .static-notification.warning h3, .static-notification.warning h4, .static-notification.warning h5, .static-notification.warning h6 {
  color: white;
}

.static-notification.alert {
  background: #F04124;
  padding: 1rem;
  border-radius: 4px;
}

.static-notification.alert, .static-notification.alert h1, .static-notification.alert h2, .static-notification.alert h3, .static-notification.alert h4, .static-notification.alert h5, .static-notification.alert h6 {
  color: white;
}

.static-notification.dark {
  background: #232323;
  padding: 1rem;
  border-radius: 4px;
}

.static-notification.dark, .static-notification.dark h1, .static-notification.dark h2, .static-notification.dark h3, .static-notification.dark h4, .static-notification.dark h5, .static-notification.dark h6 {
  color: #fff;
}

.notification-container {
  width: 25rem;
  right: 1rem;
  top: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .notification-container {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.notification-container.top-right {
  width: 25rem;
  right: 1rem;
  top: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .notification-container.top-right {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.notification-container.top-left {
  width: 25rem;
  left: 1rem;
  top: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .notification-container.top-left {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.notification-container.top-middle {
  width: 25rem;
  left: 50%;
  margin-left: -12.5rem;
  top: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .notification-container.top-middle {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.notification-container.bottom-right {
  width: 25rem;
  right: 1rem;
  top: auto;
  bottom: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .notification-container.bottom-right {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.notification-container.bottom-left {
  width: 25rem;
  left: 1rem;
  top: auto;
  bottom: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .notification-container.bottom-left {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.notification-container.bottom-middle {
  width: 25rem;
  left: 50%;
  margin-left: -12.5rem;
  top: auto;
  bottom: 1rem;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .notification-container.bottom-middle {
    width: auto;
    left: 1rem;
    right: 1rem;
    margin-left: 0;
  }
}

.notification-icon {
  -ms-flex: 0 0 60px;
      flex: 0 0 60px;
  margin-right: 1rem;
  -ms-flex-item-align: start;
      align-self: flex-start;
}

.notification-icon img {
  width: 100%;
  height: auto;
}

.notification-content {
  -ms-flex: 1;
      flex: 1;
}

/*
	Off-canvas menu
  ---------------

  A generic container that stays fixed to the left, top, right, or bottom of the screen, and is summoned when needed. When an off-canvas panel is open, the app frame shifts over to reveal the menu.
*/
.off-canvas {
  position: fixed;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  transition: transform 0.25s ease-out;
  z-index: 2;
}

.is-active.off-canvas {
  transform: translate(0, 0) !important;
}

.off-canvas ~ .grid-frame {
  transform: translate(0, 0, 0);
  transition: transform 0.25s ease-out;
  backface-visibility: hidden;
  background: white;
}

.off-canvas {
  /*
    Get shadow values for later use
  */
  /*
    Sizing
  */
  width: 250px;
  height: 100%;
  /*
    Positioning
  */
  top: 0;
  left: 0;
  box-shadow: inset -3px 0 10px rgba(0, 0, 0, 0.25);
  transform: translateX(-100%);
  background: #fff;
  color: #000;
}

.off-canvas.is-active ~ .grid-frame {
  transform: translateX(250px) !important;
}

.off-canvas.top {
  /*
    Get shadow values for later use
  */
  /*
    Sizing
  */
  height: 250px;
  width: 100%;
  /*
    Positioning
  */
  top: 0;
  left: 0;
  transform: translateY(-100%);
  box-shadow: inset 0 -3px 10px rgba(0, 0, 0, 0.25);
}

.off-canvas.top.is-active ~ .grid-frame {
  transform: translateY(250px) !important;
}

.off-canvas.right {
  /*
    Get shadow values for later use
  */
  /*
    Sizing
  */
  width: 250px;
  height: 100%;
  /*
    Positioning
  */
  left: auto;
  top: 0;
  right: 0;
  box-shadow: inset 3px 0 10px rgba(0, 0, 0, 0.25);
  transform: translateX(100%);
}

.off-canvas.right.is-active ~ .grid-frame {
  transform: translateX(-250px) !important;
}

.off-canvas.bottom {
  /*
    Get shadow values for later use
  */
  /*
    Sizing
  */
  height: 250px;
  width: 100%;
  /*
    Positioning
  */
  top: auto;
  bottom: 0;
  left: 0;
  transform: translateY(100%);
  box-shadow: inset 0 3px 10px rgba(0, 0, 0, 0.25);
}

.off-canvas.bottom.is-active ~ .grid-frame {
  transform: translateY(-250px) !important;
}

.off-canvas.left {
  /*
    Get shadow values for later use
  */
  /*
    Sizing
  */
  width: 250px;
  height: 100%;
  /*
    Positioning
  */
  top: 0;
  left: 0;
  box-shadow: inset -3px 0 10px rgba(0, 0, 0, 0.25);
  transform: translateX(-100%);
}

.off-canvas.left.is-active ~ .grid-frame {
  transform: translateX(250px) !important;
}

.off-canvas.detached {
  z-index: 0;
  box-shadow: none;
}

.off-canvas.detached, .off-canvas.detached.is-active {
  transform: none;
}

.off-canvas.detached ~ .grid-frame {
  z-index: 1;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
}

.off-canvas.primary {
  background: #00558b;
  color: #fff;
}

.off-canvas.dark {
  background: #232323;
  color: #fff;
}

/*
  POPUP
  -----

  A floating container that can anchor to any other on-screen element, and contain any content, including grid blocks or panels.
*/
.popup {
  position: absolute;
  z-index: 1000;
  opacity: 0;
  overflow: hidden;
  transition: opacity 0.25s ease-out;
  pointer-events: none;
}

.tether-enabled.popup {
  opacity: 1;
  pointer-events: auto;
}

.popup {
  width: 18.75rem;
  background: #fff;
  border-radius: 0;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  border: 0;
}

.popup.dark {
  background: #232323;
  border-radius: 0;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  border: 0;
}

.popup.primary {
  background: #00558b;
  border-radius: 0;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  border: 0;
}

/*
  SWITCH
  ------
*/
.switch {
  position: relative;
  overflow: hidden;
  display: inline-block;
}

.switch > input {
  position: absolute;
  left: -9999px;
  outline: none;
}

.switch > label {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
  margin: 0;
}

.switch > label::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

/*
  Defines the dimmensions of the switch.

  $width - width of the switch.
  $height - height of the switch.
*/
.switch {
  width: 3.125rem;
  height: 2rem;
  border-radius: 9999px;
}

.switch > label::after {
  width: 2rem;
  height: 2rem;
}

.switch input:checked + label::after {
  left: 1.125rem;
}

.switch > label {
  background: #ccc;
}

.switch > label::after {
  background: white;
  border-radius: 9999px;
  transition: left 0.15s ease-out;
  border: 4px solid #ccc;
}

.switch input:checked + label {
  background: #00558b;
  margin: 0;
}

.switch input:checked + label::after {
  border-color: #00558b;
}

.switch.small {
  width: 2.5rem;
  height: 1.625rem;
}

.switch.small > label::after {
  width: 1.625rem;
  height: 1.625rem;
}

.switch.small input:checked + label::after {
  left: 0.875rem;
}

.switch.large {
  width: 3.75rem;
  height: 2.375rem;
}

.switch.large > label::after {
  width: 2.375rem;
  height: 2.375rem;
}

.switch.large input:checked + label::after {
  left: 1.375rem;
}

/*
  TABS
  ----
*/
.tabs {
  /*
		Container styles
	*/
  display: -ms-flexbox;
  display: flex;
  background: transparent;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
}

.tabs.vertical {
  /*
		Container styles
	*/
  display: -ms-flexbox;
  display: flex;
  background: transparent;
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
}

.tabs .tab-item {
  background: #f3f3f3;
  padding: 1rem;
  line-height: 1;
  margin: 0;
  -ms-flex: 0 1 auto;
      flex: 0 1 auto;
  cursor: pointer;
  color: #000;
}

.tabs .tab-item.is-active {
  background: #ececec;
  color: #000;
}

.tabs .tab-item.is-active:hover {
  background: #e7e7e7;
}

.tabs .tab-item:hover {
  background: #e7e7e7;
}

.tab-contents {
  padding: 1rem;
}

.tab-contents .tab-content {
  display: none;
}

.tab-contents .tab-content.is-active {
  display: block;
}

/*
  ACCORDION
  ---------

  The trusy accordion allows you to create a series of vertical tabs.
*/
.accordion {
  border: 1px solid #cbcbcb;
}

.accordion-title {
  padding: 1rem;
  background: #f3f3f3;
  color: #000;
  line-height: 1;
  cursor: pointer;
}

.accordion-title:hover {
  background: #e7e7e7;
}

.is-active > .accordion-title {
  background: #ececec;
  color: #000;
}

.accordion-content {
  padding: 1rem;
  display: none;
}

.is-active > .accordion-content {
  display: block;
}

/*
  TYPOGRAPHY
  ----------

  Includes typographic resets for many common elements, and a few helper classes.
   - Headers
   - Subheaders
   - Lead paragraphs
   - Ordered/unordered lists
   - Code samples
   - Anchors
   - Dividers
   - Blockquotes
   - Acronyms
*/
/* Typography resets */
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

/* Default Link Styles */
a {
  color: #00558b;
  text-decoration: none;
  line-height: inherit;
}

a[ui-sref] {
  cursor: pointer;
}

a:hover, a:focus {
  color: #004978;
}

a img {
  border: none;
}

/* Default paragraph styles */
p {
  font-family: inherit;
  font-weight: normal;
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 1.25rem;
  text-rendering: optimizeLegibility;
}

p.lead {
  font-size: 1.21875rem;
  line-height: 1.6;
}

p aside {
  font-size: 0.875rem;
  line-height: 1.35;
  font-style: italic;
}

/* Default header styles */
h1, h2, h3, h4, h5, h6 {
  font-family: "Roboto", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  color: #222;
  text-rendering: optimizeLegibility;
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  line-height: 1.4;
}

h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
  font-size: 60%;
  color: #6f6f6f;
  line-height: 0;
}

h1 {
  font-size: 2.125rem;
}

h2 {
  font-size: 1.6875rem;
}

h3 {
  font-size: 1.375rem;
}

h4 {
  font-size: 1.125rem;
}

h5 {
  font-size: 1.125rem;
}

h6 {
  font-size: 1rem;
}

.subheader {
  line-height: 1.4;
  color: #6f6f6f;
  font-weight: normal;
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
}

hr {
  border: solid #ddd;
  border-width: 1px 0 0;
  clear: both;
  margin: 1.25rem 0 1.1875rem;
  height: 0;
}

/* Helpful Typography Defaults */
em,
i {
  font-style: italic;
  line-height: inherit;
}

strong,
b {
  font-weight: bold;
  line-height: inherit;
}

small {
  font-size: 60%;
  color: #6f6f6f;
  line-height: inherit;
}

code {
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #464646;
  background-color: #fbfbfb;
  border-width: 1px;
  border-style: solid;
  border-color: #e2e2e2;
  padding: 0.125rem 0.3125rem 0.0625rem;
}

/* Lists */
ul,
ol,
dl {
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 1.25rem;
  list-style-position: outside;
  font-family: inherit;
}

/* Lists */
ul, ol {
  margin-left: 1.1rem;
}

ul li ul,
ul li ol, ol li ul,
ol li ol {
  margin-left: 1.25rem;
  margin-bottom: 0;
}

/* Lists without bullets */
ul.no-bullet {
  margin-left: 0;
}

ul.no-bullet, ul.no-bullet li ul, ul.no-bullet li ol {
  list-style-type: none;
}

/* Definition Lists */
dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold;
}

dl dd {
  margin-bottom: 0.75rem;
}

/* Abbreviations */
abbr,
acronym {
  text-transform: uppercase;
  font-size: 90%;
  color: #222;
  border-bottom: 1px dotted #ddd;
  cursor: help;
}

abbr {
  text-transform: none;
}

/* Blockquotes */
blockquote {
  margin: 0 0 1.25rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #ddd;
}

blockquote cite {
  display: block;
  font-size: 0.8125rem;
  color: #555555;
}

blockquote cite:before {
  content: "\2014 \0020";
}

blockquote cite a,
blockquote cite a:visited {
  color: #555555;
}

blockquote,
blockquote p {
  line-height: 1.6;
  color: #6f6f6f;
}

@media only screen and (min-width: 40em) {
  h1, h2, h3, h4, h5, h6 {
    line-height: 1.4;
  }
  h1 {
    font-size: 2.75rem;
  }
  h2 {
    font-size: 2.3125rem;
  }
  h3 {
    font-size: 1.6875rem;
  }
  h4 {
    font-size: 1.4375rem;
  }
  h5 {
    font-size: 1.125rem;
  }
  h6 {
    font-size: 1rem;
  }
}

/*
  UTILITIES
  ---------

  Responsive helper classes to assist you in quickly doing basic formatting and layout.

  Features:
   - Vertical alignment
   - Visibility
   - Text alignment
   - Floating
*/
.v-align {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.v-align .align-top {
  -ms-flex-item-align: start;
      align-self: flex-start;
}

.v-align .align-center {
  -ms-flex-item-align: center;
      align-self: center;
}

.v-align .align-bottom {
  -ms-flex-item-align: end;
      align-self: flex-end;
}

.v-align .tiny-align-top {
  -ms-flex-item-align: start;
      align-self: flex-start;
}

.v-align .tiny-align-center {
  -ms-flex-item-align: center;
      align-self: center;
}

.v-align .tiny-align-bottom {
  -ms-flex-item-align: end;
      align-self: flex-end;
}

@media only screen and (min-width: 30em) {
  .v-align .small-align-top {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}

@media only screen and (min-width: 30em) {
  .v-align .small-align-center {
    -ms-flex-item-align: center;
        align-self: center;
  }
}

@media only screen and (min-width: 30em) {
  .v-align .small-align-bottom {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}

@media only screen and (min-width: 40em) {
  .v-align .medium-align-top {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}

@media only screen and (min-width: 40em) {
  .v-align .medium-align-center {
    -ms-flex-item-align: center;
        align-self: center;
  }
}

@media only screen and (min-width: 40em) {
  .v-align .medium-align-bottom {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}

@media only screen and (min-width: 75em) {
  .v-align .large-align-top {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}

@media only screen and (min-width: 75em) {
  .v-align .large-align-center {
    -ms-flex-item-align: center;
        align-self: center;
  }
}

@media only screen and (min-width: 75em) {
  .v-align .large-align-bottom {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}

.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

.hide-for-tiny:not(.ng-hide) {
  display: block !important;
  display: none !important;
}

.hide-for-tiny[class*="grid-block"]:not(.ng-hide) {
  display: -ms-flexbox !important;
  display: flex !important;
  display: none !important;
}

.show-for-tiny:not(.ng-hide) {
  display: none !important;
  display: block !important;
}

.show-for-tiny[class*="grid-block"]:not(.ng-hide) {
  display: none !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.hide-for-tiny-only:not(.ng-hide) {
  display: block !important;
}

@media only screen and (min-width: 0em) and (max-width: 29.9375rem) {
  .hide-for-tiny-only:not(.ng-hide) {
    display: none !important;
  }
}

.hide-for-tiny-only[class*="grid-block"]:not(.ng-hide) {
  display: -ms-flexbox !important;
  display: flex !important;
}

@media only screen and (min-width: 0em) and (max-width: 29.9375rem) {
  .hide-for-tiny-only[class*="grid-block"]:not(.ng-hide) {
    display: none !important;
  }
}

.show-for-tiny-only:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 0em) and (max-width: 29.9375rem) {
  .show-for-tiny-only:not(.ng-hide) {
    display: block !important;
  }
}

.show-for-tiny-only[class*="grid-block"]:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 0em) and (max-width: 29.9375rem) {
  .show-for-tiny-only[class*="grid-block"]:not(.ng-hide) {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

.hide-for-small:not(.ng-hide) {
  display: block !important;
}

@media only screen and (min-width: 30em) {
  .hide-for-small:not(.ng-hide) {
    display: none !important;
  }
}

.hide-for-small[class*="grid-block"]:not(.ng-hide) {
  display: -ms-flexbox !important;
  display: flex !important;
}

@media only screen and (min-width: 30em) {
  .hide-for-small[class*="grid-block"]:not(.ng-hide) {
    display: none !important;
  }
}

.show-for-small:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 30em) {
  .show-for-small:not(.ng-hide) {
    display: block !important;
  }
}

.show-for-small[class*="grid-block"]:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 30em) {
  .show-for-small[class*="grid-block"]:not(.ng-hide) {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

.hide-for-small-only:not(.ng-hide) {
  display: block !important;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .hide-for-small-only:not(.ng-hide) {
    display: none !important;
  }
}

.hide-for-small-only[class*="grid-block"]:not(.ng-hide) {
  display: -ms-flexbox !important;
  display: flex !important;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .hide-for-small-only[class*="grid-block"]:not(.ng-hide) {
    display: none !important;
  }
}

.show-for-small-only:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .show-for-small-only:not(.ng-hide) {
    display: block !important;
  }
}

.show-for-small-only[class*="grid-block"]:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .show-for-small-only[class*="grid-block"]:not(.ng-hide) {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

.hide-for-medium:not(.ng-hide) {
  display: block !important;
}

@media only screen and (min-width: 40em) {
  .hide-for-medium:not(.ng-hide) {
    display: none !important;
  }
}

.hide-for-medium[class*="grid-block"]:not(.ng-hide) {
  display: -ms-flexbox !important;
  display: flex !important;
}

@media only screen and (min-width: 40em) {
  .hide-for-medium[class*="grid-block"]:not(.ng-hide) {
    display: none !important;
  }
}

.show-for-medium:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 40em) {
  .show-for-medium:not(.ng-hide) {
    display: block !important;
  }
}

.show-for-medium[class*="grid-block"]:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 40em) {
  .show-for-medium[class*="grid-block"]:not(.ng-hide) {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

.hide-for-medium-only:not(.ng-hide) {
  display: block !important;
}

@media only screen and (min-width: 40em) and (max-width: 74.9375rem) {
  .hide-for-medium-only:not(.ng-hide) {
    display: none !important;
  }
}

.hide-for-medium-only[class*="grid-block"]:not(.ng-hide) {
  display: -ms-flexbox !important;
  display: flex !important;
}

@media only screen and (min-width: 40em) and (max-width: 74.9375rem) {
  .hide-for-medium-only[class*="grid-block"]:not(.ng-hide) {
    display: none !important;
  }
}

.show-for-medium-only:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 40em) and (max-width: 74.9375rem) {
  .show-for-medium-only:not(.ng-hide) {
    display: block !important;
  }
}

.show-for-medium-only[class*="grid-block"]:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 40em) and (max-width: 74.9375rem) {
  .show-for-medium-only[class*="grid-block"]:not(.ng-hide) {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

.hide-for-large:not(.ng-hide) {
  display: block !important;
}

@media only screen and (min-width: 75em) {
  .hide-for-large:not(.ng-hide) {
    display: none !important;
  }
}

.hide-for-large[class*="grid-block"]:not(.ng-hide) {
  display: -ms-flexbox !important;
  display: flex !important;
}

@media only screen and (min-width: 75em) {
  .hide-for-large[class*="grid-block"]:not(.ng-hide) {
    display: none !important;
  }
}

.show-for-large:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 75em) {
  .show-for-large:not(.ng-hide) {
    display: block !important;
  }
}

.show-for-large[class*="grid-block"]:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 75em) {
  .show-for-large[class*="grid-block"]:not(.ng-hide) {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

.hide-for-large-only:not(.ng-hide) {
  display: block !important;
}

@media only screen and (min-width: 75em) {
  .hide-for-large-only:not(.ng-hide) {
    display: none !important;
  }
}

.hide-for-large-only[class*="grid-block"]:not(.ng-hide) {
  display: -ms-flexbox !important;
  display: flex !important;
}

@media only screen and (min-width: 75em) {
  .hide-for-large-only[class*="grid-block"]:not(.ng-hide) {
    display: none !important;
  }
}

.show-for-large-only:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 75em) {
  .show-for-large-only:not(.ng-hide) {
    display: block !important;
  }
}

.show-for-large-only[class*="grid-block"]:not(.ng-hide) {
  display: none !important;
}

@media only screen and (min-width: 75em) {
  .show-for-large-only[class*="grid-block"]:not(.ng-hide) {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media only screen and (orientation: portrait) {
  .hide-for-portrait {
    display: none !important;
  }
  .hide-for-portrait[class*="grid-block"] {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

.show-for-portrait {
  display: none !important;
}

@media only screen and (orientation: portrait) {
  .show-for-portrait {
    display: block !important;
  }
  .show-for-portrait[class*="grid-block"] {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media only screen and (orientation: landscape) {
  .hide-for-landscape {
    display: none !important;
  }
  .hide-for-landscape[class*="grid-block"] {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

.show-for-landscape {
  display: none !important;
}

@media only screen and (orientation: landscape) {
  .show-for-landscape {
    display: block !important;
  }
  .show-for-landscape[class*="grid-block"] {
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

/*
    Text alignment
  */
.text-left {
  text-align: left;
}

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

@media only screen and (min-width: 0em) and (max-width: 29.9375rem) {
  .tiny-only-text-left {
    text-align: left;
  }
}

@media only screen and (min-width: 30em) {
  .small-text-left {
    text-align: left;
  }
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .small-only-text-left {
    text-align: left;
  }
}

@media only screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left;
  }
}

@media only screen and (min-width: 40em) and (max-width: 74.9375rem) {
  .medium-only-text-left {
    text-align: left;
  }
}

@media only screen and (min-width: 75em) {
  .large-text-left {
    text-align: left;
  }
}

@media only screen and (min-width: 75em) {
  .large-only-text-left {
    text-align: left;
  }
}

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

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

@media only screen and (min-width: 0em) and (max-width: 29.9375rem) {
  .tiny-only-text-right {
    text-align: right;
  }
}

@media only screen and (min-width: 30em) {
  .small-text-right {
    text-align: right;
  }
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .small-only-text-right {
    text-align: right;
  }
}

@media only screen and (min-width: 40em) {
  .medium-text-right {
    text-align: right;
  }
}

@media only screen and (min-width: 40em) and (max-width: 74.9375rem) {
  .medium-only-text-right {
    text-align: right;
  }
}

@media only screen and (min-width: 75em) {
  .large-text-right {
    text-align: right;
  }
}

@media only screen and (min-width: 75em) {
  .large-only-text-right {
    text-align: right;
  }
}

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

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

@media only screen and (min-width: 0em) and (max-width: 29.9375rem) {
  .tiny-only-text-center {
    text-align: center;
  }
}

@media only screen and (min-width: 30em) {
  .small-text-center {
    text-align: center;
  }
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .small-only-text-center {
    text-align: center;
  }
}

@media only screen and (min-width: 40em) {
  .medium-text-center {
    text-align: center;
  }
}

@media only screen and (min-width: 40em) and (max-width: 74.9375rem) {
  .medium-only-text-center {
    text-align: center;
  }
}

@media only screen and (min-width: 75em) {
  .large-text-center {
    text-align: center;
  }
}

@media only screen and (min-width: 75em) {
  .large-only-text-center {
    text-align: center;
  }
}

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

.tiny-text-justify {
  text-align: justify;
}

@media only screen and (min-width: 0em) and (max-width: 29.9375rem) {
  .tiny-only-text-justify {
    text-align: justify;
  }
}

@media only screen and (min-width: 30em) {
  .small-text-justify {
    text-align: justify;
  }
}

@media only screen and (min-width: 30em) and (max-width: 39.9375rem) {
  .small-only-text-justify {
    text-align: justify;
  }
}

@media only screen and (min-width: 40em) {
  .medium-text-justify {
    text-align: justify;
  }
}

@media only screen and (min-width: 40em) and (max-width: 74.9375rem) {
  .medium-only-text-justify {
    text-align: justify;
  }
}

@media only screen and (min-width: 75em) {
  .large-text-justify {
    text-align: justify;
  }
}

@media only screen and (min-width: 75em) {
  .large-only-text-justify {
    text-align: justify;
  }
}

/*
    Floating
  */
.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

.float-left {
  float: left;
}

.float-right {
  float: right;
}

.float-none {
  float: none;
}

/* Markers used by gulp-inject to inject sass files automatically*/
.spinner2 {
  position: absolute;
  margin-left: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: auto;
  margin-top: auto;
  width: 115px;
  height: 115px;
  padding: 0;
  margin-bottom: auto;
}

.spinner {
  position: absolute;
  margin-left: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: auto;
  margin-top: auto;
  width: 100px;
  height: 100px;
  padding: 0;
  margin-bottom: auto;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

/* Spinner */
/* Absolute Center Spinner */
.loading {
  position: fixed;
  z-index: 999;
  height: 115px;
  width: 115px;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/* Transparent Overlay */
.loading:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

.branding {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}

.branding-container {
  width: 100%;
  padding-top: 50%;
  height: 0;
}

.forced-aspect-ratio {
  width: 100%;
  height: 0;
}

.forced-aspect-ratio > div {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.small-branding-image {
  display: none;
}

@media only screen and (min-width: 30em) and (orientation: landscape) {
  .small-branding-image {
    display: -ms-flexbox;
    display: flex;
  }
}

@media only screen and (min-width: 30em) and (orientation: landscape) {
  .large-branding-image {
    display: none;
  }
}

.hamburger {
  position: absolute;
  top: 0;
  left: 0;
  width: 4rem;
  height: 4rem;
  color: white;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

@media only screen and (min-width: 30em) and (orientation: landscape) {
  .hamburger {
    display: none;
  }
}

@media only screen and (min-width: 40em) {
  .hamburger {
    width: 5rem;
  }
}

@media only screen and (min-width: 40em) {
  .hamburger {
    height: 5rem;
  }
}

.hamburger:hover {
  color: white;
}

#qs-branding-language {
  position: absolute;
  overflow: visible;
  top: 10%;
  bottom: 10%;
  left: 5%;
  width: 60px;
}

#qs-branding-language .icon svg {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 60%;
  width: 100%;
}

#qs-branding-language span.text {
  font-size: 60%;
  position: absolute;
  top: 65%;
  left: 0;
  height: 20%;
  width: 100%;
  overflow: visible;
  text-align: center;
}

#qs-branding-language span.text > span {
  overflow: visible;
}

#qs-branding-language span.text > span::before {
  content: "";
}

#qs-branding-language span.text > span::after {
  content: "";
}

.branding-sidebar-button {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 4rem;
  height: 4rem;
  position: absolute;
  font-size: 20px;
  left: 25px;
  top: 5px;
  bottom: 0;
  margin: auto;
}

.branding-sidebar-button svg {
  height: 33px;
  width: 30px;
}

.branding-language-icon {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  position: absolute;
  font-size: 20px;
  right: 95px;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 1;
}

.branding-back-button {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 4rem;
  height: 4rem;
  position: absolute;
  font-size: 20px;
  left: 6rem;
  top: 0;
  bottom: 0;
  margin: auto;
}

.branding-back-button svg {
  height: 25px;
  width: 20px;
}

#qs-branding-order {
  position: absolute;
  font-size: 20px;
  right: 25px;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 40px;
  font-weight: bold;
  text-align: center;
}

#qs-branding-order span.text #order-total-cost {
  font-size: 15px;
}

#qs-branding-order svg {
  height: 30px;
  width: 40px;
}

.branding-logo {
  background-repeat: no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  height: 40px;
  width: 240px;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .branding-back-button {
    left: 50px;
    height: 20px;
  }
  .branding-back-button svg {
    height: 20px;
  }
  .branding-sidebar-button {
    left: 5px;
    height: 20px;
  }
  .branding-sidebar-button svg {
    height: 20px;
  }
  .branding-menu-button {
    left: 55px;
  }
  .branding-menu-button span {
    padding: 0;
  }
  .branding-menu-button span.text {
    display: none;
  }
  .branding-menu-button svg {
    width: 25px;
  }
  #qs-branding-order svg {
    height: 25px;
  }
  #qs-branding-order span.text #order-total-cost {
    font-size: 13px;
  }
  .branding-logo {
    height: 30px;
    width: 140px;
  }
}

.qs-title-back {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  position: absolute;
  border-radius: 50%;
  background-color: white;
}

@media only screen and (min-width: 40em) {
  .qs-title-back {
    width: 3.125rem;
  }
}

@media only screen and (min-width: 40em) {
  .qs-title-back {
    height: 3.125rem;
  }
}

.qs-title-signin {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 7rem;
  width: 4rem;
  height: 4rem;
  position: absolute;
  border-radius: 50%;
  background-color: white;
}

@media only screen and (min-width: 40em) {
  .qs-title-signin {
    width: 5rem;
  }
}

@media only screen and (min-width: 40em) {
  .qs-title-signin {
    height: 5rem;
  }
}

.qs-title-signout {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 7rem;
  width: 4rem;
  height: 4rem;
  position: absolute;
  border-radius: 50%;
  background-color: white;
}

@media only screen and (min-width: 40em) {
  .qs-title-signout {
    width: 5rem;
  }
}

@media only screen and (min-width: 40em) {
  .qs-title-signout {
    height: 5rem;
  }
}

.qs-title-order {
  position: absolute;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 2%;
  color: #eee;
  width: 6rem;
  height: 4rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  overflow: visible;
}

@media only screen and (min-width: 40em) {
  .qs-title-order {
    width: 7.5rem;
  }
}

@media only screen and (min-width: 40em) {
  .qs-title-order {
    height: 5rem;
  }
}

.qs-title-order:hover {
  color: #eee;
}

.qs-title-order .fa {
  position: absolute;
  top: 0.4rem;
  right: 1.2rem;
}

.qs-title-order #order-total-cost {
  overflow: visible;
}

.qs-title-order #order-total-cost::before {
  content: "";
  margin-left: -100%;
}

.qs-title-order #order-total-cost::after {
  content: "";
  margin-right: -100%;
}

.qs-title-order #basket-number {
  font-size: 0.65rem;
  font-weight: bold;
  overflow: hidden;
}

@media only screen and (min-width: 40em) {
  .qs-title-order #basket-number {
    font-size: 0.85rem;
  }
}

#order-basket-size {
  position: absolute;
  color: #eee;
  top: 40%;
  right: calc(3% + 60px);
  height: 100%;
  font-size: 12px;
  width: 10px;
  overflow-y: visible;
  word-wrap: no-wrap;
  direction: rtl;
}

.background-transparent {
  background: transparent;
}

@media only screen and (min-width: 40em) {
  #language-action-sheet {
    max-width: 500%;
    left: 275%;
  }
}

#language-action-sheet::before {
  left: 15px;
}

#language-action-sheet::after {
  left: 15px;
}

#basket-refresh-icon {
  margin-right: 0;
  margin-left: auto;
}

#basket-refresh-icon span svg {
  width: 30px;
  height: 30px;
}

#basket-refresh-icon span svg:hover {
  fill: #666;
}

.qs-price-container {
  margin-left: 2% !important;
}

.rightHalf {
  display: none;
}

@media only screen and (orientation: portrait) {
  .rightHalf {
    display: none;
  }
}

@media only screen and (orientation: landscape) {
  .rightHalf {
    display: -ms-flexbox;
    display: flex;
  }
}

.qs-entity {
  border-bottom: 1px solid #ddd;
}

.qs-entity .fa {
  color: #333;
}

/* Cross sells */
.cross-sells {
  background-color: #FBFBFB;
  border: 1px solid #ccc;
  margin: -5px 15px 0px 15px;
  color: gray;
  max-height: 300px;
  overflow-y: scroll;
  font-size: 14px !important;
}

.cross-sells .cross-sells-header {
  height: 30px;
  padding-top: 5px;
}

.cross-sells .cross-sells-header span {
  margin-left: 5px;
}

.cross-sells .close-cross {
  float: right;
  position: relative;
  margin-right: 5px;
  padding-top: 2px;
  border: 1px solid #777777;
  border-radius: 50%;
  background-color: white;
  text-align: center;
  width: 20px;
  height: 20px;
  font-size: 12px;
  color: #777777;
}

.cross-sells .qs-item-container {
  padding: 0 15px;
}

.cross-sells .margin-tiny {
  margin: 2% 10px;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .cross-sells .item-view-cross-sells {
    height: 100%;
  }
  .item-view-cross-sells .cross-sells {
    width: 100%;
    background-color: transparent;
    padding: 5px 10px;
    margin: 0;
    border: 0;
    max-height: 515px;
  }
}

.qs-view-content.collection {
  height: 76% !important;
}

.qs-view-content .time-picker-container {
  height: 40%;
  width: 100%;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
}

.qs-view-content .contact-details {
  height: 60%;
  width: 100%;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.qs-view-content .contact-details #contact-details-form {
  width: 100%;
  height: 100%;
  -ms-flex-align: end;
      align-items: flex-end;
}

.qs-view-content .contact-details .form-group {
  padding: 5px;
  border-top: 1px solid #EAEAEA;
  display: list-item;
}

.qs-view-content .contact-details .form-group label {
  margin: 0;
  font-weight: bold;
  font-size: 16px;
}

.qs-view-content .contact-details .form-group input {
  display: inline-block;
  width: 90%;
  padding: 5px 0;
}

.qs-view-content .contact-details .form-group .icon {
  display: none;
  height: 25px;
}

.qs-view-content .contact-details .invalid label {
  color: #ca1e1e;
}

.qs-view-content .contact-details .invalid .icon {
  display: inline-block;
}

.conf-page-right-half {
  position: absolute;
  left: 50%;
  right: 0;
  top: 0;
  bottom: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  /* do this in order to avoid the responsive change due to the foundation medium breakpoint (at 640px) */
  font-size: 20px;
}

@media (orientation: portrait) {
  .conf-page-right-half {
    left: 0;
    bottom: 11%;
  }
}

@media (max-width: 640px) {
  .conf-page-right-half {
    left: 0;
  }
}

.confirmation-page-right {
  position: absolute;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  color: white;
  background-color: rgba(0, 0, 0, 0.75);
  font-size: 70%;
  border-radius: 50%;
  padding: 2rem;
  overflow: hidden;
}

.confirmation-page-right .title {
  font-size: 150%;
  font-weight: bold;
  margin-top: 0;
}

.circle-component-wrapper {
  margin: 8px;
  text-align: center;
}

.btn-action--wrapper {
  margin: 9px;
  text-align: center;
}

a.btn-action {
  color: inherit;
}

a.btn-action:hover {
  color: inherit;
}

.btn-action {
  width: 150px;
  display: block;
  border-radius: 25px;
  border: solid 2px;
  padding: 10px 15px 10px 15px;
  overflow-x: hidden;
  white-space: pre;
  text-overflow: ellipsis;
}

.portrait-confirmation {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 11%;
  background-color: white;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  /* do this in order to avoid the responsive change due to the foundation medium breakpoint (at 640px) */
  font-size: 20px;
}

@media (orientation: landscape) {
  .portrait-confirmation {
    visibility: collapse;
  }
}

.invisible {
  visibility: collapse;
}

.modalDialog {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.8);
  z-index: 4;
  opacity: 0;
  transition: opacity 200ms ease-in;
}

.modalDialog.isVisible {
  opacity: 1;
}

.basket-component {
  background: #fff;
  z-index: 5;
}

.basket-component .qs-view-header-order .basket-icon {
  margin-right: 15px;
}

.basket-component .qs-view-header-order .basket-icon span svg {
  width: 25px;
}

.basket-component .qs-view-header-order .basket-icon .icon {
  width: 25px;
}

.basket-component .qs-view-header-order .name {
  font-weight: bold;
  font-size: 16px;
}

.basket-component .qs-view-header-order .description, .basket-component .qs-view-header-order .opencheck-description, .basket-component .qs-view-header-order .qs-quantity {
  font-style: normal;
  font-size: 12px;
}

.basket-component .basket-title {
  width: 75%;
  text-align: left;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.basket-component .total {
  width: 40%;
  text-align: right;
  color: #000;
  font-weight: bold;
}

.basket-component .total .qs-entity-title {
  font-size: 18px;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .basket-component .total .qs-entity-title {
    font-size: 16px;
  }
}

.qs-item-order .order-item-description {
  width: 60%;
}

.qs-item-order .order-item-description > .qs-entity-title.sheet-element {
  overflow-x: hidden;
  text-overflow: ellipsis;
}

.qs-item-order .order-item-price {
  width: 25%;
  text-align: right;
}

.qs-item-order .order-item-actions {
  width: 15%;
  text-align: right;
}

.qs-item-order .order-item-actions img {
  width: 20px;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .qs-item-order .order-item-actions img {
    width: 23px;
  }
}

.qs-item-order .order-item-actions .ng-click-active img {
  background-color: #EAEAEA;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .qs-item-order .order-item-description {
    width: 50%;
  }
  .qs-item-order .order-item-price {
    width: 25%;
  }
  .qs-item-order .order-item-actions {
    width: 25%;
  }
}

.error-page {
  text-align: center;
  /* margin-top: 50px; */
  color: #AEAEAE;
  vertical-align: middle;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  min-height: 300px;
  height: 300px;
  left: 0;
}

.error-page .image-container, .error-page .image-placeholder {
  width: 220px;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 10px 0 40px 0;
}

.error-page .title {
  font-size: 40px;
}

.error-page .sub-text {
  font-size: 20px;
  text-align: center;
  padding: 40px 50px;
}

.qs-item-details-container {
  min-height: 3rem;
  padding: 0.25rem;
}

@media only screen and (min-width: 40em) {
  .qs-item-details-container {
    min-height: 3.75rem;
  }
}

.qs-item-details-container .qs-price {
  font-size: 1rem;
}

.qs-item-details-container .fa-container {
  margin-left: 0.5rem;
}

.qs-item-details-container .fa {
  color: #333;
}

.bigger-button {
  height: 10%;
  width: 10%;
}

.bigger-text {
  font-size: 75%;
}

.inherit-size {
  height: inherit !important;
  width: inherit !important;
}

.qs-item-image {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .qs-item-image {
    position: absolute;
    top: 0;
    width: 100%;
    height: calc((100vh - 12vh - 8vh) * 65 /100);
  }
}

@media (orientation: portrait) {
  .leftHalf.qs-item-content {
    position: absolute;
    top: calc((100vh - 12vh - 8vh) * 65 /100);
    height: 35%;
    width: 100%;
    border-radius: 0;
    z-index: 1;
  }
  .leftHalf.qs-item-content .right-button {
    width: 26%;
    font-weight: bold;
  }
  .leftHalf.qs-item-content .right-button svg {
    height: 25px;
  }
  .leftHalf.qs-item-content .right-button img {
    height: 25px;
  }
  .leftHalf.qs-item-content .qs-view-header {
    position: absolute;
    top: 0;
    height: calc((100vh - 12vh - 8vh) * 11 /100);
    width: 100%;
    overflow-y: auto;
  }
  .leftHalf.qs-item-content .qs-view-content-no-header {
    position: relative;
    height: 100%;
    width: 100%;
    overflow-y: auto;
    padding: 2%;
  }
  .leftHalf.qs-item-content .qs-view-footer {
    overflow-y: hidden;
  }
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .leftHalf.qs-item-content .right-button {
    width: 15%;
  }
  .leftHalf.qs-item-content .right-button span:first-child {
    display: none;
  }
}

/* Kiosk File
  All the styles regarding with kiosk mode are here
*/
.kiosk-mode {
  display: none;
}

@media (orientation: portrait) and (min-device-height: 2048px) {
  .kiosk-mode {
    display: block;
    z-index: 15;
  }
  th, body {
    font-size: 25px !important;
  }
  .qs-entity-title {
    font-size: 25px !important;
  }
  .fa {
    font-size: 2.5rem !important;
  }
  .show-options #qs-branding-order {
    display: none !important;
  }
  .show-options .branding-menu-button {
    display: none !important;
  }
  .show-basket .branding-menu-button {
    display: none !important;
  }
  #qs-header {
    max-height: 8vh !important;
    min-height: 8vh !important;
  }
  #qs-footer {
    font-size: 32px !important;
  }
  /* Branding */
  .branding-back-button {
    height: 40px !important;
    font-size: 25px !important;
  }
  .branding-back-button svg {
    width: 40px !important;
    height: 40px !important;
  }
  .branding-menu-button {
    height: 40px !important;
    font-size: 30px !important;
    left: 115px !important;
  }
  .branding-menu-button svg {
    width: 50px !important;
    height: 40px !important;
  }
  #qs-branding-order {
    height: 75px !important;
  }
  #qs-branding-order span.text #order-total-cost {
    font-size: 25px !important;
  }
  #qs-branding-order svg {
    height: 45px !important;
    width: 50px !important;
  }
  .branding-logo {
    height: 60px !important;
    width: 400px !important;
  }
  /* Modal dialog */
  .modalDialog {
    height: 92% !important;
    width: 92% !important;
    margin: auto !important;
  }
  #modalDialogFull {
    z-index: 1;
  }
  /* Basket */
  .basket-component .qs-view-header-order {
    font-size: 25px;
    height: 7%;
  }
  .basket-component .qs-view-header-order .btn-leave-table {
    font-size: 23px;
  }
  .basket-component .qs-view-header-order .basket-icon {
    margin-right: 20px !important;
  }
  .basket-component .qs-view-header-order .basket-icon span svg {
    width: 40px !important;
  }
  .basket-component .qs-view-header-order .basket-icon .icon {
    width: 40px !important;
  }
  .basket-component .qs-view-header-order .name {
    font-size: 25px !important;
  }
  .basket-component .qs-view-header-order .description, .basket-component .qs-view-header-order .opencheck-description, .basket-component .qs-view-header-order .qs-quantity {
    font-size: 20px !important;
  }
  .basket-component .qs-view-content {
    height: 86% !important;
  }
  .basket-component .qs-view-content.collection {
    height: 93% !important;
  }
  .basket-component .qs-view-result-order {
    height: 7% !important;
  }
  .basket-component .qs-view-footer {
    display: none !important;
  }
  .basket-component .qs-view-options-notes textarea {
    font-size: 25px !important;
    width: 92% !important;
  }
  .qs-item-order .order-item-description {
    width: 70% !important;
  }
  .qs-item-order .order-item-description .qs-item-description {
    font-size: 20px !important;
  }
  .qs-item-order .order-item-price {
    width: 15% !important;
    text-align: right !important;
  }
  .qs-item-order .order-item-actions {
    width: 15% !important;
    text-align: right !important;
  }
  .qs-item-order .order-item-actions img {
    width: 35px !important;
  }
  /* Error Page */
  .error-page {
    height: 400px !important;
  }
  .error-page .image-container, .error-page .image-placeholder {
    width: 550px !important;
    height: 150px !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
    margin: 10px 0 40px 0 !important;
  }
  .error-page .title {
    font-size: 60px !important;
  }
  .error-page .sub-text {
    font-size: 30px !important;
    text-align: center !important;
    padding: 40px 50px !important;
  }
  /* LeftHalf */
  .qs-view-header {
    font-size: 32px !important;
    height: 2% !important;
  }
  .leftHalf {
    width: 92% !important;
    height: 92% !important;
  }
  .leftHalf.qs-item-content {
    height: 39% !important;
    width: 100% !important;
    font-size: 28px !important;
  }
  .leftHalf.qs-item-content .right-button {
    width: 25% !important;
    font-weight: bold !important;
    display: inherit;
  }
  .leftHalf.qs-item-content .right-button span {
    margin-left: 10px !important;
    margin-right: 5px !important;
  }
  .leftHalf.qs-item-content .right-button svg, .leftHalf.qs-item-content .right-button img {
    height: 50px !important;
  }
  .leftHalf.qs-item-content .qs-view-content-no-header {
    padding: 4% !important;
  }
  .leftHalf.qs-item-content .qs-item-description {
    margin-top: 30px !important;
    font-size: 25px !important;
  }
  .leftHalf .secondary {
    font-size: 25px !important;
  }
  .leftHalf .right-button {
    width: 5% !important;
  }
  .leftHalf .right-button svg, .leftHalf .right-button img {
    height: 50px !important;
  }
  /* Options */
  .options-view {
    border-radius: 5px !important;
  }
  .qs-view-options-content {
    height: 100% !important;
    border-radius: 5px !important;
  }
  .qs-view-options-steps {
    font-size: 30px !important;
    padding: 2% 4% 2% 4% !important;
    height: 100px !important;
  }
  .qs-view-options-steps .step .circle-container .circle {
    border-width: 2px !important;
    width: 40px !important;
    height: 40px !important;
    font-size: 20px !important;
    padding-top: 7px !important;
  }
  .qs-view-options-steps .step .description, .qs-view-options-steps .step .opencheck-description, .qs-view-options-steps .step .qs-quantity {
    font-size: 20px !important;
  }
  .qs-view-options-steps .step .name {
    font-size: 25px !important;
  }
  .option-group-header .icon-list-container i {
    font-size: 28px !important;
  }
  .option-group-header .description, .option-group-header .opencheck-description, .option-group-header .qs-quantity {
    font-size: 20px !important;
  }
  .select-option-icon {
    width: 40px !important;
  }
  .options-footer {
    display: none !important;
  }
  .qs-option-description {
    font-size: 20px !important;
  }
  /* Collection */
  .contact-details {
    font-size: 25px !important;
  }
  .contact-details .form-group {
    padding: 20px 0;
  }
  .contact-details .form-group label {
    font-size: 25px !important;
  }
  /* FCC Payment */
  .fcc-payment {
    font-size: 40px !important;
  }
  .fcc-payment .visible-content {
    padding: 25% 25% !important;
  }
  .fcc-payment .visible-content .container .description, .fcc-payment .visible-content .container .opencheck-description, .fcc-payment .visible-content .container .qs-quantity {
    font-size: 20px !important;
  }
  .fcc-payment .visible-content .image-container .image, .fcc-payment .visible-content .image-placeholder .image {
    width: 450px !important;
    height: 450px !important;
  }
  .fcc-payment .visible-content .image-container img, .fcc-payment .visible-content .image-placeholder img {
    margin-top: 30px;
    height: 300px !important;
  }
  .fcc-payment .visible-content .image-container .order-number, .fcc-payment .visible-content .image-placeholder .order-number {
    font-size: 60px !important;
  }
  /* Menu */
  .restaurant-description .qs-view-header {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
    height: 7% !important;
  }
  .restaurant-description .landing-message {
    font-size: 25px !important;
  }
  /* Tip */
  .tip .entity-block-size {
    padding: 30px 4% !important;
  }
  .tip .entity-block-size img {
    height: 50px !important;
  }
  .tip .entity-block-size .description.secondary, .tip .entity-block-size .secondary.opencheck-description, .tip .entity-block-size .secondary.qs-quantity {
    font-size: 25px !important;
  }
  .tip input[type="text"].customized {
    width: 50px !important;
  }
}

.locations-container {
  overflow-y: scroll;
  padding: 10px 40px 10px 40px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.locations-container .location-block {
  box-shadow: 0 0.5px 3px #888888;
  min-height: 150px;
  max-height: 200px;
  min-width: 150px;
  max-width: 200px;
  padding: 10px;
  margin: 15px;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .locations-container .location-block {
    min-height: 100px;
    max-height: 150px;
    min-width: 100px;
    max-width: 150px;
  }
}

.login a {
  text-decoration: none;
  color: #000;
}

.login .container {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  position: absolute;
  padding: 10px 20px;
  display: block;
  background-color: #f2f2f2;
  width: 35%;
  text-align: center;
}

.login .container .margin-container {
  margin: 10px 0px;
}

.login .container .login-header {
  font-weight: bold;
  font-size: 16px;
}

.login .container .login-subheader {
  font-weight: bold;
  font-size: 14px;
  text-decoration: underline;
}

.login .container .login-button {
  width: 100%;
  background-color: #000;
  height: 60px;
  color: #fff;
  border: 0;
}

.login .container .login-button.facebook {
  background-color: #3c5a96;
}

.login .container .form-group {
  text-align: left;
  background-color: #fff;
  margin: 2px 0;
  padding: 10px;
}

.login .container .form-group input, .login .container .form-group label {
  margin: 0;
  padding: 0;
  height: 20px;
}

.login .login-container {
  height: 400px;
}

.login .create-container {
  height: 500px;
}

.login .invalid label {
  color: #ca1e1e;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .login .container {
    width: 90%;
  }
}

.restaurant-description {
  word-wrap: break-word;
  white-space: pre-wrap;
}

.restaurant-description .qs-view-header {
  border: 0;
  border-bottom: 1px solid #ddd;
  padding: 10px 0;
  overflow: hidden;
  background-color: transparent;
  font-size: 18px;
  height: 10% !important;
}

.restaurant-description .landing-message {
  font-size: 15px;
  height: 88% !important;
}

.modal-description {
  padding: 1.2em 0;
}

@media only screen and (orientation: landscape) {
  .landscape-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .landscape-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (orientation: portrait) {
  .portrait-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .portrait-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (orientation: landscape) {
  .landscape-tiny-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .landscape-tiny-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (orientation: landscape) and (min-width: 30em) {
  .landscape-small-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .landscape-small-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (orientation: landscape) and (min-width: 40em) {
  .landscape-medium-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .landscape-medium-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (orientation: landscape) and (min-width: 75em) {
  .landscape-large-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .landscape-large-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (orientation: portrait) {
  .portrait-tiny-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .portrait-tiny-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (orientation: portrait) and (min-width: 30em) {
  .portrait-small-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .portrait-small-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (orientation: portrait) and (min-width: 40em) {
  .portrait-medium-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .portrait-medium-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

@media only screen and (orientation: portrait) and (min-width: 75em) {
  .portrait-large-grid-block {
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    position: relative;
    overflow: hidden;
    backface-visibility: hidden;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-order: 0;
        order: 0;
    height: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .portrait-large-grid-block.panel {
    transform: none;
    position: relative;
    width: auto;
    height: auto;
    z-index: auto;
    box-shadow: none;
    background: transparent;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }
}

.qs-navigation-menu {
  z-index: 200;
  min-width: 4.5rem;
  max-width: 4.5rem;
  box-shadow: 0px 0px 12px 6px rgba(0, 0, 0, 0.35) !important;
  z-index: 5 !important;
}

@media only screen and (min-width: 40em) {
  .qs-navigation-menu {
    min-width: 5.625rem;
  }
}

@media only screen and (min-width: 40em) {
  .qs-navigation-menu {
    max-width: 5.625rem;
  }
}

.qs-navigation-menu > div {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.qs-navigation-menu-overlay {
  z-index: 5;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: none;
  cursor: pointer;
  transition: all linear 0.25s;
  opacity: 0;
}

@media only screen and (orientation: landscape) {
  .qs-navigation-menu-overlay {
    display: none !important;
  }
}

.qs-navigation-menu-overlay.active,
.qs-navigation-menu-overlay.active-add,
.qs-navigation-menu-overlay.active-remove {
  display: block;
}

.qs-navigation-menu-overlay.active,
.qs-navigation-menu-overlay.active-add-active,
.qs-navigation-menu-overlay.active-remove {
  opacity: 1;
}

.qs-navigation-menu-overlay.active-remove-active {
  opacity: 0;
}

.navigation-button {
  width: 4.5rem;
  height: 4.5rem;
  position: relative;
  border-left: 0.25rem solid transparent;
}

@media only screen and (min-width: 40em) {
  .navigation-button {
    width: 5.625rem;
  }
}

@media only screen and (min-width: 40em) {
  .navigation-button {
    height: 5.625rem;
  }
}

.navigation-button > div {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: -0.25rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  opacity: 0.8;
}

.navigation-button-active > div {
  opacity: 0.95;
}

.text-navigation-button {
  color: white;
  padding: 1rem 0.5rem;
  margin: 0.25rem;
  -ms-flex-item-align: center;
      align-self: center;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .qs-notification-main {
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    width: 80% !important;
  }
}

.flex-column-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

.qs-view-options-content {
  /*position:absolute;*/
  /*top: 110px;*/
  height: 80%;
  width: 100%;
  overflow-y: auto;
}

.qs-view-options-content.no-notes {
  height: 86%;
}

.qs-view-options-content.with-notes {
  height: 65%;
}

.qs-view-options-content.fill-container {
  height: 85%;
}

@media (orientation: landscape) and (max-device-width: 800px) {
  .qs-view-options-content {
    top: 0;
    height: 90%;
  }
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .qs-view-options-content.fill-container {
    max-height: 85%;
  }
}

.qs-view-options-box-content {
  position: absolute;
  top: 0;
  width: 100%;
  overflow-y: auto;
}

.qs-view-options-box-content.no-notes {
  height: 86%;
}

.qs-view-options-box-content.with-notes {
  height: 65%;
}

.qs-view-options-notes {
  position: absolute;
  top: 66%;
  height: 20%;
  width: 100%;
}

.qs-view-options-notes textarea {
  position: absolute;
  height: 90%;
  top: 0;
  resize: none;
  width: 94%;
}

.qs-option-description {
  margin-top: 0.25rem;
}

.option-header .name, .option-group-header .name {
  font-weight: bold;
  display: block !important;
}

.option-header .description, .option-group-header .description, .option-header .opencheck-description, .option-group-header .opencheck-description, .option-header .qs-quantity, .option-group-header .qs-quantity {
  font-style: normal;
  color: #858585;
  font-size: 14px;
}

.options-footer {
  height: 11%;
  font-size: 14px;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .options-footer {
    font-size: 16px;
    margin-top: 0;
  }
}

@media (orientation: landscape) and (max-device-width: 800px) {
  .options-footer {
    height: 18%;
  }
}

.option-group-header {
  background-color: #EAEAEA;
}

.option-group-header .icon-list-container {
  color: #C7C7C7;
  padding-top: 5px;
}

.option-group-header .icon-list-container i {
  font-size: 18px;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .option-group-header .icon-list-container {
    padding-top: 7px;
  }
}

/* Options steps */
.qs-view-options-steps {
  width: 100%;
  font-size: 14px;
  padding: 4% 4% 2% 4%;
  border-bottom: 1px solid #ddd;
}

.qs-view-options-steps .step {
  display: inline-block;
  margin: 0 10px 0 0px;
  width: 100%;
}

.qs-view-options-steps .step div {
  display: inline-block;
}

.qs-view-options-steps .step .description, .qs-view-options-steps .step .opencheck-description, .qs-view-options-steps .step .qs-quantity {
  font-size: 12px;
}

.qs-view-options-steps .step .name {
  font-size: 15px;
}

.qs-view-options-steps .step .circle-container {
  height: 18px;
  margin: 4px 4px;
}

.qs-view-options-steps .step .circle-container .circle {
  border-radius: 50%;
  border-width: 1px;
  border-style: solid;
  width: 18px;
  height: 18px;
  text-align: center;
  font-size: 12px;
  padding-top: 1px;
}

.qs-view-options-steps .step .step-content {
  height: 36px;
  float: left;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .qs-view-options-steps {
    padding: 3% 4%;
  }
  .qs-view-options-steps .step .circle-container {
    margin: 8px 4px 4px 4px;
  }
  .qs-view-options-steps .step .description, .qs-view-options-steps .step .opencheck-description, .qs-view-options-steps .step .qs-quantity {
    font-size: 14px;
  }
  .qs-view-options-steps .step .name {
    font-size: 18px;
  }
}

@media (orientation: landscape) and (max-device-width: 800px) {
  .qs-view-options-steps {
    padding: 2% 2% 2% 4%;
  }
}

.big-font {
  font-size: 36px;
}

.disabled {
  color: #CECECE;
}

.disabled svg path {
  stroke: #CECECE;
}

.select-option-icon {
  display: -ms-flexbox;
  display: flex;
}

.select-option-icon svg {
  width: 28px;
}

.padding-small-options {
  padding: 3% 4% !important;
}

@media (orientation: landscape) and (max-device-width: 800px) {
  .padding-small-options {
    padding: 2% 2% 2% 4% !important;
  }
}

input[type="text"],
input[type="text"]:hover,
input[type="text"]:active,
input[type="text"]:focus {
  border: none;
  transition: 0.5s all ease;
  margin: 0 !important;
}

input[type="password"],
input[type="password"]:hover,
input[type="password"]:active,
input[type="password"]:focus {
  border: none;
  transition: 0.5s all ease;
  margin: 0 !important;
}

input[type="date"],
input[type="date"]:hover,
input[type="date"]:active,
input[type="date"]:focus {
  border: none;
  transition: 0.5s all ease;
  margin: 0 !important;
}

input[type="time"],
input[type="time"]:hover,
input[type="time"]:active,
input[type="time"]:focus {
  border: none;
  transition: 0.5s all ease;
  margin: 0 !important;
}

input[type="select"],
input[type="select"]:hover,
input[type="select"]:active,
input[type="select"]:focus {
  border: none;
  transition: 0.5s all ease;
  margin: 0 !important;
}

input[type="email"],
input[type="email"]:hover,
input[type="email"]:active,
input[type="email"]:focus {
  border: none;
  transition: 0.5s all ease;
  margin: 0 !important;
}

input[type="tel"],
input[type="tel"]:hover,
input[type="tel"]:active,
input[type="tel"]:focus {
  border: none;
  transition: 0.5s all ease;
  margin: 0 !important;
}

.inline-label > .form-label {
  background: transparent;
  border: none;
  border-bottom: 2px solid #333;
}

select {
  margin: 0;
}

table {
  margin: 1rem 1.5rem 1rem 0.5rem;
}

th {
  padding: 0 0.25rem 0 1rem;
  text-align: left;
}

td input[type="text"] {
  margin: 0.25rem;
}

td input[type="password"] {
  margin: 0.25rem;
}

.input-error {
  display: block;
  margin-left: 1rem;
  font-size: 0.75rem;
  color: #f00;
}

.order-type input[type="text"],
.order-type input[type="text"]:hover,
.order-type input[type="text"]:active,
.order-type input[type="text"]:focus {
  border: none;
  border-bottom: 2px solid #bbb;
  transition: 0.5s all ease;
  margin: 0 !important;
}

.order-type input[type="password"],
.order-type input[type="password"]:hover,
.order-type input[type="password"]:active,
.order-type input[type="password"]:focus {
  border: none;
  border-bottom: 2px solid #bbb;
  transition: 0.5s all ease;
  margin: 0 !important;
}

.order-type input[type="date"],
.order-type input[type="date"]:hover,
.order-type input[type="date"]:active,
.order-type input[type="date"]:focus {
  border: none;
  border-bottom: 2px solid #bbb;
  transition: 0.5s all ease;
  margin: 0 !important;
}

.order-type input[type="time"],
.order-type input[type="time"]:hover,
.order-type input[type="time"]:active,
.order-type input[type="time"]:focus {
  border: none;
  border-bottom: 2px solid #bbb;
  transition: 0.5s all ease;
  margin: 0 !important;
}

.order-type input[type="select"],
.order-type input[type="select"]:hover,
.order-type input[type="select"]:active,
.order-type input[type="select"]:focus {
  border: none;
  border-bottom: 2px solid #bbb;
  transition: 0.5s all ease;
  margin: 0 !important;
}

.order-type input[type="email"],
.order-type input[type="email"]:hover,
.order-type input[type="email"]:active,
.order-type input[type="email"]:focus {
  border: none;
  border-bottom: 2px solid #bbb;
  transition: 0.5s all ease;
  margin: 0 !important;
}

.order-type input[type="tel"],
.order-type input[type="tel"]:hover,
.order-type input[type="tel"]:active,
.order-type input[type="tel"]:focus {
  border: none;
  border-bottom: 2px solid #bbb;
  transition: 0.5s all ease;
  margin: 0 !important;
}

.order-type .sheet-container {
  -ms-flex-align: center !important;
      align-items: center !important;
}

.order-type .qs-order-type-container {
  min-height: 3rem;
  -ms-flex-align: center !important;
      align-items: center !important;
  margin: 0.4rem 0;
  width: 45%;
}

@media only screen and (min-width: 40em) {
  .order-type .qs-order-type-container {
    min-height: 3.75rem;
  }
}

.order-type .qs-order-type-container.margin-0 {
  margin-bottom: 0;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .order-type .qs-order-type-container {
    width: 100%;
  }
}

.qs-payment-type-container {
  min-height: 2rem;
  -ms-flex-align: center !important;
      align-items: center !important;
}

@media only screen and (min-width: 40em) {
  .qs-payment-type-container {
    min-height: 2.5rem;
  }
}

.qs-payment-entity [ng-click].ng-click-active {
  background-color: #EAEAEA;
}

.payment {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  height: 100%;
  width: 100%;
}

.payment .qs-view-header {
  height: 8% !important;
  -ms-flex: 0 1 80px;
      flex: 0 1 80px;
  width: 100%;
  border-radius: 0;
}

.payment #amounts {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  width: 100%;
  border-radius: 5px 5px 0 0;
}

.payment #amounts .amountComponent {
  -ms-flex: 0 1 180px;
      flex: 0 1 180px;
  padding: 0 4%;
}

.payment #paymentGateways {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  height: 100%;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column;
      flex-flow: column;
}

.payment #paymentGateways .qs-payment-entity {
  -ms-flex: 0 1 auto;
      flex: 0 1 auto;
}

.payment #paymentGateways .qs-payment-entity .paymentGatewayContent {
  border-bottom: 1px solid #ddd;
  clear: both;
  height: 80px;
  padding: 2% 4%;
}

.payment .qs-view-footer {
  position: relative;
  -ms-flex: 0 0 11%;
      flex: 0 0 11%;
}

.fcc-payment {
  color: #fff;
}

.fcc-payment #modalDialogFull {
  opacity: 0.75 !important;
}

.fcc-payment .visible-content {
  padding: 5% 25%;
  z-index: 12;
  position: absolute;
  width: 100%;
  height: 100%;
  text-align: center;
}

.fcc-payment .visible-content .container {
  height: 20%;
  padding: 1.5rem;
}

.fcc-payment .visible-content .container div {
  margin: 10px;
}

.fcc-payment .visible-content .container .description, .fcc-payment .visible-content .container .opencheck-description, .fcc-payment .visible-content .container .qs-quantity {
  font-style: normal;
  font-size: 16px;
}

.fcc-payment .visible-content .container .title {
  font-weight: bold;
}

.fcc-payment .visible-content .image-container, .fcc-payment .visible-content .image-placeholder {
  height: 50%;
  width: 100%;
  margin: 5% 0;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.fcc-payment .visible-content .image-container .image, .fcc-payment .visible-content .image-placeholder .image {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 230px;
  height: 230px;
  border-radius: 50%;
  border: 2px solid #fff;
  padding: 35px;
  background-color: rgba(0, 0, 0, 0.75);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center;
}

.fcc-payment .visible-content .image-container .image .centered, .fcc-payment .visible-content .image-placeholder .image .centered {
  -ms-flex-item-align: center;
      align-self: center;
  width: 100%;
}

.fcc-payment .visible-content .image-container img, .fcc-payment .visible-content .image-placeholder img {
  height: 160px;
}

.fcc-payment .visible-content .image-container .order-number, .fcc-payment .visible-content .image-placeholder .order-number {
  font-weight: bold;
  font-size: 30px;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .fcc-payment .visible-content {
    padding: 5% 5%;
  }
}

.fcc-payment .fcc-footer {
  position: absolute;
  width: 100%;
  height: 9%;
  bottom: 0;
  z-index: 12;
}

.fcc-payment .fcc-footer [ng-click] {
  background-color: #EAEAEA;
}

.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
  z-index: 0;
}

.owl-carousel .owl-animated-out {
  z-index: 1;
}

.owl-carousel .fadeOut {
  animation-name: fadeOut;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.owl-height {
  transition: height 500ms ease-in-out;
}

.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  position: relative;
  z-index: 1;
}

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
}

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  -webkit-transform: translate3d(0px, 0, 0);
}

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
  display: block;
  width: 100%;
  -webkit-transform-style: preserve-3d;
}

.owl-carousel .owl-dots.disabled, .owl-carousel .owl-nav.disabled {
  display: none;
}

.owl-carousel .owl-dot, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-nav .owl-prev {
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-loaded {
  display: block;
}

.owl-carousel.owl-loading {
  opacity: 0;
  display: block;
}

.owl-carousel.owl-hidden {
  opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
  display: none;
}

.owl-carousel.owl-drag .owl-item {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-grab {
  cursor: move;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}

.owl-carousel.owl-rtl {
  direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
  float: right;
}

.no-js .owl-carousel {
  display: block;
}

.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease;
}

.owl-carousel .owl-item img {
  transform-style: preserve-3d;
}

.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000;
}

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url(owl.video.play.png) no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: scale 100ms ease;
}

.owl-carousel .owl-video-play-icon:hover {
  transition: scale(1.3, 1.3);
}

.owl-carousel .owl-video-playing .owl-video-play-icon, .owl-carousel .owl-video-playing .owl-video-tn {
  display: none;
}

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease;
}

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%;
}

/* 
 * 	Default theme - Owl Carousel CSS File
 */
.owl-theme .owl-nav {
  margin-top: 10px;
  text-align: center;
  -webkit-tap-highlight-color: transparent;
}

.owl-theme .owl-nav [class*='owl-'] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #D6D6D6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}

.owl-theme .owl-nav [class*='owl-']:hover {
  background: #869791;
  color: #FFF;
  text-decoration: none;
}

.owl-theme .owl-nav .disabled {
  opacity: 0.5;
  cursor: default;
}

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px;
}

.owl-theme .owl-dots {
  text-align: center;
  -webkit-tap-highlight-color: transparent;
}

.owl-theme .owl-dots .owl-dot {
  display: inline-block;
  zoom: 1;
  *display: inline;
}

.owl-theme .owl-dots .owl-dot span {
  width: 10px;
  height: 10px;
  margin: 5px 7px;
  background: #D6D6D6;
  display: block;
  -webkit-backface-visibility: visible;
  transition: opacity 200ms ease;
  border-radius: 30px;
}

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
  background: #869791;
}

/*! JTSage-DateBox-4.0.0 |2016-01-11T16:09:26Z | (c) 2010,  2016 JTSage | https://github.com/jtsage/jquery-mobile-datebox/blob/master/LICENSE.txt */
/*
 * JTSage-DateBox : the full featured Date and Time Picker
 * Date: 2016-01-11T11:09:29-05:00
 * http://dev.jtsage.com/DateBox/
 * https://github.com/jtsage/jquery-mobile-datebox
 *
 * Copyright 2010, 2015 JTSage. and other contributors
 * Released under the MIT license.
 * https://github.com/jtsage/jquery-mobile-datebox/blob/master/LICENSE.txt
 *
 * jQueryUI Framework Styles
 */
/* 
 * Shared Styles 
 * 
 * These styles are used for the basic control,
 * and are not specific to any one mode.
 */
.datebox-input {
  display: inline;
}

.datebox-input-icon {
  display: inline;
}

.datebox-input-icon span {
  display: inline-block;
  margin-left: -1em;
  vertical-align: middle;
}

.ui-datebox-container {
  width: 290px;
  -webkit-transform: translate3d(0, 0, 0);
}

.ui-datebox-container .modal-header {
  padding: 8px 15px;
}

.ui-datebox-header {
  text-align: center;
}

.ui-datebox-header h4 {
  margin: 0;
  padding: 3px;
}

.ui-datebox-collapse {
  text-align: center;
}

div.ui-datebox-inline.ui-datebox-inline-has-input {
  float: none;
  clear: both;
  position: relative;
  top: 5px;
}

div.ui-datebox-container.ui-datebox-inline {
  width: 290px;
}

/* 
 * Calendar Mode Styles
 * 
 * These are specific to CalBox
 */
.ui-datebox-gridheader {
  text-align: center;
}

.ui-datebox-gridheader a {
  margin: 3px;
}

.ui-datebox-gridheader h4 {
  display: inline-block;
}

.ui-datebox-gridlabel h4 {
  margin: 10px;
}

.ui-datebox-gridminus, .ui-datebox-gridplus-rtl {
  margin-top: 10px;
  width: 38px;
  display: inline-block;
  float: left;
}

.ui-datebox-gridplus, .ui-datebox-gridminus-rtl {
  margin-top: 10px;
  width: 38px;
  display: inline-block;
  float: right;
}

.ui-datebox-cal-pickers fieldset {
  margin: 0;
  padding: 10px;
  border: none;
}

.ui-datebox-grid {
  clear: both;
  margin-bottom: 5px;
}

.ui-datebox-inline .ui-datebox-gridrow .ui-controlgroup-controls {
  width: 100%;
  text-align: center;
}

.ui-datebox-inline .ui-datebox-gridrow .ui-controlgroup-controls .ui-btn {
  float: none;
  clear: both;
}

.ui-datebox-gridrow {
  margin-left: auto;
  margin-right: auto;
  display: table;
  margin-bottom: 0px;
}

.ui-datebox-gridrow-last {
  margin-bottom: 5px;
}

.ui-datebox-controls {
  padding: 0px 3px;
  width: 100%;
  margin-bottom: 10px;
  text-align: center;
}

.ui-datebox-pickcontrol {
  text-align: center;
  margin-top: 3px;
  margin-bottom: 3px;
}

.ui-datebox-griddate {
  width: 39px;
  height: 30px;
  line-height: 30px;
  padding: 0;
  margin: 0;
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
  font-size: 12px;
  zoom: 1;
  *display: inline;
}

.ui-datebox-griddate-week {
  width: 34px;
  height: 30px;
  line-height: 30px;
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
  font-size: 12px;
  zoom: 1;
  *display: inline;
}

.ui-datebox-gridrow div.ui-datebox-griddate-empty {
  border: 1px solid transparent;
  color: #888888;
}

.ui-datebox-griddate.ui-datebox-griddate-label {
  border: 1px solid transparent;
  height: 15px;
  line-height: 15px;
}

/* 
 * Android Mode Styles
 * 
 * These are specific to datebox, timebox, and durationbox
 */
.ui-datebox-datebox-groups {
  margin-right: 5px;
  margin-left: 5px;
  margin-bottom: 10px;
}

.ui-datebox-datebox-groups input {
  text-align: center;
  width: 90%;
  margin-top: 3px;
  margin-bottom: 3px;
}

.ui-datebox-datebox-button {
  width: 80%;
  margin-right: auto;
  margin-left: auto;
  padding-top: .2em;
  padding-bottom: .2em;
}

.ui-datebox-datebox-button span {
  margin-left: auto;
  margin-right: auto;
}

.ui-datebox-datebox-groups label {
  text-align: center;
  width: 90%;
  margin-bottom: 0px;
  border: 1px solid #ccc;
}

.ui-datebox-datebox-group {
  width: 33.3333%;
  display: inline-block;
  text-align: center;
}

.ui-datebox-header h4 {
  text-align: center;
}

/* 
 * Flip Mode Styles
 * 
 * These are specific to flipbox, timeflipbox, durationflipbox, and 
 * customflip
 */
.ui-datebox-fliplab {
  text-align: center;
}

.ui-datebox-flipcenter {
  width: 260px;
  height: 40px;
  border: 1px solid #EEEEEE;
  background-color: rgba(255, 255, 255, 0.15);
  margin-right: auto;
  margin-left: auto;
  position: relative;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.6);
}

.ui-datebox-flipcontent {
  text-align: center;
  height: 125px;
  margin-bottom: -40px;
}

.ui-datebox-flipcontent li {
  border: 1px solid #ccc;
}

.ui-datebox-flipcontent div {
  margin-left: 3px;
  margin-right: 3px;
  width: 77px;
  height: 120px;
  display: inline-block;
  text-align: center;
  zoom: 1;
  *display: inline;
  overflow: hidden;
}

.ui-datebox-flipcontentd div {
  width: 60px;
}

.ui-datebox-flipcontent ul {
  list-style-type: none;
  display: inline;
  border: 1px solid rgba(0, 0, 0, 0);
}

.ui-datebox-flipcontent li {
  height: 30px;
}

.ui-datebox-flipcontent li span {
  margin-top: 7px;
  display: block;
}

/* 
 * Slide Mode Styles
 * 
 * Used solely for SlideBox.  Damn this is a lot of extra CSS.
 */
.ui-datebox-slide {
  width: 290px;
  margin-left: auto;
  margin-right: auto;
}

.ui-datebox-sliderow-int {
  display: inline-block;
  white-space: nowrap;
}

.ui-datebox-sliderow {
  margin-bottom: 5px;
  text-align: center;
  overflow: hidden;
  width: 290px;
}

.ui-datebox-slide .ui-btn {
  margin: 0;
  padding: 0px 1em;
}

.ui-datebox-slidebox {
  text-align: center;
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: middle;
  font-weight: bold;
  border: 1px solid #ccc;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

.ui-datebox-slideyear {
  width: 84px;
  line-height: 30px;
  font-size: 14px;
}

.ui-datebox-slidemonth {
  width: 51px;
  line-height: 30px;
  font-size: 12px;
}

.ui-datebox-slideday {
  width: 40px;
  line-height: 20px;
  font-size: 14px;
}

.ui-datebox-slidehour {
  width: 60px;
  line-height: 22px;
  font-size: 14px;
}

.ui-datebox-slidemins {
  width: 40px;
  line-height: 22px;
  font-size: 14px;
}

.ui-datebox-slidewday {
  font-size: 10px;
  font-weight: normal;
}

span.ui-datebox-nopad {
  margin: 0;
}

.ui-datebox-repad {
  margin: .5em .4375em;
}

/* Very Basic Themes 
 *
 * Don't use these, they are terrible
 *
 * .ui-datebox-container is to target only
 * datebox elements.  Due to how jQueryUI is
 * set up, a single class name probably isn't
 * specific enough to ever apply.
 *
 */
.ui-datebox-container .ui-datebox-theme-red {
  background-color: red;
  background-image: none;
  color: black;
}

.ui-datebox-container .ui-datebox-theme-green {
  background-color: green;
  background-image: none;
  color: black;
}

.ui-datebox-container .ui-datebox-theme-yellow {
  background-color: yellow;
  background-image: none;
  color: black;
}

code {
  font-family: 'Bitstream Vera Sans Mono','Courier', monospace;
}

/* syntax.css */
/* to make lines scroll instead of wrap */
/* from http://stackoverflow.com/a/23393920 */
.highlight pre code * {
  white-space: nowrap;
}

.highlight pre {
  overflow-x: auto;
}

.highlight pre code {
  white-space: pre;
}

/* github style pygments theme for jekyll */
/* from https://github.com/aahan/pygments-github-style */
.highlight pre, pre, .highlight .hll {
  background-color: #f8f8f8;
  border: 1px solid #ccc;
  padding: 6px 10px;
  border-radius: 3px;
}

.highlight .c {
  color: #999988;
  font-style: italic;
}

.highlight .err {
  color: #a61717;
  background-color: #e3d2d2;
}

.highlight .k {
  font-weight: bold;
}

.highlight .o {
  font-weight: bold;
}

.highlight .cm {
  color: #999988;
  font-style: italic;
}

.highlight .cp {
  color: #999999;
  font-weight: bold;
}

.highlight .c1 {
  color: #999988;
  font-style: italic;
}

.highlight .cs {
  color: #999999;
  font-weight: bold;
  font-style: italic;
}

.highlight .gd {
  color: #000000;
  background-color: #ffdddd;
}

.highlight .gd .x {
  color: #000000;
  background-color: #ffaaaa;
}

.highlight .ge {
  font-style: italic;
}

.highlight .gr {
  color: #aa0000;
}

.highlight .gh {
  color: #999999;
}

.highlight .gi {
  color: #000000;
  background-color: #ddffdd;
}

.highlight .gi .x {
  color: #000000;
  background-color: #aaffaa;
}

.highlight .go {
  color: #888888;
}

.highlight .gp {
  color: #555555;
}

.highlight .gs {
  font-weight: bold;
}

.highlight .gu {
  color: #800080;
  font-weight: bold;
}

.highlight .gt {
  color: #aa0000;
}

.highlight .kc {
  font-weight: bold;
}

.highlight .kd {
  font-weight: bold;
}

.highlight .kn {
  font-weight: bold;
}

.highlight .kp {
  font-weight: bold;
}

.highlight .kr {
  font-weight: bold;
}

.highlight .kt {
  color: #445588;
  font-weight: bold;
}

.highlight .m {
  color: #009999;
}

.highlight .s {
  color: #dd1144;
}

.highlight .n {
  color: #333333;
}

.highlight .na {
  color: teal;
}

.highlight .nb {
  color: #0086b3;
}

.highlight .nc {
  color: #445588;
  font-weight: bold;
}

.highlight .no {
  color: teal;
}

.highlight .ni {
  color: purple;
}

.highlight .ne {
  color: #990000;
  font-weight: bold;
}

.highlight .nf {
  color: #990000;
  font-weight: bold;
}

.highlight .nn {
  color: #555555;
}

.highlight .nt {
  color: navy;
}

.highlight .nv {
  color: teal;
}

.highlight .ow {
  font-weight: bold;
}

.highlight .w {
  color: #bbbbbb;
}

.highlight .mf {
  color: #009999;
}

.highlight .mh {
  color: #009999;
}

.highlight .mi {
  color: #009999;
}

.highlight .mo {
  color: #009999;
}

.highlight .sb {
  color: #dd1144;
}

.highlight .sc {
  color: #dd1144;
}

.highlight .sd {
  color: #dd1144;
}

.highlight .s2 {
  color: #dd1144;
}

.highlight .se {
  color: #dd1144;
}

.highlight .sh {
  color: #dd1144;
}

.highlight .si {
  color: #dd1144;
}

.highlight .sx {
  color: #dd1144;
}

.highlight .sr {
  color: #009926;
}

.highlight .s1 {
  color: #dd1144;
}

.highlight .ss {
  color: #990073;
}

.highlight .bp {
  color: #999999;
}

.highlight .vc {
  color: teal;
}

.highlight .vg {
  color: teal;
}

.highlight .vi {
  color: teal;
}

.highlight .il {
  color: #009999;
}

.highlight .gc {
  color: #999;
  background-color: #EAF2F5;
}

#restaurant-list {
  padding: 10px 30px;
  display: block;
}

#restaurant-list .name {
  margin: 4px 0px;
}

#restaurant-list .address {
  color: #C3443D;
  font-weight: bold;
}

#restaurant-list .qs-entity {
  font-size: 18px;
  border-bottom: 1px solid #BEBFBF;
}

#restaurant-list .qs-entity .entity-block-size {
  width: 100%;
  margin: 15px 0 15px 0;
  height: 3em;
  -ms-flex-align: center;
      align-items: center;
}

#restaurant-list .qs-entity .entity-block-size a {
  text-decoration: none;
  color: black;
}

#restaurant-list .qs-entity .grid-block {
  margin-right: 0;
  overflow-y: hidden;
  height: 100%;
}

#restaurant-list .qs-entity .chevron:before {
  border-color: transparent transparent transparent #BEBFBF;
}

body {
  /* Do this in order to avoid horizontal scrolling when the sidebar is visible */
  overflow-x: hidden;
}

[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
  display: none !important;
}

.qs-full-height {
  height: 100% !important;
}

.price-bar-overlayed {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0;
  background: rgba(0, 0, 0, 0.6);
}

.stop-overflow-y {
  overflow-y: hidden;
}

.margin-none {
  margin: 0 !important;
}

p {
  padding: 1rem 0;
  /*  color: #555;*/
}

.grid-content {
  padding: 0;
}

.cover-parent {
  position: absolute;
  height: 100%;
  width: 100%;
}

.button-label {
  /*color: $default-text-color-secondary;*/
}

.color-primary {
  color: #333;
}

.color-secondary {
  color: #eee;
}

.color-tertiary {
  color: #999;
}

.overlapping {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.margin-top-tiny {
  margin-top: 4% !important;
}

.margin-bottom-small {
  margin-bottom: 4% !important;
}

.padding-left-small {
  padding-left: 4% !important;
}

.padding-top-small {
  padding-top: 4% !important;
}

.padding-right-small {
  padding-right: 4% !important;
}

.padding-bottom-small {
  padding-bottom: 4% !important;
}

.padding-top-tiny {
  padding-top: 2% !important;
}

.padding-right-tiny {
  padding-right: 2% !important;
}

.padding-small {
  padding: 4% !important;
}

.padding-medium {
  padding: 10% !important;
}

hr.margin-tiny {
  margin-top: 2%;
  margin-bottom: 2%;
}

.qs-fixed {
  position: fixed;
  height: 4rem;
  top: 0;
  width: 100%;
  z-index: 150;
}

@media only screen and (min-width: 40em) {
  .qs-fixed {
    height: 5rem;
  }
}

.container {
  padding: 0.5rem;
}

.sheet-container {
  padding: 0.5rem 0.25rem 0.25rem;
}

.title-container {
  width: 100%;
  height: 4rem;
}

@media only screen and (min-width: 40em) {
  .title-container {
    height: 5rem;
  }
}

.qs-title-header {
  background-color: #EAEAEA;
  font-weight: bold;
  font-size: 1.25rem;
  font-size: 100%;
}

@media (orientation: landscape) and (min-device-height: 1200px) {
  .qs-title-header {
    font-size: 120% !important;
  }
}

.qs-header-container {
  overflow: hidden;
}

.qs-entity-price {
  color: #a1a1a1;
  font-size: 70%;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.qs-title-price-container {
  padding: 0.25rem 0.5rem;
}

.qs-title-price-container .qs-title {
  padding: 0.1rem;
}

@media only screen and (min-width: 40em) {
  .qs-title-price-container .qs-title {
    padding: 0.125rem;
  }
}

.image-container, .image-placeholder {
  padding: 0.5rem;
  width: 3rem;
  min-height: 3rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}

@media only screen and (min-width: 40em) {
  .image-container, .image-placeholder {
    width: 3.75rem;
  }
}

@media only screen and (min-width: 40em) {
  .image-container, .image-placeholder {
    min-height: 3.75rem;
  }
}

.image-placeholder {
  background: rgba(0, 0, 0, 0.1);
  border-right: 0px solid rgba(0, 0, 0, 0.15);
}

.double-shadow-container {
  padding: 0.5rem;
  margin: -0.5rem;
}

.fa-container:last-child {
  padding-right: 0.5rem;
}

.qs-options-container, .qs-order-options-container {
  margin: 1% 2% 1% 2% !important;
}

.qs-order-options-container {
  margin-left: 3.25rem !important;
  margin-right: 0.25rem !important;
}

@media only screen and (min-width: 40em) {
  .qs-order-options-container {
    margin-left: 4.0625rem !important;
    margin-right: 0.3125rem !important;
  }
}

.qs-option-group-container .qs-title {
  font-size: 0.9rem;
  line-height: 1.25rem;
  padding: 0.5rem;
}

@media only screen and (min-width: 40em) {
  .qs-option-group-container .qs-title {
    font-size: 1.125rem;
  }
}

@media only screen and (min-width: 40em) {
  .qs-option-group-container .qs-title {
    line-height: 1.5625rem;
  }
}

.qs-option-container, .qs-item-order {
  padding: 14px 0px;
  border-bottom: 1px solid #ddd;
}

.qs-option-container .qs-title, .qs-item-order .qs-title {
  color: #333;
  font-size: 0.85rem;
  padding: 0.1rem;
}

@media only screen and (min-width: 40em) {
  .qs-option-container .qs-title, .qs-item-order .qs-title {
    font-size: 1.0625rem;
  }
}

.qs-option-container .fa, .qs-item-order .fa {
  padding: 0.25rem;
}

.option-container:last-child {
  border-bottom: none;
}

.qs-item-container {
  min-height: 3rem;
  -ms-flex-align: center !important;
      align-items: center !important;
  margin: 0.3rem 0;
}

@media only screen and (min-width: 40em) {
  .qs-item-container {
    min-height: 3.75rem;
  }
}

.qs-entity-container {
  padding: 1% 4% 2% 4%;
  border-radius: 5px;
  min-height: 55px;
}

.darken-background {
  background: linear-gradient(rgba(0, 0, 0, 0.06), rgba(0, 0, 0, 0.06));
}

.qs-min-max {
  margin: 0.3rem;
  padding: 0.2rem 0.4rem;
  font-size: 0.7rem;
  font-style: italic;
  border: 1px solid white;
  border-radius: 0.5rem;
}

@media only screen and (min-width: 40em) {
  .qs-min-max {
    font-size: 0.875rem;
  }
}

.width-quarter {
  width: 15%;
}

.width-half {
  width: 50%;
}

.width-almost-half {
  width: 42.5%;
}

.border-right-tiny {
  border-style: solid;
  border-width: 0 1px 0 0;
}

.order-total {
  margin: 1rem;
}

ul.list li {
  border: none;
  border-bottom: 1px solid #ddd;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

ul.list li:last-child {
  border-bottom: none;
}

ul.list li.grid-block {
  -ms-flex-align: center;
      align-items: center;
}

a:hover {
  color: initial;
}

.grid-block.cross-align-center {
  -ms-flex-align: center;
      align-items: center;
}

.absolute-filled {
  position: absolute;
  height: 100%;
  width: 100%;
}

@media (orientation: portrait) {
  .show-options #qs-branding-order {
    display: none;
  }
  .show-options .branding-menu-button {
    display: none;
  }
}

@media (orientation: portrait) and (max-device-height: 2048px) {
  .show-options .root-category-wrapper {
    display: none;
  }
}

@media (orientation: landscape) and (max-device-width: 800px) {
  .show-options .root-category-wrapper {
    display: none;
  }
}

@media (orientation: portrait) {
  .show-basket .branding-menu-button {
    display: none;
  }
}

@media (orientation: portrait) and (max-device-height: 2048px) {
  .show-basket .root-category-wrapper {
    display: none;
  }
}

@media (orientation: landscape) and (max-device-width: 800px) {
  .show-basket .root-category-wrapper {
    display: none;
  }
  .show-basket .branding-menu-button {
    display: none;
  }
}

.leftHalf {
  border-width: 1px;
  border-style: solid;
  background-color: black;
  box-shadow: 3px 3px 20px -5px black;
  border-radius: 5px;
  border-color: black;
  height: 92%;
  left: 0;
  position: absolute;
  margin: 2% 0 2% 2%;
  background-color: white;
  white-space: pre-wrap;
  width: 35%;
}

.leftHalf .ng-click-active {
  background-color: #EAEAEA;
}

@media (orientation: portrait) {
  .leftHalf {
    width: 100%;
    height: 100%;
    border-radius: 5px;
    border: none;
    margin: auto;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
  }
  .leftHalf.confirmation-page-leftHalf {
    visibility: collapse;
  }
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .leftHalf {
    width: 100%;
    height: 100%;
    margin: 0;
    border-radius: 0;
  }
}

@media (orientation: landscape) and (max-device-width: 800px) {
  .leftHalf {
    width: 100%;
    height: 100%;
    border-radius: 0;
    border: none;
    box-shadow: none;
    margin: 0;
  }
  .leftHalf.confirmation-page-leftHalf {
    visibility: collapse;
  }
  .leftHalf .padding-top-small {
    padding-top: 6px !important;
  }
}

.leftHalf .right-button {
  width: auto;
  -ms-flex-align: center;
      align-items: center;
  text-align: center;
  display: inherit;
}

.leftHalf .right-button .fa-chevron-right {
  font-size: 16px;
}

.leftHalf .right-button span, .leftHalf .right-button i {
  display: inline-block;
}

.leftHalf .right-button svg, .leftHalf .right-button img {
  height: 25px;
}

@media (max-device-width: 480px) {
  .leftHalf .right-button {
    width: 10%;
  }
  .leftHalf .right-button i {
    font-size: 20px !important;
  }
}

.basket-component {
  position: absolute;
  right: 0.5%;
  height: 90%;
  width: 38%;
  background-color: white;
  border-radius: 5px;
}

.basket-component .qs-view-content {
  height: 66%;
}

.basket-component .qs-bill-content {
  height: 76%;
  overflow-x: auto;
}

.basket-component .qs-bill {
  margin: 20px 0;
  text-align: center;
  font-family: monospace;
  white-space: pre;
}

.basket-component .qs-empty-bill {
  margin: 20px;
  text-align: center;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .basket-component {
    right: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    border-radius: 0;
  }
}

.rightHalf {
  position: absolute;
  right: 0;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 38%;
  display: none;
}

@media only screen and (orientation: portrait) {
  .rightHalf {
    display: none;
  }
}

@media only screen and (orientation: landscape) {
  .rightHalf {
    display: -ms-flexbox;
    display: flex;
  }
}

.qs-checkout {
  margin-right: 1rem;
  padding: 0.5rem;
  border: 1px solid;
}

.qs-padded, .qs-header-container .qs-title {
  padding: 0.5rem;
}

.context-menu {
  display: none;
}

@media only screen and (min-width: 30em) and (orientation: landscape) {
  .context-menu {
    display: -ms-flexbox;
    display: flex;
  }
}

#qs-header {
  z-index: 11;
  box-shadow: 5px 4px 20px -5px;
  max-height: 12vh;
  min-height: 12vh;
  overflow: visible;
}

#qs-footer {
  z-index: 10;
  box-shadow: -4px 2px 20px 1px;
}

.footer-height {
  max-height: 8vh;
  min-height: 8vh;
  height: 8vh;
  /* Resize footer depending the orientation */
}

@media (orientation: landscape) and (max-device-width: 800px) {
  .footer-height {
    height: 12vh !important;
    max-height: 12vh !important;
  }
}

.entity-block-size {
  overflow-y: hidden;
}

.rounded-corners {
  border-radius: 5px;
}

.rounded-corners-top {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.rounded-corners-bottom {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

#modalDialogFull, #gridFrameFullOverlay, #appFullOverlay {
  position: fixed !important;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 12;
  opacity: 0;
  transition: opacity 200ms ease-in;
  pointer-events: none;
}

#modalDialogFull.isVisible, #gridFrameFullOverlay.isVisible, #appFullOverlay.isVisible {
  opacity: 1;
  pointer-events: auto;
}

@media (orientation: portrait) {
  #modalDialogFull.isVisible, #gridFrameFullOverlay.isVisible, #appFullOverlay.isVisible {
    z-index: 1;
    opacity: 0;
  }
}

#modalDialogFull > div, #gridFrameFullOverlay > div, #appFullOverlay > div {
  background: #fff;
  box-shadow: 10px 10px 20px -5px black;
}

.options-view {
  background: #fff;
  /*box-shadow: 10px 10px 20px -5px black;*/
  z-index: 13;
}

.qs-view-header {
  position: relative;
  height: 7%;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  border: 1px solid #ddd;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .qs-view-header {
    border-radius: 0;
  }
}

.qs-view-header-order {
  position: relative;
  height: 13%;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  border: 1px solid #ddd;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  padding: 2% 4%;
  overflow: hidden;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .qs-view-header-order {
    border-radius: 0;
  }
}

.qs-view-confirmation-header {
  position: absolute;
  top: 0;
  height: 20%;
  width: 100%;
  overflow-y: auto;
}

.qs-view-content-no-header {
  position: absolute;
  top: 0;
  /*height: 86%;*/
  height: 86%;
  width: 100%;
  overflow-y: auto;
}

.qs-view-content-no-footer {
  position: relative;
  height: 89%;
  width: 100%;
  display: block;
}

.qs-view-content {
  position: relative;
  height: 87%;
  width: 100%;
  overflow-y: auto;
  display: block;
}

.qs-view-result-order {
  background-color: #EAEAEA;
  padding: 2% 4%;
  -ms-flex-align: center;
      align-items: center;
  height: 10%;
  overflow-y: hidden;
}

.qs-view-result-order [qs-branding] {
  font-weight: bold;
}

.qs-view-confirmation-content {
  position: absolute;
  top: 20%;
  height: 66%;
  width: 100%;
  overflow-y: auto;
}

.qs-view-confirmation-content.no-button {
  height: 80%;
}

.qs-view-confirmation-content .qs-bill {
  text-align: center;
  font-family: monospace;
  white-space: pre;
}

.qs-view-confirmation-receipt {
  position: absolute;
  bottom: 10%;
  width: 100%;
}

.qs-view-confirmation-receipt .footer-button {
  height: 100%;
}

.qs-view-footer {
  position: absolute;
  bottom: 0;
  height: 11%;
  width: 100%;
  overflow-y: auto;
  background-color: white;
  font-size: 14px;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .qs-view-footer {
    margin-top: 0;
  }
}

.category-button {
  width: 1.5rem;
  height: 1rem;
  position: relative;
}

@media only screen and (min-width: 40em) {
  .category-button {
    width: 1.875rem;
  }
}

@media only screen and (min-width: 40em) {
  .category-button {
    height: 1.25rem;
  }
}

.category-button > div {
  transform: rotate(180deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}

.chevron {
  display: inline-block;
  width: .5em;
  height: .8em;
  position: relative;
}

.chevron:before,
.chevron:after {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
}

.chevron:before {
  right: 0;
  border-width: .4em 0 .4em .4em;
  border-color: transparent transparent transparent black;
}

.chevron:after {
  left: 0;
  border-width: .4em 0 .4em .4em;
  border-color: transparent transparent transparent #fff;
}

.chevron.skinny {
  width: .45em;
}

.footer-height {
  height: 8vh;
}

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

.btn-leave-table {
  font-size: 70%;
  float: right;
  padding: 10px;
  background-color: #e3e3e3;
  border-radius: 5px;
}

.btn-leave-table.ng-click-active {
  background-color: #a2a2a2;
  color: #fff;
}

/* Show item description styles, for default shows the category view with the description below each item,
when the screen is on mobile hide the category view and the descriptions and show the item view with the olf kind of styles */
.item-view {
  display: none;
}

.category-view {
  display: inherit;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .item-view {
    display: inherit;
  }
  .category-view, .toggle-description {
    display: none;
  }
  .show-categories {
    display: inherit;
  }
}

/* end */
.toggle-description.description-text {
  font-size: 68%;
}

.owl-nav {
  top: 0 !important;
  bottom: 0 !important;
  margin: auto;
  opacity: 0.9;
}

.owl-nav .owl-prev {
  top: -19px !important;
  left: 5px !important;
  height: 40px;
  width: 20px;
}

.owl-nav .owl-prev.disabled {
  display: none;
}

.owl-nav .owl-next {
  top: -19px !important;
  right: 5px !important;
  height: 40px;
  width: 20px;
}

.owl-nav .owl-next.disabled {
  display: none;
}

.owl-nav .fa {
  position: absolute;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  height: 15px;
  font-size: 13px;
}

.root-category {
  overflow: hidden;
  /* Safari 6.1+ */
  -ms-flex: 1;
  /* IE 10 */
  flex: 1;
}

.root-category-image:hover {
  opacity: 1.0;
  filter: alpha(opacity=100);
}

.root-category-label {
  color: #eee;
  text-align: center;
  opacity: 0.9;
  font-size: 80%;
  border-right: 1px solid #fff;
}

.root-category-label.selected {
  opacity: 1;
  font-weight: bold;
}

.root-category-label.last {
  border-right: 0;
}

.root-category-label.ng-click-active {
  background-color: #EAEAEA;
}

.footer-button {
  color: #eee;
  text-align: center;
  opacity: 0.9;
  font-size: 80%;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  overflow: hidden;
}

.footer-button.selected {
  opacity: 1;
  font-weight: bold;
}

.footer-button.last {
  border-right: 0;
}

.footer-button.ng-click-active {
  background-color: #EAEAEA;
}

.root-category-wrapper {
  font-size: 100%;
}

@media (orientation: landscape) and (min-device-height: 1200px) {
  .root-category-wrapper {
    font-size: 150% !important;
  }
}

.owl-nav {
  position: absolute;
  height: 0;
  width: 100%;
  top: 0;
}

.owl-nav .owl-prev {
  position: absolute;
  top: 2.5vh;
  left: 10px;
}

.owl-nav .owl-next {
  position: absolute;
  top: 2.5vh;
  right: 10px;
}

.elevated-1, .sheet-1 {
  box-shadow: 0px 1.5px 5px 0px rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.elevated-2, .sheet-2 {
  box-shadow: 0px 1.25px 6px 1px rgba(0, 0, 0, 0.45);
  z-index: 2;
}

.elevated-3, .sheet-3 {
  box-shadow: 0px 1px 8px 2px rgba(0, 0, 0, 0.4);
  z-index: 3;
}

.elevated-4, .sheet-4 {
  box-shadow: 0px 0.75px 10px 4px rgba(0, 0, 0, 0.375);
  z-index: 4;
}

.elevated-5, .sheet-5 {
  box-shadow: 0px 0.5px 12px 6px rgba(0, 0, 0, 0.35);
  z-index: 5;
}

.sheet-1 {
  background-color: white;
  margin: 0.25rem;
}

@media only screen and (min-width: 40em) {
  .sheet-1 {
    margin: 0.3125rem;
  }
}

.sheet-2 {
  background-color: white;
  margin: 0.25rem;
}

@media only screen and (min-width: 40em) {
  .sheet-2 {
    margin: 0.3125rem;
  }
}

.sheet-3 {
  background-color: white;
  margin: 0.25rem;
}

@media only screen and (min-width: 40em) {
  .sheet-3 {
    margin: 0.3125rem;
  }
}

.sheet-4 {
  background-color: white;
  margin: 0.25rem;
}

@media only screen and (min-width: 40em) {
  .sheet-4 {
    margin: 0.3125rem;
  }
}

.sheet-5 {
  background-color: white;
  margin: 0.25rem;
}

@media only screen and (min-width: 40em) {
  .sheet-5 {
    margin: 0.3125rem;
  }
}

.sheet-element {
  margin: 0.25rem 0.25rem 0.25rem 0;
}

.sheet-element.first {
  margin-left: 0.5rem;
}

.sheet-element.last {
  margin-right: 0.5rem;
  overflow: visible;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .sheet-element.last {
    font-size: 25px;
  }
}

.grid-block.vertical > .sheet-element.first {
  margin-top: 0.5rem;
  margin-left: 0.25rem;
}

.grid-block.vertical > .sheet-element.last {
  margin-bottom: 0.5rem;
  margin-right: 0.25rem;
}

#sidebar-wrapper {
  color: white;
  position: absolute;
  top: 0px;
  right: 0px;
  left: 0px;
  bottom: 0px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.sidebar-component--wrapper {
  /* margin-top:2em; */
  /* margin-bottom:2em; */
}

.sidebar-component {
  opacity: 1;
  border: solid 1px gray;
  border-radius: 5px;
  margin: 9px;
  padding: 17px;
}

.sidebar-component.with-flag {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
}

.sidebar-component.flex-space-around {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -ms-flex-align: center;
      align-items: center;
}

.sidebar-component.flex-center {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.sidebar-component:active {
  background-color: rgba(0, 0, 0, 0.4);
}

.sidebar-component.selected {
  background-color: rgba(0, 0, 0, 0.4);
}

.sidebar-component.store-comms {
  background-color: #71b713;
}

.sidebar-component.centered {
  text-align: center;
}

.sidebar-component > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
}

.sidebar-component > span.with-flag {
  display: inline;
}

.sidebar-component.sidebar-bottom {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
}

.sidebar-component > .flag-icon {
  width: 2rem;
  height: 2rem;
}

#sidebar-basket-total {
  font-size: 170%;
}

#sidebar-table-number {
  font-size: 90%;
}

.off-canvas.left.is-active + #app > #gridFrameFullOverlay {
  opacity: 1;
  pointer-events: auto;
}

#appFullOverlay {
  opacity: 1;
  pointer-events: auto;
}

#numpad-flexbox {
  height: 20px;
  width: 20px;
}

#numpad-panel {
  width: 400px;
  background-color: black;
  border-radius: 10px;
  z-index: 999;
  color: white;
}

.numpad-label {
  margin-top: 5%;
}

#numpad-input {
  padding: 0;
  font-size: 200%;
  text-align: center;
  background-color: transparent;
  color: white;
}

#numpad-keys {
  margin: 0.8rem 0.8rem 1.6rem 0.8rem;
}

.numpad-element {
  margin-top: 1rem;
  border-radius: 50px;
  border: 1px solid white;
  padding: 10px !important;
  text-align: center;
  /* display: block; */
}

.numpad-element.number {
  font-size: 200%;
}

.numpad-element:active {
  background-color: #2bb5b5;
}

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

.top-bar.center .title-area {
  float: none;
}

.top-bar.center .title-area .name h1 a {
  width: 100%;
}

.ticket-container {
  margin-top: 4.0625rem;
  margin-bottom: 8.5rem;
}

.footer-price-row {
  font-size: 14px;
  color: #777;
  font-weight: bold;
  margin: auto;
  bottom: 4rem;
  position: fixed;
  width: 100%;
  height: 3rem;
  padding: 0.25rem 0.5rem;
  border-top: 1px solid black;
  background: white;
  max-width: none;
}

.footer-price-row .button {
  padding-left: 1rem;
  padding-right: 1rem;
  margin-bottom: 0;
}

.tall {
  height: 4.5rem;
}

.footer-button-row {
  margin: auto;
  bottom: 0;
  position: fixed;
  width: 100%;
  height: 4rem;
  padding: 0.5rem 0;
  border-top: 1px solid black;
  background: white;
  max-width: none;
}

.footer-button-row .button {
  padding-left: 1rem;
  padding-right: 1rem;
  margin-bottom: 0;
}

.ticket-text {
  font-size: 0.75rem;
  font-family: 'Courier New';
  white-space: pre;
}

.pay-key-input {
  font-size: 1.25rem;
  text-align: center;
  max-width: 100%;
}

.reveal-modal h2 {
  text-align: center;
}

.reveal-modal .slider-output {
  margin-top: 1.05rem;
}

.reveal-modal .centered {
  text-align: center;
}

.reveal-modal .big-currency {
  font-size: 1.65rem;
  font-weight: bold;
  color: #777;
  margin-right: -2rem;
}

.reveal-modal input.big-currency {
  font-size: 1.15rem;
}

.reveal-modal input[type="range"] {
  width: 100%;
}

.location-button {
  width: 100%;
}

.payment-gateway-button {
  width: 100%;
}

.tip-button {
  width: 100%;
}

.qs-timepicker-buttons {
  background: none !important;
  border: none !important;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .qs-timepicker-buttons span {
    height: 1.3em !important;
    width: 1.3em !important;
    padding: 30px 0 !important;
  }
}

.qs-timepicker-boxes {
  background-color: #ccffff;
  width: 100% !important;
}

.qs-timepicker-boxes-active {
  background-color: #ccffe5;
}

.qs-timepicker-button-set {
  background-color: #bbffe5;
}

.ui-datebox-datebox-groups input {
  width: 100% !important;
}

@media (orientation: portrait) and (max-device-width: 480px) {
  .ui-datebox-datebox-groups input {
    font-size: 2em !important;
    padding: 0;
  }
}

.ui-datebox-datebox-button {
  color: black !important;
}

/* TODO: Move all the changes in here. We ONLY want to customize the datebox */
.ui-datebox-container {
  position: static !important;
  width: 40% !important;
  background: none !important;
  /*@media (orientation: portrait) {
    @media screen and (max-width: 600px) {
      width: 50% !important;
    }
  }*/
  /* Not using flipbox anymore */
  /*.ui-datebox-flipcenter {
    top: -32px !important;
  }*/
}

@media screen and (max-width: 550px) {
  .ui-datebox-container {
    width: 50% !important;
  }
}

.ui-datebox-container.ui-widget-content {
  border: none !important;
}

.ui-datebox-container .ui-datebox-datebox-button > .ui-icon-plus {
  background-image: url("https://cdn2.iconfinder.com/data/icons/flat-ui-icons-24-px/24/plus-24-128.png") !important;
  background-position: center;
  background-size: contain;
}

.ui-datebox-container .ui-datebox-datebox-button > .ui-icon-minus {
  background-image: url("https://cdn3.iconfinder.com/data/icons/glypho-generic-icons/64/minus-big-512.png") !important;
  background-position: center;
  background-size: contain;
}

.ui-datebox-container .ui-widget-overlay {
  z-index: -1;
}

.tip .entity-block-size {
  padding: 10px 4%;
  border-bottom: 1px solid #ddd;
}

.tip .entity-block-size img {
  height: 25px;
}

.tip input[type="text"].customized {
  margin: 0;
  padding: 0;
  height: inherit;
  font-size: inherit;
  margin-left: 5px;
  width: 35px;
}

th, body, .qs-title, .qs-item-description, .option-name, .description, .opencheck-description, .qs-quantity {
  line-height: 1.2;
}

th, body {
  font-size: 1rem;
  color: #333;
  font-weight: 400;
}

@media only screen and (min-width: 40em) {
  th, body {
    font-size: 1.25rem;
  }
}

th.secondary, body.secondary {
  font-size: 0.8rem;
}

@media only screen and (min-width: 40em) {
  th.secondary, body.secondary {
    font-size: 1rem;
  }
}

html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.qs-title-color {
  color: #777;
}

.qs-title {
  font-weight: 300;
  color: #777;
  overflow: hidden;
  -ms-flex-align: center;
      align-items: center;
}

.qs-title.secondary {
  font-size: 0.9rem;
  font-weight: 300;
}

@media only screen and (min-width: 40em) {
  .qs-title.secondary {
    font-size: 1.125rem;
  }
}

.qs-title.inactive {
  margin-bottom: 0.5rem;
}

.qs-title.active {
  border-bottom: 0.5rem solid transparent;
}

.qs-entity-title {
  font-size: 14px;
  word-break: normal;
  font-size: 100%;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .qs-entity-title {
    font-size: 16px;
  }
}

@media (orientation: landscape) and (min-device-height: 1200px) {
  .qs-entity-title {
    font-size: 1.25rem !important;
  }
}

.qs-item-description {
  font-size: 0.7rem;
  word-wrap: break-word;
}

.qs-item-description.shortened {
  width: 90%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (orientation: portrait), (max-device-width: 480px) {
  .qs-item-description {
    font-size: 14px;
  }
}

.toggle-description {
  font-size: 12px;
  font-size: 100%;
}

@media (orientation: landscape) and (min-device-height: 1200px) {
  .toggle-description {
    font-size: 1rem !important;
  }
}

.increase-font-size {
  font-size: 100%;
}

.option-name {
  font-size: 0.9rem;
}

@media only screen and (min-width: 40em) {
  .option-name {
    font-size: 1.125rem;
  }
}

.description, .opencheck-description, .qs-quantity {
  font-size: 0.9rem;
  font-style: italic;
  padding-right: 0.1rem;
  overflow: hidden;
}

@media only screen and (min-width: 40em) {
  .description, .opencheck-description, .qs-quantity {
    font-size: 1.125rem;
  }
}

.description.secondary, .secondary.opencheck-description, .secondary.qs-quantity {
  font-size: 0.65rem;
}

@media only screen and (min-width: 40em) {
  .description.secondary, .secondary.opencheck-description, .secondary.qs-quantity {
    font-size: 0.8125rem;
  }
}

.opencheck-description {
  white-space: pre;
  font-style: initial;
}

.qs-option-group-name {
  font-size: 0.9rem;
}

@media only screen and (min-width: 40em) {
  .qs-option-group-name {
    font-size: 1.125rem;
  }
}

[ng-click] {
  cursor: pointer;
}

.fa {
  padding: 0.075em;
}

@media only screen and (min-width: 40em) {
  .fa {
    padding: 0.09375em;
  }
}

@media only screen and (min-width: 40em) {
  .fa {
    font-size: 1.25rem;
  }
}

@media only screen and (min-width: 40em) {
  .fa-2x {
    font-size: 2.5rem;
  }
}

@media only screen and (min-width: 40em) {
  .fa-3x {
    font-size: 3.75rem;
  }
}

@media only screen and (min-width: 40em) {
  .fa-4x {
    font-size: 5rem;
  }
}

@media only screen and (min-width: 40em) {
  .fa-5x {
    font-size: 6.25rem;
  }
}

.underlined {
  border-bottom: 1px solid black !important;
}

.fa-square-o,
.fa-circle-o,
.fa-dot-circle-o {
  margin-right: 2px;
}
