@font-face {
  font-family: "Franklin Condensed";
  src: url(/static/fonts/itc_fr_g_s-bkcd.woff2?c309b71301af447af71b6374761cc1a7) format("woff2"), url(/static/fonts/itc_fr_g_s-bkcd.woff?aaf3bb37beaf64fb803ab1fce852b697) format("woff"), url(/static/fonts/itc_fr_g_s-bkcd.otf?d6a905d194faa1cff421d85970b93ce7) format("opentype");
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Franklin Condensed";
  src: url(/static/fonts/itc_fr_g_s-mdcd.woff2?7a23b4a465db4ca7fffa3b4c2b70ff46) format("woff2"), url(/static/fonts/itc_fr_g_s-mdcd.woff?8cb077f5a2ffcfee91741c7d5313e15b) format("woff"), url(/static/fonts/itc_fr_g_s-mdcd.otf?28a8e77e67d34164a7266d07b864f8b1) format("opentype");
  font-style: normal;
  font-weight: 500;
}
@font-face {
  font-family: "Franklin Condensed";
  src: url(/static/fonts/itc_fr_g_s-dmcd.woff2?3615ddbed0205367e72695cd18ac57ab) format("woff2"), url(/static/fonts/itc_fr_g_s-dmcd.woff?216bf2d3f9ff6da553d4ecd01a77c491) format("woff"), url(/static/fonts/itc_fr_g_s-dmcd.otf?903100717e07c0bc95631072ccafa39d) format("opentype");
  font-style: normal;
  font-weight: 600;
}
@font-face {
  font-family: "Franklin Condensed";
  src: url(/static/fonts/itc_fr_g_s-dmcdit.woff2?133cce83c42f5a8c0f592e87b9581e19) format("woff2"), url(/static/fonts/itc_fr_g_s-dmcdit.woff?706d1981db71363e406907c11173e454) format("woff"), url(/static/fonts/itc_fr_g_s-dmcdit.otf?2631364e5090be116ba4b94c7e013a4b) format("opentype");
  font-style: italic;
  font-weight: 600;
}
@font-face {
  font-family: "Franklin Condensed";
  src: url(/static/fonts/itc_fr_g_s-bkcdit.woff2?3642157aa45ac9ef1ec24f30e7ea3051) format("woff2"), url(/static/fonts/itc_fr_g_s-bkcdit.woff?776ef66c78bdb8a3b43998de55e4c8bf) format("woff"), url(/static/fonts/itc_fr_g_s-bkcdit.otf?ce40a2d30b0261ab452ff8d542ca4fa6) format("opentype");
  font-style: italic;
  font-weight: 400;
}
@font-face {
  font-family: "Franklin Compressed";
  src: url(/static/fonts/itc_fr_g_s-bkcp.woff2?dc6cfc33e7162e64e2d66a2aa1b9eb47) format("woff2"), url(/static/fonts/itc_fr_g_s-bkcp.woff?4869217c4d87ccef5f441cf34ed7a180) format("woff"), url(/static/fonts/itc_fr_g_s-bkcp.otf?4330df12581877f339d4c93021908b9f) format("opentype");
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Franklin Compressed";
  src: url(/static/fonts/itc_fr_g_s-dmcp.woff2?8c7b91e9dd7f4b65339a178721104a80) format("woff2"), url(/static/fonts/itc_fr_g_s-dmcp.woff?0d258f3ee38744de935c05d678039411) format("woff"), url(/static/fonts/itc_fr_g_s-dmcp.otf?27bf28f4591f58a3ac536d7c9cb03bc9) format("opentype");
  font-style: normal;
  font-weight: 600;
}
@font-face {
  font-family: "Franklin Compressed";
  src: url(/static/fonts/itc_fr_g_s-bkcpit.woff2?9911fb93b95db5d3c37d30d2a45c7887) format("woff2"), url(/static/fonts/itc_fr_g_s-bkcpit.woff?032b5ee1b9c55be75c99eb86212a096d) format("woff"), url(/static/fonts/itc_fr_g_s-bkcpit.otf?ce41f1c8c24bbac532d816d4fa4ea6f1) format("opentype");
  font-style: italic;
  font-weight: 400;
}
@font-face {
  font-family: "Franklin Compressed";
  src: url(/static/fonts/itc_fr_g_s-dmcpit.woff2?97b22978079a00d85ada85d5da9a822b) format("woff2"), url(/static/fonts/itc_fr_g_s-dmcpit.woff?476506de23b7b25654ae455b4ec82a8f) format("woff"), url(/static/fonts/itc_fr_g_s-dmcpit.otf?34958fd9f38d735b65bede4db8b6440d) format("opentype");
  font-style: italic;
  font-weight: 600;
}
@font-face {
  font-family: "Franklin Extra Compressed";
  src: url(/static/fonts/itc_fr_g_s-bkxcp.woff2?868abb6404791e03ed91ca2a5c83cf99) format("woff2"), url(/static/fonts/itc_fr_g_s-bkxcp.woff?6a211508572c4ab9a858eee908624065) format("woff"), url(/static/fonts/itc_fr_g_s-bkxcp.otf?1ed03b3cd861cfc2b6dd246b695ee94b) format("opentype");
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Franklin Extra Compressed";
  src: url(/static/fonts/itc_fr_g_s-dmxcp.woff2?35b393229077f4aab8518c8549a5d82b) format("woff2"), url(/static/fonts/itc_fr_g_s-dmxcp.woff?56510a75cceacc02538208abc18d5d49) format("woff"), url(/static/fonts/itc_fr_g_s-dmxcp.otf?326bcb3f634252d9d61cc9bebe94dceb) format("opentype");
  font-style: normal;
  font-weight: 600;
}
@font-face {
  font-family: "Franklin";
  src: url(/static/fonts/itc_fr_g_s-book.woff2?4a861168378399adfc10d325d4413606) format("woff2"), url(/static/fonts/itc_fr_g_s-book.woff?b8000ee94b8903b5aae9ba3996a6743b) format("woff"), url(/static/fonts/itc_fr_g_s-book.otf?c082db72b6ea78127d5b25db7494a6d6) format("opentype");
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Franklin";
  src: url(/static/fonts/itc_fr_g_s-med.woff2?e37aff32b09b8876db0b4fda02a284ea) format("woff2"), url(/static/fonts/itc_fr_g_s-med.woff?bfefaffded501af0371371dafa0aea65) format("woff"), url(/static/fonts/itc_fr_g_s-med.otf?8fcde51aac4dec77895be52c43f4bdea) format("opentype");
  font-style: normal;
  font-weight: 500;
}
@font-face {
  font-family: "Franklin";
  src: url(/static/fonts/itc_fr_g_s-demi.woff2?4af74fd1f86f4235edc74c238ee8b9e2) format("woff2"), url(/static/fonts/itc_fr_g_s-demi.woff?e14d88705d3880e4133d10902a668bd3) format("woff"), url(/static/fonts/itc_fr_g_s-demi.otf?b91c1f5d9d639c6c07966858637ec780) format("opentype");
  font-style: normal;
  font-weight: 600;
}
@font-face {
  font-family: "Franklin";
  src: url(/static/fonts/itc_fr_g_s-hvy.woff2?537e201a3e90273be2869e5e2e99d22e) format("woff2"), url(/static/fonts/itc_fr_g_s-hvy.woff?c01c93cf8539928b209a2d91e0fe2c3c) format("woff"), url(/static/fonts/itc_fr_g_s-hvy.otf?db0bda8e09e9ac3f4ef893e97b5c128d) format("opentype");
  font-style: normal;
  font-weight: 700;
}
@font-face {
  font-family: "Franklin";
  src: url(/static/fonts/itc_fr_g_s-bookit.woff2?b027c514652ed6b3e4a84464b80ee68a) format("woff2"), url(/static/fonts/itc_fr_g_s-bookit.woff?abd9bb3c574fe5d91c8161a81f625ce6) format("woff"), url(/static/fonts/itc_fr_g_s-bookit.otf?94e7912d69d5e5131bf09e9e3fe78da3) format("opentype");
  font-style: italic;
  font-weight: 400;
}
@font-face {
  font-family: "Franklin";
  src: url(/static/fonts/itc_fr_g_s-medit.woff2?e4ab5d44bd3377540df13bebd74ebae8) format("woff2"), url(/static/fonts/itc_fr_g_s-medit.woff?ec63e0f2fdaae3b9d5ed8d6ffc9ef121) format("woff"), url(/static/fonts/itc_fr_g_s-medit.otf?e97209c602dd262c11190bbeb8d7b1e6) format("opentype");
  font-style: italic;
  font-weight: 500;
}
@font-face {
  font-family: "Franklin";
  src: url(/static/fonts/itc_fr_g_s-demiit.woff2?1739d9fd4d352de454aef67cbc1ebd76) format("woff2"), url(/static/fonts/itc_fr_g_s-demiit.woff?aa0e4627a5609e6fc199bd14095b9515) format("woff"), url(/static/fonts/itc_fr_g_s-demiit.otf?a331a8ac2b63a49e00c5714627365432) format("opentype");
  font-style: italic;
  font-weight: 600;
}
@font-face {
  font-family: "Franklin";
  src: url(/static/fonts/itc_fr_g_s-hvyit.woff2?32dc68908b7948c88fe81a235b58a9d1) format("woff2"), url(/static/fonts/itc_fr_g_s-hvyit.woff?abe6535620196dcfd37167a50ca8a8bc) format("woff"), url(/static/fonts/itc_fr_g_s-hvyit.otf?c03aa6b97bfaaec43f0dc63a5c08f71f) format("opentype");
  font-style: italic;
  font-weight: 700;
}
* {
  box-sizing: border-box;
}
html,
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: 'Franklin';
  font-family: "Franklin";
}
body {
  overflow-x: hidden;
}
cms-template {
  display: none;
}
button,
[type='button'],
[type='reset'],
[type='submit'] {
  margin: 0;
  padding: 0;
  border: 0;
  appearance: none;
  background: transparent;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}
