@charset "UTF-8";
/*--------------------------------------------------------------
File organization and structure follows what is defined here:
http://sass-guidelin.es/#the-7-1-pattern
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Bower
--------------------------------------------------------------*/
/**
 * Vars
 *
 * Site wide styling variables.
 */
/*--------------------------------------------------------------
# Structure
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Vendor
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Colors
--------------------------------------------------------------*/
/*!
 *  Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@import url("https://fast.fonts.net/t/1.css?apiType=css&projectid=f27ecfdc-2db0-4898-a031-d5e6777902de");
@font-face {
  font-family: 'FontAwesome';
  src: url("assets/bower_components/fontawesome/fonts/fontawesome-webfont.eot?v=4.4.0");
  src: url("assets/bower_components/fontawesome/fonts/fontawesome-webfont.eot?#iefix&v=4.4.0") format("embedded-opentype"), url("assets/bower_components/fontawesome/fonts/fontawesome-webfont.woff2?v=4.4.0") format("woff2"), url("assets/bower_components/fontawesome/fonts/fontawesome-webfont.woff?v=4.4.0") format("woff"), url("assets/bower_components/fontawesome/fonts/fontawesome-webfont.ttf?v=4.4.0") format("truetype"), url("assets/bower_components/fontawesome/fonts/fontawesome-webfont.svg?v=4.4.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 {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}

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

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

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

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

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

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

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

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

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  -webkit-filter: none;
          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: "";
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/**
 * Functions
 *
 * Use functions when you need to calculate a value that may be reused somewhere else.
 */
/**
 * Global Mixins
 *
 * Master mixins file. Put all mixins in here and start to separate them into
 * files if it gets hard to maintain.
 */
/**
 * Helper
 *
 * Holds generic styles that have many uses.
 */
/*
 * Text meant only for screen readers.
 */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

.screen-reader-text:hover, .screen-reader-text:active, .screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14.875px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/*
 * Globally hidden elements when Infinite Scroll is supported and in use.
 */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/*
 * When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before.
 */
.infinity-end.neverending .site-footer {
  display: block;
}

.view-all-responses {
  font-size: 23px;
  font-size: 1.35294rem;
  text-align: right;
  text-decoration: none;
}

/**
 * Remove margin-bottom from element.
 */
.no-vertical-rhythm {
  margin-bottom: 0;
}

/**
 * Hide elements when JS is enabled.
 */
.js .js-hide-me {
  display: none;
}

/**
 * Styles for truncating a line with an ellipsis.
 */
.truncate-ellipsis,
.breadcrumbs__crumb {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (min-width: 37.5em) {
  .mobile-only {
    display: none !important;
  }
}

@media (max-width: 37.49em) {
  .tablet-up {
    display: none !important;
  }
}

.no-padding-top {
  padding-top: 0;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/*------------------------------------*\
    #FONTS
\*------------------------------------*/
/**
 * Trade Gothic W01 Font Regular
 */
@font-face {
  font-family: "Trade Gothic W01";
  src: url("assets/fonts/40775ed4-d9b0-4f75-b874-80f2842332a9.eot?#iefix");
  src: url("assets/fonts/40775ed4-d9b0-4f75-b874-80f2842332a9.eot?#iefix") format("eot"), url("assets/fonts/24ba8ea7-bbf3-40e0-b924-fd985d79ebca.woff2") format("woff2"), url("assets/fonts/9274bb7f-01c5-45cb-b935-f53683ab6dd6.woff") format("woff"), url("assets/fonts/a94b3f7a-c1fd-4bbe-9273-1f6f081dcb2f.ttf") format("truetype");
}

/**
 * Trade Gothic W01 Font Italic
 */
@font-face {
  font-family: "Trade Gothic W01";
  src: url("assets/fonts/379b55d3-190d-48bd-b1f2-dc787a73b65b.eot?#iefix");
  src: url("assets/fonts/379b55d3-190d-48bd-b1f2-dc787a73b65b.eot?#iefix") format("eot"), url("assets/fonts/5760433c-f9b7-4c0d-b618-77b03ff59186.woff2") format("woff2"), url("assets/fonts/48f8ec71-d114-4f7f-a933-b1032c89aa32.woff") format("woff"), url("assets/fonts/efdb46c3-279b-490c-8468-dfe30e01582c.ttf") format("truetype");
  font-style: italic;
}

/**
 * Trade Gothic W02 Font Bold
 */
@font-face {
  font-family: "Trade Gothic W02";
  src: url("assets/fonts/d1380d7c-6e23-49c9-bac2-0f927e77eb17.eot?#iefix");
  src: url("assets/fonts/d1380d7c-6e23-49c9-bac2-0f927e77eb17.eot?#iefix") format("eot"), url("assets/fonts/2bd4e485-6e2d-478c-94c7-9a7cabf8e98d.woff2") format("woff2"), url("assets/fonts/3e9c6e62-e41c-408b-bef3-ffa454301b17.woff") format("woff"), url("assets/fonts/a74675c3-a15b-41ed-8409-e90f921c3cb8.ttf") format("truetype");
}

/**
 * Trade Gothic W01 Font Bold Italic
 */
@font-face {
  font-family: "Trade Gothic W01";
  src: url("assets/fonts/5af5cca0-8b33-4369-b022-a8eb4f53ded5.eot?#iefix");
  src: url("assets/fonts/5af5cca0-8b33-4369-b022-a8eb4f53ded5.eot?#iefix") format("eot"), url("assets/fonts/0cf6debe-3269-426f-b349-7bcf527b649f.woff2") format("woff2"), url("assets/fonts/f998543e-70ae-47de-a9c9-6a8da4bfb310.woff") format("woff"), url("assets/fonts/bfd5cdd0-8420-4fd5-9751-6bb3887818b1.ttf") format("truetype");
  font-weight: bold;
  font-style: italic;
}

/**
 * Trade Gothic W01 Font
 */
@font-face {
  font-family: "Trade Gothic W01";
  src: url("assets/fonts/07702e82-1476-4552-97e1-682d5af3bd30.eot?#iefix");
  src: url("assets/fonts/07702e82-1476-4552-97e1-682d5af3bd30.eot?#iefix") format("eot"), url("assets/fonts/4a5b9bde-0062-4b1f-ae1f-d2ad4d283b55.woff2") format("woff2"), url("assets/fonts/dd603555-b5c3-4df6-885b-b75ef30fa0f8.woff") format("woff"), url("assets/fonts/6515df23-fbdf-459f-924c-b449b8b7ade8.ttf") format("truetype");
  font-weight: bold;
}

/**
 * Trade Gothic W02 Font Bold Italic
 */
@font-face {
  font-family: "Trade Gothic W02";
  src: url("assets/fonts/3a3811df-095b-42db-a25d-ddab2bbeedfa.eot?#iefix");
  src: url("assets/fonts/3a3811df-095b-42db-a25d-ddab2bbeedfa.eot?#iefix") format("eot"), url("assets/fonts/cf117f57-227f-4bba-ae2f-24caa1ec7a5d.woff2") format("woff2"), url("assets/fonts/e2a62655-b75b-4999-9377-75c6f7957ae5.woff") format("woff"), url("assets/fonts/aa7f4d20-bc42-4a35-b9cb-6ce46f1ec04d.ttf") format("truetype");
  font-style: italic;
}

html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/**
 * Elements
 *
 * Base level elements that need styling and don't make sense elsewhere.
 */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
  /* Mini Reset */
  margin: 0;
  padding: 0;
}

blockquote, q {
  quotes: "" "";
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
}

p {
  margin-bottom: 1.5em;
}

dfn, cite, em, i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em 1.5em 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  font-size: 15.9375px;
  font-size: 0.9375rem;
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  line-height: 24px;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code, kbd, tt, var {
  font-size: 15.9375px;
  font-size: 0.9375rem;
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

hr {
  margin-bottom: 36px;
}

#page {
  overflow-x: hidden;
}

.entry-content:after, .entry-content:before {
  content: " ";
  display: table;
}

.entry-content:after {
  clear: both;
}

.entry-content ul, .entry-content ol {
  margin-bottom: 36px;
  padding-left: 24px;
}

/**
 * Typography
 *
 * Holds generic typography styles. Things like font size, color, line height,
 * etc.
 */
/**
 * Headings
 */
h1, h2, h3, h4, h5, h6 {
  margin-bottom: 14.4px;
  margin-top: 0;
  /* Elements should have bottom margin for vertical rhythm. */
  font-family: "Trade Gothic W01", Helvetica, Arial, sans-serif;
  line-height: 1.2em;
}

@media (min-width: 37.5em) {
  h1, h2, h3, h4, h5, h6 {
    margin-bottom: 36px;
  }
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  text-decoration: none;
}

h1 {
  font-size: 23px;
}

@media (min-width: 37.5em) {
  h1 {
    font-size: 38px;
    font-size: 2.23529rem;
  }
}

h2 {
  font-size: 24px;
  font-size: 1.41176rem;
}

@media (min-width: 37.5em) {
  h2 {
    font-size: 28px;
    font-size: 1.64706rem;
  }
}

h3 {
  font-size: 20px;
  font-size: 1.17647rem;
}

@media (min-width: 37.5em) {
  h3 {
    font-size: 24px;
    font-size: 1.41176rem;
  }
}

@media (min-width: 37.5em) {
  h4 {
    font-size: 20px;
    font-size: 1.17647rem;
  }
}

/**
 * Section title.
 *
 * Used template-parts/content-page.php
 */
.section-title {
  margin-bottom: 36px;
}

/**
 * Some default typography on base elements
 */
body,
button,
input,
select,
textarea,
p {
  font: 100%/1.5 "Trade Gothic W01", Helvetica, Arial, sans-serif, Helvetica, Arial, sans-serif;
  -webkit-text-size-adjust: 100%;
  color: #181818;
  line-height: 24px;
  word-wrap: break-word;
}

@media (min-width: 20em) {
  body,
  button,
  input,
  select,
  textarea,
  p {
    font-size: 18px;
  }
}

a {
  color: #368db9;
  text-decoration: underline;
}

a:hover, a:focus {
  color: #2e799f;
  text-decoration: underline;
}

strong,
b {
  font-weight: 700;
}

p:last-child {
  margin-bottom: 0;
}

/**
 * WordPress Global
 *
 * Holds styles for generic WordPress generated classes.
 */
/**
 * Alignment classes
 */
.alignleft {
  display: inline;
  float: left;
  margin-right: 30px;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 30px;
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/**
 * WordPress captions
 */
.wp-caption {
  margin-bottom: 36px;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 21.6px 0;
}

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

/**
 * WordPress Media
 */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/**
 * WordPress Galleries
 *
 * Holds styles for generic WordPress galleries.
 */
.gallery {
  margin-bottom: 36px;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/**
 * Content Box
 *
 * Popular component! This is the white card style box that every page / content
 * item is wrapped in.
 */
.content-box,
.comment-respond,
.card,
.page-title-container {
  padding-bottom: 24px;
  padding-top: 24px;
  margin-bottom: 36px;
  background: white;
}

.content-box:after, .content-box:before,
.comment-respond:after,
.card:after,
.page-title-container:after,
.comment-respond:before,
.card:before,
.page-title-container:before {
  content: " ";
  display: table;
}

.content-box:after,
.comment-respond:after,
.card:after,
.page-title-container:after {
  clear: both;
}

@media (max-width: 37.49em) {
  .content-box,
  .comment-respond,
  .card,
  .page-title-container {
    padding-left: 24px;
    padding-right: 24px;
  }
}

@media (min-width: 37.5em) {
  .content-box,
  .comment-respond,
  .card,
  .page-title-container {
    padding: 36px;
  }
}

.content-box:last-child,
.comment-respond:last-child,
.card:last-child,
.page-title-container:last-child {
  margin-bottom: 0;
}

.content-box--blue {
  background: #e7f7fa;
  border: 5px solid white;
}

.content-box--no-vr {
  margin-bottom: 0;
}

.content-box--on-top {
  position: relative;
}

/**
 * Assignments
 *
 * Holds styles unique related to assignments.
 */
.assignment .assignment__header {
  color: #000;
  font-family: "Trade Gothic W01", Helvetica, Arial, sans-serif;
  font-size: 32px;
  font-weight: bold;
  height: 32px;
  letter-spacing: 0.800000011920929px;
  line-height: 32px;
  margin: 0;
  padding: 0 0 0 30px;
  text-transform: uppercase;
  text-align: left;
  margin-bottom: 30px;
}

.assignment .assignment__header .is-past-due,
.assignment .assignment__header .is-open {
  display: inline-block;
  width: auto;
}

.assignment .assignment__header .is-past-due::before {
  content: 'PAST DUE: ';
}

.assignment .assignment__header .is-open {
  color: green;
}

.assignment .assignment__header .is-open::before {
  content: 'OPEN: ';
}

.assignment .assignment__header .entry-title {
  margin: 0 auto;
  max-width: 840px;
}

@media (max-width: 37.49em) {
  .assignment .assignment__header .entry-title {
    font-size: 23px;
    font-size: 1.35294rem;
  }
}

/**
 * Container for .assignment__image and .assignment__body
 */
.assignment__content {
  margin-bottom: 72px;
  overflow: hidden;
}

.assignment__content:after, .assignment__content:before {
  content: " ";
  display: table;
}

.assignment__content:after {
  clear: both;
}

.assignment__image,
.assignment__body {
  min-height: 250px;
}

.js-can-expand .assignment__image, .js-can-expand
.assignment__body {
  height: 250px;
}

@media (min-width: 37.5em) {
  .is-expanded .assignment__image, .assignment__image.is-expanded, .is-expanded
  .assignment__body,
  .assignment__body.is-expanded {
    min-height: 250px;
  }
}

/**
 * Assignment featured image.
 */
.assignment__image {
  background-size: cover;
  background-position: center;
  display: none;
}

@media (min-width: 37.5em) {
  .assignment__image {
    width: 40.2439%;
    float: left;
    margin-right: 2.43902%;
    display: inline-block;
  }
}

@media (max-width: 37.49em) {
  .assignment__image {
    margin-bottom: 12px;
  }
}

/**
 * Assignment post content.
 */
.assignment__body {
  position: relative;
}

@media (min-width: 37.5em) {
  .assignment__body {
    width: 57.31707%;
    float: right;
    margin-right: 0;
  }
}

.is-expanded .assignment__body {
  padding-bottom: 76.8px;
  height: auto;
}

.assignment__body .branded-section-heading {
  display: inline-block;
  width: auto;
  word-wrap: break-word;
  font-size: 1.7rem;
  border: none;
  color: #181818;
}

.assignment__body .branded-section-heading a {
  padding: 5px 10px;
  position: relative;
  left: -10px;
}

.assignment__body .assignment__date {
  font-family: "Trade Gothic W01", Helvetica, Arial, sans-serif;
  font-size: 0.95rem;
  color: #808285;
  text-transform: uppercase;
  margin: 0 0 26.4px;
}

.submissions-container .branded-section-heading h2 {
  border-bottom: none;
  font-size: 1.2rem;
  font-family: "Trade Gothic W02", "Trade Gothic W01", Helvetica, Arial, sans-serif;
  font-weight: normal;
}

.view-all-responses {
  display: inline-block;
  position: relative;
  top: -4px;
  font-weight: bold;
  font-size: 1.2rem;
  margin: 12px 0 0;
  font-family: "Trade Gothic W02", "Trade Gothic W01", Helvetica, Arial, sans-serif;
  border-bottom: 1px solid #a41034;
  color: #181818;
  -webkit-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out;
}

@media (min-width: 37.5em) {
  .view-all-responses {
    margin-top: 0;
  }
}

.view-all-responses:hover {
  text-decoration: none;
}

.view-all-responses:after {
  content: '';
  display: inline-block;
  margin-left: 0.5rem;
  top: 0;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 5px solid #a41034;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.view-all-responses:hover:after, .view-all-responses:hover:after {
  -webkit-transform: translateX(4px);
  transform: translateX(4px);
}

/**
 * Link to expand collapsed prompt..
 */
.expand-prompt {
  padding-top: 48px;
  text-align: center;
  display: block;
  position: absolute;
  background: white;
  bottom: 0;
  left: 0;
  right: 0;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1%, rgba(255, 255, 255, 0)), color-stop(2%, rgba(255, 255, 255, 0.02)), color-stop(55%, white), color-stop(99%, white));
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 1%, rgba(255, 255, 255, 0.02) 2%, white 55%, white 99%);
  width: 100%;
  font-family: "Trade Gothic W02", "Trade Gothic W01", Helvetica, Arial, sans-serif;
  z-index: 2;
}

