@media only screen and (max-width:599px) {
	.hiddenOnPhone {
		display:none !important;
	}

    .onlyOnPhone {
        display:inline-block;
    }
	
	span.onlyOnPhone {
		display:inline;
	}
	
	div.onlyOnPhone {
		display:block;
	}
	
	#layerMapWrap {
		display:none !important;
	}
	
	#HFS h2.separator  {
		font-size:16px;
	}
	
	body #HFS #HFSHint h2 {
		font-size:20px;
	}
	
	#HFS a {
		font-size:14px;
	}

  #HFS .wrapResponsiveTable {
    border-left: 2px dashed #dadada;
    padding-left: 12px;
    overflow-x: auto;
  }

  #HFSResult .detailsContent #tariffAssistant .wrapResponsiveTable > table,
  #HFS .wrapResponsiveTable > table {
    width: 580px;
  }

  #HFSResult .detailsContent .wrapResponsiveTable > table.tariffTable {
    min-width: 250px;
  }

  #HFSResult .detailsContent .wrapResponsiveTable > table.tariffTable tr td:last-child {
    white-space: nowrap;
  }
	
	body #HFS .linkGroup {
		margin-bottom:10px;
	}

  #HFS .inputHolder, #HFS .timeInputHolder, 
  #HFS .dateInputHolder, #HFSQuery .dateInputHolder,
  #HFS .productSelectHolder,
  #HFS .travellerRow .selectHolder {
    display: block;
  }

  #HFS .inputHolder.inlineInput input[type="text"] {
    width: 100%;
  }

  #HFSQuery .expandProductButtonHolder, #HFSQuery .timeSelectHolder {
    display: none;
  }

  #HFSQuery .expandProductButtonHolder, #HFSQuery .timeSelectHolder, #HFSQuery .locationButtonHolder {
    display: block;
  }

  #HFSQuery .inputHolder.inlineInput input[type="submit"],
  #HFSQuery .locationButtonHolder input[type="submit"] {
    margin-top: 1em;
  }


  #HFS label.front {
    display: block;
  }
	
	/* ################ slider ############# */
	
	
	#HFS #HFSNaviTop {
		margin:0px 0px 20px;
	}

    #HFSNaviTop ul li a {
        display: inline-block;
        padding: 10px;
        vertical-align: middle;
        font-size: 1.6em;
    }

    .fixedWidthForFirstLabel {
        display: block;
    }
	/* ############## tp ################### */
	
	#HFS .ringSwitchHolder {
		display:none;
	}
	
	#HFS #HFSQuery .mapButton {
		display:none;
	}

	#HFS #HFSQuery .via1Button,
	#HFS #HFSQuery .via2Button {
		margin: 1em 0 0 0px;
	}
	
	body #HFS label.checkLabel {
		margin-right:10px;
	}
	
	#HFS #HFSQuery #HFS_via1, 
	#HFS #HFSQuery #HFS_via2 {
		margin-right:0px;
	}

	#HFS #tariffAssistant .calDayScoller,
	#HFS #HFSQuery .calDayScoller {
		display:none;
	}
	
	#HFS #tariffAssistant .calButton,
	#HFS #HFSQuery .calButton {
		width:100px;
		display: none !important;
	}

    #HFSResult .tableResultTrainRoute .pearl .dot, #HFSResult .detailsTable .pearl .dot {
        margin-left: -1px;
    }

  #HFSResult .tableResultTrainRoute .pearl .line,
  #HFSResult .detailsTable .pearl .line {
    left: 7px;
  }

  #HFSResult .tableResultTrainRoute .pearl .hideInterDot, 
  #HFSResult .tableResultTrainRoute .pearl .showInterDot, 
  #HFSResult .detailsTable .pearl .hideInterDot, 
  #HFSResult .detailsTable .pearl .showInterDot {
    margin-left: 7px;
  }
	
	#HFS .tpButtonHolder input[type=submit] {
		padding-left: 0px;
		padding-right: 0px;
		margin-left: 0px;
		display: block;
		clear: both;
		float: none;
		width: 100%;
		margin-bottom: 9px
	}
	
	#HFS #HFS .tpSearch {
		padding:0px 10px;
		float:right;
		margin:0px;
	}
	
	#HFS .tpButtonHolder #queryInputButtons {
		float:none;
		height:60px;
	}

	#HFSQuery .travellersHolder {
		padding-bottom: 9px;
	} 

	#HFSQuery .travelerItem {
		display: block;
		width: 100%;
		margin-right: 0px;
		margin-bottom: 6px;
	}

	#HFSQuery .travelerItem:after {
		clear: both;
	}

	#HFSQuery .travelerItem label {
		white-space:nowrap;
		text-align: left;
		width: 145px;
		margin-right: 0;
		float: left;
		display: inline-block;
	}

  #HFSQuery .travelerItem.first label, 
  #HFSQuery .travelerItem.last label {
    width: 145px;
  }

	#HFSQuery .travelerItem select {
		margin-left: 0;
		display: inline-block;
	}

	/* ######################## tariffAssistant ################### */
	#tariffAssistant .ta_person_row {
		clear: left;
	}

	#tariffAssistant .inputHolder {
		right: 0px;
	}


	#tariffAssistant .ta_person_row div.ta_person_first_column,
	#tariffAssistant .ta_person_row div.ta_person_quantity {
		margin-bottom: 3px;
	}

	#tariffAssistant .ta_person_row div.ta_person_first_column {
		width: 75px;
    font-size: 90%;
	}

	#tariffAssistant .ta_person_row div.ta_person_first_column label {
		width: 85px;
	}

	#tariffAssistant .ta_person_row div.ta_person_quantity {
		width: 65px;
    font-size: 90%;;
	}

	#tariffAssistant .ta_person_row input.ta_person_quantity {
		width: 8ex;
		text-align: center;
	}

	#tariffAssistant .errormessage,
	#tariffAssistant .taPassengers .errormessage {
		padding-left: 0px;
	}

	body #HFS #HFSQuery .tpSearch,
	body #HFS .HButton {
		display:block;
		float:none;
		width:100%;
		margin-bottom:10px;
	}
	
	#HFS #HFSQuery .tpButtonHolder #tpQueryInputButtons, 
	#HFS #HFSQuery .tpButtonHolder #tpSearchWaitScreen {
		float:none;
	}

	/* ################## Checkbox/RadioButtonLists ##########################*/
	.inlineDateChooser {
		display: block;
	}

	/* ####################### Tp Result Overview ########## */
	
	#HFS #HFSResult .resultTable th {
		padding:10px 0px;
		font-size:14px;
	}
	
	#HFS #HFSResult .resultTable tr.tpOverview td {
    line-height: 22px;
  }
	
	#HFS .resultTable th.changes,
	#HFS .resultTable td.ovChanges,
	#HFS .resultTable th.date,
	#HFS .resultTable th.station,
	#HFS .resultTable td.ovDate,
	#HFS .resultTable td.ovStation {
		display:none;
	}
	
	#HFS #HFSResult .resultTable td {
		padding:5px 10px 5px 0px;
	}
	
	#HFS .resultTable td.fares,
	#HFS .resultTable td.ovDuration div,
	#HFS .resultTable td.ovTime {
		white-space:nowrap;
	}
	
	#HFS .resultTable td.products img.product {
		margin-right:2px;
		width:20px;
		height:20px;
	}
  
  #HFSResult .resultTable tr.details .LinkButton {
    margin-right: 0px;
    display: block;
  }
  
	#HFS #HFSResult tr.navi td.timeButton {
		transition:all 0.4s ease-out 0s;
		border-radius:2px;
		padding:5px;
		color:#fff;
		font:14px/1.43 Arial,sans-serif;
		height:30px;
		border:0px none;
		vertical-align:middle;
		font-weight:bold;
		cursor:pointer;
		text-align:center;

		background-color:#bbb3ab;
		background: -moz-linear-gradient(top,  rgb(186,179,171) 0%, rgb(151,145,138) 100%) no-repeat scroll 0 0 #97908a;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(186,179,171,1)), color-stop(100%,rgba(151,145,138,1))) no-repeat scroll 0 0 #97908a;
		background: -webkit-linear-gradient(top,  rgba(186,179,171,1) 0%,rgba(151,145,138,1) 100%) no-repeat scroll 0 0 #97908a;
		background: -o-linear-gradient(top,  rgba(186,179,171,1) 0%,rgba(151,145,138,1) 100%) no-repeat scroll 0 0 #97908a;
		background: -ms-linear-gradient(top,  rgba(186,179,171,1) 0%,rgba(151,145,138,1) 100%) no-repeat scroll 0 0 #97908a;
		background: linear-gradient(to bottom,  rgba(186,179,171,1) 0%,rgba(151,145,138,1) 100%) no-repeat scroll 0 0 #97908a;
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bab3ab', endColorstr='#97918a',GradientType=0 );
		background-position:0px 0px;
	}
	
	#HFS #HFSResult tr.navi td.timeButton a { color:#fff; display:block; }
	
	#HFS #HFSResult .tabGroup {
		padding: 0;
		margin-top: 1em;
		margin-bottom: 0px;
	}

  #HFS #HFSResult .tabGroup a {
    display: block;
    margin-right: 0;
    border-width: 1px 1px 0px 1px;
    border-style: solid solid none solid;
    border-color: #dadada;
    background: #fff;
    font-family: "CelesteWeb",Times,serif;
    color: #bbb3ab;
  }

  #HFS #HFSResult .tabGroup a.activeTab {
    font-weight: bold;
    color: #00a2aa;
  }
	/* ########################## Tp Details ######################## */
	
	#HFS #HFSResult tr.tpDetails td.platform {
		white-space:nowrap;
	}
	
	body #HFS #HFSResult .resultTable td { padding: 9px 3px; }
	body #HFS #HFSResult .resultTable .intermediateSection  td { padding: 3px; }
	body #HFS #HFSResult .resultTable .intermediateStop td { padding: 1px 3px; }
	#HFS #HFSResult .detailsContent .mapConnectionDetails {
		width:100%;
		padding:0px;
	}

  #HFSResult .detailsContent .ajaxmapdiv {
    width: 100%;
    position: static;
    display: inline-block;
    height: 400px;
    vertical-align: top;
  }
  
  
	#HFS #HFSResult .detailsContent table.ajaxMapConnection .showWholeJourney {
		float:right;
		margin-top:0px;
	}
	
	#HFSResult .detailsContent table.ajaxMapConnection {
		margin-bottom:0px;
	}
	#HFS #HFSResult .resultTable td.additionalContent .detailsContent {
		padding:10px;
    width: 85%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
	}

  #HFSResult .resultTable tr.tpOverview  td {
    border-bottom: 2px solid #bbb3ab;
  }
  
  #HFS #HFSResult .resultTable td.additionalContent .detailsMenu {
       display: none;
     }
	
	#HFS #HFSResult .detailsContent .mapDetails {
		white-space:normal;
	}
	
	#HFS #HFSResult .detailsTable .intermediateStop .pearl .dot {
		margin-left: 1px;
	}

  #HFSResult .resultTable .showAsTable                  {display: block;}
  #HFSResult .resultTable .showAsTableRow               {display: block;}
  #HFSResult .resultTable .showAsTableCell              {display: inline-block;}

  #HFSResult .resultTable .connectionIcon               { width: 10%; }
  #HFSResult .resultTable .connectionStation            { width: 58%; }
  #HFSResult .resultTable .connectionDate               { width: 28%; text-align: right; }
  #HFSResult .resultTable .connectionTime               { width: 24%; }
  #HFSResult .resultTable .connectionRealTime           { width: 30%; }
  #HFSResult .resultTable .connectionDuration           { width: 24%; text-align: center; }
  #HFSResult .resultTable .connectionChanges            { width: 16%; text-align: right; }
  #HFSResult .resultTable .connectionProducts           { width: 69%; }
  #HFSResult .resultTable .connectionFares              { width: 29%; text-align: right; }

  #HFSResult .resultTable .connectionInlineSeparator {
    width: 100%;
    height: 1px;
    margin: 0;
    padding: 0;
    border-top: 1px dotted #bbb3ab;
  }

  #HFSResult .resultTable .connectionProducts,
  #HFSResult .resultTable .connectionFares,
  #HFSResult .resultTable .connectionTime,
  #HFSResult .resultTable .connectionRealTime,
  #HFSResult .resultTable .connectionDuration,
  #HFSResult .resultTable .connectionChanges {
    font-size: 0.9em;
  }

  #HFSResult .resultTable .connectionProducts .productBit .productIcon {
    font-size: 18px;
    line-height: 18px;
    
  }
  
	/* ########################## Tariff Assistant ##########################*/
	.wrapTASuggestions .ta_slider li,
	.wrapTASuggestions .ta_slider li.overflowText {
		display: block;
		width: 100%;
		margin-right: 0;
	}

	.wrapTASuggestions .ta_slider li .taSimple, 
	.wrapTASuggestions .ta_slider li .taSimpleActive,
	.wrapTASuggestions .ta_slider li.overflowText .taSimple, 
	.wrapTASuggestions .ta_slider li.overflowText .taSimpleActive {
		width: 100%;
	}

  #HFSQuery .productChoiseTable .itemProduct input.checkbox {
    position: absolute;
    visibility: hidden;
    left: -3000px;
  }

  #ovLegendRealtime .wrapRealtimeLegend .col-right,
  #ovLegendRealtime .wrapRealtimeLegend .col-left {
    float: none;
    width: 100%;
  }

}
