@charset "UTF-8";
.trainline-booking-form .messages{
  display:none;
  margin:0 0 1rem;
}
.trainline-booking-form .messages label{
  cursor:pointer;
}
.trainline-booking-form .messages label:hover{
  text-decoration:underline;
}

.trainline-booking-form .bkfannounce{
  display:flex;
  align-items:center;
}
@media (max-width:767.98px){
  .trainline-booking-form .bkfannounce{
    padding:0;
    border:none;
  }
}
.trainline-booking-form .bkfannounce .bkfannounce-icon{
  font-size:1.75rem;
  margin-right:1rem;
  flex-shrink:0;
}
.trainline-booking-form .bkfannounce .bkfannounce-icon i:first-child{
  color:#ffc107;
}
.trainline-booking-form .bkfannounce .bkfannounce-icon i:last-child{
  color:#383a3d;
  font-size:2rem;
}
.trainline-booking-form .bkfannounce .bkfannounce-message h2{
  font-size:1.75rem;
}
.trainline-booking-form .chips-container .chips{
  padding:1rem;
  background-color:#f0f0f0;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:1rem;
}
.trainline-booking-form .chips-container .show-me{
  background-color:#f0f0f0;
}
.trainline-booking-form .chips-container .show-me .text{
  margin-right:1rem;
}
@media (max-width:767.98px){
  .trainline-booking-form .chips-container .chips{
    padding:0;
    background-color:transparent;
  }
  .trainline-booking-form .chips-container .chips-list{
    width:100%;
    margin:0 0 1rem;
  }
  .trainline-booking-form .chips-container .chips-list li a{
    padding:.6rem .5rem;
    white-space:unset;
    line-height:1.4;
  }
}
@media (max-width:767.98px) and (max-width:579.98px){
  .trainline-booking-form .chips-container li{
    flex:1;
    text-align:center;
  }
}
.trainline-booking-form.exposed .chips-container .chips{
  padding:0;
  background-color:transparent;
}
.trainline-booking-form.exposed .chips-container .chips-list{
  width:100%;
  margin:0 0 1rem;
}
.trainline-booking-form.exposed .chips-container .chips-list li a{
  padding:.6rem .5rem;
  white-space:unset;
  line-height:1.4;
}
@media (max-width:579.98px){
  .trainline-booking-form.exposed .chips-container li{
    flex:1;
    text-align:center;
  }
}
.trainline-booking-form .wrapper{
  margin:1rem 1rem 0;
}
@media (min-width:768px){
  .trainline-booking-form .ivp-wrapper{
    padding:1rem;
  }
}
@media (max-width:767.98px){
  .trainline-booking-form .ivp-wrapper{
    margin:1rem 1rem 0;
  }
}
@media (max-width:991.98px){
  .trainline-booking-form .ivp-wrapper{
    padding:1rem;
  }
}
@media (max-width:767.98px){
  .trainline-booking-form .ivp-wrapper{
    background-color:transparent;
    padding:0;
  }
}
.trainline-booking-form.exposed .ivp-wrapper{
  margin:1rem 1rem 0;
}
.trainline-booking-form .initially-visible-portion{
  align-items:center;
}
.trainline-booking-form .init-vis-form-group .input-group-text{
  color:#4e5055;
  border-radius:4px;
  border-color:#bfbfbf;
}
.trainline-booking-form .init-vis-form-group .input-group-text.suffix:before{
  background-color:#bfbfbf !important;
}
.trainline-booking-form .init-vis-form-group .input-group .form-control{
  border-radius:2px;
  border-color:#bfbfbf;
}
@media (max-width:767.98px){
  .trainline-booking-form:not(.bkf-widget) .init-vis-form-group{
    margin-bottom:1rem !important;
    margin-right:2rem;
  }
}
.trainline-booking-form.exposed .init-vis-form-group{
  margin-bottom:1rem !important;
  margin-right:2rem;
}
@media (min-width:992px) and (max-width:1199.98px){
  .trainline-booking-form .form-group-col{
    width:40.5%;
  }
}
.trainline-booking-form .advanced-search{
  border-radius:7px;
  line-height:1;
  display:inline-flex;
  align-items:center;
  color:#383a3d;
  background-color:#f0f0f0;
  font-size:1rem;
  padding:.5rem 1rem;
}
.trainline-booking-form .advanced-search i{
  font-size:1.5rem;
  margin-right:1rem;
}
@media (min-width:1200px){
  .trainline-booking-form .advanced-search{
    margin-left:auto;
  }
}
@media (max-width:767.98px){
  .trainline-booking-form .advanced-search{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0, 0, 0, 0) !important;
    white-space:nowrap !important;
    border:0 !important;
  }
}
.trainline-booking-form.exposed .advanced-search{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0, 0, 0, 0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.exp-frm-wrap{
  background-color:#fff;
  border:none;
  padding-bottom:.5rem;
  margin-bottom:2rem;
}
.exp-frm-wrap.in-sidebar{
  background-color:#f0f0f0;
}
.exp-frm-wrap.front-exposed-form{
  height:100%;
}
.exp-frm-wrap.dark-background{
  background-color:#a0a0a0;
}
.exp-frm-wrap form{
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding-top:1rem !important;
  padding-bottom:1rem !important;
}
.exp-frm-wrap h2{
  font-size:2rem;
  padding:.5rem;
  color:#fff !important;
}
.exp-frm-wrap h2,.exp-frm-wrap h2.bg-pri{
  background-color:#004c45;
}
.exp-frm-wrap .chips-container{
  margin:0;
}
.exp-frm-wrap .col-label{
  font-size:1.5rem;
}
.exp-frm-wrap .footer{
  margin:0;
  border:#004c45;
  font-size:1.15rem;
}
.trainline-booking-form .col-label{
  font-size:1.5rem;
  font-family:SiteFont-Light,Helvetica Neue,Arial,sans-serif;
}
.trainline-booking-form .outbound .display-group .input-group span,.trainline-booking-form .return .display-group .input-group span{
  font-family:SiteFont-Regular,Helvetica,arial,sans-serif;
}
.trainline-booking-form .outbound .display-group .input-group .journey-indicator,.trainline-booking-form .return .display-group .input-group .journey-indicator{
  color:#4e5055;
}
.trainline-booking-form .outbound .display-group .input-group .date,.trainline-booking-form .return .display-group .input-group .date{
  margin-right:1rem;
}
.trainline-booking-form .outbound .display-group i,.trainline-booking-form .passengers .display-group i,.trainline-booking-form .return .display-group i{
  color:#00a862;
}
.trainline-booking-form .extra-section .input-group .form-control{
  border-radius:4px;
  border-color:#bfbfbf;
}
.trainline-booking-form .extra-section .input-group .iradio_line{
  border-radius:4px !important;
  border-color:#00a862;
}
.trainline-booking-form .extra-section .input-group .chosen-single{
  border-radius:4px;
  border-color:#bfbfbf;
}
.trainline-booking-form .extra-section .form-group-seasons-railcard label{
  font-weight:500;
  font-family:SiteFont-Bold,Helvetica Neue,Arial,sans-serif;
  color:#080607;
}
.trainline-booking-form .dpg-btn{
  padding-left:.6rem;
  padding-right:.6rem;
}
.trainline-booking-form .dpg-btn,.trainline-booking-form .input-group-text.suffix{
  border-radius:4px;
  border-color:#bfbfbf;
}
.trainline-booking-form .input-group-text.suffix:not(.ui-spinner-button):before{
  background-color:#bfbfbf !important;
}
.trainline-booking-form .open-return{
  float:right;
}
.trainline-booking-form .adults-child{
  white-space:normal;
  width:200px;
}
.trainline-booking-form .adults-child span{
  display:block;
  font-size:small;
  color:#4e5055;
}
.trainline-booking-form.two-step .adults-child{
  width:auto;
}
.promo-message{
  align-items:flex-start;
  flex-flow:column;
  display:flex;
  padding-bottom:1rem;
}
@media (min-width:1200px){
  .promo-message{
    flex-flow:row;
    align-items:center;
  }
}
.promo-message .promotional-code{
  margin-bottom:0;
  flex:1 0 50%;
}
.promo-message .promotional-code label{
  margin-bottom:0;
}
.promo-message .message{
  flex:1 0 50%;
}
@media (min-width:768px){
  .promo-message .message{
    text-align:right;
  }
}
.railcards{
  display:inline-flex;
  flex-flow:column;
}
.railcards .railcard{
  display:flex;
  gap:1rem;
  margin-bottom:.5rem;
  width:100%;
}
.railcards .railcard .railcard-type{
  flex-grow:1;
}
.railcards .railcard .railcard-amount{
  flex-basis:9rem;
}
.railcards .railcard .chosen-single{
  flex-grow:1;
  border-radius:4px;
}
.railcards .railcard:last-child{
  margin-bottom:0;
}
.trainline-booking-form .footer{
  background-color:#004c45;
  color:#fff;
  font-size:1.15rem;
  padding:.5rem 1rem;
  font-family:SiteFont-Light,Helvetica Neue,Arial,sans-serif;
}
@media (min-width:768px){
  .trainline-booking-form .footer{
    border:2px solid #fff;
    border-bottom-left-radius:0;
    border-bottom-right-radius:0;
  }
}
.trainline-booking-form .footer .row{
  align-items:center;
}
.trainline-booking-form .footer .button-col{
  margin-bottom:1rem;
}
@media (min-width:768px){
  .trainline-booking-form .footer .button-col{
    margin-bottom:0;
    order:2;
    margin-left:auto;
    flex:0 1 content;
    margin-right:0;
  }
}
.trainline-booking-form .footer .button-col .submit{
  font-family:SiteFont-Medium,Helvetica Neue,Arial,sans-serif;
  font-size:1.25rem;
}
.trainline-booking-form .footer .points-col{
  flex-flow:column;
}
@media (min-width:1200px){
  .trainline-booking-form .footer .points-col{
    flex-flow:row;
  }
}
.trainline-booking-form .mobile-header{
  background-color:#004c45;
  color:#fff;
  position:relative;
  padding:1rem;
  font-size:1.5rem;
  font-family:SiteFont-Light,Helvetica Neue,Arial,sans-serif;
}
.trainline-booking-form .mobile-header h2{
  color:#fff;
  font-family:SiteFont-Medium,Helvetica Neue,Arial,sans-serif;
  font-size:2rem;
}
.trainline-booking-form .mobile-header p{
  padding:0;
  margin:0;
  font-family:SiteFont-Light,Helvetica Neue,Arial,sans-serif;
}
.trainline-booking-form .mobile-header .close-mobile{
  position:absolute;
  top:.5rem;
  right:1rem;
  color:#fff;
  cursor:pointer;
  font-size:2rem;
}
.trainline-booking-form .mobile-header .close-mobile:active,.trainline-booking-form .mobile-header .close-mobile:hover{
  color:#00a862;
}
#ihpct,#ihpctm{
  text-align:center;
  align-self:center;
  padding:0;
}
#ihpct button,#ihpctm button{
  margin:auto;
  padding:.25rem;
  position:relative;
  left:-.3333333333rem;
  color:#00a862;
  font-family:SiteFont-Bold,Helvetica Neue,Arial,sans-serif;
}
#ihpct button i,#ihpct button span,#ihpctm button i,#ihpctm button span{
  color:#00a862;
}
#ihpct button:active,#ihpct button:active i,#ihpct button:active span,#ihpct button:hover,#ihpct button:hover i,#ihpct button:hover span,#ihpctm button:active,#ihpctm button:active i,#ihpctm button:active span,#ihpctm button:hover,#ihpctm button:hover i,#ihpctm button:hover span{
  color:#007544;
}