.expand-prompt:before {
  content: "";
  position: absolute;
  bottom: 28px;
  left: 0;
  height: 3px;
  width: 100%;
  background: #000;
  z-index: -1;
}

.no-expand-action .expand-prompt:before {
  background: transparent;
}

.is-expanded .expand-prompt {
  padding-top: 0;
}

.expand-prompt div {
  display: inline-block;
  background: #fff;
  color: #a41034;
  z-index: 3;
  padding: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  -webkit-transition: background-color 250ms linear, color 250ms linear;
  transition: background-color 250ms linear, color 250ms linear;
  cursor: pointer;
}

.no-expand-action .expand-prompt div {
  visibility: hidden;
}

.expand-prompt:hover div {
  background: #a41034;
  color: #fff;
}

.is-expanded .expand-prompt {
  background: transparent;
}

/**
 * Submit & due date.
 */
.assignment__footer {
  margin-bottom: 36px;
  text-align: center;
  /**
	 * Posted on info
	 */
}

.assignment__footer:after, .assignment__footer:before {
  content: " ";
  display: table;
}

.assignment__footer:after {
  clear: both;
}

@media (min-width: 37.5em) {
  .assignment__footer {
    width: auto;
  }
}

@media (min-width: 37.5em) {
  .assignment__footer .left-side {
    width: 48.78049%;
    float: left;
    margin-right: 2.43902%;
  }
}

@media (min-width: 37.5em) {
  .assignment__footer .right-side {
    width: 57.31707%;
    float: right;
    margin-right: 0;
  }
}

.assignment__footer .assignment__submit {
  margin-bottom: 12px;
  padding-left: 31.2px;
  padding-right: 31.2px;
  padding-top: 7.2px;
  padding-bottom: 4.8px;
  text-decoration: none;
  display: inline-block;
}

@media (min-width: 37.5em) {
  .assignment__footer .assignment__submit {
    margin-bottom: 0;
  }
}

.assignment__footer .assignment__due {
  font-size: 14px;
  font-size: 0.82353rem;
  margin-bottom: 0;
}

.assignment__footer .assignment__meta {
  margin-bottom: 36px;
}

/**
 * Wrapper around group of assignments
 */
.student-posts {
  padding-bottom: 0;
  /* Overwrite .content-box padding bottom. */
}

.submissions:after, .submissions:before {
  content: " ";
  display: table;
}

.submissions:after {
  clear: both;
}

@media (max-width: 37.49em) {
  .submissions {
    margin-left: -24px;
    margin-right: -24px;
  }
}

/**
 * Styles for assignment submissions area filters.
 */
.assignment-submissions__header:after, .assignment-submissions__header:before {
  content: " ";
  display: table;
}

.assignment-submissions__header:after {
  clear: both;
}

@media (max-width: 62.49em) {
  .assignment-submissions__header h2 {
    margin-bottom: 12px;
  }
}

@media (min-width: 48em) {
  .assignment-submissions__header h2 {
    width: 40.2439%;
    float: left;
    margin-right: 2.43902%;
  }
}

@media (min-width: 62.5em) {
  .assignment-submissions__header h2 {
    width: 48.78049%;
    float: left;
    margin-right: 2.43902%;
  }
}

@media (min-width: 37.5em) {
  .assignment-submissions__header .branded-section-heading {
    margin-bottom: 0;
    margin-top: 40px;
  }
}

.assignment-submissions__header .assignment-submissions__filters {
  margin-bottom: 24px;
}

@media (min-width: 48em) {
  .assignment-submissions__header .assignment-submissions__filters {
    width: 57.31707%;
    float: right;
    margin-right: 0;
    text-align: right;
  }
}

@media (min-width: 62.5em) {
  .assignment-submissions__header .assignment-submissions__filters {
    width: 48.78049%;
    float: right;
    margin-right: 0;
  }
}

@media (min-width: 48em) {
  .assignment-submissions__header .category-submissions__filters {
    width: 100%;
  }
}

@media (min-width: 62.5em) {
  .assignment-submissions__header .category-submissions__filters {
    width: 100%;
  }
}

.assignment-submissions__header .submissions-form-option {
  position: relative;
  width: 50%;
  display: inline-block;
  position: relative;
  margin-bottom: 12px;
  padding-right: 12px;
}

.assignment-submissions__header .submissions-form-option::before {
  content: "";
  z-index: 20;
  position: absolute;
  bottom: 43%;
  right: 12px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #d6d6d6;
}

@media (min-width: 37.5em) {
  .assignment-submissions__header .submissions-form-option {
    width: auto;
    max-width: 180px;
  }
}

.assignment-submissions__header .submissions-form-option::before {
  bottom: 25%;
  right: 20px;
}

@media (max-width: 37.49em) {
  .assignment-submissions__header .submissions-form-option.form-option-class-section {
    padding-right: 0;
  }
}

.assignment-submissions__header .submissions-form-option.form-option-class-section::before {
  right: 10px;
}

@media (min-width: 37.5em) {
  .assignment-submissions__header .submissions-form-option.form-option-class-section::before {
    right: 20px;
  }
}

@media (min-width: 37.5em) {
  .assignment-submissions__header .submissions-form-option.form-option-class-section select {
    padding-right: 25px;
  }
}

@media (max-width: 37.49em) {
  .assignment-submissions__header .submissions-form-option.form-option-assignment {
    float: right;
    padding-right: 0;
  }
  .assignment-submissions__header .submissions-form-option.form-option-assignment::before {
    right: 10px;
    bottom: 38%;
  }
  .assignment-submissions__header .submissions-form-option.form-option-assignment label {
    display: none;
  }
}

@media (min-width: 37.5em) {
  .assignment-submissions__header .submissions-form-option.form-option-assignment select {
    padding-right: 25px;
  }
}

.assignment-submissions__header .submissions-form-option:last-child {
  padding-right: 0;
  margin-bottom: 0;
  top: 3px;
}

@media (max-width: 37.49em) {
  .assignment-submissions__header .submissions-form-option:last-child {
    width: 100%;
  }
}

.assignment-submissions__header .submissions-form-option:last-child::before {
  display: none;
}

.assignment-submissions__header .submissions-form-option label {
  display: block;
  margin-bottom: 0;
  font-size: 13px;
  color: #b6b6b6;
  text-transform: uppercase;
  text-align: left;
}

.assignment-submissions__header .submissions-form-option select {
  position: relative;
  height: 35px;
  width: 100%;
  font-size: 13px;
  padding-right: 14.4px;
  padding-left: 8.4px;
}

.assignment-submissions__header .submissions-form-option select::before {
  content: "";
  z-index: 20;
  position: absolute;
  bottom: 43%;
  right: 12px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #000;
}

@media (min-width: 37.5em) {
  .assignment-submissions__header .submissions-form-option select {
    height: 35px;
  }
}

.assignment-submissions__header .btn {
  padding-bottom: 6px;
  padding-top: 6px;
  padding-left: 18px;
  padding-right: 18px;
  width: 100%;
  height: 36px;
  line-height: 0;
}

@media (max-width: 37.49em) {
  .category-submissions__header {
    padding-left: 24px;
    padding-right: 24px;
  }
}

.submission-pagination-container {
  text-align: right;
}

.submission-pagination-container:after, .submission-pagination-container:before {
  content: " ";
  display: table;
}

.submission-pagination-container:after {
  clear: both;
}

.assignment-with-submissions {
  margin-bottom: 72px;
}

@media (min-width: 37.5em) {
  .assignment-with-submissions {
    margin-bottom: 144px;
  }
}

.assignment-with-submissions .assignment-image-link {
  text-decoration: none;
}

.assignment-with-submissions .branded-section-heading {
  margin: 0 auto;
  margin-bottom: 12px;
}

.assignment-with-submissions .assignment-information {
  margin-bottom: 0;
  position: relative;
}

/**
 * Buttons!
 */
.btn,
a.btn,
.comment-respond .submit,
.wppb-user-forms #wppb-submit,
.wppb-user-forms .submit {
  padding-left: 24px;
  padding-right: 24px;
  border-radius: 1px;
  display: inline-block;
  padding-top: 12px;
  padding-bottom: 9.6px;
  color: white;
  border: none;
}

.btn:hover, .btn:focus,
a.btn:hover,
a.btn:focus,
.comment-respond .submit:hover,
.wppb-user-forms #wppb-submit:hover,
.wppb-user-forms .submit:hover,
.comment-respond .submit:focus,
.wppb-user-forms #wppb-submit:focus,
.wppb-user-forms .submit:focus {
  text-decoration: none;
}

/**
 * Full width (100%).
 */
.btn--full,
.wppb-user-forms #wppb-submit,
.wppb-user-forms .submit {
  margin-bottom: 24px;
  display: bock;
  width: 100%;
}

.btn--primary,
.comment-respond .submit,
.wppb-user-forms #wppb-submit,
.wppb-user-forms .submit {
  background: #48c4b7;
  color: white;
  border: 0;
  border: 1px solid #979797;
  -webkit-box-shadow: 1px 1px 0px 0px #d8d8d8;
          box-shadow: 1px 1px 0px 0px #d8d8d8;
  border-radius: 1px;
}

.btn--primary:hover, .btn--primary:focus,
.comment-respond .submit:hover,
.wppb-user-forms #wppb-submit:hover,
.wppb-user-forms .submit:hover,
.comment-respond .submit:focus,
.wppb-user-forms #wppb-submit:focus,
.wppb-user-forms .submit:focus {
  background: #31978d;
}

.btn--secondary {
  background: #368db9;
}

.btn--secondary:hover, .btn--secondary:focus {
  background: #2e799f;
}

.btn--cancel {
  background: #666;
}

.btn--cancel:hover, .btn--cancel:focus {
  background: #333;
}

.btn--danger {
  background: #a41034;
}

.btn--danger:hover, .btn--danger:focus {
  background: #850d2a;
}

.btn--link {
  background: none;
  color: #368db9;
}

.btn--right {
  float: right;
}

.btn--no-border {
  border: 0;
}

.btn--no-shadow {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.js-toggle-search {
  background: transparent;
  border: none;
}

/**
 * Activity feed
 *
 * Used on profile page to show what user has been up to.
 *
 * @todo: There is a component for comments... maybe this goes in there?
 */
.activity {
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid #ccc;
}

@media (min-width: 37.5em) {
  .activity {
    border: 0;
  }
}

.activity:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border: 0;
}

.activity .comment__meta {
  margin-bottom: 24px;
}

.activity .favorited {
  color: red;
  margin-right: 12px;
  margin-left: 12px;
}

@media (min-width: 37.5em) {
  .activity__body {
    display: table-cell;
    vertical-align: middle;
  }
}

.activity__user-gravatar {
  display: none;
  padding-right: 24px;
  min-width: 75px;
}

@media (min-width: 37.5em) {
  .activity__user-gravatar {
    display: table-cell;
    vertical-align: middle;
  }
}

/**
 * Container for the body of the activity (includes meta data in activity feed.)
 */
@media (min-width: 37.5em) {
  .activity__body {
    padding: 24px;
    margin-bottom: 36px;
    position: relative;
    border-radius: 12px;
    width: 100%;
  }
}