a,
a:hover,
a:active,
a:focus,
object,
embed,
button,
input,
textarea,
select {
  outline: 0 !important;
}
.avoid-clicks {
  pointer-events: none;
}
.clearfix:after {
  content: '';
  display: block;
  clear: both;
}
input:-internal-autofill-previewed,
input:-internal-autofill-selected,
textarea:-internal-autofill-previewed,
textarea:-internal-autofill-selected,
select:-internal-autofill-previewed,
select:-internal-autofill-selected,
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus textarea:-webkit-autofill,
textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  box-shadow: 0 0 0 1000px white inset !important;
}
input[type='text'],
input[type='password'] {
  appearance: none;
}
[v-cloak] > * {
  display: none;
}
.cms-placeholder {
  overflow: hidden !important;
  height: 0 !important;
}
@media (max-width: 767px) {
  .visibleMd {
    display: none;
  }
}
@media (min-width: 768px) {
  .hiddenMd {
    display: none;
  }
}
.mdOnlyBlock {
  display: none;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .mdOnlyBlock {
    display: block;
  }
}
@media (max-width: 1023px) {
  .visibleLg {
    display: none !important;
  }
}
@media (min-width: 1024px) {
  .hiddenLg {
    display: none !important;
  }
}
.cmsContentWrapper {
  margin: 0 20px;
}
@media (min-width: 1024px) {
  .cmsContentWrapper {
    margin: 0 auto;
    width: 960px;
  }
}
.cmsWidgetList {
  padding: 100px 0;
}
.cmsWidgetContainer + .cmsWidgetContainer {
  margin-top: 60px;
}
.cmsModal {
  padding: 30px 15px;
  position: relative;
}
.cmsModal .closeButton {
  position: absolute;
  top: 21px;
  right: 23px;
  width: 16px;
  height: 16px;
}
.cmsModal .closeButton .closeIcon {
  cursor: pointer;
  position: relative;
  display: block;
  overflow: hidden;
  height: 100%;
  width: 100%;
}
.cmsModal .closeButton .closeIcon:before,
.cmsModal .closeButton .closeIcon:after {
  content: '';
  position: absolute;
  height: 2px;
  width: 100%;
  top: 50%;
  left: 0;
  margin-top: -1px;
  background: #000000;
}
.cmsModal .closeButton .closeIcon:before {
  transform: rotate(45deg);
}
.cmsModal .closeButton .closeIcon:after {
  transform: rotate(-45deg);
}
@media (min-width: 768px) {
  .cmsModal .closeButton.respColorSwap .closeIcon:before,
  .cmsModal .closeButton.respColorSwap .closeIcon:after {
    background: #000;
  }
}
.cmsModal .cmsModalTitle {
  font-weight: 500;
  font-size: 14px;
  color: #333333;
  text-align: center;
}
.cmsModal .cmsModalBody {
  color: #333333;
  font-size: 14px;
  margin: 10px 0 0;
  text-align: center;
}
.cmsModal .cmsModalBody /deep/ b,
.cmsModal .cmsModalBody /deep/ strong {
  font-weight: 500;
}
.errorModalCms {
  padding: 30px 15px;
  position: relative;
  text-align: center;
}
.errorModalCmsCloseIcon {
  display: block;
  position: absolute;
  top: 15px;
  right: 15px;
}
.errorModalCmsTitle {
  font-weight: 500;
  font-size: 14px;
  color: #333333;
  text-align: center;
  margin: 30px 0 0;
}
.errorModalCmsText {
  color: #333333;
  font-size: 14px;
  margin: 10px 0 0;
  text-align: center;
}
.errorModalCmsText /deep/ b,
.errorModalCmsText /deep/ strong {
  font-weight: 500;
}
.errorModalCmsCta {
  text-align: center;
  margin: 20px 0 0;
  padding: 0 20px;
}
@media (min-width: 768px) {
  .mainCta.bookPanelCtaSinglePages.cta {
    height: 60px;
    line-height: 64px;
  }
}
.cmsBookingEngineSection {
  background: #f9f9f9;
}
.cmsBookingEngineSection.vertical {
  background: #ffffff;
}
@media (min-width: 576px) {
  .cmsBookingEngineSection {
    padding-bottom: 30px;
  }
}
.cmsBookingEngineSection .cmsWidgetContainer {
  background: #ffffff;
  max-width: 576px;
  margin: 0 auto;
}
@media (min-width: 576px) {
  .cmsBookingEngineSection .cmsWidgetContainer {
    max-width: 510px;
  }
}
@media (min-width: 768px) {
  .cmsBookingEngineSection .cmsWidgetContainer {
    max-width: 730px;
    margin: -84px auto 0;
  }
}
@media (min-width: 992px) {
  .cmsBookingEngineSection .cmsWidgetContainer {
    max-width: 970px;
  }
}
@media (min-width: 992px) {
  .cmsBookingEngineSection .cmsWidgetContainer {
    max-width: 1140px;
  }
}
.highlightTitle {
  background: #f9f9f9;
}
.highlightTitle .htWrapper {
  padding: 30px 0 15px;
  margin: 0 20px;
}
@media (min-width: 768px) {
  .highlightTitle .htWrapper {
    padding: 60px 0 30px;
    margin: 0 24px;
  }
}
.highlightTitle h2 {
  font-family: 'Franklin';
  font-family: "Franklin";
  color: #0076bd;
  font-weight: 500;
  font-size: 22px;
  text-align: left;
}
@media (min-width: 768px) {
  .highlightTitle h2 {
    font-size: 32px;
    text-align: center;
  }
}
.SidebarSimpleEntry + .SidebarSimpleEntry .sseTitle,
.SidebarInfoPophoverEntry + .SidebarSimpleEntry .sseTitle,
.SidebarSimpleEntry + .SidebarInfoPophoverEntry .sseTitle,
.SidebarInfoPophoverEntry + .SidebarInfoPophoverEntry .sseTitle {
  margin: 40px 0 0;
}
.cms-grid-component.blue-border-container {
  border: 1px solid #0076bd;
  padding: 20px;
  border-radius: 4px;
  margin: 40px 0 0;
}
@media (min-width: 768px) {
  .shareAbsoluteWrapper {
    position: relative;
  }
  .shareAbsoluteWrapper .shareAbsolute {
    position: absolute;
    top: 0;
    left: -50px;
  }
}
/*
.pageHomeWrapper{
  padding: 0;
  .outOfFunnel{
    .heroBackground{
      height:300px !important;
      @media (min-width: @bootstrap-lg){
        height:520px !important;
      }
    }
    .bookPanelOuterWrapper{
      @media (min-width: @bootstrap-sm){
      }
      @media (min-width: @bootstrap-md){
      }
      @media (min-width: @bootstrap-lg){
        padding:0;
        background:transparent;
      }
    }

    .bookPanelInnerWrapper{
      max-width: 576px;
      //background:@white;
      margin:0 auto;
      @media (min-width: @bootstrap-sm){
        max-width: 510px;
      }
      @media (min-width: @bootstrap-md){
        max-width: 730px;
        margin: -84px auto 0;
      }
      @media (min-width: @bootstrap-lg){
        position:relative;
        max-width: @bootstrap-lg;
        margin: 0 auto;
        .BookPanel{
          position: absolute !important;
          width: 960px;
          bottom: 50px;
          left:50%;
          margin-left:-480px;
          //transform: translateX(-50%);
          .wrapper{
            background:@white;
          }
        }
      }
      @media (min-width: @bootstrap-xl){
        .BookPanel{
          width: 1140px;
          margin-left:-570px;
        }
      }
    }
  }

}
*/
.mt-6 {
  margin-top: 6rem !important;
}
.mb-6 {
  margin-bottom: 6rem !important;
}
@media (min-width: 576px) {
  .mt-sm-6 {
    margin-top: 6rem !important;
  }
  .mb-sm-6 {
    margin-bottom: 6rem !important;
  }
}
@media (min-width: 768px) {
  .mt-md-6 {
    margin-top: 6rem !important;
  }
  .mb-md-6 {
    margin-bottom: 6rem !important;
  }
}
@media (min-width: 992px) {
  .mt-lg-6 {
    margin-top: 6rem !important;
  }
  .mb-lg-6 {
    margin-bottom: 6rem !important;
  }
}
@media (min-width: 1200px) {
  .mt-xl-6 {
    margin-top: 6rem !important;
  }
  .mb-xl-6 {
    margin-bottom: 6rem !important;
  }
}
@media (max-width: 767px) {
  .picker--opened .picker__holder {
    background: #ffffff;
  }
}
.picker__frame {
  margin-bottom: 20vh;
}
.picker__box {
  padding: 0 1em 10px 1em;
  border: none;
  box-shadow: none;
}
.picker__header {
  margin-top: 27px;
  line-height: 1;
}
.picker__header .picker__month,
.picker__header .picker__year {
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  font-style: normal;
  color: #000000;
}
.picker__header .picker__select--year,
.picker__header .picker__select--month {
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  font-style: normal;
  color: #000000;
  background: transparent;
  height: auto;
  font-family: sans-serif;
}
.picker__header .picker__select--year {
  direction: rtl;
  width: 11.5%;
}
.picker__header .picker__select--month {
  width: 21%;
}
.picker__header .picker__nav--prev,
.picker__header .picker__nav--next {
  top: -9px;
  border: 1px solid #f4f4f4;
  border-radius: 4px;
  padding: 8px 10px;
}
.picker__header .picker__nav--prev {
  left: 0;
}
.picker__header .picker__nav--prev:before {
  border-top: 1px solid #707070;
  border-left: 1px solid #707070;
  border-right: none;
  border-bottom: none;
  width: 10px;
  height: 10px;
  transform: translateY(7px) rotate(-45deg);
}
.picker__header .picker__nav--next {
  right: 0;
}
.picker__header .picker__nav--next:before {
  border-top: 1px solid #707070;
  border-left: 1px solid #707070;
  border-right: none;
  border-bottom: none;
  width: 10px;
  height: 10px;
  transform: translateY(7px) rotate(135deg);
}
.picker__table {
  margin-top: 15px;
  border-collapse: separate;
  border-spacing: 2px;
}
.picker__table .picker__weekday {
  font-size: 14px;
  text-transform: uppercase;
  color: #7f8fa4;
  padding: 0;
  height: 35.92px;
  vertical-align: middle;
}
.picker__table .picker__day {
  border-radius: 2px;
  font-size: 14px;
  padding: 12px 0 8px 0;
}
.picker__table .picker__day--highlighted {
  border: none;
  background-color: #0076bd;
  color: #ffffff;
  box-shadow: rgba(0, 130, 200, 0.21) 0 2px 5px;
}
/* Time picker styles */
.picker--time .picker__frame {
  max-width: 100%;
}
.picker--time .picker__box {
  background-color: #ffffff;
}
.picker--time .picker__button--clear {
  font-weight: 400;
  color: #000000;
  font-size: 18px;
  text-transform: none;
}
.picker--time .picker__button--clear:before {
  border: none;
  width: 0;
  margin: 0;
}
.picker__footer .copy {
  font-size: 14px;
  text-align: left;
}
.picker__footer .picker__button--close {
  font-weight: 400;
  font-size: 18px;
  text-transform: none;
}
.picker__footer .picker__button--close:before {
  content: '';
}
.picker__list-item {
  text-align: center;
  font-size: 32px;
  font-weight: 400;
}
.picker__list-item.picker__list-item--selected,
.picker__list-item.picker__list-item--selected:hover,
.picker__list-item.picker__list-item--selected:active,
.picker__list-item.picker__list-item--selected:focus {
  border: none;
  background-color: #0076bd;
  color: #ffffff;
}
.picker__list-item.picker__list-item:hover {
  border: none;
  background: #ffffff;
}
/* ==========================================================================
   $BASE-PICKER
   ========================================================================== */