#ihpctm button{
  font-size:1rem;
  font-family:SiteFont-Light,Helvetica Neue,Arial,sans-serif;
}
#ihpctm button .belir{
  font-size:.875rem;
  top:2px;
  position:relative;
}
#ihpctm button:not(.collapsed){
  margin-top:1rem;
}

@media (max-width:767.98px){
  body:not(.btf-mobile-inline) #ihpct,body:not(.btf-mobile-inline) #ihpctm{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0, 0, 0, 0) !important;
    white-space:nowrap !important;
    border:0 !important;
  }
  body:not(.btf-mobile-inline) #ihpct button,body:not(.btf-mobile-inline) #ihpctm button{
    margin:0;
  }

  body.btf-mobile-inline #ihpct,body.btf-mobile-inline #ihpctm{
    border-bottom:2px solid #00a862;
    margin-bottom:1rem;
    margin-top:-1rem;
    width:calc(100% - 2rem);
    margin-left:1rem;
    position:relative;
    left:0;
  }
  body.btf-mobile-inline #ihpct button,body.btf-mobile-inline #ihpctm button{
    position:relative;
    bottom:-.7rem;
    padding:0 .5rem;
    background:#fff !important;
    font-size:1.25rem;
  }
}
.trainline-booking-form.exposed #ihpct,.trainline-booking-form.exposed #ihpctm{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0, 0, 0, 0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.trainline-booking-form.exposed #ihpct button,.trainline-booking-form.exposed #ihpctm button{
  margin:0;
}