.activity--comment .activity__body {
  /**
		 * CSS Triangle.
		 */
}

@media (min-width: 37.5em) {
  .activity--comment .activity__body {
    background: #eee;
  }
}

.activity--comment .activity__body::before {
  content: "";
  /* Position near the left center of the comment. */
  position: absolute;
  left: -20px;
  top: 50%;
  margin-top: -10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 20px 15px 0;
  border-color: transparent #eee transparent transparent;
}

.comment__content {
  margin-left: 0;
}

@media (min-width: 37.5em) {
  .comment__content {
    padding: 12px;
    border-left: 2px solid #ccc;
  }
}

/**
 * Comments
 *
 * Comments component styling.
 */
.comments-area li {
  list-style-type: none;
}

.comments-area li .comment-respond {
  padding-top: 0;
  padding-bottom: 0;
}

.comments-area .form-submit {
  margin-bottom: 0;
}

.comment-meta {
  margin-bottom: 12px;
  display: table;
}

.comment-author, .comment-author-meta {
  display: table-cell;
  vertical-align: middle;
}

.comment-author small, .comment-author-meta small {
  display: block;
  font-family: "Trade Gothic W01", Helvetica, Arial, sans-serif;
  font-size: 0.7rem;
  color: #808285;
  text-transform: uppercase;
  font-weight: 600;
}

.comment-author-meta {
  padding-bottom: 1.5rem;
  color: #666;
  font-size: 1.125rem;
}

.comment-author-meta cite {
  font-style: normal;
}

.comment-respond {
  margin-top: 24px;
}

@media (min-width: 37.5em) {
  .comment-respond {
    margin-top: 36px;
  }
}

.comment-respond h3 {
  margin-bottom: 12px;
}

.comment-respond label {
  display: block;
  margin-bottom: 5px;
}

.comment-respond #comment {
  padding: 6px;
  border: 1px solid #ccc;
  width: 100%;
}

.reply-edit-delete a {
  margin-right: 10px;
}

.reply-edit-delete a:last-child {
  margin-right: 0;
}

.comment-delete-link:hover {
  color: #c06d7b;
}

.comment-edit-form {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.comment-edit-form.hidden {
  display: none;
}

.hbs-user-deleted {
  background-color: #eee;
}

.children .comment {
  padding-bottom: 0;
}

.comment-awaiting-moderation {
  margin-bottom: 36px;
}

/**
 * Breadcrumbs
 *
 * Holds breadcrumb stylings!
 */
.breadcrumbs {
  font-size: 18px;
  font-size: 1.05882rem;
  margin-bottom: 24px;
  color: #b6b6b6;
  position: relative;
}

.breadcrumbs li {
  list-style-type: none;
  display: inline-block;
  margin-right: 36px;
}

@media (min-width: 37.5em) {
  .breadcrumbs {
    margin-bottom: 36px;
  }
}

.breadcrumbs a:not(.edit-link) {
  color: #b6b6b6;
}

.breadcrumbs a:not(.edit-link):hover, .breadcrumbs a:not(.edit-link):focus {
  color: #666;
}

.breadcrumbs__crumb {
  font-size: 21px;
  font-size: 1.23529rem;
  max-width: 100%;
  position: relative;
  margin-bottom: 6px;
  padding-bottom: 1px;
}

.single-hck-submission .breadcrumbs__crumb {
  font-size: 28px;
  font-size: 1.64706rem;
  line-height: 1.1;
  text-decoration: underline;
}

.single-hck-submission .breadcrumbs__crumb a:hover, .single-hck-submission .breadcrumbs__crumb a:focus {
  color: #48c4b7;
}

@media (min-width: 37.5em) {
  .breadcrumbs__crumb {
    margin-bottom: 0;
  }
}

.breadcrumbs__crumb a {
  font-weight: 700;
  border-bottom: 1px solid #b6b6b6;
  text-decoration: none;
}

/**
 * Search
 *
 * Search form styles.
 *
 */
.search__input,
.search__submit {
  display: inline-block;
  height: 35px;
}

input.search__input {
  padding: 2.4px 9.6px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-right: -5px;
}

.search__submit {
  background: #48c4b7;
  color: white;
  border: 0;
  padding-left: 6px;
  padding-right: 6px;
  width: 20%;
  max-width: 75px;
}

.search__submit:hover, .search__submit:focus {
  background: #31978d;
}

/**
 * Site search in the header
 */
.search-icon {
  font-size: 1.7em;
  cursor: pointer;
  z-index: 5;
  color: #181818;
  position: relative;
  margin-right: 6px;
}

@media (max-width: 37.49em) {
  .is-logged-out .search-icon {
    top: 5px;
  }
}

@media (min-width: 37.5em) {
  .search-icon {
    margin-right: 12px;
  }
}

@media (min-width: 62.5em) {
  .search-icon {
    margin-right: 24px;
  }
}

.search-icon:hover, .search-icon:focus {
  color: #666;
}

/**
 * Handle some specifics based on if we are logged in or out.
 */
.is-logged-out .search {
  padding-right: 140px;
}

.is-logged-in .search {
  padding-right: 120px;
}

/**
 * Site search within the header.
 */
.site-header__inner .site-search-wrap {
  display: inline-block;
  vertical-align: top;
  /**
	 * Form element.
	 */
  /**
	 * Handle when JavaScript opens the search bar.
	 */
}

.site-header__inner .site-search-wrap:after, .site-header__inner .site-search-wrap:before {
  content: " ";
  display: table;
}

.site-header__inner .site-search-wrap:after {
  clear: both;
}

.site-header__inner .site-search-wrap .search {
  padding-left: 8.4px;
  padding-right: 33px;
  left: 15px;
  display: none;
  position: absolute;
  width: 100%;
  top: 32px;
}

.site-header__inner .site-search-wrap .search:after, .site-header__inner .site-search-wrap .search:before {
  content: " ";
  display: table;
}

.site-header__inner .site-search-wrap .search:after {
  clear: both;
}

@media (min-width: 37.5em) {
  .site-header__inner .site-search-wrap .search {
    padding-left: 1px;
    top: -12px;
    padding-right: 155px;
  }
}

.site-header__inner .site-search-wrap.is-open .search {
  display: block;
}

.site-header__inner .site-search-wrap .search__input,
.site-header__inner .site-search-wrap .search__submit {
  height: 53px;
}

.site-header__inner .site-search-wrap .search__input {
  width: 100%;
  border: 0;
}

.site-header__inner .site-search-wrap .search__submit {
  display: none;
}

@media (min-width: 37.5em) {
  .search-results .page-title-container {
    padding-bottom: 72px;
    padding-top: 72px;
  }
}

.search-page-form {
  width: 100%;
  max-width: 340px;
  margin: 0 auto;
  margin-top: 24px;
}

.search-page-form .search-label {
  font-size: 13px;
  font-size: 0.76471rem;
  padding-left: 5px;
  text-align: left;
  text-transform: uppercase;
  color: #666;
}

.search-page-form .search__input {
  width: 80%;
}

/**
 * Excerpts
 *
 * Holds styles unique related to generic excerpts.
 */
/**
 * Base Excerpt
 */
.excerpt {
  margin-bottom: 36px;
  -webkit-box-shadow: -1px 0 2px 0 #eee, 1px 0 2px 0 #fafafa, 0 1px 1px 0 #eee;
          box-shadow: -1px 0 2px 0 #eee, 1px 0 2px 0 #fafafa, 0 1px 1px 0 #eee;
  position: relative;
  display: table;
  width: 100%;
  border: 1px solid #d8d8d8;
}

.excerpt.has-post-thumbnail {
  min-height: 200px;
  /* Magic number to match the min height on thumbnail images */
}

.excerpt .link-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 3;
  pointer-events: all;
}

.excerpt__thumbnail {
  display: block;
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  /**
	 * .excerpt__thumbnail is a block element with background image set so we need
	 * to set the height manually.
	 */
}

@media (min-width: 48em) {
  .excerpt__thumbnail {
    display: table-cell;
    vertical-align: middle;
    width: 33%;
  }
}

.has-post-thumbnail .excerpt__thumbnail {
  min-height: 200px;
}

.excerpt__body {
  width: 100%;
  word-break: break-word;
}

/**
 * Assignment Excerpt
 */
.excerpt {
  position: relative;
}

.excerpt h2 {
  font-size: 38px;
  font-size: 2.23529rem;
  margin-bottom: 8.4px;
}

.excerpt .assignment__due {
  margin-bottom: 18px;
}

/**
 * Masonry jQuery CSS styles for assignment submissions
 */
.masonry-sizer,
.masonry-item {
  width: 100%;
}

@media (min-width: 37.5em) {
  .masonry-sizer,
  .masonry-item {
    width: 48.5%;
  }
}

.masonry-gutter {
  width: 3%;
}

/**
 * Submission Excerpt small
 * - Looks like a card style, multiple columns per row.
 */
.excerpt.excerpt--small-submission {
  border: 2px solid #eee;
  background: white;
}

.excerpt.excerpt--small-submission .entry-header {
  padding: 24px;
  font-weight: bold;
  letter-spacing: 0.05em;
}

.excerpt.excerpt--small-submission .entry-meta {
  margin-bottom: 7.2px;
}

.excerpt.excerpt--small-submission .excerpt__body {
  margin-bottom: 0;
}

.excerpt.excerpt--small-submission .excerpt__meta,
.excerpt.excerpt--small-submission .excerpt__body {
  padding: 12px;
}

.excerpt.excerpt--small-submission .excerpt__meta {
  padding-top: 20px;
}

.excerpt.excerpt--small-submission .author-photo,
.excerpt.excerpt--small-submission .meta-details {
  display: table-cell;
  vertical-align: middle;
}

.excerpt.excerpt--small-submission .user__gravatar {
  vertical-align: middle;
  border-color: #368db9;
  border-size: 3px;
}

.excerpt.excerpt--small-submission .meta-details {
  padding-left: 12px;
}

.excerpt.excerpt--small-submission .meta-details__inner {
  padding: 5px 30px 5px 0;
  border-bottom: 1px solid #eee;
  border-top: 1px solid #eee;
}

.excerpt.excerpt--small-submission .posted-on {
  font-size: 13px;
  line-height: 1.1em;
  color: #808285;
}

.excerpt.excerpt--small-submission .excerpt-title,
.excerpt.excerpt--small-submission .author-name {
  text-decoration: none;
}

.excerpt.excerpt--small-submission .excerpt-title:hover, .excerpt.excerpt--small-submission .excerpt-title:focus,
.excerpt.excerpt--small-submission .author-name:hover,
.excerpt.excerpt--small-submission .author-name:focus {
  text-decoration: underline;
}

.excerpt.excerpt--small-submission .excerpt-title {
  font-size: 30px;
  font-size: 1.76471rem;
  line-height: 32px;
}

.excerpt.excerpt--small-submission .excerpt-title:hover, .excerpt.excerpt--small-submission .excerpt-title:focus {
  cursor: pointer;
}

.excerpt.excerpt--small-submission .author-name {
  font-size: 23px;
  font-size: 1.35294rem;
  letter-spacing: 0.05em;
  font-family: "Trade Gothic W02";
}

.excerpt.excerpt--small-submission .excerpt__thumbnail {
  display: block;
  width: 100%;
}

/**
 * Card
 *
 * Card component. This is similar to a content box but differs in that a
 * content box is full width and card widths should be sub 100% and lined
 * side by side.
 */
/**
 * Card container
 */
.cards {
  position: relative;
}

.cards:after, .cards:before {
  content: " ";
  display: table;
}

.cards:after {
  clear: both;
}

@media (min-width: 37.5em) {
  .card {
    width: 48.78049%;
    float: left;
  }
  .card:nth-child(2n + 1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }
  .card:nth-child(2n + 2) {
    margin-left: 51.21951%;
    margin-right: -100%;
    clear: none;
  }
}

@media (min-width: 62.5em) {
  .card {
    width: 31.70732%;
    float: left;
  }
  .card:nth-child(3n + 1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }
  .card:nth-child(3n + 2) {
    margin-left: 34.14634%;
    margin-right: -100%;
    clear: none;
  }
  .card:nth-child(3n + 3) {
    margin-left: 68.29268%;
    margin-right: -100%;
    clear: none;
  }
}

.card__header,
.card__body {
  display: table-cell;
  vertical-align: middle;
}

.card__header {
  padding-right: 24px;
  width: 40%;
}

@media (min-width: 62.5em) {
  .card__header {
    width: 33%;
  }
}

.card__header img {
  vertical-align: middle;
}

.card__body {
  width: 100%;
  word-break: break-all;
}

/**
 * Pagination
 *
 * Pagination styles.
 */
.pagination {
  text-align: right;
}

.pagination:after, .pagination:before {
  content: " ";
  display: table;
}

.pagination:after {
  clear: both;
}

.pagination.pagination--community {
  margin-top: 24px;
}

@media (min-width: 37.5em) {
  .pagination.pagination--community {
    margin-top: 36px;
  }
}

@media (min-width: 62.5em) {
  .pagination.pagination--community {
    margin-top: 0;
  }
}

.nav-links:after, .nav-links:before {
  content: " ";
  display: table;
}

.nav-links:after {
  clear: both;
}

a.page-numbers,
span.page-numbers {
  padding-bottom: 6px;
  padding-top: 6px;
  padding-left: 10.8px;
  padding-right: 10.8px;
  display: inline-block;
  margin-right: -6px;
  background: white;
  text-align: center;
  border: 1px solid #ccc;
  border-right: 0;
}

a.page-numbers.current,
span.page-numbers.current {
  background: #666;
  color: white;
}

a.page-numbers:last-child,
span.page-numbers:last-child {
  border-right: 1px solid #ccc;
}

a.page-numbers:hover, a.page-numbers:focus {
  background: #d6d6d6;
}

/**
 * Submissions
 *
 * Submissions component
 *
 */
.submission__header {
  margin-bottom: 24px;
}