/**
 * Note: the root picker element should *NOT* be styled more than what’s here.
 */
.picker {
  font-size: 16px;
  text-align: left;
  line-height: 1.2;
  color: #000000;
  position: absolute;
  z-index: 10000;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
/**
 * The picker input element.
 */
.picker__input {
  cursor: default;
}
/**
 * When the picker is opened, the input element is “activated”.
 */
.picker__input.picker__input--active {
  border-color: #0089ec;
}
/**
 * The holder is the only “scrollable” top-level container element.
 */
.picker__holder {
  width: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
/*!
 * Default mobile-first, responsive styling for pickadate.js
 * Demo: http://amsul.github.io/pickadate.js
 */
/**
 * Note: the root picker element should *NOT* be styled more than what’s here.
 */
/**
 * Make the holder and frame fullscreen.
 */
.picker__holder,
.picker__frame {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
}
/**
 * The holder should overlay the entire screen.
 */
.picker__holder {
  position: fixed;
  transition: background 0.15s ease-out, -webkit-transform 0s 0.15s;
  transition: background 0.15s ease-out, transform 0s 0.15s;
  -webkit-backface-visibility: hidden;
}
/**
 * The frame that bounds the box contents of the picker.
 */
.picker__frame {
  position: absolute;
  margin: 0 auto;
  min-width: 256px;
  max-width: 666px;
  width: 100%;
  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  transition: all 0.15s ease-out;
}
@media (min-height: 33.875em) {
  .picker__frame {
    overflow: visible;
    top: auto;
    bottom: -100%;
    max-height: 80%;
  }
}
@media (min-height: 40.125em) {
  .picker__frame {
    margin-bottom: 7.5%;
  }
}
/**
 * The wrapper sets the stage to vertically align the box contents.
 */
.picker__wrap {
  display: table;
  width: 100%;
  height: 100%;
}
@media (min-height: 33.875em) {
  .picker__wrap {
    display: block;
  }
}
/**
 * The box contains all the picker contents.
 */
.picker__box {
  background: #ffffff;
  display: table-cell;
  vertical-align: middle;
}
@media (min-height: 26.5em) {
  .picker__box {
    font-size: 1.25em;
  }
}
@media (min-height: 33.875em) {
  .picker__box {
    display: block;
    font-size: 1.33em;
    border: 1px solid #777777;
    border-top-color: #898989;
    border-bottom-width: 0;
    border-radius: 5px 5px 0 0;
    box-shadow: 0 12px 36px 16px rgba(0, 0, 0, 0.24);
  }
}
@media (min-height: 40.125em) {
  .picker__box {
    font-size: 1.5em;
    border-bottom-width: 1px;
    border-radius: 5px;
  }
}
/**
 * When the picker opens...
 */
.picker--opened .picker__holder {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  background: transparent;
  -ms-filter: 'progid:DXImageTransform.Microsoft.gradient(startColorstr=#1E000000,endColorstr=#1E000000)';
  zoom: 1;
  background: rgba(0, 0, 0, 0.32);
  transition: background 0.15s ease-out;
}
.picker--opened .picker__frame {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
}
@media (min-height: 33.875em) {
  .picker--opened .picker__frame {
    top: auto;
    bottom: 0;
  }
}
/* ==========================================================================
   $BASE-DATE-PICKER
   ========================================================================== */
/**
 * The picker box.
 */
.picker__box {
  padding: 0 1em;
}
/**
 * The header containing the month and year stuff.
 */
.picker__header {
  text-align: center;
  position: relative;
  margin-top: 0.75em;
}
/**
 * The month and year labels.
 */
.picker__month,
.picker__year {
  font-weight: 500;
  display: inline-block;
  margin-left: 0.25em;
  margin-right: 0.25em;
}
.picker__year {
  color: #999999;
  font-size: 0.875em;
  font-style: italic;
}
/**
 * The month and year selectors.
 */
.picker__select--month,
.picker__select--year {
  border: 1px solid #b7b7b7;
  height: 2em;
  padding: 0.5em;
  margin-left: 0.25em;
  margin-right: 0.25em;
}
@media (min-width: 24.5em) {
  .picker__select--month,
  .picker__select--year {
    margin-top: -0.5em;
  }
}
.picker__select--month:focus,
.picker__select--year:focus {
  border-color: #0089ec;
}
/**
 * The month navigation buttons.
 */
.picker__nav--prev,
.picker__nav--next {
  position: absolute;
  padding: 0.5em 1.25em;
  width: 1em;
  height: 1em;
  box-sizing: content-box;
  top: -0.25em;
}
@media (min-width: 24.5em) {
  .picker__nav--prev,
  .picker__nav--next {
    top: -0.33em;
  }
}
.picker__nav--prev {
  left: -1em;
  padding-right: 1.25em;
}
@media (min-width: 24.5em) {
  .picker__nav--prev {
    padding-right: 1.5em;
  }
}
.picker__nav--next {
  right: -1em;
  padding-left: 1.25em;
}
@media (min-width: 24.5em) {
  .picker__nav--next {
    padding-left: 1.5em;
  }
}
.picker__nav--prev:before,
.picker__nav--next:before {
  content: ' ';
  border-top: 0.5em solid transparent;
  border-bottom: 0.5em solid transparent;
  border-right: 0.75em solid #000000;
  width: 0;
  height: 0;
  display: block;
  margin: 0 auto;
}
.picker__nav--next:before {
  border-right: 0;
  border-left: 0.75em solid #000000;
}
.picker__nav--prev:hover,
.picker__nav--next:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
}
.picker__nav--disabled,
.picker__nav--disabled:hover,
.picker__nav--disabled:before,
.picker__nav--disabled:before:hover {
  cursor: default;
  background: none;
  border-right-color: #f5f5f5;
  border-left-color: #f5f5f5;
}
/**
 * The calendar table of dates
 */
.picker__table {
  text-align: center;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  font-size: inherit;
  width: 100%;
  margin-top: 0.75em;
  margin-bottom: 0.5em;
}
@media (min-height: 33.875em) {
  .picker__table {
    margin-bottom: 0.75em;
  }
}
.picker__table td {
  margin: 0;
  padding: 0;
}
/**
 * The weekday labels
 */
.picker__weekday {
  width: 14.28571429%;
  font-size: 0.875em;
  padding-bottom: 0.25em;
  color: #999999;
  font-weight: 500;
  /* Increase the spacing a tad */
}
@media (min-height: 33.875em) {
  .picker__weekday {
    padding-bottom: 0.5em;
  }
}
/**
 * The days on the calendar
 */
.picker__day {
  padding: 0.3125em 0;
  font-weight: 200;
  border: 1px solid transparent;
}
.picker__day--today {
  position: relative;
}
.picker__day--today:before {
  content: ' ';
  position: absolute;
  top: 2px;
  right: 2px;
  width: 0;
  height: 0;
  border-top: 0.5em solid #0059bc;
  border-left: 0.5em solid transparent;
}
.picker__day--disabled:before {
  border-top-color: #aaaaaa;
}
.picker__day--outfocus {
  color: #dddddd;
}
.picker__day--infocus:hover,
.picker__day--outfocus:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
}
.picker__day--highlighted {
  border-color: #0089ec;
}
.picker__day--highlighted:hover,
.picker--focused .picker__day--highlighted {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
}
.picker__day--selected,
.picker__day--selected:hover,
.picker--focused .picker__day--selected {
  background: #0089ec;
  color: #ffffff;
}
.picker__day--disabled,
.picker__day--disabled:hover,
.picker--focused .picker__day--disabled {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default;
}
.picker__day--highlighted.picker__day--disabled,
.picker__day--highlighted.picker__day--disabled:hover {
  background: #bbbbbb;
}
/**
 * The footer containing the "today", "clear", and "close" buttons.
 */