@media (max-width:767.98px){
  body:not(.btf-mobile-inline) .initially-hidden-portion{
    display:block !important;
  }

  body.btf-mobile-inline .initially-hidden-portion{
    margin-top:0;
  }
  body.btf-mobile-inline .initially-hidden-portion .chips-container .chips{
    border-bottom:1px solid #bfbfbf;
  }
  body.btf-mobile-inline .initially-hidden-portion .chips-container .chips-list{
    margin-bottom:.25rem;
  }
  body.btf-mobile-inline .init-vis-form-group label{
    background-color:#f7f7f7;
  }
  body.btf-mobile-inline .init-vis-form-group label:after,body.btf-mobile-inline .init-vis-form-group label:before{
    content:none;
  }
  body.btf-mobile-inline .init-vis-form-group input{
    border-left:none;
  }
}
.trainline-booking-form.exposed .initially-hidden-portion{
  display:block !important;
}
.swap-col{
  text-align:center;
  position:relative;
  padding:0;
}

.swap-stations{
  margin:auto;
  right:6px;
  position:relative;
}

@media (max-width:767.98px){
  .swap-stations{
    transform:rotate(90deg);
    position:absolute;
    right:0;
    z-index:2;
    top:-1.5rem;
  }
}
.trainline-booking-form.exposed .swap-stations{
  transform:rotate(90deg);
  position:absolute;
  right:0;
  z-index:2;
  top:-1.5rem;
}
@media (max-width:767.98px){
  .trainline-booking-form.exposed .swap-stations{
    right:-6px;
  }
}
@media (max-width:767.98px){
  body:not(.btf-mobile-inline) .trainline-booking-form:not(.exposed):not(.bkf-widget){
    position:fixed;
    top:0;
    left:0;
    height:100%;
    width:100vw;
    padding:0;
    overflow:scroll;
    border-radius:0;
    border:none;
  }
  body:not(.btf-mobile-inline) #buy-tickets:not(.exp-frm-wrap){
    position:fixed;
    top:0;
    left:0;
    background:#fff;
    z-index:11;
    width:100%;
    height:100%;
    overflow-x:hidden;
    overflow-y:auto;
    outline:0;
  }

  body.btf-mobile-inline .trainline-booking-form:not(.exposed):not(.bkf-widget) .mobile-header{
    display:none;
  }
  body.btf-mobile-inline #bt-wrapper{
    background-color:#fff;
  }
}
.tls-bkf-wrapper.full,.tls-bkf-wrapper.lite,.tls-bkf-wrapper.twocolumn{
  background-color:#f2f2f2;
}
.tls-bkf-wrapper h1{
  color:#fff;
  background-color:#4e5055;
  padding:.5rem .75rem;
  margin-left:-.75rem;
  width:calc(100% + 1.5rem);
  margin-bottom:1rem;
  font-family:SiteFont-Medium,Helvetica Neue,Arial,sans-serif;
  font-size:1.75rem;
}
@media (max-width:767.98px){
  .tls-bkf-wrapper form .form-group{
    margin-bottom:.25rem;
  }
}
.tls-bkf-wrapper form .init-vis-form-group input{
  border-left:2px solid #bfbfbf;
}