.submission__header .entry-title {
  @inlude vr();
  text-align: center;
  margin-bottom: 2rem;
}

.edit-link {
  float: right;
}

.submission__excerpt {
  font-size: 1.25em;
  line-height: 1.4em;
  padding-bottom: 24px;
  border-bottom: 1px solid #ccc;
}

.avatar-container {
  min-width: 30px;
}

.avatar-container,
.entry__meta-details-container,
.edit-link {
  display: table-cell;
  vertical-align: middle;
  padding-right: 6px;
}

.entry__meta {
  margin-bottom: 36px;
}

.entry__meta .entry__meta-byline {
  font-size: 1.125rem;
  margin-bottom: 1.5rem;
}

.entry__meta .entry__meta-byline .entry__meta-author {
  margin-bottom: 0.5rem;
}

.entry__meta .entry__meta-byline a {
  font-weight: 600;
}

.entry__meta .entry__meta-date {
  font-family: "Trade Gothic W01", Helvetica, Arial, sans-serif;
  font-size: 0.7rem;
  color: #808285;
  text-transform: uppercase;
  margin: 0 0 26.4px;
  font-weight: 600;
}

.submission__featured-image {
  margin-bottom: 36px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.submission__content {
  margin-bottom: 36px;
}

.submission--publish-draft {
  margin: 20px auto;
}

.submission--publish-draft .btn {
  text-decoration: none;
}

.submission__footer {
  background: #fafafa;
  -webkit-box-shadow: inset 0px 2px 1px #ddd;
          box-shadow: inset 0px 2px 1px #ddd;
  color: #666;
  margin: -24px;
  margin-top: 0;
  padding: 24px;
}

.submission__footer:after, .submission__footer:before {
  content: " ";
  display: table;
}

.submission__footer:after {
  clear: both;
}

@media (min-width: 37.5em) {
  .submission__footer {
    margin: -36px;
    margin-top: 0;
    padding: 36px;
  }
}

.submission__footer .share-button {
  height: 20px;
  display: inline-block;
  margin-right: 7.2px;
}

.submission__footer .share-button--facebook span {
  vertical-align: baseline !important;
}

.fa-share-alt {
  color: #008853;
}

/**
 * Tags for the submission.
 */
.tags__container {
  margin-bottom: 24px;
}

.tags__container:after, .tags__container:before {
  content: " ";
  display: table;
}

.tags__container:after {
  clear: both;
}

@media (min-width: 37.5em) {
  .tags__container {
    width: 48.78049%;
    float: right;
    margin-right: 0;
    margin-bottom: 0;
  }
}

@media (min-width: 37.5em) {
  .tags__container .tags {
    float: right;
  }
}

/**
 * Individual Submission Navigation
 */
#submission-navigation {
  margin-bottom: 36px;
}

#submission-navigation:after, #submission-navigation:before {
  content: " ";
  display: table;
}

#submission-navigation:after {
  clear: both;
}

#submission-navigation a {
  display: block;
}

#submission-navigation .previous-submission-post {
  margin-bottom: 24px;
}

@media (min-width: 37.5em) {
  #submission-navigation .previous-submission-post {
    float: left;
    margin-bottom: 0;
  }
}

@media (min-width: 37.5em) {
  #submission-navigation .next-submission-post {
    float: right;
    text-align: right;
  }
}

#comments {
  clear: both;
}

/**
 * Love it Pro
 */
.love-it-wrapper {
  font-size: 22px;
  font-size: 1.29412rem;
  display: inline-block;
  position: relative;
  top: -3px;
}

.love-it-wrapper .fa {
  color: red;
}

.love-it-wrapper .love-count {
  font-size: 18px;
  font-size: 1.05882rem;
}

.header-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
}

@media (max-width: 37.49em) {
  .header-pagination {
    -webkit-box-pack: normal;
        -ms-flex-pack: normal;
            justify-content: normal;
  }
}

.header-pagination .entry-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.submission-arrow-link {
  font-size: 14px;
  font-size: 0.82353rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  text-decoration: none;
  -ms-flex-item-align: center;
      align-self: center;
  font-weight: bold;
  color: #b6b6b6;
}

.submission-arrow-link:hover, .submission-arrow-link:focus {
  color: #666;
  text-decoration: none;
}

.submission-arrow-link .fa {
  font-size: 1.5em;
  position: relative;
  top: 2px;
}

.submission-arrow-link.m-left {
  margin-right: 25px;
}

.submission-arrow-link.m-left .fa {
  margin-right: 5px;
}

.submission-arrow-link.m-right {
  margin-left: 25px;
}

.submission-arrow-link.m-right .fa {
  margin-left: 5px;
}

.submission__citation-tool-link {
  text-align: right;
}

/**
 * Notice
 *
 * Notice component. Notices are things like post submission status messages.
 */
.notice,
.wppb-user-forms .message,
.wppb-user-forms .error {
  padding: 12px;
  /* Something is causing the bottom to have more padding. @todo: try to figure out what */
  padding-top: 9.6px;
  padding-bottom: 7.2px;
  border-style: solid;
  border-width: 1px;
  border-left-width: 4px;
  text-align: center;
}

.notice--info,
.js-password-meter,
.wppb-user-forms .message {
  border-color: #FAEBCC;
  color: #8A6D3B;
  background: #FCF8E3;
}

.notice--info::before,
.js-password-meter::before,
.wppb-user-forms .message::before {
  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;
  content: "";
  padding-right: 9.6px;
}

.notice--success,
.js-password-meter.good,
.js-password-meter.strong {
  background: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d;
}

.notice--success::before,
.js-password-meter.good::before,
.js-password-meter.strong::before {
  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;
  content: "";
  padding-right: 9.6px;
}

.notice--error,
.assignment .assignment__header .is-past-due,
.js-password-meter.bad,
.wppb-user-forms .error {
  background: #f2dede;
  border-color: #ebccd1;
  color: #C06D7B;
}

.notice--error::before,
.assignment .assignment__header .is-past-due::before,
.js-password-meter.bad::before,
.wppb-user-forms .error::before {
  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;
  content: "";
  padding-right: 9.6px;
}

/**
 * When you need a notice that isn't in your face.
 */
.notice--simple,
.assignment .assignment__header .is-past-due,
.assignment .assignment__header .is-open {
  padding-left: 0;
  padding-right: 0;
  background: transparent;
  border: none;
}

.notice--simple::before,
.assignment .assignment__header .is-past-due::before,
.assignment .assignment__header .is-open::before {
  display: none;
}

/**
 * Modified styles to show in the header of a content box.
 */
.notice--top-content-box {
  border-left-width: 1px;
  margin: -24px;
  margin-bottom: 24px;
}

@media (min-width: 37.5em) {
  .notice--top-content-box {
    margin: -36px;
    margin-bottom: 36px;
  }
}

/**
 * Notice in the site header.
 */
.notice--site-header a {
  color: #368db9 !important;
}

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

/**
 * Post
 *
 * This file outlines styles for generic post related components.
 */
.entry-meta {
  margin-bottom: 36px;
}

.entry__meta, .entry-meta {
  color: #666;
}

.entry__meta a, .entry-meta a {
  color: #666;
}

/**
 * Title for posts / assignments
 */
.entry-title {
  margin-bottom: 12px;
  color: #a41034;
}

/**
 * Password Meter
 *
 * Styles for the password meter component. Used on the edit profile page and the password reset page.
 */
/**
 * Password Meter
 */
.js-password-meter {
  padding: 12px 24px;
  margin-bottom: 24px;
  margin-right: 24px;
  display: inline-block;
}

@media (min-width: 48em) {
  .js-password-meter {
    margin-bottom: 0;
  }
}

/**
 * The generate password button for the front end.
 */
.js-generate-password-container {
  margin-top: 24px;
  margin-right: 24px;
}

.js-generate-password-container button {
  border: none;
  padding: 12px 24px;
  background: #eee;
  color: #666;
}

.js-generate-password-container button:hover {
  background: #999;
  color: white;
}

.js-generate-password-container p {
  display: inline-block;
}

.js-generate-password-container.password-reset {
  margin-right: 0;
}

.js-generate-password-container.password-reset button {
  padding: 12px 12px;
}

.js-generate-password-container.password-reset .js-password-meter {
  padding: 12px 12px;
  margin-right: 12px;
}

/**
 * Course Switcher
 *
 * Holds styles unique related to the course switcher component.
 */
.course-switcher__container {
  padding-left: 0;
  color: black;
  display: table-cell;
  margin-bottom: 6px;
}

@media (min-width: 37.5em) {
  .course-switcher__container {
    width: 30%;
  }
}

@media (min-width: 62.5em) {
  .course-switcher__container {
    width: 25%;
  }
}

/**
 * We need a wrapper around the select element so that we can use a
 * pseudo selector to add a dropdown arrow.
 */
.course-select__wrapper {
  position: relative;
  position: relative;
  width: 100%;
}

.course-select__wrapper::before {
  content: "";
  z-index: 20;
  position: absolute;
  bottom: 43%;
  right: 12px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #666;
}

.course-select__wrapper::before {
  bottom: 38%;
  right: 9px;
}

.course-select {
  padding-left: 7.2px;
  padding-right: 24px;
  margin-top: 10px;
  border: 1px solid #ccc;
  background: #d6d6d6;
  color: #666;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
  width: 100%;
  max-width: 100%;
}

.course-switcher__submit {
  background: #48c4b7;
  color: white;
  border: 0;
  padding-left: 12px;
  padding-right: 12px;
}

.course-switcher__submit:hover, .course-switcher__submit:focus {
  background: #31978d;
}

/**
* Semester Archives Widget.
*/
/**
 * Container for semester archives widget.
 */
.semester-archives:after, .semester-archives:before {
  content: " ";
  display: table;
}

.semester-archives:after {
  clear: both;
}

.semester-archives .entry-title {
  font-size: 38px;
  font-size: 2.23529rem;
  margin-bottom: 42px;
  text-align: center;
}

.semester-archives .semester-archives__semester-switcher {
  max-width: 800px;
}

/**
 * Form container for semester archive filtering options.
 */
.semester-archives__header {
  margin-bottom: 36px;
}

.semester-archives__header .branded-section-heading,
.semester-archives__header .selected-semester-for-archive {
  float: left;
}

.semester-archives__header .branded-section-heading {
  margin-bottom: 0;
  margin-right: 1%;
  width: 50%;
}

@media (min-width: 37.5em) {
  .semester-archives__header .branded-section-heading {
    width: 76%;
  }
}

.semester-archives__header .selected-semester-for-archive {
  position: relative;
  padding: 5px;
  top: -3px;
  width: 49%;
  line-height: 1em;
}

@media (min-width: 37.5em) {
  .semester-archives__header .selected-semester-for-archive {
    width: 23%;
    padding: 2px inherit;
  }
}

.semester-archives__header .semester-archives__semester-switcher {
  position: relative;
}

.semester-archives__header .semester-archives__semester-switcher:after, .semester-archives__header .semester-archives__semester-switcher:before {
  content: " ";
  display: table;
}

.semester-archives__header .semester-archives__semester-switcher:after {
  clear: both;
}

.semester-archives__header .semester-archives__semester-switcher::before {
  content: "";
  z-index: 20;
  position: absolute;
  bottom: 43%;
  right: 12px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #d6d6d6;
}

.semester-archives__header .semester-archives__semester-switcher::before {
  top: 8px;
  bottom: auto;
}

/**
 * Container for semester switcher and label.
 */
.semester-archives__semester-switcher {
  margin-bottom: 36px;
  margin-left: auto;
  margin-right: auto;
}

/**
 * Assignment Switcher.
 */
.assignment-switcher {
  cursor: pointer;
  margin: 0 auto;
  max-width: 480px;
  border: 1px solid #808285;
  -webkit-box-shadow: 1px 1px 0px 0px rgba(128, 130, 133, 0.58), inset 1px 1px 1px 0px #808285;
          box-shadow: 1px 1px 0px 0px rgba(128, 130, 133, 0.58), inset 1px 1px 1px 0px #808285;
}

.assignment-switcher:after, .assignment-switcher:before {
  content: " ";
  display: table;
}

.assignment-switcher:after {
  clear: both;
}

.assignment-switcher.is-open .assignment-switcher__option {
  display: block;
}

/**
 * Assignment switcher dropdown option.
 */
.assignment-switcher__option {
  display: none;
  border-bottom: 1px solid #808285;
  position: relative;
  overflow: hidden;
}

.assignment-switcher__option:after, .assignment-switcher__option:before {
  content: " ";
  display: table;
}

.assignment-switcher__option:after {
  clear: both;
}

.assignment-switcher__option:hover, .assignment-switcher__option:focus {
  background: #666;
}

.assignment-switcher__option:hover .assignment-switcher__dropdown-arrow, .assignment-switcher__option:focus .assignment-switcher__dropdown-arrow {
  color: white;
}

.assignment-switcher__option:hover::before, .assignment-switcher__option:focus::before {
  content: "";
  display: block;
  background: rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 0;
  left: 0;
  width: 400px;
  height: 400px;
}

.assignment-switcher__option.is-selected {
  display: block;
}

.is-open .assignment-switcher__option.is-selected {
  background: #666;
}

.is-open .assignment-switcher__option.is-selected .assignment-switcher__dropdown-arrow {
  color: white;
}

/**
 * Arrow container and assignment image stacked side by side.
 */
.assignment-switcher__dropdown-arrow-container,
.assignment-switcher__image {
  padding-bottom: 24px;
  padding-top: 24px;
  float: left;
  min-height: 76px;
}

.is-selected .assignment-switcher__dropdown-arrow-container, .is-selected
.assignment-switcher__image {
  height: 150px;
  padding: 0;
}

@media (min-width: 37.5em) {
  .is-selected .assignment-switcher__dropdown-arrow-container, .is-selected
  .assignment-switcher__image {
    height: 230px;
  }
}