.picker__footer {
  text-align: center;
}
.picker__button--today,
.picker__button--clear,
.picker__button--close {
  border: 1px solid #ffffff;
  background: #ffffff;
  font-size: 0.875em;
  padding: 0.66em 0;
  font-weight: bold;
  width: 33%;
  display: inline-block;
  vertical-align: bottom;
}
.picker__button--today:hover,
.picker__button--clear:hover,
.picker__button--close:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
  border-bottom-color: #b1dcfb;
}
.picker__button--today:focus,
.picker__button--clear:focus,
.picker__button--close:focus {
  background: #b1dcfb;
  border-color: #0089ec;
  outline: none;
}
.picker__button--today:before,
.picker__button--clear:before,
.picker__button--close:before {
  position: relative;
  display: inline-block;
  height: 0;
}
.picker__button--today:before,
.picker__button--clear:before {
  content: ' ';
  margin-right: 0.45em;
}
.picker__button--today:before {
  top: -0.05em;
  width: 0;
  border-top: 0.66em solid #0059bc;
  border-left: 0.66em solid transparent;
}
.picker__button--clear:before {
  top: -0.25em;
  width: 0.66em;
  border-top: 3px solid #ee2200;
}
.picker__button--close:before {
  content: '\D7';
  top: -0.1em;
  vertical-align: top;
  font-size: 1.1em;
  margin-right: 0.35em;
  color: #777777;
}
.picker__button--today[disabled],
.picker__button--today[disabled]:hover {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default;
}
.picker__button--today[disabled]:before {
  border-top-color: #aaaaaa;
}
/* ==========================================================================
   $DEFAULT-DATE-PICKER
   ========================================================================== */