.buy-tickets-foot{
  margin-left:-.75rem;
  width:calc(100% + 1.5rem);
  text-align:center;
  margin-top:.5rem;
  padding:0 1rem;
}
.buy-tickets-foot img{
  max-width:100%;
  height:auto;
}
.buy-tickets-foot span{
  display:block;
  width:100%;
  margin-bottom:1rem;
}

.bkf-ft-texts .bkf-ft-text{
  position:relative;
}
.bkf-ft-texts .bkf-ft-text span{
  display:block;
  padding:.5rem;
  text-overflow:ellipsis;
  white-space:nowrap;
  overflow:hidden;
  text-align:left;
  color:inherit;
  font-family:inherit;
  font-size:1rem;
}
.bkf-ft-texts .bkf-ft-text:first-child span,.bkf-ft-texts .bkf-ft-text:nth-child(2) span{
  border-bottom:1px solid #bfbfbf;
}
.bkf-ft-texts .bkf-ft-text:first-child,.bkf-ft-texts .bkf-ft-text:nth-child(3){
  border-right:1px solid #bfbfbf;
  text-align:left;
}
.bkf-ft-texts .bkf-ft-text:nth-child(2) span,.bkf-ft-texts .bkf-ft-text:nth-child(4) span{
  border-bottom:1px solid #bfbfbf;
  text-align:left;
}
.bkf-ft-texts .bkf-ft-text:first-child:after{
  height:0;
  bottom:0;
  width:3rem;
  content:"";
  display:block;
  position:absolute;
  right:-1.5rem;
  border-bottom:1px solid #bfbfbf;
}