/**
 * Container for the dropdown arrow within assignment switcher.
 */
.assignment-switcher__dropdown-arrow-container {
  display: table;
  width: 17%;
  text-align: center;
}

.assignment-switcher__dropdown-arrow {
  font-size: 30px;
  font-size: 1.76471rem;
  color: #b1b1b1;
  display: none;
}

.assignment-switcher__dropdown-arrow.fa-chevron-up {
  display: none;
}

.is-selected .assignment-switcher__dropdown-arrow.fa-chevron-down {
  display: table-cell;
  vertical-align: middle;
}

.is-open .assignment-switcher__dropdown-arrow .is-selected .assignment-switcher__dropdown-arrow.fa-chevron-down {
  display: none;
}

.is-open .assignment-switcher__dropdown-arrow .is-selected .assignment-switcher__dropdown-arrow.fa-chevron-up {
  display: table-cell;
  vertical-align: middle;
}

/**
 * The container for the assignment switcher image. The background image on the container
 * should be the featured image for the assignment.
 */
.assignment-switcher__image {
  padding-right: 24px;
  width: 83%;
}

.assignment-switcher__title span {
  position: relative;
  left: 10px;
  display: inline;
  padding: 2px;
  line-height: 1.2em;
  background: black;
  -webkit-box-shadow: 10px 0 0 black, -10px 0 0 black;
          box-shadow: 10px 0 0 black, -10px 0 0 black;
  color: #afe6f1;
}

/**
 * Container for archive widget submissions.
 */
.semester-archive-submissions .branded-section-heading {
  margin-bottom: 36px;
  margin-left: auto;
  margin-right: auto;
}

.archive-widget-error {
  text-align: center;
}

/**
* Dark Dropdown
*/
.dark-dropdown,
.semester-archives__header .selected-semester-for-archive {
  font-size: 16px;
  font-size: 0.94118rem;
  color: #f8f8f8;
  background: #808285;
  border: 1px solid #808285;
  -webkit-box-shadow: 1px 1px 0px 0px rgba(24, 24, 24, 0.67);
          box-shadow: 1px 1px 0px 0px rgba(24, 24, 24, 0.67);
  border-radius: 1px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/**
 * Component style.
 *
 * This component is when there is an image with the title overlayed on top of
 * it.
 */
.highlighted-title__image,
.assignment-switcher__image {
  background-color: #a41034;
  display: table;
  background-size: cover;
  background-position: top center;
}

@media (max-width: 37.49em) {
  .highlighted-title__image,
  .assignment-switcher__image {
    padding-bottom: 24px;
    padding-top: 24px;
    min-height: 75px;
  }
}

.highlighted-title__title,
.is-selected .assignment-switcher__title {
  font-size: 23px;
  font-size: 1.35294rem;
  display: table-cell;
  vertical-align: middle;
  font-weight: 700;
  padding-right: 48px;
}

@media (min-width: 62.5em) {
  .highlighted-title__title,
  .is-selected .assignment-switcher__title {
    font-size: 38px;
    font-size: 2.23529rem;
  }
}

.highlighted-title__title span,
.is-selected .assignment-switcher__title span {
  position: relative;
  left: 10px;
  display: inline;
  padding: 2px;
  line-height: 1.3em;
  background: #181818;
  -webkit-box-shadow: 10px 0 0 black, -10px 0 0 black, 1px 1px 0 0 rgba(54, 140, 185, 0.61);
          box-shadow: 10px 0 0 black, -10px 0 0 black, 1px 1px 0 0 rgba(54, 140, 185, 0.61);
  color: #afe6f1;
}

.highlighted-title__title span:hover, .highlighted-title__title span:focus,
.is-selected .assignment-switcher__title span:hover,
.is-selected .assignment-switcher__title span:focus {
  text-decoration: underline;
}

@media (max-width: 37.49em) {
  .highlighted-title__title span,
  .is-selected .assignment-switcher__title span {
    line-height: 1.35em;
  }
}

/**
 * Animated highlighter effect.
 *
 * Use .highlighter--reverse to start with the background in place.
 * All colors in the $colors map are available using .highlighter--color name
 *
 * Requires a <span> inside highlighted element to work.
 */
.highlighter {
  -webkit-transition: none !important;
  transition: none !important;
  color: #181818;
  position: relative;
  z-index: 2;
  display: inline-block;
}

.highlighter span {
  display: inline;
  border-bottom: 1px solid #a41034;
}

.highlighter:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 0;
  background: #a41034;
  -webkit-transition: all 0.2s cubic-bezier(0.42, 0, 0.58, 1);
  transition: all 0.2s cubic-bezier(0.42, 0, 0.58, 1);
  z-index: -1;
}

.highlighter:hover, .highlighter:focus {
  color: white;
  text-decoration: none !important;
  outline: none;
}

.highlighter:hover span, .highlighter:focus span {
  border: none;
}

.highlighter:hover:before, .highlighter:focus:before {
  width: 100%;
  left: 0;
}

.highlighter--reverse {
  color: white;
}

.highlighter--reverse span {
  border: none;
}

.highlighter--reverse:before {
  width: 100%;
  left: 0;
}

.highlighter--reverse:hover, .highlighter--reverse:focus {
  color: #181818;
}

.highlighter--reverse:hover span, .highlighter--reverse:focus span {
  border-bottom: 1px solid #a41034;
}

.highlighter--reverse:hover:before, .highlighter--reverse:focus:before {
  width: 0;
  left: auto;
}

.highlighter--harvard-orange-light {
  color: #faae53;
}

.highlighter--harvard-orange-light span {
  border-bottom-color: #faae53;
}

.highlighter--harvard-orange-light:before {
  background: #faae53;
}

.highlighter--harvard-orange-light.highlighter--reverse span {
  border-bottom-color: #faae53;
}

.highlighter--harvard-orange-light.highlighter--reverse:hover, .highlighter--harvard-orange-light.highlighter--reverse:focus {
  color: #faae53;
}

.highlighter--harvard-orange-light-shade-darker {
  color: #faa642;
}

.highlighter--harvard-orange-light-shade-darker span {
  border-bottom-color: #faa642;
}

.highlighter--harvard-orange-light-shade-darker:before {
  background: #faa642;
}

.highlighter--harvard-orange-light-shade-darker.highlighter--reverse span {
  border-bottom-color: #faa642;
}

.highlighter--harvard-orange-light-shade-darker.highlighter--reverse:hover, .highlighter--harvard-orange-light-shade-darker.highlighter--reverse:focus {
  color: #faa642;
}

.highlighter--harvard-orange-dark {
  color: #ed6a47;
}

.highlighter--harvard-orange-dark span {
  border-bottom-color: #ed6a47;
}

.highlighter--harvard-orange-dark:before {
  background: #ed6a47;
}

.highlighter--harvard-orange-dark.highlighter--reverse span {
  border-bottom-color: #ed6a47;
}

.highlighter--harvard-orange-dark.highlighter--reverse:hover, .highlighter--harvard-orange-dark.highlighter--reverse:focus {
  color: #ed6a47;
}

.highlighter--harvard-orange-darker {
  color: #eb5d38;
}

.highlighter--harvard-orange-darker span {
  border-bottom-color: #eb5d38;
}

.highlighter--harvard-orange-darker:before {
  background: #eb5d38;
}

.highlighter--harvard-orange-darker.highlighter--reverse span {
  border-bottom-color: #eb5d38;
}

.highlighter--harvard-orange-darker.highlighter--reverse:hover, .highlighter--harvard-orange-darker.highlighter--reverse:focus {
  color: #eb5d38;
}

.highlighter--harvard-green {
  color: #ced665;
}

.highlighter--harvard-green span {
  border-bottom-color: #ced665;
}

.highlighter--harvard-green:before {
  background: #ced665;
}

.highlighter--harvard-green.highlighter--reverse span {
  border-bottom-color: #ced665;
}

.highlighter--harvard-green.highlighter--reverse:hover, .highlighter--harvard-green.highlighter--reverse:focus {
  color: #ced665;
}

.highlighter--harvard-crimson-light {
  color: #c3133e;
}

.highlighter--harvard-crimson-light span {
  border-bottom-color: #c3133e;
}

.highlighter--harvard-crimson-light:before {
  background: #c3133e;
}

.highlighter--harvard-crimson-light.highlighter--reverse span {
  border-bottom-color: #c3133e;
}

.highlighter--harvard-crimson-light.highlighter--reverse:hover, .highlighter--harvard-crimson-light.highlighter--reverse:focus {
  color: #c3133e;
}

.highlighter--harvard-crimson {
  color: #a41034;
}

.highlighter--harvard-crimson span {
  border-bottom-color: #a41034;
}

.highlighter--harvard-crimson:before {
  background: #a41034;
}

.highlighter--harvard-crimson.highlighter--reverse span {
  border-bottom-color: #a41034;
}

.highlighter--harvard-crimson.highlighter--reverse:hover, .highlighter--harvard-crimson.highlighter--reverse:focus {
  color: #a41034;
}

.highlighter--harvard-crimson-dark {
  color: #850d2a;
}

.highlighter--harvard-crimson-dark span {
  border-bottom-color: #850d2a;
}

.highlighter--harvard-crimson-dark:before {
  background: #850d2a;
}

.highlighter--harvard-crimson-dark.highlighter--reverse span {
  border-bottom-color: #850d2a;
}

.highlighter--harvard-crimson-dark.highlighter--reverse:hover, .highlighter--harvard-crimson-dark.highlighter--reverse:focus {
  color: #850d2a;
}

.highlighter--harvard-bluegreen {
  color: #48c4b7;
}

.highlighter--harvard-bluegreen span {
  border-bottom-color: #48c4b7;
}

.highlighter--harvard-bluegreen:before {
  background: #48c4b7;
}

.highlighter--harvard-bluegreen.highlighter--reverse span {
  border-bottom-color: #48c4b7;
}

.highlighter--harvard-bluegreen.highlighter--reverse:hover, .highlighter--harvard-bluegreen.highlighter--reverse:focus {
  color: #48c4b7;
}

.highlighter--harvard-bluegreen-dark {
  color: #31978d;
}

.highlighter--harvard-bluegreen-dark span {
  border-bottom-color: #31978d;
}

.highlighter--harvard-bluegreen-dark:before {
  background: #31978d;
}

.highlighter--harvard-bluegreen-dark.highlighter--reverse span {
  border-bottom-color: #31978d;
}

.highlighter--harvard-bluegreen-dark.highlighter--reverse:hover, .highlighter--harvard-bluegreen-dark.highlighter--reverse:focus {
  color: #31978d;
}

.highlighter--harvard-blue {
  color: #368db9;
}

.highlighter--harvard-blue span {
  border-bottom-color: #368db9;
}

.highlighter--harvard-blue:before {
  background: #368db9;
}

.highlighter--harvard-blue.highlighter--reverse span {
  border-bottom-color: #368db9;
}

.highlighter--harvard-blue.highlighter--reverse:hover, .highlighter--harvard-blue.highlighter--reverse:focus {
  color: #368db9;
}

.highlighter--harvard-blue-dark {
  color: #2e799f;
}

.highlighter--harvard-blue-dark span {
  border-bottom-color: #2e799f;
}

.highlighter--harvard-blue-dark:before {
  background: #2e799f;
}

.highlighter--harvard-blue-dark.highlighter--reverse span {
  border-bottom-color: #2e799f;
}

.highlighter--harvard-blue-dark.highlighter--reverse:hover, .highlighter--harvard-blue-dark.highlighter--reverse:focus {
  color: #2e799f;
}

.highlighter--harvard-lightblue {
  color: #afe6f1;
}

.highlighter--harvard-lightblue span {
  border-bottom-color: #afe6f1;
}

.highlighter--harvard-lightblue:before {
  background: #afe6f1;
}

.highlighter--harvard-lightblue.highlighter--reverse span {
  border-bottom-color: #afe6f1;
}

.highlighter--harvard-lightblue.highlighter--reverse:hover, .highlighter--harvard-lightblue.highlighter--reverse:focus {
  color: #afe6f1;
}

.highlighter--darkest-gray {
  color: #181818;
}

.highlighter--darkest-gray span {
  border-bottom-color: #181818;
}

.highlighter--darkest-gray:before {
  background: #181818;
}

.highlighter--darkest-gray.highlighter--reverse span {
  border-bottom-color: #181818;
}

.highlighter--darkest-gray.highlighter--reverse:hover, .highlighter--darkest-gray.highlighter--reverse:focus {
  color: #181818;
}

.highlighter--darker-gray {
  color: #333;
}

.highlighter--darker-gray span {
  border-bottom-color: #333;
}

.highlighter--darker-gray:before {
  background: #333;
}

.highlighter--darker-gray.highlighter--reverse span {
  border-bottom-color: #333;
}

.highlighter--darker-gray.highlighter--reverse:hover, .highlighter--darker-gray.highlighter--reverse:focus {
  color: #333;
}

.highlighter--dark-gray {
  color: #666;
}

.highlighter--dark-gray span {
  border-bottom-color: #666;
}

.highlighter--dark-gray:before {
  background: #666;
}

.highlighter--dark-gray.highlighter--reverse span {
  border-bottom-color: #666;
}

.highlighter--dark-gray.highlighter--reverse:hover, .highlighter--dark-gray.highlighter--reverse:focus {
  color: #666;
}

.highlighter--offwhite {
  color: #d6d6d6;
}

.highlighter--offwhite span {
  border-bottom-color: #d6d6d6;
}

.highlighter--offwhite:before {
  background: #d6d6d6;
}

.highlighter--offwhite.highlighter--reverse span {
  border-bottom-color: #d6d6d6;
}

.highlighter--offwhite.highlighter--reverse:hover, .highlighter--offwhite.highlighter--reverse:focus {
  color: #d6d6d6;
}

.highlighter--lighter-gray {
  color: #fafafa;
}