/* ==========================================================================
   $BASE-TIME-PICKER
   ========================================================================== */
/**
 * The list of times.
 */
.picker__list {
  list-style: none;
  padding: 0.75em 0 4.2em;
  margin: 0;
}
/**
 * The times on the clock.
 */
.picker__list-item {
  border-bottom: 1px solid #dddddd;
  border-top: 1px solid #dddddd;
  margin-bottom: -1px;
  position: relative;
  background: #ffffff;
  padding: 0.75em 1.25em;
}
@media (min-height: 46.75em) {
  .picker__list-item {
    padding: 0.5em 1em;
  }
}
/* Hovered time */
.picker__list-item:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
  border-color: #0089ec;
  z-index: 10;
}
/* Highlighted and hovered/focused time */
.picker__list-item--highlighted {
  border-color: #0089ec;
  z-index: 10;
}
.picker__list-item--highlighted:hover,
.picker--focused .picker__list-item--highlighted {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
}
/* Selected and hovered/focused time */
.picker__list-item--selected,
.picker__list-item--selected:hover,
.picker--focused .picker__list-item--selected {
  background: #0089ec;
  color: #ffffff;
  z-index: 10;
}
/* Disabled time */
.picker__list-item--disabled,
.picker__list-item--disabled:hover,
.picker--focused .picker__list-item--disabled {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default;
  border-color: #dddddd;
  z-index: auto;
}
/**
 * The clear button
 */
