/*! FILE: sass/screen.scss */
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  margin: 0;
  padding: 0
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 400
}

ol, ul {
  list-style: none
}

blockquote, q {
  quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
  content: none
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

button, form, input, textarea {
  background: none;
  border: 0;
  outline: none;
  border-radius: 0
}

html:not(.browser-android) select {
  background: none;
  outline: none;
  border-radius: 0
}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
  display: block
}

audio, canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1
}

audio:not([controls]) {
  display: none
}

html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  min-height: 100vh
}

a:focus {
  outline-offset: -2px
}

a:active, a:focus, a:hover {
  outline: none
}

sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline
}

sup {
  top: -.5em
}

sub {
  bottom: -.25em
}

img {
  max-width: 100%;
  width: auto \9;
  height: auto;
  vertical-align: middle;
  border: 0;
  -ms-interpolation-mode: bicubic
}

#map_canvas img, .google-maps img {
  max-width: none
}

button, input, select, textarea {
  margin: 0;
  font-size: 100%;
  vertical-align: middle
}

button, input {
  *overflow: visible;
  line-height: normal;
  padding: 0;
  margin: 0;
  border: 0;
  cursor: pointer
}

button::-moz-focus-inner, input::-moz-focus-inner {
  padding: 0;
  border: 0
}

button, html input[type=button], input[type=reset], input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer
}

button, input[type=button], input[type=checkbox], input[type=radio], input[type=reset], input[type=submit], label, select {
  cursor: pointer
}

input[type=search] {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  -webkit-appearance: textfield
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

textarea {
  overflow: auto;
  vertical-align: top
}

@media print {
  * {
    text-shadow: none !important;
    color: #000 !important;
    background: transparent !important;
    box-shadow: none !important
  }

  a, a:visited {
    text-decoration: underline
  }

  a[href]:after {
    content: " (" attr(href) ")"
  }

  abbr[title]:after {
    content: " (" attr(title) ")"
  }

  .ir a:after, a[href^="#"]:after, a[href^="javascript:"]:after {
    content: ""
  }

  blockquote, pre {
    border: 1px solid #999;
    page-break-inside: avoid
  }

  thead {
    display: table-header-group
  }

  img, tr {
    page-break-inside: avoid
  }

  img {
    max-width: 100% !important
  }

  @page {
    margin: .5cm
  }

  h2, h3, p {
    orphans: 3;
    widows: 3
  }

  h2, h3 {
    page-break-after: avoid
  }
}

.button, .Button {
  text-align: center;
  border-radius: 2px;
  padding: 14px 20px;
  line-height: 1;
  border: 1px solid transparent;
  color: #fff;
  float: none !important;
  font-size: 14px;
  font-weight: 700;
  font-family: Source Sans Pro, sans-serif;
  cursor: pointer;
  display: inline-block
}

.button[type=submit], .Button[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

.button[disabled], .Button[disabled] {
  cursor: unset
}

@media only screen and (max-width: 767px) {
  .button, .Button {
    width: 100%
  }
}

.button:hover:enabled, .Button:hover:enabled {
  text-decoration: none
}

.button--small, .Button--small {
  padding: 10.5px 15px;
  font-size: 12px
}

.button--xsmall, .Button--xsmall {
  padding: 4.5px 10px;
  font-size: 12px
}

.button--primary, .Button--primary {
  background-color: #bd1343;
  transition: all .1s ease-out;
  color: #fff
}

.button--primary:hover:enabled, .Button--primary:hover:enabled {
  color: #fff;
  transition: all .2s ease-out;
  background-color: #a5113a
}

.button--secondary, .Button--secondary {
  background-color: #8a8a8a;
  transition: all .1s ease-out;
  color: #fff
}

.button--secondary:hover:enabled, .Button--secondary:hover:enabled {
  transition: all .2s ease-out;
  background-color: #666;
  color: #fff
}

.button--white, .Button--white {
  background-color: #fff;
  border: 1px solid #d3d3d3;
  color: #666;
  transition: all .1s ease-out
}

.button--white:hover:enabled, .Button--white:hover:enabled {
  transition: all .2s ease-out;
  color: #666;
  border-color: #8a8a8a
}

.button--transparent, .Button--transparent {
  background-color: transparent;
  border: 1px solid #d3d3d3;
  color: #666;
  transition: all .1s ease-out
}

.button--transparent:hover:enabled, .Button--transparent:hover:enabled {
  transition: all .2s ease-out;
  border-color: #8a8a8a
}

.button--dark, .Button--dark {
  background-color: #1d1d1d;
  transition: all .1s ease-out
}

.button--dark:hover:enabled, .Button--dark:hover:enabled {
  transition: all .2s ease-out;
  background-color: #000
}

.button--light, .Button--light {
  background-color: #eee;
  border: 1px solid #d3d3d3;
  color: #666;
  transition: all .1s ease-out
}

.button--light:hover:enabled, .Button--light:hover:enabled {
  transition: all .2s ease-out;
  background-color: #d3d3d3;
  border-color: #afafaf
}

.button--disabled, .Button--disabled {
  background-color: #eee;
  color: #d3d3d3;
  cursor: unset
}

.button--link, .Button--link {
  color: #666;
  text-decoration: underline;
  border-color: transparent;
  font-weight: 700
}

.button--link:hover:enabled, .Button--link:hover:enabled {
  text-decoration: none;
  color: #1d1d1d
}

.button--append, .Button--append {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  margin-left: -1px
}

.button--dropdown, .Button--dropdown {
  padding-right: 42px;
  position: relative
}

.button--dropdown .icon, .Button--dropdown .icon {
  position: absolute;
  right: 11px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 24px
}

.button--dropdown .isSelected, .Button--dropdown .isSelected, .expanded .button--dropdown:not(.button--dropdownSubLevel), .expanded .Button--dropdown:not(.button--dropdownSubLevel), .expanded_sublevel .button--dropdown, .expanded_sublevel .Button--dropdown {
  background-color: #fff;
  border: 1px solid #d3d3d3;
  color: #666;
  transition: all .1s ease-out
}

.button--dropdown .isSelected:hover, .Button--dropdown .isSelected:hover, .expanded .button--dropdown:not(.button--dropdownSubLevel):hover, .expanded .Button--dropdown:not(.button--dropdownSubLevel):hover, .expanded_sublevel .button--dropdown:hover, .expanded_sublevel .Button--dropdown:hover {
  transition: all .2s ease-out;
  color: #414141;
  border-color: #8a8a8a;
  background-color: #fff
}

.button--dropdown .isSelected .icon, .Button--dropdown .isSelected .icon, .expanded .button--dropdown:not(.button--dropdownSubLevel) .icon, .expanded .Button--dropdown:not(.button--dropdownSubLevel) .icon, .expanded_sublevel .button--dropdown .icon, .expanded_sublevel .Button--dropdown .icon {
  -webkit-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg)
}

.button--noPadding, .Button--noPadding {
  padding: 0
}

.button--noDecoration, .Button--noDecoration {
  text-decoration: none
}

@media only screen and (max-width: 767px) {
  .button--autoWidthMobile, .Button--autoWidthMobile {
    width: auto
  }
}

.clearfix:after, .clearfix:before {
  display: table;
  content: ""
}

.clearfix:after {
  clear: both
}

.js .resolution {
  position: fixed;
  top: 6px;
  right: 120px;
  background-image: linear-gradient(180deg, #fff, #fff);
  background-repeat: repeat-x;
  padding: 5px 10px;
  border-radius: 10px;
  opacity: 1%;
  color: #000;
  font-weight: 700;
  z-index: 9999;
  cursor: pointer
}

.container_12 {
  width: 98%;
  margin-left: 1%;
  margin-right: 1%
}

.container_12_nm {
  width: 100%
}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
  display: inline;
  float: left;
  position: relative;
  margin-left: 1%;
  margin-right: 1%
}

.col-1-nm, .col-2-nm, .col-3-nm, .col-4-nm, .col-5-nm, .col-6-nm, .col-7-nm, .col-8-nm, .col-9-nm, .col-10-nm, .col-11-nm, .col-12-nm {
  display: inline;
  float: left;
  position: relative
}

.container_12 .col-1 {
  width: 6.333%
}

.container_12 .col-2 {
  width: 14.667%
}

.container_12 .col-3 {
  width: 23%
}

.container_12 .col-4 {
  width: 31.333%
}

.container_12 .col-5 {
  width: 39.667%
}

.container_12 .col-6 {
  width: 48%
}

.container_12 .col-7 {
  width: 56.333%
}

.container_12 .col-8 {
  width: 64.667%
}

.container_12 .col-9 {
  width: 73%
}

.container_12 .col-10 {
  width: 81.333%
}

.container_12 .col-11 {
  width: 89.667%
}

.container_12 .col-12 {
  width: 98%
}

.container_12_nm .col-1-nm {
  width: 8.333%
}

.container_12_nm .col-2-nm {
  width: 16.667%
}

.container_12_nm .col-3-nm {
  width: 25%
}

.container_12_nm .col-4-nm {
  width: 33.333%
}

.container_12_nm .col-5-nm {
  width: 41.667%
}

.container_12_nm .col-6-nm {
  width: 50%
}

.container_12_nm .col-7-nm {
  width: 58.333%
}

.container_12_nm .col-8-nm {
  width: 66.667%
}

.container_12_nm .col-9-nm {
  width: 75%
}

.container_12_nm .col-10-nm {
  width: 83.333%
}

.container_12_nm .col-11-nm {
  width: 91.667%
}

.container_12_nm .col-12-nm {
  width: 100%
}

.alpha {
  margin-left: 0
}

.omega {
  margin-right: 0
}

.container_12 .prefix_1 {
  padding-left: 8.333%
}

.container_12 .prefix_2 {
  padding-left: 16.667%
}

.container_12 .prefix_3 {
  padding-left: 25%
}

.container_12 .prefix_4 {
  padding-left: 33.333%
}

.container_12 .prefix_5 {
  padding-left: 41.667%
}

.container_12 .prefix_6 {
  padding-left: 50%
}

.container_12 .prefix_7 {
  padding-left: 58.333%
}

.container_12 .prefix_8 {
  padding-left: 66.667%
}

.container_12 .prefix_9 {
  padding-left: 75%
}

.container_12 .prefix_10 {
  padding-left: 83.333%
}

.container_12 .prefix_11 {
  padding-left: 91.667%
}

.container_12 .suffix_1 {
  padding-right: 8.333%
}

.container_12 .suffix_2 {
  padding-right: 16.667%
}

.container_12 .suffix_3 {
  padding-right: 25%
}

.container_12 .suffix_4 {
  padding-right: 33.333%
}

.container_12 .suffix_5 {
  padding-right: 41.667%
}

.container_12 .suffix_6 {
  padding-right: 50%
}

.container_12 .suffix_7 {
  padding-right: 58.333%
}

.container_12 .suffix_8 {
  padding-right: 66.667%
}

.container_12 .suffix_9 {
  padding-right: 75%
}

.container_12 .suffix_10 {
  padding-right: 83.333%
}

.container_12 .suffix_11 {
  padding-right: 91.667%
}

.container_12 .push_1 {
  left: 8.333%
}

.container_12 .push_2 {
  left: 16.667%
}

.container_12 .push_3 {
  left: 25%
}

.container_12 .push_4 {
  left: 33.333%
}

.container_12 .push_5 {
  left: 41.667%
}

.container_12 .push_6 {
  left: 50%
}

.container_12 .push_7 {
  left: 58.333%
}

.container_12 .push_8 {
  left: 66.667%
}

.container_12 .push_9 {
  left: 75%
}

.container_12 .push_10 {
  left: 83.333%
}

.container_12 .push_11 {
  left: 91.667%
}

.container_12 .pull_1 {
  left: -8.333%
}

.container_12 .pull_2 {
  left: -16.667%
}

.container_12 .pull_3 {
  left: -25%
}

.container_12 .pull_4 {
  left: -33.333%
}

.container_12 .pull_5 {
  left: -41.667%
}

.container_12 .pull_6 {
  left: -50%
}

.container_12 .pull_7 {
  left: -58.333%
}

.container_12 .pull_8 {
  left: -66.667%
}

.container_12 .pull_9 {
  left: -75%
}

.container_12 .pull_10 {
  left: -83.333%
}

.container_12 .pull_11 {
  left: -91.667%
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .js .grid-system {
    background-size: contain
  }

  .container_12 .col-tab-1 {
    width: 6.333%
  }

  .container_12 .col-tab-2 {
    width: 14.667%
  }

  .container_12 .col-tab-3 {
    width: 23%
  }

  .container_12 .col-tab-4 {
    width: 31.333%
  }

  .container_12 .col-tab-5 {
    width: 39.667%
  }

  .container_12 .col-tab-6 {
    width: 48%
  }

  .container_12 .col-tab-7 {
    width: 56.333%
  }

  .container_12 .col-tab-8 {
    width: 64.667%
  }

  .container_12 .col-tab-9 {
    width: 73%
  }

  .container_12 .col-tab-10 {
    width: 81.333%
  }

  .container_12 .col-tab-11 {
    width: 89.667%
  }

  .container_12 .col-tab-12 {
    width: 98%
  }

  .container_12_nm .col-tab-1-nm {
    width: 8.333%
  }

  .container_12_nm .col-tab-2-nm {
    width: 16.667%
  }

  .container_12_nm .col-tab-3-nm {
    width: 25%
  }

  .container_12_nm .col-tab-4-nm {
    width: 33.333%
  }

  .container_12_nm .col-tab-5-nm {
    width: 41.667%
  }

  .container_12_nm .col-tab-6-nm {
    width: 50%
  }

  .container_12_nm .col-tab-7-nm {
    width: 58.333%
  }

  .container_12_nm .col-tab-8-nm {
    width: 66.667%
  }

  .container_12_nm .col-tab-9-nm {
    width: 75%
  }

  .container_12_nm .col-tab-10-nm {
    width: 83.333%
  }

  .container_12_nm .col-tab-11-nm {
    width: 91.667%
  }

  .container_12_nm .col-tab-12-nm {
    width: 100%
  }
}

@media only screen and (max-width: 767px) {
  .js .grid-system {
    background-size: contain
  }

  .container_12 .col-mob-1 {
    width: 6.333%
  }

  .container_12 .col-mob-2 {
    width: 14.667%
  }

  .container_12 .col-mob-3 {
    width: 23%
  }

  .container_12 .col-mob-4 {
    width: 31.333%
  }

  .container_12 .col-mob-5 {
    width: 39.667%
  }

  .container_12 .col-mob-6 {
    width: 48%
  }

  .container_12 .col-mob-7 {
    width: 56.333%
  }

  .container_12 .col-mob-8 {
    width: 64.667%
  }

  .container_12 .col-mob-9 {
    width: 73%
  }

  .container_12 .col-mob-10 {
    width: 81.333%
  }

  .container_12 .col-mob-11 {
    width: 89.667%
  }

  .container_12 .col-mob-12 {
    width: 98%
  }

  .container_12_nm .col-mob-1-nm {
    width: 8.333%
  }

  .container_12_nm .col-mob-2-nm {
    width: 16.667%
  }

  .container_12_nm .col-mob-3-nm {
    width: 25%
  }

  .container_12_nm .col-mob-4-nm {
    width: 33.333%
  }

  .container_12_nm .col-mob-5-nm {
    width: 41.667%
  }

  .container_12_nm .col-mob-6-nm {
    width: 50%
  }

  .container_12_nm .col-mob-7-nm {
    width: 58.333%
  }

  .container_12_nm .col-mob-8-nm {
    width: 66.667%
  }

  .container_12_nm .col-mob-9-nm {
    width: 75%
  }

  .container_12_nm .col-mob-10-nm {
    width: 83.333%
  }

  .container_12_nm .col-mob-11-nm {
    width: 91.667%
  }

  .container_12_nm .col-mob-12-nm {
    width: 100%
  }
}

.tooltip:after, .tooltip:before, [data-tooltip]:after, [data-tooltip]:before {
  position: absolute;
  visibility: hidden;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: progid:dximagetransform.microsoft.alpha(Opacity=0);
  opacity: 0;
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out, -webkit-transform .2s cubic-bezier(.71, 1.7, .77, 1.24);
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out, transform .2s cubic-bezier(.71, 1.7, .77, 1.24);
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out, transform .2s cubic-bezier(.71, 1.7, .77, 1.24), -webkit-transform .2s cubic-bezier(.71, 1.7, .77, 1.24);
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  pointer-events: none
}

.tooltip:focus:after, .tooltip:focus:before, .tooltip:hover:after, .tooltip:hover:before, [data-tooltip]:focus:after, [data-tooltip]:focus:before, [data-tooltip]:hover:after, [data-tooltip]:hover:before {
  visibility: visible;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: progid:dximagetransform.microsoft.alpha(Opacity=100);
  opacity: 1
}

.tooltip.tooltip-hidden:after, .tooltip.tooltip-hidden:before, [data-tooltip].tooltip-hidden:after, [data-tooltip].tooltip-hidden:before {
  visibility: hidden
}

.tooltip:before, [data-tooltip]:before {
  z-index: 1001;
  border: 6px solid transparent;
  background: transparent;
  content: ""
}

.tooltip:after, [data-tooltip]:after {
  z-index: 1000;
  padding: 8px;
  width: 160px;
  background-color: #000;
  background-color: rgba(51, 51, 51, .9);
  color: #fff;
  content: attr(data-tooltip);
  font-size: 14px;
  line-height: 1.2
}

.tooltip-top:after, .tooltip-top:before, .tooltip:after, .tooltip:before, [data-tooltip]:after, [data-tooltip]:before {
  bottom: 100%;
  left: 50%
}

.tooltip-top:before, .tooltip:before, [data-tooltip]:before {
  margin-left: -6px;
  margin-bottom: -12px;
  border-top-color: #000;
  border-top-color: rgba(51, 51, 51, .9)
}

.tooltip-top:after, .tooltip:after, [data-tooltip]:after {
  margin-left: -80px
}

.tooltip-top:focus:after, .tooltip-top:focus:before, .tooltip-top:hover:after, .tooltip-top:hover:before, .tooltip:focus:after, .tooltip:focus:before, .tooltip:hover:after, .tooltip:hover:before, [data-tooltip]:focus:after, [data-tooltip]:focus:before, [data-tooltip]:hover:after, [data-tooltip]:hover:before {
  -webkit-transform: translateY(-12px);
  transform: translateY(-12px)
}

.tooltip-left:after, .tooltip-left:before {
  right: 100%;
  bottom: 50%;
  left: auto
}

.tooltip-left:before {
  margin-left: 0;
  margin-right: -12px;
  margin-bottom: 0;
  border-top-color: transparent;
  border-left-color: #000;
  border-left-color: rgba(51, 51, 51, .9)
}

.tooltip-left:focus:after, .tooltip-left:focus:before, .tooltip-left:hover:after, .tooltip-left:hover:before {
  -webkit-transform: translateX(-12px);
  transform: translateX(-12px)
}

.tooltip-bottom:after, .tooltip-bottom:before {
  top: 100%;
  bottom: auto;
  left: 50%
}

.tooltip-bottom:before {
  margin-top: -12px;
  margin-bottom: 0;
  border-top-color: transparent;
  border-bottom-color: #000;
  border-bottom-color: rgba(51, 51, 51, .9)
}

.tooltip-bottom:focus:after, .tooltip-bottom:focus:before, .tooltip-bottom:hover:after, .tooltip-bottom:hover:before {
  -webkit-transform: translateY(12px);
  transform: translateY(12px)
}

.tooltip-right:after, .tooltip-right:before {
  bottom: 50%;
  left: 100%
}

.tooltip-right:before {
  margin-bottom: 0;
  margin-left: -12px;
  border-top-color: transparent;
  border-right-color: #000;
  border-right-color: rgba(51, 51, 51, .9)
}

.tooltip-right:focus:after, .tooltip-right:focus:before, .tooltip-right:hover:after, .tooltip-right:hover:before {
  -webkit-transform: translateX(12px);
  transform: translateX(12px)
}

.tooltip-left:before, .tooltip-right:before {
  top: 3px
}

.tooltip-left:after, .tooltip-right:after {
  margin-left: 0;
  margin-bottom: -16px
}

#text-me-the-app-helpMobile #text-me-the-app-form {
  margin: 30px 0
}

#text-me-the-app-helpMobile .input-left {
  float: left;
  width: calc(100% - 102px);
  margin: 0;
  border: 1px solid #e6e6e6
}

#text-me-the-app-helpMobile .input-left > * {
  float: left;
  background: transparent
}

#text-me-the-app-helpMobile .input-left #flag-select {
  width: 65px;
  border-right: 1px solid #e6e6e6;
  cursor: pointer;
  position: relative
}

#text-me-the-app-helpMobile .input-left #flag-select #languages-menu-active-tmta {
  float: left
}

#text-me-the-app-helpMobile .input-left #flag-select #languages-menu-active-tmta .languages-menu-flag-tmta {
  width: 25px;
  margin: 10px
}

#text-me-the-app-helpMobile .input-left #flag-select .bottom-arrow.black {
  position: relative;
  top: inherit;
  left: inherit;
  border-top-color: #000
}

#text-me-the-app-helpMobile .input-left #flag-select #languages-menu-list-tmta {
  display: none;
  width: 65px;
  top: 39px;
  left: -1px;
  position: absolute;
  background: #fff;
  border: 1px solid #e6e6e6;
  z-index: 10
}

#text-me-the-app-helpMobile .input-left #flag-select #languages-menu-list-tmta li {
  padding: 1px 20px
}

#text-me-the-app-helpMobile .input-left #flag-select #languages-menu-list-tmta li span {
  display: none
}

#text-me-the-app-helpMobile .input-left #tel-prefix {
  margin-left: 10px;
  margin-top: 2px;
  color: #a7a7a7
}

#text-me-the-app-helpMobile .input-left #contact-form-phone {
  left: 40px;
  margin-left: -30px;
  margin-top: 2px;
  position: relative;
  width: 180px
}

@media only screen and (max-width: 767px) {
  #text-me-the-app-helpMobile .input-left #contact-form-phone {
    width: auto
  }
}

#text-me-the-app-helpMobile .input-right {
  width: 100px;
  float: right
}

#text-me-the-app-helpMobile .input-right .btn {
  height: 40px;
  text-transform: uppercase;
  padding: 0;
  background-color: #bd1343
}

@media only screen and (max-width: 767px) {
  #text-me-the-app-helpMobile .input-right .btn {
    height: 54px
  }
}

#text-me-the-app-helpMobile .info-message {
  display: none
}

#text-me-the-app-helpMobile .form-error {
  color: #e3262e
}

#text-me-the-app-footer {
  padding: 0
}

#text-me-the-app-footer .text-content {
  line-height: 1;
  color: #fff
}

#text-me-the-app-footer #text-me-the-app-form {
  margin-top: 15px
}

#text-me-the-app-footer #text-me-the-app-form .form-container {
  line-height: 28px;
  min-height: 30px
}

#text-me-the-app-footer .input-left {
  float: left;
  width: 215px;
  height: 30px;
  margin: 0;
  background-color: #2c2c2c
}

#text-me-the-app-footer .input-left > * {
  float: left;
  background: transparent
}

#text-me-the-app-footer .input-left #flag-select {
  width: 65px;
  height: 30px;
  border-right: 1px solid #1d1d1d;
  cursor: pointer;
  position: relative
}

#text-me-the-app-footer .input-left #flag-select #languages-menu-active-tmta {
  float: left
}

#text-me-the-app-footer .input-left #flag-select #languages-menu-active-tmta .languages-menu-flag-tmta {
  width: 16px;
  margin: 9px 10px
}

#text-me-the-app-footer .input-left #flag-select .bottom-arrow.black {
  position: relative;
  top: inherit;
  left: inherit;
  border-top-color: #666
}

#text-me-the-app-footer .input-left #flag-select.open {
  background-color: #666
}

#text-me-the-app-footer .input-left #flag-select.open .bottom-arrow.black {
  border-top-color: #fff
}

#text-me-the-app-footer .input-left #flag-select #languages-menu-list-tmta {
  display: none;
  width: 145px;
  top: 30px;
  left: 0;
  position: absolute;
  background: #2c2c2c;
  border: 1px solid #666;
  padding: 6px 0
}

#text-me-the-app-footer .input-left #flag-select #languages-menu-list-tmta li {
  padding: 4px 10px;
  line-height: 1
}

#text-me-the-app-footer .input-left #flag-select #languages-menu-list-tmta li:hover {
  color: #fff
}

#text-me-the-app-footer .input-left #flag-select #languages-menu-list-tmta li span {
  float: left
}

#text-me-the-app-footer .input-left #flag-select #languages-menu-list-tmta img {
  width: 16px;
  margin-right: 10px;
  float: left
}

#text-me-the-app-footer .input-left #tel-prefix {
  margin-left: 10px;
  margin-top: 2px;
  color: #fff
}

#text-me-the-app-footer .input-left #contact-form-phone {
  left: 40px;
  margin-left: -30px;
  color: #fff;
  position: relative;
  width: 110px
}

#text-me-the-app-footer .input-right {
  width: 80px;
  float: right
}

#text-me-the-app-footer .input-right .btn {
  height: 30px;
  padding: 0;
  background-color: #666;
  font-size: 12px;
  font-weight: 600;
  line-height: 30px
}

#text-me-the-app-footer .info-message {
  display: none
}

@media only screen and (min-width: 1025px) {
  .bloc.text-me-the-app {
    float: left;
    width: calc(100% - 550px);
    margin-top: 40px;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    padding-bottom: 50px
  }

  .bloc.text-me-the-app .bloc-icon {
    color: #bd1343;
    font-size: 25px;
    text-align: right;
    width: 32px;
    margin-right: 15px;
    float: left
  }

  .bloc.text-me-the-app .bloc-text {
    display: block;
    font-family: Georgia, Times New Roman, Times, serif;
    font-size: 28px;
    font-style: italic;
    line-height: 1.2
  }

  .bloc.text-me-the-app .spacer {
    background-color: #bd1343;
    height: 3px;
    width: 30px;
    margin: 20px 0
  }
}

@media only screen and (max-width: 767px) {
  .bloc.text-me-the-app {
    display: none
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .bloc.text-me-the-app {
    display: none
  }
}

#text-me-the-app-booking .ph_content {
  display: -webkit-inline-flex;
  display: inline-flex;
  z-index: 1
}

#text-me-the-app-booking .ph_content .text-content {
  line-height: 18px;
  color: #1d1d1d;
  display: block;
  font-size: 14px
}

#text-me-the-app-booking .ph_content img {
  width: 223px;
  height: 169px;
  margin-top: -26px
}

#text-me-the-app-booking .form-container {
  display: block;
  margin-bottom: 5px
}

#text-me-the-app-booking #text-me-the-app-form {
  margin-top: -40px;
  padding: 20px;
  background-color: #fff;
  z-index: 2;
  position: relative
}

#text-me-the-app-booking #text-me-the-app-form .title {
  color: #666;
  font-weight: 700;
  margin-bottom: 8px
}

#text-me-the-app-booking .input-left {
  float: left;
  margin: 0;
  border: 1px solid #d3d3d3;
  width: 271px
}

#text-me-the-app-booking .input-left > * {
  float: left;
  background: transparent
}

#text-me-the-app-booking .input-left #flag-select {
  width: 73px;
  border-right: 1px solid #a7a7a7;
  cursor: pointer;
  position: relative;
  background-color: #d3d3d3
}

#text-me-the-app-booking .input-left #flag-select.open {
  background-color: #d6d6d6
}

#text-me-the-app-booking .input-left #flag-select #languages-menu-active-tmta {
  float: left
}

#text-me-the-app-booking .input-left #flag-select #languages-menu-active-tmta .languages-menu-flag-tmta {
  width: 25px;
  margin: 10px
}

#text-me-the-app-booking .input-left #flag-select .bottom-arrow.black {
  border-top-color: #000;
  margin: 16px 0 0 3px
}

#text-me-the-app-booking .input-left #flag-select #languages-menu-list-tmta {
  display: none;
  width: 73px;
  top: 39px;
  left: -1px;
  position: absolute;
  background: #e6e6e6;
  border: 1px solid #a7a7a7;
  z-index: 10
}

#text-me-the-app-booking .input-left #flag-select #languages-menu-list-tmta li {
  padding: 1px 24px;
  line-height: 35px
}

#text-me-the-app-booking .input-left #flag-select #languages-menu-list-tmta li:hover {
  background-color: #d6d6d6
}

#text-me-the-app-booking .input-left #tel-prefix {
  margin: 10px;
  color: #555
}

#text-me-the-app-booking .input-left #contact-form-phone {
  padding-left: 0;
  margin-top: 2px;
  width: auto;
  font-size: 14px;
  color: #555;
  max-width: 170px;
  font-family: Source Sans Pro, sans-serif;
  padding: 7px 0 6px;
  border: none !important
}

#text-me-the-app-booking .input-right {
  float: left
}

#text-me-the-app-booking .input-right .btn {
  height: 41px;
  padding: 0;
  min-width: inherit;
  width: 100px;
  margin-left: 10px;
  font-weight: 700;
  font-family: Source Sans Pro, sans-serif;
  color: #fff;
  background-color: #bd1343;
  border-radius: 2px
}

#text-me-the-app-booking .info-message {
  display: none
}

#text-me-the-app-booking #acknowledgment {
  font-size: 14px;
  line-height: 1.57em;
  color: #555;
  height: auto;
  display: none
}

#text-me-the-app-booking #errorSendingSMS {
  font-size: 14px;
  line-height: 1.57em;
  color: #e3262e;
  height: auto;
  display: none
}

.confirmation #text-me-the-app-form #contact-form-phone {
  max-width: 130px
}

.Alert {
  background-color: #fff;
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 10px 20px 15px;
  margin: 10px 0 20px;
  opacity: 1;
  transition: opacity .15s ease-in
}

@media only screen and (max-width: 1024px) {
  .Alert {
    margin-top: 0;
    margin-bottom: 0
  }
}

.Alert.isDismissed {
  opacity: 0
}

.Alert__icon {
  margin-right: 15px
}

@media only screen and (max-width: 1024px) {
  .Alert__icon {
    display: none
  }
}

.Alert__icon .icon {
  color: #bd1343;
  font-size: 32px
}

.Alert__close {
  position: absolute;
  right: 10px;
  top: 10px;
  font-size: 24px
}

.Alert__title {
  font-size: 22px;
  line-height: 25px;
  color: #bd1343;
  font-family: Georgia, Times New Roman, Times, serif;
  font-style: italic;
  margin-bottom: 5px;
  padding-right: 20px
}

.Alert__description a {
  text-decoration: underline
}

.Breadcrumb {
  white-space: nowrap;
  overflow: hidden
}

@media only screen and (max-width: 1024px) {
  .Breadcrumb {
    height: 40px;
    background-color: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding-left: 20px;
    padding-right: 20px
  }

  .Breadcrumb.center {
    -webkit-justify-content: center;
    justify-content: center
  }

  .Breadcrumb.end {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
}

.Breadcrumb .step-container {
  display: inline;
  font-size: 16px;
  line-height: 20px;
  color: #666
}

.Breadcrumb .step-container:not(:last-child):after {
  content: "\E91C";
  font-family: VP-Icon-Line;
  vertical-align: middle;
  color: #8a8a8a;
  font-weight: 400;
  margin: 0 18px
}

.Breadcrumb .step-container.active {
  font-weight: 700;
  color: #1d1d1d
}

.Breadcrumb .step-container .step {
  display: inline
}

.Breadcrumb .step-container .step:after {
  content: "."
}

.Breadcrumb .step-container .step-title {
  display: inline
}

@-webkit-keyframes animation-rotation {
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn)
  }
}

@keyframes animation-rotation {
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn)
  }
}

@-webkit-keyframes animation-rotation-variating {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0
  }

  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -21px
  }

  to {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124px
  }
}

@keyframes animation-rotation-variating {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0
  }

  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -21px
  }

  to {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124px
  }
}

.Loader--circular {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%
}

.Loader--circular .Loader__anim {
  display: inline-block;
  position: relative;
  margin: 0 auto;
  width: 40px;
  height: 40px
}

.Loader--circular .Loader__svg {
  -webkit-animation: animation-rotation 1.33s linear infinite;
  animation: animation-rotation 1.33s linear infinite;
  height: 100%;
  -webkit-transform-origin: center center;
  transform-origin: center center;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto
}

.Loader--circular .Loader__svg__path {
  stroke-dasharray: 1, 200;
  stroke-dashoffset: 0;
  -webkit-animation: animation-rotation-variating 1.5s ease-in-out infinite;
  animation: animation-rotation-variating 1.5s ease-in-out infinite;
  stroke-linecap: round;
  stroke: #d3d3d3;
  stroke-width: 2px
}

.Loader--circular .Loader__text {
  margin-top: 10px
}

.Loader--circular.Loader--sm .Loader__anim {
  width: 30px;
  height: 30px
}

.Loader--circular.Loader--sm .Loader__svg__path {
  stroke-width: 3px
}

.Loader--circular.Loader--xs .Loader__anim {
  width: 20px;
  height: 20px
}

.Loader--circular.Loader--xs .Loader__svg__path {
  stroke-width: 3px
}

.Loader--circular.Loader--pink .Loader__svg__path {
  stroke: #bd1343
}

.right-arrow {
  border-left: 27px solid #fff;
  border-top: 30px solid hsla(0, 0%, 100%, 0);
  border-bottom: 32px solid hsla(0, 0%, 100%, 0)
}

.left-arrow, .right-arrow {
  display: inline-block;
  width: 0;
  height: 0
}

.left-arrow {
  border-right: 6px solid #bd1343;
  border-top: 6px solid hsla(0, 0%, 100%, 0);
  border-bottom: 6px solid hsla(0, 0%, 100%, 0)
}

.bottom-arrow {
  border-top: 6px solid #fff;
  border-left: 6px solid hsla(0, 0%, 100%, 0);
  border-right: 6px solid hsla(0, 0%, 100%, 0)
}

.bottom-arrow, .top-arrow {
  display: inline-block;
  width: 0;
  height: 0
}

.top-arrow {
  border-bottom: 10px solid #1d1d1d;
  border-left: 10px solid rgba(29, 29, 29, 0);
  border-right: 10px solid rgba(29, 29, 29, 0)
}

.big-top-arrow {
  display: inline-block;
  border-bottom: 15px solid #1d1d1d;
  border-left: 15px solid rgba(29, 29, 29, 0);
  border-right: 15px solid rgba(29, 29, 29, 0);
  width: 0;
  height: 0
}

.right-arrow.big {
  border-width: 27px 0 27px 20px
}

.right-arrow.gray {
  border-left-color: #e6e6e6
}

.right-arrow.dark-gray {
  border-left-color: #2c2c2c
}

.bottom-arrow.big {
  border-width: 20px 20px 0
}

.bottom-arrow.dark-gray, .bottom-arrow.gray {
  border-top-color: #2c2c2c
}

.top-arrow.gray {
  border-bottom-color: #e6e6e6
}

.top-arrow.black {
  border-bottom-color: #1d1d1d
}

@font-face {
  font-family: vpgseticon;
  src: url("../fonts/vpgseticon.eot?v=183");
  font-display: block
}

@font-face {
  font-family: vpgseticon;
  src: url("../fonts/vpgseticon.woff2?v=183") format("woff2"), url("../fonts/vpgseticon.woff?v=183") format("woff"), url("../fonts/vpgseticon.ttf?v=183") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: block
}

.pika-next, .pika-prev, [class*=" icon-"], [class^=icon-] {
  font-family: vpgseticon;
  speak: none;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.icon-more-2:before {
  content: "\E966"
}

.icon-messenger:before {
  content: "\E967"
}

.icon-sms:before {
  content: "\E960"
}

.icon-mail-2:before {
  content: "\E961"
}

.icon-whatsapp:before {
  content: "\E962"
}

.icon-more-share:before {
  content: "\E963"
}

.icon-fb-share:before {
  content: "\E964"
}

.icon-link:before {
  content: "\E965"
}

.icon-boarding-pass:before {
  content: "\E95F"
}

.icon-close-2:before {
  content: "\E95E";
  color: #666
}

.icon-parrainage:before {
  content: "\E948"
}

.icon-arrowDown:before {
  content: "\E949"
}

.icon-boat3:before {
  content: "\E94A"
}

.icon-checkIn:before {
  content: "\E94B"
}

.icon-contactUs:before {
  content: "\E94C"
}

.icon-document:before {
  content: "\E94D"
}

.icon-flightHorizontal:before {
  content: "\E94E"
}

.icon-flightRotate:before {
  content: "\E94F"
}

.icon-form:before {
  content: "\E950"
}

.icon-helpPage:before {
  content: "\E951"
}

.icon-info-2:before {
  content: "\E952"
}

.icon-luggage-2:before {
  content: "\E953"
}

.icon-mail:before {
  content: "\E954"
}

.icon-manageBooking:before {
  content: "\E955"
}

.icon-note-2:before {
  content: "\E956"
}

.icon-pax:before {
  content: "\E957"
}

.icon-phone-2:before {
  content: "\E958"
}

.icon-phone-rotate:before {
  content: "\E968"
}

.icon-pin-3:before {
  content: "\E959"
}

.icon-print:before {
  content: "\E95A"
}

.icon-service:before {
  content: "\E95B"
}

.icon-train-2:before {
  content: "\E95C"
}

.icon-travelDocument:before {
  content: "\E95D"
}

.icon-logo-klarna:before {
  content: "\E941"
}

.icon-shared:before {
  content: "\E940"
}

.icon-metro:before {
  content: "\E917"
}

.icon-luggages:before {
  content: "\E953"
}

.icon-abta:before {
  content: "\E654"
}

.icon-actu:before {
  content: "\E684"
}

.icon-adult:before, .icon-people:before {
  content: "\E64C"
}

.icon-alert:before {
  content: "\E64D"
}

.icon-allinclusive:before {
  content: "\E927"
}

.icon-amex:before {
  content: "\E657"
}

.icon-ancv:before {
  content: "\E60F"
}

.icon-aol:before {
  content: "\E661"
}

.icon-arrival:before {
  content: "\E90B"
}

.icon-arrow-down-t1:before {
  content: "\E60E"
}

.icon-arrow-down-t2:before {
  content: "\E60D"
}

.icon-arrow-down:before {
  content: "\E60C"
}

.icon-arrow-left-t1:before {
  content: "\E60B"
}

.icon-arrow-left-t2:before {
  content: "\E607"
}

.icon-arrow-left-t3:before {
  content: "\E68C"
}

.icon-arrow-left:before {
  content: "\E606"
}

.icon-arrow-right-t1:before {
  content: "\E60A"
}

.icon-arrow-right-t2:before {
  content: "\E618"
}

.icon-arrow-right-t3:before {
  content: "\E68D"
}

.icon-arrow-right:before {
  content: "\E617"
}

.icon-arrow-top:before {
  content: "\E616"
}

.icon-arrow-up-t1:before {
  content: "\E615"
}

.icon-arrow-up-t2:before {
  content: "\E614"
}

.icon-atol:before {
  content: "\E653"
}

.icon-baby:before {
  content: "\E613"
}

.icon-bancontact:before {
  content: "\E925"
}

.icon-bar:before {
  content: "\E612"
}

.icon-beachandsun:before {
  content: "\E928"
}

.icon-boat:before {
  content: "\E611"
}

.icon-boat2:before {
  content: "\E929"
}

.icon-brl:before {
  content: "\E65B"
}

.icon-bullet:before {
  content: "\E93C"
}

.icon-burgerlight:before {
  content: "\E931"
}

.icon-bus:before {
  content: "\E610"
}

.icon-cadastur:before {
  content: "\E652"
}

.icon-calendar-empty:before {
  content: "\E91C"
}

.icon-calendar-no:before {
  content: "\E920"
}

.icon-calendar1:before {
  content: "\E619"
}

.icon-calendar1week:before {
  content: "\E91D"
}

.icon-calendar2:before {
  content: "\E61A"
}

.icon-calendar2andmore:before {
  content: "\E91E"
}

.icon-calendar2week:before {
  content: "\E91F"
}

.icon-calendarwend:before {
  content: "\E921"
}

.icon-car:before {
  content: "\E61B"
}

.icon-cb:before {
  content: "\E621"
}

.icon-ccalendar2:before {
  content: "\E672"
}

.icon-ccard:before {
  content: "\E664"
}

.icon-check:before {
  content: "\E682"
}

.icon-check2:before {
  content: "\E926"
}

.icon-child:before {
  content: "\E64C"
}

.icon-circle-plus:before {
  content: "\E68E"
}

.icon-citation:before {
  content: "\E65D"
}

.icon-city:before {
  content: "\E680"
}

.icon-city2:before {
  content: "\E922"
}

.icon-citybreak:before {
  content: "\E92A"
}

.icon-clock:before {
  content: "\E686"
}

.icon-close-light:before {
  content: "\E65E"
}

.icon-close:before {
  content: "\E61C"
}

.icon-coeur:before {
  content: "\E904"
}

.icon-coeur-2:before {
  content: "\E914"
}

.icon-cook:before {
  content: "\E605"
}

.icon-corner-less:before {
  content: "\E604"
}

.icon-corner-more:before {
  content: "\E62D"
}

.icon-countryside:before {
  content: "\E932"
}

.icon-coupon:before {
  content: "\E93A"
}

.icon-crayon:before {
  content: "\E66B"
}

.icon-culture:before {
  content: "\E62C"
}

.icon-departure:before {
  content: "\E90A"
}

.icon-desti:before {
  content: "\E92B"
}

.icon-dm:before {
  content: "\E93F"
}

.icon-doc:before {
  content: "\E93D"
}

.icon-download:before {
  content: "\E93B"
}

.icon-duration:before {
  content: "\E62B"
}

.icon-duree1:before {
  content: "\E68F"
}

.icon-duree2:before {
  content: "\E690"
}

.icon-duree3:before {
  content: "\E691"
}

.icon-duree4:before {
  content: "\E901"
}

.icon-earth:before {
  content: "\E620"
}

.icon-edit:before {
  content: "\E62A"
}

.icon-electron:before {
  content: "\E63F   \A   electron"
}

.icon-empty-luggage:before {
  content: "\E91B"
}

.icon-env-ferme:before {
  content: "\E66C"
}

.icon-eur:before {
  content: "\E65A"
}

.icon-event:before {
  content: "\E629"
}

.icon-expert:before {
  content: "\E628"
}

.icon-facebook:before, .icon-fcbk:before {
  content: "\E627"
}

.icon-famille:before {
  content: "\E92C"
}

.icon-family:before {
  content: "\E626"
}

.icon-fav-less:before {
  content: "\E625"
}

.icon-fav-more:before {
  content: "\E624"
}

.icon-fav:before {
  content: "\E623"
}

.icon-filters2:before {
  content: "\E939"
}

.icon-filtre-aeroport:before {
  content: "\E673"
}

.icon-filtre-arret:before {
  content: "\E917"
}

.icon-filtre-cie-star:before {
  content: "\E675"
}

.icon-filtre-cie:before {
  content: "\E674"
}

.icon-filtre-classe:before {
  content: "\E676"
}

.icon-filtre-escales:before {
  content: "\E677"
}

.icon-filtre-gare:before {
  content: "\E918"
}

.icon-filtre-horaires:before {
  content: "\E678"
}

.icon-filtre-train-connection:before {
  content: "\E917"
}

.icon-filtre-train-station:before {
  content: "\E918"
}

.icon-gar-prix-br:before {
  content: "\E665"
}

.icon-gar-prix-en:before {
  content: "\E669"
}

.icon-gar-prix-es:before {
  content: "\E666"
}

.icon-gar-prix-fr:before {
  content: "\E66A"
}

.icon-gar-prix-it:before {
  content: "\E667"
}

.icon-gar-prix-pl:before {
  content: "\E668"
}

.icon-gar-prix-uk:before {
  content: "\E669"
}

.icon-gastro:before {
  content: "\E92D"
}

.icon-gbp:before {
  content: "\E659"
}

.icon-gift:before {
  content: "\E93E"
}

.icon-giftcard:before {
  content: "\E622"
}

.icon-gmail:before {
  content: "\E660"
}

.icon-ggl:before, .icon-google:before {
  content: "\E630"
}

.icon-heart:before {
  content: "\E620"
}

.icon-help:before {
  content: "\E64E"
}

.icon-home:before {
  content: "\E61F"
}

.icon-home-2:before {
  content: "\E906"
}

.icon-hotel:before, .icon-house:before {
  content: "\E61E"
}

.icon-IATA:before, .icon-iata:before {
  content: "\E651"
}

.icon-ideal:before {
  content: "\E90D"
}

.icon-info:before {
  content: "\E61D"
}

.icon-infos-i:before {
  content: "\E687"
}

.icon-inspi:before {
  content: "\E915"
}

.icon-instagram:before {
  content: "\E67C"
}

.icon-label:before {
  content: "\E603"
}

.icon-less:before {
  content: "\E602"
}

.icon-linkedin:before {
  content: "\E683"
}

.icon-list:before {
  content: "\E91A"
}

.icon-last-search:before {
  content: "\E947"
}

.icon-logo-allianz-bas:before {
  content: "\E688"
}

.icon-logo-allianz-ht:before {
  content: "\E689"
}

.icon-logo-mondial:before {
  content: "\E68A"
}

.icon-logo-v:before {
  content: "\E90E"
}

.icon-logo-v-2:before {
  content: "\E90F"
}

.icon-logo-vp:before {
  content: "\E655"
}

.icon-losange:before {
  content: "\E65F"
}

.icon-luggage:before {
  content: "\E670"
}

.icon-luxury:before {
  content: "\E933"
}

.icon-macaron:before {
  content: "\E650"
}

.icon-macarron:before {
  content: "\E62E"
}

.icon-map-2:before {
  content: "\E90C"
}

.icon-map:before {
  content: "\E62F"
}

.icon-map2:before {
  content: "\E681"
}

.icon-map3:before, .icon-mountain:before {
  content: "\E937"
}

.icon-mapes:before {
  content: "\E945"
}

.icon-mapeur:before {
  content: "\E946"
}

.icon-mapfr:before {
  content: "\E943"
}

.icon-mapit:before {
  content: "\E944"
}

.icon-mapuk:before {
  content: "\E942"
}

.icon-mastercard-2:before, .icon-mastercard:before, .icon-mastercard_adyen:before {
  content: "\E64F"
}

.icon-menu:before {
  content: "\E65C"
}

.icon-email:before, .icon-message:before {
  content: "\E64B"
}

.icon-money:before {
  content: "\E66F"
}

.icon-montain-lake:before {
  content: "\E92F"
}

.icon-more:before {
  content: "\E64A"
}

.icon-natural:before, .icon-nature:before {
  content: "\E649"
}

.icon-note:before {
  content: "\E648"
}

.icon-orders:before {
  content: "\E907"
}

.icon-outlook:before {
  content: "\E663"
}

.icon-pharma:before {
  content: "\E66E"
}

.icon-phone:before, .icon-telephone:before {
  content: "\E647"
}

.icon-photos:before {
  content: "\E903"
}

.icon-photos-2:before {
  content: "\E909"
}

.icon-picto-2-fleches:before {
  content: "\E67E"
}

.icon-picto-engag:before {
  content: "\E67F"
}

.icon-picto-filtres:before {
  content: "\E67D"
}

.icon-address:before, .icon-pin:before {
  content: "\E646"
}

.icon-pin-2:before {
  content: "\E900"
}

.icon-pin2h:before {
  content: "\E92E"
}

.icon-pinterest:before, .icon-pntr:before {
  content: "\E645"
}

.icon-plane-2:before {
  content: "\E902"
}

.icon-plane-room:before {
  content: "\E644"
}

.icon-plane:before {
  content: "\E643"
}

.icon-pln:before {
  content: "\E658"
}

.icon-polska:before {
  content: "\E934"
}

.icon-preview:before {
  content: "\E905"
}

.icon-price:before {
  content: "\E923"
}

.icon-prix:before {
  content: "\E66D"
}

.icon-profil:before {
  content: "\E642"
}

.icon-profil-2:before {
  content: "\E913"
}

.icon-pt-interro:before {
  content: "\E664"
}

.icon-rech-rec:before {
  content: "\E685"
}

.icon-reload:before {
  content: "\E641"
}

.icon-restaurant:before {
  content: "\E640"
}

.icon-ringalert:before {
  content: "\E601"
}

.icon-romantic:before {
  content: "\E935"
}

.icon-room:before {
  content: "\E600"
}

.icon-sdv:before {
  content: "\E692"
}

.icon-sea:before {
  content: "\E938"
}

.icon-search-2:before {
  content: "\E908"
}

.icon-search:before {
  content: "\E609"
}

.icon-security:before {
  content: "\E631"
}

.icon-selection:before {
  content: "\E632"
}

.icon-share:before {
  content: "\E633"
}

.icon-smartphone:before {
  content: "\E634"
}

.icon-sofort:before {
  content: "\E919"
}

.icon-spa:before {
  content: "\E930"
}

.icon-speechbubble:before {
  content: "\E685"
}

.icon-sponsoring-br:before, .icon-sponsoring-brl:before {
  content: "\E635"
}

.icon-sponsoring-chf:before {
  content: "\E800"
}

.icon-sponsoring-eur:before {
  content: "\E636"
}

.icon-sponsoring-gbp:before {
  content: "\E637"
}

.icon-sponsoring-pln:before {
  content: "\E658"
}

.icon-sponsoring-uk:before {
  content: "\E637"
}

.icon-sponsoring:before {
  content: "\E638"
}

.icon-star-empty:before {
  content: "\E910"
}

.icon-star-full:before {
  content: "\E911"
}

.icon-star-half:before {
  content: "\E912"
}

.icon-suitcase:before {
  content: "\E916"
}

.icon-supp-excursion:before {
  content: "\E679"
}

.icon-supp-rent:before {
  content: "\E67A"
}

.icon-supp-ski:before {
  content: "\E67B"
}

.icon-suppr:before {
  content: "\E639"
}

.icon-switch:before {
  content: "\E924"
}

.icon-tablet:before {
  content: "\E63A"
}

.icon-ticket:before {
  content: "\E671"
}

.icon-time:before {
  content: "\E63B"
}

.icon-top:before {
  content: "\E63C"
}

.icon-tours:before {
  content: "\E936"
}

.icon-train:before {
  content: "\E63D"
}

.icon-twitter:before, .icon-twtr:before {
  content: "\E63E"
}

.icon-visa:before, .icon-visa_adyen:before {
  content: "\E63F"
}

.icon-yahoo:before {
  content: "\E662"
}

.icon-youtube:before, .icon-ytb:before {
  content: "\E608"
}

.icon-zoom:before {
  content: "\E656"
}

@font-face {
  font-family: VP-Icon-Line;
  src: url("../fonts/VP-Icon-Line.eot?v=4.1");
  src: url("../fonts/VP-Icon-Line.eot?v=4.1#iefix") format("embedded-opentype"), url("../fonts/VP-Icon-Line.ttf?v=4.1") format("truetype"), url("../fonts/VP-Icon-Line.woff?v=4.1") format("woff"), url("../fonts/VP-Icon-Line.svg?v=4.1#VP-Icon-Line") format("svg");
  font-weight: 400;
  font-style: normal;
  font-display: block
}

[class*=" line-icon-"], [class^=line-icon-] {
  font-family: VP-Icon-Line !important;
  speak: none;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.line-icon-telecabine:before {
  content: "\E9B0"
}

.line-icon-suitcase-cabine-2:before {
  content: "\E9AF"
}

.line-icon-expand:before {
  content: "\E9AD"
}

.line-icon-trombone:before {
  content: "\E9AE"
}

.line-icon-send:before {
  content: "\E9AC"
}

.line-icon-eye-hidden:before {
  content: "\E9AB"
}

.line-icon-eyes:before {
  content: "\E97C"
}

.line-icon-bed-double:before {
  content: "\E9A8"
}

.line-icon-bed-baby:before {
  content: "\E9A9"
}

.line-icon-area:before {
  content: "\E9AA"
}

.line-icon-lake:before {
  content: "\E9A7"
}

.line-icon-like-solid:before {
  content: "\E91E"
}

.line-icon-dislike-solid:before {
  content: "\E9A6"
}

.line-icon-service:before {
  content: "\E9A5"
}

.line-icon-gift:before {
  content: "\E9A4"
}

.line-icon-flag-active:before {
  content: "\E9A2"
}

.line-icon-flag:before {
  content: "\E9A3"
}

.line-icon-user-new:before {
  content: "\E9A1"
}

.line-icon-card-credit:before {
  content: "\E9A0"
}

.line-icon-geolocation:before {
  content: "\E99B"
}

.line-icon-star:before {
  content: "\E99D"
}

.line-icon-dislike:before {
  content: "\E99C"
}

.line-icon-like:before {
  content: "\E99E"
}

.line-icon-match:before {
  content: "\E99F"
}

.line-icon-folder:before {
  content: "\E997"
}

.line-icon-no-heart-solid:before {
  content: "\E998"
}

.line-icon-no-heart:before {
  content: "\E999"
}

.line-icon-web:before {
  content: "\E99A"
}

.line-icon-ski:before, .line-icon-sport-ski:before {
  content: "\E996"
}

.line-icon-filter-bar:before {
  content: "\E995"
}

.line-icon-logo-fill:before {
  content: "\E994"
}

.line-icon-document-train:before {
  content: "\E991"
}

.line-icon-suitcase-cabine:before {
  content: "\E992"
}

.line-icon-document-train-valid:before {
  content: "\E993"
}

.line-icon-plane-arrival:before {
  content: "\E98B"
}

.line-icon-plane-departure:before {
  content: "\E98C"
}

.line-icon-plane-left:before {
  content: "\E98D"
}

.line-icon-plane-right:before {
  content: "\E98E"
}

.line-icon-car-doors:before {
  content: "\E98F"
}

.line-icon-car-gear:before {
  content: "\E990"
}

.line-icon-transport-plane-boat:before {
  content: "\E987"
}

.line-icon-transport-plane-train:before {
  content: "\E988"
}

.line-icon-history:before {
  content: "\E989"
}

.line-icon-family-capacity:before {
  content: "\E98A"
}

.line-icon-luxury:before {
  content: "\E986"
}

.line-icon-laundry:before {
  content: "\E96D"
}

.line-icon-music:before {
  content: "\E96E"
}

.line-icon-popin:before {
  content: "\E96F"
}

.line-icon-temp-max:before {
  content: "\E970"
}

.line-icon-temp-min:before {
  content: "\E971"
}

.line-icon-weather-snow:before {
  content: "\E972"
}

.line-icon-wheelchair:before {
  content: "\E973"
}

.line-icon-document-book:before {
  content: "\E974"
}

.line-icon-document-flight:before {
  content: "\E975"
}

.line-icon-list-column:before {
  content: "\E976"
}

.line-icon-pin-extended:before {
  content: "\E977"
}

.line-icon-boat:before {
  content: "\E978"
}

.line-icon-list:before {
  content: "\E979"
}

.line-icon-logo-outline:before {
  content: "\E97A"
}

.line-icon-pin-step:before {
  content: "\E97B"
}

.line-icon-eye:before {
  content: "\E97C"
}

.line-icon-map-globe:before {
  content: "\E97D"
}

.line-icon-reload:before {
  content: "\E97E"
}

.line-icon-ribbon-star:before {
  content: "\E97F"
}

.line-icon-ribbon:before {
  content: "\E980"
}

.line-icon-rose:before {
  content: "\E981"
}

.line-icon-beach:before {
  content: "\E982"
}

.line-icon-device-rotate:before {
  content: "\E983"
}

.line-icon-spa-lotus:before {
  content: "\E984"
}

.line-icon-popup:before {
  content: "\E985"
}

.line-icon-suitcase-light:before {
  content: "\E96A"
}

.line-icon-suitcase-times-light:before {
  content: "\E96B"
}

.line-icon-suitcase-warning-light:before {
  content: "\E96C"
}

.line-icon-building-city:before {
  content: "\E968"
}

.line-icon-map-earth:before {
  content: "\E969"
}

.line-icon-suitcase-warning:before {
  content: "\E967"
}

.line-icon-budget-dollars:before {
  content: "\E95E"
}

.line-icon-budget-euro:before {
  content: "\E95F"
}

.line-icon-budget-francsuisse:before {
  content: "\E960"
}

.line-icon-budget-livre:before {
  content: "\E961"
}

.line-icon-shield-check:before {
  content: "\E962"
}

.line-icon-shield-doublecheck:before {
  content: "\E963"
}

.line-icon-shield-times:before {
  content: "\E964"
}

.line-icon-metro:before, .line-icon-transport-metro:before {
  content: "\E965"
}

.line-icon-car:before, .line-icon-transport-transfert:before {
  content: "\E966"
}

.line-icon-instagram:before {
  content: "\E95A"
}

.line-icon-user-friend:before {
  content: "\E95B"
}

.line-icon-document-flight-valid:before {
  content: "\E924"
}

.line-icon-building:before {
  content: "\E925"
}

.line-icon-document-file:before {
  content: "\E926"
}

.line-icon-hotel:before {
  content: "\E927"
}

.line-icon-layer:before {
  content: "\E928"
}

.line-icon-restaurant:before, .line-icon-utensil:before {
  content: "\E929"
}

.line-icon-arrow-exchange-horizontal:before {
  content: "\E92A"
}

.line-icon-arrow-exchange-vertical:before {
  content: "\E92B"
}

.line-icon-culture:before {
  content: "\E92C"
}

.line-icon-gastronomy:before {
  content: "\E92D"
}

.line-icon-images:before {
  content: "\E92E"
}

.line-icon-camera:before {
  content: "\E92F"
}

.line-icon-exclamation-circle:before, .line-icon-note:before {
  content: "\E930"
}

.line-icon-filter:before {
  content: "\E931"
}

.line-icon-info:before, .line-icon-information-circle:before {
  content: "\E932"
}

.line-icon-lock:before {
  content: "\E933"
}

.line-icon-cog:before {
  content: "\E934"
}

.line-icon-exclamation-triangle:before {
  content: "\E935"
}

.line-icon-nature-leaf:before, .line-icon-nature:before {
  content: "\E936"
}

.line-icon-mountain:before, .line-icon-nature-mountain:before, .line-icon-nature-moutain:before {
  content: "\E937"
}

.line-icon-train:before, .line-icon-transport-train:before {
  content: "\E938"
}

.line-icon-ellipsis-solid:before {
  content: "\E939"
}

.line-icon-ellipsis:before {
  content: "\E93A"
}

.line-icon-minus-circle:before {
  content: "\E93B"
}

.line-icon-event:before, .line-icon-ticket:before {
  content: "\E93C"
}

.line-icon-device:before {
  content: "\E93D"
}

.line-icon-lightbulb:before {
  content: "\E93E"
}

.line-icon-minus:before {
  content: "\E93F"
}

.line-icon-plus-circle:before {
  content: "\E940"
}

.line-icon-plus:before {
  content: "\E941"
}

.line-icon-bus:before, .line-icon-transport-bus:before {
  content: "\E942"
}

.line-icon-bed:before {
  content: "\E943"
}

.line-icon-bell:before {
  content: "\E944"
}

.line-icon-comment-answer:before {
  content: "\E945"
}

.line-icon-email:before, .line-icon-mail:before {
  content: "\E946"
}

.line-icon-address:before, .line-icon-map-marker:before {
  content: "\E947"
}

.line-icon-phone:before, .line-icon-telephone:before {
  content: "\E948"
}

.line-icon-map:before {
  content: "\E949"
}

.line-icon-star-circle:before {
  content: "\E94A"
}

.line-icon-tag-percent:before {
  content: "\E94B"
}

.line-icon-tag:before {
  content: "\E94C"
}

.line-icon-comment:before {
  content: "\E94D"
}

.line-icon-yahoo:before {
  content: "\E94E"
}

.line-icon-google-plus-square:before {
  content: "\E94F"
}

.line-icon-google-plus:before {
  content: "\E950"
}

.line-icon-linkedin-square:before {
  content: "\E951"
}

.line-icon-linkedin:before {
  content: "\E952"
}

.line-icon-pinterest-square:before {
  content: "\E953"
}

.line-icon-pinterest:before {
  content: "\E954"
}

.line-icon-twitter-square:before {
  content: "\E955"
}

.line-icon-twitter:before {
  content: "\E956"
}

.line-icon-facebook-messenger:before {
  content: "\E957"
}

.line-icon-facebook-square:before {
  content: "\E958"
}

.line-icon-facebook:before {
  content: "\E959"
}

.line-icon-home:before, .line-icon-house:before {
  content: "\E923"
}

.line-icon-arrow-bottom:before {
  content: "\E900"
}

.line-icon-arrow-left:before {
  content: "\E901"
}

.line-icon-arrow-right:before {
  content: "\E902"
}

.line-icon-arrow-top:before {
  content: "\E903"
}

.line-icon-family:before {
  content: "\E904"
}

.line-icon-heart-solid:before {
  content: "\E905"
}

.line-icon-bar:before, .line-icon-theme-allinclusive:before {
  content: "\E906"
}

.line-icon-suitcase-times:before {
  content: "\E907"
}

.line-icon-calendar-l:before {
  content: "\E908"
}

.line-icon-calendar-m:before {
  content: "\E909"
}

.line-icon-calendar-s:before {
  content: "\E90A"
}

.line-icon-calendar-xl:before {
  content: "\E90B"
}

.line-icon-calendar:before {
  content: "\E90C"
}

.line-icon-clock:before {
  content: "\E90D"
}

.line-icon-family-baby:before {
  content: "\E90E"
}

.line-icon-plane:before {
  content: "\E90F"
}

.line-icon-share:before {
  content: "\E910"
}

.line-icon-family-adult:before, .line-icon-people:before {
  content: "\E911"
}

.line-icon-family-child:before {
  content: "\E912"
}

.line-icon-bars:before {
  content: "\E913"
}

.line-icon-search:before {
  content: "\E914"
}

.line-icon-check-circle:before {
  content: "\E915"
}

.line-icon-check:before {
  content: "\E916"
}

.line-icon-pen:before {
  content: "\E917"
}

.line-icon-times-circle:before {
  content: "\E918"
}

.line-icon-trash:before {
  content: "\E919"
}

.line-icon-angle-down:before {
  content: "\E91A"
}

.line-icon-angle-left:before {
  content: "\E91B"
}

.line-icon-angle-right:before {
  content: "\E91C"
}

.line-icon-angle-up:before {
  content: "\E91D"
}

.line-icon-times:before {
  content: "\E91F"
}

.line-icon-heart:before {
  content: "\E920"
}

.line-icon-luggages:before, .line-icon-suitcase:before {
  content: "\E921"
}

.line-icon-user:before {
  content: "\E922"
}

.line-icon-ticket-transport:before {
  content: "\E95C"
}

.line-icon-map-stop:before {
  content: "\E95D"
}

@media only screen and (min-width: 1025px) {
  .hidden-desktop, .only-mobile, .only-tablet {
    display: none
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .hidden-tablet, .only-desktop, .only-mobile {
    display: none
  }
}

@media only screen and (max-width: 767px) {
  .hidden-mobile, .only-desktop, .only-tablet {
    display: none
  }
}

@media only screen and (max-width: 365px) {
  .hidden-mobile, .no-mobile-small, .only-desktop, .only-tablet {
    display: none
  }
}

@media only screen and (min-width: 365px) {
  .only-mobile-small {
    display: none
  }
}

.hide-text {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0
}

.hidden {
  display: none
}

.infoBlock {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  width: 100%;
  border-left: 3px solid #bd1343;
  padding: 10px 20px;
  margin: 20px 0;
  background: #fff
}

.infoBlock i {
  color: #bd1343;
  margin: 0 15px 0 0;
  font-size: 25px
}

.infoBlock .infoTxt {
  font-weight: 700;
  color: #1d1d1d
}

html {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  scroll-behavior: smooth
}

*, :after, :before {
  -moz-box-sizing: inherit;
  box-sizing: inherit
}

body {
  font-family: Source Sans Pro, sans-serif;
  font-size: 14px;
  background-color: #eee;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased
}

a, body {
  color: #1d1d1d
}

a {
  text-decoration: none
}

a:hover {
  text-decoration: underline
}

@media only screen and (max-width: 1024px) {
  .TimeLeft {
    padding-left: 20px;
    padding-right: 20px
  }
}

#adminABTest {
  display: none
}

.page-center {
  width: 100%;
  max-width: 980px;
  margin: 0 auto
}

.show-inline {
  display: inline-block
}

@media only screen and (min-width: 1025px) {
  .hidden-desktop, .only-mobile, .only-tablet {
    display: none !important
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .hidden-tablet, .only-desktop, .only-mobile {
    display: none !important
  }
}

@media only screen and (max-width: 767px) {
  .hidden-mobile, .only-desktop, .only-tablet {
    display: none !important
  }
}

.summary-pax-type {
  display: block;
  font-size: 14px;
  color: #1d1d1d
}

.summary-pax-type .summary-ages {
  color: #666
}

.admin-msg-box:empty {
  display: none
}

.block-admin.admin-msg-box {
  margin-top: 10px !important
}

.admin-msg-box {
  margin-bottom: 10px;
  color: green
}

.admin-msg-box fieldset {
  background: #c9ffca;
  border-radius: 5px;
  border: 1px solid #349534;
  padding-bottom: 10px
}

.admin-msg-box legend {
  font-size: 18px;
  margin-left: 10px;
  text-transform: uppercase;
  font-weight: 700;
  color: green
}

.admin-msg-box p {
  font-style: italic;
  padding-left: 10px
}

.admin-msg-box ul {
  padding-left: 20px
}

.admin-msg-box #prestatation_id {
  font-weight: 700;
  color: #1d1d1d
}

.admin-log-4081-error {
  width: 55vw;
  margin: auto;
  overflow: auto
}

.admin-log-4081-error-content {
  padding: 10px
}

.adminData-block {
  background-color: #c9ffca;
  border: 1px solid #349534;
  color: green;
  padding: 5px;
  margin-bottom: 20px;
  word-wrap: break-word
}

.flight .adminData-block {
  display: inline-block;
  margin-bottom: -7px;
  padding: 4px 6px;
  font-size: 12px
}

.adminData-block h2, .adminData-block h3, .adminData-block h4 {
  font-size: 14px;
  margin-top: 10px
}

.adminData-block-info {
  background-color: #d1ecf1;
  border: 1px solid #bee5eb;
  color: #0c5460
}

.adminData-block-warning {
  background-color: #fff3cd;
  border: 1px solid #ffeeba;
  color: #856404
}

.adminData-block-error {
  background-color: #f8d7da;
  border: 1px solid #f5c6cb;
  color: #721c24
}

.adminData-block-error h2 {
  font-weight: 700
}

.adminData-block-error h3 {
  text-transform: uppercase;
  color: #000
}

.adminData-block button.adminBtn {
  background-color: #c9ffca;
  color: green;
  font-size: 12px;
  border: 1px solid #349534;
  padding: 1px 5px;
  margin: 0 5px 0 0
}

.adminData-block #flightData {
  padding: 10px;
  font-size: 13px;
  background-color: #c9ffca;
  border: 1px solid #349534
}

.adminData-block #flightData h1 {
  font-size: 16px;
  font-weight: 700;
  font-style: italic;
  padding: 0
}

.adminData-block #flightData h2 {
  font-size: 14px;
  padding: 6px 10px;
  text-transform: uppercase
}

.adminData-block #flightData div.line {
  padding-left: 30px;
  color: green
}

.adminData-block #flightData div.extra {
  padding-left: 40px;
  color: green
}

.TabsAdmin fieldset {
  background: #c9ffca;
  border-radius: 5px;
  border: 1px solid #349534;
  padding: 0 5px 5px
}

.TabsAdmin legend {
  font-size: 18px;
  margin-left: 5px;
  text-transform: uppercase;
  font-weight: 700;
  color: green
}

.TabsAdmin p {
  padding-left: 10px;
  color: green;
  font-style: italic
}

.TabsAdminNav {
  padding-left: 5px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.TabsAdminNav__item {
  font-weight: 700;
  background-color: #f8f8f8;
  color: #afafaf;
  padding: 5px 5px 0;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px
}

.TabsAdminNav__item.is-active {
  color: #495057;
  background-color: #fff
}

.TabsAdminNav--span {
  cursor: pointer
}

.TabsAdminTabs {
  background: #fff;
  padding: 0 3px;
  border-radius: 5px
}

.TabsAdminTabs__tab {
  display: none
}

.TabsAdminTabs__tab.is-active {
  display: block
}

.TabsAdminTabs__content {
  border-radius: 16px;
  padding-bottom: 10px;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  word-break: break-all;
  padding: 10px
}

.TabsAdminTabs__content--info {
  color: #0c5460
}

.TabsAdminTabs__content--warning {
  color: #856404
}

.TabsAdminTabs__content--error {
  color: #721c24
}

.TabsAdminTabs__content h2 {
  font-size: 14px;
  padding: 6px 0;
  text-transform: uppercase;
  font-weight: 700;
  font-style: italic;
  text-decoration: underline
}

.TabsAdminTabs__content h4 {
  font-size: 14px;
  font-weight: 700;
  margin: 5px 0
}

.BadgeAdmin {
  display: inline-block;
  padding: .25em .4em;
  margin: -5px 2px 5px;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25rem
}

.BadgeAdmin--info {
  color: #0c5460;
  background: #d1ecf1;
  border: 1px solid #bee5eb
}

.BadgeAdmin--warning {
  color: #856404;
  background: #fff3cd;
  border: 1px solid #ffeeba
}

.BadgeAdmin--error {
  color: #721c24;
  background: #f8d7da;
  border: 1px solid #f5c6cb
}

/*! nouislider - 13.1.5 - 4/24/2019 */
.noUi-target, .noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.noUi-target {
  position: relative;
  direction: ltr
}

.noUi-base, .noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1
}

.noUi-connects {
  overflow: hidden;
  z-index: 0
}

.noUi-connect, .noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  -webkit-transform-style: flat;
  transform-style: flat
}

html:not([dir=rtl]) .noUi-horizontal .noUi-origin {
  left: auto;
  right: 0
}

.noUi-vertical .noUi-origin {
  width: 0
}

.noUi-horizontal .noUi-origin {
  height: 0
}

.noUi-handle {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: absolute
}

.noUi-touch-area {
  height: 100%;
  width: 100%
}

.noUi-state-tap .noUi-connect, .noUi-state-tap .noUi-origin {
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s
}

.noUi-state-drag * {
  cursor: inherit !important
}

.noUi-horizontal {
  height: 18px
}

.noUi-horizontal .noUi-handle {
  width: 34px;
  height: 28px;
  left: -17px;
  top: -6px
}

.noUi-vertical {
  width: 18px
}

.noUi-vertical .noUi-handle {
  width: 28px;
  height: 34px;
  left: -6px;
  top: -17px
}

html:not([dir=rtl]) .noUi-horizontal .noUi-handle {
  right: -17px;
  left: auto
}

.noUi-target {
  background: #fafafa;
  border-radius: 4px;
  border: 1px solid #d3d3d3;
  box-shadow: inset 0 1px 1px #f0f0f0, 0 3px 6px -5px #bbb
}

.noUi-connects {
  border-radius: 3px
}

.noUi-connect {
  background: #3fb8af
}

.noUi-draggable {
  cursor: ew-resize
}

.noUi-vertical .noUi-draggable {
  cursor: ns-resize
}

.noUi-handle {
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  cursor: default;
  box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ebebeb, 0 3px 6px -3px #bbb
}

.noUi-active {
  box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ddd, 0 3px 6px -3px #bbb
}

.noUi-handle:after, .noUi-handle:before {
  content: "";
  display: block;
  position: absolute;
  height: 14px;
  width: 1px;
  background: #e8e7e6;
  left: 14px;
  top: 6px
}

.noUi-handle:after {
  left: 17px
}

.noUi-vertical .noUi-handle:after, .noUi-vertical .noUi-handle:before {
  width: 14px;
  height: 1px;
  left: 6px;
  top: 14px
}

.noUi-vertical .noUi-handle:after {
  top: 17px
}

[disabled] .noUi-connect {
  background: #b8b8b8
}

[disabled].noUi-handle, [disabled] .noUi-handle, [disabled].noUi-target {
  cursor: not-allowed
}

.noUi-pips, .noUi-pips * {
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.noUi-pips {
  position: absolute;
  color: #999
}

.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center
}

.noUi-value-sub {
  color: #ccc;
  font-size: 10px
}

.noUi-marker {
  position: absolute;
  background: #ccc
}

.noUi-marker-large, .noUi-marker-sub {
  background: #aaa
}

.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%
}

.noUi-value-horizontal {
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%)
}

.noUi-rtl .noUi-value-horizontal {
  -webkit-transform: translate(50%, 50%);
  transform: translate(50%, 50%)
}

.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 15px
}

.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%
}

.noUi-value-vertical {
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  padding-left: 25px
}

.noUi-rtl .noUi-value-vertical {
  -webkit-transform: translateY(50%);
  transform: translateY(50%)
}

.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px
}

.noUi-marker-vertical.noUi-marker-sub {
  width: 10px
}

.noUi-marker-vertical.noUi-marker-large {
  width: 15px
}

.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap
}

.noUi-horizontal .noUi-tooltip {
  -webkit-transform: translate(-50%);
  transform: translate(-50%);
  left: 50%;
  bottom: 120%
}

.noUi-vertical .noUi-tooltip {
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  top: 50%;
  right: 120%
}

.time-range .noUi-horizontal {
  background: #fff;
  border: 1px solid transparent
}

@media only screen and (max-width: 1024px) {
  .time-range .noUi-horizontal {
    height: 6px;
    margin: 13px
  }
}

@media only screen and (min-width: 1025px) {
  .time-range .noUi-horizontal {
    margin: 9px;
    height: 4px
  }
}

.time-range .noUi-horizontal .noUi-handle {
  border-radius: 50%;
  border: 2px solid #1d1d1d;
  background-color: #fff;
  cursor: pointer;
  box-shadow: none;
  outline: none
}

@media only screen and (max-width: 1024px) {
  .time-range .noUi-horizontal .noUi-handle {
    width: 26px;
    height: 26px;
    right: -13px !important;
    top: -13px
  }
}

@media only screen and (min-width: 1025px) {
  .time-range .noUi-horizontal .noUi-handle {
    width: 18px;
    height: 18px;
    right: -9px !important;
    top: -9px
  }
}

.time-range .noUi-horizontal .noUi-handle:after, .time-range .noUi-horizontal .noUi-handle:before {
  height: 0;
  width: 0
}

.time-range .noUi-connect {
  background: #1d1d1d
}

.time-range .noUi-base {
  -webkit-transform: none;
  transform: none;
  background-color: #d3d3d3
}

.time-range [disabled].noUi-horizontal {
  border-color: transparent
}

.time-range [disabled].noUi-horizontal .noUi-handle {
  background-color: #e6e6e6;
  border-color: #a7a7a7
}

.time-range [disabled] .noUi-connect {
  background-color: #e6e6e6
}

.noUi-background {
  background-color: #d3d3d3;
  box-shadow: none
}

.RangeSlider--theme-pink {
  height: 6px !important
}

.RangeSlider--theme-pink.noUi-horizontal .noUi-handle {
  background-color: #bd1343;
  border: none;
  width: 24px;
  height: 24px;
  right: -12px !important;
  top: -11px !important
}

.RangeSlider--theme-pink .noUi-connect {
  background-color: #bd1343
}

.tooltipster-default {
  border: 2px solid #1d1d1d;
  background-color: #1d1d1d;
  color: #fff
}

.tooltipster-shadow {
  border: 2px solid #fff;
  background: #fff;
  color: #2c2c2c;
  box-shadow: 0 0 14px px px #4d4d4d
}

.tooltipster-default .tooltipster-content, .tooltipster-shadow .tooltipster-content {
  font-family: Source Sans Pro, sans-serif;
  font-size: 12px;
  line-height: 16px;
  padding: 20px;
  overflow: hidden;
  z-index: 9999
}

.tooltipster-content h1, .tooltipster-content p {
  font-family: Source Sans Pro, sans-serif !important;
  margin-top: 10px
}

.tooltipster-content h1 {
  font-weight: 700;
  margin-top: 0;
  font-size: 14px
}

.tooltipster-shadow-v2 {
  border: 2px solid #fff;
  border-radius: 2px;
  background: #fff;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1)
}

.tooltipster-shadow-v2 .tooltipster-content {
  line-height: 18px;
  font-size: 14px;
  color: #1d1d1d;
  padding: 20px 120px 20px 20px;
  overflow: hidden;
  z-index: 99
}

.icon-pt-interro, .tooltipstered {
  cursor: help
}

.icon-pt-interro {
  color: #666;
  margin-left: 10px
}

#close-tooltip:before, .close-tooltip:before {
  float: right;
  position: absolute;
  top: 10px;
  right: 10px
}

.tooltipster-base {
  padding: 0;
  font-size: 0;
  line-height: 0;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 9999999;
  pointer-events: none;
  width: 90%;
  overflow: visible
}

.tooltipster-base .tooltipster-content {
  overflow: hidden
}

.tooltipster-arrow {
  display: block;
  text-align: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1
}

.tooltipster-arrow-border, .tooltipster-arrow span {
  display: block;
  width: 0;
  height: 0;
  position: absolute
}

.tooltipster-arrow-top-left span, .tooltipster-arrow-top-right span, .tooltipster-arrow-top span {
  border-left: 8px solid transparent !important;
  border-right: 8px solid transparent !important;
  border-top: 8px solid;
  bottom: -7px
}

.tooltipster-arrow-top-left .tooltipster-arrow-border, .tooltipster-arrow-top-right .tooltipster-arrow-border, .tooltipster-arrow-top .tooltipster-arrow-border {
  border-left: 9px solid transparent !important;
  border-right: 9px solid transparent !important;
  border-top: 9px solid;
  bottom: -7px
}

.tooltipster-arrow-bottom-left span, .tooltipster-arrow-bottom-right span, .tooltipster-arrow-bottom span {
  border-left: 8px solid transparent !important;
  border-right: 8px solid transparent !important;
  border-bottom: 8px solid;
  top: -7px
}

.tooltipster-arrow-bottom-left .tooltipster-arrow-border, .tooltipster-arrow-bottom-right .tooltipster-arrow-border, .tooltipster-arrow-bottom .tooltipster-arrow-border {
  border-left: 9px solid transparent !important;
  border-right: 9px solid transparent !important;
  border-bottom: 9px solid;
  top: -7px
}

.tooltipster-arrow-bottom .tooltipster-arrow-border, .tooltipster-arrow-bottom span, .tooltipster-arrow-top .tooltipster-arrow-border, .tooltipster-arrow-top span {
  left: 0;
  right: 0;
  margin: 0 auto
}

.tooltipster-arrow-bottom-left span, .tooltipster-arrow-top-left span {
  left: 6px
}

.tooltipster-arrow-bottom-left .tooltipster-arrow-border, .tooltipster-arrow-top-left .tooltipster-arrow-border {
  left: 5px
}

.tooltipster-arrow-bottom-right span, .tooltipster-arrow-top-right span {
  right: 6px
}

.tooltipster-arrow-bottom-right .tooltipster-arrow-border, .tooltipster-arrow-top-right .tooltipster-arrow-border {
  right: 5px
}

.tooltipster-arrow-left .tooltipster-arrow-border, .tooltipster-arrow-left span {
  border-top: 8px solid transparent !important;
  border-bottom: 8px solid transparent !important;
  border-left: 8px solid;
  top: 50%;
  margin-top: -7px;
  right: -7px
}

.tooltipster-arrow-left .tooltipster-arrow-border {
  border-top: 9px solid transparent !important;
  border-bottom: 9px solid transparent !important;
  border-left: 9px solid;
  margin-top: -8px
}

.tooltipster-arrow-right .tooltipster-arrow-border, .tooltipster-arrow-right span {
  border-top: 8px solid transparent !important;
  border-bottom: 8px solid transparent !important;
  border-right: 8px solid;
  top: 50%;
  margin-top: -7px;
  left: -7px
}

.tooltipster-arrow-right .tooltipster-arrow-border {
  border-top: 9px solid transparent !important;
  border-bottom: 9px solid transparent !important;
  border-right: 9px solid;
  margin-top: -8px
}

.tooltipster-fade {
  opacity: 0;
  transition-property: opacity
}

.tooltipster-fade-show {
  opacity: 1
}

.tooltipster-grow {
  -webkit-transform: scale(0);
  transform: scale(0);
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-backface-visibility: hidden
}

.tooltipster-grow-show {
  -webkit-transform: scale(1);
  transform: scale(1);
  transition-timing-function: cubic-bezier(.175, .885, .32, 1.15)
}

.tooltipster-swing {
  opacity: 0;
  -webkit-transform: rotate(4deg);
  transform: rotate(4deg);
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform
}

.tooltipster-swing-show {
  opacity: 1;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transition-timing-function: cubic-bezier(.23, .635, .495, 2.4)
}

.tooltipster-fall {
  top: 0;
  transition-property: top;
  transition-timing-function: cubic-bezier(.175, .885, .32, 1.15)
}

.tooltipster-fall.tooltipster-dying {
  transition-property: all;
  top: 0 !important;
  opacity: 0
}

.tooltipster-slide {
  left: -40px;
  transition-property: left;
  transition-timing-function: cubic-bezier(.175, .885, .32, 1.15)
}

.tooltipster-slide.tooltipster-dying {
  transition-property: all;
  left: 0 !important;
  opacity: 0
}

.tooltipster-content-changing {
  opacity: .5;
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.collapse:not(.show) {
  display: none
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height .35s ease
}

@media only screen and (min-width: 1025px) {
  #page-container > .page-center {
    display: -ms-grid;
    display: grid;
    margin: 0 auto;
    -ms-grid-columns: 640px 40px 300px;
    grid-template-columns: 640px 300px;
    -ms-grid-rows: -webkit-max-content 1fr;
    -ms-grid-rows: max-content 1fr;
    grid-template-rows: -webkit-max-content 1fr;
    grid-template-rows: max-content 1fr;
    grid-column-gap: 40px;
    grid-template-areas: "Main Sidebar" "Main Help";
    width: 980px
  }
}

#page-container > .page-refund {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 980px
}

#page-container #rebuildMessage {
  grid-area: RebuildMsg
}

#page-container #react-smart-summary, #page-container #react-summary {
  grid-area: Sidebar;
  margin-bottom: 20px
}

@media only screen and (min-width: 1025px) {
  #page-container #react-smart-summary, #page-container #react-summary {
    margin-top: 85px
  }
}

#page-container .Main {
  grid-area: Main
}

@media only screen and (max-width: 1024px) {
  #page-container .Main {
    padding-left: 10px;
    padding-right: 10px
  }
}

@media only screen and (min-width: 1025px) {
  #page-container .Main.error {
    margin-top: 40px
  }
}

@media tab-mob {
  #page-container .Main.error {
    margin-bottom: 20px
  }
}

#page-container .Main.error + .help {
  display: none
}

#page-container .Main.full {
  -ms-grid-column-span: 2;
  grid-column-end: span 2
}

#page-container .Main .section:first-of-type .section-title:not(.subsection) {
  height: 85px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center
}

@media only screen and (min-width: 1025px) {
  #page-container .Main .admin-msg-box {
    margin-top: 85px
  }
}

#page-container .help {
  grid-area: Help
}

#page-container.page-error {
  padding-bottom: 40px
}

@media only screen and (min-width: 1025px) {
  #page-container.page-error .recap {
    margin-top: 40px
  }
}

@media only screen and (min-width: 1025px) {
  #page-container.page-giftcard > .page-center {
    display: -webkit-flex;
    display: flex;
    margin: 0 auto;
    -ms-grid-columns: 640px 40px 300px;
    grid-template-columns: 640px 300px;
    -ms-grid-rows: -webkit-max-content 1fr;
    -ms-grid-rows: max-content 1fr;
    grid-template-rows: -webkit-max-content 1fr;
    grid-template-rows: max-content 1fr;
    grid-column-gap: 40px;
    grid-template-areas: "Head Head" "Main Sidebar";
    width: 980px
  }

  #page-container.page-giftcard > .page-center > #react-smart-summary, #page-container.page-giftcard > .page-center > #react-summary {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }

  #page-container.page-giftcard > .page-center > .Main {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1
  }
}

#page-container.page-giftcard .giftCard-head {
  grid-area: Head
}

#page-container.page-giftcard .section.giftCard {
  grid-area: Main
}

#page-container.page-giftcard .gc-help {
  grid-area: Sidebar
}

@media only screen and (min-width: 1025px) {
  #page-container #react-smart-summary, #page-container #react-summary {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  #page-container .Main {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1
  }

  #page-container .help {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }

  #page-container.page-giftcard .giftCard-head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3
  }

  #page-container.page-giftcard .section.giftCard {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1
  }

  #page-container.page-giftcard > .page-center > .section.giftCard {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1
  }

  #page-container.page-giftcard .gc-help {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  #page-container.page-giftcard > .page-center > .gc-help {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }
}

@media only screen and (min-width: 1025px) {
  #page-container.PageThreeDSV2 > .page-center {
    display: block;
    margin: 0 auto
  }
}

@media only screen and (min-width: 1025px) {
  #page-container .PartialBalance {
    -ms-grid-columns: 680px 0 300px;
    grid-template-columns: 680px 300px;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    grid-template-areas: "MainPartialBalance SidebarPartialBalance";
    grid-column-gap: 0;
    margin-bottom: 40px
  }
}

#page-container .PartialBalance .Main {
  grid-area: MainPartialBalance
}

@media only screen and (min-width: 1025px) {
  #page-container .PartialBalance .Main {
    padding: 40px
  }
}

@media only screen and (max-width: 1024px) {
  #page-container .PartialBalance .Main .PartialBalanceHelp {
    padding: 20px;
    margin: 0 10px
  }
}

@media only screen and (min-width: 1025px) {
  #page-container .PartialBalance .Main .PartialBalanceHelp {
    padding: 0
  }
}

#page-container .PartialBalance .PartialBalanceHelp {
  grid-area: SidebarPartialBalance
}

@media only screen and (min-width: 1025px) {
  #page-container .PartialBalance .Main {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  #page-container .PartialBalance .PartialBalanceHelp {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    padding: 40px
  }
}

.confirmation-page > .page-center {
  grid-column-gap: 0 !important
}

#header {
  background-color: #1d1d1d
}

@media only screen and (max-width: 1024px) {
  #header .page-center {
    padding: 0 20px
  }
}

#header .logo-container {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  height: 50px
}

@media only screen and (min-width: 1025px) {
  #header .logo-container {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    height: 68px
  }
}

@media only screen and (max-width: 1024px) {
  #header .logo-container #back {
    position: absolute;
    left: 0
  }
}

#header .logo-container #back a {
  color: #fff;
  font-size: 24px;
  line-height: 24px;
  height: 24px;
  display: block
}

@media only screen and (min-width: 1025px) {
  #header .logo-container #back a {
    margin-right: 16px
  }
}

#header .logo-container #back a:hover {
  text-decoration: none
}

@media only screen and (max-width: 767px) {
  #header .logo-container .logo .hidden-phone {
    display: none
  }
}

#header .logo-container .logo img {
  width: 210px
}

section.recap {
  background: #fff;
  padding: 0 20px 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column
}

@media only screen and (min-width: 1025px) {
  section.recap {
    padding-top: 20px
  }
}

section.recap .description {
  padding-bottom: 20px
}

section.recap .description .figure-picture {
  margin-bottom: 20px
}

@media only screen and (max-width: 767px) {
  section.recap .description .figure-picture {
    width: calc(100% + 40px);
    margin-left: -20px
  }
}

section.recap .description .figure-picture img {
  width: 100%;
  height: auto
}

@media only screen and (min-width: 1025px) {
  section.recap .description .figure-picture img {
    max-height: 133px
  }
}

section.recap .recap-description-container, section.recap .recap-description-container .offer-destination-info {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column
}

section.recap .recap-description-container .offer-destination-info {
  border-left: 3px solid #bd1343;
  padding-left: 17px;
  margin-left: -20px
}

section.recap .recap-description-container .offer-destination-info .offer-hotel {
  font-size: 18px
}

section.recap .recap-description-container .offer-destination-info .offer-destination {
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase
}

section.recap .recap-description-container .offer-transport {
  font-size: 14px;
  font-weight: 700;
  padding: 10px 0 0
}

section.recap .quotation, section.recap .recap-section:not(.description) {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  border-top: 1px dashed #afafaf;
  padding: 20px 0
}

section.recap .quotation.details, section.recap .recap-section:not(.description).details {
  padding-bottom: 0
}

@media only screen and (max-width: 1024px) {
  section.recap .quotation.details, section.recap .recap-section:not(.description).details {
    border-top: none
  }
}

section.recap .quotation.details li, section.recap .recap-section:not(.description).details li {
  margin-bottom: 10px;
  list-style: none
}

section.recap .quotation.details li:before, section.recap .recap-section:not(.description).details li:before {
  content: "\2022";
  font-size: 14px;
  margin-right: 5px
}

section.recap .quotation.details li:last-child, section.recap .recap-section:not(.description).details li:last-child {
  margin-bottom: 0
}

section.recap .quotation-line, section.recap .recap-line {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin: 4px 0
}

section.recap .quotation-line .left, section.recap .recap-line .left {
  color: #666;
  margin-right: 10px
}

section.recap .quotation-line .right, section.recap .recap-line .right {
  font-weight: 700;
  text-align: right
}

section.recap .quotation-line .right .price-insteadof, section.recap .recap-line .right .price-insteadof {
  display: block;
  margin-top: -2px;
  font-weight: 400;
  font-size: 14px;
  color: #666
}

section.recap .quotation-line .right .price-insteadof .price-insteadof-price, section.recap .recap-line .right .price-insteadof .price-insteadof-price {
  color: #1d1d1d;
  text-decoration: line-through
}

section.recap .details + .details {
  padding: 0;
  border: 0
}

@media only screen and (max-width: 1024px) {
  section.recap .details.seeMoreDetails {
    display: none;
    border-top: 1px dashed #afafaf;
    padding-bottom: 20px
  }
}

section.recap .seeMore, section.recap .seeMoreInternal {
  margin-top: 20px
}

@media only screen and (min-width: 1025px) {
  section.recap .seeMore, section.recap .seeMoreInternal {
    display: none
  }
}

section.recap .seeMore .hide, section.recap .seeMoreInternal .hide {
  display: none
}

section.recap .quotation {
  margin-top: 20px
}

section.recap .quotation-line .left {
  word-break: break-word
}

section.recap .quotation-line .right {
  white-space: nowrap
}

section.recap .quotation .left {
  font-weight: 700;
  text-overflow: ellipsis;
  overflow: hidden
}

section.recap .quotation .right {
  font-size: 18px
}

section.recap .total {
  border-top: 1px solid #1d1d1d;
  padding-top: 20px;
  font-size: 18px;
  margin: 0
}

section.recap .total .left {
  color: #bd1343;
  text-transform: uppercase;
  font-weight: 700
}

section.recap .total .right {
  color: #bd1343
}

section.recap .flight-stopover {
  margin: 20px 0 12px
}

section.recap .flight-stopover__title {
  display: block;
  position: relative;
  z-index: 1;
  text-align: center;
  margin: 5px 0;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  color: #666
}

section.recap .flight-stopover__title span {
  background-color: #fff;
  padding: 0 12px
}

section.recap .flight-stopover__title:before {
  border-top: 1px solid #d3d3d3;
  content: "";
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1
}

section.recap .flight-stopover__content {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

section.recap .flight-stopover .icon {
  margin-right: 10px;
  font-size: 20px;
  color: #666
}

section.recap .flight-stopover__text {
  font-size: 12px
}

#footer {
  color: #666;
  padding: 25px 0 35px;
  background-color: #1d1d1d;
  margin-top: 40px
}

@media only screen and (max-width: 767px) {
  #footer {
    display: none
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer {
    font-size: 18px;
    line-height: 18px
  }
}

#footer .page-center {
  padding: 0
}

#footer a {
  color: #666
}

#footer a:first-letter {
  text-transform: uppercase
}

#footer .footer-atol {
  display: inline-block;
  width: 100%;
  border-top: 1px solid #2c2c2c
}

#footer .footer-atol a {
  text-decoration: underline
}

#footer .footer-atol-logo {
  float: left;
  height: 115px;
  line-height: 115px;
  width: 30%;
  text-align: center
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-atol-logo {
    width: 100%
  }
}

#footer .footer-atol-logo i {
  cursor: pointer
}

#footer .footer-atol-text {
  float: left;
  width: 70%;
  font-size: 11px;
  height: 115px;
  line-height: 115px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-atol-text {
    padding: 0 20px;
    text-align: center;
    width: 100%
  }
}

#footer .footer-atol-text p {
  display: inline-block;
  line-height: 1.2;
  vertical-align: middle
}

#footer .footer-atol .icon-atol {
  font-size: 5.2em;
  vertical-align: middle
}

#footer .footer-atol .icon-abta {
  font-size: 2.8em;
  line-height: 1;
  vertical-align: middle
}

#footer .footer-detail {
  border-bottom: 1px solid #000
}

#footer .footer-detail .footer-detail-container {
  display: inline-block;
  width: 33.33333333%;
  float: left;
  padding: 25px 15px;
  text-align: center
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-detail .footer-detail-container {
    width: 100%;
    text-align: center
  }
}

#footer .footer-detail .footer-detail-container figure {
  display: inline-block
}

#footer .footer-detail .footer-detail-container .footer-detail-title {
  display: inline-block;
  margin: 0 0 10px;
  color: #fff;
  font-size: 1.28em
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-detail .footer-detail-container .footer-detail-title [class^=icon-] {
    width: 50px;
    font-size: .85em
  }
}

#footer .footer-detail [class^=icon-] {
  display: inline-block;
  width: 30px
}

#footer .footer-separator {
  height: 1px;
  width: 100%;
  background-color: #000
}

#footer .footer-slogan {
  border-top: 1px solid #2c2c2c;
  border-bottom: 1px solid #000;
  width: 100%;
  display: table;
  height: 80px;
  text-align: center;
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 1.28em;
  font-style: italic;
  padding: 0 15px
}

#footer .footer-slogan p {
  display: table-cell;
  vertical-align: middle;
  line-height: 24px
}

#footer .footer-slogan span {
  color: #fff
}

#footer .footer-social {
  border-top: 1px solid #2c2c2c;
  text-align: center
}

#footer .footer-partners {
  display: inline-block;
  width: 100%;
  border-top: 1px solid #2c2c2c
}

#footer .footer-partners-text {
  float: left;
  width: 80%;
  font-size: 11px;
  padding: 40px 0 0
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-partners-text {
    padding: 20px;
    text-align: center;
    width: 100%
  }
}

#footer .footer-partners-logo {
  float: left;
  width: 20%;
  padding: 20px 0 0;
  text-align: center
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-partners-logo {
    width: 100%
  }
}

#footer .footer-partners-line {
  width: 100%;
  text-align: center;
  padding: 30px 0 0
}

#footer .footer-partners [class^=icon-] {
  display: inline-block;
  margin: 0 30px 0 0
}

#footer .footer-partners .icon-IATA {
  font-size: 2.7em
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-partners .icon-IATA {
    margin: 0
  }
}

#footer .footer-partners .icon-cadastur {
  font-size: 2.5em
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-partners .icon-cadastur {
    margin: 0 0 0 20px
  }
}

#footer .footer-partners .partners-text {
  display: inline-block;
  text-align: left;
  font-size: 11px
}

#footer .footer-link {
  border-top: 1px solid #2c2c2c
}

#footer .footer-link-container {
  display: inline-block;
  width: 50%;
  float: left;
  padding: 10px 15px 11px 60px;
  font-size: .85em
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-link-container {
    padding: 25px 15px;
    width: 100%
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-link-container.payment {
    font-size: 1em;
    width: 100% !important;
    text-align: center;
    border-bottom: 1px solid #000
  }
}

#footer .footer-link-container.payment .payment-title {
  margin-bottom: 17px;
  font-size: 12px
}

#footer .footer-link-container.payment .ordered {
  max-width: 130px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 5px;
  color: hsla(0, 0%, 100%, .99)
}

#footer .footer-link-container.payment .ordered.left {
  -webkit-justify-content: left;
  justify-content: left
}

@media only screen and (max-width: 1024px) {
  #footer .footer-link-container.payment .ordered {
    -webkit-justify-content: center !important;
    justify-content: center !important;
    margin: 0 auto;
    font-size: 13px
  }
}

#footer .footer-link-container.payment .ordered figure {
  float: none
}

#footer .footer-link-container.payment .ordered .icon-cb {
  width: 30px
}

#footer .footer-link-container.payment .ordered .icon-visa {
  width: 35px
}

#footer .footer-link-container.payment .ordered .icon-mastercard {
  width: 23px
}

#footer .footer-link-container.payment .ordered .icon-ancv {
  width: 29px
}

#footer .footer-link-container.payment .ordered .icon-sofort {
  width: 55px
}

#footer .footer-link-container.payment .ordered .icon-amex {
  font-size: 2em
}

#footer .footer-link-container.payment .ordered .icon-bancontact {
  width: 24px
}

#footer .footer-link-container.payment .ordered .icon-ideal {
  width: 19px
}

#footer .footer-link-container.payment .ordered .icon-vb {
  width: 41px
}

#footer .footer-link-container.payment .ordered .icon-applePay, #footer .footer-link-container.payment .ordered .icon-googlepay {
  width: 34px
}

#footer .footer-link-container.payment .ordered .icon-paypal {
  width: 40px
}

#footer .footer-link-container.links {
  padding: 22px 15px 22px 10px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-link-container.links {
    border-top: 1px solid #2c2c2c;
    text-align: center
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-link-container.links ul {
    display: inline-block;
    text-align: left
  }
}

#footer .footer-link-container.links li {
  float: left;
  display: inline-block
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-link-container.links li {
    float: none
  }
}

#footer .footer-link-container.links li a {
  margin: 0 10px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-link-container.links li a {
    float: none;
    padding: 8px 0
  }
}

#footer .footer-link-container.links li:last-child span {
  display: none
}

#footer .footer-link.with-badge {
  padding-top: 20px
}

#footer .footer-link.with-badge .footer-badge-container {
  width: 20%;
  float: left
}

#footer .footer-link.with-badge .footer-badge-container .footer-badge_img {
  float: left;
  height: 55px;
  margin-right: 10px
}

#footer .footer-link.with-badge .footer-badge-container .footer-badge_text {
  float: left;
  width: calc(100% - 70px);
  text-align: left;
  font-size: 11px;
  line-height: 14px
}

#footer .footer-link.with-badge .footer-link-container {
  width: inherit;
  padding: 10px 0
}

#footer .footer-link.with-badge .footer-link-container.links {
  padding: 22px 0;
  float: right
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .footer-link.with-badge .footer-badge-container {
    width: 100%;
    float: none;
    padding-bottom: 20px;
    border-bottom: 1px solid #000
  }

  #footer .footer-link.with-badge .footer-badge-container .footer-badge {
    width: 260px;
    margin: 0 auto
  }

  #footer .footer-link.with-badge .footer-link-container.payment {
    border-top: 1px solid #2c2c2c
  }

  #footer .footer-link.with-badge .footer-link-container.links {
    float: none;
    width: 100%
  }
}

#footer #notice {
  font-size: 11px;
  padding: 20px
}

#footer #notice nav a {
  text-decoration: underline;
  display: inline
}

#footer .trusted-shops {
  width: 36px
}

@media only screen and (min-width: 1025px) {
  .NavigationBar {
    background-color: #fff
  }
}

@media only screen and (min-width: 1025px) {
  .NavigationBar .page-center {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    height: 40px
  }
}

input {
  font-family: Source Sans Pro, sans-serif;
  cursor: pointer
}

input[type=radio]:not(.RadioBtnCheck) {
  font-size: 14px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff;
  border-radius: 100%;
  border: none;
  box-shadow: 0 0 0 1px #d3d3d3;
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: .3em;
  vertical-align: sub;
  margin-right: 10px
}

input[type=radio]:not(.RadioBtnCheck):checked {
  border: 6.5px solid #bd1343
}

input[type=radio]:not(.RadioBtnCheck)[disabled], input[type=radio]:not(.RadioBtnCheck)[disabled] + span {
  opacity: .4
}

input[type=checkbox] {
  -moz-appearance: none;
  -o-apperance: none;
  -webkit-appearance: none;
  background: none;
  border-radius: 2px;
  border: 1px solid #d3d3d3;
  font-size: inherit;
  line-height: 1;
  margin: -3px .25em 0 0;
  position: relative;
  vertical-align: middle;
  width: 16px;
  height: 16px
}

input[type=checkbox]:after, input[type=checkbox]:before {
  content: "";
  position: absolute;
  transition: -webkit-transform .15s cubic-bezier(.22, .61, .36, 1);
  transition: transform .15s cubic-bezier(.22, .61, .36, 1);
  transition: transform .15s cubic-bezier(.22, .61, .36, 1), -webkit-transform .15s cubic-bezier(.22, .61, .36, 1);
  border-bottom: 1.5px solid #fff;
  border-right: 1.5px solid #fff;
  bottom: 0;
  margin: auto;
  right: 4px;
  top: -3px;
  -webkit-transform: rotate(40deg) scale(0);
  transform: rotate(40deg) scale(0);
  width: 6px;
  height: 10px
}

input[type=checkbox].size-large {
  width: 24px;
  height: 24px;
  margin-right: .5em
}

input[type=checkbox].size-large:after, input[type=checkbox].size-large:before {
  width: 9px;
  height: 14px;
  right: 6px;
  top: -5px
}

input[type=checkbox]:checked {
  border-color: #bd1343;
  background-color: #bd1343
}

input[type=checkbox]:checked:before {
  -webkit-transform: rotate(40deg) scale(1);
  transform: rotate(40deg) scale(1)
}

input[type=checkbox]:focus {
  border: 1px solid #bd1343
}

input[type=checkbox] .disabled, input[type=checkbox][disabled] {
  opacity: .45
}

input[type=checkbox] .disabled + label, input[type=checkbox][disabled] + label {
  opacity: .75
}

input[type=checkbox] label {
  position: relative;
  left: -.25em;
  padding-left: .75em
}

input[type=email], input[type=password], input[type=tel], input[type=text] {
  border-radius: 2px;
  border: 1px solid #d3d3d3;
  background-color: #fff;
  width: 100%;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 12px 10px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

@media only screen and (max-width: 767px) {
  input[type=email], input[type=password], input[type=tel], input[type=text] {
    padding: 11px 10px;
    height: auto
  }
}

input[type=email]:focus, input[type=password]:focus, input[type=tel]:focus, input[type=text]:focus {
  border-color: #414141
}

input.smallInput {
  width: 100px
}

input + .input-info {
  color: #666;
  font-size: 12px;
  font-style: italic
}

input + .input-info .font-bold {
  font-weight: 700
}

textarea {
  height: 120px;
  font-family: Source Sans Pro, sans-serif;
  border-radius: 2px;
  border: 1px solid #d3d3d3;
  background-color: #fff;
  width: 100%;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 12px 10px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

@media only screen and (max-width: 767px) {
  textarea {
    padding: 11px 10px;
    height: auto
  }
}

html select:not([multiple]) {
  border-radius: 2px;
  border: 1px solid #d3d3d3;
  position: relative;
  width: 100%;
  height: 44px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 8px 34px 8px 15px;
  font-family: Source Sans Pro, sans-serif;
  font-size: 14px;
  color: #000;
  background: #fff url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4gIDxwYXRoIGZpbGw9IiM2NjYiIGQ9Ik0xMS4yOSAxNS43MWExIDEgMCAwIDAgMS40MSAwbDYtNmExIDEgMCAwIDAtMS40MS0xLjQxTDEyIDEzLjU4IDYuNzEgOC4yOWExIDEgMCAwIDAtMS40MiAxLjQybDUuOTIgNS45M3oiLz48L3N2Zz4=") no-repeat right 9px center
}

html select:not([multiple])::-ms-expand {
  display: none
}

@media only screen and (max-width: 767px) {
  html select:not([multiple]) {
    font-size: 14px
  }
}

.label-form {
  display: block;
  font-weight: 700;
  color: #666;
  margin: 10px 0;
  white-space: nowrap
}

.flex-full {
  width: 100%;
  padding-right: 0 !important
}

.flex-mid {
  width: 50%
}

input.error {
  border-color: #bd1343
}

label.error {
  display: block;
  color: #bd1343;
  font-size: 12px;
  margin-top: 5px;
  font-family: Source Sans Pro, sans-serif
}

.international-phone-input-container {
  position: relative
}

.international-phone-input-content {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: center;
  align-content: center;
  height: 44px;
  border-radius: 2px;
  border: 1px solid #d3d3d3
}

.international-phone-input-container.error .international-phone-input-content {
  border-color: #bd1343
}

.international-phone-input-content .content-select {
  width: 61px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  -webkit-justify-content: center;
  justify-content: center;
  padding: 10px !important;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  gap: 6px;
  border-right: 1px solid #d3d3d3;
  cursor: pointer
}

.international-phone-input-container.error .international-phone-input-content .content-select {
  border-color: #bd1343
}

.international-phone-input-content .content-select .arrow {
  position: relative;
  width: 16px;
  height: 16px;
  background: #fff url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4gIDxwYXRoIGZpbGw9IiM2NjYiIGQ9Ik0xMS4yOSAxNS43MWExIDEgMCAwIDAgMS40MSAwbDYtNmExIDEgMCAwIDAtMS40MS0xLjQxTDEyIDEzLjU4IDYuNzEgOC4yOWExIDEgMCAwIDAtMS40MiAxLjQybDUuOTIgNS45M3oiLz48L3N2Zz4=") no-repeat 50%;
  scale: .66
}

.international-phone-input-content .content-select.opened .arrow {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.international-phone-input-content input, .international-phone-input-content input:focus {
  -webkit-flex-grow: 1;
  flex-grow: 1;
  border: none !important;
  outline: 0;
  box-shadow: none;
  padding: 10px
}

.international-phone-input-container.error .international-phone-input-content input {
  border-color: #bd1343
}

.international-phone-input-country-list {
  z-index: 1;
  list-style-type: none;
  position: absolute;
  padding: 0;
  margin: 10px 0 10px -1px;
  box-shadow: 1px 2px 10px rgba(0, 0, 0, .25);
  background-color: #fff;
  width: 300px;
  max-height: 200px;
  overflow-y: scroll;
  border-radius: 0 0 3px 3px;
  display: none;
  top: 38px
}

.international-phone-input-country-list.opened {
  display: block
}

.international-phone-input-country-list li.country {
  position: relative;
  text-align: left;
  padding: 7px 9px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  gap: 6px;
  font-size: 16px;
  cursor: pointer
}

.international-phone-input-country-list li.country.active, .international-phone-input-country-list li.country.searchSelected, .international-phone-input-country-list li.country:hover {
  background-color: #f1f1f1
}

.international-phone-input-country-list li.country .dialCode {
  color: #6b6b6b
}

.international-phone-input-country-list li.search-bar {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 2;
  background-color: #fff;
  padding: 6px
}

.international-phone-input-country-list li.search-bar input {
  width: 100%;
  padding: 6px;
  box-shadow: none;
  outline: 0;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.international-phone-input-flag {
  display: inline-block;
  width: 16px;
  height: 11px;
  background: url("../images/flags.png");
  background-position-x: 0;
  background-position-y: 0
}

.international-phone-input-flag.ad {
  background-position: -16px 0
}

.international-phone-input-flag.ae {
  background-position: -32px 0
}

.international-phone-input-flag.af {
  background-position: -48px 0
}

.international-phone-input-flag.ag {
  background-position: -64px 0
}

.international-phone-input-flag.ai {
  background-position: -80px 0
}

.international-phone-input-flag.al {
  background-position: -96px 0
}

.international-phone-input-flag.am {
  background-position: -112px 0
}

.international-phone-input-flag.ao {
  background-position: -128px 0
}

.international-phone-input-flag.ar {
  background-position: -144px 0
}

.international-phone-input-flag.as {
  background-position: -160px 0
}

.international-phone-input-flag.at {
  background-position: -176px 0
}

.international-phone-input-flag.au {
  background-position: -192px 0
}

.international-phone-input-flag.aw {
  background-position: -208px 0
}

.international-phone-input-flag.az {
  background-position: -224px 0
}

.international-phone-input-flag.ba {
  background-position: -240px 0
}

.international-phone-input-flag.bb {
  background-position: 0 -11px
}

.international-phone-input-flag.bd {
  background-position: -16px -11px
}

.international-phone-input-flag.be {
  background-position: -32px -11px
}

.international-phone-input-flag.bf {
  background-position: -48px -11px
}

.international-phone-input-flag.bg {
  background-position: -64px -11px
}

.international-phone-input-flag.bh {
  background-position: -80px -11px
}

.international-phone-input-flag.bi {
  background-position: -96px -11px
}

.international-phone-input-flag.bj {
  background-position: -112px -11px
}

.international-phone-input-flag.bm {
  background-position: -128px -11px
}

.international-phone-input-flag.bn {
  background-position: -144px -11px
}

.international-phone-input-flag.bo {
  background-position: -160px -11px
}

.international-phone-input-flag.br {
  background-position: -176px -11px
}

.international-phone-input-flag.bs {
  background-position: -192px -11px
}

.international-phone-input-flag.bt {
  background-position: -208px -11px
}

.international-phone-input-flag.bw {
  background-position: -224px -11px
}

.international-phone-input-flag.by {
  background-position: -240px -11px
}

.international-phone-input-flag.bz {
  background-position: 0 -22px
}

.international-phone-input-flag.ca {
  background-position: -16px -22px
}

.international-phone-input-flag.cd {
  background-position: -32px -22px
}

.international-phone-input-flag.cf {
  background-position: -48px -22px
}

.international-phone-input-flag.cg {
  background-position: -64px -22px
}

.international-phone-input-flag.ch {
  background-position: -80px -22px
}

.international-phone-input-flag.ci {
  background-position: -96px -22px
}

.international-phone-input-flag.ck {
  background-position: -112px -22px
}

.international-phone-input-flag.cl {
  background-position: -128px -22px
}

.international-phone-input-flag.cm {
  background-position: -144px -22px
}

.international-phone-input-flag.cn {
  background-position: -160px -22px
}

.international-phone-input-flag.co {
  background-position: -176px -22px
}

.international-phone-input-flag.cr {
  background-position: -192px -22px
}

.international-phone-input-flag.cu {
  background-position: -208px -22px
}

.international-phone-input-flag.cv {
  background-position: -224px -22px
}

.international-phone-input-flag.cw {
  background-position: -240px -22px
}

.international-phone-input-flag.cy {
  background-position: 0 -33px
}

.international-phone-input-flag.cz {
  background-position: -16px -33px
}

.international-phone-input-flag.de {
  background-position: -32px -33px
}

.international-phone-input-flag.dj {
  background-position: -48px -33px
}

.international-phone-input-flag.dk {
  background-position: -64px -33px
}

.international-phone-input-flag.dm {
  background-position: -80px -33px
}

.international-phone-input-flag.do {
  background-position: -96px -33px
}

.international-phone-input-flag.dz {
  background-position: -112px -33px
}

.international-phone-input-flag.ec {
  background-position: -128px -33px
}

.international-phone-input-flag.ee {
  background-position: -144px -33px
}

.international-phone-input-flag.eg {
  background-position: -160px -33px
}

.international-phone-input-flag.er {
  background-position: -176px -33px
}

.international-phone-input-flag.es {
  background-position: -192px -33px
}

.international-phone-input-flag.et {
  background-position: -208px -33px
}

.international-phone-input-flag.fi {
  background-position: -224px -33px
}

.international-phone-input-flag.fj {
  background-position: -240px -33px
}

.international-phone-input-flag.fk {
  background-position: 0 -44px
}

.international-phone-input-flag.fm {
  background-position: -16px -44px
}

.international-phone-input-flag.fo {
  background-position: -32px -44px
}

.international-phone-input-flag.bl, .international-phone-input-flag.fr, .international-phone-input-flag.mf {
  background-position: -48px -44px
}

.international-phone-input-flag.ga {
  background-position: -64px -44px
}

.international-phone-input-flag.gb {
  background-position: -80px -44px
}

.international-phone-input-flag.gd {
  background-position: -96px -44px
}

.international-phone-input-flag.ge {
  background-position: -112px -44px
}

.international-phone-input-flag.gf {
  background-position: -128px -44px
}

.international-phone-input-flag.gh {
  background-position: -144px -44px
}

.international-phone-input-flag.gi {
  background-position: -160px -44px
}

.international-phone-input-flag.gl {
  background-position: -176px -44px
}

.international-phone-input-flag.gm {
  background-position: -192px -44px
}

.international-phone-input-flag.gn {
  background-position: -208px -44px
}

.international-phone-input-flag.gp {
  background-position: -224px -44px
}

.international-phone-input-flag.gq {
  background-position: -240px -44px
}

.international-phone-input-flag.gr {
  background-position: 0 -55px
}

.international-phone-input-flag.gt {
  background-position: -16px -55px
}

.international-phone-input-flag.gu {
  background-position: -32px -55px
}

.international-phone-input-flag.gw {
  background-position: -48px -55px
}

.international-phone-input-flag.gy {
  background-position: -64px -55px
}

.international-phone-input-flag.hk {
  background-position: -80px -55px
}

.international-phone-input-flag.hn {
  background-position: -96px -55px
}

.international-phone-input-flag.hr {
  background-position: -112px -55px
}

.international-phone-input-flag.ht {
  background-position: -128px -55px
}

.international-phone-input-flag.hu {
  background-position: -144px -55px
}

.international-phone-input-flag.id {
  background-position: -160px -55px
}

.international-phone-input-flag.ie {
  background-position: -176px -55px
}

.international-phone-input-flag.il {
  background-position: -192px -55px
}

.international-phone-input-flag.in {
  background-position: -208px -55px
}

.international-phone-input-flag.io {
  background-position: -224px -55px
}

.international-phone-input-flag.iq {
  background-position: -240px -55px
}

.international-phone-input-flag.ir {
  background-position: 0 -66px
}

.international-phone-input-flag.is {
  background-position: -16px -66px
}

.international-phone-input-flag.it {
  background-position: -32px -66px
}

.international-phone-input-flag.je {
  background-position: -144px -154px
}

.international-phone-input-flag.jm {
  background-position: -48px -66px
}

.international-phone-input-flag.jo {
  background-position: -64px -66px
}

.international-phone-input-flag.jp {
  background-position: -80px -66px
}

.international-phone-input-flag.ke {
  background-position: -96px -66px
}

.international-phone-input-flag.kg {
  background-position: -112px -66px
}

.international-phone-input-flag.kh {
  background-position: -128px -66px
}

.international-phone-input-flag.ki {
  background-position: -144px -66px
}

.international-phone-input-flag.xk {
  background-position: -128px -154px
}

.international-phone-input-flag.km {
  background-position: -160px -66px
}

.international-phone-input-flag.kn {
  background-position: -176px -66px
}

.international-phone-input-flag.kp {
  background-position: -192px -66px
}

.international-phone-input-flag.kr {
  background-position: -208px -66px
}

.international-phone-input-flag.kw {
  background-position: -224px -66px
}

.international-phone-input-flag.ky {
  background-position: -240px -66px
}

.international-phone-input-flag.kz {
  background-position: 0 -77px
}

.international-phone-input-flag.la {
  background-position: -16px -77px
}

.international-phone-input-flag.lb {
  background-position: -32px -77px
}

.international-phone-input-flag.lc {
  background-position: -48px -77px
}

.international-phone-input-flag.li {
  background-position: -64px -77px
}

.international-phone-input-flag.lk {
  background-position: -80px -77px
}

.international-phone-input-flag.lr {
  background-position: -96px -77px
}

.international-phone-input-flag.ls {
  background-position: -112px -77px
}

.international-phone-input-flag.lt {
  background-position: -128px -77px
}

.international-phone-input-flag.lu {
  background-position: -144px -77px
}

.international-phone-input-flag.lv {
  background-position: -160px -77px
}

.international-phone-input-flag.ly {
  background-position: -176px -77px
}

.international-phone-input-flag.ma {
  background-position: -192px -77px
}

.international-phone-input-flag.mc {
  background-position: -208px -77px
}

.international-phone-input-flag.md {
  background-position: -224px -77px
}

.international-phone-input-flag.me {
  background-position: -112px -154px;
  height: 12px
}

.international-phone-input-flag.mg {
  background-position: 0 -88px
}

.international-phone-input-flag.mh {
  background-position: -16px -88px
}

.international-phone-input-flag.mk {
  background-position: -32px -88px
}

.international-phone-input-flag.ml {
  background-position: -48px -88px
}

.international-phone-input-flag.mm {
  background-position: -64px -88px
}

.international-phone-input-flag.mn {
  background-position: -80px -88px
}

.international-phone-input-flag.mo {
  background-position: -96px -88px
}

.international-phone-input-flag.mp {
  background-position: -112px -88px
}

.international-phone-input-flag.mq {
  background-position: -128px -88px
}

.international-phone-input-flag.mr {
  background-position: -144px -88px
}

.international-phone-input-flag.ms {
  background-position: -160px -88px
}

.international-phone-input-flag.mt {
  background-position: -176px -88px
}

.international-phone-input-flag.mu {
  background-position: -192px -88px
}

.international-phone-input-flag.mv {
  background-position: -208px -88px
}

.international-phone-input-flag.mw {
  background-position: -224px -88px
}

.international-phone-input-flag.mx {
  background-position: -240px -88px
}

.international-phone-input-flag.my {
  background-position: 0 -99px
}

.international-phone-input-flag.mz {
  background-position: -16px -99px
}

.international-phone-input-flag.na {
  background-position: -32px -99px
}

.international-phone-input-flag.nc {
  background-position: -48px -99px
}

.international-phone-input-flag.ne {
  background-position: -64px -99px
}

.international-phone-input-flag.nf {
  background-position: -80px -99px
}

.international-phone-input-flag.ng {
  background-position: -96px -99px
}

.international-phone-input-flag.ni {
  background-position: -112px -99px
}

.international-phone-input-flag.bq, .international-phone-input-flag.nl {
  background-position: -128px -99px
}

.international-phone-input-flag.no {
  background-position: -144px -99px
}

.international-phone-input-flag.np {
  background-position: -160px -99px
}

.international-phone-input-flag.nr {
  background-position: -176px -99px
}

.international-phone-input-flag.nu {
  background-position: -192px -99px
}

.international-phone-input-flag.nz {
  background-position: -208px -99px
}

.international-phone-input-flag.om {
  background-position: -224px -99px
}

.international-phone-input-flag.pa {
  background-position: -240px -99px
}

.international-phone-input-flag.pe {
  background-position: 0 -110px
}

.international-phone-input-flag.pf {
  background-position: -16px -110px
}

.international-phone-input-flag.pg {
  background-position: -32px -110px
}

.international-phone-input-flag.ph {
  background-position: -48px -110px
}

.international-phone-input-flag.pk {
  background-position: -64px -110px
}

.international-phone-input-flag.pl {
  background-position: -80px -110px
}

.international-phone-input-flag.pm {
  background-position: -96px -110px
}

.international-phone-input-flag.pr {
  background-position: -112px -110px
}

.international-phone-input-flag.ps {
  background-position: -128px -110px
}

.international-phone-input-flag.pt {
  background-position: -144px -110px
}

.international-phone-input-flag.pw {
  background-position: -160px -110px
}

.international-phone-input-flag.py {
  background-position: -176px -110px
}

.international-phone-input-flag.qa {
  background-position: -192px -110px
}

.international-phone-input-flag.re {
  background-position: -208px -110px
}

.international-phone-input-flag.ro {
  background-position: -224px -110px
}

.international-phone-input-flag.rs {
  background-position: -240px -110px
}

.international-phone-input-flag.ru {
  background-position: 0 -121px
}

.international-phone-input-flag.rw {
  background-position: -16px -121px
}

.international-phone-input-flag.sa {
  background-position: -32px -121px
}

.international-phone-input-flag.sb {
  background-position: -48px -121px
}

.international-phone-input-flag.sc {
  background-position: -64px -121px
}

.international-phone-input-flag.sd {
  background-position: -80px -121px
}

.international-phone-input-flag.se {
  background-position: -96px -121px
}

.international-phone-input-flag.sg {
  background-position: -112px -121px
}

.international-phone-input-flag.sh {
  background-position: -128px -121px
}

.international-phone-input-flag.si {
  background-position: -144px -121px
}

.international-phone-input-flag.sk {
  background-position: -160px -121px
}

.international-phone-input-flag.sl {
  background-position: -176px -121px
}

.international-phone-input-flag.sm {
  background-position: -192px -121px
}

.international-phone-input-flag.sn {
  background-position: -208px -121px
}

.international-phone-input-flag.so {
  background-position: -224px -121px
}

.international-phone-input-flag.sr {
  background-position: -240px -121px
}

.international-phone-input-flag.ss {
  background-position: 0 -132px
}

.international-phone-input-flag.st {
  background-position: -16px -132px
}

.international-phone-input-flag.sv {
  background-position: -32px -132px
}

.international-phone-input-flag.sx {
  background-position: -48px -132px
}

.international-phone-input-flag.sy {
  background-position: -64px -132px
}

.international-phone-input-flag.sz {
  background-position: -80px -132px
}

.international-phone-input-flag.tc {
  background-position: -96px -132px
}

.international-phone-input-flag.td {
  background-position: -112px -132px
}

.international-phone-input-flag.tg {
  background-position: -128px -132px
}

.international-phone-input-flag.th {
  background-position: -144px -132px
}

.international-phone-input-flag.tj {
  background-position: -160px -132px
}

.international-phone-input-flag.tk {
  background-position: -176px -132px
}

.international-phone-input-flag.tl {
  background-position: -192px -132px
}

.international-phone-input-flag.tm {
  background-position: -208px -132px
}

.international-phone-input-flag.tn {
  background-position: -224px -132px
}

.international-phone-input-flag.to {
  background-position: -240px -132px
}

.international-phone-input-flag.tr {
  background-position: 0 -143px
}

.international-phone-input-flag.tt {
  background-position: -16px -143px
}

.international-phone-input-flag.tv {
  background-position: -32px -143px
}

.international-phone-input-flag.tw {
  background-position: -48px -143px
}

.international-phone-input-flag.tz {
  background-position: -64px -143px
}

.international-phone-input-flag.ua {
  background-position: -80px -143px
}

.international-phone-input-flag.ug {
  background-position: -96px -143px
}

.international-phone-input-flag.us {
  background-position: -112px -143px
}

.international-phone-input-flag.uy {
  background-position: -128px -143px
}

.international-phone-input-flag.uz {
  background-position: -144px -143px
}

.international-phone-input-flag.va {
  background-position: -160px -143px
}

.international-phone-input-flag.vc {
  background-position: -176px -143px
}

.international-phone-input-flag.ve {
  background-position: -192px -143px
}

.international-phone-input-flag.vg {
  background-position: -208px -143px
}

.international-phone-input-flag.vi {
  background-position: -224px -143px
}

.international-phone-input-flag.vn {
  background-position: -240px -143px
}

.international-phone-input-flag.vu {
  background-position: 0 -154px
}

.international-phone-input-flag.wf {
  background-position: -16px -154px
}

.international-phone-input-flag.ws {
  background-position: -32px -154px
}

.international-phone-input-flag.ye {
  background-position: -48px -154px
}

.international-phone-input-flag.za {
  background-position: -64px -154px
}

.international-phone-input-flag.zm {
  background-position: -80px -154px
}

.international-phone-input-flag.zw {
  background-position: -96px -154px
}

.TimeLeft {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  text-align: left;
  padding-top: 10px;
  padding-bottom: 10px;
  -webkit-flex: 0 1 300px;
  flex: 0 1 300px
}

@media only screen and (max-width: 1024px) {
  .TimeLeft {
    background-color: #f5f5f5
  }
}

.TimeLeft i {
  margin-right: 7px;
  font-size: 22px;
  color: #bd1343
}

.TimeLeft div {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  line-height: 1.2
}

.TimeLeft div .time {
  font-weight: 600;
  color: #1d1d1d
}

.TimeLeft div .time-notice {
  font-size: 12px;
  line-height: 15px;
  color: #666
}

.phone-widget {
  border: 1px solid #e0e0e0;
  height: 25px;
  background-color: #fff;
  padding-right: 5px;
  width: 220px;
  margin: 10px auto;
  -moz-box-sizing: content-box;
  box-sizing: content-box
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .phone-widget {
    position: relative
  }
}

.phone-widget .number {
  height: 25px;
  float: left;
  color: #a50f78;
  font-size: 14px;
  font-family: Arial;
  font-weight: 700;
  padding: 0 7px;
  line-height: 26px
}

.phone-widget .price {
  float: left;
  height: 24px;
  font-size: 10px;
  line-height: 10px;
  color: #fff;
  padding-top: 3px;
  padding-right: 5px;
  width: 109px;
  background-color: #a50f78;
  text-align: left;
  margin-top: -1px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .phone-widget .price {
    font-size: 10px;
    position: absolute;
    top: 0;
    right: 5px;
    line-height: 11px
  }
}

.phone-widget.free .number {
  color: #000;
  width: 100%
}

.phone-widget.free .price {
  display: none
}

.phone-widget .price-icon {
  width: 0;
  height: 0;
  border: 7px solid transparent;
  border-left: 7px solid #fff;
  float: left;
  position: relative;
  top: 3px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .phone-widget button {
    width: 100%
  }
}

.help {
  text-align: center;
  color: #555;
  padding: 0 20px
}

@media only screen and (max-width: 767px) {
  .help {
    background: #e6e6e6;
    padding: 20px 20px 50px
  }
}

.help .security {
  padding-bottom: 10px
}

.help .need-help__cta {
  -webkit-align-self: center;
  -ms-grid-row-align: center;
  align-self: center
}

.help .commitment-title, .help .need-help-title, .help .security-title {
  display: inline-block;
  color: #1d1d1d;
  text-transform: uppercase;
  font-weight: 700;
  margin: 30px 0 10px;
  width: 100%
}

.help .commitment-title i, .help .need-help-title i, .help .security-title i {
  display: block;
  margin-bottom: 10px;
  font-size: 24px
}

.help .tel-notice {
  font-weight: 700
}

.help .tel {
  margin-bottom: 10px;
  font-size: 20px
}

.help .tel a {
  color: #1d1d1d
}

.help .commitment-description span {
  display: block
}

.help .badge {
  -webkit-align-items: center;
  align-items: center
}

.help .badge .badge_img {
  max-width: 60px;
  margin: 10px auto
}

.help #trusted-shops {
  padding: 0 10px 16px;
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 16px
}

.help #trusted-shops .trusted-shops_img {
  display: block;
  margin: 0 auto 5px;
  height: 30px
}

/*
.modal-open {
    overflow: hidden
}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto
}

.modal {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    display: none;
    overflow: hidden;
    outline: 0;
    -webkit-overflow-scrolling: touch
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: .5rem;
    pointer-events: none
}

.modal.fade .modal-dialog {
    transition: opacity .25s ease-out;
    opacity: 0
}

.modal.show .modal-dialog {
    opacity: 1
}

.modal-dialog-centered {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    min-height: calc(100% - 1rem)
}

.modal-dialog-centered:before {
    display: block;
    height: calc(100vh - 1rem);
    content: ""
}

.modal-content {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,.2);
    outline: 0
}

.modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    background-color: #000
}*/

/*.modal-backdrop.fade {
    opacity: 0
}

.modal-backdrop.show {
    opacity: .7
}

.modal-header {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding: 1rem;
    border-bottom: 1px solid #e9ecef;
    border-top-left-radius: .3rem;
    border-top-right-radius: .3rem
}

.modal-header .close {
    padding: 1rem;
    margin: -1rem -1rem -1rem auto
}

.modal-title {
    margin-bottom: 0;
    line-height: 1.5
}

.modal-body {
    position: relative;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 20px
}

.modal-footer {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    padding: 1rem;
    border-top: 1px solid #e9ecef;
    border-bottom-left-radius: .3rem;
    border-bottom-right-radius: .3rem
}

.modal-footer>:not(:first-child) {
    margin-left: .25rem
}

.modal-footer>:not(:last-child) {
    margin-right: .25rem
}

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll
}

@media only screen and (max-width: 575px) {
    .modal-dialog {
        max-width:600px;
        margin: 1.75rem auto
    }
}

@media only screen and (max-width: 575px) and (min-width:1025px) {
    .modal-dialog {
        margin-top:100px
    }
}

@media only screen and (max-width: 575px) {
    .lodging-dialog {
        max-width:700px;
        margin: 0!important
    }

    .room-details-dialog {
        max-width: 100%;
        margin: 0!important
    }
}

@media only screen and (min-width: 576px) {
    .modal-dialog {
        max-width:600px;
        margin: 1.75rem auto
    }
}

@media only screen and (min-width: 576px) and (min-width:1025px) {
    .modal-dialog {
        margin-top:100px
    }
}

@media only screen and (min-width: 576px) {
    .lodging-dialog {
        max-width:700px
    }

    .room-details-dialog {
        max-width: 95%;
        top: 15%
    }

    .modal-dialog-centered {
        min-height: calc(100% - 3.5rem)
    }

    .modal-dialog-centered:before {
        height: calc(100vh - 3.5rem)
    }

    .modal-sm {
        max-width: 300px
    }
}

@media only screen and (min-width: 992px) {
    .modal-lg,.modal-xl {
        max-width:800px
    }

    .room-details-dialog {
        max-width: 85%;
        top: 5%
    }

    .personnalize-dialog {
        width: 700px;
        position: relative
    }
}

@media only screen and (min-width: 1200px) {
    .modal-xl {
        max-width:1140px
    }
}

.Modal__square-back {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    padding: 20px 0;
    position: absolute;
    width: 44.59px;
    height: 44px;
    left: 10.13px;
    top: 10px;
    background: rgba(29,29,29,.3);
    border-radius: 2px
}

.Modal__btn-back {
    font-size: 20px;
    margin-right: 15px
}

.Modal__btn-before {
    z-index: 1;
    position: fixed;
    width: 20px;
    height: 20px;
    font-size: 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    text-align: center;
    color: #fff
}

.Modal__btn-close {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 5;
    padding: 10px;
    font-size: 17px
}
*/
@media only screen and (min-width: 768px) {
  .Modal__btn-close {
    padding: 0;
    top: -28px;
    color: #fff;
    font-family: Source Sans Pro, sans-serif;
    font-weight: 700;
    font-size: 14px
  }
}

@media only screen and (min-width: 768px) {
  .Modal__btn-close__icon, .Modal__btn-close__text {
    display: inline-block;
    vertical-align: middle
  }
}

@media only screen and (min-width: 768px) {
  .Modal__btn-close__icon {
    margin-top: 2px;
    margin-left: 6px;
    font-size: 16px
  }
}

.Modal__header-mobile {
  display: -webkit-flex;
  display: flex
}

.RoomDetails__modal {
  padding: 0 !important
}

@media only screen and (max-width: 767px) {
  .RoomDetails__modal {
    height: 100vh;
    min-height: 100%
  }
}

.RoomDetails__details {
  padding: 0;
  -webkit-flex: none;
  flex: none;
  -webkit-order: 1;
  order: 1;
  border-radius: 2px
}

@media only screen and (min-width: 768px) {
  .RoomDetails__details {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row
  }
}

.RoomDetails__picture {
  position: relative;
  min-height: 237px;
  -o-object-fit: cover;
  object-fit: cover
}

@media only screen and (min-width: 768px) {
  .RoomDetails__picture {
    width: 60%;
    min-height: 507px
  }
}

.RoomDetails__content {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex: none;
  flex: none;
  padding: 20px;
  font-size: 14px;
  color: #666;
  overflow: scroll;
  margin-bottom: 40px;
  overflow-x: hidden;
  background: #fff
}

@media only screen and (min-width: 1025px) {
  .RoomDetails__content {
    padding: 40px
  }
}

@media only screen and (min-width: 768px) {
  .RoomDetails__content {
    max-width: 40%;
    height: 476px
  }
}

.RoomDetails__title {
  font-weight: 700;
  font-size: 18px;
  line-height: 22px;
  color: #1d1d1d;
  margin-bottom: 20px
}

.RoomDetails__textDescription {
  color: #666;
  font-weight: 400;
  line-height: 18px;
  margin-bottom: 20px;
  text-align: justify
}

.RoomDetails__flex {
  margin: 10px 0 20px;
  display: -ms-grid;
  display: grid;
  color: #1d1d1d
}

@media (min-width: 992px) {
  .RoomDetails__flex {
    -ms-grid-columns:(1fr) [ 4 ];
    grid-template-columns: repeat(4, 1fr)
  }
}

@media (max-width: 991px) {
  .RoomDetails__flex {
    -ms-grid-columns:(1fr) [ 3 ];
    grid-template-columns: repeat(3, 1fr)
  }
}

.RoomDetails__property {
  font-size: 12px;
  margin-bottom: 20px;
  font-weight: 700;
  text-align: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center
}

@media (min-width: 768px) {
  .RoomDetails__property {
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center
  }
}

@media (min-width: 992px) {
  .RoomDetails__property {
    margin-right: 33px
  }
}

.RoomDetails__property i {
  font-size: 16px
}

.RoomDetails__property i.line-icon-family-adult, .RoomDetails__property i.line-icon-people {
  letter-spacing: -7px
}

.RoomDetails__property i.line-icon-family-adult:last-child, .RoomDetails__property i.line-icon-people:last-child {
  margin-right: 8px
}

.RoomDetails__equipment__title {
  font-weight: 700;
  line-height: 22px;
  color: #1d1d1d;
  margin-bottom: 10px
}

.RoomDetails__liste {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  list-style: inside;
  line-height: 28px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .RoomDetails__liste {
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1
  }
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 560px;
  font-size: 12px;
  word-wrap: break-word;
  background-color: rgba(0, 0, 0, .9);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, .9);
  border-radius: 2px
}

@media only screen and (max-width: 767px) {
  .popover {
    max-width: 260px
  }
}

.popover .arrow {
  position: absolute;
  display: block;
  width: 12px;
  height: 6px;
  margin: 0 2px
}

.popover .arrow:after, .popover .arrow:before {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid
}

.bs-popover-auto[x-placement^=top], .bs-popover-top, .Popover--white .bs-popover-auto[x-placement^=top] {
  margin-bottom: 6px
}

.bs-popover-auto[x-placement^=top] > .arrow, .bs-popover-top > .arrow, .Popover--white .bs-popover-auto[x-placement^=top] > .arrow {
  bottom: -7px
}

.bs-popover-auto[x-placement^=top] > .arrow:before, .bs-popover-top > .arrow:before, .Popover--white .bs-popover-auto[x-placement^=top] > .arrow:before {
  bottom: 0;
  border-width: 6px 6px 0;
  border-top-color: rgba(0, 0, 0, .95)
}

.bs-popover-auto[x-placement^=top] > .arrow:after, .bs-popover-top > .arrow:after, .Popover--white .bs-popover-auto[x-placement^=top] > .arrow:after {
  bottom: 1px;
  border-width: 6px 6px 0;
  border-top-color: rgba(0, 0, 0, .9)
}

.bs-popover-auto[x-placement^=right], .bs-popover-right, .Popover--white .bs-popover-auto[x-placement^=right] {
  margin-left: 6px
}

.bs-popover-auto[x-placement^=right] > .arrow, .bs-popover-right > .arrow, .Popover--white .bs-popover-auto[x-placement^=right] > .arrow {
  left: -7px;
  width: 6px;
  height: 12px;
  margin: 2px 0
}

.bs-popover-auto[x-placement^=right] > .arrow:before, .bs-popover-right > .arrow:before, .Popover--white .bs-popover-auto[x-placement^=right] > .arrow:before {
  left: 0;
  border-width: 6px 6px 6px 0;
  border-right-color: rgba(0, 0, 0, .95)
}

.bs-popover-auto[x-placement^=right] > .arrow:after, .bs-popover-right > .arrow:after, .Popover--white .bs-popover-auto[x-placement^=right] > .arrow:after {
  left: 1px;
  border-width: 6px 6px 6px 0;
  border-right-color: rgba(0, 0, 0, .9)
}

.bs-popover-auto[x-placement^=bottom], .bs-popover-bottom, .Popover--white .bs-popover-auto[x-placement^=bottom] {
  margin-top: 6px
}

.bs-popover-auto[x-placement^=bottom] > .arrow, .bs-popover-bottom > .arrow, .Popover--white .bs-popover-auto[x-placement^=bottom] > .arrow {
  top: -7px
}

.bs-popover-auto[x-placement^=bottom] > .arrow:before, .bs-popover-bottom > .arrow:before, .Popover--white .bs-popover-auto[x-placement^=bottom] > .arrow:before {
  top: 0;
  border-width: 0 6px 6px;
  border-bottom-color: rgba(0, 0, 0, .95)
}

.bs-popover-auto[x-placement^=bottom] > .arrow:after, .bs-popover-bottom > .arrow:after, .Popover--white .bs-popover-auto[x-placement^=bottom] > .arrow:after {
  top: 1px;
  border-width: 0 6px 6px;
  border-bottom-color: rgba(0, 0, 0, .9)
}

.bs-popover-auto[x-placement^=bottom] .popover-header:before, .bs-popover-bottom .popover-header:before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 12px;
  margin-left: -6px;
  content: "";
  border-bottom: 1px solid rgba(0, 0, 0, .9)
}

.bs-popover-auto[x-placement^=left], .bs-popover-left, .Popover--white .bs-popover-auto[x-placement^=left] {
  margin-right: 6px
}

.bs-popover-auto[x-placement^=left] > .arrow, .bs-popover-left > .arrow, .Popover--white .bs-popover-auto[x-placement^=left] > .arrow {
  right: -7px;
  width: 6px;
  height: 12px;
  margin: 2px 0
}

.bs-popover-auto[x-placement^=left] > .arrow:before, .bs-popover-left > .arrow:before, .Popover--white .bs-popover-auto[x-placement^=left] > .arrow:before {
  right: 0;
  border-width: 6px 0 6px 6px;
  border-left-color: rgba(0, 0, 0, .95)
}

.bs-popover-auto[x-placement^=left] > .arrow:after, .bs-popover-left > .arrow:after, .Popover--white .bs-popover-auto[x-placement^=left] > .arrow:after {
  right: 1px;
  border-width: 6px 0 6px 6px;
  border-left-color: rgba(0, 0, 0, .9)
}

.popover-header {
  padding: 10px 10px 5px;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px
}

.popover-header:empty {
  display: none
}

.popover-body {
  padding: 0 10px 10px;
  color: #fff
}

.Popover__btn-close {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 5;
  padding: 10px;
  font-size: 24px;
  color: #fff
}

.Popover--white .popover {
  font-family: Source Sans Pro, sans-serif;
  color: #1d1d1d;
  max-width: 450px;
  border-radius: 2px;
  border-color: #f8f8f8;
  background-color: #f8f8f8;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04)
}

@media only screen and (max-width: 767px) {
  .Popover--white .popover {
    max-width: 335px
  }
}

.Popover--white .popover-body {
  color: #000;
  padding: 24px;
  max-width: 450px;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.Popover--white .bs-popover-auto[x-placement^=top] > .arrow:before, .Popover--white .bs-popover-top > .arrow:before {
  border-top-color: hsla(0, 0%, 97%, .05)
}

.Popover--white .bs-popover-auto[x-placement^=top] > .arrow:after, .Popover--white .bs-popover-top > .arrow:after {
  border-top-color: #f8f8f8
}

.Popover--white .bs-popover-auto[x-placement^=right] > .arrow:before, .Popover--white .bs-popover-right > .arrow:before {
  border-right-color: hsla(0, 0%, 97%, .05)
}

.Popover--white .bs-popover-auto[x-placement^=right] > .arrow:after, .Popover--white .bs-popover-right > .arrow:after {
  border-right-color: #f8f8f8
}

.Popover--white .bs-popover-auto[x-placement^=bottom] > .arrow:before, .Popover--white .bs-popover-bottom > .arrow:before {
  border-bottom-color: hsla(0, 0%, 97%, .05)
}

.Popover--white .bs-popover-auto[x-placement^=bottom] > .arrow:after, .Popover--white .bs-popover-bottom > .arrow:after {
  border-bottom-color: #f8f8f8
}

.Popover--white .bs-popover-auto[x-placement^=left] > .arrow:before, .Popover--white .bs-popover-left > .arrow:before {
  border-left-color: hsla(0, 0%, 97%, .05)
}

.Popover--white .bs-popover-auto[x-placement^=left] > .arrow:after, .Popover--white .bs-popover-left > .arrow:after {
  border-left-color: #f8f8f8
}

.Popover--white .align-content-center {
  line-height: 18px
}

.Popover--white .align-content-center > div {
  display: inline-block;
  vertical-align: middle
}

.Popover--white .size-20 {
  width: 20px;
  max-width: 20px
}

.Popover--white .icon {
  width: 42px;
  height: 42px;
  font-weight: 400;
  font-size: 42px;
  line-height: 42px
}

.Popover--white .icon.size-20 {
  width: 20px;
  height: 20px;
  font-weight: 400;
  font-size: 20px;
  line-height: 20px
}

.Popover--white .icon.small {
  width: 16px;
  height: 16px;
  font-weight: 400;
  font-size: 16px;
  line-height: 16px
}

.Popover--white .icon.display-block {
  display: block;
  margin-bottom: 0
}

.Popover--white .icon.margin-right-5 {
  margin-right: 5px
}

.Popover--white .icon.top-2 {
  position: relative;
  top: 2px
}

.Popover--white__icon--pink {
  color: #bd1343
}

.Popover--white__icon--gray {
  color: #1d1d1d
}

.Popover--white__icon--black {
  color: #000
}

.Popover--white__header {
  text-align: left;
  color: #666;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.Popover--white__header > div {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-basis: 100%;
  flex-basis: 100%;
  -webkit-flex: 10;
  flex: 10
}

.Popover--white__header > div:first-child {
  -webkit-flex: 1;
  flex: 1
}

.Popover--white__header > div:nth-child(2) {
  -webkit-flex: 4;
  flex: 4;
  padding-left: 8px
}

.Popover--white__header > div:nth-child(2).flex8 {
  -webkit-flex: 8;
  flex: 8
}

.Popover--white__header > div:nth-child(2).nowrap {
  white-space: nowrap
}

.Popover--white__header > div.flex2 {
  -webkit-flex: 2;
  flex: 2
}

@media only screen and (max-width: 767px) {
  .Popover--white__header > div.responsive-flex-auto {
    padding-left: 0;
    -webkit-flex: 5;
    flex: 5
  }
}

@media only screen and (max-width: 767px) {
  .Popover--white__header > div.responsive-no-flex {
    display: block;
    line-height: 20px
  }
}

.Popover--white__header > div.responsive-no-flex span:nth-child(2n):before {
  content: " "
}

.Popover--white .text {
  color: #1d1d1d;
  font-weight: 400;
  font-size: 14px;
  line-height: 18px
}

.Popover--white .text.small {
  font-size: 12px;
  line-height: 15px
}

.Popover--white .text.title {
  font-size: 16px;
  line-height: 20px
}

.Popover--white .text.current-co2 {
  color: #bd1343;
  font-weight: 400;
  font-size: 18px;
  line-height: 23px
}

@media only screen and (max-width: 767px) {
  .Popover--white .text.current-co2 {
    font-weight: 700;
    font-size: 16px;
    line-height: 20px
  }
}

.Popover--white .text.average-co2 {
  font-weight: 400;
  font-size: 18px;
  line-height: 23px
}

@media only screen and (max-width: 767px) {
  .Popover--white .text.average-co2 {
    font-weight: 400;
    font-size: 16px;
    line-height: 20px
  }
}

.Popover--white .text.bold {
  font-weight: 700
}

.Popover--white .text.margin-bottom-8 {
  margin-bottom: 8px
}

.Popover--white .text.margin-bottom-10 {
  margin-bottom: 10px
}

@media only screen and (max-width: 767px) {
  .Popover--white .text.margin-bottom-10 {
    margin-bottom: 15px
  }
}

.Popover--white .text.margin-bottom-15 {
  margin-bottom: 15px
}

.Popover--white .text.pink {
  color: #bd1343
}

.Popover--white .text.grey {
  color: #666
}

.Popover--white .text.black {
  color: #000
}

.Popover--white .text.italic {
  font-style: italic
}

.Popover--white .text.flex-row {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row
}

section.error {
  background: none
}

section.error .error-bloc {
  background: #fff;
  color: #1d1d1d;
  text-align: center;
  font-family: Source Sans Pro, sans-serif;
  padding: 40px
}

section.error h1 {
  font-family: Georgia, Times New Roman, Times, serif;
  font-style: italic;
  font-size: 24px
}

section.error em {
  color: #bd1343;
  font-size: 27px;
  font-weight: 700
}

section.error .text {
  font-size: 16px;
  margin: 20px 0
}

section.error .phone_number_button {
  font-size: 24px;
  font-weight: 700;
  font-family: Source Sans Pro, sans-serif;
  margin-bottom: 5px
}

@media only screen and (max-width: 1024px) {
  section.error .phone_number_button:hover {
    border: 1px solid #afafaf;
    background-color: #d3d3d3
  }
}

@media only screen and (max-width: 767px) {
  section.error .phone_number_button {
    margin: 40px 0 20px;
    padding: 15px 30px;
    background: #eee;
    border: 1px solid #d3d3d3;
    color: #666;
    font-size: 16px;
    font-weight: 700
  }
}

section.error .notice {
  margin-bottom: 40px;
  font-size: 14px;
  color: #666
}

section.error a#back {
  display: inline-block;
  padding: 15px 25px
}

.error.flashMessage {
  position: absolute;
  width: 100%;
  left: 0;
  top: 68px;
  background: #bd1343;
  color: #fff;
  text-align: center;
  min-height: 60px;
  padding: 20px
}

@media only screen and (max-width: 1024px) {
  .error.flashMessage {
    position: fixed;
    top: 0;
    z-index: 1;
    padding: 20px 33px
  }
}

.error.flashMessage .error-title {
  font-size: 18px;
  font-weight: 700
}

.error.flashMessage .error-title i {
  font-size: 32px;
  vertical-align: middle;
  margin-right: 10px
}

@media only screen and (max-width: 1024px) {
  .error.flashMessage .error-title i {
    font-size: 20px
  }
}

.error.section.payment {
  width: 100%;
  padding: 10px 20px;
  margin: 0
}

.error.section.payment .error-head {
  background-color: #bd1343;
  color: #fff;
  padding: 10px;
  font-size: 16px;
  font-weight: 700
}

.error.section.payment .error-head .icon-alert {
  margin-right: 10px;
  font-size: 18px;
  vertical-align: text-bottom
}

.error.section.payment .error-content {
  border: 2px solid #bd1343;
  border-top: none;
  padding: 15px;
  background-color: #fff;
  color: #414141
}

.closeError {
  position: absolute;
  right: 10px;
  top: 10px;
  font-size: 24px;
  color: #fff
}

#secure_payment_form input {
  width: 100%;
  text-align: center
}

.securePayment {
  text-align: center;
  padding: 40px;
  color: #666
}

@media only screen and (max-width: 767px) {
  .securePayment {
    padding: 0
  }
}

.securePayment .securePaymentMessage {
  margin-bottom: 20px
}

@media only screen and (max-width: 767px) {
  .securePayment .securePaymentMessage {
    margin-bottom: 0;
    padding: 20px 20px 0
  }
}

.securePayment #securePaymentIframe {
  width: 100%;
  height: 500px
}

.securePayment #securePaymentIframe.instanea-iframe {
  max-width: 450px;
  height: 790px
}

@media (max-height: 860px) {
  .securePayment #securePaymentIframe.instanea-iframe {
    position: absolute;
    top: 50px;
    left: 0;
    right: 0;
    bottom: 0;
    height: -webkit-fill-available !important;
    max-width: 100% !important
  }
}

#popup-name {
  display: none;
  position: fixed;
  top: 0;
  z-index: 9999;
  overflow: auto;
  width: 100%;
  height: 100%;
  padding: 15px;
  background-color: #fff;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.ReactTooltip .tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-size: 12px;
  word-wrap: break-word;
  opacity: 0 !important;
  visibility: visible !important
}

.ReactTooltip .tooltip.show {
  opacity: .9 !important
}

.ReactTooltip .tooltip:after, .ReactTooltip .tooltip:before {
  display: none !important
}

.ReactTooltip .tooltip .arrow {
  position: absolute;
  display: block;
  width: .8rem;
  height: .4rem
}

.ReactTooltip .tooltip .arrow:before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid
}

.ReactTooltip .bs-tooltip-auto[x-placement^=top], .ReactTooltip .bs-tooltip-top {
  padding: .4rem 0
}

.ReactTooltip .bs-tooltip-auto[x-placement^=top] .arrow, .ReactTooltip .bs-tooltip-top .arrow {
  bottom: 0
}

.ReactTooltip .bs-tooltip-auto[x-placement^=top] .arrow:before, .ReactTooltip .bs-tooltip-top .arrow:before {
  top: 0;
  border-width: .4rem .4rem 0;
  border-top-color: #000
}

.ReactTooltip .bs-tooltip-auto[x-placement^=right], .ReactTooltip .bs-tooltip-right {
  padding: 0 .4rem
}

.ReactTooltip .bs-tooltip-auto[x-placement^=right] .arrow, .ReactTooltip .bs-tooltip-right .arrow {
  left: 0;
  width: .4rem;
  height: .8rem
}

.ReactTooltip .bs-tooltip-auto[x-placement^=right] .arrow:before, .ReactTooltip .bs-tooltip-right .arrow:before {
  right: 0;
  border-width: .4rem .4rem .4rem 0;
  border-right-color: #000
}

.ReactTooltip .bs-tooltip-auto[x-placement^=bottom], .ReactTooltip .bs-tooltip-bottom {
  padding: .4rem 0
}

.ReactTooltip .bs-tooltip-auto[x-placement^=bottom] .arrow, .ReactTooltip .bs-tooltip-bottom .arrow {
  top: 0
}

.ReactTooltip .bs-tooltip-auto[x-placement^=bottom] .arrow:before, .ReactTooltip .bs-tooltip-bottom .arrow:before {
  bottom: 0;
  border-width: 0 .4rem .4rem;
  border-bottom-color: #000
}

.ReactTooltip .bs-tooltip-auto[x-placement^=left], .ReactTooltip .bs-tooltip-left {
  padding: 0 .4rem
}

.ReactTooltip .bs-tooltip-auto[x-placement^=left] .arrow, .ReactTooltip .bs-tooltip-left .arrow {
  right: 0;
  width: .4rem;
  height: .8rem
}

.ReactTooltip .bs-tooltip-auto[x-placement^=left] .arrow:before, .ReactTooltip .bs-tooltip-left .arrow:before {
  left: 0;
  border-width: .4rem 0 .4rem .4rem;
  border-left-color: #000
}

.ReactTooltip .tooltip-inner {
  max-width: 200px;
  padding: .25rem .5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 2px
}

.ReactTooltip--autoWidth .tooltip-inner {
  max-width: none
}

.slick-slider {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}

.slick-list, .slick-slider {
  position: relative;
  display: block
}

.slick-list {
  overflow: hidden;
  margin: 0;
  padding: 0
}

.slick-list:focus {
  outline: none
}

.slick-list.dragging {
  cursor: pointer
}

@media only screen and (max-width: 767px) {
  .slick-list {
    height: 250px !important
  }
}

.slick-slider .slick-list, .slick-slider .slick-track {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  height: 100%
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}

.slick-track:after, .slick-track:before {
  content: "";
  display: table
}

.slick-track:after {
  clear: both
}

.slick-loading .slick-track {
  visibility: hidden
}

.slick-slide {
  height: 100%;
  float: left;
  min-height: 1px;
  display: none
}

[dir=rtl] .slick-slide {
  float: right
}

.slick-slide.slick-loading img {
  display: none
}

.slick-slide.dragging img {
  pointer-events: none
}

.slick-initialized .slick-slide {
  display: -webkit-flex;
  display: flex
}

.slick-loading .slick-slide {
  visibility: hidden
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}

.slick-slide .caption {
  max-width: 420px;
  padding: 20px 15px;
  color: #000;
  font-style: italic
}

.slick-slide .caption p {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis
}

.slick-arrow.slick-hidden {
  display: none
}

.slick-next, .slick-prev {
  z-index: 1;
  position: absolute;
  display: block;
  cursor: pointer;
  color: transparent;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  padding: 0;
  border: none;
  outline: none;
  opacity: 1;
  background-color: rgba(29, 29, 29, .3);
  height: 40px;
  margin-top: -20px;
  width: 40px;
  line-height: 40px;
  font-size: 25px
}

@media only screen and (max-width: 767px) {
  .slick-next, .slick-prev {
    display: none !important
  }
}

.slick-next:focus, .slick-next:hover, .slick-prev:focus, .slick-prev:hover {
  opacity: 1;
  outline: none;
  background-color: rgba(29, 29, 29, .3);
  color: transparent
}

.slick-next:focus:before, .slick-next:hover:before, .slick-prev:focus:before, .slick-prev:hover:before {
  opacity: 1
}

.slick-next.slick-disabled:before, .slick-prev.slick-disabled:before {
  opacity: .25
}

.slick-next:before, .slick-prev:before {
  font-family: slick;
  font-size: 20px;
  line-height: 1;
  color: #fff;
  opacity: .75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block
}

.slick-prev {
  left: 10px
}

[dir=rtl] .slick-prev {
  left: auto;
  right: 0
}

.slick-prev:before {
  content: "\E60B";
  font-family: vpgseticon
}

[dir=rtl] .slick-prev:before {
  content: "\E60A"
}

.slick-next {
  right: 10px
}

[dir=rtl] .slick-next {
  left: 0;
  right: auto
}

.slick-next:before {
  content: "\E60A";
  font-family: vpgseticon
}

[dir=rtl] .slick-next:before {
  content: "\E60B"
}

.slick-dotted.slick-slider {
  margin-bottom: 30px
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%
}

.slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 5px;
  padding: 0
}

.slick-dots li, .slick-dots li button {
  height: 20px;
  width: 20px;
  cursor: pointer
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  outline: none;
  line-height: 0;
  font-size: 0;
  color: transparent;
  padding: 5px
}

.slick-dots li button:focus, .slick-dots li button:hover {
  outline: none
}

.slick-dots li button:focus:before, .slick-dots li button:hover:before {
  opacity: 1
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "\2022";
  width: 20px;
  height: 20px;
  font-family: slick;
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: #000;
  opacity: .25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.slick-dots li.slick-active button:before {
  color: #000;
  opacity: .75
}

.slick-dots {
  top: 0;
  height: 20px;
  display: none !important
}

@media only screen and (max-width: 767px) {
  .slick-dots {
    display: block !important;
    background: linear-gradient(0deg, transparent, rgba(0, 0, 0, .8));
    height: 64px;
    top: 0;
    padding: 15px
  }
}

.slick-dots li {
  margin: 0;
  width: 15px
}

.slick-dots li.hide {
  visibility: hidden
}

.slick-dots li button:before {
  font-size: 25px;
  color: #fff;
  transition: all .5s ease;
  -webkit-transform: scale(1);
  transform: scale(1);
  text-shadow: 0 0 10px rgba(0, 0, 0, .5)
}

.slick-dots li.little button:before {
  -webkit-transform: scale(.7);
  transform: scale(.7);
  color: #fff;
  transition: all .5s ease
}

.slick-dots li.scale-hidden {
  display: none
}

.slick-dots li.scale-hidden button:before {
  -webkit-transform: scale(0);
  transform: scale(0);
  transition: all .5s ease
}

.slick-dots li.slick-active button:before {
  -webkit-transform: scale(1.4);
  transform: scale(1.4);
  color: #fff;
  transition: all .5s ease
}


/*giftcard*/
.button, .Button {
  text-align: center;
  border-radius: 2px;
  padding: 14px 20px;
  line-height: 1;
  border: 1px solid transparent;
  color: #fff;
  float: none !important;
  font-size: 14px;
  font-weight: 700;
  font-family: Source Sans Pro, sans-serif;
  cursor: pointer;
  display: inline-block
}

.button[type=submit], .Button[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

.button[disabled], .Button[disabled] {
  cursor: unset
}

@media only screen and (max-width: 767px) {
  .button, .Button {
    width: 100%
  }
}

.button:hover:enabled, .Button:hover:enabled {
  text-decoration: none
}

.button--small, .Button--small {
  padding: 10.5px 15px;
  font-size: 12px
}

.button--xsmall, .Button--xsmall {
  padding: 4.5px 10px;
  font-size: 12px
}

.button--primary, .Button--primary {
  background-color: #bd1343;
  transition: all .1s ease-out;
  color: #fff
}

.button--primary:hover:enabled, .Button--primary:hover:enabled {
  color: #fff;
  transition: all .2s ease-out;
  background-color: #a5113a
}

.button--secondary, .Button--secondary {
  background-color: #8a8a8a;
  transition: all .1s ease-out;
  color: #fff
}

.button--secondary:hover:enabled, .Button--secondary:hover:enabled {
  transition: all .2s ease-out;
  background-color: #666;
  color: #fff
}

.button--white, .Button--white {
  background-color: #fff;
  border: 1px solid #d3d3d3;
  color: #666;
  transition: all .1s ease-out
}

.button--white:hover:enabled, .Button--white:hover:enabled {
  transition: all .2s ease-out;
  color: #666;
  border-color: #8a8a8a
}

.button--transparent, .Button--transparent {
  background-color: transparent;
  border: 1px solid #d3d3d3;
  color: #666;
  transition: all .1s ease-out
}

.button--transparent:hover:enabled, .Button--transparent:hover:enabled {
  transition: all .2s ease-out;
  border-color: #8a8a8a
}

.button--dark, .Button--dark {
  background-color: #1d1d1d;
  transition: all .1s ease-out
}

.button--dark:hover:enabled, .Button--dark:hover:enabled {
  transition: all .2s ease-out;
  background-color: #000
}

.button--light, .Button--light {
  background-color: #eee;
  border: 1px solid #d3d3d3;
  color: #666;
  transition: all .1s ease-out
}

.button--light:hover:enabled, .Button--light:hover:enabled {
  transition: all .2s ease-out;
  background-color: #d3d3d3;
  border-color: #afafaf
}

.button--disabled, .Button--disabled {
  background-color: #eee;
  color: #d3d3d3;
  cursor: unset
}

.button--link, .Button--link {
  color: #666;
  text-decoration: underline;
  border-color: transparent;
  font-weight: 700
}

.button--link:hover:enabled, .Button--link:hover:enabled {
  text-decoration: none;
  color: #1d1d1d
}

.button--append, .Button--append {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  margin-left: -1px
}

.button--dropdown, .Button--dropdown {
  padding-right: 42px;
  position: relative
}

.button--dropdown .icon, .Button--dropdown .icon {
  position: absolute;
  right: 11px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 24px
}

.button--dropdown .isSelected, .Button--dropdown .isSelected, .expanded .button--dropdown:not(.button--dropdownSubLevel), .expanded .Button--dropdown:not(.button--dropdownSubLevel), .expanded_sublevel .button--dropdown, .expanded_sublevel .Button--dropdown {
  background-color: #fff;
  border: 1px solid #d3d3d3;
  color: #666;
  transition: all .1s ease-out
}

.button--dropdown .isSelected:hover, .Button--dropdown .isSelected:hover, .expanded .button--dropdown:not(.button--dropdownSubLevel):hover, .expanded .Button--dropdown:not(.button--dropdownSubLevel):hover, .expanded_sublevel .button--dropdown:hover, .expanded_sublevel .Button--dropdown:hover {
  transition: all .2s ease-out;
  color: #414141;
  border-color: #8a8a8a;
  background-color: #fff
}

.button--dropdown .isSelected .icon, .Button--dropdown .isSelected .icon, .expanded .button--dropdown:not(.button--dropdownSubLevel) .icon, .expanded .Button--dropdown:not(.button--dropdownSubLevel) .icon, .expanded_sublevel .button--dropdown .icon, .expanded_sublevel .Button--dropdown .icon {
  -webkit-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg)
}

.button--noPadding, .Button--noPadding {
  padding: 0
}

.button--noDecoration, .Button--noDecoration {
  text-decoration: none
}

@media only screen and (max-width: 767px) {
  .button--autoWidthMobile, .Button--autoWidthMobile {
    width: auto
  }
}

.PartialBalanceHelp__title:after, .SkisetModal__title:after, .SmartBP .AncillariesLuggageModal__title:after {
  content: "";
  height: 3px;
  width: 20px;
  background-color: #bd1343;
  display: block;
  margin: 15px 0 0
}

.centered.PartialBalanceHelp__title:after, .centered.SkisetModal__title:after, .SkisetModal__title:after, .SmartBP .AncillariesLuggageModal__title:after, .SmartBP .centered.AncillariesLuggageModal__title:after {
  margin-left: auto;
  margin-right: auto
}

.SmartBP .BoundInfos:after, .SmartBP .BoundInfos:before {
  display: table;
  content: ""
}

.SmartBP .BoundInfos:after {
  clear: both
}

.price.loading {
  display: none !important
}

.Section {
  background-color: #fff;
  margin: 0;
  padding: 0 20px
}

.Section:last-child {
  margin-bottom: 2px;
  padding-bottom: 20px
}

.Section__header {
  padding-top: 17px;
  padding-bottom: 9px
}

.Section__header h1 {
  color: #1d1d1d;
  font-size: 18px;
  font-weight: 700;
  padding-top: 0;
  padding-bottom: 0;
  position: relative
}

.Section__header h1:before {
  content: "";
  background-color: #bd1343;
  border-left: 4px solid #bd1343;
  height: 20px;
  width: 1px;
  vertical-align: sub;
  display: block;
  position: absolute;
  top: 2px;
  left: -20px
}

.Section__header h1 small {
  color: #666;
  font-size: 14px;
  font-weight: 400
}

.Section__header h1 .label-tag {
  border-radius: 2px;
  background: #bd1343;
  line-height: 14px;
  padding: 5px 10px;
  color: #fff;
  font-size: 12px;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
  white-space: pre
}

.Section__header h2 {
  color: #666;
  font-size: 16px;
  font-weight: 700;
  padding-top: 0;
  padding-bottom: 0;
  position: relative;
  margin-top: 10px
}

.mfp-bg {
  z-index: 1042;
  overflow: hidden;
  background: #0b0b0b;
  opacity: .8
}

.mfp-bg, .mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: fixed
}

.mfp-wrap {
  z-index: 1043;
  outline: none !important;
  -webkit-backface-visibility: hidden
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px
}

.mfp-container:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle
}

.mfp-align-top .mfp-container:before {
  display: none
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045
}

.mfp-ajax-holder .mfp-content, .mfp-inline-holder .mfp-content {
  width: 100%;
  cursor: auto
}

.mfp-ajax-cur {
  cursor: progress
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -webkit-zoom-out;
  cursor: zoom-out
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in
}

.mfp-auto-cursor .mfp-content {
  cursor: auto
}

.mfp-arrow, .mfp-close, .mfp-counter, .mfp-preloader {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none
}

.mfp-loading.mfp-figure {
  display: none
}

.mfp-hide {
  display: none !important
}

.mfp-preloader {
  color: #ccc;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -.8em;
  left: 8px;
  right: 8px;
  z-index: 1044
}

.mfp-preloader a {
  color: #ccc
}

.mfp-preloader a:hover {
  color: #fff
}

.mfp-s-error .mfp-content, .mfp-s-ready .mfp-preloader {
  display: none
}

button.mfp-arrow, button.mfp-close {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none
}

button::-moz-focus-inner {
  padding: 0;
  border: 0
}

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: .65;
  padding: 0 0 18px 10px;
  color: #fff;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace
}

.mfp-close:focus, .mfp-close:hover {
  opacity: 1
}

.mfp-close:active {
  top: 1px
}

.mfp-close-btn-in .mfp-close {
  color: #333
}

.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close {
  color: #fff;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #ccc;
  font-size: 12px;
  line-height: 18px
}

.mfp-arrow {
  position: absolute;
  opacity: .65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.mfp-arrow:active {
  margin-top: -54px
}

.mfp-arrow:focus, .mfp-arrow:hover {
  opacity: 1
}

.mfp-arrow .mfp-a, .mfp-arrow .mfp-b, .mfp-arrow:after, .mfp-arrow:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent
}

.mfp-arrow .mfp-a, .mfp-arrow:after {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px
}

.mfp-arrow .mfp-b, .mfp-arrow:before {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: .7
}

.mfp-arrow-left {
  left: 0
}

.mfp-arrow-left .mfp-a, .mfp-arrow-left:after {
  border-right: 17px solid #fff;
  margin-left: 31px
}

.mfp-arrow-left .mfp-b, .mfp-arrow-left:before {
  margin-left: 25px;
  border-right: 27px solid #3f3f3f
}

.mfp-arrow-right {
  right: 0
}

.mfp-arrow-right .mfp-a, .mfp-arrow-right:after {
  border-left: 17px solid #fff;
  margin-left: 39px
}

.mfp-arrow-right .mfp-b, .mfp-arrow-right:before {
  border-left: 27px solid #3f3f3f
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px
}

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px
}

.mfp-iframe-holder .mfp-close {
  top: -40px
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%
}

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, .6);
  background: #000
}

img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  padding: 40px 0;
  margin: 0 auto
}

.mfp-figure, img.mfp-img {
  line-height: 0
}

.mfp-figure:after {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, .6);
  background: #444
}

.mfp-figure small {
  color: #bdbdbd;
  display: block;
  font-size: 12px;
  line-height: 14px
}

.mfp-figure figure {
  margin: 0
}

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #f3f3f3;
  word-wrap: break-word;
  padding-right: 36px
}

.mfp-image-holder .mfp-content {
  max-width: 100%
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer
}

@media screen and (max-height: 300px), screen and (max-width: 800px) and (orientation: landscape) {
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0
  }

  .mfp-img-mobile img.mfp-img {
    padding: 0
  }

  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0
  }

  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px
  }

  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, .6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed
  }

  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0
  }

  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px
  }

  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, .6);
    position: fixed;
    text-align: center;
    padding: 0
  }
}

@media (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(.75);
    transform: scale(.75)
  }

  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0
  }

  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%
  }

  .mfp-container {
    padding-left: 6px;
    padding-right: 6px
  }
}

.mfp-ie7 .mfp-img {
  padding: 0
}

.mfp-ie7 .mfp-bottom-bar {
  width: 600px;
  left: 50%;
  margin-left: -300px;
  margin-top: 5px;
  padding-bottom: 5px
}

.mfp-ie7 .mfp-container {
  padding: 0
}

.mfp-ie7 .mfp-content {
  padding-top: 44px
}

.mfp-ie7 .mfp-close {
  top: 0;
  right: 0;
  padding-top: 0
}

.mfp-fade.mfp-bg, .mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  transition: all .15s ease-out
}

.mfp-fade.mfp-bg.mfp-ready {
  opacity: .8
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1
}

.mfp-fade.mfp-bg.mfp-removing, .mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0
}

.scarcity {
  display: none;
  padding-top: 10px;
  color: #f99c45
}

.scarcity .info-icon {
  display: table-cell;
  vertical-align: middle;
  border-right: 2px solid #fff;
  background-color: #fff1e4
}

.scarcity .info-icon .icon-infos-i {
  padding: 13px
}

.scarcity .info-text {
  display: table-cell;
  width: 100%;
  padding: 10px;
  background-color: #fff1e4
}

.message {
  background-color: #fff;
  border-left: 3px solid #bd1343;
  padding: 15px 20px;
  margin-bottom: 15px
}

.message__header {
  color: #bd1343;
  font-size: 18px;
  font-family: Georgia, Times New Roman, Times, serif;
  font-style: italic;
  font-weight: 700;
  line-height: 1
}

.message__body {
  margin-top: 5px;
  color: #000
}

.section {
  margin-bottom: 20px
}

.section.section-hidden {
  display: none
}

.section .section-title {
  color: #1d1d1d
}

.section .section-title:not(.subsection) {
  font-family: Georgia, Times New Roman, Times, serif;
  font-style: italic;
  font-size: 24px;
  line-height: 27px;
  text-align: center;
  padding: 20px
}

.section .section-title:not(.subsection):after {
  content: "";
  height: 3px;
  width: 20px;
  background-color: #bd1343;
  display: block;
  margin: 15px auto 0
}

.section .section-title:not(.subsection) span {
  display: block;
  font-size: 16px;
  color: #666;
  font-family: Source Sans Pro, sans-serif;
  font-style: normal
}

.section .section-title.subsection {
  font-size: 18px;
  line-height: 23px;
  font-weight: 700;
  position: relative;
  background-color: #fff;
  padding: 0 20px;
  margin: 40px 0 15px
}

.section .section-title.subsection:before {
  content: "";
  background-color: #bd1343;
  border-left: 4px solid #bd1343;
  height: 20px;
  width: 1px;
  vertical-align: sub;
  display: block;
  position: absolute;
  top: 2px;
  left: 0
}

.section .section-title.subsection span {
  color: #666;
  font-size: 14px;
  line-height: 18px;
  font-weight: 400
}

.section .section__wrapper {
  background-color: #fff;
  padding-bottom: 20px
}

.section.holiday .price, .section.options .price, .section.voucher .price {
  font-size: 16px;
  line-height: 20px;
  font-weight: 700;
  white-space: nowrap
}

.section.holiday .price .price-insteadof, .section.options .price .price-insteadof, .section.voucher .price .price-insteadof {
  display: block;
  font-size: 14px;
  font-weight: 400;
  color: #666
}

.section.holiday .price .price-insteadof .price-insteadof-price, .section.options .price .price-insteadof .price-insteadof-price, .section.voucher .price .price-insteadof .price-insteadof-price {
  text-decoration: line-through
}

.section.holiday .price .price-from, .section.options .price .price-from, .section.voucher .price .price-from {
  display: block;
  font-size: 12px;
  font-weight: 400;
  margin-right: 6px
}

.section.holiday .price .price-off, .section.options .price .price-off, .section.voucher .price .price-off {
  display: block;
  color: #666;
  font-size: 12px;
  line-height: 1;
  font-weight: 400
}

.section.holiday .sub-price-by, .section.options .sub-price-by, .section.voucher .sub-price-by {
  font-weight: 400
}

.section.holiday .title-quantity, .section.options .title-quantity, .section.voucher .title-quantity {
  font-weight: 700;
  color: #666;
  font-size: 16px
}

.section.holiday .section-content, .section.options .section-content, .section.voucher .section-content {
  margin: 0;
  padding: 20px;
  background-color: #fff
}

.section.holiday .section-content .section-data.active .price-by, .section.holiday .section-content .section-data.active .price.unit, .section.holiday .section-content .section-data:not(.active) .corner, .section.options .section-content .section-data.active .price-by, .section.options .section-content .section-data.active .price.unit, .section.options .section-content .section-data:not(.active) .corner, .section.voucher .section-content .section-data.active .price-by, .section.voucher .section-content .section-data.active .price.unit, .section.voucher .section-content .section-data:not(.active) .corner {
  display: none
}

.section.holiday .section-content .section-data.included .price, .section.options .section-content .section-data.included .price, .section.voucher .section-content .section-data.included .price {
  color: #bd1343 !important
}

.section.holiday .paragraphs, .section.options .paragraphs, .section.voucher .paragraphs {
  overflow: hidden
}

.section .section-content.holiday {
  border-bottom: 1px dashed #afafaf;
  margin: 0 20px;
  padding: 15px 0
}

@media only screen and (min-width: 1025px) {
  .section .section-content.holiday {
    padding: 30px 20px
  }
}

.section .section-content.holiday .section-data {
  display: table;
  width: 100%;
  margin: 7px 0;
  background: #fff;
  padding: 20px;
  border-bottom: 1px solid #eee
}

.section .section-content.holiday .section-data .section-data-text {
  font-weight: 700;
  display: table-cell;
  padding-right: 5px
}

@media only screen and (min-width: 1025px) {
  .section .section-content.holiday .section-data .section-data-text {
    font-size: 16px
  }
}

.section .section-content.holiday .section-data .section-data-text .lodging-scarcity {
  color: #f99b1c;
  font-weight: 400
}

.section .section-content.holiday .section-data .section-data-text .sejour {
  display: block
}

.section .section-content.holiday .section-data .section-data-text .sejour .reduc {
  display: block;
  font-weight: 400;
  font-size: 14px
}

.section .section-content.holiday .section-data .section-data-text .sejour .reduc .price {
  font-size: 14px
}

.section .section-content.holiday .section-data .section-data-text .sejour .supplement-single {
  font-weight: 400
}

.section .section-content.holiday .section-data .section-data-text .sejour .supplement-single + .line-icon-information-circle {
  margin-left: 5px;
  vertical-align: middle
}

.section .section-content.holiday .section-data .section-data-price {
  display: table-cell;
  text-align: right;
  padding-left: 5px
}

.section .section-content.holiday .flex-modify .label-tag {
  display: inline-block;
  border-radius: 2px;
  background: #bd1343;
  line-height: 14px;
  padding: 5px 10px;
  color: #fff;
  font-size: 12px;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
  white-space: pre
}

.section .section-content.boardtype .section-data, .section .section-content.lodging .section-data {
  display: table;
  width: 100%
}

.section .section-content.boardtype .section-data .section-data-text, .section .section-content.lodging .section-data .section-data-text {
  display: table-cell;
  padding-right: 5px
}

.section .section-content.boardtype .section-data .section-data-price, .section .section-content.lodging .section-data .section-data-price {
  display: table-cell;
  text-align: right;
  padding-left: 5px
}

.section .section-content.boardtype .section-data:not(.hasDetails), .section .section-content.lodging .section-data:not(.hasDetails) {
  border: 1px dashed #d3d3d3;
  margin-top: -1px;
  padding: 10px 10px 11px
}

@media only screen and (min-width: 1025px) {
  .section .section-content.boardtype .section-data:not(.hasDetails), .section .section-content.lodging .section-data:not(.hasDetails) {
    padding-right: 20px
  }
}

.section .section-content.boardtype .section-data:not(.hasDetails):first-child, .section .section-content.lodging .section-data:not(.hasDetails):first-child {
  border-radius: 2px 2px 0 0;
  margin-top: 0;
  padding-bottom: 10px
}

.section .section-content.boardtype .section-data:not(.hasDetails):last-child, .section .section-content.lodging .section-data:not(.hasDetails):last-child {
  border-radius: 0 0 2px 2px
}

.section .section-content.boardtype .section-data:not(.hasDetails):only-child, .section .section-content.lodging .section-data:not(.hasDetails):only-child {
  border-radius: 2px
}

.section .section-content.boardtype .section-data:not(.hasDetails):not(.selected):hover, .section .section-content.lodging .section-data:not(.hasDetails):not(.selected):hover {
  border-style: solid;
  border-color: #afafaf
}

.section .section-content.boardtype .section-data:not(.hasDetails).selected, .section .section-content.lodging .section-data:not(.hasDetails).selected {
  border-style: solid;
  font-weight: 700
}

.section .section-content.boardtype .section-data:not(.hasDetails) .price, .section .section-content.lodging .section-data:not(.hasDetails) .price {
  color: #666
}

.section .section-content.boardtype .section-data.hasDetails + .section-data.hasDetails, .section .section-content.lodging .section-data.hasDetails + .section-data.hasDetails {
  border-top: 1px solid #d3d3d3
}

.section .section-content.boardtype .section-data.hasDetails .section-label, .section .section-content.lodging .section-data.hasDetails .section-label {
  font-weight: 700;
  font-size: 16px;
  line-height: 20px
}

.section .section-content.boardtype .infra_title, .section .section-content.lodging .infra_title {
  color: #666;
  font-size: 16px;
  font-weight: 700;
  margin: 10px 0
}

@media only screen and (max-width: 1024px) {
  .section .section-content.luggage {
    margin-left: 10px;
    margin-right: 10px
  }
}

.section .section-content.luggage > .section-data {
  border: 1px solid #d3d3d3;
  padding: 10px;
  margin-bottom: 10px
}

@media only screen and (min-width: 1025px) {
  .section .section-content.luggage > .section-data {
    padding: 20px
  }
}

.section .section-content.luggage .section-data .section-data-title {
  margin-bottom: 10px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

.section .section-content.luggage .section-data .section-data-price {
  margin-left: auto
}

.section .section-content.luggage .section-data .section-data-text {
  font-size: 14px
}

@media only screen and (min-width: 1025px) {
  .section .section-content.luggage .section-data .section-data-text {
    font-size: 16px
  }
}

.section .section-content.luggage .section-data .section-data-text.section-data-value {
  color: #666;
  font-size: 14px;
  line-height: 18px;
  font-weight: 400
}

.section .section-content.luggage .section-data.bags .FlightTxt {
  display: block;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 700
}

.section .section-content.luggage .section-data.bags #flight-internal {
  display: none
}

.section .section-content.luggage .section-data.bags .figure-company img {
  max-width: 90px
}

.section .section-content.luggage .section-data.bags .luggage-allowance, .section .section-content.luggage .section-data.bags .luggage-price {
  font-weight: 700
}

.section .section-content.luggage .section-data.bags .bagsExtra {
  margin: 20px 0
}

.section .section-content.luggage .section-data.bags .bagsExtra:last-child {
  margin-bottom: 0
}

@media only screen and (min-width: 1025px) {
  .section .section-content.luggage .section-data.bags .bagsExtra:last-child .luggage-wrapper {
    margin-bottom: 0
  }
}

.section .section-content.luggage .section-data.bags .luggage-wrapper {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin: 10px 0
}

@media only screen and (max-width: 1024px) {
  .section .section-content.luggage .section-data.bags .luggage-wrapper {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start
  }
}

@media only screen and (max-width: 1024px) {
  .section .section-content.luggage .section-data.bags .luggage-wrapper .luggageNumberBloc {
    margin-bottom: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section .section-content.luggage .section-data.bags .luggage-wrapper .luggageNumberBloc select {
    width: auto;
    margin-right: 20px
  }
}

.section .section-content.luggage .section-data.bags .luggage-infos {
  font-size: 14px;
  line-height: 18px
}

.section .section-content.luggage .section-data.bags .luggage-infos .figure-company img {
  width: 20px;
  margin-right: 5px
}

.section .section-content.luggage .section-data.bags .luggage-infos .figure-company .figure-company-name {
  vertical-align: middle
}

.section .section-content.luggage .section-data.bags .luggage-warning {
  border-left: 2px solid #bd1343;
  font-size: 14px;
  background-color: #f8f8f8;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 5px 10px
}

.section .section-content.luggage .section-data.bags .luggage-warning .icon {
  font-size: 20px;
  color: #bd1343;
  margin-right: 12px
}

.section .section-content.options .section-data {
  border-top: 1px solid #d3d3d3
}

@media only screen and (max-width: 1024px) {
  .section .section-content.options .section-data {
    padding: 20px 0
  }
}

.section .section-content.options .section-data:first-child {
  border-top: none
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .section-data:first-child {
    padding-top: 0
  }
}

.section .section-content.options .section-data .sixt_excess {
  font-size: 10px
}

.section .section-content.options .container {
  display: block;
  overflow: hidden
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .section .section-content.options .container.noPicture .container__content {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1/4;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3
  }
}

.section .section-content.options .container .section-data-text {
  display: block
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .section-data-text {
    margin-bottom: 5px;
    margin-right: 5px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .section .section-content.options .container .section-data-text {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    padding-right: 5px;
    margin-bottom: 10px
  }
}

.section .section-content.options .container .section-data-text .section-label {
  line-height: 20px;
  font-size: 18px;
  font-family: Source Sans Pro;
  font-weight: 700;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

.section .section-content.options .container .section-data-price {
  text-align: right;
  display: block
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .section-data-price {
    justify-self: right;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    display: -webkit-flex;
    display: flex
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .container .section-data-price {
    padding-left: 5px;
    margin-bottom: 10px;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4
  }
}

.section .section-content.options .container .generic-supplement {
  display: block
}

.section .section-content.options .container .gridTitle {
  display: -webkit-flex;
  display: flex;
  margin-bottom: 10px;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

.section .section-content.options .container .gridTitle .price-by {
  color: #8a8a8a
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .img-option {
    margin-bottom: 20px
  }
}

@media only screen and (min-width: 1025px) {
  .section .section-content.options .container .img-option {
    float: left;
    width: 42% !important;
    margin-right: 15px;
    margin-bottom: 0 !important;
    padding: 5px 0 !important
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .section .section-content.options .container .img-option {
    padding-left: 5px;
    margin-bottom: 10px;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .img-option img {
    width: 100%
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .img-supp {
    width: 100%;
    margin-bottom: 20px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .section .section-content.options .container .img-supp {
    display: block;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    grid-row: 2/4
  }
}

@media only screen and (min-width: 1025px) {
  .section .section-content.options .container .img-supp {
    float: left;
    width: 42% !important;
    margin-right: 15px;
    margin-bottom: 0 !important;
    padding: 5px 0 !important
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .img-supp img {
    width: 100%
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .container .img-supp + .container__content {
    padding-left: 10px
  }
}

.section .section-content.options .container .container__content {
  color: #666
}

.section .section-content.options .container .container__content:first-child {
  padding-left: 0
}

@media only screen and (min-width: 1025px) {
  .section .section-content.options .container .container__content .supplement-text .text {
    min-height: 89px
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .container__actions {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .container .container__actions {
    -ms-grid-column: 2;
    -ms-grid-column-span: 2;
    grid-column: 2/4;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    -ms-grid-row-align: end;
    align-self: end;
    -ms-grid-column-align: end;
    justify-self: end
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .container__actions .button {
    width: auto
  }
}

.section .section-content.options .container .container__actions .delete-container .added {
  text-align: center;
  border-radius: 2px;
  padding: 14px 26px 14px 52px;
  line-height: 1;
  font-size: 14px;
  font-weight: 700;
  display: inline-block;
  border: 1px solid transparent;
  color: #bd1343;
  position: relative
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .container__actions .delete-container .added {
    float: right;
    padding-right: 0
  }
}

.section .section-content.options .container .container__actions .delete-container .added .check-mark {
  position: absolute;
  left: 22px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 24px
}

.section .section-content.options .container .container__actions .add-container {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  justify-content: flex-end
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .container .container__actions .add-container {
    text-align: right
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .container .container__actions .add-container {
    min-height: 44px
  }
}

.section .section-content.options .container .paragraph .text > * {
  display: none
}

.section .section-content.options .container .paragraph.clicked .text > *, .section .section-content.options .container .paragraph .text > :first-child {
  display: block !important
}

.section .section-content.options .container .paragraph.text > * {
  display: none
}

.section .section-content.options .container .paragraph.text.clicked > *, .section .section-content.options .container .paragraph.text > :first-child {
  display: block !important
}

.section .section-content.options .container .data-text {
  font-weight: 700;
  cursor: pointer;
  color: #1d1d1d;
  margin-top: 10px
}

.section .section-content.options .option-details {
  display: none;
  margin-top: 8%
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .option-details .supp-choose {
    padding-top: 10px
  }
}

.section .section-content.options .option-details .subtotal, .section .section-content.options .option-details .supp-choose .supp-price {
  display: none
}

.section .section-content.options .option-details .supp-details-title {
  font-size: 16px;
  font-weight: 700
}

.section .section-content.options .option-details .seeMoreInternal {
  cursor: pointer;
  color: #666;
  font-weight: 700
}

.section .section-content.options .option-details .seeMoreInternal i {
  font-weight: 400;
  font-size: 14px;
  line-height: 18%;
  vertical-align: middle
}

.section .section-content.options .option-details .seeMoreInternal .hideInternal {
  display: none
}

.section .section-content.options .option-details .seeMoreInternalDetails {
  display: none;
  padding: 20px 0 10px
}

.section .section-content.options .option-details .supp-details-img {
  width: 100%
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .option-details .supp-details-img {
    width: 144px
  }
}

.section .section-content.options .option-details .supp-details-img img {
  width: 100%
}

.section .section-content.options .option-details .container-supp-line {
  display: -ms-grid;
  display: grid
}

.section .section-content.options .option-details .container-supp-line + .container-supp-line {
  border-top: 1px solid #d3d3d3
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .option-details .container-supp-line {
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    -ms-grid-rows: (auto) [ 5 ];
    grid-template-rows: repeat(5, auto);
    padding: 20px 0
  }

  .section .section-content.options .option-details .container-supp-line > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(7) {
    -ms-grid-row: 4;
    -ms-grid-column: 1
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(8) {
    -ms-grid-row: 4;
    -ms-grid-column: 2
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(9) {
    -ms-grid-row: 5;
    -ms-grid-column: 1
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(10) {
    -ms-grid-row: 5;
    -ms-grid-column: 2
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .option-details .container-supp-line {
    -ms-grid-rows: auto auto auto;
    grid-template-rows: auto auto auto;
    -ms-grid-columns: 145px auto 150px;
    grid-template-columns: 145px auto 150px;
    padding: 10px 0
  }

  .section .section-content.options .option-details .container-supp-line > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(7) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(8) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .section .section-content.options .option-details .container-supp-line > :nth-child(9) {
    -ms-grid-row: 3;
    -ms-grid-column: 3
  }
}

.section .section-content.options .option-details .container-supp-line .supp-details-column-title {
  margin-bottom: 10px
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-title {
    -ms-grid-column-span: 2;
    grid-column: span 2
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-title {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/span 2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-seemore {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 4;
    grid-row: 4;
    -ms-grid-column-align: right;
    justify-self: right
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-seemore {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-row-align: end;
    align-self: end;
    -ms-grid-column-align: end;
    justify-self: end
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-description {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/span 2;
    -ms-grid-row: 5;
    -ms-grid-row-span: 1;
    grid-row: 5/6
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-description {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1/span 3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-picture {
    -ms-grid-column-span: 2;
    grid-column: span 2;
    -ms-grid-row: 2;
    grid-row: 2;
    margin-bottom: 20px
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-picture {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-select {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 3;
    -ms-grid-row-span: 2;
    grid-row: 3/span 2
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-select {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-row-align: end;
    align-self: end;
    padding-left: 20px
  }
}

.section .section-content.options .option-details .container-supp-line .supp-details-column-quantity {
  font-size: 16px;
  font-weight: 700
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-quantity {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    -ms-grid-column-align: right;
    justify-self: right
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .option-details .container-supp-line .supp-details-column-quantity {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column-align: end;
    justify-self: end;
    margin-bottom: 10px
  }
}

@media only screen and (min-width: 768px) {
  .section .section-content.options .option-details .container-supp-line.noPicture .supp-details-column-select {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    padding-left: 0
  }
}

.section .section-content.options .option-details .section-radio {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  border-bottom: 1px solid #d3d3d3;
  padding: 15px 0
}

.section .section-content.options .option-details .section-radio:last-child {
  border-bottom: none;
  padding-bottom: 0
}

.section .section-content.options .option-details .section-radio.selected .label-title {
  font-weight: 700
}

.section .section-content.options .option-details .section-radio.selected .section-data-price {
  color: #1d1d1d
}

.section .section-content.options .option-details .section-radio .section-data-text {
  display: -webkit-flex;
  display: flex
}

.section .section-content.options .option-details .section-radio .section-data-text input[type=radio]:not(.inputOptionSixt) {
  -webkit-flex: 0 0 14px;
  flex: 0 0 14px;
  margin-top: 3px
}

.section .section-content.options .option-details .section-radio .section-data-text .label-title {
  display: block
}

.section .section-content.options .option-details .section-radio .section-data-text .seeMoreInternalDetails {
  padding: 10px 0;
  color: #666
}

.section .section-content.options .option-details .section-radio .section-data-text .seeMoreInternalDetails .supp-details-img {
  display: inline-block;
  vertical-align: top;
  width: 104px;
  height: 55px;
  margin-right: 15px
}

.section .section-content.options .option-details .section-radio .section-data-text .seeMoreInternalDetails .text {
  display: inline-block;
  vertical-align: top
}

.section .section-content.options .option-details .section-radio .section-data-price {
  text-align: right;
  color: #666
}

.section .section-content.options .delete-container {
  display: none
}

@media only screen and (max-width: 1024px) {
  .section .section-content.transport {
    margin: 0;
    padding-left: 0;
    padding-right: 0
  }
}

.section.holiday .section__wrapper {
  background-color: #fff;
  padding-bottom: 20px
}

.section.holiday .more-lodgings-container {
  text-align: center
}

.section.holiday .section-content.options .section-data + .section-data {
  border-top: 1px solid #d3d3d3
}

@media only screen and (max-width: 767px) {
  .section.holiday .section-content.options[data-type=included] .section-data-text {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2
  }
}

@media only screen and (max-width: 767px) {
  .section.holiday .section-content.options[data-type=included] .section-data-price {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2
  }
}

@media only screen and (max-width: 767px) {
  .section.holiday .section-content.options[data-type=included] .img-supp {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3
  }
}

.section:not(.holiday) .section-content {
  margin: 0;
  background-color: #fff
}

.section.options .section-content.options + .section-content.options, .section.options .section-content.options .section-data:not(.optionSkiset__composition) + .section-data {
  position: relative;
  margin-top: 20px
}

@media only screen and (max-width: 767px) {
  .section.options .section-content.options .section-data:not(.optionSkiset__composition) {
    padding-top: 0
  }
}

.section.options .section-content[data-type=dynamicOption] .section-data-text .section-label, .section.options .section-content[data-type=option] .section-data-text .section-label, .section.options .section-content[data-type=transfer] .section-data-text .section-label {
  font-size: 18px;
  line-height: 24px
}

.section.options .section-content[data-type=dynamicOption] .section-data-price, .section.options .section-content[data-type=option] .section-data-price, .section.options .section-content[data-type=transfer] .section-data-price {
  position: relative
}

.section.options .section-content[data-type=dynamicOption] .section-data-price .price-from, .section.options .section-content[data-type=option] .section-data-price .price-from, .section.options .section-content[data-type=transfer] .section-data-price .price-from {
  display: inline
}

.section.options .section-content[data-type=dynamicOption] .section-data-price .price-off, .section.options .section-content[data-type=option] .section-data-price .price-off, .section.options .section-content[data-type=transfer] .section-data-price .price-off {
  display: block;
  color: #666;
  font-size: 12px;
  line-height: 1;
  font-weight: 400
}

@media only screen and (max-width: 767px) {
  .section.options .section-content[data-type=dynamicOption] .img-supp, .section.options .section-content[data-type=option] .img-supp, .section.options .section-content[data-type=transfer] .img-supp {
    grid-column: 1/-1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    width: calc(100% + 40px);
    margin-left: -20px;
    margin-right: -20px
  }
}

.BPStep-1 .section.options .section-title.subsection {
  display: none
}

.section.hybridInsuranceFlex .section-content {
  margin: 0;
  background-color: transparent
}

.section.voucher .section-title.subsection {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 10px;
  padding-bottom: 10px
}

.section.voucher .section-title.subsection:before {
  top: 12px
}

.section.voucher .section-content.voucher {
  padding-top: 10px;
  padding-bottom: 10px
}

.section.voucher .section-data {
  display: -webkit-flex;
  display: flex;
  padding-top: 10px
}

.section.voucher .section-data .section-data-checkbox {
  margin: 2px 5px 0 0;
  min-width: 15px
}

.section.voucher .section-data .section-data-checkbox input[type=checkbox] {
  width: 1.3em;
  height: 1.3em;
  border-radius: 50%
}

.section.voucher .section-data .section-data-text {
  width: 100%
}

.section.voucher .section-data .section-data-text .section-data-label {
  font-size: 16px
}

.section.voucher .section-data .section-data-text .section-data-label .section-data-price {
  float: right
}

.section.voucher .section-data .section-data-text .section-data-infos {
  display: block;
  position: relative
}

.section.voucher .section-data .section-data-text .section-data-infos .voucher_abondement_notice {
  background-color: #bd1343;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  border-radius: 2px;
  padding: 2px 4px;
  position: absolute;
  right: 0;
  cursor: inherit
}

.section.voucher .section-data .section-data-text .section-data-infos .voucher_abondement_notice i.icon {
  padding-right: 3px
}

.section.voucher .section-data .section-data-text .section-data-infos .subtitle {
  font-size: 12px;
  color: #2c2c2c
}

.section.voucher .section-data .section-data-text .section-data-infos .tooltip-contents {
  display: none
}

.section.voucher a {
  text-decoration: underline
}

.section.voucher .section-data.locked {
  color: #8a8a8a
}

.section.voucher .section-data.locked label {
  cursor: default
}

.section.termsAndConditions .section-content {
  background-color: transparent
}

@media only screen and (max-width: 767px) {
  .section .section-title.subsection + .section-content.options .section-data {
    padding-top: 0
  }
}

@media only screen and (max-width: 1024px) {
  .section.options .section-title + .section-title.subsection {
    margin-top: 20px
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .optionSixt .container .container__actions {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5
  }
}

@media only screen and (max-width: 767px) {
  .section .section-content.options .optionSixt .container .container__actions .delete-container .added {
    float: none
  }
}

.section .section-content.luggage, .section .section-title.luggage {
  display: none
}

.section #react-recapBP1 .section-title.subsection {
  background-color: #eee !important;
  padding: 0
}

.section #react-recapBP1 .section-title.subsection:before {
  content: none
}

.section #react-recapBP1 .Stay .Lodging__option .Lodging__distribution {
  padding-bottom: 13px
}

.section #react-recapBP1 .Stay .Lodging__option:before {
  background-color: #fff
}

.section #react-recapBP1 .Stay .Lodging .lodging-separator {
  border: none;
  border-bottom: 1px solid #eee
}

.section #react-recapBP1 .CardTransport:before {
  background-color: #fff
}

.section #react-recapBP1 .recap_insurance .section-content {
  margin-bottom: 10px
}

.section #react-recapBP1 .recap_insurance .Partnership.logo_mutuaide_recap {
  display: block;
  text-align: right;
  margin-top: 5%;
  width: 28%
}

.section #react-recapBP1 .recap_insurance .Partnership.logo_mutuaide_recap button {
  margin-top: 10px
}

.section #react-recapBP1 .section.options .section-content .section-data-text .section-subtitle {
  padding-top: 10px
}

.section #react-recapBP1 .section.options .section-content .Composition__img img {
  max-width: 150px
}

.section #react-recapBP1 .section.options .section-content .section-data.optionSkiset__composition {
  padding: 0;
  padding-top: 10px
}

.section #react-recapBP1 .section.options .section-content .section-data.optionSkiset__composition .Composition__title {
  margin-bottom: 5px
}

.section #react-recapBP1 .Ancillaries {
  background-color: #fff;
  border: none;
  border-top: 1px solid #d3d3d3
}

@media only screen and (max-width: 767px) {
  .section #react-recapBP1 .BoardType__infra {
    display: -webkit-flex;
    display: flex
  }

  .section #react-recapBP1 .BoardType__optionList {
    position: relative;
    left: 20%
  }

  .section #react-recapBP1 .BoardType__picto img {
    max-width: none
  }

  .section #react-recapBP1 .optionflex.recap_insurance .flex_description.selected {
    padding-bottom: 0
  }

  .section #react-recapBP1 .optionflex.recap_insurance .Partnership.logo_mutuaide_recap {
    position: relative;
    left: 39%
  }

  .section #react-recapBP1 .optionflex.recap_insurance .Partnership.logo_mutuaide_recap button {
    position: relative;
    left: 0 !important
  }

  .section #react-recapBP1 .section-content.options {
    padding: 2%
  }

  .section #react-recapBP1 .section-content.options .Composition__img {
    margin-bottom: 0
  }
}

.insurance h1 {
  padding-top: 20px
}

.insurance h1 img.logo-insurance {
  margin-top: -5px;
  float: right;
  height: 30px
}

.insurance .section-data .insurance_link {
  font-size: 1em;
  padding-top: 2px;
  text-decoration: underline;
  display: block
}

@media only screen and (min-width: 1025px) {
  .insurance .section-data .insurance_link {
    margin-right: 40px;
    display: inline
  }
}

@media only screen and (min-width: 1025px) {
  .insurance .section-data .insurance_link:last-child {
    margin-right: 0
  }
}

.Insurance.section-content {
  margin: 0 !important;
  padding: 0;
  background-color: transparent
}

.Insurance__notification {
  border-left: 4px solid #bd1343;
  background-color: #fff;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 15px 15px 17px;
  margin: 10px 0 0;
  color: #bd1343;
  font-size: 14px;
  font-weight: 700
}

@media only screen and (min-width: 768px) {
  .Insurance__notification {
    padding-right: 30px;
    display: inline-block
  }
}

.Insurance__notification .icon {
  font-size: 22px;
  margin-right: 12px;
  vertical-align: middle
}

.Insurance__notification span {
  vertical-align: middle
}

.Insurance__header {
  padding-top: 17px;
  padding-bottom: 9px
}

.Insurance__header h1 {
  color: #1d1d1d;
  font-size: 18px;
  font-weight: 700;
  padding-top: 0;
  padding-bottom: 0;
  position: relative
}

.Insurance__header h1:before {
  content: "";
  background-color: #bd1343;
  border-left: 4px solid #bd1343;
  height: 20px;
  width: 1px;
  vertical-align: sub;
  display: block;
  position: absolute;
  top: 2px;
  left: -20px
}

.Insurance__header h1 small {
  color: #666;
  font-size: 14px;
  font-weight: 400
}

.Insurance__header h1 img.logo-insurance {
  height: 48px
}

.Insurance__section {
  background-color: #fff;
  margin: 0;
  padding: 0 20px
}

.Insurance__section:last-child {
  margin-bottom: 2px;
  padding-bottom: 20px
}

.Insurance__list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column
}

@media only screen and (min-width: 768px) {
  .Insurance__list {
    -webkit-flex-direction: row;
    flex-direction: row
  }
}

@media only screen and (min-width: 768px) {
  .Insurance__list .InsuranceCard + .InsuranceCard {
    border-left: 0
  }
}

@media only screen and (max-width: 767px) {
  .Insurance__list .InsuranceCard + .InsuranceCard {
    border-top: 0
  }
}

.Insurance--hybrid .Insurance.section-content {
  background-color: transparent
}

.Insurance--hybrid .Insurance__section {
  padding: 0;
  background-color: transparent
}

.Insurance--hybrid .Insurance__section:not(.Insurance__section--table) .Partnership {
  margin-bottom: 20px
}

.Insurance--hybrid .Insurance__section .Insurance:last-child {
  margin-bottom: 0
}

.Insurance--hybrid .Insurance__notification {
  display: block;
  margin-bottom: 20px
}

.Insurance--hybrid .InsuranceCard--no-insurance {
  border-top: 1px solid #d3d3d3
}

.InsuranceCard {
  border: 1px solid #d3d3d3;
  -webkit-flex: 1;
  flex: 1;
  color: #666;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

.InsuranceCard--selected .InsuranceCard__label, .InsuranceCard--selected .InsuranceCard__label .icon {
  color: #1d1d1d
}

.InsuranceCard--selected.InsuranceCard--hasNotice.InsuranceCard--no-insurance {
  border-bottom: none
}

.InsuranceCard--no-insurance {
  border-top: 0
}

.InsuranceCard--no-insurance .InsuranceCard__header {
  padding-bottom: 0;
  border: 0
}

.InsuranceCard--no-insurance .InsuranceCard__body {
  padding-left: 62px;
  padding-top: 0;
  padding-bottom: 20px
}

.InsuranceCard--no-insurance .InsuranceCard__footer {
  display: none
}

.InsuranceCard__header {
  padding: 17px 20px 10px 10px
}

.InsuranceCard__label {
  font-size: 15px;
  font-weight: 700;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding-top: 3px
}

.InsuranceCard__label .icon {
  font-size: 24px;
  color: #666;
  margin-right: 8px
}

.InsuranceCard__input {
  margin-right: 4px
}

.InsuranceCard__price {
  white-space: nowrap;
  font-size: 16px;
  margin-left: auto;
  padding-left: 5px
}

.InsuranceCard__loading {
  margin-left: auto;
  max-width: none;
  -webkit-flex: 0 0 18px;
  flex: 0 0 18px
}

.InsuranceCard__loading img {
  width: 18px;
  height: 18px;
  margin: 0
}

.InsuranceCard__body {
  padding: 0 11px 0 10px;
  margin-bottom: auto
}

.InsuranceCard__body p > ul > li {
  margin: 8px 0;
  padding-left: 30px;
  position: relative
}

.InsuranceCard__body p > ul > li:before {
  font-family: VP-Icon-Line;
  font-size: 16px;
  content: "\E916";
  left: 0;
  top: 1px;
  position: absolute
}

.InsuranceCard__body p > ul > li ul li:before {
  content: "-";
  padding-right: 5px
}

.InsuranceCard__footer {
  text-align: center;
  padding-bottom: 10px
}

.InsuranceCard__footer__link {
  font-weight: 700
}

.InsuranceCard--postsell {
  border: 0;
  padding-top: 5px;
  margin-top: 15px;
  position: relative
}

@media only screen and (min-width: 1025px) {
  .InsuranceCard--postsell {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center
  }
}

.InsuranceCard--postsell .InsuranceCard__title {
  color: #1d1d1d;
  font-size: 18px;
  line-height: 20px;
  font-weight: 700;
  margin-bottom: 10px
}

@media only screen and (min-width: 768px) {
  .InsuranceCard--postsell .InsuranceCard__title {
    -webkit-order: -1;
    order: -1;
    width: 100%
  }
}

.InsuranceCard--postsell .InsuranceCard__logo {
  text-align: center;
  margin-bottom: 18px
}

@media only screen and (min-width: 1025px) {
  .InsuranceCard--postsell .InsuranceCard__logo {
    -webkit-flex: 0 1 160px;
    flex: 0 1 160px
  }
}

.InsuranceCard--postsell .InsuranceCard__logo .logo-insurance {
  width: 180px
}

.InsuranceCard--postsell .InsuranceCard__name {
  color: #666;
  font-size: 14px;
  line-height: 18px;
  font-weight: 700;
  margin-bottom: 10px
}

.InsuranceCard--postsell .InsuranceCard__name .icon {
  font-weight: 400;
  font-size: 32px;
  vertical-align: middle;
  margin-top: -3px;
  margin-right: 8px;
  margin-left: -4px
}

.InsuranceCard--postsell .InsuranceCard__body {
  padding: 0 4px;
  margin-top: 15px;
  margin-bottom: 18px
}

@media only screen and (min-width: 1025px) {
  .InsuranceCard--postsell .InsuranceCard__body {
    border-left: 1px solid #d3d3d3;
    padding-left: 20px;
    margin-right: auto
  }
}

.InsuranceCard--postsell .InsuranceCard__body li .icon {
  color: #bd1343
}

.InsuranceCard--postsell .InsuranceCard__footer {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  padding-left: 10px;
  padding-bottom: 10px
}

@media only screen and (min-width: 1025px) {
  .InsuranceCard--postsell .InsuranceCard__footer {
    -webkit-align-self: flex-end;
    align-self: flex-end;
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.InsuranceCard--postsell .InsuranceCard__footer .added {
  white-space: nowrap
}

.InsuranceCard--postsell .InsuranceCard__footer .added .check-mark {
  margin: 0 10px 0 0;
  color: #1d1d1d;
  border: 2px solid #1d1d1d;
  background: none;
  padding: 4px 5px 1px;
  border-radius: 50%;
  display: inline-block
}

.InsuranceCard--postsell .InsuranceCard__loading, .InsuranceCard--postsell .InsuranceCard__price {
  font-size: 16px;
  font-weight: 700;
  color: #666;
  line-height: 20px
}

@media only screen and (min-width: 1025px) {
  .InsuranceCard--postsell .InsuranceCard__loading, .InsuranceCard--postsell .InsuranceCard__price {
    position: absolute;
    right: 0;
    top: 0
  }
}

.InsuranceCard--postsell .Button--ctaPopin {
  text-align: left;
  margin-left: 15px;
  color: #666;
  text-decoration: underline;
  font-weight: 700
}

.InsuranceCard--postsell .Button--dark {
  background-color: #1d1d1d;
  font-weight: 400;
  width: auto
}

.InsuranceNotice {
  background-color: #f8f8f8;
  padding: 20px;
  border: 1px solid #d3d3d3;
  border-top: none
}

.InsuranceNotice--hybrid {
  position: relative;
  background-color: #fff;
  border: 0
}

@media only screen and (min-width: 1025px) {
  .InsuranceNotice--hybrid {
    padding-left: 68px
  }
}

@media only screen and (max-width: 767px) {
  .InsuranceNotice--hybrid {
    margin-top: 20px
  }
}

.InsuranceNotice__header {
  margin-bottom: 10px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

@media only screen and (min-width: 1025px) {
  .InsuranceNotice__header {
    margin-bottom: 5px
  }
}

.InsuranceNotice__header i {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  padding-right: 5px;
  font-size: 32px;
  color: #bd1343
}

@media only screen and (min-width: 1025px) {
  .InsuranceNotice__header i {
    padding-right: 0;
    position: absolute;
    top: 50%;
    left: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }
}

.InsuranceNotice__header .InsuranceNotice__title {
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 18px;
  font-style: italic;
  line-height: 21px
}

.InsuranceNotice .Content {
  font-size: 14px;
  line-height: 18px
}

.InsuranceNotice .Content__title {
  font-weight: 700;
  color: #666
}

.InsuranceNotice .notice-head {
  margin-bottom: 10px
}

.InsuranceNotice .notice-title {
  font-size: 16px;
  font-weight: 700
}

.InsuranceNotice .notice-content li {
  margin: 10px 0 0
}

.InsuranceNotice .notice-content .font-bold {
  font-weight: 700;
  display: block;
  color: #666
}

.InsuranceNotice .notice-content .notice-infos {
  display: block
}

@media only screen and (min-width: 1025px) {
  .modal--insurance.modal-dialog {
    max-width: 980px
  }
}

@media only screen and (min-width: 1025px) {
  .modal--insurance .modal-body {
    padding: 40px
  }
}

@media only screen and (max-width: 1024px) {
  .InsuranceModal__header {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
    padding-bottom: 20px
  }
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal__header {
    display: table;
    table-layout: fixed;
    width: 100%
  }
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal__header > div {
    display: table-cell;
    width: 33.33%;
    padding: 30px 40px;
    vertical-align: middle
  }
}

.InsuranceModal__header .InsuranceModal__company-name {
  padding-left: 0;
  padding-top: 0;
  padding-bottom: 0;
  vertical-align: top
}

.InsuranceModal__company-name {
  padding-left: 0;
  padding-top: 0;
  padding-bottom: 0
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal__company-name {
    border-right: 1px solid #eee
  }
}

.InsuranceModal__company-name__logo {
  margin-bottom: 25px;
  width: 200px
}

@media only screen and (min-width: 768px) {
  .InsuranceModal__company-name__logo {
    width: 180px
  }
}

.InsuranceModal__company-name p, .InsuranceModal__company-name span {
  color: #1d1d1d
}

.InsuranceModal__company-name p span {
  font-style: italic;
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 22px
}

.InsuranceModal__option-title {
  font-family: Source Sans Pro, sans-serif;
  font-size: 16px;
  color: #1d1d1d;
  text-align: center
}

@media only screen and (max-width: 767px) {
  .InsuranceModal__option-title {
    width: 100%;
    padding: 15px 10px 0;
    border-top: 1px solid #eee;
    border-left: 1px solid #eee;
    border-right: 1px solid #eee
  }
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal__option-title {
    border-top: 1px solid #eee;
    border-right: 1px solid #eee
  }
}

.InsuranceModal__option-title .icon {
  display: block;
  font-size: 48px;
  margin-bottom: 6px
}

.InsuranceModal__option-title__name {
  font-weight: 600;
  display: block;
  margin-bottom: 18px
}

.InsuranceModal__option-title__link {
  display: block;
  margin: 14px auto 12px;
  padding: 0;
  font-weight: 400
}

.InsuranceModal__main .row {
  color: #666
}

.InsuranceModal__main .row--head {
  color: #1d1d1d;
  font-weight: 700;
  background-color: #eee
}

.InsuranceModal__main .row--head .cell {
  padding: 9px
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal__main .row--head .cell {
    padding-left: 20px;
    padding-right: 20px
  }
}

.InsuranceModal__main .row--base {
  display: table;
  table-layout: fixed;
  width: 100%;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee
}

.InsuranceModal__main .row--base + .row--base {
  border-top: 1px solid #eee
}

.InsuranceModal__main .row--base .cell {
  display: table-cell;
  width: 33.33%;
  text-align: center;
  padding: 10px;
  border-left: 1px solid #eee
}

.InsuranceModal__main .row--base .cell:first-child {
  border-left: none;
  text-align: left;
  color: #8a8a8a
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal__main .row--base .cell:first-child {
    padding-left: 40px
  }
}

.InsuranceModal__main .row--base .cell:first-child strong {
  font-weight: 700
}

.InsuranceModal__main .row--base:last-child {
  border-bottom: 1px solid #eee
}

.InsuranceModal__main .row--base i {
  font-size: 12px
}

.InsuranceModal__main .cell {
  display: table-cell
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal__footer {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal--items-1 .InsuranceModal__footer .InsuranceModal__option-title {
    -webkit-flex: 0 0 50%;
    flex: 0 0 50%
  }
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal--items-2 .InsuranceModal__footer .InsuranceModal__option-title {
    -webkit-flex: 0 0 299px;
    flex: 0 0 299px
  }
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal--items-2 .InsuranceModal__footer .InsuranceModal__option-title:last-child {
    border-left: 0
  }
}

.InsuranceModal__footer .InsuranceModal__option-title {
  padding: 20px
}

@media only screen and (max-width: 1024px) {
  .InsuranceModal__footer .InsuranceModal__option-title {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse
  }
}

@media only screen and (min-width: 1025px) {
  .InsuranceModal__footer .InsuranceModal__option-title {
    border-bottom: 1px solid #eee;
    border-left: 1px solid #eee;
    border-top: 0
  }
}

.HybridInsuranceCard {
  margin-bottom: 10px;
  border-top: 3px solid transparent
}

.HybridInsuranceCard:not(.HybridInsuranceCard--no-insurance) {
  background: #fff
}

.HybridInsuranceCard:not(.HybridInsuranceCard--no-insurance).HybridInsuranceCard--selected {
  border-top-color: #bd1343
}

.HybridInsuranceCard--no-insurance {
  margin-bottom: 0;
  min-width: 200px !important;
  border: 1px solid #d3d3d3
}

.HybridInsuranceCard--no-insurance.HybridInsuranceCard--selected {
  background-color: #fff;
  border-color: transparent
}

.HybridInsuranceCard--no-insurance .HybridInsuranceCard__header {
  padding: 10px 20px
}

@media only screen and (min-width: 1025px) {
  .HybridInsuranceCard--no-insurance .HybridInsuranceCard__header {
    padding: 10px
  }
}

.HybridInsuranceCard--no-insurance .HybridInsuranceCard__header .HybridInsuranceCard__name {
  padding-left: 20px;
  line-height: 18px;
  text-transform: none
}

.HybridInsuranceCard--no-insurance .HybridInsuranceCard__body, .HybridInsuranceCard--no-insurance .HybridInsuranceCard__footer {
  display: none
}

.HybridInsuranceCard__header {
  padding: 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

.HybridInsuranceCard__header i {
  padding-left: 10px;
  font-size: 32px;
  color: #bd1343
}

.HybridInsuranceCard__header .HybridInsuranceCard__name {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  padding-left: 10px;
  font-size: 14px;
  font-weight: 700;
  line-height: 14px;
  text-transform: uppercase
}

.HybridInsuranceCard__header .HybridInsuranceCard__description {
  font-size: 12px;
  font-weight: 400;
  line-height: 15px
}

.HybridInsuranceCard__header .HybridInsuranceCard__insurancePrice {
  margin-left: auto;
  font-size: 18px;
  font-weight: 700;
  line-height: 23px
}

.HybridInsuranceCard__header .Loader {
  margin-left: auto;
  width: auto
}

.HybridInsuranceCard__body {
  padding: 0 20px
}

.HybridInsuranceCard__body .HybridInsuranceCard__guarantee {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  color: #666
}

.HybridInsuranceCard__body .HybridInsuranceCard__guarantee:before {
  content: "\E916";
  display: inline-block;
  padding-right: 20px;
  font-family: VP-Icon-Line;
  font-size: 24px;
  line-height: 25px;
  color: #666
}

.HybridInsuranceCard__body .HybridInsuranceCard__catName {
  padding-left: 44px;
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 25px;
  color: #bd1343
}

.HybridInsuranceCard__body .HybridInsuranceCard__name {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  line-height: 25px
}

.HybridInsuranceCard__body .HybridInsuranceCard__description {
  font-size: 12px;
  font-weight: 400;
  line-height: 15px;
  color: #1d1d1d
}

.HybridInsuranceCard__footer {
  padding: 0 20px 20px;
  text-align: right
}

.HybridInsuranceCard__footer .HybridInsuranceCard__link {
  font-family: Source Sans Pro, sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 15px;
  text-decoration: underline;
  color: #666
}

.InsuranceTable {
  margin-bottom: 20px;
  width: 100%;
  border: 0
}

.InsuranceTable thead th {
  position: relative
}

.InsuranceTable thead th:not(:first-child) {
  width: 130px;
  max-width: 130px;
  text-align: center;
  background-color: #fff;
  cursor: pointer
}

@-moz-document url-prefix() {
  .InsuranceTable thead th:not(:first-child) {
    background-clip: padding-box
  }
}

.InsuranceTable thead th:not(:first-child) i {
  font-size: 32px;
  line-height: 32px;
  color: #bd1343
}

.InsuranceTable thead th:not(:last-child) {
  border-right: 2px solid #eee
}

.InsuranceTable thead th:not(:first-child):not(:last-child) {
  border-right-width: 1px
}

.InsuranceTable thead th:before {
  content: "";
  display: block;
  height: 3px;
  background-color: transparent
}

.InsuranceTable thead th.InsuranceTable--selected:before {
  background-color: #bd1343
}

.InsuranceTable thead .InsuranceTable__insurancePicture {
  margin: 14px auto 4px
}

.InsuranceTable thead .InsuranceTable__insuranceName {
  padding: 0 5px;
  font-size: 14px;
  font-weight: 700;
  line-height: 16px;
  text-align: center;
  text-transform: uppercase;
  color: #1d1d1d;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto
}

.InsuranceTable tr:not(.InsuranceTable__noInsurance) td {
  vertical-align: top
}

.InsuranceTable tr:not(.InsuranceTable__noInsurance) td:not(:first-child) {
  width: 130px;
  max-width: 130px;
  text-align: center;
  background-color: #fff;
  cursor: pointer
}

@-moz-document url-prefix() {
  .InsuranceTable tr:not(.InsuranceTable__noInsurance) td:not(:first-child) {
    background-clip: padding-box
  }
}

.InsuranceTable tr:not(.InsuranceTable__noInsurance) td:not(:first-child) i {
  font-size: 32px;
  line-height: 32px;
  color: #666
}

.InsuranceTable tr:not(.InsuranceTable__noInsurance) td:not(:last-child) {
  border-right: 2px solid #eee
}

.InsuranceTable tr:not(.InsuranceTable__noInsurance) td:not(:first-child):not(:last-child) {
  border-right-width: 1px
}

.InsuranceTable tr .InsuranceTable__label {
  display: block;
  text-align: center
}

.InsuranceTable tr .InsuranceTable__label > input {
  margin-bottom: 10px
}

.InsuranceTable tr .InsuranceTable__insurancePrice {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 700;
  line-height: 23px;
  text-align: center;
  color: #1d1d1d
}

.InsuranceTable tr .InsuranceTable__loading {
  margin-bottom: 10px
}

.InsuranceTable__guarantee {
  background-color: #f8f8f8
}

.InsuranceTable__guarantee td label {
  display: block;
  padding: 13px 0;
  min-height: 32px;
  -moz-box-sizing: content-box;
  box-sizing: content-box
}

.InsuranceTable__guarantee:last-child .Guarantee:not(.Guarantee--expand) {
  padding-bottom: 10px
}

.InsuranceTable__guarantee.InsuranceTable__guarantee--is-covid {
  background-color: #fff
}

.InsuranceTable__guarantee.InsuranceTable__guarantee--is-covid td:not(:first-child) {
  vertical-align: middle
}

.InsuranceTable .InsuranceTable__prices td:first-child {
  vertical-align: bottom
}

.InsuranceTable .InsuranceTable__prices td:first-child .Partnership {
  padding-right: 10px;
  -webkit-justify-content: flex-end;
  justify-content: flex-end
}

.InsuranceTable__noInsurance td {
  padding-top: 10px
}

.CatName {
  padding: 10px 0 5px 20px;
  display: block;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  text-transform: uppercase;
  color: #bd1343;
  background-color: #fff
}

.Guarantee {
  padding: 0 20px
}

.Guarantee__name {
  position: relative;
  display: block;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px
}

.Guarantee__description {
  font-size: 12px;
  font-weight: 400;
  line-height: 15px
}

.Guarantee:not(.Guarantee--expand) .Guarantee__name {
  margin-top: 5px
}

.Guarantee:not(.Guarantee--expand) .Guarantee__description {
  margin-bottom: 5px
}

.Guarantee--expand {
  padding: 0;
  border-bottom: 2px solid #eee
}

.Guarantee--expand .Guarantee__name {
  padding: 0 20px 0 10px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  height: 60px;
  color: #666;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none
}

.Guarantee--expand .Guarantee__name i {
  -webkit-flex: 0 0 24px;
  flex: 0 0 24px;
  margin: 5px 10px 5px 0;
  font-size: 24px;
  line-height: 25px;
  height: 25px;
  color: #666
}

.Guarantee--expand .Guarantee__name div {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto
}

.Guarantee--expand .Guarantee__description {
  padding: 10px 20px;
  background-color: #f8f8f8
}

.Link {
  margin-bottom: 10px;
  padding: 0 10px;
  font-family: Source Sans Pro, sans-serif;
  font-size: 10px;
  font-weight: 400;
  text-align: center;
  text-decoration: underline;
  line-height: 13px;
  color: #666;
  width: 100%;
  place-content: center
}

.Link, .Partnership {
  display: -webkit-flex;
  display: flex
}

.Partnership {
  -webkit-align-items: center;
  align-items: center
}

@media only screen and (max-width: 767px) {
  .Partnership {
    margin-bottom: 20px
  }
}

.Partnership__picture {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  margin-right: 15px;
  width: auto;
  max-height: 48px
}

.Partnership__title {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  font-family: Source Sans Pro, sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px
}

.Partnership__button {
  padding: 0;
  margin: 0
}

.optionflex .section-content {
  display: -webkit-flex;
  display: flex;
  padding: 0
}

@media only screen and (max-width: 767px) {
  .optionflex .section-content {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.optionflex .logo_flex {
  padding: 20px;
  background-color: #f5f5f5;
  min-width: 90px;
  text-align: center
}

@media only screen and (min-width: 768px) {
  .optionflex .logo_flex {
    padding: 55px 20px 0;
    -webkit-flex-shrink: 0;
    flex-shrink: 0
  }
}

.optionflex .logo_flex img {
  max-height: 50px
}

.optionflex .logo_flex i.icon {
  font-size: 40px;
  line-height: 50px;
  color: #bd1343
}

.optionflex .flex_description {
  padding: 20px;
  -webkit-flex-grow: 1;
  flex-grow: 1
}

@media only screen and (max-width: 767px) {
  .optionflex .flex_description {
    padding: 10px
  }
}

.optionflex .flex_description input.optionflex, .optionflex .flex_description input.optionto {
  display: none
}

.optionflex .flex_description label {
  color: #1d1d1d;
  font-family: Source Sans Pro, sans-serif;
  font-size: 18px;
  margin-bottom: 10px
}

.optionflex .flex_description .price {
  float: right;
  font-size: 16px;
  font-weight: 600;
  color: #555
}

.optionflex .flex_description .price.included {
  color: #bd1343 !important
}

.optionflex .flex_description .loading {
  float: right
}

.optionflex .flex_description ul {
  margin-top: 10px
}

.optionflex .flex_description ul li {
  padding-bottom: 5px
}

.optionflex .flex_description ul li:before {
  content: "\E916";
  font-family: VP-Icon-Line !important;
  font-size: 21px;
  display: inline-block;
  width: 1.3em;
  color: #bd1343;
  vertical-align: bottom
}

.optionflex .flex_description button.add {
  float: right !important;
  font-size: 14px
}

@media only screen and (max-width: 767px) {
  .optionflex .flex_description button.add {
    padding: 8px 40px;
    margin-top: 10px;
    width: auto
  }
}

@media only screen and (min-width: 768px) {
  .optionflex .flex_description button.add {
    margin: 10px -10px -10px 0
  }
}

@media only screen and (min-width: 768px) {
  .optionflex .flex_description button.delete {
    float: right;
    background: none;
    color: #1d1d1d;
    font-size: 13px;
    text-decoration: underline;
    padding: 0;
    min-width: unset
  }
}

@media only screen and (max-width: 767px) {
  .optionflex .flex_description button.delete {
    float: left;
    padding: 8px 30px;
    text-decoration: none;
    background: #e6e6e6;
    color: #1d1d1d;
    margin: -30px 0 0;
    font-size: 14px
  }
}

.optionflex .flex_description .is-added {
  text-align: right;
  display: block;
  color: #1d1d1d
}

@media only screen and (min-width: 768px) {
  .optionflex .flex_description .is-added {
    margin: 10px 0
  }
}

@media only screen and (max-width: 767px) {
  .optionflex .flex_description .is-added {
    margin: 10px 0;
    font-size: 16px;
    font-weight: 600
  }
}

.optionflex .flex_description .is-added .check-mark {
  margin: 0 10px 0 0;
  color: #1d1d1d;
  border: 2px solid #1d1d1d;
  background: none;
  padding: 4px 5px 1px;
  border-radius: 50%;
  font-size: 13px
}

.optionflex .flex_description button.more-details {
  font-size: 14px;
  margin-top: 20px
}

@media only screen and (max-width: 767px) {
  .optionflex .flex_description button.more-details {
    margin-top: 15px
  }
}

.optionflex .flex_description button.more-details i {
  color: #1d1d1d;
  text-decoration: none;
  margin-right: 5px
}

.optionflex .flex_description button.more-details .details {
  color: #666;
  text-decoration: underline
}

@media only screen and (min-width: 768px) {
  .optionflex .flex_description button.more-details + p {
    padding-top: 20px
  }
}

@media only screen and (max-width: 767px) {
  .optionflex .flex_description button.more-details + p {
    margin-top: 10px
  }
}

@media only screen and (max-width: 767px) {
  .optionflex .flex_description.selected {
    position: relative;
    padding: 20px
  }
}

@media only screen and (min-width: 768px) {
  .optionflex .flex_description.selected .more-details {
    margin-top: -2px
  }
}

@media only screen and (max-width: 767px) {
  .optionflex .flex_description.selected .isAdded-bloc {
    position: absolute;
    width: calc(100% - 20px);
    bottom: 10px
  }

  .optionflex .flex_description.selected .isAdded-bloc .delete {
    margin: 0
  }

  .optionflex .flex_description.selected .isAdded-bloc .is-added {
    float: right;
    margin: 5px 0
  }
}

.optionflex.recap_insurance .logo_flex {
  background-color: #fff
}

.optionflex.recap_insurance .flex_description ul li:before {
  color: #000
}

.optionflex.recap_insurance .flex_description ul li span {
  color: #000 !important;
  font-weight: 400
}

.optionflex.recap_insurance .flex_description ul li {
  line-height: 15px
}

.optionflex .flexCGVLink {
  text-decoration: none;
  color: #bd1343;
  position: relative;
  left: 190px
}

.optionto .section-content {
  display: -webkit-flex;
  display: flex;
  padding: 0
}

@media only screen and (max-width: 767px) {
  .optionto .section-content {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.optionto .logo_optionto {
  padding: 20px;
  background-color: #f5f5f5;
  min-width: 90px;
  text-align: center
}

@media only screen and (min-width: 768px) {
  .optionto .logo_optionto {
    padding: 36px 20px 0;
    -webkit-flex-shrink: 0;
    flex-shrink: 0
  }
}

.optionto .logo_optionto i.icon {
  font-size: 44px;
  color: #bd1343
}

.optionto .optionto_description {
  padding: 20px;
  -webkit-flex-grow: 1;
  flex-grow: 1
}

@media only screen and (max-width: 767px) {
  .optionto .optionto_description {
    padding: 10px
  }
}

.optionto .optionto_description label {
  color: #1d1d1d;
  font-family: Source Sans Pro, sans-serif;
  font-size: 18px;
  margin-bottom: 10px
}

.optionto .optionto_description .loading {
  float: right
}

.optionto .optionto_description ul {
  margin-top: 10px
}

.optionto .optionto_description ul li {
  padding-bottom: 5px
}

.optionto .optionto_description ul li:before {
  content: "\E916";
  font-family: VP-Icon-Line !important;
  font-size: 21px;
  display: inline-block;
  width: 1.3em;
  color: #bd1343;
  vertical-align: bottom
}

.optionto .optionto_description button.more-details {
  font-size: 14px;
  margin-top: 20px
}

@media only screen and (max-width: 767px) {
  .optionto .optionto_description button.more-details {
    margin-top: 15px
  }
}

.optionto .optionto_description button.more-details i {
  color: #1d1d1d;
  text-decoration: none;
  margin-right: 5px
}

.optionto .optionto_description button.more-details .details {
  color: #666;
  text-decoration: underline
}

@media only screen and (min-width: 768px) {
  .optionto .optionto_description button.more-details + p {
    padding-top: 20px
  }
}

@media only screen and (max-width: 767px) {
  .optionto .optionto_description button.more-details + p {
    margin-top: 10px
  }
}

.Donation {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column
}

@media only screen and (min-width: 768px) {
  .Donation {
    -webkit-flex-direction: row;
    flex-direction: row
  }
}

.Donation__header {
  -webkit-order: 1;
  order: 1;
  background-color: #fff;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

@media only screen and (min-width: 768px) {
  .Donation__header {
    -webkit-order: 2;
    order: 2;
    min-width: 130px
  }
}

.Donation__header img {
  width: 130px;
  max-width: inherit;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  margin: 0 auto
}

.Donation__body {
  -webkit-order: 2;
  order: 2;
  background-color: #f8f8f8;
  padding: 20px
}

@media only screen and (min-width: 768px) {
  .Donation__body {
    -webkit-order: 1;
    order: 1
  }
}

.Donation__label {
  font-size: 16px;
  font-weight: 700
}

.Donation__input {
  margin-right: 5px
}

.Donation__description {
  margin-left: 25px
}

.Donation__description p {
  margin: 5px 0
}

.Donation__link {
  font-size: 12px
}

@media only screen and (min-width: 1025px) {
  .DonationModal {
    max-width: 960px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .DonationModal .modal-content {
    max-width: 600px
  }
}

@media only screen and (min-width: 1025px) {
  .DonationModal .modal-content {
    width: 960px
  }
}

@media only screen and (min-width: 1025px) {
  .DonationModal .modal-body {
    padding: 0
  }
}

.DonationModal__container {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column
}

@media only screen and (min-width: 1025px) {
  .DonationModal__container {
    -webkit-flex-direction: row;
    flex-direction: row;
    position: relative
  }
}

@media only screen and (min-width: 1025px) {
  .DonationModal__ecoledesxv {
    width: 540px
  }
}

.DonationModal__project {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

@media only screen and (min-width: 1025px) {
  .DonationModal__project {
    width: 420px;
    padding: 40px
  }
}

.DonationModal__header {
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 22px;
  font-style: italic;
  text-align: center;
  margin: 0 25px
}

@media only screen and (min-width: 1025px) {
  .DonationModal__header {
    font-size: 32px;
    text-align: left;
    margin: 0
  }
}

.DonationModal__header:after {
  content: "";
  height: 3px;
  width: 33px;
  background-color: #bd1343;
  display: block;
  margin: 15px auto 20px
}

@media only screen and (min-width: 1025px) {
  .DonationModal__header:after {
    width: 20px;
    margin: 20px 0 15px
  }
}

.DonationModal__image {
  max-width: calc(100% + 40px);
  width: calc(100% + 40px);
  margin: 0 -20px
}

.DonationModal__description h2 {
  font-size: 16px;
  font-weight: 700;
  margin: 20px 0 12px
}

.DonationModal__info {
  display: -webkit-flex;
  display: flex;
  margin: 20px 0 22px
}

.DonationModal__info p {
  font-size: 12px;
  margin-left: 8px
}

.DonationModal__icon {
  color: #bd1343;
  font-size: 24px
}

.DonationModal__button {
  width: 100%
}

.DonationModal__association {
  background-color: #f8f8f8;
  padding: 10px;
  margin: 22px 0 20px
}

@media only screen and (min-width: 1025px) {
  .DonationModal__association {
    position: absolute;
    bottom: 0;
    left: 20px;
    width: 290px;
    height: 243px;
    padding: 15px 20px
  }
}

.DonationModal__association h2 {
  color: #666;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase
}

.DonationModal__association p {
  font-size: 12px;
  margin: 5px 0 10px
}

.DonationModal__association h3 {
  color: #666;
  font-size: 12px;
  font-weight: 700
}

.DonationModal__association ul {
  list-style: inside;
  color: #bd1343
}

.DonationModal__association ul li {
  margin: 3px 0
}

.DonationModal__association ul span {
  color: #1d1d1d;
  font-size: 12px;
  font-weight: 700;
  line-height: 15px
}

.flight-choices .loader .noticeWait {
  margin-top: 5px
}

.notification .during-loading .loader {
  position: absolute;
  left: 0;
  top: 0;
  right: 0
}

.loader-linear {
  height: 4px;
  width: 100%;
  background-color: #e6e6e6;
  position: relative
}

.loader-linear:after {
  content: "";
  position: absolute;
  left: 0;
  background-color: #bd1343;
  height: 4px;
  width: 100%;
  -webkit-animation: anim-linear 20s linear infinite;
  animation: anim-linear 20s linear infinite;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0
}

@-webkit-keyframes anim-linear {
  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }

  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
  }
}

@keyframes anim-linear {
  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }

  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
  }
}

#priceUpdateMessage .loadSession {
  background-color: #f8f8f8;
  text-align: center;
  padding: 22px 20px 30px
}

#priceUpdateMessage .loadSession .subtitle {
  display: block;
  margin-top: 15px;
  font-size: 16px;
  color: #666
}

.dynamicOption .loadSession, .transfer .loadSession {
  padding: 20px;
  text-align: center
}

.dynamicOption .loadSession {
  padding-bottom: 0
}

.notification {
  width: 100%;
  background-color: #fff;
  border-bottom: 1px solid #d3d3d3;
  color: #1d1d1d;
  text-align: center;
  padding: 20px 10px 22px;
  line-height: 1;
  position: absolute;
  top: 109px;
  left: 0;
  z-index: 100
}

@media only screen and (max-width: 767px) {
  .notification {
    top: 49px
  }
}

@media only screen and (max-width: 375px) and (orientation: portrait) {
  .notification {
    padding: 9px 20px
  }
}

.notification.show {
  visibility: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  transition: -webkit-transform .3s cubic-bezier(.22, .61, .36, 1);
  transition: transform .3s cubic-bezier(.22, .61, .36, 1);
  transition: transform .3s cubic-bezier(.22, .61, .36, 1), -webkit-transform .3s cubic-bezier(.22, .61, .36, 1)
}

.notification.closed {
  visibility: hidden
}

.notification.isFixed {
  top: 0;
  position: fixed
}

.notification .loader-linear:after {
  height: 3px
}

.notification span {
  display: block;
  font-size: 16px;
  line-height: 20px
}

.section.total {
  background: none !important
}

@media only screen and (max-width: 767px) {
  .section.total {
    margin-bottom: 40px
  }
}

.section.total .section-content.price {
  padding: 20px !important;
  border: 1px solid #bd1343;
  border-radius: 2px;
  background: none !important
}

.section.total .sub-section-data {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.section.total .section-data-text {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto
}

.section.total .section-data-text .font-bold {
  color: #bd1343;
  font-weight: 700;
  font-size: 18px
}

.section.total .section-data-text .font-unbold {
  font-weight: 400
}

.section.total .notice-price {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.section.total .notice-price .notice-price-separator {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 1px;
  width: 600px;
  border-top: 1px dashed #afafaf;
  border-bottom: none
}

@media only screen and (max-width: 767px) {
  .section.total .notice-price .notice-price-separator {
    border-top: 1px solid #d3d3d3
  }
}

.section.total .notice-price .notice-price-container {
  -webkit-flex: 1;
  flex: 1;
  -webkit-flex-direction: column;
  flex-direction: column
}

.section.total .notice-price .notice-price-container .top-part {
  display: -webkit-flex;
  display: flex
}

@media only screen and (min-width: 400px) and (max-width: 830px) {
  .section.total .notice-price .notice-price-container .top-part .first-sentence {
    margin-right: 50px
  }
}

.section.total .notice-price .notice-price-container .top-part i {
  margin-right: 10px;
  width: 35px;
  color: #bd1343;
  font-size: 35px
}

.section.total .notice-price .notice-price-container .top-part .font-bold {
  font-weight: 700
}

@media only screen and (max-width: 767px) {
  .section.total .notice-price .notice-price-container .top-part {
    padding: 0 10px 10px 0
  }
}

.section.total .notice-price .notice-price-container .bottom-part {
  display: -webkit-flex;
  display: flex;
  padding-left: 45px;
  margin-top: -18px
}

@media only screen and (max-width: 767px) {
  .section.total .notice-price .notice-price-container .bottom-part .second-sentence {
    padding-right: 10px
  }
}

@media only screen and (min-width: 400px) and (max-width: 830px) {
  .section.total .notice-price .notice-price-container .bottom-part .second-sentence {
    padding-right: 50px
  }
}

@media only screen and (max-width: 767px) {
  .section.total .notice-price .notice-price-container .bottom-part {
    display: -webkit-flex;
    display: flex;
    margin-bottom: -10px;
    padding: 10px 10px 0 0
  }
}

@media only screen and (min-width: 550px) and (max-width: 740px) and (orientation: landscape) {
  .section.total .notice-price .notice-price-container .bottom-part {
    margin-top: -35px;
    padding-left: 45px
  }
}

.section.total .notice-price .notice-price-container .bottom-part .notice-price-installment {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex: 1 0 auto;
  flex: 1 0 auto;
  text-align: right;
  margin-top: -18px
}

@media only screen and (max-width: 767px) {
  .section.total .notice-price .notice-price-container .bottom-part .notice-price-installment {
    margin: 0 -10px 0 0
  }
}

@media only screen and (min-width: 750px) and (max-width: 1100px) {
  .section.total .notice-price .notice-price-container .bottom-part .notice-price-installment {
    margin-top: 0
  }
}

@media only screen and (min-width: 550px) and (max-width: 740px) and (orientation: landscape) {
  .section.total .notice-price .notice-price-container .bottom-part .notice-price-installment {
    margin-top: -20px
  }
}

.section.total .notice-price .notice-price-container .bottom-part .notice-price-installment .amountToPay {
  height: 23px;
  color: #666;
  font-size: 18px;
  font-weight: 700;
  line-height: 23px;
  text-align: right;
  margin: 7px 0
}

@media only screen and (max-width: 767px) {
  .section.total .notice-price .notice-price-container .bottom-part .notice-price-installment .amountToPay {
    line-height: normal;
    margin: 12px 0 0
  }
}

@media only screen and (min-width: 750px) and (max-width: 1100px) {
  .section.total .notice-price .notice-price-container .bottom-part .notice-price-installment .amountToPay {
    padding-top: 7px
  }
}

@media only screen and (min-width: 550px) and (max-width: 740px) and (orientation: landscape) {
  .section.total .notice-price .notice-price-container .bottom-part .notice-price-installment .amountToPay {
    margin-top: 7px
  }
}

.section.total .sub-section-data.advance-price .section-data-text {
  width: 100%
}

.section.total .section-data-price {
  -webkit-flex: 1 0 auto;
  flex: 1 0 auto;
  text-align: right
}

.section.total .section-data-price .price {
  font-size: 18px;
  color: #bd1343;
  font-weight: 700
}

.section.total .section-data-price .price-insteadof {
  display: block;
  font-family: Source Sans Pro, sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #666
}

.section.total .section-data-price .price-insteadof .price-insteadof-price {
  display: inline-block;
  text-decoration: line-through;
  color: #1d1d1d
}

.section.total .cgv-container {
  margin-top: 5px
}

.section.total .advance-price-hidden {
  display: none !important
}

.section.total .advance-price {
  border-top: 1px solid #d3d3d3;
  padding-top: 10px;
  margin-top: 10px;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap
}

@media only screen and (max-width: 767px) {
  .section.total .advance-price {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse
  }
}

.section.total .advance-price .font-bold {
  text-transform: none;
  font-size: 14px
}

@media only screen and (max-width: 767px) {
  .section.total .advance-price .font-bold {
    padding-right: 70px;
    margin-top: -15px
  }
}

.section.total .advance-price .amountToPay {
  font-size: 18px;
  color: #bd1343;
  font-weight: 700
}

@media only screen and (min-width: 768px) {
  .section.total .advance-price .section-data-price {
    margin-left: 10px
  }
}

.section.total .sub-section-data.advance-displayed .font-bold, .section.total .sub-section-data.advance-displayed .price {
  color: #1d1d1d !important
}

.continue-container {
  margin-top: 20px;
  text-align: right
}

.continue-container #continue-container {
  display: inline-block
}

.continue-container #continue-container #applepay-container, .continue-container #continue-container #googlepay-container, .continue-container #continue-container #paypal-container, .continue-container #continue-container #sofort-container, .continue-container #continue-container.mean-applePay #continue, .continue-container #continue-container.mean-googlePay #continue, .continue-container #continue-container.mean-paypal #continue, .continue-container #continue-container.mean-sofort #continue, body.is-loading .continue-container #continue-container {
  display: none
}

.continue-container #continue-container.mean-applePay #applepay-container {
  display: inline-block;
  box-shadow: 0 1px 1px 0 rgba(60, 64, 67, .3), 0 1px 3px 1px rgba(60, 64, 67, .15) !important;
  border-radius: 2px
}

.continue-container #continue-container.mean-googlePay #googlepay-container, .continue-container #continue-container.mean-paypal #paypal-container, .continue-container #continue-container.mean-sofort #sofort-container {
  display: inline-block
}

.continue-container #continue-button-loader {
  display: none
}

body.is-loading .continue-container #continue-button-loader {
  display: inline-block
}

.section.annexe {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  padding: 20px 40px 20px 55px;
  background: #fff;
  border: 1px solid #d3d3d3
}

@media only screen and (max-width: 767px) {
  .section.annexe {
    padding: 20px
  }
}

.section.annexe .package-notice-title {
  font-size: 16px;
  font-weight: 700
}

.section.annexe .package-notice-title i {
  position: absolute;
  left: 23px;
  top: 23px;
  font-size: 18px
}

@media only screen and (max-width: 767px) {
  .section.annexe .package-notice-title i {
    position: relative;
    top: 0;
    left: 0;
    margin-right: 10px
  }
}

.section.annexe .package-notice-content {
  margin: 5px 0 10px
}

.section.annexe .package-notice-link {
  font-weight: 700;
  color: #666;
  text-decoration: underline
}

section.error {
  background: none
}

section.error .error-bloc {
  background: #fff;
  color: #1d1d1d;
  text-align: center;
  font-family: Source Sans Pro, sans-serif;
  padding: 40px
}

section.error h1 {
  font-family: Georgia, Times New Roman, Times, serif;
  font-style: italic;
  font-size: 24px
}

section.error em {
  color: #bd1343;
  font-size: 27px;
  font-weight: 700
}

section.error .text {
  font-size: 16px;
  margin: 20px 0
}

section.error .phone_number_button {
  font-size: 24px;
  font-weight: 700;
  font-family: Source Sans Pro, sans-serif;
  margin-bottom: 5px
}

@media only screen and (max-width: 1024px) {
  section.error .phone_number_button:hover {
    border: 1px solid #afafaf;
    background-color: #d3d3d3
  }
}

@media only screen and (max-width: 767px) {
  section.error .phone_number_button {
    margin: 40px 0 20px;
    padding: 15px 30px;
    background: #eee;
    border: 1px solid #d3d3d3;
    color: #666;
    font-size: 16px;
    font-weight: 700
  }
}

section.error .notice {
  margin-bottom: 40px;
  font-size: 14px;
  color: #666
}

section.error a#back {
  display: inline-block;
  padding: 15px 25px
}

.error.flashMessage {
  position: absolute;
  width: 100%;
  left: 0;
  top: 68px;
  background: #bd1343;
  color: #fff;
  text-align: center;
  min-height: 60px;
  padding: 20px
}

@media only screen and (max-width: 1024px) {
  .error.flashMessage {
    position: fixed;
    top: 0;
    z-index: 1;
    padding: 20px 33px
  }
}

.error.flashMessage .error-title {
  font-size: 18px;
  font-weight: 700
}

.error.flashMessage .error-title i {
  font-size: 32px;
  vertical-align: middle;
  margin-right: 10px
}

@media only screen and (max-width: 1024px) {
  .error.flashMessage .error-title i {
    font-size: 20px
  }
}

.error.section.payment {
  width: 100%;
  padding: 10px 20px;
  margin: 0
}

.error.section.payment .error-head {
  background-color: #bd1343;
  color: #fff;
  padding: 10px;
  font-size: 16px;
  font-weight: 700
}

.error.section.payment .error-head .icon-alert {
  margin-right: 10px;
  font-size: 18px;
  vertical-align: text-bottom
}

.error.section.payment .error-content {
  border: 2px solid #bd1343;
  border-top: none;
  padding: 15px;
  background-color: #fff;
  color: #414141
}

.closeError {
  position: absolute;
  right: 10px;
  top: 10px;
  font-size: 24px;
  color: #fff
}

.option-quantity-selector {
  display: table;
  text-align: center;
  font-size: 16px;
  border-radius: 2px;
  height: 36px;
  margin-top: 8px
}

.option-quantity-selector a {
  display: table-cell;
  vertical-align: middle;
  width: 36px;
  padding-top: 2px;
  border: 1px solid #d3d3d3
}

.option-quantity-selector a:hover {
  text-decoration: none;
  background-color: #d3d3d3
}

.option-quantity-selector a.off {
  cursor: not-allowed;
  border: 1px solid #eee;
  color: #afafaf;
  background: none
}

.option-quantity-selector .quantity {
  display: table-cell;
  vertical-align: middle;
  font-size: 18px;
  width: 40px;
  font-weight: 700
}

.NumberPicker {
  display: -webkit-inline-flex;
  display: inline-flex;
  text-align: center;
  border: 1px solid #d3d3d3;
  border-radius: 2px;
  height: 36px;
  font-size: 16px
}

.NumberPicker--empty .NumberPicker__input {
  color: #666
}

.NumberPicker--disabled {
  margin-top: 5px
}

.NumberPicker--disabled .NumberPicker__input {
  color: #666;
  background-color: #eee
}

.NumberPicker__button {
  width: 36px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #eee;
  padding-top: 2px
}

.NumberPicker__button:hover {
  background-color: #d3d3d3
}

.NumberPicker__button[disabled] {
  cursor: default;
  background-color: #eee;
  color: #afafaf
}

.NumberPicker__input[type=text] {
  text-align: center;
  width: 40px;
  border: none;
  border-left: 1px solid #d3d3d3;
  border-right: 1px solid #d3d3d3;
  font-weight: 700;
  padding: 0;
  font-size: 18px
}

.NumberPicker__input[type=text]:focus {
  border-color: inherit
}

@media only screen and (max-width: 1024px) {
  .section-title.transport {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    -ms-grid-columns: -webkit-max-content -webkit-max-content auto -webkit-max-content;
    -ms-grid-columns: max-content max-content auto max-content;
    grid-template-columns: -webkit-max-content -webkit-max-content auto -webkit-max-content;
    grid-template-columns: max-content max-content auto max-content;
    padding-bottom: 10px;
    margin-bottom: 0
  }

  .section-title.transport > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .section-title.transport > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .section-title.transport > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .section-title.transport > :nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-column: 4
  }
}

@media only screen and (max-width: 1024px) {
  .section-title.transport span:first-of-type {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4;
    margin-left: 3px;
    -ms-grid-row-align: center;
    align-self: center
  }
}

@media only screen and (max-width: 1024px) {
  .section-title.transport .filters-mobile {
    -ms-grid-column: 4;
    -ms-grid-column-span: 1;
    grid-column: 4/5;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column-align: right;
    justify-self: right;
    padding-left: 20px;
    position: relative;
    -ms-grid-row-align: end;
    align-self: end;
    font-size: 14px;
    font-weight: 700;
    line-height: 18px;
    color: #1d1d1d;
    cursor: pointer
  }
}

@media only screen and (max-width: 1024px) {
  .section-title.transport .filters-mobile:before {
    content: "";
    height: calc(100% + 10px);
    border-left: 1px solid #d3d3d3;
    position: absolute;
    left: 0;
    bottom: -10px
  }
}

@media only screen and (max-width: 1024px) {
  .section-title.transport .filters-mobile i {
    margin-right: 8px;
    font-size: 18px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto minmax(458px, 1fr);
    grid-template-columns: auto minmax(458px, 1fr);
    -ms-grid-rows: auto auto minmax(20px, auto) -webkit-max-content 1fr auto;
    -ms-grid-rows: auto auto minmax(20px, auto) max-content 1fr auto;
    grid-template-rows: auto auto minmax(20px, auto) -webkit-max-content 1fr auto;
    grid-template-rows: auto auto minmax(20px, auto) max-content 1fr auto
  }

  .section-content.transport > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .section-content.transport > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .section-content.transport > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .section-content.transport > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .section-content.transport > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .section-content.transport > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .section-content.transport > :nth-child(7) {
    -ms-grid-row: 4;
    -ms-grid-column: 1
  }

  .section-content.transport > :nth-child(8) {
    -ms-grid-row: 4;
    -ms-grid-column: 2
  }

  .section-content.transport > :nth-child(9) {
    -ms-grid-row: 5;
    -ms-grid-column: 1
  }

  .section-content.transport > :nth-child(10) {
    -ms-grid-row: 5;
    -ms-grid-column: 2
  }

  .section-content.transport > :nth-child(11) {
    -ms-grid-row: 6;
    -ms-grid-column: 1
  }

  .section-content.transport > :nth-child(12) {
    -ms-grid-row: 6;
    -ms-grid-column: 2
  }
}

.section-content.transport .flight-resume {
  background-color: #f8f8f8;
  border: 1px solid #d3d3d3;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  padding: 12px 20px 20px
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-resume {
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding: 9px 19px;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    overflow: hidden
  }
}

.section-content.transport .flight-resume .flight-destination {
  font-size: 16px;
  line-height: 20px;
  font-weight: 700;
  text-transform: uppercase;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-resume .flight-destination {
    width: 100%;
    -webkit-flex: 0 0 100%;
    flex: 0 0 100%;
    text-align: center;
    margin-bottom: 18px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-resume .flight-destination {
    width: 50%;
    -webkit-flex: 1 1 50%;
    flex: 1 1 50%;
    margin-right: auto
  }
}

.section-content.transport .flight-resume .flight-destination i {
  line-height: 16px;
  color: #666;
  vertical-align: middle;
  margin: 0 10px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-resume .flight-back-date {
    text-align: right
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-resume .flight-back-date, .section-content.transport .flight-resume .flight-go-date {
    width: 50%;
    -webkit-flex: 50%;
    flex: 50%
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-resume .flight-back-date, .section-content.transport .flight-resume .flight-go-date {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    margin: 0 15px
  }
}

.section-content.transport .flight-resume .flight-back-date .title, .section-content.transport .flight-resume .flight-go-date .title {
  display: block;
  font-size: 12px;
  line-height: 15px;
  font-weight: 700;
  color: #666;
  text-transform: uppercase
}

.section-content.transport .flight-resume .flight-back-date .date, .section-content.transport .flight-resume .flight-go-date .date {
  font-size: 14px;
  line-height: 18px
}

.section-content.transport .marketing_bloc {
  position: relative
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .marketing_bloc {
    text-align: right
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .marketing_bloc {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/span 2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    border: 1px solid #d3d3d3;
    border-top: none
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .marketing_bloc.hasLogo .marketing_text {
    margin-left: 90px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .marketing_bloc.hasLogo .marketing_text .title {
    font-size: 15px
  }
}

.section-content.transport .marketing_bloc .marketing_inner {
  position: relative
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .marketing_bloc .marketing_inner {
    text-align: left
  }
}

.section-content.transport .marketing_bloc .marketing_inner .marketing_logo {
  width: 70px;
  position: absolute;
  top: 9px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .marketing_bloc .marketing_inner .marketing_logo {
    right: 0
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .marketing_bloc .marketing_inner .marketing_logo {
    left: 150px
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .marketing_bloc .marketing_inner .marketing_text {
    padding: 20px 10px 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .marketing_bloc .marketing_inner .marketing_text {
    position: absolute;
    left: 147px;
    top: 21px
  }
}

.section-content.transport .marketing_bloc .marketing_inner .marketing_text .title {
  display: block;
  font-size: 16px;
  line-height: 20px;
  font-weight: 700
}

.section-content.transport .marketing_bloc .marketing_inner .marketing_text .subtitle {
  display: block;
  font-size: 14px
}

.section-content.transport .marketing_bloc .marketing_inner .marketing_text .subtitle .price {
  font-weight: 400;
  font-size: inherit
}

.section-content.transport .marketing_bloc .action {
  color: #666;
  text-decoration: underline;
  font-size: 12px;
  line-height: 15px;
  font-weight: 700;
  text-align: right
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .marketing_bloc .action {
    margin-right: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .marketing_bloc .action {
    position: absolute;
    bottom: 16px;
    right: 20px
  }
}

.section-content.transport .marketing_bloc .action .hide {
  display: none
}

.section-content.transport .filters {
  position: relative
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .filters {
    display: none
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .filters {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 3;
    -ms-grid-row-span: 3;
    grid-row: 3/6;
    margin-top: 20px;
    margin-right: 20px;
    width: 122px
  }
}

.section-content.transport .filters #filters-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: hsla(0, 0%, 100%, .8);
  z-index: 99;
  text-align: center;
  padding-top: 30px
}

.section-content.transport .filters li {
  display: -webkit-flex;
  display: flex;
  margin: 0 0 13px;
  max-width: 122px
}

.section-content.transport .filters li input {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  margin-top: 0;
  margin-right: 5px
}

.section-content.transport .filters li label {
  line-height: 16px
}

.section-content.transport .filters .openFilters {
  text-transform: uppercase;
  font-weight: 700;
  color: #666;
  margin-bottom: 9px
}

.section-content.transport .filters .filter-by {
  display: block;
  font-weight: 700;
  margin-bottom: 15px
}

.section-content.transport .filters .schedule-way {
  display: block;
  text-transform: uppercase
}

.section-content.transport .filters .filter-container {
  margin: 0 0 5px
}

.section-content.transport .filters .filter-container .slider-title {
  display: block;
  font-weight: 700;
  text-transform: capitalize
}

.section-content.transport .filters .filter-container .slider-time {
  display: block
}

.section-content.transport .filters .filter-container .slider-range {
  margin-top: 12px;
  margin-bottom: 15px
}

.section-content.transport .filters .filter-container .schedule-way {
  text-transform: uppercase;
  display: block
}

.section-content.transport .filters .reset {
  width: 100%
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices {
    margin: 0 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5;
    position: relative
  }
}

.section-content.transport .flight-choices .flight:not(.loader) {
  position: relative;
  cursor: pointer;
  border: 1px solid #d3d3d3;
  border-bottom: none
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight:not(.loader) {
    margin: 10px 0 0;
    padding: 0 10px 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight:not(.loader) {
    padding: 0 20px 10px 40px
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight:not(.loader) + .flight-details {
    border-bottom: 1px solid #d3d3d3
  }
}

.section-content.transport .flight-choices .flight:not(.loader).selected {
  border-color: #afafaf
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight:not(.loader).selected {
    border-left: 3px solid #1d1d1d;
    padding-left: 8px
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight:not(.loader).selected:before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #1d1d1d;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight:not(.loader).selected + .flight-details {
    border-color: #afafaf
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight:not(.loader).selected + .flight-details + .flight {
    border-top-color: #afafaf
  }
}

.section-content.transport .flight-choices .flight:not(.loader).selected + .flight-details .flight-details-content {
  border-color: #afafaf
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight:not(.loader).selected + .flight-details .flight-details-content {
    border-left: 3px solid #1d1d1d;
    padding-left: 8px
  }
}

.section-content.transport .flight-choices .flight:not(.loader).selected .second-line .flight-infos .price {
  color: #1d1d1d
}

.section-content.transport .flight-choices .flight:not(.loader).isRecommended .second-line {
  padding-top: 5px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight:not(.loader).isRecommended:not(.isVirtualInterlining) .second-line .flight-infos {
    position: static
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight:not(.loader).isRecommended:not(.isVirtualInterlining) .second-line .flight-infos .price {
    top: 10px;
    right: 10px
  }
}

.section-content.transport .flight-choices .flight.loader:not(.overlay) {
  border: 1px solid #d3d3d3;
  padding: 20px;
  text-align: center;
  font-size: 13px;
  line-height: 17px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight.loader:not(.overlay) {
    margin-top: 20px
  }
}

.section-content.transport .flight-choices .flight.loader:not(.overlay) .loader-linear {
  margin-bottom: 20px
}

.section-content.transport .flight-choices .flight.loader.overlay {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: hsla(0, 0%, 100%, .85);
  z-index: 1
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line.multi-flights {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    padding-top: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line.multi-flights {
    position: relative;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr -webkit-max-content;
    -ms-grid-columns: 1fr max-content;
    grid-template-columns: 1fr -webkit-max-content;
    grid-template-columns: 1fr max-content;
    -ms-grid-rows: (auto) [ 5 ];
    grid-template-rows: repeat(5, auto);
    padding-top: 12px
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :nth-child(7) {
    -ms-grid-row: 4;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :nth-child(8) {
    -ms-grid-row: 4;
    -ms-grid-column: 2
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :nth-child(9) {
    -ms-grid-row: 5;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight .second-line.multi-flights > :nth-child(10) {
    -ms-grid-row: 5;
    -ms-grid-column: 2
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line.multi-flights .flight-infos {
    -webkit-order: -1;
    order: -1
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line.multi-flights .flight-infos {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 4;
    grid-row: 1/5;
    padding-left: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line.multi-flights .flight-warning {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 5;
    -ms-grid-row-span: 1;
    grid-row: 5/6;
    display: block
  }
}

.section-content.transport .flight-choices .flight .second-line.multi-flights .airlines {
  margin: 0 0 5px
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line.multi-flights .airlines {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2
  }
}

.section-content.transport .flight-choices .flight .second-line.multi-flights .airlines .company-name + .figure-company {
  margin-left: 10px
}

.section-content.transport .flight-choices .flight .second-line.multi-flights .outbound {
  margin: 0 0 5px
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line.multi-flights .outbound {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3
  }
}

.section-content.transport .flight-choices .flight .second-line.multi-flights .additional-flight {
  margin: 0 0 5px
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line.multi-flights .additional-flight {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4
  }
}

.section-content.transport .flight-choices .flight .second-line.multi-flights .additional-flight__child {
  margin-bottom: 5px
}

.section-content.transport .flight-choices .flight .second-line.multi-flights .additional-flight__child:last-child {
  margin-bottom: 0
}

.section-content.transport .flight-choices .flight .second-line.multi-flights .inbound {
  margin: 0 0 5px
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line.multi-flights .inbound {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto;
    padding-top: 10px
  }

  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 14px
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) .outbound {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    padding-right: 5px
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) .inbound {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    padding-left: 5px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) .inbound, .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) .outbound {
    -webkit-flex: 0 1 38%;
    flex: 0 1 38%;
    width: 38%;
    padding-right: 5px
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) .flight-infos {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    position: relative
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line:not(.multi-flights) .flight-infos {
    margin-left: auto;
    width: 21%
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line input[type=radio] {
    display: none
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line input[type=radio] {
    position: absolute;
    left: -28px;
    top: 15px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line .flight-infos {
    text-align: right
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line .flight-infos .class, .section-content.transport .flight-choices .flight .second-line .flight-infos .luggage-infos, .section-content.transport .flight-choices .flight .second-line .flight-infos .price {
    display: block
  }
}

.section-content.transport .flight-choices .flight .second-line .flight-infos .price {
  color: #666
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line .flight-infos .price {
    position: absolute;
    right: 0;
    top: 0
  }
}

.section-content.transport .flight-choices .flight .second-line .flight-infos .price .included, .section-content.transport .flight-choices .flight .second-line .flight-infos .price .isHighlighted {
  color: #bd1343
}

.section-content.transport .flight-choices .flight .second-line .flight-infos .class {
  font-size: 12px;
  font-weight: 700;
  color: #666
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line .flight-infos .class {
    display: block
  }
}

.section-content.transport .flight-choices .flight .second-line .flight-infos .class.mixed {
  color: #bd1343
}

.section-content.transport .flight-choices .flight .second-line .flight-infos .class.mixed i {
  margin-right: 5px
}

.section-content.transport .flight-choices .flight .second-line .flight-infos .luggage-infos {
  font-size: 20px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line .flight-infos .luggage-infos {
    display: block
  }
}

.section-content.transport .flight-choices .flight .second-line .flight-warning {
  margin-top: 10px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .second-line .flight-warning {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .second-line .flight-warning {
    margin-bottom: 5px
  }
}

.section-content.transport .flight-choices .flight .second-line .flight-warning .pink {
  color: #bd1343;
  font-weight: 700
}

.section-content.transport .flight-choices .flight__indicators {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight__indicators {
    margin-right: -10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight__indicators {
    margin-right: -20px
  }
}

.section-content.transport .flight-choices .flight .FlagRecommended {
  display: inline-block;
  vertical-align: top
}

.section-content.transport .flight-choices .flight .FlagRecommended__text {
  font-weight: 700;
  font-size: 12px;
  color: #bd1343;
  margin-left: 4px;
  vertical-align: middle
}

.section-content.transport .flight-choices .flight .airport-change {
  line-height: 18px;
  margin-bottom: 5px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .airport-change {
    margin-top: 10px
  }
}

.section-content.transport .flight-choices .flight .airport-change.isVisible {
  display: -webkit-flex;
  display: flex
}

.section-content.transport .flight-choices .flight .airport-change .icon {
  font-size: 16px;
  color: #bd1343;
  margin-right: 5px;
  line-height: 18px
}

.section-content.transport .flight-choices .flight .airport-change span {
  display: block
}

.section-content.transport .flight-choices .flight .title {
  font-size: 12px;
  color: #666;
  text-transform: uppercase;
  font-weight: 700;
  display: block
}

.section-content.transport .flight-choices .flight .container {
  display: block
}

.section-content.transport .flight-choices .flight .stopover, .section-content.transport .flight-choices .flight .time {
  color: #666;
  font-size: 12px;
  line-height: 15px
}

.section-content.transport .flight-choices .flight .stopover {
  white-space: nowrap
}

.section-content.transport .flight-choices .flight .hours {
  font-weight: 700
}

.section-content.transport .flight-choices .flight .hours .icon {
  font-size: 12px;
  font-weight: 400;
  color: #000;
  margin: 0 1px
}

.section-content.transport .flight-choices .flight .details {
  display: block
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .details {
    margin-top: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .details {
    text-align: right
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight .details button {
    font-size: 12px;
    font-weight: 700;
    color: #666;
    font-family: Source Sans Pro, sans-serif
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .flight .details .button {
    display: block
  }
}

.section-content.transport .flight-choices .flight .details .icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -2px;
  margin-right: 3px
}

.section-content.transport .flight-choices .flight .details .hide-details {
  display: none
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices.special .flight .second-line {
    padding-right: 40px
  }
}

.section-content.transport .flight-choices .promo-filters {
  border: 1px solid #d3d3d3;
  text-align: left;
  padding: 10px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .promo-filters {
    border-bottom: none
  }
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .promo-filters {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 10px;
    padding-bottom: 5px
  }
}

.section-content.transport .flight-choices .promo-filters .icon {
  font-size: 20px
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .promo-filters .icon {
    margin-right: 10px
  }
}

.section-content.transport .flight-choices .promo-filters-text {
  font-size: 13px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .promo-filters-text {
    width: calc(100% - 30px)
  }
}

.section-content.transport .flight-choices .promo-filters .button {
  -webkit-flex: 1 0 auto;
  flex: 1 0 auto
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .promo-filters .button {
    padding-right: 0
  }
}

.section-content.transport .flight-choices .noResult {
  border: 1px solid #d3d3d3;
  border-top: none;
  border-bottom: none;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 15px;
  font-size: 13px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .flight-choices .noResult {
    margin-top: 5px
  }
}

.section-content.transport .flight-choices .noResult .icon {
  font-size: 20px;
  margin-right: 10px
}

.section-content.transport .flight-choices .noResult .button {
  padding: 0;
  width: auto
}

.section-content.transport .flight-choices .CompanyInfo + .CompanyInfo {
  margin-top: 4px
}

.section-content.transport .flight-choices .figure-company {
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px
}

.section-content.transport .flight-choices .figure-company img {
  display: block;
  width: 20px;
  height: 20px
}

.section-content.transport .flight-choices .company-name {
  vertical-align: middle
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight-details:last-child {
    border-bottom: 1px solid #d3d3d3
  }
}

.section-content.transport .flight-choices .flight-details-content {
  border: 1px solid #d3d3d3;
  border-top: none;
  border-bottom: none;
  padding: 0 10px 10px;
  overflow: hidden
}

.section-content.transport .flight-choices .flight-details-content.show {
  display: block
}

.section-content.transport .flight-choices .flight-details-content.hide {
  display: none
}

.section-content.transport .flight-choices .flight-details-content-special {
  background-color: #f8f8f8;
  padding: 20px;
  margin: 0 0 10px;
  line-height: 18px
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight-details-content-special {
    margin-left: 10px;
    margin-right: 10px
  }
}

.section-content.transport .flight-choices .flight-details-description {
  margin-top: 5px
}

.section-content.transport .flight-choices .flight-details-stopover {
  display: block;
  position: relative;
  z-index: 1;
  text-align: center;
  margin: 10px 0
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight-details-stopover {
    margin: 10px
  }
}

.section-content.transport .flight-choices .flight-details-stopover:before {
  border-top: 1px solid #d3d3d3;
  content: "";
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1
}

.section-content.transport .flight-choices .flight-details-stopover .center {
  background-color: #fff;
  padding: 0 16px;
  text-transform: uppercase;
  color: #666;
  font-size: 12px
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight-details-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    -ms-grid-rows: (auto) [ 3 ];
    grid-template-rows: repeat(3, auto);
    margin: 0 10px
  }

  .section-content.transport .flight-choices .flight-details-container > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight-details-container > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .section-content.transport .flight-choices .flight-details-container > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight-details-container > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .section-content.transport .flight-choices .flight-details-container > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .section-content.transport .flight-choices .flight-details-container > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }
}

.section-content.transport .flight-choices .flight-details-data.full {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight-details-data.full {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3
  }
}

.section-content.transport .flight-choices .flight-details-data.full .cabin-type {
  margin-left: auto;
  color: #666;
  font-size: 12px;
  font-weight: 700
}

.section-content.transport .flight-choices .flight-details-data.full .cabin-type .icon {
  margin-right: 5px
}

.section-content.transport .flight-choices .flight-details-data:not(.full) {
  display: block;
  margin: 10px 0
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight-details-data:not(.full):nth-child(2) {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .flight-choices .flight-details-data:not(.full):nth-child(3) {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3
  }
}

.section-content.transport .flight-choices .flight-details-data:not(.full) .date {
  display: block
}

.section-content.transport .flight-choices .flight-details-data:not(.full) .date .left {
  display: block;
  font-weight: 700;
  color: #666;
  text-transform: capitalize
}

.section-content.transport .flight-choices .flight-details-data:not(.full) .date .right .font-bold {
  font-weight: 700;
  margin-left: 5px
}

.section-content.transport .flight-choices .flight-details .luggage-infos {
  display: block;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  -ms-grid-row: 3;
  -ms-grid-row-span: 1;
  grid-row: 3/4;
  font-size: 12px;
  color: #666;
  font-weight: 700
}

.section-content.transport .flight-choices .flight-details .luggage-infos i {
  font-size: 16px;
  font-weight: 400;
  margin-right: 5px;
  vertical-align: text-bottom
}

.section-content.transport .flight-choices .flight-details .flight-way-title {
  display: block;
  text-transform: uppercase;
  color: #666;
  background-color: #f8f8f8;
  font-size: 12px;
  line-height: 15px;
  padding: 4px 0;
  text-align: center;
  font-weight: 700;
  margin: 15px 0 10px
}

.section-content.transport .flight-choices .flight-details .flight-way-title:first-child {
  margin-top: 0
}

.section-content.transport .more-flight-container {
  text-align: center;
  margin-top: 20px
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .more-flight-container {
    margin-left: 10px;
    margin-right: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .more-flight-container {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 6;
    -ms-grid-row-span: 1;
    grid-row: 6/7
  }
}

.section-content.transport .more-flight-container #return {
  display: none
}

.section-content.transport .result-number {
  background-color: #f8f8f8;
  text-align: center;
  border: 1px solid #d3d3d3
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .result-number {
    margin: 10px 10px -10px;
    padding: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .result-number {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    padding: 10px
  }
}

.section-content.transport .result-number .nb-results {
  font-weight: 700
}

.section-content.transport .result-number .nb-total:after {
  content: " - "
}

.section-content.transport .result-number .reset {
  font-weight: 700;
  font-size: 12px;
  text-decoration: underline;
  cursor: pointer
}

.section-content.transport .result-number .reset:hover {
  text-decoration: none
}

.section-content.transport .result-number.top {
  border-bottom: none
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .result-number.top {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    margin-top: 20px
  }
}

.section-content.transport .result-number.bottom {
  border-top: none
}

@media only screen and (max-width: 1024px) {
  .section-content.transport .result-number.bottom {
    margin: 0 10px
  }
}

@media only screen and (min-width: 1025px) {
  .section-content.transport .result-number.bottom {
    -ms-grid-row: 5;
    -ms-grid-row-span: 1;
    grid-row: 5/6
  }
}

.modal--filters .Modal__btn-close__icon {
  font-size: 24px
}

.FiltersModal .filter-by {
  font-size: 18px;
  line-height: 23px;
  font-weight: 700;
  display: block;
  margin-bottom: 20px
}

.FiltersModal .openFilters {
  color: #666;
  font-size: 14px;
  line-height: 18px;
  font-weight: 700;
  text-transform: uppercase;
  margin: 15px 0 10px
}

.FiltersModal .filter-container li {
  margin: 5px 0
}

.FiltersModal .filter-container li input[type=checkbox] {
  margin-right: 5px
}

.FiltersModal .schedule-way {
  text-transform: uppercase
}

.FiltersModal .slider-title {
  font-weight: 700;
  text-transform: capitalize
}

.FiltersModal .slider-range {
  margin-top: 20px;
  margin-bottom: 20px
}

.FiltersModal__footer {
  margin-top: 20px;
  display: -webkit-flex;
  display: flex
}

.FiltersModal__footer .button {
  -webkit-flex: 1 0 50%;
  flex: 1 0 50%
}

.FiltersModal__footer .button:first-child {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0
}

.FiltersModal__footer .button:last-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0
}

.carRentalInfo {
  padding: 15px 20px 20px
}

.textCarRental {
  display: inline;
  float: left;
  width: 150px
}

.dynamicTextCarRental {
  font-weight: 700
}

.carRental .driver_select {
  display: inline;
  border: none
}

.carRental select {
  margin-left: 5%;
  width: 50% !important
}

.driver-notice {
  text-align: center
}

.driver-notice, .mainDriver {
  font-weight: 700
}

.driver-young-notice, .textCarRental.birthdate.red {
  color: #bd1343
}

.optionSkiset {
  padding-bottom: 0
}

.optionSkiset .section-data .composition:before {
  background-color: #fff !important
}

@media only screen and (max-width: 767px) {
  .optionSkiset .section-data-price {
    height: auto !important;
    -webkit-align-self: center !important;
    -ms-grid-row-align: center !important;
    align-self: center !important
  }
}

.optionSkiset__dateDurationSelection {
  background-color: #f8f8f8;
  padding: 10px;
  border-top: 1px solid #d3d3d3;
  margin-top: 20px
}

@media only screen and (min-width: 1025px) {
  .optionSkiset__dateDurationSelection {
    margin-top: 0;
    padding: 20px;
    display: -webkit-flex;
    display: flex;
    border-bottom: 1px solid #d3d3d3
  }
}

.optionSkiset__dateDurationSelection .DateDurationSelector {
  margin-bottom: 12px
}

@media only screen and (min-width: 1025px) {
  .optionSkiset__dateDurationSelection .DateDurationSelector {
    margin-bottom: 0;
    margin-right: 20px
  }
}

.optionSkiset__dateDurationSelection .DateDurationSelector:last-child {
  margin-bottom: 0;
  margin-right: 0
}

.optionSkiset__dateDurationSelection .DateDurationSelector__title {
  color: #666;
  font-weight: 700;
  margin-bottom: 8px
}

.optionSkiset__dateDurationSelection .DateDurationSelector__select#skiset-duration {
  width: auto
}

.optionSkiset__dateDurationSelection .DateDurationSelector--hidden {
  display: none
}

.optionSkiset__composition {
  border-bottom: 1px solid #d3d3d3;
  padding: 20px 0
}

.optionSkiset__composition:last-child {
  border-bottom: none;
  padding-bottom: 0 !important
}

@media only screen and (max-width: 1024px) {
  .optionSkiset__composition .option-details {
    margin-top: 20px
  }
}

.optionSkiset__pack {
  padding: 20px;
  border: 1px dashed #d3d3d3;
  border-radius: 2px;
  margin-bottom: 20px
}

@media only screen and (min-width: 768px) {
  .optionSkiset__pack {
    margin-bottom: 10px
  }
}

.optionSkiset__pack:last-child {
  margin-bottom: 0
}

.optionSkiset__pack__title {
  font-size: 16px;
  font-weight: 700
}

.optionSkiset__pack__title span {
  font-size: 14px;
  font-weight: 400;
  color: #666
}

.optionSkiset__pack__seeMore {
  margin-bottom: 5px
}

.optionSkiset__pack__warning {
  display: -webkit-flex;
  display: flex;
  margin-top: 20px
}

.optionSkiset__pack__warning.is-hidden {
  display: none
}

.optionSkiset__pack__warning .icon {
  color: #bd1343;
  font-size: 18px;
  margin-right: 10px
}

.PackSelectionRow {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 20px
}

@media only screen and (min-width: 768px) {
  .PackSelectionRow {
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-top: 5px;
    margin-bottom: 10px
  }
}

.PackSelectionRow:last-child {
  margin-bottom: 0
}

.PackSelectionRow__title {
  font-weight: 700;
  color: #666
}

@media only screen and (max-width: 767px) {
  .PackSelectionRow__title {
    -webkit-flex: 1 0 100%;
    flex: 1 0 100%;
    margin-bottom: 5px
  }
}

@media only screen and (min-width: 768px) {
  .PackSelectionRow__title {
    margin-right: auto
  }
}

.PackSelectionRow__title span {
  font-weight: 400
}

.PackSelectionRow__numberPicker {
  margin-right: auto
}

@media only screen and (min-width: 768px) {
  .PackSelectionRow__numberPicker {
    margin-left: auto;
    margin-right: 0
  }
}

.PackSelectionRow__price {
  text-align: right;
  color: #666;
  margin-left: 10px;
  min-width: 40px
}

.PackSelectionRow__price .price {
  display: block;
  font-size: 16px
}

.PackSelectionRow__price .price-off {
  display: block;
  font-size: 12px
}

.PackSelectionRow.is-active .PackSelectionRow__price .price {
  color: #1d1d1d
}

.Composition {
  display: -ms-grid;
  display: grid
}

@media only screen and (max-width: 767px) {
  .Composition {
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    -ms-grid-rows: (auto) [ 4 ];
    grid-template-rows: repeat(4, auto)
  }

  .Composition > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .Composition > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .Composition > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .Composition > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .Composition > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .Composition > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .Composition > :nth-child(7) {
    -ms-grid-row: 4;
    -ms-grid-column: 1
  }

  .Composition > :nth-child(8) {
    -ms-grid-row: 4;
    -ms-grid-column: 2
  }
}

@media only screen and (min-width: 768px) {
  .Composition {
    -ms-grid-columns: 144px 1fr auto;
    grid-template-columns: 144px 1fr auto;
    -ms-grid-rows: (auto) [ 4 ];
    grid-template-rows: repeat(4, auto)
  }

  .Composition > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .Composition > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .Composition > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .Composition > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .Composition > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .Composition > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }

  .Composition > :nth-child(7) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .Composition > :nth-child(8) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .Composition > :nth-child(9) {
    -ms-grid-row: 3;
    -ms-grid-column: 3
  }

  .Composition > :nth-child(10) {
    -ms-grid-row: 4;
    -ms-grid-column: 1
  }

  .Composition > :nth-child(11) {
    -ms-grid-row: 4;
    -ms-grid-column: 2
  }

  .Composition > :nth-child(12) {
    -ms-grid-row: 4;
    -ms-grid-column: 3
  }
}

.Composition__title {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 10px
}

.Composition .Composition__title {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2
}

@media only screen and (min-width: 768px) {
  .Composition__title {
    margin-right: 10px
  }
}

.Composition__price {
  text-align: right
}

@media only screen and (max-width: 767px) {
  .Composition .Composition__price {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5;
    -ms-grid-row-align: center;
    align-self: center
  }
}

@media only screen and (min-width: 768px) {
  .Composition .Composition__price {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3
  }
}

.Composition__price .price {
  line-height: 1 !important
}

@media only screen and (max-width: 767px) {
  .Composition .Composition__img {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    margin-bottom: 10px
  }
}

@media only screen and (min-width: 768px) {
  .Composition .Composition__img {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    grid-row: 2/4
  }
}

@media only screen and (max-width: 767px) {
  .Composition .Composition__desc {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    margin-bottom: 10px
  }
}

@media only screen and (min-width: 768px) {
  .Composition .Composition__desc {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    grid-row: 2/4;
    margin-left: 10px
  }
}

@media only screen and (max-width: 767px) {
  .Composition .Composition__actions {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5;
    margin-top: 10px;
    padding-right: 5px
  }
}

@media only screen and (min-width: 768px) {
  .Composition .Composition__actions {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    text-align: right;
    padding-left: 15px
  }
}

@media only screen and (min-width: 768px) {
  .Composition .Composition.noPicture .Composition__desc {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    margin-left: 0
  }
}

@media only screen and (min-width: 1025px) {
  .modal--skiset.modal-dialog {
    max-width: 650px
  }
}

@media only screen and (min-width: 1025px) {
  .modal--skiset .modal-body {
    padding: 40px
  }
}

.SkisetModal__title {
  margin-bottom: 20px;
  text-align: center;
  font-family: Georgia, Times New Roman, Times, serif;
  font-style: italic;
  font-size: 24px
}

@media only screen and (min-width: 1025px) {
  .SkisetModal__title {
    font-size: 32px
  }
}

.SkisetModal__header {
  display: -webkit-flex;
  display: flex;
  margin-bottom: 20px;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

.SkisetModal__warning {
  margin-bottom: 10px
}

.SkisetModal__label__title {
  font-family: Georgia, Times New Roman, Times, serif;
  font-style: italic;
  font-size: 18px
}

@media only screen and (min-width: 1025px) {
  .SkisetModal__label__title {
    font-size: 24px
  }
}

.SkisetModal__footer {
  font-size: 12px;
  color: #666
}

.SkisetModalPack {
  padding: 20px 0
}

.SkisetModalPack:not(:last-child) {
  border-bottom: 1px solid #d3d3d3
}

.SkisetModalPack__title {
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 700
}

.SkisetModalPack__desc {
  margin-bottom: 10px
}

.SkisetModalPack__visuals {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-top: 10px;
  -webkit-align-items: center;
  align-items: center
}

@media only screen and (min-width: 768px) {
  .SkisetModalPack__visuals {
    -webkit-align-items: flex-end;
    align-items: flex-end
  }
}

.SkisetModalPack__sign {
  font-family: Source Sans Pro, sans-serif;
  color: #666;
  font-size: 28px;
  margin: 0 15px
}

@media only screen and (min-width: 768px) {
  .SkisetModalPack__sign {
    font-size: 58px
  }
}

.SkisetModalPack__img {
  margin-left: 20px
}

.SkisetModalPack--helmet {
  display: -webkit-flex;
  display: flex;
  border: none !important
}

.SkisetModal--helmet .SkisetModal__header {
  margin-bottom: 0
}

.WarningMandatoryHelmet {
  position: relative;
  display: inline-block;
  border: 1px solid #d3d3d3;
  border-left: 3px solid #bd1343;
  padding: 10px 25px 10px 10px;
  width: 260px;
  min-height: 50px;
  margin-right: 35px
}

.WarningMandatoryHelmet__content {
  font-size: 12px;
  font-weight: 700
}

.WarningMandatoryHelmet__img {
  position: absolute;
  right: -35px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.VirtualInterlining {
  background-color: #bd1343;
  color: #fff;
  font-size: 12px;
  text-transform: uppercase;
  line-height: 15px;
  font-weight: 700;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 4px 9px;
  margin-left: auto
}

.VirtualInterlining .icon {
  font-size: 16px;
  font-weight: 400;
  margin-left: 5px
}

.VirtualInterliningWarning {
  margin: 0 10px;
  padding: 15px 0 10px;
  border-top: 1px solid #d3d3d3
}

.VirtualInterliningWarning__title {
  text-transform: uppercase;
  color: #bd1343;
  font-weight: 700;
  position: relative;
  line-height: 1;
  margin-bottom: 10px
}

.VirtualInterliningWarning__title:before {
  content: "";
  background-color: #bd1343;
  border-left: 3px solid #bd1343;
  height: 30px;
  width: 1px;
  vertical-align: sub;
  display: block;
  position: absolute;
  top: -50%;
  left: -20px
}

.VirtualInterliningWarning__text {
  font-size: 12px
}

#calendarDates .rdrDefinedRangesWrapper {
  display: none
}

#calendarDates .rdrCalendarWrapper, #calendarDates .rdrDateRangePickerWrapper, #calendarDates .rdrMonth {
  width: 100%
}

#calendarDates .rdrMonth {
  margin-top: -40px
}

#calendarDates .rdrMonth .rdrMonthName {
  text-align: center;
  font-size: 12px;
  color: #1d1d1d;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 15px
}

#calendarDates .rdrDayEndPreview, #calendarDates .rdrDayInPreview, #calendarDates .rdrDayStartPreview, #calendarDates .rdrEndEdge, #calendarDates .rdrInRange, #calendarDates .rdrStartEdge {
  border-radius: 0
}

#calendarDates .rdrEndEdge, #calendarDates .rdrInRange, #calendarDates .rdrStartEdge {
  left: 1px;
  right: 1px
}

#calendarDates .rdrDayToday .rdrDayNumber span:after {
  background: #bd1343
}

#calendarDates .rdrMonthAndYearPickers {
  visibility: hidden
}

@media only screen and (min-width: 1025px) {
  .CalendarRangePicker__header .label-tag {
    margin-left: 10px
  }
}

.CalendarRangePicker__footer {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse
}

.CalendarRangePicker__footer .Loader {
  width: 40px
}

.CalendarRangePicker.load .rdrDayEndPreview, .CalendarRangePicker.load .rdrDayInPreview, .CalendarRangePicker.load .rdrDayStartPreview, .CalendarRangePicker.load .rdrEndEdge, .CalendarRangePicker.load .rdrInRange, .CalendarRangePicker.load .rdrStartEdge {
  color: #fff !important
}

.CalendarRangePicker.load .rdrDayNumber span {
  color: #1d2429 !important
}

@media only screen and (max-width: 767px) {
  .SmartSummary.no-scroll {
    overflow: hidden !important
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartSummary #react-smart-summary {
    margin-top: 20px
  }
}

.SmartSummary .Summary {
  background-color: #fff
}

@media only screen and (max-width: 767px) {
  .SmartSummary .Summary.has-overlay:before {
    content: "";
    background: rgba(0, 0, 0, .4);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 6
  }
}

.SmartSummary .Summary.has-fixed-quotation .fixedDetails {
  overflow: scroll
}

@media only screen and (max-width: 767px) {
  .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummarySection__recap {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    position: relative
  }
}

@media only screen and (max-width: 767px) {
  .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummarySection__recap:before {
    content: "";
    border-left: 3px solid #bd1343;
    height: 32px;
    width: 1px;
    vertical-align: sub;
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0
  }
}

@media only screen and (max-width: 767px) {
  .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummaryQuotation__insteadOfLabel {
    display: none
  }
}

@media only screen and (max-width: 767px) {
  .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummarySection__destinationInfo {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    overflow: hidden;
    padding-bottom: 0;
    padding-right: 5px;
    position: relative
  }

  .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummarySection__destinationInfo:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 1px;
    height: 24px;
    border-right: 1px solid #d3d3d3
  }
}

@media only screen and (max-width: 767px) {
  .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummarySection__destination, .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummarySection__hotel {
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden
  }
}

@media only screen and (max-width: 767px) {
  .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummarySection--quotation {
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
    padding-left: 5px;
    padding-top: 0
  }
}

@media only screen and (max-width: 767px) {
  .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummaryQuotation {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
}

@media only screen and (max-width: 767px) {
  .SmartSummary .Summary.has-fixed-quotation .fixedRecap .SummaryQuotation__label {
    display: none
  }
}

.SmartSummary .SummarySection--fixedPanel {
  background-color: #fff;
  display: block;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 7
}

@media only screen and (max-width: 767px) {
  .SmartSummary .SummarySection--fixedPanel {
    border-bottom: 1px solid #d3d3d3;
    max-height: 80vh;
    overflow: hidden;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

@media only screen and (min-width: 1025px) {
  .SmartSummary .SummarySection--fixedPanel {
    max-width: 300px
  }
}

.SmartSummary .SummarySection--fixedPanel .fixedRecap {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column
}

.SmartSummary .SummarySection--details {
  padding: 5px 20px
}

.SmartSummary .SummarySection--quotation {
  padding: 5px 20px 20px
}

@media only screen and (min-width: 768px) {
  .SmartSummary .SummarySection__picture {
    padding: 20px 20px 0
  }
}

.SmartSummary .SummarySection__recap {
  background-color: #fff;
  padding: 10px 20px
}

@media only screen and (min-width: 768px) {
  .SmartSummary .SummarySection__recap {
    padding: 20px 20px 0
  }
}

.SmartSummary .SummarySection__destinationInfo {
  position: relative
}

@media only screen and (max-width: 767px) {
  .SmartSummary .SummarySection__destinationInfo {
    padding-bottom: 10px
  }
}

.SmartSummary .SummarySection__destinationInfo:before {
  content: "";
  border-left: 3px solid #bd1343;
  height: 90%;
  width: 1px;
  vertical-align: sub;
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -20px
}

.SmartSummary .SummarySection__destination {
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 700
}

.SmartSummary .SummarySection__hotel {
  font-size: 18px
}

.SmartSummary .SummarySection__transport {
  font-size: 14px;
  font-weight: 700;
  margin-top: 10px
}

.SmartSummary .SummaryDetail--details {
  margin-top: 15px
}

@media only screen and (max-width: 767px) {
  .SmartSummary .SummaryDetail--details {
    position: relative;
    max-height: 15vh;
    overflow: hidden
  }
}

@media only screen and (max-width: 767px) {
  .SmartSummary .SummaryDetail--details.moreDetails {
    max-height: none;
    overflow: auto
  }
}

.SmartSummary .SummaryDetail--detailsButton {
  display: block;
  padding: 10px 0 20px;
  margin: auto;
  font-weight: 700;
  color: #666
}

.SmartSummary .SummaryDetail__title {
  font-size: 16px;
  font-weight: 700
}

.SmartSummary .SummaryDetail__subtitle {
  font-size: 14px;
  font-weight: 700;
  margin-top: 8px;
  padding-left: 16px
}

.SmartSummary .SummaryDetail__list {
  list-style-type: disc;
  padding-left: 16px
}

.SmartSummary .SummaryDetail__list li {
  font-size: 12px;
  margin: 8px 0
}

.SmartSummary .SummaryDetail__list li span {
  font-size: 14px
}

.SmartSummary .SummaryDetail__detailsBlur {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 40px;
  background-image: linear-gradient(180deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, .5), #fff)
}

.SmartSummary .SummarySeparator {
  position: relative;
  border: none;
  border-bottom: 1px dashed #afafaf;
  overflow: visible;
  margin: 8px 0
}

@media only screen and (min-width: 768px) {
  .SmartSummary .SummarySeparator {
    margin: 8px 20px
  }

  .SmartSummary .SummarySeparator:after, .SmartSummary .SummarySeparator:before {
    content: "";
    position: absolute;
    top: -8px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #eee
  }

  .SmartSummary .SummarySeparator:before {
    left: -28px
  }

  .SmartSummary .SummarySeparator:after {
    right: -28px
  }
}

.SmartSummary .SummaryRecapLine {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin: 4px 0
}

.SmartSummary .SummaryRecapLine__title {
  font-weight: 700;
  margin: 20px 0 10px
}

.SmartSummary .SummaryRecapLine__label {
  color: #666;
  margin-right: 10px
}

.SmartSummary .SummaryRecapLine__detail {
  font-weight: 700;
  text-align: right
}

.SmartSummary .SummaryQuotation {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

@media only screen and (max-width: 767px) {
  .SmartSummary .SummaryQuotation {
    color: #bd1343;
    padding-top: 20px;
    border-top: 1px solid #666
  }
}

.SmartSummary .SummaryQuotation__label {
  font-size: 16px;
  font-weight: 700;
  margin-right: auto;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto
}

.SmartSummary .SummaryQuotation__prices {
  text-align: right
}

.SmartSummary .SummaryQuotation__total {
  font-size: 18px;
  font-weight: 700;
  white-space: nowrap
}

.SmartSummary .SummaryQuotation__insteadOf {
  color: #666
}

.SmartSummary .SummaryQuotation__insteadOfPrice {
  white-space: nowrap
}

.SmartSummary .SummaryQuotation .Loader {
  width: auto
}

.SmartSummary .SummaryQuotationDetail {
  padding-top: 10px
}

@media only screen and (max-width: 767px) {
  .SmartSummary .SummaryQuotationDetail {
    padding-bottom: 10px
  }
}

.SmartSummary .SummaryQuotationDetail__line {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

.SmartSummary .SummaryQuotationDetail__label {
  word-break: break-word
}

.SmartSummary .SummaryQuotationDetail__price {
  font-weight: 700;
  font-size: 16px;
  white-space: nowrap
}

.SmartSummary .SummaryButtonQuotationDetail {
  font-size: 24px;
  -webkit-align-self: center;
  -ms-grid-row-align: center;
  align-self: center;
  margin-left: 10px
}

@media only screen and (max-width: 767px) {
  .SmartSummary .has-overlay .SummarySection--fixedPanel:after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    height: 30px;
    background-image: linear-gradient(0deg, #fff, hsla(0, 0%, 100%, 0))
  }
}

@media only screen and (max-width: 767px) {
  .SmartSummary .has-overlay .fixedDetails .SummarySection--details {
    padding-bottom: 20px
  }
}

.SmartBP .dropdown, .SmartBP .dropleft, .SmartBP .dropright, .SmartBP .dropup {
  position: relative
}

.SmartBP .dropdown-toggle {
  white-space: nowrap
}

.SmartBP .dropdown-menu:not(.no-popper) {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  min-width: 250px;
  padding: 10px 0;
  margin: 0;
  font-size: 14px;
  color: #1d1d1d;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 0 solid transparent;
  border-radius: 0;
  box-shadow: none
}

.SmartBP .dropdown-menu:not(.no-popper).show {
  display: block
}

.SmartBP .dropdown-menu-left {
  right: auto;
  left: 0
}

.SmartBP .dropdown-menu-right {
  right: 0;
  left: auto
}

.SmartBP .dropdown-menu[x-placement^=bottom], .SmartBP .dropdown-menu[x-placement^=left], .SmartBP .dropdown-menu[x-placement^=right], .SmartBP .dropdown-menu[x-placement^=top] {
  right: auto;
  bottom: auto
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP #header .page-center {
    max-width: 768px
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP #header .logo-container {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    height: 68px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP #header .logo-container #back {
    position: static;
    left: auto
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP #header .logo-container #back a {
    margin-right: 16px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .TimeLeft {
    background-color: transparent;
    padding-left: 0;
    padding-right: 0;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
}

.SmartBP .Breadcrumb {
  white-space: nowrap;
  overflow: hidden
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Breadcrumb {
    height: auto;
    background-color: transparent;
    display: block;
    -webkit-align-items: initial;
    align-items: initial;
    padding-left: 0;
    padding-right: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .NavigationBar {
    background-color: #fff
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .NavigationBar .page-center {
    max-width: 768px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    height: 40px;
    padding-left: 20px;
    padding-right: 20px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP #page-container:not(.page-giftcard) > .page-center {
    display: -ms-grid;
    display: grid;
    margin: 0 auto;
    -ms-grid-columns: 428px 20px 300px;
    grid-template-columns: 428px 300px;
    -ms-grid-rows: -webkit-max-content 1fr;
    -ms-grid-rows: max-content 1fr;
    grid-template-rows: -webkit-max-content 1fr;
    grid-template-rows: max-content 1fr;
    grid-column-gap: 20px;
    grid-template-areas: "Main Sidebar" "Main Help";
    width: 768px;
    padding: 0 10px
  }
}

.SmartBP #page-container:not(.page-giftcard) #rebuildMessage {
  grid-area: RebuildMsg
}

.SmartBP #page-container:not(.page-giftcard) #react-smart-summary {
  grid-area: Sidebar
}

.SmartBP #page-container:not(.page-giftcard) .Main {
  grid-area: Main
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP #page-container:not(.page-giftcard) .Main {
    padding-left: 0;
    padding-right: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP #page-container:not(.page-giftcard) .Main.error {
    margin-top: 40px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP #page-container:not(.page-giftcard) .Main .admin-msg-box {
    margin-top: 20px
  }
}

.SmartBP #page-container:not(.page-giftcard) .help {
  grid-area: Help
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP #page-container:not(.page-giftcard) #react-smart-summary {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .SmartBP #page-container:not(.page-giftcard) .Main {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1
  }

  .SmartBP #page-container:not(.page-giftcard) .help {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }
}

.SmartBP #page-container:not(.page-giftcard).page-error {
  padding-bottom: 40px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP #page-container:not(.page-giftcard).page-error .recap {
    margin-top: 40px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Insurance__list {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.SmartBP .Insurance__list .InsuranceCard {
  border: 1px solid #d3d3d3
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Insurance__list .InsuranceCard + .InsuranceCard {
    border-left: 0
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Insurance__list .InsuranceCard + .InsuranceCard {
    border-top: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container {
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    -ms-grid-rows: (auto) [ 4 ];
    grid-template-rows: repeat(4, auto)
  }

  .SmartBP .section .section-content.options .container > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .section .section-content.options .container > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .section .section-content.options .container > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .section .section-content.options .container > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .section .section-content.options .container > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .SmartBP .section .section-content.options .container > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .SmartBP .section .section-content.options .container > :nth-child(7) {
    -ms-grid-row: 4;
    -ms-grid-column: 1
  }

  .SmartBP .section .section-content.options .container > :nth-child(8) {
    -ms-grid-row: 4;
    -ms-grid-column: 2
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .section-data-text {
    grid-column: 1/-1;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    margin-bottom: 5px;
    padding-right: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .section-data-price {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5;
    justify-self: right;
    align-self: end;
    height: 44px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    margin-bottom: 0;
    padding-left: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .img-supp {
    width: 100%;
    margin-bottom: 20px;
    grid-column: initial;
    grid-row: initial
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .img-supp img {
    width: 100%
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .img-supp + .container__content {
    padding-left: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .container__content {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    margin-bottom: 25px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .container__actions {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5;
    margin-top: 0;
    -ms-grid-row-align: initial;
    align-self: auto;
    -ms-grid-column-align: initial;
    justify-self: initial
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .container__actions .button {
    width: auto
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .container__actions .delete-container .added {
    float: right;
    padding-right: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .container .container__actions .add-container {
    min-height: 44px;
    text-align: left
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .supp-choose {
    padding-top: 10px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .supp-details-img {
    width: 100%
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .container-supp-line {
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    -ms-grid-rows: (auto) [ 5 ];
    grid-template-rows: repeat(5, auto);
    padding: 20px 0
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :nth-child(7) {
    -ms-grid-row: 4;
    -ms-grid-column: 1
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :nth-child(8) {
    -ms-grid-row: 4;
    -ms-grid-column: 2
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :nth-child(9) {
    -ms-grid-row: 5;
    -ms-grid-column: 1
  }

  .SmartBP .section .section-content.options .option-details .container-supp-line > :nth-child(10) {
    -ms-grid-row: 5;
    -ms-grid-column: 2
  }
}

.SmartBP .section .section-content.options .option-details .container-supp-line .supp-details-column-title {
  margin-bottom: 10px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .container-supp-line .supp-details-column-title {
    grid-row: initial;
    -ms-grid-column-span: 2;
    grid-column: span 2
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .container-supp-line .supp-details-column-seemore {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 4;
    grid-row: 4;
    -ms-grid-row-align: initial;
    align-self: auto;
    -ms-grid-column-align: right;
    justify-self: right
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .container-supp-line .supp-details-column-description {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/span 2;
    -ms-grid-row: 5;
    -ms-grid-row-span: 1;
    grid-row: 5/6
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .container-supp-line .supp-details-column-picture {
    -ms-grid-column-span: 2;
    grid-column: span 2;
    -ms-grid-row: 2;
    grid-row: 2;
    margin-bottom: 20px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .container-supp-line .supp-details-column-select {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 3;
    -ms-grid-row-span: 2;
    grid-row: 3/span 2;
    -ms-grid-row-align: initial;
    align-self: auto;
    padding-left: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .container-supp-line .supp-details-column-quantity {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    -ms-grid-column-align: right;
    justify-self: right;
    margin-bottom: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section .section-content.options .option-details .container-supp-line.noPicture .supp-details-column-select {
    grid-column: initial;
    padding-left: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section.holiday .section-content.options[data-type=included] .section-data-text {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section.holiday .section-content.options[data-type=included] .section-data-price {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section.holiday .section-content.options[data-type=included] .img-supp {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section.options .section-content[data-type=dynamicOption] .img-supp, .SmartBP .section.options .section-content[data-type=option] .img-supp, .SmartBP .section.options .section-content[data-type=transfer] .img-supp {
    grid-column: 1/-1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    width: calc(100% + 40px);
    margin-left: -20px;
    margin-right: -20px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section.options .section-content .section-data:first-child {
    padding-top: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section.options .section-content.options .optionSixt .container .container__actions {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .section.options .section-content.options .optionSixt .container .container__actions .delete-container .added {
    float: none
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .optionSkiset .section-data-price {
    height: auto !important;
    -webkit-align-self: center !important;
    -ms-grid-row-align: center !important;
    align-self: center !important
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .optionSkiset__pack {
    margin-bottom: 10px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .PackSelectionRow {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 10px;
    margin-bottom: 20px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .PackSelectionRow__title {
    -webkit-flex: 1 0 100%;
    flex: 1 0 100%;
    margin-bottom: 5px;
    margin-right: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .PackSelectionRow__numberPicker {
    margin-left: 0;
    margin-right: auto
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Composition {
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    -ms-grid-rows: (auto) [ 4 ];
    grid-template-rows: repeat(4, auto)
  }

  .SmartBP .Composition > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .Composition > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .Composition > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .Composition > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .Composition > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .SmartBP .Composition > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .SmartBP .Composition > :nth-child(7) {
    -ms-grid-row: 4;
    -ms-grid-column: 1
  }

  .SmartBP .Composition > :nth-child(8) {
    -ms-grid-row: 4;
    -ms-grid-column: 2
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Composition__title {
    margin-right: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Composition .Composition__price {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5;
    -ms-grid-row-align: center;
    align-self: center
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Composition .Composition__img {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    margin-bottom: 10px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Composition .Composition__desc {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    margin-bottom: 10px;
    margin-left: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Composition .Composition__actions {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5;
    margin-top: 10px;
    padding-right: 5px;
    padding-left: 0;
    text-align: left
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .SummarySection--fixedPanel {
    max-width: 300px
  }
}

.SmartBP.BPStep-1 .section.holiday .section__wrapper {
  background-color: transparent
}

.SmartBP.BPStep-1 .section .section-title.subsection {
  background-color: transparent;
  padding: 0
}

@media only screen and (max-width: 767px) {
  .SmartBP.BPStep-1 .section .section-title.subsection {
    padding: 0 10px;
    margin: 60px 0 20px;
    font-size: 24px;
    line-height: 31px
  }
}

.SmartBP.BPStep-1 .section .section-title.subsection:before {
  content: none
}

.SmartBP.BPStep-1 .section.holiday .section-content--transport {
  background-color: transparent;
  padding: 0
}

@media only screen and (max-width: 767px) {
  .SmartBP.BPStep-1 .section.holiday .section-content.options .section-data:first-child, .SmartBP.BPStep-1 .section.holiday .section-title.subsection + .section-content.options .section-data {
    padding-top: 20px
  }
}

.SmartBP.BPStep-1 .section .section-content.options .section-data.optionSkiset {
  padding-bottom: 20px
}

.SmartBP.BPStep-1 .section .section-content.holiday {
  margin: 0;
  border-bottom: none;
  background-color: transparent;
  padding-bottom: 0
}

@media only screen and (min-width: 1025px) {
  .SmartBP.BPStep-1 .section .section-content.holiday {
    padding: 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP.BPStep-1 .section .section-content.holiday {
    padding-left: 10px;
    padding-right: 20px
  }
}

.SmartBP.BPStep-1 .section .section-content.holiday .section-data {
  margin: 0
}

@media only screen and (min-width: 1025px) {
  .SmartBP.BPStep-1 .section .section-content.holiday .section-data .section-data-price {
    padding-right: 20px
  }
}

.SmartBP.BPStep-1 .section.voucher .section-title.subsection {
  margin-bottom: 15px
}

.SmartBP.BPStep-1 .section.voucher .section-content.voucher {
  padding-top: 20px;
  padding-bottom: 20px;
  margin-bottom: 20px
}

.SmartBP.BPStep-1 .section.holiday .price, .SmartBP.BPStep-1 .section.options .price, .SmartBP.BPStep-1 .section.voucher .price {
  font-size: 18px;
  line-height: 22px
}

.SmartBP.BPStep-1 .section.holiday .price-insteadof, .SmartBP.BPStep-1 .section.options .price-insteadof, .SmartBP.BPStep-1 .section.voucher .price-insteadof {
  line-height: 18px
}

.SmartBP.BPStep-1 #react-smart-transport .adminData-blocks {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

@media only screen and (max-width: 1024px) {
  .SmartBP.BPStep-1 #react-smart-transport .adminData-blocks {
    margin-bottom: -10px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP.BPStep-1 #react-smart-transport .adminData-blocks {
    margin-top: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP.BPStep-1 #react-smart-transport .adminData-blocks + .CardTransport {
    margin-top: 0
  }
}

.SmartBP.BPStep-1 #react-smart-transport .adminData-block {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 13px;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 0
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Transport {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.SmartBP .ResumeTransport {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  border-radius: 2px 2px 0 0;
  padding: 10px 20px
}

@media only screen and (max-width: 1024px) {
  .SmartBP .ResumeTransport {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 10px
  }
}

.SmartBP .ResumeTransport__destination {
  font-size: 20px;
  line-height: 25px;
  position: relative;
  font-weight: 700;
  color: #1d1d1d
}

@media only screen and (max-width: 1024px) {
  .SmartBP .ResumeTransport__destination {
    display: -webkit-flex;
    display: flex;
    width: 100%;
    -webkit-flex: 0 0 100%;
    flex: 0 0 100%;
    text-align: center;
    -webkit-align-items: center;
    align-items: center
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .ResumeTransport__destination {
    width: 50%;
    -webkit-flex: 1 1 50%;
    flex: 1 1 50%;
    margin-right: auto;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding-right: 10px
  }
}

.SmartBP .ResumeTransport__destination .icon {
  font-size: 16px;
  line-height: 1;
  background-color: #f8f8f8;
  vertical-align: middle;
  border-radius: 50%;
  padding: 5px
}

@media only screen and (max-width: 1024px) {
  .SmartBP .ResumeTransport__destination .icon {
    position: absolute;
    bottom: -12px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .ResumeTransport__destination .icon {
    margin: 0 18px
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .ResumeTransport__destination .desti {
    -webkit-flex: 50%;
    flex: 50%
  }

  .SmartBP .ResumeTransport__destination .desti:first-child {
    text-align: left;
    padding-right: 22px
  }

  .SmartBP .ResumeTransport__destination .desti:last-child {
    text-align: right;
    padding-left: 22px
  }
}

.SmartBP .ResumeTransport--longPath {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-top: 14px
}

.SmartBP .ResumeTransport--longPath .ResumeTransport__destination {
  width: 100%;
  -webkit-flex: 1 0 100%;
  flex: 1 0 100%;
  margin-bottom: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

@media only screen and (max-width: 1024px) {
  .SmartBP .ResumeTransport--longPath .ResumeTransport__destination {
    display: block
  }
}

.SmartBP .ResumeTransport--longPath .ResumeTransport__destination .desti {
  padding: 0
}

@media only screen and (max-width: 1024px) {
  .SmartBP .ResumeBoundInfo {
    width: 50%;
    -webkit-flex: 0 1 50%;
    flex: 0 1 50%
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .ResumeBoundInfo {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    margin: 0 27px
  }
}

.SmartBP .ResumeBoundInfo--outbound {
  margin-left: 0
}

@media only screen and (max-width: 1024px) {
  .SmartBP .ResumeBoundInfo--outbound {
    padding-right: 22px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .ResumeBoundInfo--inbound {
    margin-right: 8px
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .ResumeBoundInfo--inbound {
    text-align: right;
    padding-left: 22px
  }
}

.SmartBP .ResumeBoundInfo__title {
  display: block;
  font-size: 12px;
  line-height: 15px;
  font-weight: 700;
  color: #666;
  text-transform: uppercase
}

.SmartBP .ResumeBoundInfo__date {
  font-size: 14px;
  line-height: 18px
}

.SmartBP .TabsTransport {
  display: -webkit-flex;
  display: flex;
  background-color: #fff
}

@media only screen and (max-width: 767px) {
  .SmartBP .TabsTransport {
    margin: 0 -10px
  }

  .SmartBP .TabsTransport.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    z-index: 7;
    border-bottom: 1px solid #d3d3d3
  }
}

.SmartBP .TabsTransport__wrapper {
  margin: 0 20px;
  border-bottom: 3px solid transparent
}

@media only screen and (max-width: 767px) {
  .SmartBP .TabsTransport__wrapper {
    margin: 0 10px;
    display: -webkit-inline-flex;
    display: inline-flex;
    width: 110px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .TabsTransport__wrapper {
    margin: 0 10px
  }
}

.SmartBP .TabsTransport__wrapper.is-current {
  border-bottom-color: #bd1343;
  transition: border-color .15s ease;
  color: #bd1343
}

.SmartBP .TabsTransport__wrapper.is-current .TabsTransport__button, .SmartBP .TabsTransport__wrapper.is-current .TabsTransport__button__icon {
  color: #bd1343
}

.SmartBP .TabsTransport__wrapper:after {
  position: relative;
  display: inline-block;
  content: "";
  top: 15%;
  right: -20px;
  width: 1px;
  height: 24px;
  border-right: 1px solid #d3d3d3
}

@media only screen and (max-width: 767px) {
  .SmartBP .TabsTransport__wrapper:after {
    top: 25%;
    right: -10px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .TabsTransport__wrapper:after {
    right: -15px
  }
}

.SmartBP .TabsTransport__wrapper:last-child:after {
  display: none
}

.SmartBP .TabsTransport__button {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: Source Sans Pro, sans-serif;
  font-weight: 700;
  font-size: 14px;
  line-height: 18px;
  color: #666;
  text-align: center;
  padding: 25px 13px 18px;
  text-transform: uppercase
}

@media only screen and (max-width: 767px) {
  .SmartBP .TabsTransport__button {
    padding: 2.5px 0 9px;
    margin: 0 10px;
    width: 100%
  }
}

.SmartBP .TabsTransport__button__icon {
  font-size: 18px;
  margin: 0 10px 0 0;
  height: 18px;
  width: 18px;
  vertical-align: middle
}

.SmartBP .TabsTransport__button__icon__suggestion-icon {
  font-size: 20px;
  margin: 0 7px 0 0;
  vertical-align: middle
}

@media only screen and (max-width: 767px) {
  .SmartBP .TabsTransport__button__icon, .SmartBP .TabsTransport__button__icon__suggestion-icon {
    display: block;
    margin: 5px auto
  }
}

.SmartBP .TabsTransport__button:hover, .SmartBP .TabsTransport__button:hover .TabsTransport__button__icon {
  color: #bd1343
}

.SmartBP .TabsTransport__button span {
  font-weight: 400;
  color: #1d1d1d
}

.SmartBP .PushProposals {
  display: -webkit-flex;
  display: flex;
  background-color: #f8f8f8;
  padding: 10px;
  margin: 20px 0;
  height: 104px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .PushProposals {
    padding: 0;
    -webkit-align-items: center;
    align-items: center
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .PushProposals__img {
    height: 100%;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
  }
}

.SmartBP .PushProposals__img img {
  max-height: 100%
}

.SmartBP .PushProposals__content {
  padding-left: 10px;
  font-size: 14px
}

@media only screen and (max-width: 1024px) {
  .SmartBP .PushProposals__content {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .PushProposals__content {
    padding: 20px
  }
}

.SmartBP .PushProposals__title {
  font-weight: 700
}

@media only screen and (min-width: 1025px) {
  .SmartBP .PushProposals__title {
    font-size: 16px
  }
}

.SmartBP .PushProposals__action {
  margin-top: auto
}

@media only screen and (min-width: 1025px) {
  .SmartBP .PushProposals__action {
    margin-top: 5px
  }
}

.SmartBP .CardTransport {
  position: relative;
  background-color: #fff;
  margin: 10px 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.SmartBP .CardTransport__main {
  position: relative
}

.SmartBP .CardTransport:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 3px;
  background-color: #bd1343;
  visibility: hidden;
  opacity: 0;
  transition: opacity .2s ease-out, width .1s ease-out;
  z-index: 4
}

.SmartBP .CardTransport.is-selected:before {
  width: 100%;
  visibility: visible;
  opacity: 1
}

.SmartBP .CardTransport.is-alone .CardTransport__radio {
  display: none
}

.SmartBP .CardTransport__header {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  padding-left: 20px
}

.SmartBP .CardTransport__radio {
  margin-top: 10px;
  display: inline-block
}

.SmartBP .CardTransport__radio:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
  pointer-events: auto
}

@media only screen and (min-width: 1025px) {
  .SmartBP .CardTransport__radio:after {
    border: 1px solid #eee;
    border-bottom-color: transparent;
    transition: all 50ms ease-out;
    top: 0;
    right: -1px;
    bottom: 0;
    left: -1px
  }

  .SmartBP .CardTransport:not(.is-selected):not(.CardTransport--skeleton) .CardTransport__radio:hover:after {
    border-color: #d3d3d3;
    transition: all .1s ease-out
  }
}

.SmartBP .CardTransport__tabsClasse {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  position: relative;
  z-index: 3;
  margin-left: auto
}

.SmartBP .CardTransport__body {
  margin-top: 8px;
  padding-left: 10px;
  padding-bottom: 17px;
  position: relative
}

.SmartBP .CardTransport__footer {
  padding: 0 20px;
  background-color: #f8f8f8
}

.SmartBP .CardTransport__footer > div {
  padding: 10px 0 0
}

.SmartBP .CardTransport__footer > div:last-child {
  padding: 10px 0
}

@media only screen and (min-width: 768px) {
  .SmartBP .CardTransport--special .CardTransport__body {
    display: -webkit-flex;
    display: flex;
    margin-top: 14px;
    padding-right: 20px
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .CardTransport--withFlag {
    margin-top: 40px
  }
}

.SmartBP .CardTransport--skeleton .CardTransport__radio {
  cursor: auto
}

.SmartBP .CardTransportDetails {
  position: relative;
  background-color: #fff;
  display: none
}

@media only screen and (max-width: 1024px) {
  .SmartBP .CardTransportDetails {
    border-top: 1px solid #eee
  }
}

.SmartBP .CardTransportDetails__animation-enter {
  display: block;
  opacity: 0
}

.SmartBP .CardTransportDetails__animation-enter-active {
  opacity: 1;
  transition: opacity .25s ease-out
}

.SmartBP .CardTransportDetails__animation-enter-done {
  display: block;
  opacity: 1
}

.SmartBP .CardTransportDetails__animation-exit, .SmartBP .CardTransportDetails__animation-exit-done {
  display: none
}

.SmartBP .CardTransportDetails__bound {
  border-bottom: 1px solid #eee;
  padding: 19px 20px 10px
}

.SmartBP .CardTransportDetails__bound:last-child {
  border-bottom: none
}

.SmartBP .TransportSpecial {
  border: 1px solid #d3d3d3;
  padding: 15px 20px
}

@media only screen and (max-width: 767px) {
  .SmartBP .TransportSpecial {
    margin: 10px 20px 0 10px
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .TransportSpecial {
    margin-top: 10px
  }
}

.SmartBP .TransportSpecial__title {
  font-weight: 700;
  font-size: 14px;
  line-height: 18px;
  margin-bottom: 5px
}

.SmartBP .TransportSpecial__title strong {
  color: #bd1343
}

.SmartBP .TransportSpecial__content {
  font-size: 12px;
  line-height: 15px
}

@media only screen and (min-width: 768px) {
  .SmartBP .AlertTransport {
    display: -webkit-flex;
    display: flex
  }
}

.SmartBP .AlertTransport__title {
  color: #bd1343
}

@media only screen and (min-width: 768px) {
  .SmartBP .AlertTransport__title {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-right: 5px
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .SmartVirtualInterlining {
    display: -webkit-flex;
    display: flex
  }
}

.SmartBP .SmartVirtualInterlining__icon {
  color: #bd1343;
  font-size: 18px;
  margin-right: 8px
}

@media only screen and (max-width: 767px) {
  .SmartBP .SmartVirtualInterlining__icon {
    float: left
  }
}

.SmartBP .SmartVirtualInterlining__title {
  font-weight: 700
}

.SmartBP .SmartVirtualInterlining__desc {
  font-style: italic
}

@media only screen and (max-width: 767px) {
  .SmartBP .SmartVirtualInterlining__desc {
    clear: left
  }
}

.SmartBP .SmartVirtualInterlining__triggerPopover {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  z-index: 3;
  vertical-align: middle;
  margin-left: 5px
}

.SmartBP .SmartVirtualInterlining__iconPopover {
  color: #666;
  font-size: 14px
}

.SmartBP .SmartVirtualInterliningDetail {
  background-color: #f8f8f8;
  padding: 5px 20px 20px
}

@media only screen and (min-width: 768px) {
  .SmartBP .SmartVirtualInterliningDetail {
    padding-left: 30px;
    padding-right: 30px
  }
}

.SmartBP .IndicatorEmpty {
  display: inline-block;
  color: transparent;
  background-color: #d3d3d3;
  height: 5px;
  width: 44px;
  vertical-align: middle
}

.SmartBP .SeeTabProposal {
  margin-top: 18px;
  text-align: center
}

.SmartBP .SeeTabProposalButton {
  background-color: transparent;
  position: relative;
  padding: 13px 28px 16px 14px;
  line-height: 1.3;
  font-size: 16px;
  font-family: Source Sans Pro, sans-serif;
  color: #bd1343;
  border: 1px solid #bd1343;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 54px;
  width: 335px;
  border-radius: 2px;
  transition: border-color .15s ease;
  display: block;
  margin: 0 auto 4px
}

@media only screen and (max-width: 365px) {
  .SmartBP .SeeTabProposalButton {
    width: 100%
  }
}

.SmartBP .SeeTabProposalButton:last-child {
  margin-bottom: 0
}

.SmartBP .SeeTabProposalButton__label {
  vertical-align: middle;
  font-weight: 700
}

.SmartBP .SeeTabProposalButton__total {
  font-weight: 400
}

.SmartBP .SeeTabProposalButton__iconTransport {
  color: #bd1343;
  font-size: 24px;
  vertical-align: middle;
  margin-right: 15px
}

@media only screen and (min-width: 768px) {
  .SmartBP .SeeTabProposalButton__iconTransport {
    margin-right: 24px
  }
}

.SmartBP .SeeTabProposalButton:hover {
  background-color: #bd1343;
  color: #fff
}

.SmartBP .SeeTabProposalButton:hover .SeeTabProposalButton__iconTransport {
  color: #fff
}

.SmartBP .SeeMoreProposal {
  text-align: center;
  margin-top: 20px
}

.SmartBP .SeeMoreProposal__btn {
  width: 240px;
  height: 44px;
  color: #bd1343;
  font-size: 14px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #bd1343;
  border-radius: 2px
}

.SmartBP .SeeMoreProposal__btn:hover {
  background-color: #bd1343;
  color: #fff
}

.SmartBP .CallToFilter, .SmartBP .NoResultFilter {
  margin-bottom: 10px;
  padding: 15px 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
  -ms-grid-columns: auto 1fr;
  grid-template-columns: auto 1fr
}

.SmartBP .CallToFilter > :first-child, .SmartBP .NoResultFilter > :first-child {
  -ms-grid-row: 1;
  -ms-grid-column: 1
}

.SmartBP .CallToFilter > :nth-child(2), .SmartBP .NoResultFilter > :nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2
}

.SmartBP .CallToFilter > :nth-child(3), .SmartBP .NoResultFilter > :nth-child(3) {
  -ms-grid-row: 2;
  -ms-grid-column: 1
}

.SmartBP .CallToFilter > :nth-child(4), .SmartBP .NoResultFilter > :nth-child(4) {
  -ms-grid-row: 2;
  -ms-grid-column: 2
}

@media only screen and (min-width: 1025px) {
  .SmartBP .CallToFilter, .SmartBP .NoResultFilter {
    -ms-grid-rows: auto auto auto;
    grid-template-rows: auto auto auto;
    -ms-grid-columns: auto 1fr;
    grid-template-columns: auto 1fr
  }

  .SmartBP .CallToFilter > :first-child, .SmartBP .NoResultFilter > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .CallToFilter > :nth-child(2), .SmartBP .NoResultFilter > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .CallToFilter > :nth-child(3), .SmartBP .NoResultFilter > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .CallToFilter > :nth-child(4), .SmartBP .NoResultFilter > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .CallToFilter > :nth-child(5), .SmartBP .NoResultFilter > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .SmartBP .CallToFilter > :nth-child(6), .SmartBP .NoResultFilter > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }
}

.SmartBP .CallToFilter__icon, .SmartBP .NoResultFilter__icon {
  color: #bd1343;
  font-size: 36px;
  margin-right: 10px;
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2/3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row-align: center;
  align-self: center
}

@media only screen and (min-width: 1025px) {
  .SmartBP .CallToFilter__icon, .SmartBP .NoResultFilter__icon {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    margin-right: 15px
  }
}

.SmartBP .CallToFilter__title, .SmartBP .NoResultFilter__title {
  font-size: 18px;
  font-weight: 700;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  margin-bottom: 5px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .CallToFilter__title, .SmartBP .NoResultFilter__title {
    margin-bottom: 0;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3
  }
}

.SmartBP .CallToFilter__text, .SmartBP .NoResultFilter__text {
  color: #666;
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2/3;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  -ms-grid-row-align: center;
  align-self: center
}

@media only screen and (min-width: 1025px) {
  .SmartBP .CallToFilter__text, .SmartBP .NoResultFilter__text {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3
  }
}

.SmartBP .CallToFilter__button, .SmartBP .NoResultFilter__button {
  -ms-grid-row: 3;
  -ms-grid-row-span: 1;
  grid-row: 3/4;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  -ms-grid-row-align: center;
  align-self: center;
  margin-top: 8px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .CallToFilter__button, .SmartBP .NoResultFilter__button {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4;
    -ms-grid-row-align: center;
    align-self: center;
    margin-top: 0;
    margin-left: 10px
  }
}

.SmartBP .AirportChangeWarning {
  color: #fff;
  padding: 10px 20px;
  background-color: #bd1343;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

.SmartBP .AirportChangeWarning__icon {
  font-size: 32px;
  margin-right: 10px
}

.SmartBP .AirportChangeWarning__text {
  font-size: 16px
}

.SmartBP .RadioBtnCheck {
  -moz-appearance: none;
  -o-apperance: none;
  -webkit-appearance: none;
  background: none;
  border: 1px solid #d3d3d3;
  font-size: inherit;
  min-width: 26px;
  height: 26px;
  line-height: 1;
  margin: 0;
  position: relative;
  vertical-align: middle;
  border-radius: 50%;
  outline: none
}

.SmartBP .RadioBtnCheck:after, .SmartBP .RadioBtnCheck:before {
  content: "";
  position: absolute;
  transition: -webkit-transform .15s cubic-bezier(.22, .61, .36, 1);
  transition: transform .15s cubic-bezier(.22, .61, .36, 1);
  transition: transform .15s cubic-bezier(.22, .61, .36, 1), -webkit-transform .15s cubic-bezier(.22, .61, .36, 1);
  border-bottom: 1.5px solid #fff;
  border-right: 1.5px solid #fff;
  bottom: 0;
  height: 11px;
  margin: auto;
  right: 9px;
  top: -3px;
  -webkit-transform: rotate(45deg) scale(0);
  transform: rotate(45deg) scale(0);
  width: 6px
}

.SmartBP .RadioBtnCheck:checked {
  border-color: #bd1343;
  background-color: #bd1343
}

.SmartBP .RadioBtnCheck:checked:before {
  -webkit-transform: rotate(45deg) scale(1);
  transform: rotate(45deg) scale(1)
}

.SmartBP .RadioBtnCheck:focus {
  border: 1px solid #bd1343
}

.SmartBP .RadioBtnCheck .disabled, .SmartBP .RadioBtnCheck[disabled] {
  opacity: .45
}

.SmartBP .RadioBtnCheck .disabled + label, .SmartBP .RadioBtnCheck[disabled] + label {
  opacity: .75
}

.SmartBP .RadioBtnCheck label {
  position: relative;
  left: -.25em;
  padding-left: .75em
}

.SmartBP .TimetableDropdown {
  z-index: 2;
  position: relative;
  min-height: 85px;
  min-width: 256px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Bound--outbound .TimetableDropdown {
    min-height: 65px
  }
}

@media only screen and (max-width: 767px) {
  .SmartBP .TimetableDropdown {
    margin: 0 auto
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .TimetableDropdown {
    margin-left: auto;
    min-width: 246px
  }
}

.SmartBP .TimetableDropdown__container {
  position: absolute;
  left: 0;
  top: 0;
  background-color: #fff
}

.SmartBP .TimetableDropdown__head {
  background-color: #8a8a8a;
  color: #fff;
  font-size: 12px;
  line-height: 15px;
  font-weight: 700;
  border-radius: 2px 2px 0 0;
  padding: 2px 5px 3px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .TimetableDropdown__head {
    margin-top: -20px
  }
}

.SmartBP .Bound--inbound .TimetableDropdown__head {
  margin-top: 0
}

.SmartBP .TimetableDropdown__schedule {
  border: 1px solid #d3d3d3;
  border-top: none
}

.SmartBP .TimetableDropdown__scheduleList {
  display: none;
  opacity: 0
}

.SmartBP .TimetableDropdown__scheduleList.show {
  display: block;
  position: relative !important;
  top: auto !important;
  left: auto !important;
  opacity: 1 !important;
  pointer-events: auto !important
}

.SmartBP .TimetableDropdown__scheduleList .Schedule {
  background-color: #f8f8f8;
  border-top: 1px solid #d3d3d3
}

.SmartBP .TimetableDropdown__scheduleList .Schedule:hover {
  background-color: #fff
}

.SmartBP .TimetableDropdown__scheduleList .Schedule .TimetableDropdown__toggleButton {
  opacity: 0
}

.SmartBP .TimetableDropdown__toggleButton {
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0)
}

.SmartBP .TimetableDropdown__toggleButton:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
  pointer-events: auto
}

.SmartBP .TimetableDropdown__icon {
  position: absolute;
  right: 6px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 24px;
  color: #666
}

.SmartBP .TimetableDropdown.is-open {
  z-index: 5
}

.SmartBP .TimetableDropdown.is-open .TimetableDropdown__container {
  box-shadow: 0 0 40px 0 rgba(0, 0, 0, .1);
  transition: box-shadow .2s ease-out
}

.SmartBP .Schedule {
  display: -webkit-flex;
  display: flex;
  position: relative;
  padding: 7px 40px 4px 10px
}

@media only screen and (max-width: 767px) {
  .SmartBP .Schedule {
    margin: 0 auto
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Schedule {
    margin-left: auto;
    margin-right: 0
  }
}

.SmartBP .StopoverInfo {
  text-align: center;
  font-size: 12px;
  line-height: 1;
  margin: 0 9px
}

.SmartBP .StopoverInfo__duration {
  color: #666;
  font-weight: 700
}

.SmartBP .StopoverInfo__path {
  margin: 7px 0 1px
}

.SmartBP .PlaceTime {
  margin-top: 10px
}

.SmartBP .PlaceTime--departure {
  text-align: right
}

.SmartBP .PlaceTime--arrival {
  text-align: left
}

.SmartBP .PlaceTime__hour {
  display: block;
  font-size: 18px;
  line-height: 23px;
  font-weight: 700;
  position: relative;
  min-width: 44px
}

.SmartBP .PlaceTime__hour sup {
  position: absolute;
  top: 4px;
  font-weight: 400;
  font-size: 12px
}

.SmartBP .PlaceTime__place {
  display: inline-block;
  font-size: 14px;
  line-height: 18px;
  position: relative;
  z-index: 3;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: Source Sans Pro, sans-serif;
  cursor: pointer
}

.SmartBP .CardTransport--skeleton .PlaceTime__place {
  cursor: auto
}

.SmartBP .PlaceTime__place mark {
  background-color: rgba(189, 19, 67, .2);
  border-radius: 2px;
  padding: 0 2px
}

.SmartBP .PlaceTime__tooltip .icon {
  vertical-align: middle;
  margin-right: 5px
}

@media only screen and (max-width: 1024px) {
  .SmartBP .TransportInfos {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto;
    margin-top: 10px;
    padding-left: 10px;
    padding-right: 20px
  }

  .SmartBP .TransportInfos > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .TransportInfos > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .TransportInfos > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .SmartBP .TransportInfos > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .TransportInfos > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .TransportInfos > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .TransportInfos {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 150px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    padding-top: 10px;
    padding-right: 20px;
    padding-bottom: 20px
  }
}

.SmartBP .Badges {
  margin-bottom: auto
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Badges {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    margin-bottom: 6px
  }
}

.SmartBP .Badges .Badge {
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-align-items: center;
  align-items: center;
  background-color: #f8f8f8;
  border-radius: 2px;
  line-height: 1;
  padding: 6px 13px
}

.SmartBP .Badges .Badge__icon {
  color: #bd1343;
  font-size: 14px;
  margin-right: 5px
}

.SmartBP .Badges .Badge__label {
  font-size: 12px
}

.SmartBP .Luggages {
  z-index: 3
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Luggages {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    -ms-grid-column-align: left;
    justify-self: left;
    -ms-grid-row-align: center;
    align-self: center
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Luggages {
    margin-bottom: 10px
  }
}

.SmartBP .SuitcaseTooltip {
  display: block
}

.SmartBP .Suitcase {
  border-radius: 2px;
  color: #666;
  background-color: transparent;
  padding: 3px 0 3px 5px;
  margin-left: 5px;
  display: inline-block;
  cursor: default
}

.SmartBP .Suitcase:first-child {
  margin-left: 0
}

.SmartBP .Suitcase__icon {
  font-size: 16px;
  vertical-align: middle;
  margin-right: 3px
}

.SmartBP .Suitcase__counter {
  font-family: Source Sans Pro, sans-serif;
  font-size: 14px;
  font-weight: 700;
  vertical-align: middle
}

.SmartBP .Suitcase__tooltip .tooltip-inner {
  text-align: left
}

.SmartBP .MoreInfos {
  font-size: 12px;
  line-height: 1;
  z-index: 3
}

@media only screen and (max-width: 1024px) {
  .SmartBP .MoreInfos {
    -ms-grid-column: 3;
    grid-column: 3/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    -ms-grid-column-align: end;
    justify-self: end;
    -ms-grid-row-align: center;
    align-self: center;
    font-size: 14px
  }
}

.SmartBP .MoreInfos__button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  color: #666;
  transition: all .1s ease-out
}

.SmartBP .MoreInfos__button:hover {
  color: #bd1343;
  transition: all .2s ease-out
}

.SmartBP .MoreInfos__icon {
  vertical-align: middle;
  margin-right: 3px
}

.SmartBP .MoreInfos__label {
  font-family: Source Sans Pro, sans-serif;
  font-weight: 700;
  vertical-align: middle
}

.SmartBP .CO2Tooltip {
  display: block
}

.SmartBP .CO2 {
  z-index: 3;
  border-radius: 2px;
  color: #666;
  background-color: transparent;
  padding: 3px 0 3px 5px;
  margin-left: 5px;
  display: inline-block;
  text-align: right
}

@media only screen and (min-width: 1025px) {
  .SmartBP .CO2 {
    padding: 3px 0 12px 5px
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .CO2 {
    -ms-grid-column: 2;
    -ms-grid-column-span: 2;
    grid-column: 2/4;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    text-align: left !important;
    -ms-grid-row-align: center;
    align-self: center
  }
}

.SmartBP .CO2:first-child {
  margin-left: 0
}

.SmartBP .CO2__counter {
  font-weight: 700
}

.SmartBP .CO2__counter, .SmartBP .CO2__counterText {
  font-family: Source Sans Pro, sans-serif;
  font-size: 14px
}

.SmartBP .CO2__tooltip .tooltip-inner {
  width: 100%;
  max-width: 500px;
  background: #fff;
  box-shadow: 0 0 25px rgba(0, 0, 0, .12)
}

.SmartBP .FlagTransport {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex: 1 0 auto;
  flex: 1 0 auto;
  vertical-align: top
}

@media only screen and (max-width: 1024px) {
  .SmartBP .FlagTransport {
    position: absolute;
    top: -30px;
    left: 0
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .FlagTransport {
    margin-left: 19px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .FlagTransport--withTooltip .FlagTransport__label:after {
    content: " - ";
    color: #666;
    font-size: 12px;
    margin-right: 2px
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .FlagTransport__badge {
    background-color: #bd1343;
    height: 30px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding: 0 16px 0 10px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .FlagTransport__badge {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center
  }
}

.SmartBP .FlagTransport__label {
  font-size: 14px;
  color: #fff;
  font-weight: 700;
  line-height: 18px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .FlagTransport__label {
    color: #1d1d1d
  }
}

.SmartBP .FlagTransport__icon {
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  margin-right: 7px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .FlagTransport__icon {
    padding-bottom: 3px;
    width: 26px;
    height: 35px;
    margin-right: 8px;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='35'%3E%3Cpath d='M0 0h26v35l-13-4-13 4z' fill='%23BD1343' fill-rule='evenodd'/%3E%3C/svg%3E")
  }
}

.SmartBP .FlagTransport__icon .icon {
  color: #fff;
  font-size: 18px
}

.SmartBP .FlagTransport__tooltip {
  font-family: Source Sans Pro, sans-serif;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #666;
  font-size: 12px;
  line-height: 15px;
  text-decoration: underline;
  z-index: 3
}

@media only screen and (max-width: 1024px) {
  .SmartBP .FlagTransport__tooltip {
    margin-left: 10px
  }
}

.SmartBP .TabClasse {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-align: center;
  padding: 5px 13px;
  line-height: 1;
  color: #666;
  background-color: #f8f8f8;
  border-top: 2px solid #d3d3d3;
  font-size: 14px;
  font-family: Source Sans Pro, sans-serif;
  cursor: pointer;
  display: inline-block;
  text-decoration: none;
  transition: all .1s ease-out
}

.SmartBP .TabClasse:hover {
  text-decoration: none;
  transition: all .2s ease-out
}

.SmartBP .TabClasse:hover:not(.is-selected) {
  background-color: #eee
}

.SmartBP .TabClasse.is-selected {
  background-color: transparent;
  border-color: #666;
  color: #1d1d1d
}

.SmartBP .CardTransport.is-selected .TabClasse.is-selected {
  cursor: auto
}

.SmartBP .TabClasse__label {
  display: block;
  text-transform: uppercase;
  font-size: 10px;
  line-height: 1
}

.SmartBP .TabClasse__price {
  display: block;
  font-size: 18px;
  line-height: 1;
  font-weight: 700;
  white-space: nowrap
}

.SmartBP .Bound {
  display: -webkit-flex;
  display: flex;
  padding-left: 10px;
  padding-right: 10px
}

@media only screen and (max-width: 767px) {
  .SmartBP .Bound {
    -webkit-flex-direction: column;
    flex-direction: column;
    margin: 15px 0
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .Bound {
    -webkit-align-items: center;
    align-items: center;
    margin: 7px 10px 7px 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .Bound {
    margin-right: 0
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .CardTransport--special .Bound {
    margin-top: 25px;
    margin-bottom: 25px
  }
}

.SmartBP .Bound.Bound--outbound {
  margin-top: 0
}

.SmartBP .Bound.Bound--inbound {
  margin-bottom: 0
}

.SmartBP .Bound--intermediate {
  background-color: #f8f8f8;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 5px;
  padding-bottom: 5px
}

@media only screen and (max-width: 767px) {
  .SmartBP .BoundInfos {
    line-height: 14px;
    margin-bottom: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .BoundInfos {
    width: 195px
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .CardTransport--special .BoundInfos {
    width: 120px
  }
}

.SmartBP .BoundInfos__boundWay {
  font-size: 12px;
  font-weight: 700;
  line-height: 1
}

@media only screen and (max-width: 767px) {
  .SmartBP .CardTransport--withInternalFlight .BoundInfos__boundWay {
    display: block;
    margin-bottom: 3px
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .BoundInfos__boundWay {
    display: block
  }
}

.SmartBP .Bound--intermediate .BoundInfos__boundWay {
  display: none
}

.SmartBP .BoundInfos__boundWay__transportType {
  font-weight: 400
}

.SmartBP .BoundInfos__date {
  color: #666;
  font-weight: 700;
  font-size: 12px;
  line-height: 15px;
  display: none
}

.SmartBP .CardTransport--withInternalFlight .BoundInfos__date {
  display: inline
}

@media only screen and (min-width: 768px) {
  .SmartBP .CardTransport--withInternalFlight .BoundInfos__date {
    display: block
  }
}

.SmartBP .BoundInfos__logo {
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle
}

@media only screen and (max-width: 767px) {
  .SmartBP .BoundInfos__logo {
    float: left
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .BoundInfos__logo {
    margin-top: 5px
  }
}

.SmartBP .BoundInfos__logo img {
  width: 30px;
  height: 30px
}

.SmartBP .Bound--hasMultiCompanies .BoundInfos__logo img, .SmartBP .CardTransport--special .BoundInfos__logo img {
  width: 15px;
  height: 15px;
  vertical-align: top
}

.SmartBP .Bound--hasMultiCompanies .BoundInfos__logo img:nth-child(2), .SmartBP .CardTransport--special .BoundInfos__logo img:nth-child(2) {
  margin-top: 15px
}

.SmartBP .Bound--hasMultiCompanies .BoundInfos__logo .icon, .SmartBP .CardTransport--special .BoundInfos__logo .icon {
  color: #bd1343;
  font-size: 24px
}

.SmartBP .BoundInfos__name {
  font-size: 14px;
  line-height: 1;
  vertical-align: middle
}

@media only screen and (max-width: 767px) {
  .SmartBP .BoundInfos__name {
    display: block
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .BoundInfos__name {
    display: inline-block;
    max-width: 150px
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .BoundInfos__name {
    max-width: 95px
  }
}

.SmartBP .CardTransport--skeleton .BoundInfos__name {
  width: 100%
}

.SmartBP .BoundDetails__title {
  position: relative;
  font-weight: 700;
  font-size: 16px;
  line-height: 20px
}

.SmartBP .BoundDetails__title:before {
  content: "";
  background-color: #bd1343;
  border-left: 3px solid #bd1343;
  height: 20px;
  width: 1px;
  vertical-align: sub;
  display: block;
  position: absolute;
  top: 1px;
  left: -20px
}

.SmartBP .BoundDetails__travelTime {
  margin-top: 20px;
  margin-left: 70px;
  color: #666
}

.SmartBP .BoundDetails__travelTime strong {
  color: #1d1d1d
}

.SmartBP .LuggageDetails {
  margin-left: 70px;
  margin-top: 15px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .LuggageDetails {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center
  }
}

.SmartBP .LuggageDetails .LuggageDetail {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin-right: 20px
}

.SmartBP .LuggageDetails .LuggageDetail:last-child {
  margin-right: 0
}

.SmartBP .LuggageDetails .LuggageDetail--tooltip {
  color: #666
}

.SmartBP .LuggageDetails .LuggageDetail--tooltip .LuggageDetail__text {
  text-decoration: underline
}

.SmartBP .LuggageDetails .LuggageDetail--tooltip .LuggageDetail__text:not(.is-included) {
  cursor: pointer;
  text-decoration: underline
}

.SmartBP .LuggageDetails .LuggageDetail__icon {
  font-size: 16px;
  margin-right: 5px
}

.SmartBP .Segment {
  display: -ms-grid;
  display: grid;
  margin: 20px 0 10px
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Segment {
    -ms-grid-rows:(auto) [ 5 ];
    grid-template-rows: repeat(5, auto);
    -ms-grid-columns: 62px 30px 1fr auto;
    grid-template-columns: 62px 30px 1fr auto
  }

  .SmartBP .Segment > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .Segment > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .Segment > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .SmartBP .Segment > :nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-column: 4
  }

  .SmartBP .Segment > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .Segment > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .Segment > :nth-child(7) {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }

  .SmartBP .Segment > :nth-child(8) {
    -ms-grid-row: 2;
    -ms-grid-column: 4
  }

  .SmartBP .Segment > :nth-child(9) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .SmartBP .Segment > :nth-child(10) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .SmartBP .Segment > :nth-child(11) {
    -ms-grid-row: 3;
    -ms-grid-column: 3
  }

  .SmartBP .Segment > :nth-child(12) {
    -ms-grid-row: 3;
    -ms-grid-column: 4
  }

  .SmartBP .Segment > :nth-child(13) {
    -ms-grid-row: 4;
    -ms-grid-column: 1
  }

  .SmartBP .Segment > :nth-child(14) {
    -ms-grid-row: 4;
    -ms-grid-column: 2
  }

  .SmartBP .Segment > :nth-child(15) {
    -ms-grid-row: 4;
    -ms-grid-column: 3
  }

  .SmartBP .Segment > :nth-child(16) {
    -ms-grid-row: 4;
    -ms-grid-column: 4
  }

  .SmartBP .Segment > :nth-child(17) {
    -ms-grid-row: 5;
    -ms-grid-column: 1
  }

  .SmartBP .Segment > :nth-child(18) {
    -ms-grid-row: 5;
    -ms-grid-column: 2
  }

  .SmartBP .Segment > :nth-child(19) {
    -ms-grid-row: 5;
    -ms-grid-column: 3
  }

  .SmartBP .Segment > :nth-child(20) {
    -ms-grid-row: 5;
    -ms-grid-column: 4
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Segment {
    -ms-grid-rows:(auto) [ 3 ];
    grid-template-rows: repeat(3, auto);
    -ms-grid-columns: 62px 30px 270px 1fr;
    grid-template-columns: 62px 30px 270px 1fr
  }

  .SmartBP .Segment > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .Segment > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .Segment > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .SmartBP .Segment > :nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-column: 4
  }

  .SmartBP .Segment > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .Segment > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .Segment > :nth-child(7) {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }

  .SmartBP .Segment > :nth-child(8) {
    -ms-grid-row: 2;
    -ms-grid-column: 4
  }

  .SmartBP .Segment > :nth-child(9) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .SmartBP .Segment > :nth-child(10) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .SmartBP .Segment > :nth-child(11) {
    -ms-grid-row: 3;
    -ms-grid-column: 3
  }

  .SmartBP .Segment > :nth-child(12) {
    -ms-grid-row: 3;
    -ms-grid-column: 4
  }
}

.SmartBP .Segment .Segment__transportType {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  grid-row: 1/3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2
}

.SmartBP .Segment .Segment__transportType__icon {
  font-size: 24px;
  color: #666;
  margin-left: 10px
}

.SmartBP .Segment .Segment__logo {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  padding-right: 10px
}

.SmartBP .Segment .Segment__img {
  width: 20px;
  height: 20px
}

.SmartBP .Segment .Segment__detail {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  -ms-grid-column: 3;
  -ms-grid-column-span: 1;
  grid-column: 3/4;
  line-height: 18px
}

.SmartBP .Segment .Segment__classe {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  -ms-grid-column: 4;
  -ms-grid-column-span: 1;
  grid-column: 4/5;
  font-weight: 700;
  font-size: 12px;
  line-height: 18px
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Segment .Segment__schedule {
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
    grid-column: 3/5
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Segment .Segment__schedule {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4;
    margin: 3px 0
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Segment .Segment__schedule.way-departure {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Segment .Segment__schedule.way-departure {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Segment .Segment__schedule.way-arrival {
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4/5
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Segment .Segment__schedule.way-arrival {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4
  }
}

.SmartBP .Segment .Segment__time {
  font-size: 18px;
  font-weight: 700;
  line-height: 23px;
  vertical-align: middle;
  margin-right: 8px
}

.SmartBP .Segment .Segment__date {
  color: #666;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  vertical-align: middle
}

.SmartBP .Segment .Segment__location {
  line-height: 18px;
  -webkit-align-self: center;
  -ms-grid-row-align: center;
  align-self: center
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Segment .Segment__location {
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
    grid-column: 3/5;
    margin-bottom: 8px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Segment .Segment__location {
    -ms-grid-column: 4;
    -ms-grid-column-span: 1;
    grid-column: 4/5
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Segment .Segment__location.way-departure {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Segment .Segment__location.way-departure {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Segment .Segment__location.way-arrival {
    -ms-grid-row: 5;
    -ms-grid-row-span: 1;
    grid-row: 5/6
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Segment .Segment__location.way-arrival {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4
  }
}

.SmartBP .Segment .Segment__travelTime {
  -ms-grid-row: 2;
  -ms-grid-row-span: 3;
  grid-row: 2/5;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row-align: center;
  align-self: center;
  color: #666;
  font-weight: 700
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Segment .Segment__travelTime {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    grid-row: 2/4
  }
}

.SmartBP .Segment .Segment__path {
  -ms-grid-row: 2;
  -ms-grid-row-span: 3;
  grid-row: 2/5;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  -ms-grid-row-align: center;
  align-self: center;
  -ms-grid-column-align: center;
  justify-self: center;
  margin-right: 10px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Segment .Segment__path {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    grid-row: 2/4
  }
}

.SmartBP .Segment .Segment__path .Path {
  vertical-align: middle
}

.SmartBP .SegmentStopover {
  margin: 20px 0 20px 70px;
  padding: 10px 0;
  border-top: 1px dashed #d3d3d3;
  border-bottom: 1px dashed #d3d3d3;
  color: #666
}

.SmartBP .ServiceIncluded {
  background-color: #f8f8f8;
  margin-left: 70px;
  margin-bottom: 10px;
  padding: 10px
}

.SmartBP .ServiceIncluded + .SegmentStopover {
  margin-top: 8px
}

.SmartBP .ServiceIncluded__title {
  color: #bd1343;
  margin-right: 10px
}

.SmartBP .ServiceIncluded__icon {
  margin-right: 5px;
  font-size: 20px;
  vertical-align: middle
}

.SmartBP .ServiceIncluded__label {
  font-size: 14px;
  line-height: 18px;
  text-transform: uppercase
}

.SmartBP .ServiceIncluded__label, .SmartBP .ServiceIncluded__service {
  vertical-align: middle;
  font-weight: 700
}

.SmartBP .Lodging__infraTitle {
  color: #666;
  font-size: 18px;
  margin: 15px 0 10px
}

.SmartBP .Lodging__option {
  background-color: #fff;
  margin-bottom: 5px;
  position: relative
}

.SmartBP .Lodging__option.is-selected {
  margin-bottom: 10px
}

.SmartBP .Lodging__option:last-child {
  margin-bottom: 0
}

.SmartBP .Lodging__option:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 3px;
  background-color: #bd1343;
  opacity: 0;
  transition: opacity .2s ease-out, width .1s ease-out;
  z-index: 4
}

.SmartBP .Lodging__option.is-selected:before {
  width: 100%;
  opacity: 1
}

.SmartBP .Lodging__distribution {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: stretch;
  align-items: stretch;
  padding: 20px;
  margin-bottom: 10px
}

.SmartBP .Lodging__distribution a {
  position: relative;
  z-index: 3
}

.SmartBP .Lodging__label {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding-right: 10px;
  width: 100%
}

.SmartBP .Lodging__details {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: stretch;
  align-items: stretch;
  padding: 0;
  -webkit-flex: none;
  flex: none;
  -webkit-order: 1;
  order: 1;
  -webkit-align-self: stretch;
  align-self: stretch;
  -webkit-flex-grow: 0;
  flex-grow: 0;
  margin-top: 20px;
  border: 1px solid #fff;
  border-radius: 2px
}

.SmartBP .Lodging__details__alignRight, .SmartBP .Lodging__details__alignRight .Lodging__actions {
  -webkit-justify-content: flex-end;
  justify-content: flex-end
}

.SmartBP .Lodging__details:not(.personnalized) .Lodging__title {
  display: none
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Lodging__details {
    -webkit-flex-direction: column;
    flex-direction: column;
    margin-top: 10px
  }
}

.SmartBP .Lodging__add_rooms {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  font-family: Source Sans Pro;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 20px;
  width: 100%;
  cursor: pointer
}

.SmartBP .Lodging__list .Lodging__details.personnalized, .SmartBP .Lodging__list .Lodging__details:not(:only-child) {
  border: 1px solid #eee
}

.SmartBP .Lodging__list .Lodging__details.personnalized .Lodging__content, .SmartBP .Lodging__list .Lodging__details:not(:only-child) .Lodging__content {
  padding: 5px 0
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Lodging__list .Lodging__details.personnalized .Lodging__personnalized, .SmartBP .Lodging__list .Lodging__details:not(:only-child) .Lodging__personnalized {
    padding: 10px
  }
}

.SmartBP .Lodging__list .Lodging__details.personnalized .Lodging__title, .SmartBP .Lodging__list .Lodging__details:not(:only-child) .Lodging__title {
  display: block
}

.SmartBP .Lodging__personnalizedPicture {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  padding: 35px 15px;
  position: static;
  height: 130px;
  left: 0;
  top: 0;
  background: #f8f8f8;
  border-radius: 2px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Lodging__personnalizedPicture {
    width: 252px
  }
}

.SmartBP .Lodging__iconPlus {
  position: absolute;
  font-weight: 400;
  font-size: 28px;
  line-height: 24px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  text-align: center;
  color: #1d1d1d
}

.SmartBP .Lodging__cercle {
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background: #fff;
  -webkit-justify-content: center;
  justify-content: center
}

.SmartBP .Lodging__content {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -webkit-flex: none;
  flex: none;
  padding-top: 10px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Lodging__content {
    width: 360px;
    margin-left: 10px;
    padding: 0
  }
}

.SmartBP .Lodging__content .Lodging__title {
  margin-bottom: 5px
}

.SmartBP .Lodging__button {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: center;
  align-items: center;
  padding: 13px 20px;
  background: #8a8a8a;
  border-radius: 2px;
  -webkit-flex: none;
  flex: none;
  -webkit-order: 1;
  order: 1;
  -webkit-flex-grow: 0;
  flex-grow: 0;
  margin-top: 10px;
  font-style: normal;
  font-weight: 700;
  font-size: 14px;
  line-height: 18px;
  text-align: center;
  color: #fff
}

.SmartBP .Lodging__button:hover {
  text-decoration: underline
}

.SmartBP .Lodging__validation {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  font-size: 13px;
  padding-top: 10px
}

@media only screen and (max-width: 767px) {
  .SmartBP .Lodging__validation {
    -webkit-flex-direction: column;
    flex-direction: column;
    padding-top: 10px
  }
}

.SmartBP .Lodging__validationWarning {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

.SmartBP .Lodging__validationWarning i.line-icon-exclamation-triangle {
  margin: 0 10px;
  font-size: 32px
}

.SmartBP .Lodging__validateButton {
  padding: 13px 20px;
  position: relative;
  background: #1d1d1d;
  border-radius: 2px;
  margin-top: 10px;
  font-weight: 700;
  line-height: 18px;
  text-align: center;
  color: #fff;
  float: right;
  width: 215px
}

.SmartBP .Lodging__validateButton:disabled {
  color: #d3d3d3;
  background: #eee;
  cursor: not-allowed
}

@media only screen and (max-width: 767px) {
  .SmartBP .Lodging__validateButton {
    width: 100%
  }
}

.SmartBP .Lodging__textDescription {
  position: static;
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 18px;
  color: #666;
  -webkit-flex: none;
  flex: none;
  -webkit-order: 0;
  order: 0;
  -webkit-align-self: stretch;
  -ms-grid-row-align: stretch;
  align-self: stretch;
  -webkit-flex-grow: 1;
  flex-grow: 1
}

.SmartBP .Lodging__cardList {
  margin-top: 20px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Lodging__cardList {
    max-height: 600px;
    overflow-y: scroll;
    scroll-padding: 0 0 0 0;
    -webkit-scroll-snap-type: both mandatory;
    -ms-scroll-snap-type: both mandatory;
    scroll-snap-type: both mandatory
  }

  .SmartBP .Lodging__cardList:last-child {
    scroll-snap-align: end
  }

  @supports (-moz-appearance: none) {
    .SmartBP .Lodging__cardList {
      -webkit-scroll-snap-type: none;
      -ms-scroll-snap-type: none;
      scroll-snap-type: none
    }
  }
}

.SmartBP .Lodging__card {
  border: 1px solid #eee;
  border-radius: 2px;
  margin-bottom: 10px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Lodging__card {
    scroll-margin-block: 0;
    scroll-padding-block: 0;
    scroll-snap-align: start;
    scroll-snap-stop: revert
  }
}

.SmartBP .Lodging__radio {
  margin-right: 10px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .Lodging__radio {
    margin-right: 20px
  }

  .SmartBP .Lodging__radio:after {
    border: 1px solid #eee;
    transition: all 50ms ease-out;
    top: 0;
    right: -1px;
    bottom: 0;
    left: -1px
  }

  .Lodging__option.is-selected .Lodging__radio:after {
    border: none
  }

  .SmartBP .Lodging__radio:hover:after {
    border-color: #d3d3d3;
    transition: all .1s ease-out
  }
}

.SmartBP .Lodging__radio:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto
}

.SmartBP .Lodging__title {
  font-style: normal;
  font-weight: 700;
  font-size: 16px;
  line-height: 20px;
  -webkit-align-items: center;
  align-items: center;
  margin-right: auto;
  color: #1d1d1d
}

.SmartBP .Lodging__custom_title {
  margin: auto;
  font-family: Georgia, Times New Roman, Times, serif;
  font-style: italic;
  font-weight: 400;
  font-size: 24px;
  line-height: 27px;
  padding: 10px 0 0
}

@media only screen and (max-width: 767px) {
  .SmartBP .Lodging__custom_title {
    font-family: Source Sans Pro, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
    text-align: center;
    text-transform: uppercase;
    padding: 0 0 20px;
    font-style: normal
  }
}

.SmartBP .Lodging__scarcity {
  color: #f99b1c;
  font-weight: 400;
  font-size: 14px
}

.SmartBP .Lodging__price {
  margin-left: 20px
}

.Lodging__distribution.is-included .Lodging__price {
  color: #bd1343
}

.SmartBP .Lodging .Lodging__price .price {
  font-size: 18px
}

.SmartBP .Lodging__custom-price {
  position: absolute;
  top: 20px;
  right: 20px;
  text-align: right;
  margin-right: 10px
}

.SmartBP .Lodging__property {
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 5px;
  margin: 0 5px 5px 0;
  border: 1px solid #8a8a8a;
  border-radius: 2px
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Lodging__property:last-child {
    margin-bottom: 30px
  }
}

.SmartBP .Lodging__property i:last-child {
  margin-right: 5px
}

.SmartBP .Lodging__property i.line-icon-family-adult {
  letter-spacing: -7px
}

.SmartBP .Lodging__property i.line-icon-family-adult:last-child {
  margin-right: 8px
}

.SmartBP .Lodging__actions {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: center
}

@media only screen and (max-width: 767px) {
  .SmartBP .Lodging__actions {
    -webkit-align-items: flex-end;
    align-items: flex-end
  }
}

.SmartBP .Lodging__actions .option-quantity-selector {
  display: inline-table;
  margin: 0 0 0 10px
}

.SmartBP .Lodging__moreDetails {
  font-weight: 700;
  text-decoration: underline;
  color: #1d1d1d
}

@media only screen and (max-width: 1024px) {
  .SmartBP .Lodging__leftSide {
    margin-left: auto
  }
}

.SmartBP .Lodging__quantity {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  width: 100%;
  -webkit-justify-content: flex-end;
  justify-content: flex-end
}

@media only screen and (max-width: 767px) {
  .SmartBP .Lodging__separator_slotA_roomType {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em -20px;
    padding: 0
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .Lodging__separator {
    height: 3px;
    width: 20px;
    background-color: #bd1343;
    display: block;
    margin: 15px auto
  }
}

.SmartBP .BoardType {
  border: none;
  background-color: #fff
}

.SmartBP .BoardType .BoardType__infra {
  padding: 20px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .BoardType .BoardType__infra {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto;
    -ms-grid-columns: 70px 1fr;
    grid-template-columns: 70px 1fr
  }

  .SmartBP .BoardType .BoardType__infra > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .BoardType .BoardType__infra > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .BoardType .BoardType__infra > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .BoardType .BoardType__infra > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }
}

.SmartBP .BoardType .BoardType__infra .BoardType__title {
  font-size: 16px;
  font-weight: 700
}

@media only screen and (max-width: 1024px) {
  .SmartBP .BoardType .BoardType__infra .BoardType__title {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .BoardType .BoardType__infra .BoardType__title {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .BoardType .BoardType__infra .BoardType__picto {
    display: inline-block;
    vertical-align: middle;
    width: 32px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .BoardType .BoardType__infra .BoardType__picto {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row-align: start;
    align-self: start;
    margin-right: 20px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .BoardType .BoardType__infra .BoardType__optionList {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3
  }
}

.SmartBP .BoardType__option {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin: 4px 0
}

.SmartBP .BoardType__option:last-child {
  margin-bottom: 0
}

.SmartBP .BoardType__label {
  margin-right: auto
}

.SmartBP .BoardType__label input[type=radio] + label {
  vertical-align: middle
}

.SmartBP .BoardType__price {
  margin-left: auto;
  color: #666
}

.BoardType__option.is-selected .BoardType__price {
  color: #1d1d1d
}

.BoardType__option.is-included .BoardType__price {
  color: #bd1343
}

input[type=checkbox].BoardType__input, input[type=radio].BoardType__input {
  margin-right: 10px
}

.SmartBP .Ancillaries {
  background-color: #f8f8f8;
  border: 1px dashed #d3d3d3
}

.SmartBP .AncillariesLuggage {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
  -ms-grid-columns: auto 1fr auto;
  grid-template-columns: auto 1fr auto;
  padding: 15px 20px 20px;
  position: relative
}

.SmartBP .AncillariesLuggage > :first-child {
  -ms-grid-row: 1;
  -ms-grid-column: 1
}

.SmartBP .AncillariesLuggage > :nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2
}

.SmartBP .AncillariesLuggage > :nth-child(3) {
  -ms-grid-row: 1;
  -ms-grid-column: 3
}

.SmartBP .AncillariesLuggage > :nth-child(4) {
  -ms-grid-row: 2;
  -ms-grid-column: 1
}

.SmartBP .AncillariesLuggage > :nth-child(5) {
  -ms-grid-row: 2;
  -ms-grid-column: 2
}

.SmartBP .AncillariesLuggage > :nth-child(6) {
  -ms-grid-row: 2;
  -ms-grid-column: 3
}

@media only screen and (min-width: 1025px) {
  .SmartBP .AncillariesLuggage {
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto;
    -ms-grid-columns: auto 1fr auto;
    grid-template-columns: auto 1fr auto;
    padding: 20px;
    margin-bottom: 10px
  }

  .SmartBP .AncillariesLuggage > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .AncillariesLuggage > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .AncillariesLuggage > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .SmartBP .AncillariesLuggage > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .AncillariesLuggage > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .AncillariesLuggage > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__title {
  font-size: 18px;
  font-weight: 700;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row-align: end;
  align-self: end
}

@media only screen and (max-width: 1024px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__title {
    margin-right: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__title {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3
  }
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__picto {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  -ms-grid-row-align: end;
  align-self: end
}

@media only screen and (min-width: 1025px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__picto {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row-align: center;
    align-self: center;
    margin-right: 20px
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__picto img {
    width: 33px
  }
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__desc {
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2/3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3
}

@media only screen and (max-width: 1024px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__desc {
    margin-top: 5px;
    margin-right: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__desc {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3
  }
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__titleways {
  margin-left: 3px;
  color: #666 !important
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__included {
  color: #bd1343;
  font-weight: bolder
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__rates {
  line-height: 14px;
  text-align: right;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  -ms-grid-column: 3;
  -ms-grid-column-span: 1;
  grid-column: 3/4
}

@media only screen and (max-width: 1024px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__rates {
    margin-right: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__rates {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4
  }
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__priceFrom {
  font-size: 12px;
  color: #666
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__price {
  font-size: 18px;
  font-weight: 700
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__ways {
  font-size: 12px;
  color: #666
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__action {
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2/3;
  -ms-grid-column: 3;
  -ms-grid-column-span: 1;
  grid-column: 3/4
}

@media only screen and (max-width: 1024px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__action {
    text-align: right;
    -webkit-align-self: end;
    -ms-grid-row-align: end;
    align-self: end
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .AncillariesLuggage .AncillariesLuggage__action {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4;
    margin-top: 6px
  }
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__buttonArrow {
  font-size: 24px;
  color: #666
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__buttonArrow:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
  pointer-events: auto
}

.SmartBP .AncillariesLuggage .AncillariesLuggage__buttonArrow:hover {
  color: #1d1d1d
}

.SmartBP .AncillariesLuggageModal__title {
  text-align: center;
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 32px;
  font-style: italic;
  margin-bottom: 30px
}

.SmartBP .AncillariesLuggageModal__subtitle {
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px
}

@media only screen and (min-width: 768px) {
  .SmartBP .AncillariesLuggageModal__subtitle {
    margin-bottom: 40px
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .AncillariesLuggageModal__content {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: stretch;
    align-items: stretch
  }
}

.SmartBP .AncillariesLuggageModal__bagSelection {
  text-align: center;
  margin: 50px 0
}

@media only screen and (min-width: 768px) {
  .SmartBP .AncillariesLuggageModal__bagSelection {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    padding: 0 20px
  }
}

@media only screen and (max-width: 767px) {
  .SmartBP .AncillariesLuggageModal__bagSelection:first-child {
    margin-top: 0
  }

  .SmartBP .AncillariesLuggageModal__bagSelection:last-child {
    margin-bottom: 0
  }
}

.SmartBP .AncillariesLuggageModal__footer {
  margin-top: 40px
}

.SmartBP .AncillariesLuggageModal__action {
  text-align: center
}

.SmartBP .AncillariesLuggageModalAlert {
  background-color: #f8f8f8;
  padding: 15px 10px 10px;
  margin-bottom: 10px
}

@media only screen and (min-width: 768px) {
  .SmartBP .AncillariesLuggageModalAlert {
    padding: 15px 20px 10px
  }
}

.SmartBP .AncillariesLuggageModalAlert__header {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-bottom: 10px
}

.SmartBP .AncillariesLuggageModalAlert__title {
  font-size: 16px;
  font-weight: 700
}

.SmartBP .AncillariesLuggageModalAlert__icon {
  width: 45px;
  -webkit-flex: 0 0 45px;
  flex: 0 0 45px
}

.SmartBP .AncillariesLuggageModalAlert__icon .icon {
  color: #bd1343;
  font-size: 32px
}

.SmartBP .AncillariesLuggageModalAlert__note {
  font-size: 12px;
  font-style: italic
}

@media only screen and (min-width: 768px) {
  .SmartBP .AncillariesLuggageModalAlert__note {
    margin-left: 45px
  }
}

.SmartBP .AncillariesLuggageModalAlert__detail {
  margin-bottom: 10px
}

@media only screen and (min-width: 768px) {
  .SmartBP .AncillariesLuggageModalAlert__detail {
    margin-left: 45px
  }
}

.SmartBP .AncillariesLuggageModalAlert__detailTitle {
  font-weight: 700;
  color: #666
}

.SmartBP .AncillariesLuggageModalAlert__detailContent {
  margin-bottom: 5px
}

@media only screen and (max-width: 767px) {
  .SmartBP .AncillariesLuggageModalAlert__detailContent span {
    display: block
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .AncillariesLuggageModalAlert__detailContent span:last-child:before {
    content: " \2014   "
  }
}

.SmartBP .BagSelection.not-allowed {
  opacity: .3;
  white-space: nowrap;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%)
}

@media only screen and (max-width: 767px) {
  .SmartBP .BagSelection {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto;
    -ms-grid-columns: 100px 1fr auto;
    grid-template-columns: 100px 1fr auto
  }

  .SmartBP .BagSelection > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .BagSelection > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .BagSelection > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .SmartBP .BagSelection > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .BagSelection > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .BagSelection > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }
}

@media only screen and (max-width: 365px) {
  .SmartBP .BagSelection {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto;
    -ms-grid-columns: 70px 1fr auto;
    grid-template-columns: 70px 1fr auto
  }

  .SmartBP .BagSelection > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .SmartBP .BagSelection > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .SmartBP .BagSelection > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .SmartBP .BagSelection > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .SmartBP .BagSelection > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .SmartBP .BagSelection > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }
}

.SmartBP .BagSelection__title {
  font-weight: 700;
  font-size: 17px !important;
  white-space: nowrap;
  max-width: 140px
}

@media only screen and (max-width: 767px) {
  .SmartBP .BagSelection__title {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    text-align: left;
    -ms-grid-row-align: end;
    align-self: end
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .BagSelection__title {
    font-size: 18px
  }
}

.SmartBP .BagSelection__weight {
  font-weight: 400;
  font-size: 14px;
  white-space: nowrap
}

@media only screen and (max-width: 767px) {
  .SmartBP .BagSelection__weight.is-empty {
    display: none
  }
}

@media only screen and (max-width: 767px) {
  .SmartBP .BagSelection__weight:not(.is-empty):before {
    content: " - "
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .BagSelection__weight {
    display: block
  }
}

@media only screen and (max-width: 767px) {
  .SmartBP .BagSelection__picto {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    padding-right: 20px;
    -ms-grid-row-align: center;
    align-self: center
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .BagSelection__picto {
    margin-top: 21px
  }
}

.SmartBP .BagSelection__price {
  font-size: 18px;
  font-weight: 700;
  margin-top: 15px
}

@media only screen and (max-width: 767px) {
  .SmartBP .BagSelection__price {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4
  }
}

.SmartBP .BagSelection__price.is-included {
  color: #bd1343
}

.SmartBP .BagSelection__price.not-selected {
  color: #666
}

.SmartBP .BagSelection__numberPicker {
  margin-top: 10px
}

@media only screen and (max-width: 767px) {
  .SmartBP .BagSelection__numberPicker {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    text-align: left
  }
}

@media only screen and (max-width: 767px) {
  .SmartBP .BagSelection--handbag .BagSelection__picto img {
    height: auto;
    display: block
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .BagSelection--holdbag .BagSelection__picto {
    margin-top: 21px
  }
}

.SmartBP .ProposalsPanelFilters {
  padding-bottom: 20px
}

@media only screen and (min-width: 1025px) {
  .SmartBP .ProposalsPanelFilters {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    background-color: #fff;
    border-top: 1px solid #eee;
    padding-bottom: 0
  }
}

.SmartBP .FilterDropdown__button {
  position: relative;
  padding: 7px 17px 9px;
  font-weight: 700;
  color: #555;
  border-top: 2px solid transparent;
  background-color: #fff;
  font-family: Source Sans Pro, sans-serif;
  font-size: 14px
}

.SmartBP .FilterDropdown__button .icon {
  color: #666;
  vertical-align: middle;
  margin-left: 5px
}

.SmartBP .FilterDropdown__button .is-active {
  color: #000
}

.SmartBP .FilterDropdown__menu {
  outline: none
}

.SmartBP .FilterDropdown__menu.dropdown-menu {
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, .15);
  padding: 18px 20px
}

.SmartBP .FilterDropdown:last-child .FilterDropdown__menu {
  right: 0 !important;
  left: auto !important
}

.SmartBP .FilterDropdown.show .FilterDropdown__button {
  border-color: #bd1343;
  color: #1d1d1d;
  z-index: 1001
}

.SmartBP .FilterDropdown.show .FilterDropdown__button .icon {
  color: #1d1d1d
}

.SmartBP .FilterDropdown__container li {
  margin-bottom: 12px;
  font-size: 14px;
  display: -webkit-flex;
  display: flex
}

.SmartBP .FilterDropdown__container li:last-child {
  margin-bottom: 0
}

.SmartBP .FilterDropdown__container li input {
  margin-right: 10px;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto
}

.SmartBP .FilterDropdownSchedule__title {
  font-size: 16px
}

.SmartBP .FilterDropdownSchedule__range {
  margin-bottom: 20px
}

.SmartBP .FilterDropdownSchedule__range:last-child {
  margin-bottom: 0
}

.SmartBP .FilterDropdownSchedule__range__title {
  color: #666;
  font-size: 14px;
  font-weight: 700;
  text-transform: capitalize
}

.SmartBP .FilterDropdownSchedule .slider-range {
  margin-top: 15px
}

.SmartBP .FiltersSummary {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: baseline;
  align-items: baseline;
  margin-top: 5px;
  margin-bottom: 20px
}

@media only screen and (max-width: 1024px) {
  .SmartBP .FiltersSummary {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }
}

.SmartBP .FiltersSummary__resultNumber {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  color: #666
}

@media only screen and (min-width: 1025px) {
  .SmartBP .FiltersSummary__resultNumber {
    margin-right: 20px
  }
}

@media only screen and (max-width: 1024px) {
  .SmartBP .FiltersSummary__tags {
    -webkit-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%
  }
}

.SmartBP .FiltersSummary__action {
  margin-left: auto
}

@media only screen and (min-width: 1025px) {
  .SmartBP .FiltersSummary__action {
    -webkit-order: 1;
    order: 1
  }
}

@media only screen and (min-width: 1025px) {
  .SmartBP .FiltersSummary__action .button {
    margin-left: 20px
  }
}

.SmartBP .TagFilter {
  padding-left: 6px;
  padding-right: 4px;
  margin: 2.5px
}

.SmartBP .TagFilter .icon {
  vertical-align: middle
}

.SmartBP .FiltersButtonMobile {
  background-color: #fff;
  border-top: 1px solid #eee
}

.SmartBP .FiltersButtonMobile .button {
  padding: 7px;
  width: 100%
}

.SmartBP .FiltersButtonMobile .icon {
  vertical-align: text-top;
  font-size: 20px;
  margin-right: 9px
}

.SmartBP .SmartFiltersModal .filter-by {
  font-size: 18px;
  line-height: 23px;
  font-weight: 700;
  margin-bottom: 20px
}

.SmartBP .SmartFiltersModal .openFilters {
  display: block;
  margin: 20px 0 12px;
  font-size: 14px;
  line-height: 18px;
  font-weight: 700
}

.SmartBP .SmartFiltersModal__footer {
  display: -webkit-flex;
  display: flex;
  position: -webkit-sticky;
  position: sticky;
  margin-left: -20px;
  margin-right: -20px;
  margin-bottom: -20px;
  bottom: 0;
  z-index: 1
}

.SmartBP .SmartFiltersModal__footer .button {
  -webkit-flex: 1 0 50%;
  flex: 1 0 50%;
  border-radius: 0
}

.SmartBP .FixedFiltersButtonMobile {
  display: none;
  background-color: transparent;
  position: fixed;
  z-index: 5;
  bottom: 18px;
  width: 100%;
  text-align: center;
  border-top: 0;
  padding-right: 19px
}

.SmartBP .FixedFiltersButtonMobile.overTransport {
  display: block
}

.SmartBP .FixedFiltersButtonMobile .button {
  height: 44px;
  width: 35%;
  background-color: #1d1d1d;
  color: #fff;
  border-radius: 2px;
  opacity: .8
}

.SmartBP .FixedFiltersButtonMobile .icon {
  vertical-align: text-top;
  font-size: 18px;
  margin-right: 9px
}

.SmartBP #notification-top-fixed .loader-linear {
  background-color: #fff
}

.SmartBP #notification-top-fixed span {
  font-family: Georgia, Times New Roman, Times, serif;
  font-style: italic;
  line-height: 1.1
}

@media only screen and (min-width: 1025px) {
  .SmartBP #notification-top-fixed span {
    font-size: 20px
  }
}

.SmartBP.is-loading .section .section-content.holiday .section-data-price, .SmartBP.is-loading .section .section-content.holiday .section-data .Loader__anim {
  vertical-align: middle
}

.SmartBP .Skeleton__radio {
  display: inline-block;
  vertical-align: middle;
  width: 26px;
  height: 26px;
  border: 1px solid #d3d3d3;
  border-radius: 50%
}

.SmartBP .Skeleton__boundImg {
  width: 30px;
  height: 30px;
  background: linear-gradient(180deg, #d3d3d3, #d3d3d3);
  background-size: 30px 30px;
  background-position: 0 0;
  background-repeat: no-repeat
}

.SmartBP .Skeleton__boundName {
  width: 80px
}

.SmartBP .Skeleton__boundName, .SmartBP .Skeleton__boundWay {
  display: inline-block;
  vertical-align: middle;
  height: 6px;
  background: linear-gradient(180deg, #d3d3d3, #d3d3d3);
  background-size: 100% 6px;
  background-position: 0 0;
  background-repeat: no-repeat
}

.SmartBP .Skeleton__boundWay {
  width: 38px
}

.SmartBP .Skeleton__boundHour {
  width: 57px
}

.SmartBP .Skeleton__boundHour, .SmartBP .Skeleton__placetime {
  display: inline-block;
  vertical-align: middle;
  height: 6px;
  background: linear-gradient(180deg, #d3d3d3, #d3d3d3);
  background-size: 100% 6px;
  background-position: 0 0;
  background-repeat: no-repeat
}

.SmartBP .Skeleton__placetime {
  width: 26px;
  cursor: auto
}

.SmartBP .Skeleton__duration, .SmartBP .Skeleton__stopovertype {
  display: inline-block;
  vertical-align: middle;
  width: 45px;
  height: 6px;
  background: linear-gradient(180deg, #d3d3d3, #d3d3d3);
  background-size: 100% 6px;
  background-position: 0 0;
  background-repeat: no-repeat
}

.SmartBP .SkeletonAnimation {
  position: relative;
  overflow: hidden
}

.SmartBP .SkeletonAnimation:after {
  content: "";
  position: absolute;
  z-index: 8;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  background-image: linear-gradient(90deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, .7), hsla(0, 0%, 100%, 0));
  will-change: transform;
  -webkit-animation: skeleton-shimmer 1.5s ease-in-out infinite;
  animation: skeleton-shimmer 1.5s ease-in-out infinite
}

@media only screen and (min-width: 1025px) {
  .SmartBP .SkeletonAnimation:after {
    background-image: linear-gradient(130deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, .7), hsla(0, 0%, 100%, 0))
  }
}

@-webkit-keyframes skeleton-shimmer {
  to {
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
  }
}

@keyframes skeleton-shimmer {
  to {
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
  }
}

.SmartBP .package-reinsurance {
  display: -webkit-flex;
  display: flex;
  padding: 22px 0;
  font-weight: 700;
  font-size: 12px;
  line-height: 15px
}

.SmartBP .package-reinsurance i {
  color: #bd1343;
  vertical-align: middle;
  font-size: 14px;
  padding-right: 6px
}

.SmartBP .package-reinsurance .flex-cancelation, .SmartBP .package-reinsurance .installments-eligibility, .SmartBP .package-reinsurance .travel-protection {
  display: -webkit-flex;
  display: flex
}

.SmartBP .package-reinsurance .flex-cancelation .label-text, .SmartBP .package-reinsurance .installments-eligibility .label-text, .SmartBP .package-reinsurance .travel-protection .label-text {
  text-decoration: underline;
  color: #1d1d1d
}

.SmartBP .package-reinsurance .flex-cancelation .label-text:hover, .SmartBP .package-reinsurance .installments-eligibility .label-text:hover, .SmartBP .package-reinsurance .travel-protection .label-text:hover {
  color: #bd1343;
  text-decoration: none
}

.SmartBP .package-reinsurance .flex-cancelation:hover, .SmartBP .package-reinsurance .installments-eligibility:hover, .SmartBP .package-reinsurance .travel-protection:hover {
  cursor: pointer
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .package-reinsurance .flex-cancelation, .SmartBP .package-reinsurance .travel-protection {
    white-space: nowrap
  }
}

.SmartBP .package-reinsurance .flex-cancelation, .SmartBP .package-reinsurance .installments-eligibility {
  display: none
}

.SmartBP .package-reinsurance .installments-eligibility {
  padding-left: 30px
}

.SmartBP .package-reinsurance .installments-eligibility i {
  font-size: 18px
}

.SmartBP .package-reinsurance .tooltip-contents {
  display: none
}

.SmartBP .inline-tooltip-content {
  display: -webkit-inline-flex;
  display: inline-flex;
  width: 460px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .inline-tooltip-content:not(#flex_content) {
    width: 428px;
    padding-right: 40px
  }
}

.SmartBP .inline-tooltip-content .content-img {
  width: 100%;
  padding: 9px 0 9px 20px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .SmartBP .inline-tooltip-content .content-img {
    margin: auto
  }
}

@media only screen and (min-width: 768px) {
  .SmartBP .inline-tooltip-content#flex_content .content-text {
    min-width: 300px
  }
}

.SmartBP .inline-tooltip-content#flex_content li {
  padding-bottom: 5px
}

.SmartBP .inline-tooltip-content#flex_content li:before {
  content: "\E916";
  font-family: VP-Icon-Line !important;
  font-size: 21px;
  display: inline-block;
  width: 1.3em;
  color: #bd1343;
  vertical-align: bottom
}

.SmartBP .package-reinsurance-white-popup {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: column;
  flex-flow: column;
  position: relative;
  background: #fff;
  padding: 20px;
  width: auto;
  max-width: 500px;
  margin: 20px 30px
}

@media only screen and (orientation: landscape) and (max-width: 767px) {
  .SmartBP .package-reinsurance-white-popup {
    margin: 20px 150px
  }
}

@media only screen and (orientation: landscape) and (max-width: 1024px) {
  .SmartBP .package-reinsurance-white-popup {
    margin: 20px 150px
  }
}

.SmartBP .package-reinsurance-white-popup .content-img {
  -webkit-order: -1;
  order: -1;
  -webkit-align-self: center;
  -ms-grid-row-align: center;
  align-self: center;
  padding: 20px 0
}

.SmartBP .package-reinsurance-white-popup .mfp-close {
  font-size: 35px
}

.SmartBP .package-reinsurance-white-popup#flex_content {
  padding-top: 35px
}

.SmartBP .package-reinsurance-white-popup#flex_content li {
  padding-bottom: 5px
}

.SmartBP .package-reinsurance-white-popup#flex_content li:before {
  content: "\E916";
  font-family: VP-Icon-Line !important;
  font-size: 21px;
  display: inline-block;
  width: 1.3em;
  color: #bd1343;
  vertical-align: bottom
}

@media only screen and (min-width: 1025px) {
  .section.details .section-data, .section.pax .section-data {
    padding-right: 20px
  }
}

@media only screen and (max-width: 1024px) {
  .section.details .section-data.address, .section.details .section-data.city, .section.details .section-data.country, .section.details .section-data.email, .section.details .section-data.firstname, .section.details .section-data.lastname, .section.details .section-data.phone, .section.pax .section-data.address, .section.pax .section-data.city, .section.pax .section-data.country, .section.pax .section-data.email, .section.pax .section-data.firstname, .section.pax .section-data.lastname, .section.pax .section-data.phone {
    width: 100% !important
  }
}

.details .section-data.firstname, .details .section-data.lastname {
  width: 196px
}

.details .section-data.zipcode {
  width: 110px
}

.details .section-data.city {
  -webkit-flex-grow: 1;
  flex-grow: 1
}

.details .section-data.country {
  padding-right: 0;
  width: 196px
}

.details .section-data.email .details-email-tooltip {
  display: none
}

.section.pax .pax-notice {
  background: #eee;
  padding-bottom: 10px
}

.section.pax .pax-notice a {
  text-decoration: underline
}

.section.pax .section-title.subsection {
  margin-bottom: 5px
}

.section.pax .paxNotice {
  margin: 10px 0
}

.section.pax .pax_line_select.favoritespax select {
  display: block;
  width: 200px;
  margin-top: 20px
}

@media only screen and (min-width: 1025px) {
  .section.pax .pax-form {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column
  }

  .section.pax .pax-form .pax-line {
    display: -webkit-flex;
    display: flex;
    max-width: 600px
  }
}

@media only screen and (max-width: 1024px) {
  .section.pax .pax-form {
    width: 100%
  }
}

.section.pax .pax-infos-details {
  display: -webkit-flex;
  display: flex;
  padding: 15px 0 20px;
  width: 100%;
  -webkit-flex-basis: auto;
  flex-basis: auto;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start
}

.section.pax .pax-infos-details.section-content {
  padding: 15px 20px 20px !important
}

@media only screen and (max-width: 1024px) {
  .section.pax .pax-infos-details {
    width: 100%
  }
}

.section.pax .pax-infos-details:not(first-child) {
  border-top: 2px solid #eee
}

.section.pax .pax-infos-details .section-data:not(last-child) {
  margin-right: 10px
}

.section.pax .pax-infos-details .section-data.title {
  width: 96px;
  -webkit-flex: 1 0 auto;
  flex: 1 0 auto
}

.section.pax .pax-infos-details .section-data.birthdate input, .section.pax .pax-infos-details .section-data.passport_expiry_date input {
  width: 145px
}

.section.pax .hide, .section.pax .passport-infos-details.seeMoreDetails {
  display: none
}

.section.pax .passport-infos {
  font-weight: 700;
  color: #666;
  float: right;
  text-align: right;
  margin-top: 10px
}

@media only screen and (max-width: 767px) {
  .section.pax .passport-infos {
    text-align: left;
    display: block;
    float: none
  }
}

.section.pax .passport-infos:hover {
  cursor: pointer
}

.section.payment .paymentDetails-notice {
  padding: 0 0 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-flex-direction: column;
  flex-direction: column
}

.section.payment .paymentDetails-notice .space {
  margin: 0 5px
}

.PartialBalance .section.payment .paymentDetails-notice {
  padding-left: 0
}

@media only screen and (max-width: 1024px) {
  .PartialBalance .section.payment .paymentDetails-notice {
    padding: 20px 20px 0
  }
}

.section.payment .paymentDetails-notice .security-notice {
  font-size: 18px;
  font-weight: 700
}

.section.payment .paymentDetails-notice i {
  color: #bd1343;
  font-size: 18px
}

.section.payment .paymentDetails-notice .more-details {
  text-decoration: underline
}

.section.payment .options-overview {
  display: block
}

.section.payment .option-overview-category {
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 10px
}

.section.payment .option-overview-container {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-bottom: 10px
}

.section.payment .option-overview-price {
  font-weight: 700
}

.section.payment .no-payment {
  padding: 20px;
  background-color: #fff
}

.section.payment .paymentDetails {
  padding: 20px
}

.section.payment .paymentDetails.last-child {
  padding-top: 0
}

.section.payment .paymentDetails.last-child > .section-data {
  border-top: 2px solid #eee;
  width: 100%;
  margin-top: 0;
  padding-top: 10px
}

.PartialBalance .section.payment .paymentDetails.last-child > .section-data {
  border: none;
  padding: 0
}

.PartialBalance .section.payment .paymentDetails {
  padding: 0 20px 20px
}

@media only screen and (min-width: 1025px) {
  .PartialBalance .section.payment .paymentDetails {
    padding: 0
  }
}

.PartialBalance .section.payment .paymentDetails .b2eAmount + .cb-images {
  margin-top: 20px
}

.section.payment .paymentDetails .cb-images {
  -webkit-flex: 0 0 100%;
  flex: 0 0 100%;
  padding-top: 10px
}

.section.payment .line-icon-information-circle {
  margin: 10px
}

.cbRow {
  width: 100%
}

@media only screen and (min-width: 1025px) {
  .cbRow {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }
}

@media only screen and (min-width: 1025px) {
  .cbRow .expiryDate {
    margin-left: 20px
  }
}

.section.payment .section-content.advance input[type=radio]:not(.RadioBtnCheck) {
  width: 14px;
  height: 14px;
  margin: 4px 5px 4px 4px
}

.section.payment .section-content.advance input[type=radio]:not(.RadioBtnCheck):checked {
  border: 4px solid #bd1343
}

.SmartPayment .section.payment .section-content.advance {
  padding: 20px 20px 0
}

.SmartPayment .section.payment .section-content.advance input[type=radio]:not(.RadioBtnCheck) {
  width: 24px;
  height: 23px;
  margin: 0 10px 0 0
}

.SmartPayment .section.payment .section-content.advance input[type=radio]:not(.RadioBtnCheck):checked {
  border: 6.5px solid #bd1343
}

.SmartPayment .section.payment .section-content.advance .advance-subsection {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  gap: 20px
}

@media only screen and (min-width: 1025px) {
  .SmartPayment .section.payment .section-content.advance .advance-subsection {
    margin-left: 20px
  }
}

@media only screen and (max-width: 1024px) {
  .SmartPayment .section.payment .section-content.advance .advance-subsection {
    margin-top: 25px
  }
}

@media only screen and (max-width: 1024px) {
  .SmartPayment .section.payment .section-content.advance .advance-subsection .section-data:first-child {
    padding-bottom: 10px
  }
}

.section.payment .section-content.paymentDetails .cbRow-2 {
  display: none
}

@media only screen and (min-width: 1025px) {
  .section.payment .section-content.paymentDetails .cbRow-2.show {
    display: -webkit-flex !important;
    display: flex !important
  }
}

.section.payment .section-content.paymentDetails .section-content.amount-line {
  display: none
}

@media only screen and (min-width: 1025px) {
  .fullRow {
    -webkit-flex: 1 0 100%;
    flex: 1 0 100%
  }
}

.disallow {
  pointer-events: none;
  background: #f0f0f0
}

.cb-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: center;
  align-items: center
}

@media only screen and (max-width: 1024px) {
  .cb-list {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: baseline;
    align-items: baseline
  }
}

.cb-list .cb-box {
  margin-right: 20px
}

.cb-list .cb-container {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

.cb-list .cb-container .img-Instanea {
  max-height: 40px;
  min-width: 45px
}

.cb-list .cb-container .payment-name {
  cursor: pointer
}

.cb-list .cb-container .logo {
  display: inline;
  margin-left: auto
}

.cb-list .cb-container .logo figure {
  display: inline
}

.cb-list .cb-container.applePay .tooltip, .cb-list .cb-container.googlePay .tooltip {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

.cb-list .cb-container input[type=radio]:not(.RadioBtnCheck) {
  width: 14px;
  height: 14px;
  margin: 4px 5px 4px 4px
}

.cb-list .cb-container input[type=radio]:not(.RadioBtnCheck):checked {
  border: 4px solid #bd1343
}

.cb-list .cb-container figure {
  display: -webkit-flex;
  display: flex
}

.cb-list .cb-container figure img {
  max-height: 25px
}

.cb-list .cb-container figure.figure-virement_instanea img {
  max-height: 40px;
  min-width: 45px
}

.cb-list .cb-container .line-icon-information-circle:before {
  visibility: hidden
}

.SmartPayment .cb-list {
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: stretch;
  align-items: stretch
}

.SmartPayment .cb-list .cb-box {
  padding: 20px 10px;
  gap: 10px;
  border: 1px solid #d3d3d3;
  border-radius: 2px;
  margin-right: 0;
  margin-bottom: 10px;
  min-width: 100%;
  max-width: 100%
}

.SmartPayment .cb-list .cb-box .title {
  color: #666
}

.SmartPayment .cb-list .cb-container {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: center;
  align-items: center
}

.SmartPayment .cb-list .cb-container .logo, .SmartPayment .cb-list .cb-container .logo figure {
  display: block
}

.SmartPayment .cb-list .cb-container input[type=radio]:not(.RadioBtnCheck) {
  width: 24px;
  height: 24px;
  margin: 0 10px 0 0
}

.SmartPayment .cb-list .cb-container input[type=radio]:not(.RadioBtnCheck):checked {
  border: 6.5px solid #bd1343
}

.SmartPayment .cb-list .cb-container figure img {
  max-height: 25px
}

@media only screen and (min-width: 1025px) {
  .SmartPayment .cb-list .cb-container figure img {
    margin-left: 10px
  }
}

.ancv-notice, .virement_instanea-notice {
  color: #666;
  font-weight: 400;
  padding: 20px 20px 0
}

.cbSave {
  color: #666;
  padding-top: 20px !important
}

@media only screen and (min-width: 1025px) {
  .cbSave {
    -ms-grid-row: 5;
    grid-row-start: 5
  }
}

@media only screen and (max-width: 1024px) {
  .cbSave-title {
    display: -webkit-flex;
    display: flex
  }
}

@media only screen and (max-width: 1024px) {
  .cbSave-title input[type=checkbox] {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: 0
  }
}

.cbSave-container {
  width: auto
}

@media only screen and (min-width: 1025px) {
  .cbSave-container {
    margin: 0
  }
}

.space-top {
  margin-top: 20px
}

.space-between {
  padding: 10px 0
}

.section-card-type-choice input, .section-card-type-choice label {
  display: inline-block;
  vertical-align: middle
}

.addCard {
  height: auto;
  background: #eee;
  border: 1px solid #d3d3d3;
  border-radius: 2px;
  margin-top: 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  color: #666;
  height: 44px;
  place-items: center;
  width: 100%;
  font-weight: 700;
  font-family: Source Sans Pro
}

.addCard .iconAdd {
  padding-right: 10px;
  font-size: 18px
}

.addCard .iconMinus {
  padding-right: 5px;
  font-size: 18px
}

@media only screen and (max-width: 1024px) {
  .section-data.cbName, .section-data.cbNumber {
    -ms-grid-column: 1 !important;
    -ms-grid-column-span: 2 !important;
    grid-column: 1/3 !important
  }
}

@media only screen and (min-width: 1025px) {
  .section-data {
    padding: 10px 10px 10px 0
  }
}

.section-data .cb-input {
  width: 15px !important;
  height: 15px !important
}

.section-data .cb-input:checked {
  border: 4px solid #bd1343 !important
}

.section-data .cb-img {
  height: 24px
}

.section-data .aligned-img {
  margin-right: 10px
}

.section-data .label-form {
  color: #555
}

.section-data .section-terms {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

.section-data .section-terms .input-terms {
  margin-right: 5px
}

.section-data .section-data-text:not(.discarded) {
  display: -webkit-flex;
  display: flex
}

.section-data .space {
  width: 100%
}

.section-data.accountHolder * {
  display: inline-block
}

@media only screen and (min-width: 1025px) {
  .section-data.dateOfBirth *, .section-data.iban * {
    width: auto
  }
}

.section-data.infoRatepayOpenInvoice, .section-data.infoRatepaySepa {
  padding-top: 10px
}

.section-data.infoRatepaySepa .drop-down-link {
  text-decoration: underline;
  cursor: pointer
}

.section-data.infoRatepaySepa a {
  text-decoration: underline
}

.section-data .ideal-select {
  width: 40%
}

.oneClick .label-form {
  font-weight: 400;
  color: #1d1d1d;
  margin-left: 23px;
  white-space: normal
}

.oneClick input[type=radio] {
  display: block;
  float: left;
  margin-top: 2px
}

.oneClick .one-click-validity input.validity-number {
  margin-left: 23px
}

.advance {
  -webkit-flex-direction: column;
  flex-direction: column
}

.advance .left {
  margin-right: 8px
}

.advance > * {
  font-weight: 700
}

.advance .selected {
  color: #bd1343
}

.advance .price {
  font-size: 16px
}

.advance .account-notice {
  display: block;
  font-weight: 400;
  color: #666;
  font-size: 14px
}

.SmartPayment .advance .label-title {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  color: #666
}

.SmartPayment .advance .account-notice {
  font-size: 12px
}

.AdyenPaymentBlock {
  display: -webkit-flex;
  display: flex
}

.AdyenPaymentBlock .Loader {
  margin: 20px 0;
  text-align: center
}

.AdyenPayment {
  background: #f8f8f8;
  margin-top: 20px;
  padding: 20px
}

@media only screen and (max-width: 767px) {
  .AdyenPayment .label-form {
    white-space: normal
  }
}

.AdyenPayment .inline {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  min-width: 100%
}

@media only screen and (max-width: 767px) {
  .AdyenPayment .inline {
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .AdyenPayment .inline {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }
}

@media only screen and (min-width: 1025px) {
  .AdyenPayment .inline .section-data:first-child {
    -webkit-flex-basis: 46%;
    flex-basis: 46%
  }
}

@media only screen and (max-width: 1024px) {
  .AdyenPayment .inline .section-data:first-child {
    min-width: 100%
  }
}

@media only screen and (min-width: 1025px) {
  .AdyenPayment .inline .section-data {
    -webkit-flex-basis: 25%;
    flex-basis: 25%
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .AdyenPayment .inline .last-inputs {
    margin-right: 20px
  }
}

@media only screen and (max-width: 1024px) {
  .AdyenPayment .inline .cbNumber {
    min-width: 100%
  }
}

.AdyenPayment .label-card {
  font-weight: 400
}

@media only screen and (max-width: 1024px) {
  .AdyenPayment {
    padding: 20px
  }
}

.AdyenPayment--hidden, .AdyenPayment--loading {
  display: none
}

.AdyenPayment__inputWrapper {
  display: block;
  position: relative
}

@media only screen and (min-width: 1025px) {
  .AdyenPayment__inputWrapper--CardNumber {
    max-width: 235px
  }

  .AdyenPayment__inputWrapper--ExpiryDate {
    margin-left: 20px
  }

  .AdyenPayment__inputWrapper--SecurityCode .line-icon-information-circle {
    display: inline-block;
    margin: 15px 10px;
    vertical-align: top
  }
}

.AdyenPayment__input {
  display: inline-block;
  position: relative;
  height: 44px;
  border: 1px solid #d3d3d3;
  border-radius: 2px
}

@media only screen and (max-width: 1024px) {
  .AdyenPayment__input {
    width: 100%
  }
}

.AdyenPayment__input--small {
  max-width: 100px
}

.AdyenPayment__input--focused {
  border-color: #1d1d1d
}

.AdyenPayment__input--hasError {
  border-color: #bd1343
}

.AdyenPayment__cardBrandWrapper {
  position: absolute;
  top: 50%;
  right: 12px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.AdyenPayment__brandImg {
  display: inline-block;
  height: 18px;
  width: 27px;
  border-radius: 2px;
  opacity: .5
}

.AdyenPayment__brandImg:not(:last-child) {
  margin-right: 5px
}

.AdyenPayment__brandImg--selected {
  opacity: 1
}

.AdyenPayment__errorLabel {
  display: block;
  font-size: 12px;
  color: #bd1343
}

@media only screen and (min-width: 1025px) {
  .AdyenPayment.ideal-payment .adyen-checkout__label {
    width: 290px
  }
}

.AdyenPayment.ideal-payment .adyen-checkout__dropdown .adyen-checkout__dropdown__button {
  border-radius: 2px;
  border-color: #d3d3d3 !important;
  padding: 8px 38px 8px 15px;
  font-weight: 400;
  font-size: 14px;
  height: 44px
}

.AdyenPayment.ideal-payment .adyen-checkout__dropdown .adyen-checkout__dropdown__button:after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4gIDxwYXRoIGZpbGw9IiM2NjYiIGQ9Ik0xMS4yOSAxNS43MWExIDEgMCAwIDAgMS40MSAwbDYtNmExIDEgMCAwIDAtMS40MS0xLjQxTDEyIDEzLjU4IDYuNzEgOC4yOWExIDEgMCAwIDAtMS40MiAxLjQybDUuOTIgNS45M3oiLz48L3N2Zz4=");
  width: 24px;
  height: 24px;
  right: 9px
}

.AdyenPayment.ideal-payment .adyen-checkout__dropdown .adyen-checkout__dropdown__button .adyen-checkout__filter-input {
  border: none;
  font-size: 14px;
  font-weight: 400;
  padding: 10px 0
}

.AdyenPayment.ideal-payment .adyen-checkout__dropdown .adyen-checkout__dropdown__button--active, .AdyenPayment.ideal-payment .adyen-checkout__dropdown .adyen-checkout__dropdown__button--active:hover, .AdyenPayment.ideal-payment .adyen-checkout__dropdown .adyen-checkout__dropdown__button:active, .AdyenPayment.ideal-payment .adyen-checkout__dropdown .adyen-checkout__dropdown__button:focus {
  box-shadow: none
}

.AdyenPayment.ideal-payment .adyen-checkout__dropdown .adyen-checkout__dropdown__list .adyen-checkout__dropdown__element {
  font-size: 14px;
  font-weight: 400
}

.AdyenPayment.ideal-payment.error .adyen-checkout__dropdown__button {
  border-color: #bd1343 !important;
  color: #bd1343
}

.AdyenPayment.ideal-payment.error .adyen-checkout__dropdown__button:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23bd1343' d='M11.29 15.71a1 1 0 0 0 1.41 0l6-6a1 1 0 0 0-1.41-1.41L12 13.58 6.71 8.29a1 1 0 0 0-1.42 1.42l5.92 5.93z' class='color666 svgShape'/%3E%3C/svg%3E")
}

.PartialBalance #partialBalanceHistory {
  -webkit-order: -1;
  order: -1
}

@media only screen and (min-width: 1025px) {
  .PartialBalance #stepForm {
    background-color: #fff
  }
}

@media only screen and (max-width: 1024px) {
  .PartialBalanceHistory {
    padding: 40px 20px 20px
  }
}

.PartialBalanceHistory__title {
  display: table;
  width: 100%;
  font-size: 18px;
  font-weight: 700
}

.PartialBalanceHistory__label {
  display: table-cell
}

.PartialBalanceHistory__amount {
  display: table-cell;
  text-align: right
}

.PartialBalanceHistory__date {
  color: #666;
  font-weight: 400;
  display: block;
  font-size: 14px
}

.PartialBalanceHistory__balance, .PartialBalanceHistory__row {
  display: table;
  width: 100%;
  font-size: 16px
}

.PartialBalanceHistory__row {
  margin: 10px 0;
  padding-left: 20px
}

.PartialBalanceHistory__balance {
  font-weight: 700;
  color: #bd1343;
  border-top: 1px solid #d3d3d3;
  padding-top: 10px
}

.PartialBalanceHistory__balance .PartialBalanceHistory__amount {
  font-size: 18px
}

.PartialBalanceHistory__toggler {
  margin-bottom: 13px
}

.PartialBalanceHistory__toggler .icon {
  vertical-align: middle;
  margin-right: 5px
}

.PartialBalanceHistory__collapse {
  border-top: 1px dashed #d3d3d3
}

.PartialBalanceHelp {
  background-color: #f8f8f8
}

.PartialBalanceHelp__title {
  font-style: italic;
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 20px;
  margin-bottom: 20px
}

.PartialBalanceHelp__list {
  list-style: decimal;
  padding-left: 13px;
  margin-bottom: 40px
}

.PartialBalanceHelp__list li {
  margin: 10px 0;
  color: #bd1343;
  font-weight: 700
}

.PartialBalanceHelp__list li span {
  color: #1d1d1d;
  font-weight: 400
}

.PartialBalanceHelp__separator {
  border-color: #d3d3d3;
  border-style: solid none none;
  margin: 20px 0
}

.PartialBalanceHelp__details {
  color: #666
}

.PartialBalance .section.termsAndConditions {
  border: none;
  background-color: #fff;
  padding: 0
}

@media only screen and (max-width: 1024px) {
  .PartialBalance .section.termsAndConditions {
    padding: 20px
  }
}

@media only screen and (min-width: 1025px) {
  .PartialBalance .section.total {
    margin-bottom: 0
  }
}

.PartialBalance .b2eAmount .label-form {
  color: #1d1d1d;
  font-size: 16px;
  font-weight: 700;
  white-space: normal
}

.PartialBalance .b2eAmount .label-form span {
  color: #666;
  font-size: 14px;
  font-weight: 400
}

.InitialBookingHeader {
  background-color: #fff;
  margin-bottom: 20px
}

@media only screen and (max-width: 1024px) {
  .InitialBookingHeader {
    padding: 0;
    max-width: none
  }
}

@media only screen and (min-width: 1025px) {
  .InitialBookingHeader {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 192px 1fr;
    grid-template-columns: 192px 1fr;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    margin-top: 20px;
    min-height: 120px
  }

  .InitialBookingHeader > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .InitialBookingHeader > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }
}

.InitialBookingHeader__picture img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%
}

.InitialBookingHeader__content {
  display: -ms-grid;
  display: grid;
  padding: 20px
}

@media only screen and (max-width: 1024px) {
  .InitialBookingHeader__content {
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    -ms-grid-rows: auto auto auto;
    grid-template-rows: auto auto auto
  }

  .InitialBookingHeader__content > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .InitialBookingHeader__content > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .InitialBookingHeader__content > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .InitialBookingHeader__content > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .InitialBookingHeader__content > :nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .InitialBookingHeader__content > :nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }
}

@media only screen and (min-width: 1025px) {
  .InitialBookingHeader__content {
    -ms-grid-columns: 1fr auto;
    grid-template-columns: 1fr auto;
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto
  }

  .InitialBookingHeader__content > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .InitialBookingHeader__content > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .InitialBookingHeader__content > :nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .InitialBookingHeader__content > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }
}

@media only screen and (max-width: 1024px) {
  .InitialBookingHeader__header {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    margin-bottom: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .InitialBookingHeader__header {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2
  }
}

.InitialBookingHeader__title {
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 26px;
  font-style: italic;
  margin-bottom: 2px
}

.InitialBookingHeader__subtitle {
  color: #666;
  font-size: 16px
}

.InitialBookingHeader__dates {
  color: #666;
  -webkit-align-self: end;
  -ms-grid-row-align: end;
  align-self: end
}

@media only screen and (max-width: 1024px) {
  .InitialBookingHeader__dates {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    margin-bottom: 10px
  }
}

@media only screen and (min-width: 1025px) {
  .InitialBookingHeader__dates {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3
  }
}

.InitialBookingHeader__dates .icon {
  margin-right: 9px
}

.InitialBookingHeader__price {
  color: #bd1343;
  text-align: right;
  -ms-grid-column-align: end;
  justify-self: end;
  font-size: 24px
}

@media only screen and (max-width: 1024px) {
  .InitialBookingHeader__price {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    -ms-grid-row-align: center;
    align-self: center
  }
}

@media only screen and (min-width: 1025px) {
  .InitialBookingHeader__price {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2
  }
}

.InitialBookingHeader__link {
  text-decoration: underline;
  color: #666;
  font-weight: 700
}

@media only screen and (max-width: 1024px) {
  .InitialBookingHeader__link {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    -ms-grid-row-align: center;
    align-self: center
  }
}

@media only screen and (min-width: 1025px) {
  .InitialBookingHeader__link {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-row-align: end;
    -ms-grid-column-align: end;
    place-self: end;
    text-align: right
  }
}

@media only screen and (min-width: 1025px) {
  .upsellImg {
    float: left;
    width: 42% !important;
    margin-right: 15px;
    margin-bottom: 0 !important;
    padding: 5px 0 !important
  }
}

.align_upsell {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column
}

.add-container-upsell {
  float: right
}

@media only screen and (min-width: 1025px) {
  .upsell-txt {
    padding-bottom: 50px
  }
}

.upsell-align {
  text-align: right;
  float: right
}

.upsell-title {
  padding-bottom: 10px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-bottom: 20px
}

.upsell-payment {
  -webkit-flex-direction: column;
  flex-direction: column;
  margin-bottom: 20px !important
}

.section.termsAndConditions {
  border: 1px solid #d3d3d3;
  border-radius: 2px;
  background-color: #f8f8f8;
  padding: 20px
}

@media only screen and (max-width: 767px) {
  .section.termsAndConditions {
    padding-right: 5px
  }
}

.section.termsAndConditions .section-title {
  display: none
}

.section.termsAndConditions .section-data-text a {
  text-decoration: underline
}

.section.termsAndConditions .notice-fields {
  font-size: 10px
}

@media only screen and (max-width: 1024px) {
  .section.termsAndConditions .notice-fields {
    margin-top: 10px
  }
}

.section-data.fiscalCode label.label-form {
  float: left
}

.section-data.fiscalCode span.line-icon-information-circle {
  display: inline-block;
  margin: 10px
}

.section-data.residence {
  -webkit-align-self: flex-end;
  align-self: flex-end
}

.section-data.residence label.label-form {
  margin: 13px 0;
  display: inline
}

.section.details .section-title.subsection, .section.pax .section-title.subsection, .section.payment .section-title.subsection {
  margin-top: 0 !important
}

.section.details .section-content, .section.pax .section-content, .section.payment .section-content {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 20px !important
}

@media only screen and (max-width: 1024px) {
  .section.details .section-content, .section.pax .section-content, .section.payment .section-content {
    padding: 20px 10px !important
  }
}

.section.details .section-content .subsection, .section.pax .section-content .subsection, .section.payment .section-content .subsection {
  left: -20px;
  width: 100%
}

@media only screen and (max-width: 1024px) {
  .section.details .section-content .subsection, .section.pax .section-content .subsection, .section.payment .section-content .subsection {
    left: -10px
  }
}

.section.details .section-content.address, .section.pax .section-content.address, .section.payment .section-content.address {
  padding: 20px 0 0 !important
}

#page-container:not(.giftCard-bp2) {
  padding-bottom: 30px
}

@media only screen and (min-width: 1025px) {
  #page-container:not(.giftCard-bp2) .help {
    display: none
  }
}

.giftCard-head {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  margin-bottom: 20px
}

#giftCard form {
  background: #fff;
  padding: 10px 20px 30px
}

@media only screen and (min-width: 768px) {
  #giftCard form {
    min-width: 650px
  }
}

@media only screen and (min-width: 768px) {
  #giftCard .giftCard-flex {
    display: -webkit-flex;
    display: flex
  }
}

#giftCard .parent-description {
  padding-bottom: 20px
}

#giftCard .action {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap
}

@media only screen and (max-width: 767px) {
  #giftCard .action {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

#giftCard .action .required {
  text-align: left;
  -webkit-flex: 0 1 auto;
  flex: 0 1 auto
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #giftCard .action .required {
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto
  }
}

@media only screen and (max-width: 767px) {
  #giftCard .action .required {
    -webkit-order: 3;
    order: 3
  }
}

#giftCard .action a {
  margin: 0 10px;
  margin-left: auto
}

@media only screen and (max-width: 767px) {
  #giftCard .action a {
    margin: 10px
  }
}

#giftCard .section.options .section-content {
  padding: 0;
  margin: 0
}

#giftCard .section.options .section-title.subsection {
  display: block
}

#giftCard .section.options .section-title:not(.subsection), #giftCard .section.voucher .section-title:not(.subsection) {
  display: none
}

#giftCard .section-title.subsection:before {
  content: "";
  position: absolute;
  left: -20px;
  height: 20px;
  width: 5px;
  background-color: #bd1343;
  top: 3px
}

#giftCard .section-content.options p {
  padding: 10px 0 20px
}

#giftCard .section-content.options.gft > .section-data {
  padding: 20px;
  border: 1px solid #e6e6e6
}

#giftCard .section-content.options.gft > .section-data.selected {
  border-color: #bd1343
}

#giftCard .section-content.options.gft > .section-data:not(.selected) {
  margin-bottom: -1px
}

#giftCard .section-content.options.gft .seeMore {
  cursor: pointer;
  text-align: right;
  font-size: 12px;
  font-weight: 700;
  color: #666;
  display: block
}

#giftCard .section-content.options.gft .seeMore i {
  vertical-align: bottom
}

#giftCard .section-content.options.gft .seeMore .hide {
  display: none
}

#giftCard .section-content.options.gft .seeMoreDetails {
  display: none;
  padding-top: 10px;
  font-size: 12px;
  color: #666
}

#giftCard .section-content.options.gft .option {
  padding: 0;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-direction: row;
  flex-direction: row
}

#giftCard .section-content.options.gft .option .section-input {
  height: 40px
}

#giftCard .section-content.options.gft .option .section-data-text {
  padding-left: 13px;
  width: 90px
}

#giftCard .section-content.options.gft .option .section-data-text label {
  line-height: 25px
}

#giftCard .section-content.options.gft .option .img-supp {
  width: 25%;
  margin-left: 0
}

#giftCard .section-content.options.gft .option .short_label {
  height: 13px;
  width: 42px;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 13px;
  background: #bd1343;
  border-radius: 2px;
  text-transform: uppercase;
  padding: 2px
}

#giftCard .section-content.options.gft .option .description {
  font-size: 12px;
  color: #666;
  float: right;
  text-align: right
}

#giftCard .section-content.options.gft .option .description .special {
  color: #bd1343;
  text-transform: uppercase;
  font-weight: 700
}

#giftCard .section-content.options.gft .option .section-data-price {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  margin-left: auto;
  text-align: right
}

#giftCard .section-content.options.gft .option .section-data-price .legend {
  color: #666;
  font-size: 12px;
  font-weight: 700
}

#giftCard .section-content.options.gft .option .section-data-price .notprice, #giftCard .section-content.options.gft .option .section-data-price .price {
  float: right;
  font-weight: 700;
  font-size: 18px
}

#giftCard .section-content.options.gft .option .section-data-price .notprice .prefix, #giftCard .section-content.options.gft .option .section-data-price .price .prefix {
  display: none
}

#giftCard .section-data.selected .gc-amount {
  display: block
}

#giftCard .gc-amount {
  display: none;
  padding-left: 40px
}

@media only screen and (max-width: 767px) {
  #giftCard .gc-amount {
    -webkit-flex-direction: column;
    flex-direction: column;
    padding-left: 0
  }
}

#giftCard .gc-amount .input-amount {
  width: 80px;
  background-color: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 2px;
  display: inline-block;
  float: left;
  font-family: Source Sans Pro, sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #666;
  margin-right: 20px;
  padding: 6px 0;
  text-align: center;
  height: 44px;
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield
}

@media only screen and (max-width: 767px) {
  #giftCard .gc-amount .input-amount {
    width: 100% !important;
    margin: 10px 0
  }
}

#giftCard .gc-amount .input-amount::-webkit-input-placeholder {
  color: #666;
  opacity: 1
}

#giftCard .gc-amount .input-amount::-moz-placeholder {
  color: #666;
  opacity: 1
}

#giftCard .gc-amount .input-amount:-ms-input-placeholder, #giftCard .gc-amount .input-amount::-ms-input-placeholder {
  color: #666;
  opacity: 1
}

#giftCard .gc-amount .input-amount::placeholder {
  color: #666;
  opacity: 1
}

#giftCard .gc-amount .input-amount.selected {
  background: #bd1343;
  border: none;
  color: #fff
}

#giftCard .gc-amount .input-amount.selected::-webkit-input-placeholder {
  color: #fff
}

#giftCard .gc-amount .input-amount.selected::-moz-placeholder {
  color: #fff
}

#giftCard .gc-amount .input-amount.selected:-ms-input-placeholder, #giftCard .gc-amount .input-amount.selected::-ms-input-placeholder {
  color: #fff
}

#giftCard .gc-amount .input-amount.selected::placeholder {
  color: #fff
}

#giftCard .gc-amount .input-amount.others {
  width: 140px
}

#giftCard .gc-amount input[type=number]::-webkit-inner-spin-button, #giftCard .gc-amount input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0
}

@media only screen and (min-width: 1025px) {
  #giftCard .gc-amount .amount-or {
    float: left;
    padding: 10px 20px 10px 0
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #giftCard .gc-amount .amount-or {
    float: left;
    padding: 10px 20px 10px 0
  }
}

@media only screen and (max-width: 767px) {
  #giftCard .gc-amount .amount-or {
    display: block;
    text-align: center
  }
}

#giftCard .gc-amount legend.notice {
  margin-right: 0;
  font-size: 12px;
  font-style: italic;
  text-transform: capitalize;
  float: left;
  color: #666
}

.giftCard {
  margin-top: 20px
}

.giftCard > * {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 30px
}

.giftCard > :last-child {
  margin-bottom: 0
}

.giftCard .section-data label {
  width: 100%;
  text-align: left
}

@media only screen and (max-width: 767px) {
  .giftCard .pax-infos {
    -webkit-flex-direction: column;
    flex-direction: column
  }
}

.giftCard .pax-infos .section-data {
  width: 230px
}

@media only screen and (max-width: 767px) {
  .giftCard .pax-infos .section-data {
    width: 100%
  }
}

.giftCard .pax-infos .section-data.gc-message {
  width: 100%;
  margin-top: 10px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .giftCard .pax-infos .section-data.gc-lastName {
    margin-left: 10px
  }
}

.giftCard .pax-infos #charNum {
  position: absolute;
  right: 0;
  top: 0
}

.gc-help > div {
  background: #fff;
  border: 2px solid #e6e6e6;
  padding: 16px
}

.gc-help > div:not(.holder) {
  border-bottom-width: 0
}

.gc-help .title {
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 18px;
  line-height: 20px
}

.gc-help .title, .gc-help em {
  display: block;
  text-align: center
}

.gc-help em {
  color: #bd1343
}

.gc-help .operation i {
  color: #666;
  display: inline-block;
  float: left;
  font-size: 20px;
  margin: 4px 15px 0 0;
  width: 20px
}

.gc-help .operation i + span {
  display: inline-block;
  margin-bottom: 12px;
  width: calc(100% - 40px)
}

.gc-help .knowledge ul {
  list-style: disc outside none;
  margin-left: 16px
}

.gc-help .knowledge ul li {
  margin-bottom: 3px;
  padding-left: 3px
}

.gc-help a.notice {
  text-decoration: underline;
  text-align: right;
  display: block
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .recap.giftCard {
    margin: 10px;
    padding-top: 20px
  }
}

.recap.giftCard .recap-title {
  border-left: 3px solid #bd1343;
  padding-left: 17px;
  margin-left: -20px;
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 700;
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: 1/1/1/3
}

.recap.giftCard .figure-picture {
  text-align: center;
  -ms-grid-row: 2;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: 2/1/4/2
}

.recap.giftCard .figure-picture img {
  width: 100%
}

.recap.giftCard .recap-section {
  padding: 20px 0
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .recap.giftCard .recap-section {
    padding-top: 0
  }
}

.recap.giftCard .recap-section .label {
  font-weight: 700;
  color: #666;
  padding-bottom: 10px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .recap.giftCard .total {
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-area: 4/1/5/3
  }
}

@font-face {
  font-family: VP-Icon-Line;
  src: url("fonts/VP-Icon-Line.eot?v=4.1");
  src: url("fonts/VP-Icon-Line.eot?v=4.1#iefix") format("embedded-opentype"), url("fonts/VP-Icon-Line.ttf?v=4.1") format("truetype"), url("fonts/VP-Icon-Line.woff?v=4.1") format("woff"), url("fonts/VP-Icon-Line.svg?v=4.1#VP-Icon-Line") format("svg");
  font-weight: 400;
  font-style: normal;
  font-display: block
}

.FormError {
  position: absolute;
  color: #bd1343;
}

.formErrorField {
  color: #bd1343;
  border-color: #bd1343 !important;
}

.section-data {
  max-width: 600px;
}

.gc-help {
  margin-top: 20px;
}

.error.flashMessage {
  position: absolute;
  width: 100%;
  left: 0;
  top: 64px;
  z-index: 999;
}

#footer {
  background: #1d1d1d;
  padding: 25px 0 70px
}

#footer.hidden {
  display: none
}

#footer a {
  color: #666;
  display: block
}

#footer a:first-letter {
  text-transform: uppercase
}

#footer .footer-atol a, #footer .footer-link-container.mobile a:hover p, #footer a:hover {
  text-decoration: underline
}

#footer .footer-link-container.mobile a:hover [class^=icon] {
  color: #fff
}

#footer .footer-link-container.mobile a:hover, #footer .footer-social-container a:hover {
  text-decoration: none
}

#footer .footer-detail {
  border-bottom: 1px solid #000
}

#footer .footer-separator {
  height: 1px;
  width: 100%;
  background-color: #000;
  margin: 25px 0 0
}

#footer .footer-link, #footer .footer-slogan {
  border-bottom: 1px solid #000;
  border-top: 1px solid #2c2c2c
}

#footer .footer-social {
  text-align: center
}

#footer .footer-atol, #footer .footer-partners, #footer .footer-social {
  border-top: 1px solid #2c2c2c
}

#footer .footer-detail .footer-detail-container {
  display: inline-block;
  width: 33.33333333%;
  float: left;
  padding: 25px 15px;
  text-align: center;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

#footer .footer-detail .footer-detail-container figure {
  display: inline-block
}

#footer .footer-detail .footer-detail-container .footer-detail-title {
  display: inline-block;
  margin: 0 0 10px;
  color: #fff;
  font-size: 18px
}

#footer .footer-detail .footer-detail-container .footer-detail-title i {
  float: left
}

#footer .footer-detail [class^=icon-] {
  display: inline-block;
  width: 30px
}

#footer .footer-slogan {
  width: 100%;
  display: table;
  height: 80px;
  text-align: center;
  font-family: Georgia, Times New Roman, Times, serif;
  font-size: 18px;
  font-style: italic;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 20px
}

#footer .footer-slogan p {
  display: table-cell;
  vertical-align: middle;
  line-height: 24px
}

#footer .footer-slogan span {
  color: #fff
}

#footer .footer-link .footer-link-container {
  display: inline-block;
  width: 26%;
  float: left;
  padding: 25px 15px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 12px
}

#footer .footer-link .footer-link-container.menu-link-first {
  width: 20%
}

#footer .footer-link .footer-link-container.mobile.stores {
  width: 100%;
  padding: 0
}

#footer .footer-link .footer-link-container.mobile.stores.text {
  line-height: 15px;
  padding-left: 5px
}

#footer .footer-link .footer-link-container.mobile.stores.download-app-container {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding-left: 0;
  margin-left: 0
}

#footer .footer-link .footer-link-container.mobile.stores.app-link-container {
  padding-top: 10px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  margin-right: 10px;
  width: 60%;
  -webkit-align-self: stretch;
  align-self: stretch;
  -webkit-justify-content: space-between;
  justify-content: space-between
}

#footer .footer-link .footer-link-container.mobile.stores.app-link {
  padding: 7px 7px 7px 0
}

#footer .footer-link .footer-link-container.mobile.stores.qr-code {
  width: 90px;
  height: 90px;
  padding: 5px;
  border: 1px solid #000;
  border-radius: 2px;
  margin-top: 10px
}

#footer .footer-link .footer-link-container .icon-security {
  margin: 0 10px 0 0
}

#footer .footer-link .footer-link-container .icon-visa {
  font-size: 18px
}

#footer .footer-link .footer-link-container .icon-mastercard-2 {
  font-size: 3.3em
}

#footer .footer-link .footer-link-container .icon-ideal {
  font-size: 30px
}

#footer .footer-link .footer-link-container .icon-ancv {
  font-size: 2.4em
}

#footer .footer-link .footer-link-container .icon-amex {
  font-size: 2.5em
}

#footer .footer-link .footer-link-container .footer-link-mobile {
  display: block
}

#footer .footer-link .footer-link-container .footer-usurpation {
  display: block;
  margin-top: 5px
}

#footer .footer-link .footer-link-container.mobile p#header-menu-title-message {
  display: none
}

#footer .footer-link .footer-link-container.mobile .icon-smartphone {
  font-size: 18px
}

#footer .footer-link .footer-link-container.mobile .icon-tablet {
  font-size: 24px
}

#footer .footer-social .footer-social-container figure {
  display: inline-block;
  margin: 30px 30px 0
}

#footer .footer-social .footer-social-container a {
  display: inline-block
}

#footer .footer-social .footer-social-container i {
  font-size: 24px
}

#footer .footer-social .footer-social-container .icon-facebook:hover, #footer .footer-social .footer-social-container .line-icon-facebook:hover {
  color: #3b5998
}

#footer .footer-social .footer-social-container .icon-twitter:hover, #footer .footer-social .footer-social-container .line-icon-twitter:hover {
  color: #00acee
}

#footer .footer-social .footer-social-container .icon-pinterest:hover, #footer .footer-social .footer-social-container .line-icon-pinterest:hover {
  color: #e3262e
}

#footer .footer-social .footer-social-container .icon-instagram:hover, #footer .footer-social .footer-social-container .line-icon-instagram:hover {
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent;
  background: radial-gradient(circle at 30% 107%, #fdf497 0, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%)
}

#footer .footer-social .footer-social-container .icon-youtube:hover, #footer .footer-social .footer-social-container .line-icon-youtube:hover {
  color: #fff
}

#footer .footer-social .footer-social-container .icon-google:hover, #footer .footer-social .footer-social-container .line-icon-google:hover {
  color: #db4a39
}

#footer .footer-atol .footer-atol-logo {
  height: 115px;
  line-height: 115px;
  width: 30%;
  text-align: center
}

#footer .footer-atol .footer-atol-logo, #footer .footer-atol .footer-atol-text, #footer .footer-partners .footer-partners-logo, #footer .footer-partners .footer-partners-text {
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

#footer .footer-atol .footer-atol-text {
  width: 70%;
  font-size: 11px
}

#footer .footer-atol .footer-atol-logo a, #footer .footer-atol .footer-atol-text p {
  display: inline-block;
  line-height: 1.2;
  vertical-align: middle
}

#footer .footer-atol .footer-atol-logo i {
  cursor: pointer
}

#footer .footer-atol .icon-atol {
  font-size: 5.2em;
  vertical-align: middle
}

#footer .footer-atol .icon-abta {
  font-size: 2.8em;
  line-height: 1;
  vertical-align: middle
}

#footer .footer-partners .footer-partners-text {
  width: 80%;
  font-size: 11px;
  padding: 40px 0 0
}

#footer .footer-partners .footer-partners-logo {
  width: 20%;
  text-align: center;
  padding: 20px 0 0
}

#footer .footer-partners .footer-partners-line {
  width: 100%;
  text-align: center;
  padding: 30px 0 0
}

#footer .footer-partners [class^=icon-] {
  display: inline-block;
  margin: 0 30px 0 0
}

#footer .footer-partners .icon-IATA {
  font-size: 2.7em
}

#footer .footer-partners .icon-cadastur {
  font-size: 2.5em
}

#footer .footer-partners .partners-text {
  display: inline-block;
  text-align: left;
  font-size: 11px
}

#footer #notice {
  font-size: 11px;
  padding: 20px;
  clear: both
}

#footer #notice nav a {
  text-decoration: underline;
  display: inline
}

#footer .no-bottom-border {
  border-bottom: 0
}

#footer .seoIndexLink {
  text-align: center
}

#footer .seoIndexLink a {
  display: inline
}

#footer .page-center {
  max-width: 1000px
}

@media only screen and (min-width: 1400px) {
  #footer .page-center {
    max-width: 1200px
  }
}

@media only screen and (min-width: 1025px) {

  #footer .footer-partners .footer-partners-logo, #footer .footer-partners .footer-partners-text {
    float: left
  }
  #footer .footer-link .footer-link-container figure {
    float: left
  }

  #footer #footer-atol .footer-atol-text {
    height: 115px;
    line-height: 115px
  }
}


@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer, #legend {
    -webkit-backface-visibility: hidden
  }

  #footer {
    font-size: 18px
  }

  #footer #footer-detail .footer-detail-container .footer-detail-title [class^=icon-] {
    font-size: 12px
  }

}

@media only screen and (max-width: 1024px) {

  #footer .footer-detail .footer-detail-container, #footer .footer-link .footer-link-container.payment {
    width: 100%;
    text-align: center
  }

  #footer #footer-detail .footer-detail-container .footer-detail-title [class^=icon-] {
    width: 50px
  }

  #footer .footer-link .footer-link-container.payment {
    border-bottom: 1px solid #000
  }

  #footer .footer-link .footer-link-container.menu-link-first, #footer .footer-link .footer-link-container.menu-link-second {
    width: 50%;
    border-top: 1px solid #2c2c2c
  }

  #footer .footer-link .footer-link-container.menu-link-first li a, #footer .footer-link .footer-link-container.menu-link-second li a {
    padding: 10px 0
  }

  #footer .footer-link .footer-link-container.menu-link-first ul {
    float: right
  }

  #footer .footer-link .footer-link-container.mobile {
    display: none
  }

  #footer .footer-link .footer-link-container.payment {
    font-size: 14px
  }

  #footer .footer-link .footer-link-container.payment figure {
    display: inline-block;
    vertical-align: top
  }

  #footer .footer-link .footer-link-container .icon-mastercard-2 {
    font-size: 2.5em
  }

  #footer .footer-link .footer-link-container .icon-ideal {
    font-size: 25px
  }

  #footer .footer-link .footer-link-container .icon-amex, #footer .footer-link .footer-link-container .icon-ancv {
    font-size: 2em
  }

  #footer .footer-social .footer-social-container figure {
    margin: 30px 10px 0
  }

  #footer .footer-partners .partners-text {
    padding: 20px;
    text-align: center
  }

  #footer .footer-atol .footer-atol-logo, #footer .footer-atol .footer-atol-text, #footer .footer-partners .footer-partners-logo, #footer .footer-partners .footer-partners-text {
    width: 100%
  }

  #footer .footer-partners .footer-partners-text {
    padding: 20px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center
  }

  #footer .footer-atol .footer-atol-text {
    padding: 0 20px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center
  }

  #footer #footer-partners .icon-cadastur {
    margin: 0 0 0 20px
  }

  #footer #footer-partners .icon-IATA {
    margin: 0
  }

}

@media only screen and (max-width: 767px) {
  #footer, #footer .footer-link .footer-link-container, #footer .footer-slogan {
    font-size: 16px
  }

  #footer .footer-link .footer-link-container li a.notMobile {
    display: none
  }
}
@media only screen and (max-width: 767px) {
  .nativeapp #alert-title, .nativeapp #footer, .nativeapp #header-container {
    display: none
  }
}

#footer, #footer a {
  color: #9b9b9b
}

#footer #stores {
  overflow: hidden
}

@media only screen and (max-width: 767px) {
  #footer #stores {
    margin-top: 0
  }
}

#footer #stores .app {
  float: left;
  width: 100px;
  margin-right: 10px;
  border: 1px solid #666;
  border-radius: 5px
}

@media only screen and (max-width: 1024px) {
  #footer #stores .app {
    width: 100px;
    margin-left: 5px
  }
}

@media only screen and (max-width: 1024px) {
  #footer #footer-social {
    margin-top: -1px
  }
}

#footer #footer-social.fr_FR .footer-badge {
  float: left;
  padding: 20px 50px
}

@media only screen and (max-width: 767px) {
  #footer #footer-social.fr_FR .footer-badge {
    float: none;
    padding: 20px 0;
    margin: 0 auto;
    max-width: 330px
  }
}

#footer #footer-social.fr_FR .footer-badge .footer-badge_img {
  float: left;
  height: 60px;
  margin-right: 10px
}

@media only screen and (max-width: 365px) {
  #footer #footer-social.fr_FR .footer-badge .footer-badge_img {
    float: none;
    margin: 0
  }
}

#footer #footer-social.fr_FR .footer-badge .footer-badge_text {
  float: left;
  margin-top: 20px;
  text-align: left;
  font-size: 12px;
  line-height: 14px
}

@media only screen and (max-width: 767px) {
  #footer #footer-social.fr_FR .footer-badge .footer-badge_text {
    margin-top: 15px;
    font-size: 14px;
    line-height: 16px
  }
}

@media only screen and (max-width: 767px) and (max-width: 365px) {
  #footer #footer-social.fr_FR .footer-badge .footer-badge_text {
    float: none;
    text-align: center
  }
}

@media only screen and (max-width: 767px) {
  #footer #footer-social.fr_FR .footer-badge-container {
    border-bottom: 1px solid #000
  }
}

@media only screen and (min-width: 768px) {
  #footer #footer-social.fr_FR .footer-badge-container + .footer-social-container {
    margin-top: 20px
  }
}

@media only screen and (max-width: 767px) {
  #footer #footer-social.fr_FR .footer-badge-container + .footer-social-container {
    border-top: 1px solid #2c2c2c
  }
}

#footer .payment .payment-title {
  margin-bottom: 17px;
  font-size: 12px
}

#footer .payment .ordered {
  max-width: 130px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 5px;
  color: hsla(0, 0%, 100%, .99)
}

#footer .payment .ordered.left {
  -webkit-justify-content: left;
  justify-content: left
}

@media only screen and (max-width: 1024px) {
  #footer .payment .ordered {
    -webkit-justify-content: center !important;
    justify-content: center !important;
    margin: 0 auto;
    font-size: 13px
  }
}

#footer .payment .ordered figure {
  float: none
}

#footer .payment .ordered .icon-cb {
  width: 30px;
  height: 25px
}

#footer .payment .ordered .icon-visa {
  width: 35px;
  height: 25px
}

#footer .payment .ordered .icon-ancv, #footer .payment .ordered .icon-mastercard {
  width: 30px;
  height: 25px
}

#footer .payment .ordered .icon-sofort {
  width: 55px
}

#footer .payment .ordered .icon-amex {
  font-size: 2em
}

#footer .payment .ordered .icon-bancontact {
  width: 24px
}

#footer .payment .ordered .icon-ideal {
  width: 19px
}

#footer .payment .ordered .icon-vb {
  width: 41px;
  height: 25px
}

#footer .payment .ordered .icon-applepay, #footer .payment .ordered .icon-googlepay {
  width: 35px;
  height: 25px
}

#footer .trusted-shops {
  width: 36px
}

#footer .page-center #column-titles .cols-4 {
  width: 24%
}

@media only screen and (max-width: 1024px) {
  #footer .page-center #column-titles .cols-4 {
    width: 100%
  }
}

#footer .page-center #column-titles .cols-3 {
  width: 33.333333%
}

@media only screen and (max-width: 767px) {
  p.footer-detail-text {
    margin-bottom: 12px
  }
}