.highlighter--lighter-gray span {
  border-bottom-color: #fafafa;
}

.highlighter--lighter-gray:before {
  background: #fafafa;
}

.highlighter--lighter-gray.highlighter--reverse span {
  border-bottom-color: #fafafa;
}

.highlighter--lighter-gray.highlighter--reverse:hover, .highlighter--lighter-gray.highlighter--reverse:focus {
  color: #fafafa;
}

.highlighter--light-gray {
  color: #eee;
}

.highlighter--light-gray span {
  border-bottom-color: #eee;
}

.highlighter--light-gray:before {
  background: #eee;
}

.highlighter--light-gray.highlighter--reverse span {
  border-bottom-color: #eee;
}

.highlighter--light-gray.highlighter--reverse:hover, .highlighter--light-gray.highlighter--reverse:focus {
  color: #eee;
}

.highlighter--dropdown-gray {
  color: #b1b1b1;
}

.highlighter--dropdown-gray span {
  border-bottom-color: #b1b1b1;
}

.highlighter--dropdown-gray:before {
  background: #b1b1b1;
}

.highlighter--dropdown-gray.highlighter--reverse span {
  border-bottom-color: #b1b1b1;
}

.highlighter--dropdown-gray.highlighter--reverse:hover, .highlighter--dropdown-gray.highlighter--reverse:focus {
  color: #b1b1b1;
}

.highlighter--gray {
  color: #ccc;
}

.highlighter--gray span {
  border-bottom-color: #ccc;
}

.highlighter--gray:before {
  background: #ccc;
}

.highlighter--gray.highlighter--reverse span {
  border-bottom-color: #ccc;
}

.highlighter--gray.highlighter--reverse:hover, .highlighter--gray.highlighter--reverse:focus {
  color: #ccc;
}

.highlighter--red {
  color: #c06d7b;
}

.highlighter--red span {
  border-bottom-color: #c06d7b;
}

.highlighter--red:before {
  background: #c06d7b;
}

.highlighter--red.highlighter--reverse span {
  border-bottom-color: #c06d7b;
}

.highlighter--red.highlighter--reverse:hover, .highlighter--red.highlighter--reverse:focus {
  color: #c06d7b;
}

.highlighter--pale-red {
  color: #f2dede;
}

.highlighter--pale-red span {
  border-bottom-color: #f2dede;
}

.highlighter--pale-red:before {
  background: #f2dede;
}

.highlighter--pale-red.highlighter--reverse span {
  border-bottom-color: #f2dede;
}

.highlighter--pale-red.highlighter--reverse:hover, .highlighter--pale-red.highlighter--reverse:focus {
  color: #f2dede;
}

.highlighter--dark-pale-red {
  color: #ebccd1;
}

.highlighter--dark-pale-red span {
  border-bottom-color: #ebccd1;
}

.highlighter--dark-pale-red:before {
  background: #ebccd1;
}

.highlighter--dark-pale-red.highlighter--reverse span {
  border-bottom-color: #ebccd1;
}

.highlighter--dark-pale-red.highlighter--reverse:hover, .highlighter--dark-pale-red.highlighter--reverse:focus {
  color: #ebccd1;
}

.highlighter--green {
  color: #3c763d;
}

.highlighter--green span {
  border-bottom-color: #3c763d;
}

.highlighter--green:before {
  background: #3c763d;
}

.highlighter--green.highlighter--reverse span {
  border-bottom-color: #3c763d;
}

.highlighter--green.highlighter--reverse:hover, .highlighter--green.highlighter--reverse:focus {
  color: #3c763d;
}

.highlighter--pale-green {
  color: #dff0d8;
}

.highlighter--pale-green span {
  border-bottom-color: #dff0d8;
}

.highlighter--pale-green:before {
  background: #dff0d8;
}

.highlighter--pale-green.highlighter--reverse span {
  border-bottom-color: #dff0d8;
}

.highlighter--pale-green.highlighter--reverse:hover, .highlighter--pale-green.highlighter--reverse:focus {
  color: #dff0d8;
}

.highlighter--dark-pale-green {
  color: #d6e9c6;
}

.highlighter--dark-pale-green span {
  border-bottom-color: #d6e9c6;
}

.highlighter--dark-pale-green:before {
  background: #d6e9c6;
}

.highlighter--dark-pale-green.highlighter--reverse span {
  border-bottom-color: #d6e9c6;
}

.highlighter--dark-pale-green.highlighter--reverse:hover, .highlighter--dark-pale-green.highlighter--reverse:focus {
  color: #d6e9c6;
}

.highlighter--breadcrumb-link {
  color: #b6b6b6;
}

.highlighter--breadcrumb-link span {
  border-bottom-color: #b6b6b6;
}

.highlighter--breadcrumb-link:before {
  background: #b6b6b6;
}

.highlighter--breadcrumb-link.highlighter--reverse span {
  border-bottom-color: #b6b6b6;
}

.highlighter--breadcrumb-link.highlighter--reverse:hover, .highlighter--breadcrumb-link.highlighter--reverse:focus {
  color: #b6b6b6;
}

.highlighter--dropdown-bg {
  color: #808285;
}

.highlighter--dropdown-bg span {
  border-bottom-color: #808285;
}

.highlighter--dropdown-bg:before {
  background: #808285;
}

.highlighter--dropdown-bg.highlighter--reverse span {
  border-bottom-color: #808285;
}

.highlighter--dropdown-bg.highlighter--reverse:hover, .highlighter--dropdown-bg.highlighter--reverse:focus {
  color: #808285;
}

.highlighter--cream {
  color: rgba(250, 249, 242, 0.98);
}

.highlighter--cream span {
  border-bottom-color: rgba(250, 249, 242, 0.98);
}

.highlighter--cream:before {
  background: rgba(250, 249, 242, 0.98);
}

.highlighter--cream.highlighter--reverse span {
  border-bottom-color: rgba(250, 249, 242, 0.98);
}

.highlighter--cream.highlighter--reverse:hover, .highlighter--cream.highlighter--reverse:focus {
  color: rgba(250, 249, 242, 0.98);
}

.page-bg-blackout {
  position: fixed;
  display: block;
  z-index: 10;
  width: 100%;
  height: 100%;
  width: 100vw;
  height: 100vh;
  top: 0px;
  left: 0px;
  background: rgba(0, 0, 0, 0.5);
}

.modal-popout {
  position: fixed;
  display: block;
  z-index: 11;
  width: 80%;
  height: 100%;
  left: 10%;
  top: 0px;
  overflow: scroll;
  padding: 15px;
  border: 2px solid #31978d;
  border-radius: 5px;
  background-color: #eee;
  color: #181818;
  display: none;
}

@media (min-width: 32.5em) {
  .modal-popout {
    width: 500px;
    height: calc( 100% - 150px);
    left: calc( 50% - 265px);
    top: 100px;
    overflow: scroll;
  }
}

.modal-popout .close {
  position: absolute;
  top: 15px;
  right: 15px;
  color: #181818;
}

/**
 * Pushdown Header
 */
.pushdown-header {
  background: #48c4b7;
  position: relative;
  z-index: 6;
  text-align: center;
  padding: 18px 0;
  color: #fff;
  -webkit-box-shadow: 0 1px 3px 2px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 3px 2px rgba(0, 0, 0, 0.15);
  -webkit-transition: all 1000ms ease-in-out;
  transition: all 1000ms ease-in-out;
  font-size: 85%;
  min-height: 84px;
  overflow: hidden;
}

.pushdown-header .small-content,
.pushdown-header .large-content {
  display: none;
}

@media (min-width: 37.5em) {
  .pushdown-header .large-content {
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 100px 0 250px;
  }
}

@media (min-width: 62.5em) {
  .pushdown-header .large-content {
    padding: 0 250px;
  }
}

.pushdown-header .small-content {
  padding-right: 20px;
}

@media (min-width: 37.5em) {
  .pushdown-header .small-content {
    padding-right: 0;
  }
}

.pushdown-header.small {
  padding: 5px 0;
  min-height: 34px;
}

.pushdown-header.small .expand-button {
  display: block;
}

.pushdown-header.small .pushdown-header--logo,
.pushdown-header.small .close-button {
  display: none;
}

.pushdown-header a {
  color: #fff;
}

@media (min-width: 37.5em) {
  .pushdown-header--logo {
    position: absolute;
    left: 60px;
    top: 18px;
  }
}

.pushdown-header--logo img {
  max-height: 46px;
  width: auto;
}

.pushdown-header .close-button,
.pushdown-header .expand-button {
  position: absolute;
  right: 30px;
  top: 10px;
  text-decoration: none;
  font-family: sans-serif;
  width: 50px;
  height: 50px;
}

.pushdown-header .close-button:before,
.pushdown-header .expand-button:before {
  content: 'X';
  display: block;
}

.pushdown-header .expand-button {
  display: none;
}

.pushdown-header .expand-button:before {
  content: '';
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 10px;
  width: 10px;
  border-style: solid;
  border-color: white;
  border-width: 0 1px 1px 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: border-width 150ms ease-in-out;
  transition: border-width 150ms ease-in-out;
  position: relative;
  right: -20px;
}

.pushdown-header .expand-button:hover:before {
  border-bottom-width: 2px;
  border-right-width: 2px;
}

.di_link_back_body__wrapper {
  border-top: 4px solid #181818;
  border-bottom: 4px solid #181818;
  padding: 21.6px;
  padding-top: 6px;
  padding-bottom: 6px;
  margin-bottom: 24px;
  margin-top: 24px;
  clear: both;
}

.di_link_back_body__section_title {
  font-size: 1.2rem;
  font-family: "Trade Gothic W02", "Trade Gothic W01", Helvetica, Arial, sans-serif;
  color: #AEB299;
  text-transform: uppercase;
  margin-bottom: 14.4px;
}

.di_link_back_body__link {
  margin-bottom: 45.6px;
  margin-top: 45.6px;
  clear: both;
}

.di_link_back_body__image_container {
  height: 75px;
  width: 100px;
  display: block;
  float: right;
  margin-left: 4.8px;
}

@media (min-width: 37.5em) {
  .di_link_back_body__image_container {
    width: 120px;
    margin-left: 24px;
  }
}

.di_link_back_body__link_image {
  -o-object-fit: cover;
     object-fit: cover;
  height: 75px;
  width: 100%;
}

.di_link_back_body__link_title {
  color: #181818;
  font-family: "Trade Gothic W01", Helvetica, Arial, sans-serif;
  margin-bottom: 14.4px;
  max-width: 50%;
}

@media (min-width: 37.5em) {
  .di_link_back_body__link_title {
    max-width: 74%;
  }
}

.di_link_back_body__category_link {
  display: inline-block;
  padding: 6px;
  color: rgba(250, 249, 242, 0.98);
  font-family: "Trade Gothic W02", sans-serif;
  text-decoration: none;
}

.di_link_back_body__category_link:hover {
  color: rgba(250, 249, 242, 0.98);
  text-decoration: none;
}

.display-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.display-flex .flex-end {
  margin-left: auto;
}

.post-navs {
  margin-bottom: 4rem;
}

.post-nav {
  max-width: 300px;
}

.post-nav--label {
  color: #666;
  font-size: 1.125rem;
  margin-bottom: 1rem;
}

.post-nav--link {
  display: block;
  margin-left: 1.5rem;
  color: #368db9 !important;
}

/**
 * Messages
 */
.hbs-message-header {
  text-align: center;
}

/*--------------------------------------------------------------
# Layout
--------------------------------------------------------------*/
/**
 * Global
 *
 * Holds the generic layout styles. More specific layout patterns can be their own
 * components / page files.
 */
/**
 * Set background color so if the page isn't taller than the browser it matches
 * the footer.
 */
body {
  background: #181818;
}

/**
 * Generic container class just in case.
 */
.container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
}

.container:after {
  content: " ";
  display: block;
  clear: both;
}

/**
 * The area of the site between the header and the footer.
 */
.site-main-wrap {
  background: white;
}

/**
 * Inner means you can apply container to it and still have a full width
 * background color on the parent.
 */
.site-main-wrap__inner {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  padding-bottom: 36px;
  padding-top: 36px;
  /**
	 * Slimmed down version of the wrap.
	 */
}

.site-main-wrap__inner:after {
  content: " ";
  display: block;
  clear: both;
}

@media (max-width: 37.49em) {
  .site-main-wrap__inner {
    padding-left: 0px;
    padding-right: 0px;
  }
}

.slim-page-wrap .site-main-wrap__inner {
  max-width: 600px;
  margin: 0 auto;
}

.single-hck-assignment .site-main-wrap__inner,
.home .site-main-wrap__inner,
.post-type-archive-hck-assignment .site-main-wrap__inner {
  padding-top: 0;
}

.course-description {
  margin-bottom: 36px;
  padding-top: 3em;
  /**
	 * Center oembed within course description.
	 *
	 * Temporary for now.
	 */
}

.course-description iframe {
  margin: 0 auto;
  display: block;
}

.no-results {
  margin-bottom: 72px;
}

/**
 * Header
 *
 * Holds the main header styles. More specific nav patterns can be their own
 * components.
 */
/**
 * Site header conainer.
 *
 * Used so we can set set a bg color that will spread across the full width of
 * the site.
 */
.site-header {
  background-color: rgba(250, 249, 242, 0.98);
  position: relative;
  z-index: 5;
}

.site-header a {
  text-decoration: none;
}

.site-header ul {
  margin: 0;
}

/**
 * Wrapper inside of the header container & banner container.
 *
 * Used so we can set a width on the header but have a bg color across the full
 * width of the site.
 */
.site-header__inner {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  padding-bottom: 2.4px;
  padding-top: 2.4px;
  min-height: 58px;
}

.site-header__inner:after {
  content: " ";
  display: block;
  clear: both;
}

@media (max-width: 37.49em) {
  .site-header__inner {
    padding-left: 9.6px;
    padding-right: 9.6px;
    display: table;
    width: 100%;
    margin: 0;
  }
}

