@media screen and (max-width: 767px) {
}
@media (min-width: 768px) {
}
.departure .departure-box .find-box .btn {
  padding: 8px 12px;
  font-size: 24px;
  line-height: 1.42857143;
  border-radius: 4px;
}
@media (min-width: 768px) {
}
@media (max-width: 767px) {
}
@media (min-width: 768px) {
}
@media (min-width: 768px) {
}
@media (max-width: 767px) {
}
@media (max-width: 767px) {
}
.embedded-view {
  background-image: none;
  background-color: transparent;
}
.embedded-backend-view {
  background-image: none;
  background-color: transparent;
}
body {
  background-image: url('../images/bg_img.jpg');
  background-attachment: fixed;
  background-size: cover;
  min-height: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
body.state-tromso {
  background-image: url("../images/bg_tromso.jpg");
}
main {
  padding-top: 26px;
  flex: 1 0 auto;
}
main.fixed-footer {
  padding-bottom: 250px;
}
.embedded-view main {
  padding: 0;
}
.embedded-backend-view main {
  padding: 0;
}
.ticket-options-container {
  display: flex;
  justify-content: center;
  align-items: center;
}
.ticket-options-container .alert-danger {
  width: 100%;
}
.embedded-view .ticket-options-container .alert-danger {
  display: none;
}
.ticket-options-container .travel-box {
  padding: 15px;
  padding-top: 10px;
  padding-bottom: 34px;
  background-color: #004F8E;
}
.embedded-view .ticket-options-container .travel-box {
  background-color: rgba(0, 79, 142, 0.8);
}
@media (min-width: 992px) {
  .ticket-options-container .travel-box {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 30px;
    padding-right: 30px;
  }
  .ticket-options-container .travel-box .find-box {
    margin: 0;
  }
}
@media (max-width: 1599px) {
  .ticket-options-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.vertical-center-aligner {
  display: flex;
  align-items: center;
}
.ticket-options-container {
  flex-wrap: wrap;
}
.ticket-options-container .travel-box label {
  line-height: 30px;
  margin: 0;
  color: #fff;
}
.ticket-options-container .travel-box .ticket-option-value {
  height: 53px;
  margin-top: 35px;
}
.ticket-options-container .travel-box .ticket-option-value .apparently-disabled {
  opacity: 0.65;
  background-color: #eeeeee;
}
.ticket-options-container .travel-box label + .ticket-option-value,
.ticket-options-container .travel-box roundtrip-selector + .ticket-option-value {
  margin-top: 5px;
}
.ui-select {
  border: 2px solid #484D51;
}
.ui-select-toggle,
.ui-select-toggle.btn-default {
  padding-left: 0;
  padding-right: 0;
}
.ui-select-choices-content {
  padding-top: 17px;
  padding-bottom: 17px;
  /*margin-top: 3px !important;*/
}
.ui-select-placeholder,
.ui-select-bootstrap .ui-select-choices-row > span {
  color: #aeaeae;
}
.ui-select-search {
  color: #484D51;
}
.ui-select-search,
.ui-select-bootstrap .ui-select-choices-row > span {
  padding-left: 28px;
  text-transform: none;
}
.ui-select-bootstrap .ui-select-choices-row {
  background-color: #363636;
}
.ui-select-bootstrap .ui-select-choices-row > span {
  padding-bottom: 17px;
  padding-top: 17px;
  color: #fff;
  white-space: normal;
}
.ui-select-bootstrap .ui-select-choices-row > span:hover {
  color: #fff;
  background-color: #484D51;
}
.ui-select-bootstrap .ui-select-choices-row.active > span {
  color: #fff;
  background-color: #009ADA;
  font-size: 1.125em;
  text-overflow: ellipsis;
  overflow: hidden;
}
.ui-select-bootstrap .ui-select-choices-row.disabled > span,
.ui-select-bootstrap .ui-select-choices-row.active.disabled > span {
  color: #484D51;
  background-color: #363636;
}
.ui-select-bootstrap .ui-select-match-text {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ui-select-bootstrap > .ui-select-match > .btn {
  /* Instead of left because of ui-select */
  text-align: center !important;
}
.ui-select-bootstrap .ui-select-no-choice span {
  display: inline-block;
  padding: 17px 28px;
  background: #363636;
  color: #fff;
  font-style: italic;
  white-space: pre-line;
}
.ui-select-match-text.pull-left {
  float: none !important;
}
/* class for left alignment */
.ui_select_left {
  /* smaller padding @ xs for ui-select */
}
.ui_select_left .ui-select-bootstrap > .ui-select-match > .btn {
  /* Instead of left because of ui-select */
  text-align: left !important;
}
.ui_select_left .ui-select-match-text,
.ui_select_left .ui-select-placeholder {
  padding-left: 28px;
}
.ui_select_left .ui-select-match-text.pull-left,
.ui_select_left .ui-select-placeholder.pull-left {
  float: left !important;
}
.ui_select_left .ui-select-bootstrap .ui-select-choices-row .fa {
  padding-right: 5px;
  font-size: 24px;
}
.ui_select_left .ui-select-bootstrap .ui-select-choices-row.disabled > span {
  border-top: 1px solid #aeaeae;
}
.ui_select_left .ui-select-bootstrap .ui-select-choices-row.active.disabled > span {
  padding-bottom: 13px;
}
.ui_select_left .ui-select-bootstrap .ui-select-choices-row.active.disabled > span:first-child {
  border-top: 0px;
}
.ui_select_left .ui-select-footer .btn {
  font-size: 16px;
  text-transform: none;
}
.ui_select_left .ui-select-footer .btn .fa {
  padding-right: 5px;
}
.ui_select_left .ui-select-footer .angular-google-map {
  padding: 5px;
}
.ui_select_left .ui-select-footer .angular-google-map .angular-google-map-container {
  height: 400px;
}
@media (max-width: 480px) {
  .ui_select_left .ui-select-match-text,
  .ui_select_left .ui-select-placeholder {
    padding-left: 10px;
  }
}
/* smaller padding @ xs for ui-select
 unset text-overflow:ellipsis -> on mobile browser is unreadable
*/
@media (max-width: 480px) {
  .ui-select-search,
  .ui-select-bootstrap .ui-select-choices-row > span,
  .ui-select-bootstrap .ui-select-no-choice span {
    padding-left: 10px;
    display: inline-block;
  }
  .busStopSelector .ui-select-bootstrap .ui-select-choices-row > span {
    display: block;
  }
  .ui-select-bootstrap .ui-select-match-text {
    text-overflow: unset;
  }
}
@media (max-width: 992px) {
  .ui_select_left-xs {
    /* smaller padding @ xs for ui-select */
  }
  .ui_select_left-xs .ui-select-bootstrap > .ui-select-match > .btn {
    /* Instead of left because of ui-select */
    text-align: left !important;
  }
  .ui_select_left-xs .ui-select-match-text,
  .ui_select_left-xs .ui-select-placeholder {
    padding-left: 28px;
  }
  .ui_select_left-xs .ui-select-match-text.pull-left,
  .ui_select_left-xs .ui-select-placeholder.pull-left {
    float: left !important;
  }
  .ui_select_left-xs .ui-select-bootstrap .ui-select-choices-row .fa {
    padding-right: 5px;
    font-size: 24px;
  }
  .ui_select_left-xs .ui-select-bootstrap .ui-select-choices-row.disabled > span {
    border-top: 1px solid #aeaeae;
  }
  .ui_select_left-xs .ui-select-bootstrap .ui-select-choices-row.active.disabled > span {
    padding-bottom: 13px;
  }
  .ui_select_left-xs .ui-select-bootstrap .ui-select-choices-row.active.disabled > span:first-child {
    border-top: 0px;
  }
  .ui_select_left-xs .ui-select-footer .btn {
    font-size: 16px;
    text-transform: none;
  }
  .ui_select_left-xs .ui-select-footer .btn .fa {
    padding-right: 5px;
  }
  .ui_select_left-xs .ui-select-footer .angular-google-map {
    padding: 5px;
  }
  .ui_select_left-xs .ui-select-footer .angular-google-map .angular-google-map-container {
    height: 400px;
  }
}
@media (max-width: 992px) and (max-width: 480px) {
  .ui_select_left-xs .ui-select-match-text,
  .ui_select_left-xs .ui-select-placeholder {
    padding-left: 10px;
  }
}
.custom-checkbox {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  width: 30px;
  height: 30px;
  background: url(../images/custom-checkbox-v.png) -32px top no-repeat;
  cursor: pointer;
}
.custom-checkbox.checked {
  background: rgba(0, 0, 0, 0) url("../images/custom-checkbox-v.png") no-repeat scroll 0 top;
}
.glyphicon-spin {
  -animation: glyphicon-spin 0.7s infinite linear;
  -webkit-animation: glyphicon-spin2 0.7s infinite linear;
}
@-webkit-keyframes glyphicon-spin2 {
  from {
    -webkit-transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes glyphicon-spin {
  from {
    transform: scale(1) rotate(0deg);
  }
  to {
    transform: scale(1) rotate(360deg);
  }
}
.btn-link.text-left {
  margin-left: -12px;
  text-align: left;
}
/*
 * I would have liked a cleaner way to do this, but right now finding the
 * correct place proved difficult
 */
.custom-radio-button {
  background-repeat: no-repeat;
  background-position: left;
  padding-left: 30px;
  margin-left: 34px;
  display: inline-block;
  background-size: 20px;
}
.custom-radio-button.custom-radio-button-checked {
  background-image: url('../images/custom-radio-button-checked.png');
}
.custom-radio-button.custom-radio-button-unchecked {
  background-image: url('../images/custom-radio-button-unchecked.png');
}
.control-label {
  color: #484D51;
  text-transform: uppercase;
}
.control-label.text-left {
  text-align: left;
}
/**
 * Because iPhone 5 (and possibly some other smaller screens) had trouble with the existing minimum,
 * we have to make these specific adjustments. They are not nice, especially the !important parts,
 * but they are necessary
 */
@media (orientation: portrait) and (max-width: 359px) {
  .departure .btn,
  .departure .dropdown-menu,
  .interchange .btn,
  .interchange .dropdown-menu {
    font-size: 14px;
  }
  .datepicker-inner-container thead th small {
    font-size: 14px !important;
  }
  .datepicker-inner-container .uib-day button {
    font-size: 14px;
    padding: 0px;
    width: 36px !important;
  }
  .ui-select-container .ui-select-search,
  .ui-select-container .dropdown {
    font-size: 14px;
  }
}
@media (orientation: portrait) and (min-width: 360px) and (max-width: 479px) {
  .departure .btn,
  .departure .dropdown-menu,
  .interchange .btn,
  .interchange .dropdown-menu {
    font-size: 16px;
  }
  .ui-select-container .ui-select-search,
  .ui-select-container .dropdown {
    font-size: 16px;
  }
}
.panel.panel-bg-secondary {
  background-color: #363636;
}
.panel.panel-bg-secondary-light {
  background-color: #484D51;
}
.panel.panel-bg-secondary-dark {
  background-color: #292929;
}
.price {
  display: flex;
  align-items: baseline;
}
.price .amount,
.price .currency {
  float: left;
}
.price .amount {
  font-weight: bold;
}
.price .currency {
  margin-left: 3px;
  font-size: .7em;
}
.price.pull-right {
  margin-left: auto;
}
@media (max-width: 991px) {
  .modal {
    -webkit-overflow-scrolling: auto !important;
    overflow-y: auto !important;
  }
  .modal-open {
    position: fixed;
  }
  .modal-body {
    max-height: 80vh;
    overflow-y: scroll;
  }
}
/* the file at styles/company_config/modules/_index.less should reflect the same list of inclusions */
/**
 * Avenir
 */
@font-face {
  font-family: 'avenirblack';
  src: url('../fonts/avenir/avenir-black-webfont.eot');
  src: url('../fonts/avenir/avenir-black-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-black-webfont.woff') format('woff'), url('../fonts/avenir/avenir-black-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-black-webfont.svg#avenirblack') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirblackoblique';
  src: url('../fonts/avenir/avenir-blackoblique-webfont.eot');
  src: url('../fonts/avenir/avenir-blackoblique-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-blackoblique-webfont.woff') format('woff'), url('../fonts/avenir/avenir-blackoblique-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-blackoblique-webfont.svg#avenirblackoblique') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirbook';
  src: url('../fonts/avenir/avenir-book-webfont.eot');
  src: url('../fonts/avenir/avenir-book-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-book-webfont.woff') format('woff'), url('../fonts/avenir/avenir-book-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-book-webfont.svg#avenirbook') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirbookoblique';
  src: url('../fonts/avenir/avenir-bookoblique-webfont.eot');
  src: url('../fonts/avenir/avenir-bookoblique-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-bookoblique-webfont.woff') format('woff'), url('../fonts/avenir/avenir-bookoblique-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-bookoblique-webfont.svg#avenirbookoblique') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirheavy';
  src: url('../fonts/avenir/avenir-heavy-webfont.eot');
  src: url('../fonts/avenir/avenir-heavy-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-heavy-webfont.woff') format('woff'), url('../fonts/avenir/avenir-heavy-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-heavy-webfont.svg#avenirheavy') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirheavyoblique';
  src: url('../fonts/avenir/avenir-heavyoblique-webfont.eot');
  src: url('../fonts/avenir/avenir-heavyoblique-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-heavyoblique-webfont.woff') format('woff'), url('../fonts/avenir/avenir-heavyoblique-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-heavyoblique-webfont.svg#avenirheavyoblique') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirlight';
  src: url('../fonts/avenir/avenir-light-webfont.eot');
  src: url('../fonts/avenir/avenir-light-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-light-webfont.woff') format('woff'), url('../fonts/avenir/avenir-light-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-light-webfont.svg#avenirlight') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirlightoblique';
  src: url('../fonts/avenir/avenir-lightoblique-webfont.eot');
  src: url('../fonts/avenir/avenir-lightoblique-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-lightoblique-webfont.woff') format('woff'), url('../fonts/avenir/avenir-lightoblique-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-lightoblique-webfont.svg#avenirlightoblique') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirmedium';
  src: url('../fonts/avenir/avenir-medium-webfont.eot');
  src: url('../fonts/avenir/avenir-medium-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-medium-webfont.woff') format('woff'), url('../fonts/avenir/avenir-medium-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-medium-webfont.svg#avenirmedium') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirmediumoblique';
  src: url('../fonts/avenir/avenir-mediumoblique-webfont.eot');
  src: url('../fonts/avenir/avenir-mediumoblique-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-mediumoblique-webfont.woff') format('woff'), url('../fonts/avenir/avenir-mediumoblique-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-mediumoblique-webfont.svg#avenirmediumoblique') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'aveniroblique';
  src: url('../fonts/avenir/avenir-oblique-webfont.eot');
  src: url('../fonts/avenir/avenir-oblique-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-oblique-webfont.woff') format('woff'), url('../fonts/avenir/avenir-oblique-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-oblique-webfont.svg#aveniroblique') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'avenirroman';
  src: url('../fonts/avenir/avenir-roman-webfont.eot');
  src: url('../fonts/avenir/avenir-roman-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/avenir/avenir-roman-webfont.woff') format('woff'), url('../fonts/avenir/avenir-roman-webfont.ttf') format('truetype'), url('../fonts/avenir/avenir-roman-webfont.svg#avenirroman') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'LucidaGrande';
  src: url('../fonts/lucida/LucidaGrande.eot');
  src: url('../fonts/lucida/LucidaGrande.woff2') format('woff2'), url('../fonts/lucida/LucidaGrande.woff') format('woff'), url('../fonts/lucida/LucidaGrande.ttf') format('truetype'), url('../fonts/lucida/LucidaGrande.svg#LucidaGrande') format('svg'), url('../fonts/lucida/LucidaGrande.eot?#iefix') format('embedded-opentype');
  font-weight: normal;
  font-style: normal;
}
/**
* HEADER directive
*/
header .navbar {
  min-height: 100px;
  border: none;
}
header .navbar-header {
  height: 100px;
}
header .navbar-collapse .navbar-collapse {
  margin-top: 0;
}
header .brand-logo {
  height: auto;
  padding: 0 0 0 0;
}
header .brand-logo img {
  width: auto;
  height: 45px;
}
header .brand-logo img.mobile {
  width: auto;
  height: 70px;
}
header .navbar-collapse {
  margin-top: 25px;
}
header .navbar-toggle {
  margin-left: auto;
}
header .navbar-nav > li {
  margin-right: 32px;
}
header .navbar-nav .dropdown-menu {
  padding: 0;
}
header .navbar-nav a {
  font-size: 24px;
}
@media (max-width: 767px) {
  header .navbar-nav > li {
    margin-right: 0;
  }
  header .navbar-collapse {
    margin-top: 0;
  }
}
/**
* PAGE TITLE directive
*/
.page-title {
  margin: 20px 0 38px;
}
.page-title .title-box {
  display: table;
  min-height: 63px;
  margin: 0 auto;
  padding-top: 0;
  padding-bottom: 0;
  background-color: #0059b3;
}
.page-title .title-box .title {
  padding: 15px;
  display: table-cell;
  vertical-align: middle;
  color: #fff;
  font-size: 1em;
  text-align: center;
  font-family: inherit;
}
@media (max-width: 768px) {
  .page-title .title-box .title {
    font-size: 1em;
  }
}
.direction-from .page-title .title-box {
  background-color: #292929;
}
ticket-cart-sum {
  display: table;
  width: 100%;
}
.ticket-total-row {
  line-height: 50px;
  padding-top: 15px;
}
.ticket-total-row .amount {
  font-size: 24px;
}
.ticket-total-table {
  display: table;
}
.ticket-total-table .ticket-cart-label,
.ticket-total-table .ticket-cart-sum-label,
.ticket-total-table .ticket-cart-price,
.ticket-total-table .ticket-cart-sum-price,
.ticket-total-table .ticket-cart-buy {
  display: table-cell;
  vertical-align: middle;
}
.ticket-total-table .ticket-cart-label,
.ticket-total-table .ticket-cart-sum-label {
  color: #484D51;
  text-transform: none;
}
.ticket-cart-panel .panel {
  border-color: #0059b3;
}
.ticket-cart-panel .panel-body {
  padding-top: 0;
}
.ticket-cart-panel .panel-primary .panel-body {
  padding-top: 15px;
}
.ticket-cart-panel .info-box {
  display: table;
}
.ticket-cart-panel .info-box .glyphicon-info-sign,
.ticket-cart-panel .info-box .info-text {
  display: table-cell;
  vertical-align: middle;
}
.ticket-cart-panel .info-box .glyphicon-info-sign {
  font-size: 1em;
  padding: 15px;
  padding-left: 0;
}
.direction-from .ticket-cart-panel .panel {
  border-color: #484D51;
}
.busStopSelector {
  position: relative;
}
.busStopSelector .caret {
  display: none;
}
.busStopSelector .search-icon {
  font-size: 24px;
  right: 12px;
  top: 14.5px;
  color: #009ADA;
  position: absolute;
  z-index: 100;
}
.busStopSelector .search-click-button {
  cursor: pointer;
}
.busStopSelector .result-header,
.busStopSelector .fa {
  font-size: 18px;
}
@media only screen and (min-width: 767px) {
  .bonus-selector .bonus-selector-toggle {
    padding: 10px;
  }
}
.bonus-selector .bonus-selector-toggle {
  margin-top: 7px !important;
  margin-left: -25px !important;
  display: block;
  float: left;
  /* Double-sized Checkboxes */
  -ms-transform: scale(2);
  /* IE */
  -moz-transform: scale(2);
  /* FF */
  -webkit-transform: scale(2);
  /* Safari and Chrome */
  -o-transform: scale(2);
  /* Opera */
  -moz-transform-origin: top left;
  -o-transform-origin: top left;
  -webkit-transform-origin: top left;
  backface-visibility: hidden;
  background-color: #fff;
  border-radius: 0;
  cursor: pointer;
  outline: none;
}
.bonus-selector .bonus-item {
  margin-bottom: 10px;
}
.bonus-selector .nrw-rw-img {
  width: 83px;
  margin: -8px 8px 0 8px;
  display: block;
  cursor: pointer;
  float: left;
}
.bonus-selector .eu-img {
  width: 83px;
  height: 51px;
  margin: -8px 8px 0 8px;
  display: block;
  cursor: pointer;
  float: left;
}
.bonus-selector .earn_points_text {
  display: block;
  float: right;
  color: #484D51;
}
.bonus-selector .btn-bonus {
  position: relative;
  top: -13px;
  padding: 11px;
}
.departure .find-box {
  padding-left: 0;
  padding-bottom: 0;
}
.departure .roundtrip-selector {
  padding: 0;
}
.departure .roundtrip-selector small {
  font-size: 13px;
}
.departure .roundtrip-selector input {
  margin-right: 12px;
}
.departure .roundtrip-selector .custom-checkbox {
  background: rgba(0, 0, 0, 0) url(../images/custom-checkbox-v2.png) -18px top no-repeat;
  width: 18px;
  height: 18px;
  margin-top: 6px;
}
.departure .roundtrip-selector .checked {
  background: rgba(0, 0, 0, 0) url(../images/custom-checkbox-v2.png) no-repeat scroll 0 top;
}
.departure .departure-box .time-box span {
  vertical-align: middle;
  top: 0;
}
@media (min-width: 992px) {
  .departure .departure-box .from-stop-box {
    padding: 0;
  }
  .departure .departure-box .to-stop-box {
    padding: 0;
  }
  .departure .departure-box .date-box {
    padding: 0;
  }
  .departure .departure-box .date-to-box {
    padding: 0;
  }
  .departure .departure-box .time-box {
    padding: 0;
  }
  .departure .departure-box .fees-box {
    padding: 0;
  }
  .departure .departure-box .find-box {
    padding: 0;
    padding-left: 16px;
  }
  .departure .departure-box .find-box .btn {
    font-size: 1em;
  }
}
@media (max-width: 992px) {
  .departure .departure-box {
    padding-bottom: 15px !important;
  }
  .departure .departure-box .from-stop-box {
    padding-bottom: 5px !important;
  }
  .departure .departure-box .to-stop-box {
    padding-bottom: 5px !important;
  }
  .departure .departure-box .date-box {
    padding-right: 0;
    padding-bottom: 5px !important;
  }
  .departure .departure-box .time-box {
    padding-left: 0;
    padding-bottom: 5px !important;
  }
  .departure .departure-box .fees-box {
    padding-bottom: 5px !important;
  }
  .departure .departure-box .find-box {
    padding: 0;
  }
}
.departure departure-direction-selector {
  padding-left: 0;
  padding-right: 0;
}
.departure departure-direction-selector .departure-box.travel-box {
  justify-content: left;
  padding: 30px 0 0 0 !important;
}
.interchange .travel-box {
  border-top: 1px solid #006bc1;
}
@media (min-width: 992px) {
  .interchange .travel-box .city-box,
  .interchange .travel-box .from-airport-box,
  .interchange .travel-box .date-box,
  .interchange .travel-box .time-box {
    padding: 0;
  }
  .interchange .travel-box .time-box {
    padding-right: 15px;
  }
}
@media (max-width: 992px) {
  .interchange .travel-box {
    padding-top: 30px !important;
  }
  .interchange .travel-box .from-airport-box {
    padding: 15px;
    text-align: left;
  }
  .interchange .travel-box .date-box {
    padding-right: 0;
  }
  .interchange .travel-box .time-box {
    padding-left: 0;
  }
}
.ticket-details-container {
  padding-top: 25px;
}
.ticket-details-container .ticket-detail-departures {
  padding-bottom: 15px;
}
.direction-to .ticket-details-confirm-container .modal-body {
  color: #0059b3;
}
.direction-from .ticket-details-confirm-container .modal-body {
  color: #292929;
}
.wait-for-payment-dialog .modal-body {
  padding: 2em;
}
.wait-for-payment-dialog .hint {
  margin-left: 2em;
}
.payment-failed-dialog .modal-body {
  padding: 2em;
}
.available-seats-check-pending-dialog .modal-body {
  padding: 2em;
}
.available-seats-check-pending-dialog .hint {
  margin-left: 2em;
}
.available-seats-check-result-dialog .modal-body {
  padding: 2em;
}
.currency {
  margin-left: 3px;
  font-size: 0.7em;
}
hr {
  margin-bottom: 15px;
}
.departure-time-list {
  color: #484D51;
}
.departure-time-list .ticket-departure-time-title {
  text-transform: uppercase;
}
.departure-time-list .departure-toggle-button {
  text-transform: none;
}
.departure-time-list .ticket-departure-time-row {
  line-height: 30px;
}
.departure-time-list h3 {
  color: #009ADA;
  margin-top: 0;
  margin-bottom: 15px;
  font-size: 16px;
}
.direction-from .departure-time-list h3 {
  color: #363636;
}
.timeSelector .caret {
  display: none;
}
.timeSelector .ui-select-match-text {
  color: #484D51;
  padding: 0px;
}
.timeSelector .dropdown-menu {
  min-width: 100%;
  text-align: center;
}
.timeSelector .dropdown-menu .ui-select-choices-row-inner {
  padding-left: 0;
  padding-right: 0;
}
.feeDropdown {
  /* smaller padding @ xs for ui-select */
}
.feeDropdown .dropdown-toggle {
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-left: 28px;
}
.feeDropdown .dropdown-menu {
  margin-top: -2px;
  min-width: 450px;
}
@media (max-width: 480px) {
  .feeDropdown .dropdown-toggle {
    padding-left: 10px;
  }
}
@media (max-width: 992px) {
  .feeDropdown .dropdown-menu {
    width: 100%;
    min-width: 100%;
  }
}
.feeDropdown button.ng-invalid {
  border-color: #ee1c25;
  background-color: #f2dede;
}
.dropdown-menu .fee-selector {
  padding-left: 12px;
  padding-right: 12px;
}
.fee-selector .title-box {
  background-color: #0059b3;
  color: #fff;
}
.fee-selector .title-box .title {
  padding: 10px 15px;
}
.fee-selector .fee-table {
  text-transform: none;
  display: table;
  width: 100%;
}
.fee-selector .fee-table .fee-table-row {
  display: table-row;
}
.fee-selector .fee-table .fee-category-header {
  color: #000;
  cursor: pointer;
}
.fee-selector .fee-table .fee-category-header .fee-table-cell {
  padding-bottom: 1px;
}
.fee-selector .fee-table .fee-category-header .glyphicon {
  font-size: .7em;
}
.fee-selector .fee-table .fee-category-group {
  display: table-row-group;
}
.fee-selector .fee-table .fee-category-group.collapse {
  display: none;
}
.fee-selector .fee-table .fee-category-group.collapse.in {
  display: table-row-group;
}
.fee-selector .fee-table .fee-table-cell {
  display: table-cell;
  vertical-align: middle;
  padding-bottom: 15px;
}
.fee-selector .header-box {
  color: #fff;
  text-transform: capitalize;
  margin-bottom: 10px;
  margin-top: 10px;
}
.fee-selector .fee-col-text {
  color: #fff;
  font-size: 1em;
  padding-right: .5em;
  word-break: break-all;
}
.fee-selector .fee-col-text.selected {
  color: #fff;
  font-weight: bold;
}
.fee-selector .fee-col-text .currency {
  font-weight: normal;
}
.fee-selector .fee-price {
  text-align: right;
  word-break: normal;
}
.fee-selector .fee-price.title {
  padding-right: 2em;
}
.fee-selector .fee-seats.title {
  padding-right: .5em;
}
.fee-selector .fee-col-button-minus {
  padding-right: 5px;
}
.fee-selector .fee-col-button-minus,
.fee-selector .fee-col-button-plus {
  width: 1%;
}
@media (max-width: 480px) {
  .fee-selector {
    padding: 0;
  }
  .fee-selector .fee-col-text {
    font-size: 0.9em;
  }
}
/**
 * Login-specific styles
 */
.user-login-container form {
  margin: 0;
}
/**
 * Signup-specific styles
 */
.user-sign-up-container form {
  margin: 0;
}
.user-sign-up-container .modal-footer > a {
  padding-top: 13px;
  color: #333;
  vertical-align: bottom;
  text-decoration: underline;
}
/**
 * Ticket-specific styles
 */
.user-tickets-container {
  background-color: #f2f2f2;
  padding: 35px;
  margin-bottom: 0;
  /* change tables stripped accent order */
}
.user-tickets-container .table-responsive {
  margin-bottom: 0;
}
.user-tickets-container .table-striped > tbody > tr:nth-child(2n+1) > td {
  background-color: #f2f2f2;
}
.user-tickets-container .table-striped > tbody > tr:nth-child(2n) > td {
  background-color: #dfdfdf;
}
@media (max-width: 991px) {
  .user-tickets-container .table {
    margin-bottom: 12px;
  }
}
.user-tickets-container .table .ticket-explanation {
  padding: 0;
}
.user-tickets-container .table .ticket-explanation button {
  border: none;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}
.user-tickets-container .table thead th {
  text-transform: uppercase;
  font-weight: normal;
  padding-left: 15px;
}
.user-tickets-container .table thead th a:hover {
  text-decoration: none;
}
.user-tickets-container .table thead th .glyphicon {
  font-size: 0.8em;
}
.user-tickets-container .table tbody tr td {
  vertical-align: middle;
  padding-left: 15px;
}
.user-tickets-container .table tbody tr td .currency {
  margin-left: 3px;
  font-size: 0.7em;
}
/**
 * Profile-specific styles
 */
.user-profile-container {
  padding-bottom: 20px;
  margin: 40px auto 0;
}
.user-profile-container .control-label {
  text-align: left;
}
.user-profile-container .anonymize-user {
  margin-left: 20px;
  /* To get some space between the "Profile" title and the "forget me" button */
  padding-right: 0;
  /* To avoid the (i) button getting too far away */
}
.user-profile-container .anonymize-user-info {
  padding-left: 0;
  /* To avoid the (i) button getting too far away from the "forget me" button */
}
@media (min-width: 992px) {
  .user-profile-container .user-profile {
    padding-left: 20%;
    padding-right: 20%;
  }
}
@media (max-width: 991px) {
  .user-profile-container .user-profile {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.airportSelect {
  position: relative;
  padding: 0px;
}
.airportSelect .caret {
  display: none;
}
.airportSelect .airport-clear-icon {
  font-size: 18px;
  right: 12px;
  top: 17.5px;
  color: #009ADA;
  position: absolute;
  z-index: 100;
}
.airportSelect .airport-clear-button {
  cursor: pointer;
}
.date-selector .uib-datepicker {
  position: relative;
}
.date-selector .uib-datepicker input[type=text] {
  background-color: #fff;
}
.date-selector .uib-datepicker .datepicker-display-value {
  text-transform: none;
}
.date-selector .uib-datepicker .datepicker-display-value.placeholder {
  color: #aeaeae;
}
.date-selector .uib-datepicker .datepicker-display-value.ng-invalid {
  border-color: #ee1c25;
  background-color: #f2dede;
}
.date-selector .uib-datepicker .datepicker-inner-container {
  display: none;
  left: 0;
  background-color: #fff;
  color: #484D51;
  padding-bottom: 0;
  padding-top: 0;
}
.date-selector .uib-datepicker .datepicker-inner-container.datepicker-visible {
  display: block;
}
.embedded-view .date-selector .uib-datepicker .datepicker-inner-container {
  position: absolute;
  top: -159px;
}
.date-selector .uib-datepicker .datepicker-inner-container .datepicker-header-box {
  text-transform: none;
  padding: 0 10px 5px;
}
.date-selector .uib-datepicker .datepicker-inner-container .datepicker-header-box button {
  margin-left: auto;
}
.date-selector .uib-datepicker .datepicker-inner-container .datepicker-title-box {
  text-transform: none;
  padding: 0 0 13px;
  text-align: center;
  color: #484D51;
}
.date-selector .uib-datepicker .datepicker-inner-container .datepicker-title-box button {
  margin-top: -7px;
}
.date-selector .uib-datepicker .datepicker-inner-container .datepicker-days-box {
  padding: 5px;
  background-color: #363636;
}
.date-selector .uib-datepicker .datepicker-inner-container table thead th {
  text-align: center;
}
.date-selector .uib-datepicker .datepicker-inner-container table thead small {
  text-transform: capitalize;
  color: #fff;
  font-weight: normal;
  font-size: 16px;
}
.date-selector .uib-datepicker .datepicker-inner-container table .uib-day button {
  opacity: 1;
  color: #fff;
  background-color: #363636;
  border-style: solid;
  border-color: #363636;
  border-width: 0 3px;
  width: 44px;
  height: 44px;
}
.date-selector .uib-datepicker .datepicker-inner-container table .uib-day button.active {
  box-shadow: none;
}
.date-selector .uib-datepicker .datepicker-inner-container table .uib-day button.disabled {
  opacity: .35;
  cursor: not-allowed;
}
.date-selector .uib-datepicker .datepicker-inner-container table .uib-day button.past-month,
.date-selector .uib-datepicker .datepicker-inner-container table .uib-day button.future-month {
  opacity: .65;
}
.date-selector .uib-datepicker .datepicker-inner-container table .uib-day button.from-date {
  background-color: #0059b3;
  border-right-color: #0059b3;
  border-left-color: #009ADA;
  color: #fff;
}
.date-selector .uib-datepicker .datepicker-inner-container table .uib-day button.to-date {
  background-color: #0059b3;
  border-left-color: #0059b3;
  border-right-color: #009ADA;
  color: #fff;
}
.date-selector .uib-datepicker .datepicker-inner-container table .uib-day button.to-date.from-date {
  background-image: -webkit-linear-gradient(left, #0059b3 0%, #0059b3 100%);
  background-image: -o-linear-gradient(left, #0059b3 0%, #0059b3 100%);
  background-image: linear-gradient(to right, #0059b3 0%, #0059b3 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0059b3', endColorstr='#ff0059b3', GradientType=1);
  border-left-color: #009ADA;
}
.interchange-tickets .ticket-order-lines {
  margin-top: 13px;
}
.ticket-order-lines > div {
  min-height: 30px;
}
.ticket-order-lines .stops-table {
  display: table;
  padding-bottom: 15px;
}
.ticket-order-lines .stops-table .stops-row {
  display: table-row;
}
.ticket-order-lines .stops-table .stop-label,
.ticket-order-lines .stops-table .stop-name {
  display: table-cell;
  text-transform: none;
}
.ticket-order-lines .stops-table .stop-label {
  color: #484D51;
  padding-right: 1em;
}
.ticket-order-lines .stops-table .stop-name {
  font-weight: bold;
}
.ticket-order-lines .stops-table .stop-name.ng-invalid {
  color: #a94442;
}
.ticket-order-lines .fees-table {
  display: table;
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 13px;
}
.ticket-order-lines .fees-table .ticket-order-line-row {
  height: 35px;
  display: table-row;
}
.ticket-order-lines .fees-table .ticket-order-line-row:first-child {
  border-top: 1px solid #004F8E;
}
.ticket-order-lines .fees-table .ticket-order-line-row:last-child {
  border-bottom: 1px solid #004F8E;
}
.ticket-order-lines .fees-table .ticket-order-line-row + .ticket-order-line-row {
  padding-top: 5px;
}
.ticket-order-lines .fees-table .ticket-order-lines-fee,
.ticket-order-lines .fees-table .fee-price,
.ticket-order-lines .fees-table .fee-count,
.ticket-order-lines .fees-table .fee-edit {
  display: table-cell;
  vertical-align: middle;
  width: 10%;
}
.ticket-order-lines .fees-table .ticket-order-lines-fee {
  text-transform: none;
  width: auto;
  padding-right: .5em;
  line-height: initial;
}
.ticket-order-lines .fees-table .fee-count,
.ticket-order-lines .fees-table .fee-edit {
  width: 3%;
}
.ticket-order-lines .fees-table .fee-count,
.ticket-order-lines .fees-table .fee-edit,
.ticket-order-lines .fees-table .price {
  padding-left: .5em;
}
.ticket-order-lines .ticket-order-line-transfer-trip,
.ticket-order-lines .ticket-order-line-return-trip {
  color: #aeaeae;
}
.ticket-order-lines .ticket-order-line-remove-fee {
  color: #ee1c25;
  padding: 0;
}
.ticket-order-lines .ticket-order-line-remove-fee > span {
  top: -1px;
}
.ticket-confirm .fee-count {
  width: 10% !important;
}
.payment-methods-list .panel-heading {
  background-color: #0059b3;
  color: #fff;
}
.payment-methods-list .panel-default {
  background-color: #0059b3;
  border-bottom: 1px solid #009ADA;
  color: #fff;
}
.payment-methods-list .panel-open {
  background-color: #004F8E;
}
.payment-methods-list .panel-default > .panel-heading + .panel-collapse > .panel-body {
  border: 0;
}
.payment-methods-list .help-block {
  color: #fff;
}
.payment-methods-list .accordion-toggle .text-muted {
  color: inherit;
}
.direction-from .payment-methods-list .panel-heading {
  background-color: #292929;
  border-bottom: 1px solid #363636;
}
.direction-from .payment-methods-list .panel-open {
  background-color: #484D51;
}
.direction-from .ticket-order-lines .fees-table .ticket-order-line-row:first-child {
  border-top: 1px solid #484D51;
}
.direction-from .ticket-order-lines .fees-table .ticket-order-line-row:last-child {
  border-bottom: 1px solid #484D51;
}
.routeSelector {
  margin: 0 auto;
  width: auto;
}
.routeSelector .route-direction-header a {
  background-color: #484D51;
  color: #333;
  float: left;
  width: 50%;
  margin: 0;
  padding: 10px 0;
  text-align: center;
}
.routeSelector .route-direction-header a.active-tab {
  background-color: #009ADA;
}
.routeSelector .route-toggle-button {
  padding: 13px 0;
}
.routeSelectorTab {
  max-height: 700px;
  overflow-y: auto;
}
.routeSelectorTab p {
  margin: 0;
}
.routeSelectorTab .route-date {
  background-color: #fff;
  color: #484D51;
  padding-left: 15px;
  clear: both;
  padding-top: 7px;
  padding-bottom: 7px;
}
.routeSelectorTab .route-row {
  clear: both;
  cursor: pointer;
}
.routeSelectorTab .route-row p {
  background-color: #363636;
  color: #fff;
  padding: 15px;
}
.routeSelectorTab .route-row p.active-route {
  background-color: #009ADA;
}
.routeSelectorTab .route-row .route-stage:nth-of-type(n+2) {
  border-top: 1px solid #999;
}
.routeSelectorTab .route-row .route-line {
  color: #fff;
  background-color: #484D51;
  padding: 5px 0;
}
.route-selector-panel .panel {
  border-color: #009ADA;
}
.route-selector-panel .panel-body {
  padding: 0;
}
/**
* FOOTER directive
*/
footer .footer {
  color: #fff;
  background-color: #0059b3;
  padding: 13px;
}
footer .footer .text-left {
  padding: 5px;
}
footer .footer .text-left a {
  padding-right: 32px;
}
footer .footer .footer-item {
  padding: 5px;
}
footer .footer .glyphicon {
  color: #009ADA;
  padding-right: 5px;
}
@media (min-width: 767px) {
  footer .right-box-with-border {
    border-left: 1px solid #484D51;
  }
  footer .right-box-with-border .right-box-content {
    text-align: left;
    float: right;
  }
  footer .right-box {
    text-align: left;
    float: right;
  }
  footer .middle-box {
    text-align: left;
  }
  footer .left-box {
    text-align: left;
    padding-right: 32px;
  }
}
.passenger-details-container {
  /* Remove controls from Firefox */
}
.passenger-details-container form {
  margin: 0;
}
.passenger-details-container input[type=number]::-webkit-inner-spin-button,
.passenger-details-container input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.passenger-details-container input[type=number] {
  -moz-appearance: textfield;
}
.passenger-details-container .help-block {
  font-size: 15px;
}
@media (max-width: 480px) {
  .passenger-details-container label {
    margin-top: 5px;
  }
}
.card-payment-fields .card-accept {
  margin: 1em 2em;
}
.masterpass-payment-fields .masterpass-logo {
  margin: 1em 2em;
}
.masterpass-payment-fields .masterpass-learn-more {
  margin: 0;
}
.masterpass-payment-fields .masterpass-learn-more a {
  color: #fff;
  text-decoration: none;
}
.messages {
  height: 0;
  text-indent: 20px;
  padding: 0 30px;
  font-size: 14px;
  cursor: pointer;
  flex: 0 0 auto;
}
.messages .center {
  margin: 5px;
  cursor: initial;
}
.messages span > span {
  display: block;
  text-align: left;
}
.messages.loaded {
  height: 30px;
}
.messages.updated {
  height: auto;
}
/**
* cookieInfo directive
*/
.cookie-info .cookie-info-container {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 25px;
}
.cookie-info .cookie-info-container button {
  text-transform: capitalize;
}
.tromso-ticket .tromso-ticket-box {
  flex-wrap: wrap;
  font-weight: bold;
}
@media (min-width: 768px) {
  .tromso-ticket .tromso-ticket-box.travel-box {
    padding-left: 190px !important;
    background-repeat: no-repeat;
    background-position: 20px center;
    background-size: 150px;
    background-image: url("../images/tromso_ticket_illustration.png");
  }
  .tromso-ticket .tromso-ticket-box .productSelector .btn-input {
    border-right: 0;
  }
}
.tromso-ticket .tromso-ticket-box h1 {
  margin: 0;
  font-size: 24px;
  font-weight: bold;
}
.tromso-ticket .tromso-ticket-box a {
  text-decoration: underline;
}
.tromso-ticket .tromso-ticket-box fee-panel,
.tromso-ticket .tromso-ticket-box product-selector {
  padding: 0;
}
.tromso-ticket .tromso-ticket-box .ticket-options-box {
  padding: 0;
}
.tromso-ticket .tromso-ticket-box .productSelector .btn-input,
.tromso-ticket .tromso-ticket-box .feeDropdown .btn-input {
  color: #000000;
}
.tromso-ticket .tromso-ticket-box ticket-cart-sum {
  padding: 0 20px;
  line-height: 50px;
}
.tromso-ticket .tromso-ticket-box ticket-cart-sum .ticket-cart-sum-label,
.tromso-ticket .tromso-ticket-box ticket-cart-sum .ticket-cart-sum-price,
.tromso-ticket .tromso-ticket-box ticket-cart-sum .ticket-cart-buy {
  display: table-cell;
  vertical-align: middle;
}
.tromso-ticket .tromso-ticket-box ticket-cart-sum .amount,
.tromso-ticket .tromso-ticket-box ticket-cart-sum .currency {
  font-size: 24px;
}
.tromso-ticket .tromso-ticket-box ticket-cart-sum .price {
  height: 50px;
}
.tromso-ticket .tromso-ticket-box ticket-cart-sum .ticket-cart-label {
  color: #000000;
}
.tromso-ticket .tromso-ticket-box .ticket-purchase-button {
  height: 50px;
  padding-right: 0;
}
.tromso-ticket .tromso-ticket-box > .col-xs-12 {
  margin-top: 20px;
}
.wait-for-redirect-dialog .modal-body {
  padding: 2em;
}
.wait-for-redirect-dialog .link {
  margin-left: 4em;
  margin-top: 0.5em;
}
.control-label {
  text-transform: none;
}
body {
  background-size: cover;
}
main {
  padding-top: 0;
}
.embedded-view .ticket-options-container .alert-danger {
  display: none;
}
.embedded-view .ticket-options-container .travel-box {
  background-color: transparent;
}
@media (min-width: 992px) {
  .ticket-options-container .travel-box label {
    padding-left: 12px;
  }
}
header .brand-logo {
  padding-left: 45px;
}
header .navbar-nav a {
  font-size: 1em;
}
.page-title {
  margin: auto;
}
.page-title .title-box {
  min-height: initial;
  margin: 0;
}
.page-title .title-box .title {
  padding: 15px 12px;
  text-align: left;
}
@media (max-width: 992px) {
  .departure .departure-box {
    padding-top: 25px;
    padding-bottom: 35px !important;
  }
}
.fee-selector .fee-col-text .currency {
  font-weight: normal;
}
footer .footer {
  background-color: #363636;
}
footer .footer a {
  color: #fff;
}
footer .footer span {
  font-weight: 200;
}
footer .footer .glyphicon {
  padding-right: 10px;
}
footer .footer .glyphicon.glyphicon-earphone {
  padding-right: 5px;
}
@media (min-width: 767px) {
  footer .right-box {
    border-left-color: #484D51;
  }
}