@media (max-width:579.98px){
  .buy-tickets-foot{
    text-align:left;
  }

  .bkf-ft-text{
    width:100%;
  }
  .bkf-ft-text span{
    text-align:left;
  }
}
.passenger_add .input-group-text{
  cursor:pointer;
}
.passenger_add .input-group-text span{
  color:#4e5055;
}

.trainline-booking-form .passengers{
  margin-top:1rem;
  padding-bottom:1rem;
}

.trainline-booking-form .promotional-code a{
  color:#080607;
}
.trainline-booking-form .promotional-code a i{
  color:#00a862;
}
.trainline-booking-form .promotional-code a:hover{
  color:#080607;
}
.trainline-booking-form .promotional-code a:hover i{
  color:#007544;
}
.sdb-bnr{
  background-color:#f0f0f0;
}
.sdb-bnr form{
  margin-top:0 !important;
  padding-top:1rem !important;
  padding-bottom:1rem !important;
}

@media (max-width:579.98px){
  .trainline-booking-form.two-step .railcards .railcard .railcard-amount{
    flex-basis:auto;
  }
}
#ui-datepicker-div{
  display:none;
}
.trainline-booking-form .form-group.has-alert{
  margin-top:-.5rem;
  padding:.5rem .5rem .0625rem;
  border:.125rem solid #fff;
  border-bottom-width:.25rem;
  border-radius:.125rem;
  flex-wrap:wrap;
}
.trainline-booking-form .form-group.has-alert.info{
  border-color:#14ab56;
}
.trainline-booking-form .form-group.has-alert.info .station-message:before{
  color:#14ab56;
  display:block;
  position:absolute;
  top:.75rem;
  left:.5rem;
  line-height:1;
  font-family:Font Awesome\ 5 Pro;
  font-style:normal;
  font-weight:400;
  content:"";
  font-size:1.25rem;
}
.trainline-booking-form .form-group.has-alert.warning{
  border-color:#e47819;
}
.trainline-booking-form .form-group.has-alert.warning .station-message:before{
  color:#e47819;
  display:block;
  position:absolute;
  top:.75rem;
  left:.5rem;
  line-height:1;
  font-family:Font Awesome\ 5 Pro;
  font-style:normal;
  font-weight:900;
  content:"";
  font-size:1.25rem;
}
.trainline-booking-form .form-group.has-alert.alert{
  border-color:#f74860;
}
.trainline-booking-form .form-group.has-alert.alert .station-message:before{
  color:#f74860;
  display:block;
  position:absolute;
  top:.75rem;
  left:.5rem;
  line-height:1;
  font-family:Font Awesome\ 5 Pro;
  font-style:normal;
  font-weight:900;
  content:"";
  font-size:1.25rem;
}
.trainline-booking-form .form-group.has-alert .station-message{
  padding:12px 5px 5px 39px;
  position:relative;
}
@media (max-width:767.98px){
  body:not(.bp-xs):not(.bp-sm) #tbi-buy-tickets{
    display:none;
  }
  body:not(.bp-xs):not(.bp-sm) #nav-btld a.active,body:not(.bp-xs):not(.bp-sm) #nav-btld a.active:active,body:not(.bp-xs):not(.bp-sm) #nav-btld a.active:hover,body:not(.bp-xs):not(.bp-sm) #nav-btld a:active,body:not(.bp-xs):not(.bp-sm) #nav-btld a:hover{
    color:#fff !important;
    background-color:#00a862 !important;
  }
}
.widget-staff .ui-datepicker{
  top:0 !important;
}

/*# sourceMappingURL=booking-form-desktop.css.map */