@media (min-width: 37.5em) {
  .site-header__inner {
    padding-bottom: 4.8px;
    padding-top: 4.8px;
  }
}

.global-navigation {
  background-color: #eee;
  color: white;
}

.global-navigation a {
  color: white;
}

.global-navigation__inner {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  padding-bottom: 6px;
  padding-top: 6px;
}

.global-navigation__inner:after {
  content: " ";
  display: block;
  clear: both;
}

.global-navigation__inner:after, .global-navigation__inner:before {
  content: " ";
  display: table;
}

.global-navigation__inner:after {
  clear: both;
}

@media (max-width: 37.49em) {
  .global-navigation__inner {
    padding-left: 8.4px;
    padding-right: 8.4px;
  }
}

@media (min-width: 37.5em) {
  .global-navigation__inner {
    max-width: 100%;
    padding-bottom: 4.8px;
    padding-top: 4.8px;
  }
}

/**
 * Network title - Open Knowledge.
 */
.network-title {
  display: table-cell;
  vertical-align: middle;
  font-weight: 700;
  text-decoration: underline;
  width: 50%;
}

@media (min-width: 37.5em) {
  .network-title {
    width: 70%;
  }
}

@media (min-width: 62.5em) {
  .network-title {
    width: 75%;
  }
}

.network-title a:hover, .network-title a:focus {
  color: #d6d6d6;
}

/**
 * Website logo
 */
.site-logo {
  display: table-cell;
  vertical-align: middle;
  font-size: 25.5px;
  font-size: 1.5rem;
  min-width: 110px;
  width: 100%;
  display: block;
}

@media (min-width: 37.5em) {
  .site-logo {
    width: 65.85366%;
    float: left;
    margin-right: 2.43902%;
    max-height: 300px;
    top: 0;
    display: table-cell;
    position: relative;
    margin-bottom: -20px;
  }
}

.site-logo img {
  max-width: 100%;
  max-height: 63px;
  float: left;
  margin-top: 10px;
}

@media (min-width: 37.5em) {
  .site-logo img {
    width: auto;
  }
}

.site-logo .site-details h2,
.site-logo .site-details h3 {
  color: #333;
  font-family: "Trade Gothic W02", sans-serif;
  font-size: 12px;
  letter-spacing: 1px;
  text-transform: uppercase;
  line-height: 1.5;
  margin-bottom: 0;
  padding-top: 0;
}

.site-logo .site-details h2 {
  font-size: 17px;
  border-bottom: 1px solid;
  display: inline-block;
  margin-bottom: 5px;
}

.site-logo .desktop-only {
  display: none;
}

@media (min-width: 37.5em) {
  .site-logo .desktop-only {
    display: inline;
  }
}

.site-logo .mobile-only {
  width: 110px;
}

@media (min-width: 37.5em) {
  .site-logo .mobile-only {
    display: none;
  }
}

/**
 * User Login form in the header.
 */
.user-login {
  padding: 24px;
  -webkit-box-shadow: 0.15em 0.15em 0em #b6b6b6;
          box-shadow: 0.15em 0.15em 0em #b6b6b6;
  background: white;
  top: 85px;
  display: none;
  position: absolute;
  width: 100%;
  right: 0;
}

.user-login::before {
  content: "";
  position: absolute;
  top: -15px;
  right: 22px;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid white;
}

@media (min-width: 37.5em) {
  .user-login::before {
    right: 15px;
  }
}

.user-login.is-open {
  display: block;
}

@media (min-width: 37.5em) {
  .user-login {
    top: 100px;
    max-width: 350px;
    right: 24px;
  }
}

.user-login .entry-title {
  text-align: center;
  margin-bottom: 24px;
}

.user-login a {
  color: #368db9;
}

.user-login .forgetmenot, .user-login .submit {
  display: inline-block;
  width: 50%;
}

.user-login .forgetmenot {
  text-align: right;
  padding-left: 10px;
}

.user-login .login-misc-links {
  padding: 0;
  margin: 0;
}

.user-login .login-misc-links:after, .user-login .login-misc-links:before {
  content: " ";
  display: table;
}

.user-login .login-misc-links:after {
  clear: both;
}

.user-login .register-link {
  float: left;
}

.user-login .register-link a {
  padding-left: 0;
}

.user-login .lostpassword-link {
  float: right;
  margin-right: 0;
}

.user-login .lostpassword-link a {
  padding-right: 0;
}

/**
 * Page title shown on some pages.
 */
.page-title-container {
  background: white;
  padding-top: 3em;
  margin-top: -36px;
}

.page-title-container .page-title {
  margin-bottom: 0;
}

@media (max-width: 37.49em) {
  .page-title-container .page-title {
    font-size: 23px;
  }
}

.page-title-container .has-breadcrumbs {
  padding-top: 24px;
}

.page-title {
  color: #a41034;
  text-align: center;
}

/**
 * Gutter
 */
.gutter-left {
  display: none;
}

@media (min-width: 37.5em) {
  .gutter-left {
    display: block;
    position: fixed;
    top: 130px;
    padding: 30px 0 30px 30px;
    width: 115px;
  }
  .admin-bar .gutter-left {
    top: 165px;
  }
  .gutter-left .di-c-date {
    -webkit-transform: rotate(270deg);
            transform: rotate(270deg);
    position: relative;
    top: 45px;
    left: -58px;
    text-transform: uppercase;
    width: 200px;
    font-weight: 800;
  }
}

/**
 * Nav
 *
 * Holds the main nav styles, as well as any global navigation throughout
 * the site. More specific nav patterns can be their own components.
 */
/**
 * Some default nav stylings.
 * 1. Hide sub menu by default, reveal on hover of parent li
 */
@media (min-width: 37.5em) {
  .menu-item {
    border: none;
  }
}

.menu-item .sub-menu {
  background: white;
  display: none;
  z-index: 25;
}

.menu-item .sub-menu li {
  width: 100%;
  margin-bottom: 2px;
}

.menu-item:hover .sub-menu, .menu-item:focus .sub-menu {
  display: block;
}

/**
 * Primary site navigation.
 */
.site-nav {
  text-transform: uppercase;
  min-height: 5px;
  /* To show the header bg when the menu is hidden on mobile. */
  /**
	 * This .is-open class will be handled by JavaScript when the menu trigger
	 * is clicked.
	 */
}

.site-nav.is-open .menu-item {
  display: block;
}

@media (min-width: 37.5em) {
  .site-nav.is-open .menu-item {
    display: inline-block;
    /* Reset back to inline block for tablet & up. */
  }
}

.site-nav .menu-item {
  list-style-type: none;
  display: inline-block;
  letter-spacing: .05em;
}

.site-nav .menu-item:last-child {
  border-bottom: 0;
}

@media (min-width: 37.5em) {
  .site-nav .menu-item {
    border-bottom: 0;
  }
}

.site-nav .menu-item:hover a, .site-nav .menu-item:focus a {
  color: #666;
}

.site-nav a {
  display: block;
  padding: 7.2px;
  padding-bottom: 12px;
  padding-top: 12px;
  font-weight: 700;
  color: black;
}

@media (min-width: 37.5em) {
  .site-nav a {
    display: block;
    padding: 12px;
  }
}

.site-nav .current-menu-item a {
  color: #666;
}

.single-hck-assignment .menu-item-object-hck-assignment a,
.single-hck-submission .menu-item-object-hck-assignment a {
  color: #666;
}

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

/**
 * Container for user menu and search form.
 */
.header-nav {
  position: relative;
  display: block;
  margin: 0 auto;
  text-align: center;
}

.header-nav.is-logged-out {
  margin-top: -10px;
}

.header-nav.is-logged-in {
  margin-top: -5px;
}

@media (min-width: 37.5em) {
  .header-nav {
    position: absolute;
    top: 75px;
    right: 30px;
    text-align: right;
    width: 31.70732%;
    float: right;
    margin-right: 0;
  }
  .header-nav.is-logged-in {
    margin-top: 0;
  }
  .header-nav.is-logged-out {
    margin-top: 12px;
  }
}

.header-nav .user__gravatar {
  width: 64px;
}

@media (min-width: 37.5em) {
  .header-nav .user__gravatar {
    width: 45px;
  }
}

/**
 * Login link.
 */
.login-link {
  position: relative;
  top: 5px;
  text-transform: uppercase;
  text-decoration: underline;
  text-align: right;
  cursor: pointer;
}

@media (min-width: 37.5em) {
  .login-link {
    top: 0;
  }
}

.login-link a {
  color: black;
}

.login-link a:hover, .login-link a:focus {
  color: #666;
}

/**
 * User nav menu wrap in the header.
 */
.user-menu-wrap {
  z-index: 5;
  height: 100%;
  color: black;
  text-align: start;
  display: inline-block;
  vertical-align: middle;
}

@media (min-width: 37.5em) {
  .user-menu-wrap {
    max-width: 90px;
  }
}

@media (min-width: 62.5em) {
  .user-menu-wrap {
    max-width: 150px;
  }
}

.user-menu-wrap li {
  list-style-type: none;
}

.user-menu-wrap li:hover, .user-menu-wrap li:focus {
  text-decoration: underline;
}

.user-menu-wrap a {
  padding: 8.4px;
  display: block;
}

@media (min-width: 37.5em) {
  .user-menu-wrap a {
    padding: 0;
  }
}

.user-menu-wrap .sub-menu {
  border: 1px solid #ccc;
}

/**
 * Handle the dropdown 'settings'
 */
li.user-nav__menu-item--settings {
  position: relative;
  top: -1px;
}

li.user-nav__menu-item--settings .fa-chevron-down {
  position: absolute;
  top: 4px;
  right: -20px;
}

li.user-nav__menu-item--settings .user-name {
  padding-right: 10px;
}

li.user-nav__menu-item--settings .sub-menu {
  position: absolute;
  width: 200px;
  top: 100%;
  right: 5px;
  text-align: right;
  padding-bottom: 14.4px;
  padding-top: 12px;
}

li.user-nav__menu-item--settings .sub-menu::before {
  content: "";
  position: absolute;
  top: -10px;
  right: 10px;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid white;
}

@media (min-width: 37.5em) {
  li.user-nav__menu-item--settings .sub-menu::before {
    right: 15px;
  }
}

li.user-nav__menu-item--settings a {
  padding: 0 18px;
  padding-right: 30px;
  text-transform: uppercase;
}

li.user-nav__menu-item--settings .user-nav__menu-item--greeting {
  font-family: "Trade Gothic W02";
  font-size: 38px;
  line-height: 1em;
  padding: 12px 18px;
  margin-bottom: 5px;
  color: #a41034;
  text-decoration: none;
}

/**
 * Site footer navigation
 *
 * Should be on the right side of the footer copyright.
 */
.site-footer-nav {
  list-style-type: none;
  text-align: center;
}

.site-footer-nav li {
  margin-bottom: 5px;
}

/**
 * Form
 *
 * Holds styles for generic forms.
 */
/**
 * Default input styles
 */
input[type=text],
input[type=password],
input[type=email],
textarea,
select {
  padding: 6px;
  border: 1px solid #ccc;
  width: 100%;
}

input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
textarea:focus,
select:focus {
  border: 1px solid #666;
}

.wp-editor-container {
  border: 1px solid #ccc;
}

.wp-editor-container:focus {
  border: 1px solid #666;
}

textarea {
  background: white;
}

label,
.wppb-form-field label {
  display: block;
  margin-bottom: 5px;
  width: 100%;
}

/**
 * Form
 */
.form {
  /**
	 * Button in form
	 */
  /**
	 * User gravatar.
	 * @todo This feels weird and out of place here.. not sure where else it could
	 *       go though
	 */
}

.form .btn {
  float: right;
  margin-left: 12px;
}

@media (min-width: 37.5em) {
  .form .user__gravatar {
    float: left;
    margin-right: 12px;
    margin-bottom: 12px;
  }
}

@media (min-width: 43.5625em) {
  .form .user__gravatar {
    margin-bottom: 0;
  }
}

/**
 * Wrapper around form fields and their labels.
 */
.form__field {
  margin-bottom: 36px;
}

.form__field:last-child {
  margin-bottom: 0;
}

.form__field-group {
  display: inline-block;
  width: 70%;
}

/**
 * Form label
 */
.form__label {
  display: block;
}

@media (min-width: 37.5em) {
  .form__label {
    display: inline-block;
    min-width: 30%;
  }
}

/**
 * Form field description
 */
.form__field-description {
  font-family: "Trade Gothic W01", Helvetica, Arial, sans-serif;
  display: block;
  padding-top: 4px;
}

/**
 * Form input field
 */
.form__input {
  width: 100%;
}

@media (min-width: 37.5em) {
  .form__input {
    display: inline-block;
    width: 70%;
  }
}

/**
 * Form select field
 */
.form__select {
  width: 100%;
  height: 38px;
}

.form__field--checkbox label {
  width: auto;
  min-width: inherit;
  margin-left: 12px;
  vertical-align: middle;
  margin-bottom: 0;
}

.form__field--checkbox input[type='checkbox'] {
  width: auto;
  vertical-align: middle;
}

/**
 * Submission Form on Assignment page.
 */
.submission-form {
  padding-top: 48px;
}

.submission-form header {
  margin-bottom: 36px;
}

.submission-form header h2 {
  padding-right: 24px;
}

.submission-form header h2, .submission-form header a {
  display: table-cell;
  vertical-align: middle;
}

.submission-form--edit {
  padding-top: 0;
}

.featured-image-preview {
  margin-top: 10px;
}

.form__alight-right {
  display: inline-block;
}

@media (min-width: 37.5em) {
  .form__alight-right {
    float: right;
  }
}

/**
 * HTML input mode on submission reply.
 */
#hbs-ck-content {
  background: white;
}

#hbs-ck-content:focus {
  border: 0;
}