.picker--time .picker__button--clear {
  display: block;
  width: 80%;
  margin: 1em auto 0;
  padding: 1em 1.25em;
  background: none;
  border: 0;
  font-weight: 500;
  font-size: 0.875em;
  text-align: center;
  text-transform: uppercase;
  color: #666;
}
.picker--time .picker__button--clear:hover,
.picker--time .picker__button--clear:focus {
  color: #000000;
  background: #b1dcfb;
  background: #ee2200;
  border-color: #ee2200;
  cursor: pointer;
  color: #ffffff;
  outline: none;
}
.picker--time .picker__button--clear:before {
  top: -0.25em;
  color: #666;
  font-size: 1.25em;
  font-weight: bold;
}
.picker--time .picker__button--clear:hover:before,
.picker--time .picker__button--clear:focus:before {
  color: #ffffff;
  border-color: #ffffff;
}
/* ==========================================================================
   $DEFAULT-TIME-PICKER
   ========================================================================== */
/**
 * The frame the bounds the time picker.
 */
.picker--time .picker__frame {
  min-width: 256px;
  max-width: 320px;
}
/**
 * The picker box.
 */
.picker--time .picker__box {
  font-size: 1em;
  background: #f2f2f2;
  padding: 0;
}
@media (min-height: 40.125em) {
  .picker--time .picker__box {
    margin-bottom: 5em;
  }
}