.disclaimer__media {
  margin-top: 1.5em;
  padding: 1em;
  border: 2px solid #a41034;
  width: auto;
  display: inline-block;
}

/**
 * Content
 *
 * Holds the global content styles. More specific content layout patterns
 * can be their own components.
 */
/**
 * Condensed heading with primary branding color underline.
 */
.branded-section-heading {
  margin-bottom: 12px;
  letter-spacing: 0.05em;
  font-family: "Trade Gothic W02";
  font-family: "Trade Gothic W01", Helvetica, Arial, sans-serif;
  font-weight: bold;
  line-height: 28px;
  color: #808285;
  border-bottom: 1px solid #48c4b7;
}

.branded-section-heading:after, .branded-section-heading:before {
  content: " ";
  display: table;
}

.branded-section-heading:after {
  clear: both;
}

/**
 * Change bottom border to dots, smaller font.
 */
.branded-section-heading--secondary {
  font-size: 17px;
  font-size: 1rem;
  border-bottom: none;
  font-family: "Trade Gothic W01", Helvetica, Arial, sans-serif;
  font-weight: 400;
}

.branded-section-heading--secondary h2 {
  text-transform: uppercase;
  font-weight: normal;
  float: left;
  font-size: 17px;
  font-size: 1rem;
  margin-bottom: 0;
}

.branded-section-heading--secondary .view-all-responses {
  font-size: 17px;
  font-size: 1rem;
}

@media (min-width: 37.5em) {
  .branded-section-heading--secondary .view-all-responses {
    float: right;
    margin-top: 0;
  }
}

/**
 * Change bottom border to gray.
 */
.branded-section-heading--gray {
  border-bottom-color: #ccc;
}

.branded-section-heading--solid {
  border-bottom-style: solid;
}

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

/**
 * Footer
 *
 * Holds the main footer styles. More specific nav patterns can be their own
 * components.
 */
.pre-footer {
  padding: 2rem;
  background: white;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 12px solid #48c4b7;
  text-align: center;
}

.pre-footer .di-c-btn {
  background: black;
}

.pre-footer .di-c-input-group__body,
.pre-footer .di-c-btn__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.pre-footer .di-c-input-group__label {
  margin-bottom: 4rem;
}

.pre-footer .di-c-field__input {
  border: 2px solid black;
  padding: 1rem .75rem;
  font-weight: bold;
}

.pre-footer .di-c-input-group__headline {
  display: block;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
  padding-bottom: 0.5rem;
  font-size: 2rem;
  line-height: 2;
  position: relative;
  font-family: "Trade Gothic W02", "Trade Gothic W01", Helvetica, Arial, sans-serif;
  font-weight: 400;
}

.pre-footer .di-c-input-group__headline:after {
  content: "";
  background: black;
  position: absolute;
  bottom: 0;
  left: calc( 50% - 30px);
  width: 60px;
  height: 4px;
}

.pre-footer .wpcf7-submit {
  padding: 1rem .75rem;
  font-size: 0.75rem;
  color: #fff;
  border: 2px solid black;
  position: relative;
  background: black;
}

.pre-footer .ajax-loader {
  position: relative;
  background-image: none !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
}

/**
 * Site footer conainer.
 *
 * Used so we can set set a bg color that will spread across the full width of
 * the site.
 */
.site-footer {
  padding-bottom: 24px;
  padding-top: 24px;
  background: #181818;
  color: white;
}

.site-footer a {
  color: white;
}

.site-footer a:hover, .site-footer a:focus {
  color: #d6d6d6;
}

/**
 * Wrapper inside of the footer container.
 *
 * Used so we can set a width on the footer but have a bg color across the full
 * width of the site.
 */
.site-footer__inner {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
}

.site-footer__inner:after {
  content: " ";
  display: block;
  clear: both;
}

/**
 * Container for logos in the footer.
 */
.site-footer__logos {
  margin-bottom: 36px;
  padding-bottom: 24px;
  border-bottom: 1px solid #eee;
}

.logo-dighbs img,
.logo-hbs img {
  margin-top: 6px;
  display: block;
}

.logo-dighbs {
  margin-bottom: 12px;
}

@media (min-width: 37.5em) {
  .logo-dighbs {
    width: 48.78049%;
    float: left;
    margin-right: 2.43902%;
    margin-bottom: 0;
  }
}

.logo-dighbs img {
  width: 366px;
}

@media (min-width: 37.5em) {
  .logo-hbs {
    float: right;
  }
}

.logo-hbs img {
  width: 196px;
}

.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.flex-end {
  margin-left: auto;
}

@media (min-width: 20em) {
  .d-flex-from-mobile {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (max-width: 19.99em) {
  .d-flex-to-mobile {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (min-width: 20em) {
  .flex-end-from-mobile {
    margin-left: auto;
  }
}

@media (max-width: 19.99em) {
  .flex-end-to-mobile {
    margin-left: auto;
  }
}

@media (min-width: 26.25em) {
  .d-flex-from-largeMobile {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (max-width: 26.24em) {
  .d-flex-to-largeMobile {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (min-width: 26.25em) {
  .flex-end-from-largeMobile {
    margin-left: auto;
  }
}

@media (max-width: 26.24em) {
  .flex-end-to-largeMobile {
    margin-left: auto;
  }
}

@media (min-width: 32.5em) {
  .d-flex-from-smallTablet {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (max-width: 32.49em) {
  .d-flex-to-smallTablet {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (min-width: 32.5em) {
  .flex-end-from-smallTablet {
    margin-left: auto;
  }
}

@media (max-width: 32.49em) {
  .flex-end-to-smallTablet {
    margin-left: auto;
  }
}

@media (min-width: 37.5em) {
  .d-flex-from-tablet {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (max-width: 37.49em) {
  .d-flex-to-tablet {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (min-width: 37.5em) {
  .flex-end-from-tablet {
    margin-left: auto;
  }
}

@media (max-width: 37.49em) {
  .flex-end-to-tablet {
    margin-left: auto;
  }
}

@media (min-width: 48em) {
  .d-flex-from-largeTablet {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (max-width: 47.99em) {
  .d-flex-to-largeTablet {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (min-width: 48em) {
  .flex-end-from-largeTablet {
    margin-left: auto;
  }
}

@media (max-width: 47.99em) {
  .flex-end-to-largeTablet {
    margin-left: auto;
  }
}

@media (min-width: 62.5em) {
  .d-flex-from-desktop {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (max-width: 62.49em) {
  .d-flex-to-desktop {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (min-width: 62.5em) {
  .flex-end-from-desktop {
    margin-left: auto;
  }
}

@media (max-width: 62.49em) {
  .flex-end-to-desktop {
    margin-left: auto;
  }
}

@media (min-width: 68.75em) {
  .d-flex-from-wide {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (max-width: 68.74em) {
  .d-flex-to-wide {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (min-width: 68.75em) {
  .flex-end-from-wide {
    margin-left: auto;
  }
}

@media (max-width: 68.74em) {
  .flex-end-to-wide {
    margin-left: auto;
  }
}

@media (min-width: 43.5625em) {
  .d-flex-from-editProfileAvatar {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (max-width: 43.5525em) {
  .d-flex-to-editProfileAvatar {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
}

@media (min-width: 43.5625em) {
  .flex-end-from-editProfileAvatar {
    margin-left: auto;
  }
}

@media (max-width: 43.5525em) {
  .flex-end-to-editProfileAvatar {
    margin-left: auto;
  }
}

/*--------------------------------------------------------------
# Pages
--------------------------------------------------------------*/
/**
 * Profile
 *
 * Holds styles unique to the view profile page. If there are global
 * components on this page than style those in their own component
 * file.
 */
.user__gravatar {
  border: 2px solid #181818;
  border-radius: 50%;
  width: 45px;
}

@media (min-width: 37.5em) {
  .user__gravatar-wrapper,
  .profile-info {
    display: table-cell;
    vertical-align: middle;
  }
}

.profile-header {
  text-align: center;
  /**
	 * User's name
	 */
  /**
	 * Meta data about the user.
	 * ie: Twitter link, LinkedIn link, Website link.
	 */
}

.profile-header:after, .profile-header:before {
  content: " ";
  display: table;
}

.profile-header:after {
  clear: both;
}

@media (min-width: 37.5em) {
  .profile-header {
    text-align: left;
  }
}

.profile-header .user__gravatar {
  margin-bottom: 36px;
  vertical-align: middle;
  width: 75px;
}

@media (min-width: 37.5em) {
  .profile-header .user__gravatar {
    margin-right: 24px;
    margin-bottom: 0;
  }
}

.profile-header .user__name {
  margin-bottom: 12px;
}

.profile-header .user__meta li {
  list-style-type: none;
  display: inline-block;
  margin-right: 12px;
}

.profile-header .user__meta li {
  padding-right: 0;
  border-right: 1px solid #ccc;
  /**
			 * Icons for the meta.
			 */
}

@media (min-width: 37.5em) {
  .profile-header .user__meta li {
    padding-right: 12px;
  }
}

.profile-header .user__meta li.icon__twitter a::before {
  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;
  content: "";
  padding-right: 12px;
}

.profile-header .user__meta li.icon__linkedin a::before {
  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;
  content: "";
  padding-right: 12px;
}

.profile-header .user__meta li.icon__website a::before {
  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;
  content: "";
  padding-right: 0px;
}

@media (min-width: 37.5em) {
  .profile-header .user__meta li.icon__website a::before {
    padding-right: 12px;
  }
}

.profile-header .user__meta li:last-child {
  border-right: 0;
}

.profile-header .user__meta a {
  text-decoration: none;
  color: #666;
  /**
			 * Span wrapped around the text of the <a> tags for so mobile only
			 * shows the font awesome icon.
			 */
}

.profile-header .user__meta a .hide-mobile {
  display: none;
}

@media (min-width: 37.5em) {
  .profile-header .user__meta a .hide-mobile {
    display: inline;
  }
}

.profile-header .user__meta a:hover, .profile-header .user__meta a:focus {
  color: #333;
}

.submitted-assignments {
  margin-bottom: 36px;
}

.submitted-assignments:after, .submitted-assignments:before {
  content: " ";
  display: table;
}

.submitted-assignments:after {
  clear: both;
}

.submissions:after, .submissions:before {
  content: " ";
  display: table;
}

.submissions:after {
  clear: both;
}

.gravatar-description {
  padding-top: 12px;
}

/**
 * Community
 *
 * Community page specific styles.
 */
.community .card:last-child {
  margin-bottom: 24px;
}

/**
 * Profile Builder
 *
 * Holds styles for the Profile Builder powered login and register pages.
 */
.wppb-form-field label,
.wppb-form-field input[type=text],
.wppb-form-field input[type=password],
.wppb-form-field input[type=email],
.wppb-form-field textarea,
.wppb-form-field select {
  width: 100% !important;
  float: none !important;
  padding: 6px;
}

.wppb-user-forms {
  /* Overwrite a default style. */
}

.wppb-user-forms ul,
.wppb-user-forms ol {
  margin-bottom: 0 !important;
}

.wppb-user-forms .wppb-form-field > span,
.wppb-user-forms span.select2-container {
  margin-left: auto;
}

.wppb-user-forms #pass-strength-result {
  float: inherit;
  margin-left: 10px;
}

.wppb-user-forms .login-register-lost-password a {
  display: inline-block;
}

.wppb-user-forms #wppb-submit {
  margin: 0;
  margin-bottom: 24px;
}

.wppb-user-forms .submit {
  margin: 0;
  margin-bottom: 24px;
}

.wppb-user-forms .input {
  max-width: 100%;
  width: 100%;
}

.wppb-user-forms .tml-action-links {
  margin-bottom: 0;
  padding-left: 0;
}

.wppb-user-forms .tml-action-links li {
  list-style-type: none;
  display: inline-block;
  margin-right: 12px;
}

.wppb-user-forms p.forgetmenot label {
  vertical-align: middle;
  display: inline-block;
  width: auto;
  margin-bottom: 0;
}

.wppb-user-forms .wppb-select2 span.select2-container {
  width: 100% !important;
}

#wppb-edit-user-profile .wppb-rc-value {
  display: none;
}

.hbs-default-password.errors {
  color: #F00;
  font-size: .8em;
  clear: both;
}

.hbs-default-password.errors .pass {
  color: green;
}

.hbs-default-password ul {
  list-style: none;
}

.hbs-default-password ul li:before {
  content: '-';
}

.hbs-default-password ul li.pass:before {
  content: '✓';
}

.wppb-user-forms .hbs-default-password ul li {
  padding-bottom: 5px !important;
}

#wppb-register-user .wppb-default-e-mail .wppb-description-delimiter {
  display: none;
}

.wppb-register-user .wppb-required {
  display: none;
}

.wppb-description-delimiter br {
  display: none;
}

.ui-tooltip, .arrow:after {
  background: #48c4b7;
}

.ui-tooltip ul {
  margin-left: 25px;
  font-size: 12px;
}

.ui-tooltip {
  padding: 10px 20px;
  color: white;
  font-size: 14px;
  text-transform: uppercase;
  -webkit-box-shadow: 0 0 7px #48c4b7;
          box-shadow: 0 0 7px #48c4b7;
  max-width: 350px;
}

.arrow {
  background: #48c4b7;
  width: 70px;
  height: 16px;
  overflow: hidden;
  position: absolute;
  left: 50%;
  margin-left: -35px;
  bottom: -16px;
}

.arrow.top {
  top: -16px;
  bottom: auto;
}

.arrow.left {
  left: 20%;
}

.arrow:after {
  content: "";
  position: absolute;
  left: 20px;
  top: -20px;
  width: 25px;
  height: 25px;
  -webkit-box-shadow: 6px 5px 9px -9px #48c4b7;
          box-shadow: 6px 5px 9px -9px #48c4b7;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  tranform: rotate(45deg);
}

.arrow.top:after {
  bottom: -20px;
  top: auto;
}

/*# sourceMappingURL=map/main.css.map */
