
/**

db_cool_gray_700 = #282D37
db_cool_gray_500 = #646973
db_cool_gray_400 = #878C96
db_cool_gray_300 = #AFB4BB
db_cool_gray_100 = #F0F3F5
db_white = #FFFFFF
db_black = #000000
db_red_500 = #EC0016
Schriftfarbe Input: #131821

**/

*,
#doc #content *                       {box-sizing: border-box !important;}
*::before, *::after                   {box-sizing: border-box;}
.icon-menu-wrapper                    {position: relative;}

/* overwrite bahn.css style to use the original style */
#doc sup                              {vertical-align:super;}

#doc #header                          {z-index: 2000; box-shadow: 0 6px 8px -4px rgb(0 0 0 / 30%);}
#header div.selectbox-wrapper         {background: #fff none !important;}
#header #country-selector div.selectbox-wrapper ul li:hover,
#header div.selectbox-wrapper ul li.current {background: #fff url(../img/icon_arrow.png) left center no-repeat !important; color: #c00 !important; text-decoration: underline !important;}
#header #country-selector div.selectbox-wrapper ul li {background: #fff url(../img/icon_arrow.png) left center no-repeat !important; background-image: url(../img/icon_arrow.png) !important; font-family: DBSansRegular; margin-left: 20px;}
#header #country-selector div.selectbox-wrapper {padding: 5px 0; -webkit-box-shadow: 0 0 12px -2px rgba(0,0,0,0.5);	box-shadow: 0 0 12px -2px rgba(0,0,0,0.5); overflow: visible; margin-top: 8px;}
#header #country-selector div.selectbox-wrapper::before   {background: #fff;content: ""; display: block; height: 10px; position: absolute; top: -4px; left: 14px; transform: skew(0deg) rotate(135deg); -webkit-transform: skew(0deg) rotate(135deg); -moz-transform: skew(0deg) rotate(135deg); -ms-transform: skew(0deg) rotate(135deg); -o-transform: skew(0deg) rotate(135deg); width: 10px; box-shadow: -3px 3px 3px 0 rgba(0,0,0,0.12); }



#suggestion                           {position: absolute; background-color: #fff; box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.4); font-family: DBSansRegular; left: -1px; margin-top: 11px; padding: 10px 0; border:none !important;}
#suggestion::before                   {background: #fff none repeat scroll 0 0; box-shadow: -3px 3px 3px 0 rgba(0, 0, 0, 0.12); content: ""; display: block; height: 10px; width:10px; left: 10px; position: absolute; top: -4px; transform: skew(0deg) rotate(135deg); -ms-transform: skew(0deg) rotate(135deg); -webkit-transform:skew(0deg) rotate(135deg);}
#suggestion #suggestionCon div        {cursor: pointer; height: 32px; line-height: 32px; padding: 0 7px; margin:0; font-size:0.875em; white-space: nowrap; overflow:hidden; text-overflow:ellipsis;}
#suggestion #suggestionCon            {overflow: auto; overflow-x: hidden; overflow-y: auto; margin:0; padding:0;}
#suggestion .selected,
#suggestion .selected span,
#suggestion #suggestionCon div:hover  {background-color: #e7e7e7 !important;}
#suggestion hr                        {background-color: #000; margin:0;}

/* Flexbox Classes */
.flexed                               {display: flex;}
.itemsCentered                        {align-items: center;}


/* icons */
span.ico, span.ico2, i.ico2           {display: block; position: absolute;}
span.ico.iconBorder                   {border:1px solid #f5f5f5}
span.icon-inline                      {display:inline-block;}
.icon-wrapper                         {background-repeat:no-repeat;border:1px solid #878c96; margin: 5px 0 0;}
#iconProfile.icon-wrapper             {margin:0 10px 0 0;}

.icons-calendar-big                   {display:inline-block; background-image: url("../img_responsive/24dp_icon_action_calender.svg"); background-repeat: no-repeat; background-size: 24px; height: 24px; width: 24px;}
.icons-arrow-left-btn                 {background-image: url(../img_responsive/24dp_icon_navigation_chevron-left.svg);}
.icons-arrow-right-btn                {background-image: url(../img_responsive/24dp_icon_navigation_chevron-right.svg);}
.icons-arrow-left-btn,
.icons-arrow-right-btn                {display:inline-block; height: 30px; width: 30px; background-size: 24px; background-repeat: no-repeat; background-position: center center; cursor: pointer;}
.icons-trash-dark                     {background-image: url(../img_responsive/20dp_icon_action_delete_grey400.svg); height: 20px; width: 20px; background-size: 20px; opacity: 0.8;}
.querybutton .icons-trash-dark        {margin-top:0;}
.icons-info-dark                      {background-image: url(../img_responsive/24dp_icon_action_info_grey400.svg); background-size: 24px; background-position: center; height: 24px; width: 24px; cursor:pointer; display:block;}
.icons-info-dark:hover                {cursor: pointer;}
table.traveller .icons-info-dark,
table#productsDetailed .icons-info-dark {top:4px;}

#content .icons-bike                  {background-image: url(../img_responsive/20dp_icon_transportation_bicycle.svg); background-size: 20px; background-position: center -1px; height: 20px; width: 20px;}
#content span.labelSpanWithIcon       {display:block; padding-left: 30px; text-align:left; white-space:normal;}
#content span.labelSpanWithIcon.hasInfoIcon {padding-right:30px;}
#content span.labelSpanWithIcon sup   {position:absolute; top:0;}
#content a.bikeCarriageInfo           {position: absolute; right: 30px; top:0;}

#content input.toggleBtn                       {margin: 32px 16px 16px; padding-left: 32px; border: none !important; cursor:pointer; background-repeat: no-repeat; background-position: left center; background-size:24px; background-color: transparent; text-decoration:none; line-height:24px; font-size:18px; font-family:DBHeadLightRegular; color:#282D37; display:block;}
#content input.toggleBtn:focus        {background-color: transparent;}
#content input.toggleBtnClosed        {background-image: url(../img_responsive/24dp_icon_navigation_chevron-right.svg); border-bottom:1px solid #AFB4BB;}
#content input.toggleBtnOpened        {background-image: url(../img_responsive/24dp_icon_navigation_expand-more.svg);}

/* Streckenprofile */
.icons-star-big                       {display:inline-block; background-position: -60px -317px; height: 32px; width: 32px; margin-right:10px; border: 1px solid #b7bac0;}
.icons-star-big:hover                 {background-position: -30px -317px;}
.icons-star-yellow-big                {display:inline-block; background-position: -90px -317px; height: 32px; width: 32px; margin-right:10px; border:1px solid #878c96;}
.icons-star-yellow-big:hover          {background-position: -90px -347px;}
.icons-star-big.activeIcon,
.icons-star-yellow-big.activeIcon     {background-position: -56px -257px; border:1px solid #878c96;}

/* Reisendenprofile */
.icons-person-grey-big                {background-position:-30px -347px; width:32px; height:32px; border: 1px solid #b7bac0;}
.icons-person-grey-big-dark,
.icons-person-grey-big:hover          {background-position:0px -377px;}
.icons-person-darkgrey-big            {background-position:0 -317px; width:32px; height:32px; border:1px solid #878c96;}
.icons-person-darkgrey-big-dark,
.icons-person-darkgrey-big:hover      {background-position:-60px -347px;}
.icons-person-grey-big.activeIcon,
.icons-person-darkgrey-big.activeIcon {background-position:-26px -257px; border:1px solid #878c96;}

.icons-close-x-grey                   {height:10px; width:10px; background-position:-11px -31px; display:block;}
.icons-close-big                      {background-image: url("../img_responsive/32dp_icons_navigation_close.svg"); background-position: center  center; background-repeat: no-repeat; background-size: 32px 32px; cursor: pointer; height: 32px; width: 32px; display: block;}
.icons-calendar-grey                  {background-position: -59px -15px; height: 15px; width: 19px;}
/*.icons-alarm                          {background-position: -60px -146px; height: 21px; width: 19px;}*/
.icons-alarm                          {background-image: url("../img/24_Glocke_grau.svg"); height: 21px; width: 16px;}
.icons-traincomposition               {height: 21px; width: 19px;}
.icons-pin-grey                       {background-position: -18px -106px; height: 19px; width: 19px;}
.icons-transfer                       {background-position: -21px -31px; height: 10px; width: 22px; margin: 0 10px 0 5px; display:inline-block !important; position:relative !important;}
.icons-magnifier-minus                {background-position: -37px -47px; height: 17px; width: 17px;}
.icons-magnifier-plus                 {background-position: -13px -69px; height: 17px; width: 17px;}
.icons-arrow-station                  {background-position: -34px 0; height: 12px; width: 18px; margin: 0 4px; position: relative; top: 1px;}
.icons-environmentcheck               {background-image: url("../img_responsive/20dp_icon_feature_environmental-mobility-check_lightgreen600.svg"); display: block; position: absolute; left: 0; top: -2px; height: 20px; width: 20px;}

/* Produkte */
.icons-transport-0,
.icons-transport-1,
.icons-transport-2,
.icons-transport-2,
.icons-transport-3,
.icons-transport-4,
.icons-transport-5,
.icons-transport-6,
.icons-transport-7,
.icons-transport-8,
.icons-transport-9                    {background-size:20px 20px; background-repeat:no-repeat; background-position:left top; margin: 2px 16px; padding-left:38px; display:inline-block;}
.icons-transport-0                    {background-image:url(../img_responsive/20dp_icon_transportation_ICE.svg);}
.icons-transport-1                    {background-image:url(../img_responsive/20dp_icon_transportation_IC.svg);}
.icons-transport-2                    {background-image:url(../img_responsive/20dp_icon_transportation_RE.svg);}
.icons-transport-3                    {background-image:url(../img_responsive/20dp_icon_transportation_RB.svg);}
.icons-transport-4                    {background-image:url(../img_responsive/20dp_icon_transportation_S.svg);}
.icons-transport-5                    {background-image:url(../img_responsive/20dp_icon_transportation_Bus.svg);}
.icons-transport-6                    {background-image:url(../img_responsive/20dp_icon_transportation_Ship.svg);}
.icons-transport-7                    {background-image:url(../img_responsive/20dp_icon_transportation_U-Bahn.svg);}
.icons-transport-8                    {background-image:url(../img_responsive/20dp_icon_transportation_Tram.svg);}
.icons-transport-9                    {background-image:url(../img_responsive/20dp_icon_transportation_Taxi.svg);}

/* Suggest */
.icon-autocomplete                    {display: block; float: left; height: 19px; margin: 6px 11px 0 3px; width: 20px;}
.icons-autocomplete-station           {background-image:url(../img_responsive/20dp_icon_maps_station.svg); background-position: center center; height: 20px; width: 20px; background-size:20px 20px; background-repeat:no-repeat;}
.icons-autocomplete-address           {background-image:url(../img_responsive/20dp_icon_maps_home.svg); background-position: center center; height: 20px; width: 20px; background-size:20px 20px; background-repeat:no-repeat;}
.icons-autocomplete-poi               {background-image:url(../img_responsive/20dp_icon_journey_destination.svg); background-position: center center; height: 20px; width: 20px; background-size:20px 20px; background-repeat:no-repeat;}
.icons-autocomplete-blank             {background-image:none !important;}

/* journey summary */
.icon-journey-start                   {background-image:url("../img_responsive/20dp_icon_journey_start.svg"); background-repeat:no-repeat; background-position:0px 0px; display: inline-block; vertical-align: top; height:20px; width:20px;}
.icon-journey-dest                    {background-image:url("../img_responsive/20dp_icon_journey_destination-filled.svg"); background-repeat:no-repeat; background-position:0px 0px; display: inline-block; vertical-align: top; height:20px; width:20px;}
.icon-journey-time                    {background-image:url("../img_responsive/20dp_icon_action_schedule.svg"); background-repeat:no-repeat; background-position:0px 0px; display: inline-block; vertical-align: top; height:20px; width:20px;}
.icon-journey-traveller               {background-image:url("../img_responsive/20dp_icon_action_account-solid.svg"); background-repeat:no-repeat; background-position:0px 0px; display: inline-block; vertical-align: top; height:20px; width:20px;}

/* Links (mit Icon) */
a.form-link                           {font-family: DBSansRegular; font-size: 14px !important; display:inline-block;}
a.form-link.reset                     {margin-right: 25px; line-height:20px;}
a.form-link.reset span.ico-link-text  {padding-left: 28px; color:#646973;}
a.form-link.reset:hover .icons-trash-dark,
.icons-trash-dark:hover               {opacity:1;}

/* Link zum Schließen in relativ positionierten Boxen */
a.closeIcon                           {position:absolute; top:18px; right:18px; outline:none; font-size:0.75em; z-index:10000;}
a.closeIcon.moreSpace                 {right:20px;}
#trainCompositionLayer                {box-sizing: content-box !important;}
#returnJourneyLayer a.closeIcon,
#infoLayer a.closeIcon,
#trainCompositionLayer a.closeIcon,
#infoLayerReservation a.closeIcon     {right: 18px; top: 18px;}
#mafoLayer a.closeIcon                {right:10px; top:0px;}
#returnJourneyLayer #productsDetailed a.closeIcon {top:10px; right:10px;}

#returnJourneyLayer .time-wrapper {width:186px;}
#returnJourneyLayer .time-wrapper input {width:124px;}

#content #productsDetailed h3         {margin:16px 0 8px; font-family: DBSansRegular; font-weight:normal; font-size:14px; line-height:20px; color:#646973;}
#content #productsDetailed h3#productsHeadline_1 {margin-top:24px;}
#content #productsDetailed ul         {background-color: #F0F3F5; padding:16px; margin:16px 0;}
#content #productsDetailed ul li      {padding-bottom:12px;}
#content #productsDetailed ul li:last-child {padding-bottom:0;}
#content #productsDetailed .productsFurtherOptions {margin: 16px 0;}


/* Toggle, z.B. ab/an */
.toggle-wrapper                        {margin:0; font-size: 1em;}
.toggle-wrapper label,
.toggle-wrapper-large label            {margin:0px 8px 0px 0px; margin-bottom: 5px; background-color:#fff; border:1px solid #878c96; min-width:35px; height:32px; cursor:pointer; position:relative; font-family:DBSansRegular; display:block; padding:5px 0 !important; text-align:center;}
.toggle-wrapper-large label            {margin: 0 10px 0 0; width: 105px;}
#returnJourneyLayer .toggle-wrapper label {margin:0px 0px 0px 3px !important;}
#returnJourneyLayer .toggle-wrapper label.noMarginRight {margin:0px 0 0 5px !important;}
.toggle-wrapper input[type="radio"]    {display:none;}
.toggle-wrapper input[type="radio"]:checked + label {border:1px solid #707580 !important; color:#f7f7f7 !important; background-position:-26px -197px; font-family:DBSansBold;}
.toggle-wrapper-large input[type="radio"]    {display:none;}
.toggle-wrapper-large input[type="radio"]:checked + label {border:1px solid #707580 !important; color:#f7f7f7 !important; background-position: 0 -227px; font-family:DBSansBold;}

/* Selectlisten */

div.custom-select.nachtzug,
div.nachtzug div.custom-select {margin:0 20px 5px 0;}
div.custom-select.partSearch {margin-left:0; margin-top:5px;}
#productsDetailed div.custom-select {margin:0;}
div.custom-select.intermodal {margin-bottom: 20px;}
div.custom-select.xtralarge {background-position: 258px -188px; width: 300px;}
div.custom-select.xtralarge select.dropdown {width:300px;}
div.custom-select.xtralarge285 {background-position: 258px -188px; width: 285px;}
div.custom-select.xtralarge285 select.dropdown {width:285px;}
div.custom-select.large {background-position: 258px -188px; width: 220px;}
div.custom-select.large select.dropdown {width: 264px; padding-left:8px; border:none; border-bottom: 1px solid #AFB4BB !important;}
div.custom-select.large206 {background-position: 258px -188px; width: 206px;}
div.custom-select.large206 select.dropdown {width: 206px;}
div.custom-select.medium {background-position: 258px -188px; width: 323px;}
div.custom-select.medium select.dropdown {width: 100%;}
div.custom-select.medium140 {background-position: 258px -188px; width: 140px;}
div.custom-select.medium140 select.dropdown {width: 140px;}
.dropup, .dropdown {position: relative;}
div.custom-select select.dropdown {background: transparent none repeat scroll 0 0; border: 0 none !important; border-radius: 0; display: inline; font-family: DBSansRegular; font-size: 16px; height: 44px; line-height: 44px; outline: medium none; overflow: hidden; padding: 0 40px 0 16px; /*position: absolute;*/ text-indent: 0.01px; -webkit-appearance:none; -moz-appearance:none; -ms-appearance:none; -o-appearance:none; appearance:none; outline: none;}
div.custom-select select.dropdown::-ms-expand {display:none;}
div.custom-select select.dropdown:-moz-focusring {color:transparent; text-shadow:0 0 0 #000;}
div.custom-select select.dropdown:focus::-ms-value {background:transparent; color:#000;}
.icons-arrow-down-select,
.icons-arrow-down-select-high   {background-image: url(../img_responsive/24dp_icon_navigation_expand-more.svg); background-repeat: no-repeat; background-size: 24px; background-position: center; width: 24px;}
.icons-arrow-down-select        {height: 44px; margin-right: 9px;}
.icons-arrow-down-select-high   {height: 44px; margin-right: 16px;}
div.custom-select .ico {position: absolute; right: 0;}

/* special container for location, date, time */
.locationFlex            {display:flex; align-items:flex-start;}
.locationContainer div   {margin:0; padding:0;}
.locationSwitchContainer {height:56px; display:flex; align-items:center;}
.locationSwitch          {background-image:url(../img_responsive/24dp_icon_action_swap-horizontal.svg); background-repeat:no-repeat; background-position: center center; background-size:24px; width:24px; height: 24px; border:none; background-color: #FFFFFF; margin:0 15px; padding:0;}
.locationSwitch:hover    {cursor:pointer;}
.dateContainerInner      {display:flex; align-items:center; position:relative;}
.timeContainer           {width:283px; display: inline-block;}
.timeContainerInner      {display: flex; align-items: center;}

/* Checkboxen */
#returnJourneyLayer .checkbox-wrapper input[type="checkbox"],
#content .checkbox-wrapper input[type="checkbox"] { margin: 5px 0 0 5px; opacity: 0;}
#returnJourneyLayer .checkbox-wrapper input[type="checkbox"] + label,
#content .checkbox-wrapper input[type="checkbox"] + label {background-repeat: no-repeat; background-size: 24px 24px; background-position: left top; cursor: pointer; display: inline-block; font-family: "DBSansRegular"; font-size: 16px; line-height: 18px; margin: 0; padding-left: 35px; padding-top:4px; position: relative; color:#282D37;}
#returnJourneyLayer .checkbox-wrapper input[type="checkbox"]:checked + label,
#content .checkbox-wrapper input[type="checkbox"]:checked + label {font-family: "DBSansBold";}
#content .checkbox-wrapper.products input[type="checkbox"] + label {background-position:left top; text-align:left; padding: 0 0 0 20px !important; line-height:24px; font-size:16px; font-family:DBsansRegular; white-space:normal;}
#content .checkbox-wrapper.products .title-transport {display:inline-block; white-space:normal;}
#content .checkbox-wrapper .next-boxes {margin-left: 20px;}

#content .checkbox-wrapper-small input[type="checkbox"] + label {background-position: 0px 2px !important; background-size: 15px; font-size: 1em !important; line-height: 0.9;}
#content .checkbox-wrapper-small input[type="checkbox"]:checked + label {background-position: 0 0 !important;}
#content .checkbox-wrapper-small                                {margin-top: 10px;}

/* Radiobuttons */
#content .radio-wrapper input[type="radio"],
#returnJourneyLayer .radio-wrapper input[type="radio"]            {display:none;}
#content .radio-wrapper input[type="radio"] + label,
#returnJourneyLayer .radio-wrapper input[type="radio"] + label    {background-repeat: no-repeat; background-position: left top; background-size: 24px 24px; cursor: pointer; display: inline-block; font-size: 16px; line-height: 24px; margin: 0 15px 0 0; padding-left: 26px; position: relative; color:#282D37; font-family:DBSansRegular; text-align:left; white-space:normal;}
#content .radio-wrapper.bcradio input[type="radio"] + label       {background-position: 0 center; margin-bottom:0 !important; padding-left: 45px !important; line-height: unset;}
#content .radio-wrapper.bcradio input[type="radio"] + label h2    {padding:5px !important; font-size: 18px !important; color: #282d37;}
#content .radio-wrapper.bcradio input[type="radio"] + label img   {margin: 0;}


/* Trennlinie */
hr.divider                    {margin:35px 0 25px; border-top: 1px solid #f5f5f5;}
hr.dividerMedium              {border-top: 1px solid #E8E8E8; background-color: transparent;}
/* dbr17.04: Abstände auf Eingabeseite verringern */
#content form hr.divider      {margin: 20px 0;}
hr.divider.smallSpace         {margin:10px 0 15px;}
hr.divider.dark               {border-top: 1px solid #AFB4BB;}
#mafoLayer hr.divider         {margin:15px 0;}
#infoLayerJourney hr.divider  {margin:24px 0;}

#content div.detailContainer table.result tr.dateDivider td             {background-color:#F5F5F5 !important; font-size:0.9em;}
#infoLayerJourney table.result tr.dateDivider td hr.divider             {margin:15px 0 10px !important;}
#content div.detailContainer table.result tr.dateDivider td hr.divider  {margin-bottom:10px !important;}
#infoLayerJourney table.result tr.dateDivider.noBackground td,
#content div.detailContainer table.result tr.dateDivider.noBackground td {background-color:transparent !important;}
#infoLayerJourney table.result tr.dateDivider.noBackground td span.dateDividerText,
#content div.detailContainer table.result tr.dateDivider.noBackground td span.dateDividerText {background-color:#FFFFFF;}
#infoLayerJourney table.journeyhint                                     {width:100%;margin-top:-6px;}
#infoLayerJourney table.journeyhint tr td                               {font-family:DBSansBold;text-align:center;}
.boldText {font-family:DBSansBold !important;}
.regularText {font-family:DBSansRegular !important;}
.spaceToBottom {margin-bottom:20px;}

#content div.resultContentHolder .dateDivider                           {position: relative;}
#content div.resultContentHolder .dateDivider .dateDividerLine          {width: 100%; border-top: 1px solid #282d37; position: absolute; top: 16px;}
#content div.resultContentHolder .dateDivider .dateDividerText          {padding: 4px 8px; display: inline-block; position: relative; color: #878C96; background-color: #fff; font-size: 14px; font-family: DBHeadRegular;}

#content div.detailContainer li.dateDivider                             {background-color: #FFFFFF; color: #282d37; border: none !important; position: relative; margin: 0 !important; padding:8px 21px !important;}
#content div.detailContainer li.dateDivider div.dateChange              {background-color:#FFFFFF; flex:0 0 100px; text-align:right; padding: 0 37px 0 0; margin:0 0 0 20px; z-index:3;}
#content div.detailContainer li.dateDivider div.dateChange span         {color:#878C96;}
#content div.detailContainer li.dateDivider .dateDividerLine            {width:auto; border-top: 1px solid #878C96; position: absolute; top: 50%; left:16px; right:16px;}

/**********************************************************************************************/

/* due to firefox */
#quickfinderDiv                       {position:absolute;}

/*div#doc                               {box-shadow:0 1px 8px 0 rgba(0, 0, 0, 0.4); background-image:none !important; padding: 0 !important; background-color:#FFFFFF !important;}*/
div#doc                                {box-shadow:0 1px 8px 0 rgba(0, 0, 0, 0.4); background-image:none !important; padding: 0 !important;}
#returnJourneyLayer div#doc           {box-shadow:none; background-color:transparent !important;}
#returnJourneyLayer div#doc div#content {padding:0; margin:0 !important; background-color:transparent !important;}
#returnJourneyLayer div#doc table.popupContent td {background-color:#f5f5f5; padding:8px;}
contentDivOpen
#doc div.headerZPlus                  {height: 52px;}
#doc #header.headerZPlus div#logo     {top: 11px}
#header div.customerLogo              {text-align: right; margin-top: 12px !important;}
#header div.partnerLogo               {position: absolute; left: 174px; height: 100%; line-height: 61px;}
#header div.partnerLogo img           {vertical-align: middle;}
#header div#logo                      {font-size: 1em; left: 16px; line-height: 100%; margin-bottom: 0; position: absolute; top: 12px;}
#header div#headerclose               {right: 24px; margin-bottom: 0; position:absolute; top: 18px;}
#main-nav ul.headerVirtual            {width: auto !important;}
#main-nav ul.headerVirtualRight a     {font-size:1.2em !important;}
#hafasContainer                       {position: relative; top: -12px; left: 1px; z-index: 100; padding-top:8px; width:972px;}
#hafasMC #hafasContainer              {top: 0;}
#hafasLegend                          {position: relative; padding-top:12px; background-color:#FFFFFF;}
#hafasContentEnd,
#hafasLegend .end                     {height: 17px; font-size: 1px; line-height: 1px;}
div.hafasContent,
#hafasLegend .content                 {background-color: #fff; padding-left: 15px; padding-right: 13px;}
.hafasContainerNoShadow               {background: transparent !important;}
.hafasContainerNoShadow .hafasContent,
.hafasContainerNoShadow .content      {background: #fff !important; border: 1px solid #ccc; margin: 13px 4px 7px 6px;}
.hafasContainerNoShadow #hafasContentEnd,
.hafasContainerNoShadow .end          {background: none !important; height: 0; margin: 0;}
#content .queryWrapper                {padding: 0 24px; margin-bottom: 55px; position:relative;}
#content h1,
#content h2,
#content div.queryBox,
#returnJourneyLayer h3                {padding:0;}
#content h2.queryHeadline             {margin: 32px 0px 16px; font-size:18px; color:#282D37; font-family:DBHeadLightRegular;}
#content div.errorMessageContainer,
#content div.queryBox				          {background-color: #FFFFFF; padding: 24px 16px; border-radius:4px;}
#content div.errorMessageContainer    {margin:0; background-color:#F0F3F5; padding:0;}
#content .returnPage div.queryBox.timeDateContainer,
#returnJourneyLayer div.queryBox.timeDateContainer                    {margin-bottom: 40px;}
#content div.returnPage div.queryBox.locationContainer,
#returnJourneyLayer div.queryBox.locationContainer                    {display:flex; flex-direction:row; justify-content: space-between; margin-bottom:20px;}
#content div.returnPage div.queryBox.locationContainer                {justify-content: flex-start;}
#content div.returnPage div.queryBox.locationContainer > div,
#returnJourneyLayer div.queryBox.locationContainer > div              {display:flex; align-items:center; width:340px; overflow-x: hidden; text-overflow: ellipsis; white-space:nowrap; font-size:16px; line-height:24px;}
#content div.returnPage div.queryBox.locationContainer > div > span,
#returnJourneyLayer div.queryBox.locationContainer > div > span       {margin-right:8px;}
#content div.queryBox.noBorderRadius  {border-radius: 0;}
#content div.queryBox	fieldset        {margin-top:24px;}
#content div.queryBox	fieldset:first-child {margin-top:0;}
#content div.queryBox fieldset.fsPadding   {padding:16px 0;}
#returnJourneyLayer div.flexBtnLine,
#content div.flexBtnLine                                    {display:flex; flex-direction:row-reverse; justify-content:space-between; align-items:center;}
#content #querySummaryInfo div.flexBtnLine                  {flex-direction:row; margin-top:40px;}
#content #querySummaryInfo .summaryContent div.flexBtnLine  {margin-top:24px;}
#content #querySummaryForm div.flexBtnLine                  {padding-bottom:12px;}
#content div.flex                     {flex:1}
#content div.resultContentHolder h1,
#content div.resultContentHolder h2                                                             {font-family: DBHeadRegular; text-align: left;}
#content div.resultContentHolder h2.tp_overview_headline_small                                  {font-size: 18px;}
#content div.resultContentHolder h2.tp_overview_headline_small span.tbpAvailable                {margin-left:16px;}
#content div.resultContentHolder h2.tp_overview_headline_small span.tbpAvailable #tbpScrollPrev {margin-right:12px;}
#content div.resultContentHolder h2.tp_overview_headline_small span.tbpAvailable #tbpScrollNext {margin-left:12px;}
#content h1                           {background-color:#F0F3F5; padding:20px; font-size:20px; line-height:22px; font-family: DBHeadLightRegular;}
#content .queryWrapper h1             {padding:32px 0 20px; margin:0;}
#content .queryWrapper.tqResults h1   {margin:0; padding-bottom:32px;}
#content h1.pagetitle                 {margin-bottom:0px; padding-top:0.35em; padding-left:0.45em;}
#content div.hafasContent.sq_results h1.pagetitle a,
#content div.hafasContent.sq_results_composePDF h1.pagetitle a {font-size:0.55em; line-height:1.4em; float:right;}
#content h2                           {font-size: 1em; margin-bottom: 16px; font-family:DBSansRegular;}
#content h2.noProgressbar             {margin: 20px 0;}
#content p.infoText                   {padding: 0 20px; font-size: 0.875em;}
#content label.bookingCode            {padding-top:6px; padding-left: 0; font-weight: bold;}
#content .resultContentHolder h2,
#content .crossSellingContent h2      {font-size: 18px;}
#content .crossSellingContent h2      {padding-left:10px;}
#content .crossSellingBanner          {font-size: 0.75em;}
#content .crossSellingBanner .headline {font-size: 1.25em;}
#content .crossSellingBanner .bannerMD {width: 300px; height: 250px; background: #fff; padding: 0;}
#content .crossSellingBanner .bannerAdTitle {text-align: right; padding: 0; font-family: DBSansRegular;}
#content .crossSellingContent #crossSelling_MR {background-color: transparent;}
#content .queryBox h2                 {font-size: 1.125em; margin-bottom: 17px; margin-top: 9px; font-family: DBSansRegular; padding-left: 0;}

#content h2.betweenH                  {font-size: 1.625em;}
#content div.betweenSpanContent       {font-size:1.125em;}
#content #tbQuery h3           {padding-left:0px;}
#content .langLabel            {position: absolute; left: -9999em;}
#hafasLegend .content                 {padding: 12px 13px 0px 13px;}
#hafasLegend img                      {margin-bottom:0; vertical-align: bottom;}
#content .loginStatus          {color:#878C96; font-family: DBSansRegular; font-size: 12px; line-height:16px; margin: 8px 24px 24px; text-align: right;}
#content ul.progress li        {float:left; color: #333; font-weight: bold; font-size: 1.0em; line-height: 20px; padding: 0 4px 0 24px;margin-left:8px; margin-top:12px;}
#content ul.progress li.progress_past {}
#content ul.progress li.progress_active {}
#content ul.progress li.progress_future {}
#content legend                {display: none;}
#content label,
#returnJourneyLayer label      {color: #646973; display: inline; padding: 0; text-align: center; vertical-align: baseline; white-space: nowrap; display: inline-block; margin-bottom: 8px; max-width: 100%;}
#content div.labellike               {color: #646973; margin-bottom:6px; font-family:DBSansRegular; font-size:14px; line-height:20px;}
#content div.labellike.spaceToTop    {margin-top:15px;}
/*#returnJourneyLayer .partSearchTable .radio-wrapper label {white-space:normal; text-align:left; line-height:1.25em;}
#returnJourneyLayer .partSearchTable .radio-wrapper input[type="radio"] + label {padding-top:0 !important;}*/
#productsDetailed label        {margin-bottom:0;}
#returnJourneyLayer h2,
#infoLayerReservation h2,
#mafoLayer h2,
#returnJourneyLayer h3,
#infoLayerReservation h3       {font-family:DBSansRegular; font-size:20px; line-height:24px; margin-bottom:13px; font-weight:normal; margin-top: -3px;}
#mafoLayer h2                  {color:#646973;}
#infoLayerReservation h2       {margin-top:5px;}
#returnJourneyLayer h3         {font-size:1em;}
#returnJourneyLayer p,
#mafoLayer p,
#infoLayerReservation p        {font-size:0.8em; margin:0 0 10px;}
#returnJourneyLayer p.querybutton           {margin-bottom:0; padding-bottom:0;}
#returnJourneyLayer p.querybutton.flexRight {display:flex; justify-content: flex-end;}
#mafoLayer p                   {font-size:0.875em;}
#content input[type="text"],
#returnJourneyLayer input[type="text"],
#content input.text,
#returnJourneyLayer input.text            {color: #333; font-family: DBSansRegular; font-size:16px; padding: 0;}
input[placeholder]                        {font-family:DBSansRegular; color:#878C96; opacity: 1 !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#content input::-webkit-input-placeholder {font-family:DBSansRegular; color:#646973; opacity: 1 !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#content input::-moz-placeholder          {font-family:DBSansRegular; color:#646973; opacity: 1 !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#content input:-ms-input-placeholder      {font-family:DBSansRegular; color:#646973; opacity: 1 !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#content input:-moz-placeholder           {font-family:DBSansRegular; color:#646973; opacity: 1 !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#content select,
#content input[type=text]                 {text-overflow: ellipsis; overflow:hidden; white-space: nowrap;}
#content .input-wrapper input,
#returnJourneyLayer .input-wrapper input  {border: medium none; padding: 0 16px; width: 100%; height:24px;}
#content .input-wrapper > div input             {width: 90px;}
#content .returnPage .input-wrapper > div input,
#returnJourneyLayer .input-wrapper > div input  {width: 263px;}
#content .returnPage .stopoverContainer .input-wrapper > div input,
#returnJourneyLayer .stopoverContainer .input-wrapper > div input  {width: 288px; height:30px;}
#content .input-wrapper.readonly          {background-color: rgba(240, 243, 245, 0.4); border-bottom:1px solid rgba(175, 180, 187, 0.4);} /* rgba because of the needed opacity on background and border */
#content .input-wrapper.readonly.specialFixed       {border:none;}
#content .input-wrapper.readonly input    {background-color:transparent; color:#AFB4BB;}
#content .input-wrapper.readonly label    {color: #AFB4BB;}
#content .input-wrapper.readonly.specialFixed input {background-color:transparent; color: #333333;}
#content .input-wrapper.readonly.specialFixed label {padding-left:0;}
#content .input-wrapper.input-wrapper-big {width: 300px;}
#content .input-wrapper.input-wrapper-big input.from    {width: 298px; padding-left: 101px;}
#content .input-wrapper.small {width: 150px;}
#content .input-wrapper.small label {padding: 8px 12px 2px;}
#returnJourneyLayer .input-wrapper.readonly {background-color:#FFFFFF; border: 1px solid #f5f5f5; width:284px; margin:10px 16px 10px 0;}
#returnJourneyLayer .input-wrapper.readonly input {color: #646973; font-size:1em; background-color:transparent; width:298px;}
#content .input-wrapper .label-inside,
#returnJourneyLayer .input-wrapper .label-inside {background: transparent; height: 30px; padding: 5px 0 5px 10px;}
#content .input-wrapper label,
#returnJourneyLayer .input-wrapper label  {color: #282D37; font-family: DBSansRegular; font-size: 12px; font-weight: normal; padding: 8px 16px 2px; margin:0; display:block; text-align:left;}

/* Fehlerfall */
#content .errormsg,
#returnJourneyLayer .errormsg  {color: #DB0014; font-size:14px; line-height:20px; padding:4px 16px 8px; font-family: DBsansRegular;}
#content .error,
#returnJourneyLayer .error     {color: #333333; font-weight: normal;}
#content .custom-select.inputError select,
#content .input-wrapper.inputError,
#returnJourneyLayer .input-wrapper.inputError {border-bottom: 1px solid #DB0014 !important;}
#content .dateContainer .errormsg.dateError,
#returnJourneyLayer .dateContainer .errormsg.dateError,
#content .timeContainer .errormsg,
#returnJourneyLayer .timeContainer .errormsg  {padding:4px 10px 8px;}

#content .smallMargin,
#content .smallMargin2         {margin-right: 8px; margin-bottom: 4px;}
#content .block                {display: block;}
#returnJourneyLayer .errormsg,
#content .jsShow,
#content .jsShowInline         {display: none;}
#returnJourneyLayer .nopadding,
#infoLayerJourney .nopadding,
#content .nopadding,
.popupContent .nopadding              {padding: 0px !important;}
.nopaddingtop                  {padding-top: 0px !important;}
.nopaddingbottom               {padding-bottom: 0px !important;}
.nopaddingright                {padding-right: 0px !important;}
.nopaddingleft                 {padding-left: 0px !important;}
#content .paddingright         {padding-right: 8px !important;}
#content .padding              {padding: 8px 20px !important;}
#content .errorMessageContainer p,
#content .errorMessage p       {font-size:14px; line-height:20px; font-family:DBsansRegular; margin:0 20px;}
#content .errorMessageContainer .button-inside {padding:38px 24px; background-color:#FFFFFF; margin: 40px 0 0; text-align:right;}
#content .noBackground         {background-color:transparent !important;}
#returnJourneyLayer,
#infoLayerTicket,
#infoLayerJourney,
div.boxShadow                  {}

#content .hide                 {display: none !important;}
#content .invisible            {visibility: hidden;}
#content .floatLeft,
.hafasPopup .floatLeft,
#hafasLegend .floatLeft,
.HafasInfoLayer .floatLeft,
#returnJourneyLayer .floatLeft        {float:left;}
#content .floatRight,
.hafasPopup .floatRight,
#mafoLayer .floatRight,
#hafasLegend .floatRight,
.HafasInfoLayer .floatRight,
#returnJourneyLayer .floatRight       {float:right;}
#returnJourneyLayer .floatNone,
#content .floatNone            {float:none !important;}
#infoLayerJourney .relative,
#returnJourneyLayer .relative,
#content .relative             {position: relative;}
#content .posTop               {top:0;}
#content .noMargin,
#returnJourneyLayer .noMargin  {margin: 0px !important;}
#content .noMarginTop          {margin-top: 0px !important;}
#content .noMarginRight,
#returnJourneyLayer .noMarginRight  {margin-right: 0px !important;}
#content .nowrap,
.popupContent .nowrap,
.HafasInfoLayer .nowrap        {white-space: nowrap;}
#content .wrap                 {white-space: normal !important;}
#content .noHeight             {line-height: 0px;}
#content .height0              {height: 0px;}
#content .noTextDecoration     {text-decoration:none;}
#content .center,
#returnJourneyLayer .center    {text-align: center;}
#content .right                {text-align: right;}
#content .left                 {text-align: left;}
#content .bottom               {vertical-align: bottom;}
#content .top,
.hafasPopup .top                      {vertical-align: top;}
#content .capitalize           {text-transform:capitalize;}
#content .pointer              {cursor: pointer;}
#content .displayInline        {display: inline !important;}
#content .fontNormal,
.HafasInfoLayer .fontNormal,
#returnJourneyLayer .fontNormal{font-size: 0.7em;}
#content .resultBCText,
#mafoLayer .fontNormal         {font-size:0.875em;}
#content .queryBox .resultBCText,
#content .fontNormal *         {font-size: 1em;}
#content .fontWeightNormal     {font-weight: normal !important;}
#content .paddingBottom20      {padding-bottom:20px;}
#content .ontime               {font-size:1em; color:#448D46;}
#content .delay                {font-size:1em; color:#c50014;}
#content .delayOnTime          {font-size:1em; color:#508B1B;}
#content .slim                 {width: 728px;}
#content .queryBox.slim        {width: 660px;}
.HFSSlim                       {width: 728px !important;}
#content .noButton             {font-weight: bold; font-size: 1.0em;}
#content .imgMiddle img        {vertical-align: middle;}
#content img.middle            {vertical-align: middle;}
#content .sotHeaderSlim        {width: 728px; overflow: hidden;}
#content .pushCalcTime         {float: right; font-size: 0.55em; font-weight: bold; margin-top: 10px;}
#content tr.hideRow,
.layerQueryBox,
#returnJourneyLayer .queryBox,
#content .queryBox             {padding:0px; font-size: 0.875em; float: none;}
#content .queryBox p           {font-size:1em;}
#content tr.hideRow,
#returnJourneyLayer tr.hideRow {display: none;}
.layerQueryBox                        {padding: 4px;}
#content .queryBox table       {font-size: 1em;}
#content .queryBox th          {width: 156px;}
#content .queryBox td          {padding: 2px 4px;}
#content #extIntermodal        {margin-top: 20px;}
#content #extIntermodal td     {padding:10px 0;}
#content .queryBox table.traveller    {margin-top: 16px;}
#content .queryBox table.traveller td {padding: 0 0 16px;}
#content .queryBox table.traveller td.travellerTypeDiv,
#content .queryBox table.traveller td.travellerReductionDiv {width:280px;}
#content .queryBox table.traveller td.travellerReductionDiv.resultPageWidth {width:206px;}
#content .queryBox table.traveller td.travellerAgeDiv input {width:48px; height:32px; margin-right:10px; padding:0 5px; font-size:1em;}
#content #querySummaryForm .queryBox table.traveller td.travellerAgeDiv input {font-size:1.125em;}
#content .queryBox div.informationContainer                   {width: 460px; background-color:#f5f5f5; font-family:DBsansRegular; position:relative; margin: 16px 0 40px; padding: 16px 24px 16px 16px; font-size:1em; line-height:1.3;}
#content #querySummaryForm .queryBox div.informationContainer {width: 350px;}
#content .queryBox div.informationContainer input,
#content .queryBox div.informationContainer a                 {font-family:Arial !important;}
#content .queryBox div.informationContainer .travellerInfoBoxInner            {margin-bottom:20px;}
#content .queryBox div.informationContainer .travellerInfoBoxInner:last-child {margin-bottom:0px !important;}
#returnJourneyLayer .queryBox table#productsDetailed #productsDetailedInfobox,
#content .queryBox table#productsDetailed td.infoboxPadding {padding:10px 12px;}
#returnJourneyLayer .queryBox table#productsDetailed #productsDetailedInfobox,
#content .queryBox table#productsDetailed #productsDetailedInfobox {color: #58595b; background-color:#f5f5f5; font-size: 0.875em; font-family:Arial; line-height: 1.4; padding: 18px 20px 16px 18px; width: 421px; position:relative; margin:0px;}
#content .informationBox {background-color:#f5f5f5; font-size: 0.75em; font-family:Arial; line-height: 1.4; padding: 18px 80px 16px 12px; width: 620px; position:relative; margin:13px 20px 8px;}
#content .informationBox a {font-family: Arial !important;}
body #bikeInformationBox ul {font-size: 1em; }
body #bikeInformationBox li {list-style: disc outside; padding-left: 2px; margin-left: 20px;}
#content div.bikeChangeTimeHint                  {position: absolute; top: -38px; right: 0; padding: 8px; padding-right: 20px; width: 350px; background-color: #FFFFFF; color: #282D37; font-size: 12px; line-height:16px; font-family:DBSansRegular; border-radius:4px; box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.4);}
#content div.bikeChangeTimeHint::before          {background: #FFFFFF none repeat scroll 0 0; content: ""; display: block; height: 10px; width:10px; right: 30px; position: absolute; bottom: -4px; transform: skew(0deg) rotate(135deg); -ms-transform: skew(0deg) rotate(135deg); -webkit-transform:skew(0deg) rotate(135deg); box-shadow: 3px -3px 3px 0 rgba(0, 0, 0, 0.12);}
#content div.bikeChangeTimeHint a.closeIcon      {top: 12px; right: 12px;}
#content div.mainFormSubmit                     {position: relative;}
#content .queryBox .informationBox  {font-size: 0.857em; margin-left: 0;}
#content .queryBox .traveller div.travellerInfoBox a {font-family:Arial !important;}
#content .queryBox .locInput   {width: 310px;}
#content .queryBox .locInputSmall  {width: 260px;}
#content .queryBox .tpErrorClass  {padding-left: 10px;}
#content .queryBox .travellerError             {padding: 10px 0 0;}
#content .errormsg.travellerError              {color:#F39200;}
#content .errormsg.travellerError span         {display:block; font-family:DBSansBold;}
#content .summary .dateError  {width: 172px; margin-right: 8px;}
#content .queryBox .stopover,
#content .summary .stopover   {margin-left: 16px; margin-right: 8px; width: 42px;}
#content .summary .stopover   {margin-left: 0px;}
#content .summary .changeDirection   {padding: 0; padding-bottom: 8px; width: 20px; vertical-align: middle;}
#content .summary .changeDirection img {margin-left: -4px;}
#content .summary .changeDirection input {margin: 0 ;margin-left: -4px; border: none; padding:0;}
#content .queryBox .stopoverdur {margin-bottom: 2px;}
#content .queryBox .noIcon     {padding-left: 32px; width: 156px;}
#content .queryBox .noIconGR   {padding-left: 32px; width: 190px;}
#content .queryBox .clearLeft  {clear:left;}
#content .queryBox .icon       {padding-left: 8px; width: 180px; height: 14px;}
#content .queryBox .iconResult {padding-left: 8px; width: 108px; height: 14px;}
#content .queryBox .icon img,
#content .queryBox .iconResult img  {padding-right: 8px; vertical-align: middle;}
#content .queryBox .imgIcon    {vertical-align: middle;}
#content .queryBox .radioCaption {width: 140px;}
#content .queryBox .intermodalCaption {width: 160px; padding-top: 2px;}
#content div.queryBox div.clear    {clear: both; float: none; height:0; padding:0; margin:0;}
#content .queryBox div.reset       {padding:0 10px;}
#content .queryBox div.reset input {height:auto; text-transform:capitalize;}
#content .queryBox input.traveller {width: 20px;}
#content .queryBox input.amount     {padding:0 5px; width:100px;}
#content #querySummaryInfo .queryBox input.amount     {width:65px;}
#content .queryBox input.fullAmount {padding:0 5px; width:180px;}
#content .queryBox .journeyfolder {padding-left: 8px; padding-right: 8px;}
#content .queryBoxMarginBottom {margin-bottom: 24px;}

#content .queryBox .label-dropdown,
#returnJourneyLayer .queryBox .label-dropdown {/*line-height: 2.95em;*/ width: 230px;}
#content .label-dropdown,
#returnJourneyLayer .label-dropdown {font-family: DBSansRegular; font-size: 1em; line-height: 1.4em; margin-top: 6px; width: 221px;}

#content #calendarlinkicon     {margin-right: 0;}
#content div.last              {clear: both;}
#content input,
#returnJourneyLayer input,
#content select               {border:1px solid #878c96;vertical-align:middle;}
#content .changeStart input   {height:25px;}
#content textarea             {border:1px solid #878c96; font-family: DBSansBold; font-size: 1em; padding:5px;}
#content input[type="text"]:focus,
#returnJourneyLayer input[type="text"]:focus {outline:0; background:none;}
#content input                 {padding:0px 5px;}
#content input.checkbox,
#content input.radio           {border:none;margin-right:2px;min-height:0;padding:0;vertical-align:middle}
#content input.checkbox        {background:transparent;}

.button-inside span.button-border a.button-secondary,
#content input.submit-btn,
#content input.submit-btn.disabled,
#content button.submit-btn,
#returnJourneyLayer button.submit-btn,
#returnJourneyLayer input.submit-btn,
#returnJourneyLayer input.submit-btn.disabled                  {background-color: #EC0016; border: 0 none; border-radius: 4px; color: #FFFFFF; display: inline-block; font-family: DBSansBold; font-size: 16px; line-height:20px; margin: 10px; text-decoration: none; cursor: pointer; padding: 12px 14px !important;}
.button-inside span.button-border a.button-secondary           {margin:0;}
#content .popupContent button.submit-btn,
#returnJourneyLayer .popupContent button.submit-btn,
#returnJourneyLayer input.submit-btn.submit-btn-second         {margin:16px 0 0;}
.button-inside span.button-border a.button-secondary,
#content input.submit-btn.submit-btn-second,
#content button.submit-btn.submit-btn-second,
#returnJourneyLayer input.submit-btn.submit-btn-second,
#returnJourneyLayer button.submit-btn.submit-btn-second        {background-color: #646973; font-family:DBSansRegular;}
#content input.submit-btn:hover,
#content button.submit-btn:hover,
#returnJourneyLayer input.submit-btn:hover,
#returnJourneyLayer button.submit-btn:hover                    {background-color: #CC0000;}
.button-inside span.button-border a.button-secondary:hover,
#content input.submit-btn.submit-btn-second:hover,
#content button.submit-btn.submit-btn-second:hover,
#returnJourneyLayer input.submit-btn.submit-btn-second:hover,
#returnJourneyLayer button.submit-btn.submit-btn-second:hover  {background-color:#282D37; opacity:0.8;}
.button-inside span.button-border a.button-secondary:active,
#content input.submit-btn.submit-btn-second:active,
#content button.submit-btn.submit-btn-second:active,
#returnJourneyLayer input.submit-btn.submit-btn-second:active,
#returnJourneyLayer button.submit-btn.submit-btn-second:active {background-color:#3C414B;}

#content input.submit-btn.disabled:hover,
#returnJourneyLayer input.submit-btn.disabled:hover,
#content input.submit-btn.disabled,
#returnJourneyLayer input.submit-btn.disabled {background-color:#8C9096 !important; cursor:default;}

#content label.disabled,
#returnJourneyLayer label.disabled,
#content input.arrowlink.disabled             {opacity:0.5; cursor:default;}
#content input.arrowlink.disabled:hover       {text-decoration:none !important; color:#333; cursor:default !important;}
#content input.submit-btn.disabled:hover,
#returnJourneyLayer input.submit-btn.disabled:hover {background-color: #FF0000;}
#content div.queryBox input.radio {margin-right: 6px;}
#content label.checkbox        {margin-top:-0.1em}
#content .querybutton          {margin: 6px 6px 0px 7px;}
#content .clearfix:after,
#hafasLegend .clearfix:after   {clear:both;content:".";display:block;height:0;visibility:hidden}
#hafasLegend .clearfix:after   {position: absolute;}
#hafasLegend .clearfix,
#returnJourneyLayer .clearfix  {padding-bottom: 8px;}
#content table .clearfix       {padding-bottom: 0px;}
#content .spacer               {height:50px;}
#content .tariffTooltip        {position: absolute; white-space: normal; border: 1px solid #000; background-color: #fff; width: 300px; bottom: 0px; left: 0px; z-index: 99999; padding: 2px;}
#content .tariffTooltipHide    {display: none; left: -999px;}
#content .smallicon            {float:left; width:20px;}
#returnJourneyLayer #productsDetailed {font-size:1em;}
#returnJourneyLayer #productsDetailed th {font-family:DBsansRegular;}
#returnJourneyLayer #productsDetailed th,
#returnJourneyLayer #productsDetailed span.icons-info-dark {position:relative; margin-bottom:10px;}
#content table.productsDetailed th       {width: auto !important;}
#content table.productsDetailed th.fadeout,
#content table.productsDetailed td.fadeout {background-color: #9e9e9e;}
#content table.productsDetailed th.fadeout *,
#content table.productsDetailed td.fadeout * {opacity: 0.5;}
#content table#productsDetailed     {margin-top:20px; width:100%; font-family:DBSansRegular; font-weight:normal !important;}
#content table#productsDetailed td  {padding:10px 10px 0 !important; font-family:DBSansRegular;}
#content table#productsDetailed th  {font-family:DBSansRegular; width:228px;}
#content table#productsDetailed th.boldText {font-family:DBSansBold; font-weight:normal;}
a.underline                         {text-decoration: underline;}
#content .underline                 {text-decoration: underline;}
#content .bigFont                   {font-size: 1.4em;}
#content .buttonSmallToBigMargin    {margin-top: 6px;}

#hafasHelpBox                       {background-color:#fff; margin-top: 4px; padding: 6px 16px;}
.queryWrapper #hafasHelpBox         {border-radius: 4px;}
#hafasHelpBox.helpBoxTopSpace       {top:70px;}
#hafasHelpBox h3                    {font-family: DBSansRegular; font-size: 14px; line-height:20px; font-weight:normal; margin:0; padding:0;}
#hafasHelpBox > h3                  {cursor:pointer; display:flex; align-items:center; justify-content: flex-end;}
#hafasHelpBox h3 .expand24          {width: 24px; height: 24px; display: inline-block; vertical-align: middle; margin-left: 4px; background-image: url(../img_responsive/24dp_icon_navigation_expand-more_grey500.svg); background-position: center center; background-size: 24px 24px; background-repeat: no-repeat;}
#hafasHelpBox h3.open .expand24     {background-image: url(../img_responsive/24dp_icon_navigation_expand-less_db-red.svg);}
#content div.rightColumnContentBox  {background-color:#F5F5F5; width:210px; padding:15px 20px; overflow: hidden; margin-top: 10px;}
.bcPage #content div.rightColumnContentBox {width:220px; padding: 15px 6px 26px;}
#content div.rightColumnContentBox h3 {font-size:1.25em; font-family:DBSansRegular; font-weight:normal; margin:0; padding:0;}
#hafasHelpBox p,
#content div.rightColumnContentBox p,
#hafasHelpBox a,
#content div.rightColumnContentBox a {font-size:14px; font-family:DBSansRegular; display:block; line-height:20px; margin-top: 9px; margin-bottom:0;}
#hafasHelpBox a,
#content div.rightColumnContentBox a {background-position: left center;}
#hafasHelpBox div.end,
#content div.rightColumnContentBox div.end {height: 17px;}
#hafasHelpBox div.content,
#content div.rightColumnContentBox div.content {padding: 0;}
#hafasHelpBox #hafasHelpBoxContentToggle  {padding: 0 0 16px 0;}
#hafasHelpBox #hafasHelpBoxContentToggle h3 {font-family: DBSansBold; font-size:16px; line-height:24px; margin:11px 0 16px;}

#hafasLegend                        {font-family: DBSansRegular; font-size: 14px; padding: 20px 20px; line-height:1.42857; color: #282d37;}
#hafasLegend  .icon                 {width: 48px;}
#hafasLegend  .icon *               {margin-left: 16px;}
#hafasLegend .woIcon                {padding-left: 16px;}
#hafasLegend .legendtext            {margin-left: 60px;}
#hafasLegend a                      {font-size: 14px; text-decoration: underline;}
#hafasLegend h3                     {font-size:1.5em; font-family:DBSansRegular; font-weight:normal; margin:-1px 0 17px;}
#hafasLegend div.clearfix           {margin-bottom:10px;}
#hafasLegend div.liablility         {width:35%; padding:0 20px 0;}
#hafasLegend div.liablility.fullWidth {width:100%;}
#hafasLegend div.symbols            {width:65%; padding:0 0 0 4px;}
#content #activeSavedJourney        {position: absolute; width: 0px; height: 0; line-height: 0; padding:0; margin:0; border: 0; background-color: #F2F2F2;}

#savedJourneys,
#travellerProfileDiv                {position: absolute; top: 52px; padding: 10px 0; font-size: 1em; font-family:Arial; line-height: 1.5em; background-color: #fff; width: 285px; z-index: 10000; box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.4);}

#savedJourneys div,
#travellerProfileDiv div            {padding:7px 10px; font-family:DBSansRegular; font-size:1em; white-space:nowrap;}
#savedJourneys #savedJourneysJourneys {padding: 0;}
#savedJourneys #savedJourneysJourneys:hover {background-color: #fff;}
#savedJourneys div.active,
#savedJourneys div:hover,
#travellerProfileDiv div:hover      {background-color:#E7E7E7; cursor:pointer;}
#savedJourneys p,
#travellerProfileDiv p              {margin: 0 4px 0 4px; font-family:Arial; font-size:0.875em;}
#savedJourneys a.arrowlink,
#travellerProfileDiv a.arrowlink    {font-size:0.875em; margin:7px 20px; display:inline-block; font-family:Arial;}
#savedJourneys a.arrowlink.minorMargin,
#travellerProfileDiv a.arrowlink.minorMargin {margin: 7px 10px;}
#savedJourneys #savedJourneysSaveJourney {padding-left: 28px; position: relative;}
#savedJourneys #savedJourneysSaveJourney div {background-position: -64px -323px; position: absolute; left: 4px; height: 20px; width: 20px;}
#savedJourneys #savedJourneysSaveJourney:hover div {background-position: -34px -323px;}
#savedJourneys #savedJourneysJourneys>div {position: relative; padding-left: 28px; padding-right: 20px; overflow: hidden; text-overflow: ellipsis; text-size: 0.8em; border-bottom: 1px solid #ccc;}
#savedJourneys #savedJourneysJourneys div div.star {background-position: -94px -323px; position: absolute; left: 4px; height: 20px; width: 20px; padding: 0;}
#savedJourneys #savedJourneysJourneys div:hover div.star {background-position: -94px -353px;}
#savedJourneys #savedJourneysJourneys div div.del {background-position: -22px 0px; position: absolute; right: 4px; height: 15px; width: 12px; padding: 0;}
#savedJourneys #savedJourneysJourneys div.savedJourneysVia {padding: 0; color: #999;}
.summaryContent .savedJourneyStar       {display: inline-block; position: relative; top: 2px; width: 18px; height: 15px;}
.summaryContent .savedJourneyStarDelete {background-position: -65px -325px;}
.summaryContent .savedJourneyStarSave   {background-position: -95px -325px;}

#savedJourneys::before,
#travellerProfileDiv::before        {background: #fff none repeat scroll 0 0; box-shadow: -3px 3px 3px 0 rgba(0, 0, 0, 0.12); content: ""; display: block; width: 10px; height: 10px; left: 10px; position: absolute; top: -4px; transform: skew(0deg) rotate(135deg);  -ms-transform: skew(0deg) rotate(135deg); -webkit-transform:skew(0deg) rotate(135deg);}

#hafasMaps .printview,
#content .printview                 {padding: 2px 0px 2px 0px; line-height: 20px; font-size: 14px;}
#content #resultsOverviewLinksBottom .printview {font-size: 1.15em;}
#content .printviewMap              {position: absolute; top: 8px; left: 8px; z-index: 9; height: 16px;}
.displayNone                        {display: none !important;}
.button-border                      {white-space: nowrap;}
#content .buttonMargin              {margin-top: 0px !important;}
#content #breadcrumb                {margin: 4px 8px 10px !important; height: 16px;}

#content div.flaparrowlink,
#content a.flaparrowlink,
#content a.flaparrowlinknohover     {position: relative; padding: 2px 0px 3px 24px; color:#000; cursor:pointer !important; text-decoration:none !important; border:0px !important; text-align:left !important;}
#content div.flaparrowlinkclose,
#content a.flaparrowlinkclose,
#content a.flaparrowlinkclosenohover{position: relative; padding: 2px 0px 3px 24px; color:#000; cursor:pointer !important; text-decoration:none !important; border:0px !important; text-align:left !important;}

/* Link (nicht unterstrichen) nach Rechts-Pfeil; Buttons, die wie Links aussehen mit vorangestelltem Pfeil */
a.arrowlink,
a.arrowlink:link,
a.arrowlink:visited,
button.arrowlink,
div.selectbox-wrapper li      {color:#333; padding-left:24px !important; padding-right:0px !important; cursor:pointer !important; text-decoration:none !important; border:0px !important; text-align:left !important; background-color:transparent; background-repeat:no-repeat !important; font-family:DBSansRegular;}
a.arrowlink.inlineBlockLink   {display:inline-block; margin:10px 0;}
input.arrowlink               {color:#333; padding-left:25px !important; padding-right:0px !important; cursor:pointer !important; text-decoration:none !important; border:0px !important; text-align:left !important; background-color:transparent; background-repeat:no-repeat !important; font-size: 1em; font-family:DBSansRegular; }
input.arrowlink.noSpecificHeight {height:auto !important; margin-bottom:10px;}
#hafasLegend a.arrowlink      {font-family: DBSansRegular; margin:5px 0; display:inline-block;}
input.arrowlink,
button.arrowlink              {display: block;}
#viaBox a.arrowlink,
#noViaBox a.arrowlink         {display:inline-block; margin-top:2px;}

a.arrowlink:active,
a.arrowlink:focus,
a.arrowlink:hover,
input.arrowlink:hover,
input.arrowlink:focus,
button.arrowlink:hover,
button.arrowlink:focus              {color: #f00; text-decoration: underline !important; background-color:transparent !important;}

a.arrowlink.linkToJP,
input.arrowlink.reservation         {margin-right:20px; font-size:14px; padding-left:24px !important; background-image: url(../img_responsive/20dp_icon_navigation_chevron-right_dbred.svg);}
input.arrowlink.reservation:hover   {background-image: url(../img_responsive/20dp_icon_navigation_chevron-right_dbred.svg);}
input.arrowlink.reservation:focus,
input.arrowlink.reservation:active  {background-color:transparent;}
a.arrowlink.linkToJP                {margin-top:5px;}



a#buttonDetailProducts,
a#buttonGlobalProducts        {padding-top:1px !important;}

#content a.arrowlinknarrow   {padding-left: 24px !important;}

#content a.buttonGreyBg             {background-color: #878c96; box-shadow: 1px 2px 2px rgba(0, 0, 0, 0.5); color: #FFFFFF; display: inline-block; font-family: "DBSansBold"; font-size: 0.75em; height: 24px; padding: 1px; text-decoration: none; position:relative; text-align:center; width:140px;}
#content a.buttonGreyBg:hover       {background-color: #646973;}
#content a.buttonGreyBg span        {left: 15px; top: 9px; display: block; position: absolute; height: 7px; width: 11px;}
#content a.buttonGreyBg.sooner      {margin: 9px 0px 12px; width:100%;}
#content a.buttonGreyBg.sooner span {background-position: 0 -31px;}
#content a.buttonGreyBg.later       {margin:0px; width:100%;}
#content a.buttonGreyBg.later span  {background-position: -22px -15px;}
#content a.buttonGreyBg.disabled,
#content a.buttonGreyBg.disabled:hover {background-color: #878c96; opacity: 0.5;filter:Alpha(opacity=50); cursor:default;}

#content .button-inside a.arrowlink {margin-left: 8px; line-height: 20px;}
#content .button-inside a.arrowlink.assoc {margin-left: 0px !important; line-height: 15px;}
#content td.return a.arrowlink {height: auto; line-height: 1.4em;}
#content .returnJourneyCon     {padding: 16px;}
#content .returnJourneyCon .arrowlink {text-align: center; display: inline-block;}
#content .button-inside.overviewButtons {font-size: 0.875em; font-weight: normal; background: #fff none repeat scroll 0 0; padding: 50px 24px; margin: 0 -24px; display:flex; justify-content:flex-end; align-items:center;}
#content .button-inside.overviewButtonsNoBg {font-size:0.875em; font-weight:normal; padding:14px 0px; margin:0; margin-top:10px;}
#content .button-inside.overviewButtons.availabilityPriceTotal {display: block;}


#content a.arrowlinkblock_e    {display: block; width: 90px; white-space: normal;}

.red                      {color: #f00;}
.darkred                  {color: #C50014;}
.green                    {color: #50aa50;}
.lightgreen               {color: #8cb90f;}
.orange                   {color: #E67800;}

#content .focus    {background-color: #FCDAB4;}

/* webtrack */
div.webtrack                   {display: none;}
div.webtrack a                 {display: none;}

#content #hafasSystembar       {padding: 4px 15px 3px; background-color: #fff; border: 1px solid #ccc; margin-top: 8px; margin-bottom: 30px; width: 626px; text-align: right; position: relative; left: 311px; z-index: 1;}
#hafasSystembar ul             {float: none !important;}
#hafasSystembar li,
#hafasSystembar div.clearfix   {float: left;}

/* sollte eigentlich zur bahn css gehören */
#main-nav li .noborder                           {border: none;}
#search.autowidth                                {width: auto;}
#search.nomarginleft                             {margin-left: 0;}
#nav1                                            {font-size: 16px;}


/* tp result */
#content #querySummaryInfo                  {background-color: #fff; padding:12px 24px; border-radius:0; position: relative;}
#content.hafasPopupContainer #querySummaryInfo {padding:0; box-shadow:none;}
#content #querySummaryInfo .summaryInner    {}
#content #querySummaryInfo.queryBox fieldset.locationFlex       {margin-top:0;}
#content #querySummaryInfo.queryBox fieldset.customerSelection  {margin-top:40px;}
#content #querySummaryInfo h4               {line-height: 1em; width: 80px; font-family: DBSansRegular; font-weight: normal; font-size:0.875em; margin-bottom:0;}
#content #querySummaryInfo h1               {background-color: #fff;}
#content #querySummaryInfo p                {font-size:0.875em; margin-bottom:0.5em; font-family:DBsansRegular;}
/*#content #querySummaryInfo a.arrowlink,
#content #querySummaryForm a.arrowlink      {font-size:0.875em;}*/
#content #querySummaryInfo .connection      {font-family: DBSansRegular; font-size: 14px; line-height: 20px; color: #282D37;}
#content #querySummaryInfo .connection .conSummaryDep,
#content #querySummaryInfo .connection .conSummaryArr,
#content #querySummaryInfo .connection .conSummaryTime,
#content .ecologySummary .ecoConnection .conSummaryDep,
#content .ecologySummary .ecoConnection .conSummaryArr,
#content .ecologySummary  .conSummaryTime,
#content #querySummaryInfo .connection.conSummaryTravellers  {padding-left:24px !important; background-position:left center; background-repeat:no-repeat; background-size:20px 20px;}
#content .ecologySummary .ecoConnection .conSummaryDep,
#content #querySummaryInfo .connection .conSummaryDep        {background-image:url("../img_responsive/20dp_icon_journey_start.svg");}
#content #querySummaryInfo .connection .conSummaryArr,
#content .ecologySummary .ecoConnection .conSummaryArr        {background-image:url("../img_responsive/20dp_icon_journey_destination-filled.svg");}
#content #querySummaryInfo .connection .conSummaryTime,
#content .ecologySummary   .conSummaryTime                      {background-image:url("../img_responsive/20dp_icon_action_schedule.svg");}
#content #querySummaryInfo .connection.conSummaryTravellers  {background-image:url("../img_responsive/20dp_icon_action_account-solid.svg"); background-position:left top;}
#content #querySummaryInfo .dateTime        {font-size:0.875em;}
#content #querySummaryInfo .dateTime,
#content #querySummaryInfo .improvedLineHeight {line-height: 2.5em;}
#content.hafasPopupContainer #querySummaryInfo .moreInformation {font-size:0.875em;}
#content #querySummaryInfo hr.divider       {margin:15px 0;}
#content #querySummaryInfo .errormsg.travellerError {color:#F39200;}
#content #querySummaryInfo .errormsg.travellerError:last-child {padding-bottom:10px;}
#content #querySummaryInfo .errormsg.travellerError span {display:block; font-family:DBSansBold;}
#content #querySummaryForm fieldset           {margin-bottom:24px;}
#content #querySummaryForm .input-wrapper label {top:6px;}
#content #querySummaryForm .locationContainer                         {margin:0 0 15px 0;}
#content #querySummaryForm .locationContainer .input-wrapper.readonly {margin-right:54px;}
#content #querySummaryForm .locationContainer:last-child {margin-right:0;}
#content #querySummaryForm .queryBox {padding:0;}
#content #querySummaryForm div.custom-select {margin-left:0; /*margin-right:20px*/}
#content #querySummaryForm div.custom-select.large206 {margin-right:10px;}
#content #querySummaryForm div.custom-select.medium,
#content #querySummaryForm div.custom-select.medium select.dropdown {width:160px;}
#content #querySummaryForm table.traveller select.dropdown {font-size:1.15em;}
#content #querySummaryForm table.traveller td div.travellerInfoBox {width:376px; margin:0; font-size:1em;}
#content #querySummaryForm table.traveller td.travellerTypeDiv {width:160px;}
#content #querySummaryForm table.traveller td.travellerReductionDiv {width:auto;}
#content #querySummaryTextual .summaryContent {}
#content #querySummaryTextual .errormsg {padding-top:10px;}
#content #querySummaryTextual .travellerPadding {padding-left:24.5px;}

#content #querySummaryForm .summaryContent,
#content #querySummaryTextual .summaryContent                 {width: 100%;}
#content #querySummaryForm h2                                 {margin:24px 0;}
#content #querySummaryForm h2.returnHeadline                  {padding-top:24px; margin-top:0; border-top: 1px solid #d7dce1;}
#content #querySummaryForm .summaryContent .connection,
#content #querySummaryTextual .summaryContent .connection     {display: flex; position: relative; margin:12px 0 4px;}
#content #querySummaryForm .summaryContent #conTravellers.connection,
#content #querySummaryTextual .summaryContent #conTravellers.connection {margin-bottom:12px;}
#content #querySummaryForm .summaryContent .connection div,
#content #querySummaryTextual .summaryContent .connection div {padding: 0 16px 0 0;}
#content #querySummaryForm .summaryContent .connection .conSummaryTime,
#content #querySummaryTextual .summaryContent .connection .conSummaryTime {text-transform: capitalize;}
#content #querySummaryForm .summaryContent .connection .conFlap,
#content #querySummaryTextual .summaryContent .connection .conFlap  {background-image: url("../img_responsive/ic-db_navigation_expand-more_24.svg"); background-repeat:no-repeat; background-position:0px 0px; background-size: 24px 24px; height:24px; width:24px; display: none; position: absolute; right: 0; top: 50%; transform:translateY(-50%);}
#content #querySummaryForm .summaryContent .connection .conFlap.conFlapActive,
#content #querySummaryTextual .summaryContent .connection .conFlap.conFlapActive  {background-image: url("../img_responsive/24dp_icon_navigation_expand-less_db-red.svg");}
#content #querySummaryTextual .showDetailsLink                  {display:inline-block; margin:12px 0;}
#content #querySummaryTextual #changeRequest                    {margin:12px 0;}
#content #querySummaryTextual #conTravellers_out,
#content #querySummaryTextual #conTravellers_ret,
#content #querySummaryTextual #showDetails_out,
#content #querySummaryTextual #showDetails_ret,
#content #querySummaryTextual #changeRequest_out,
  #content #querySummaryTextual #changeRequest_ret              {display:none;}


#content div.resultContentHolder            {padding: 32px 24px;}
#content div.resultContentHolder div.info   {font-size:1.125em; margin-bottom:20px;}
#content div.resultContentHolder div.resultContentInfo   {font-size: 14px; margin-bottom:16px;}
#content div.resultContentHolderWhite       {padding: 20px 20px; background-color:#fff;}
#content div.resultContentHolderWhite h2#ticket_name   {padding: 0;}
#content div.resultContentHolderWhite #ticket_raeuml {margin-bottom: 10px;}
#content div.resultContentHolderWhite #ticket_text  {margin-bottom: 10px;}
#content div.resultContentHolderWhite #ticket_wait  {height: 200px; padding-top: 75px; text-align: center;}
#content div#resultsOverviewContainer       {position: relative;}


#content div.timeButton                     {background-color: #fff; padding: 0px; border-radius: 4px; display: flex; margin-bottom: 16px; justify-content: space-between; padding: 17px 12px;}
#content div.timeButton a.sooner,
#content div.timeButton a.later             {font-family: DBSansRegular; font-size: 14px;}
#content div.timeButton a.sooner span       {background-image: url(../img_responsive/20dp_icon_navigation_arrow-up_dbred.svg); display: inline-block; width: 20px; height: 20px; vertical-align: bottom;}
#content div.timeButton a.later span        {background-image: url(../img_responsive/20dp_icon_navigation_arrow-down_dbred.svg); display: inline-block; width: 20px; height: 20px; vertical-align: bottom;}
#content div.timeButton .custom-select      {border: none; width: unset; height: unset;}
#content div.timeButton .icons-arrow-down-select {height: 20px; margin-right:0;}
#content div.timeButton select#conSortBy    {border: none; height: unset; line-height: 20px; font-family: DBSansRegular; font-size: 14px; color: #282d37; padding-right: 30px;}

#content #overviewShowConnectionsCon                                          {display:flex; align-items:center;}
#content #overviewShowConnectionsCon .custom-select                           {border: none; height: unset; width:210px; background-color:unset; margin:0 8px;}
#content #overviewShowConnectionsCon .custom-select .icons-arrow-down-select  {margin-right:0; height:24px;}
#content #overviewShowConnectionsCon .custom-select .dropdown                 {border: none; border-bottom:1px solid #646973 !important; padding: 4px 30px 4px 8px; position: static; height: unset; line-height: 20px; font-family: DBSansRegular; font-size: 14px; color: #282d37;}

#content div.overviewConnection             {background-color: #fff; padding: 0px; border-radius: 4px; display: flex; justify-content: space-between; flex-flow:row wrap; margin-bottom:16px;}
#content div.TBPcheap                       {position: relative;}
#content div.TBPcheap div.overviewConnection {border-left: 4px solid #78be14; border-radius: 0 4px 4px 4px; margin-top: 40px;}
#content div.TBPcheap::before               {content: ' '; background-color: #78be14; background-image: url(../img_responsive/24dp_icon_best-price.svg); color: #fff; display: block; height: 24px; width: 24px; line-height: 24px; border-radius: 4px 4px 0 0; position: absolute; top: -24px; text-align: center;}
#content div.connectionData                 {/*flex-grow: 1;*/ flex:1; padding: 16px; display: flex; flex-direction: column; justify-content: space-between;}
#content div.connectionAction               {border-left: 1px solid #d7dce1; display: flex; flex-direction: column; flex-basis: 215px; flex-shrink: 0; font-family: DBSansRegular; font-size: 14px;}
#content div.connectionAction .returnJourneyCon {border-top: 1px solid #d7dce1; padding: 8px 5px; text-align: right; background-color:#FFFFFF;}
#content div.connectionAction .connectionPrice .tablebutton:last-child  {display: flex; align-items: stretch;}
#content div.connectionAction .connectionPrice .tablebutton:last-child img  {position: absolute; align-self: center;}
#content div.connectionAction .connectionPrice a.buttonbold {background: #f00 url(../img_responsive/32dp_icon_navigation_chevron-right_white.svg) no-repeat 0 center ; border: none; border-radius: 0 4px 0px 0; padding: 0px !important; position: absolute; top: 0; bottom: 0; right: -30px;}
#content div.connectionAction .connectionPrice a.buttonbold span {background-image: url(../img_responsive/32dp_icon_navigation_chevron-right_white.svg); display: inline-block; width: 32px; height: 100%; background-repeat: no-repeat; background-position:0 center;}
#content div.connectionAction .connectionPrice {flex-grow: 5; display: flex; justify-content: space-between; padding-right: 30px; font-family: DBSansRegular; font-size: 14px;}
#content div.connectionAction .connectionPrice div.button-inside:first-child {padding: 16px; text-align: right; flex-grow: 5; display:flex; align-items:center; justify-content:flex-end;}
#content div.connectionAction .connectionPrice .no_fares {font-family: DBSansRegular; font-size: 12px; color: #646973;}
#content div.connectionAction .connectionPrice a.sectionfarelink {font-family: DBSansRegular; font-size: 14px; color: #646973;}
#content div.connectionAction .connectionPrice .verbund {font-family: DBSansRegular; font-size: 12px; color: #646973;}
#content div.connectionAction .connectionPrice .iconText {font-family: DBSansRegular; font-size: 14px;}
#content div.connectionAction .connectionPrice a.layer_nofares {font-family: DBSansRegular; font-size: 12px;}
#content div.connectionAction .connectionPrice span.upsellHint {font-size:12px; line-height:16px; color:#646973; font-family:DBSansRegular; display: inline-block;}
#content div.connectionAction .connectionPrice .fareOutput .farePrefix {font-size:12px; line-height:16px; color:#646973; font-family:DBSansRegular;}
#content div.connectionAction .connectionPrice span.infoText {font-family: DBSansRegular; font-size: 12px; display: inline-block; padding-top: 8px; color: #646973;}
#content div.connectionAction .connectionPrice div img.middle   {margin: 0; margin-top: -3px; margin-right: 2px;}
.returnJourneyCon a.arrowlink               {background-image: url(../img_responsive/20dp_icon_navigation_chevron-right_dbred.svg); background-position: right; padding-left: 8px !important; padding-right: 24px !important; white-space: nowrap;}
#content div.connectionTime                                 {font-family: DBSansRegular; padding: 0 0 16px;}
#content div.connectionTime .connectionTimeSoll > div       {display:flex; align-items:center; flex-direction:row;}
#content div.connectionTime .connectionTimeSoll .time,
#content div.connectionTime .connectionTimeIst .time        {font-size:18px; line-height:24px; display:flex; justify-content:space-between; align-items:center; flex-direction:row; width:115px; min-width:115px;}
#content div.connectionTime .connectionTimeSoll .timeDiv    {width:15px; text-align:center;}
#content .conTimeChanges                    {display: flex; flex-wrap:nowrap; align-items: center; font-family: DBSansRegular; font-size:12px; line-height:16px; color:#646973;}
#content .conTimeChanges div                {padding: 0 0 0 4px; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
#content div.connectionTime .time           {font-family: DBSansBold;}
#content div.connectionTime .time div       {font-family: DBSansRegular;}
#content div.connectionTime .conTimeChanges {padding-left:4px;}
#content div.connectionTime .duration       {}
#content div.connectionTime .duration .dividerPipe {padding-right:4px;}
#content div.connectionTime .changes        {display:flex; align-items:center;}
#content div.connectionTime .changes img    {margin: 0 0 0 8px;}
#content div.connectionInfos > div,
#content div.connectionInfos > a            {display:flex; align-items:center; padding-bottom:8px;}
#content div.connectionInfos a > img        {margin-right:8px;}
#content div.connectionInfos .liveCon,
#content div.connectionInfos .liveCon a     {color: #508B1B;}
#content div.connectionInfos .liveCon       {padding-right: 10px;}
#content div.connectionInfos .capacity      {padding-right: 10px;}
#content div.connectionInfos .capacity img  {margin-right:3px;}
#content div.connectionInfos .capacityClass_3 {color: #D77B00;}
#content div.connectionInfos .capacityClass_4 {color: #C50014;}
#content div.connectionInfos .capacityClass_2 {color: #646973;}
#content div.connectionInfos .capacityClass_1 {color: #646973;}
#content div.connectionInfos .prioImportant   {color: #C50014;}
#content div.connectionInfos .prioMedium      {color: #D77B00;}
#content div.connectionBar                  {display: flex;}
#content div.connectionBar div              {height: 28px; border-radius: 4px; margin-right: 2px; padding: 0 6px; min-width: 0; font-family: DBSansBold; font-size: 12px; text-align: center; line-height: 28px; color: #fff; overflow: hidden; text-overflow: ellipsis;}
#content div.connectionBar div img          {vertical-align: middle;}
#content div.connectionBar div:nth-last-child(2)   {margin-right: 0;}
#content div.connectionBar div span         {overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#content div.connectionBar div span.iconWalk {margin-top:4px;}
#content div.connectionBar div.ellipsis     {margin-left: 2px; margin-right: 0; width: 20px; height: 28px; background: url(../img_responsive/ic_navigation_more-horizontal_20.svg); background-position: center;}
#content div.connectionBar div span.shortProd {display: none;}
#content div.connectionBar div.narrow span.shortProd {display: inline;}
#content div.connectionBar div.narrow span.fullProd {display: none;}
#content div.connectionBar div.prod_transfer {background-color: #282d37; padding: 0 8px;}
#content div.connectionBar div.prod_0       {background-color: #282d37; padding: 0 8px;}
#content div.connectionBar div.prod_1       {background-color: #646973; padding: 0 8px;}
#content div.connectionBar div.prod_2       {background-color: #878C96; padding: 0 8px;}
#content div.connectionBar div.prod_3       {background-color: #AFB4BB; color: #282d37; padding: 0 8px;}
#content div.connectionBar div.prod_4       {background-color: #2A7230; padding: 0 8px;}
#content div.connectionBar div.prod_5       {background-color: #814997; padding: 0 8px;}
#content div.connectionBar div.prod_6       {background-color: #309FD1; color: #282d37; padding: 0 8px;}
#content div.connectionBar div.prod_7       {background-color: #1455C0; padding: 0 8px;}
#content div.connectionBar div.prod_8       {background-color: #A9455D; padding: 0 8px;}
#content div.connectionBar div.prod_9       {background-color: #FFD800; color: #282d37; padding: 0 8px;}
#content div.connectionRoute                {display: flex; justify-content: space-between; flex-direction: row; font-family: DBSansRegular; font-size: 14px; padding: 8px 0; padding-top: 8px;}
#content div.connectionRoute .products      {color: #878c96; font-size:14px; line-height:20px;}
#content div.connectionRoute .products .prodIcons   {position: relative; float: right; padding-left: 4px;}
#content div.connectionRoute .products .prodIcons img  {vertical-align: middle;}
#content div.connectionRoute .station.stationDest      {text-align:right}
#content div.connectionStations             {font-size: 14px; line-height:20px;}
#content div.connectionStations .stationDest {margin-top:4px;}
#content div.connectionStations div.station             {background-image:url("../img_responsive/20dp_icon_journey_intermediary-stop_grey300.svg");background-repeat:no-repeat; background-position:left top; background-size:20px 20px; padding-left: 24px;}
#infoLayerJourney ul.connectionDetails div.stationIcon,
#content ul.connectionDetails div.stationIcon           {background-image:url("../img_responsive/20dp_icon_journey_intermediary-stop_grey300.svg"); background-repeat:no-repeat; background-position:left top; background-size:20px 20px; padding: 0; width: 20px; height: 20px; position: absolute; top: 2px; right: 11px;}
#infoLayerJourney ul.connectionDetails div.stationIcon  {right:10px;}
#infoLayerJourney ul.connectionDetails div.stationIcon  {background-image:url("../img_responsive/20dp_icon_journey_intermediary-stop_grey300.svg"); background-position:center center; width: 20px; height: 20px;}
#infoLayerJourney div.connectionStations div.station:first-child,
#infoLayerJourney ul.connectionDetails li:first-child div.stationIcon {background-image:url("../img_responsive/20dp_icon_journey_start_grey300.svg");}
#content div.connectionStations div.station:first-child,
#content ul.connectionDetails li:first-child div.stationIcon          {background-image:url("../img_responsive/20dp_icon_journey_start_grey300.svg");}
#content div.connectionStations div.station:last-child,
#content ul.connectionDetails li:last-child div.stationIcon           {background-image:url("../img_responsive/20dp_icon_journey_destination-filled_grey300.svg"); z-index: 5;}
#infoLayerJourney div.connectionStations div.station:last-child,
#infoLayerJourney ul.connectionDetails li:last-child div.stationIcon  {background-image:url("../img_responsive/20dp_icon_journey_destination-filled_grey300.svg")}
#content ul.connectionDetails li.dateDivider {font-size:14px; line-height:20px; padding:8px 0 8px 42px; text-align:center; border-top:1px solid #d7dce1; border-bottom:1px solid #d7dce1; color:#646973; font-family:DBSansRegular; display:flex;}
#content div.connectionInfos                {display: flex; flex-grow: 5; align-items:center; flex-wrap:wrap; font-family: DBSansRegular; font-size: 12px; padding-bottom: 8px;}
#content div.connectionInfos:empty          {display: none;}
#content div:empty.connectionInfos          {display: none;}
#content div.connectionInfos img            {vertical-align: middle;}
#content div.connectionDetailButtonDiv      {text-align: center; margin-top:8px;}
#content div.connectionData a.iconLink            {font-family: DBSansRegular; font-size: 14px; line-height:20px; color: #282d37;}
#content div.moreDetailsLink a.iconLink span,
#content div.connectionData a.iconLink span       {margin-left:4px;}
#content div.moreDetailsLink a.iconLink.openMoreInformation span,
#content div.connectionData a.iconLink.open span  {background: url(../img_responsive/20dp_icon_navigation_expand-more.svg) no-repeat 0 center; display: inline-block; height: 20px; width: 20px; vertical-align: middle; background-position-y: -1px;}
#content div.moreDetailsLink a.iconLink.closeMoreInformation span,
#content div.connectionData a.iconLink.close span {background: url(../img_responsive/20dp_icon_navigation_expand-less_dbred.svg) no-repeat 0 center; display: inline-block; height: 20px; width: 20px; vertical-align: middle;}
#content div.details                        {background-color: #fff; flex:1 100%;}
#infoLayerJourney ul.connectionDetails,
#content ul.connectionDetails               {display: flex; flex-direction: column; color: #282d37;}
#infoLayerJourney ul.connectionDetails      {padding-top:4px;}
#content ul.connectionDetails               {background-color:#F0F3F5;}
#infoLayerJourney ul.connectionDetails li                   {padding: 20px 0; display:flex; justify-content: space-between; flex-direction:row; position:relative;}
#infoLayerJourney ul.connectionDetails li:first-child       {padding-top: 0;}
#content ul.connectionDetails li                    {padding: 16px 215px 16px 21px; background-color:#FFFFFF;}
#content ul.connectionDetails li:first-child        {padding-top: 32px !important;}
#content ul.connectionDetails li.sectionDeparture   {padding-bottom:0; padding-top: 16px;}
#content ul.connectionDetails li.sectionArrival     {padding-top: 12px;}
#content ul.connectionDetails li.sectionDeparture.contentIsAddress,
#content ul.connectionDetails li.sectionArrival.contentIsAddress {background-color: transparent; border-left: 1px solid #fff; border-right: 1px solid #fff;}
#content ul.connectionDetails li.sectionArrival.contentIsAddress {padding-top: 0;}
#infoLayerJourney ul.connectionDetails li.intermediate,
#content ul.connectionDetails li.intermediate {background-color: #f0f3f5; border-left: 1px solid #fff; border-right: 1px solid #fff; font-family: DBSansRegular; font-size: 12px; color: #646973; display: flex;}
#infoLayerJourney ul.connectionDetails li div.detailsintermediate,
#content ul.connectionDetails li.intermediateStationRow    {display: flex; padding:4px 215px 4px 21px; position:relative;}
#content ul.connectionDetails li.remarks                   {padding:8px 215px 16px 142px; font-size:12px; line-height:16px; font-family: DBsansRegular; color:#646973; position:relative;}
#content ul.connectionDetails .delayOnTime                 {font-family: DBSansRegular; color: #467a18;}
#content ul.connectionDetails li.intermediateStationRow .delayOnTime {font-size: 14px;}
#content li.intermediateStationRow                         {font-family: DBSansRegular; font-size: 14px; line-height:20px; color: #646973;}
#content li.intermediateStationRow div.time                {flex:0 0 120px; order:1; padding-right: 37px; text-align: right; position: relative;}


/* Perlschnur Details-Layer */
#infoLayerJourney ul.connectionDetails li.sectionDeparture div.conDetailsRow_dep::before,
#infoLayerJourney ul.connectionDetails li.sectionArrival div.conDetailsRow_arr::before               {content: ""; position: absolute; width: 1px; top:38px; bottom:-28px; left: 99px; border-left: 2px solid #bbb;}
#infoLayerJourney ul.connectionDetails li.sectionDeparture:first-child div.conDetailsRow_dep::before {top:17px;}
#infoLayerJourney ul.connectionDetails li.sectionArrival div.conDetailsRow_arr::before               {border-left-style:dotted;}
#infoLayerJourney ul.connectionDetails li.sectionArrival:last-child div.conDetailsRow_arr::before    {content: none;}

#content ul.connectionDetails li.sectionDeparture div.conDetailsRow_dep::before,
#content ul.connectionDetails li.sectionArrival div.conDetailsRow_arr::before,
#content ul.connectionDetails li.remarks::before,
#content ul.connectionDetails li.intermediate div.detailsintermediate::before,
#content ul.connectionDetails li.intermediateStationRow::before,
#content ul.connectionDetails li.dateDivider::before                                             {content: ""; position: absolute; width: 1px; left: 99px; border-left: 2px solid #AFB4BB;}
#content ul.connectionDetails li.sectionDeparture.contentIsAddress div.conDetailsRow_dep::before,
#content ul.connectionDetails li.sectionArrival div.conDetailsRow_arr::before,
#content ul.connectionDetails li.intermediate div.detailsintermediate::before                    {border-left-style:dotted;}
#content ul.connectionDetails li.sectionDeparture div.conDetailsRow_dep::before,
#content ul.connectionDetails li.intermediate div.detailsintermediate::before                    {left: 98px;}


#content ul.connectionDetails li.sectionDeparture.isInPast div.conDetailsRow_dep::before,
#content ul.connectionDetails li.sectionArrival.isInPast div.conDetailsRow_arr::before,
#content ul.connectionDetails li.remarks.isInPast::before,
#content ul.connectionDetails li.dateDivider.isInPast::before,
#content ul.connectionDetails li.intermediate.isInPast div.detailsintermediate::before,
#content ul.connectionDetails li.intermediateStationRow.isInPast::before                         {border-left-color:#282D37;}
#content ul.connectionDetails li.isInPast div.stationIcon                                        {background-image:url("../img_responsive/20dp_icon_journey_intermediary-stop.svg");}
#content ul.connectionDetails li.isInPast:first-child div.stationIcon                            {background-image:url("../img_responsive/20dp_icon_journey_start.svg");}
#content ul.connectionDetails li.isInPast:last-child div.stationIcon                             {background-image:url("../img_responsive/20dp_icon_journey_destination-filled.svg")}

/* Abfahrt */
#content ul.connectionDetails li.sectionDeparture div.conDetailsRow_dep::before                  {top:22px; bottom:-50px;}
#content ul.connectionDetails li.sectionDeparture:first-child div.conDetailsRow_dep::before      {top:24px; left:97px;}
#content ul.connectionDetails li.sectionDeparture.contentIsAddress div.conDetailsRow_dep::before {bottom:-35px;}

/* Zwischenhalte */
#content ul.connectionDetails li.intermediateStationRow::before                                  {top:17px; bottom:-9px; left:120px; z-index:5;}
#content ul.connectionDetails li.intermediateStationRow.lastIntermediateStop::before             {bottom:-13px;}
#content ul.connectionDetails li.intermediate div.detailsintermediate::before                    {top:18px; bottom:-32px; left:97px;}
#content ul.connectionDetails li.intermediate.isLastSection div.detailsintermediate::before      {bottom:-15px;}

/* Remarks */
#content ul.connectionDetails li.remarks::before                                                 {top:0; bottom:-9px; left:119px; z-index:5;}
#content ul.connectionDetails li.remarks.noIntermediatesAvailable::before                        {bottom:-13px;}

/* Datumstrenner (aufgeklappter Zustand) */
#content ul.connectionDetails li.dateDivider::before,
#content ul.connectionDetails li.intermediateStationRow + li.dateDivider::before                 {top:0; bottom:-9px; left:119px; z-index:5;}
#content ul.connectionDetails li.dateDivider::before                                             {bottom:-21px;}

/* Ankunft */
#content ul.connectionDetails li.sectionArrival:last-child div.conDetailsRow_arr::before         {content: none;}
#content ul.connectionDetails li.sectionArrival div.conDetailsRow_arr::before                    {top:24px; bottom:-48px; left:98px;}


#content li.intermediateStationRow div.stationIcon         {background-image: url("../img_responsive/20dp_icon_journey_intermediary-stop_grey300.svg"); background-repeat:no-repeat; background-position:left top; background-size:20px 20px; padding: 0; width: 20px; height: 20px; position: absolute; top: 0; right: 11px;}
#content li.intermediateStationRow div.platform            {flex: 0 0 80px; text-align:right; order:4;}
#content li.intermediateStationRow div.capacity            {order:3;}
#content li.intermediateStationRow div.intermediateStation {flex-grow: 2; order:2; overflow: hidden;}
#content li.intermediateStationRow div.intermediateStation > div.capacity {display:none;}
#content div.conDetailsRow_dep,
#content div.conDetailsRow_arr                             {display: flex; justify-content: space-between; flex:1; font-family: DBSansBold; font-size: 16px; line-height:24px; color: #282d37; position:relative;}
#content div.detailContainer .sectionDuration              {font-family: DBSansRegular; font-size: 12px; line-height:16px; color: #646973;}
#content div.detailContainer .detailCancelled              {color: #c50014; font-family: DBSansRegular; font-size:14px; line-height:20px;}
#content div.detailContainer .sectionDuration,
#content div.detailContainer .detailCancelled.jnyCancelled {position:absolute; right:37px; width:80px; bottom:0; transform:translateY(35%);}
#content div.detailContainer .sectionDuration              {width:auto;}
#content div.detailContainer .sectionDuration.noCssTransform,
#content div.detailContainer .hasCapacity .detailCancelled.jnyCancelled {transform:none;}
#infoLayerJourney div.conDetailsRow_dep,
#infoLayerJourney div.conDetailsRow_arr                    {display: flex; justify-content: space-between; align-items:flex-start; flex:1; color:#646973; font-size:14px; line-height:20px; font-family: DBSansRegular;}
#infoLayerJourney ul.connectionDetails li.first::before,
#infoLayerJourney ul.connectionDetails li.last::before        {content:''; position:absolute; left:99px; width:1px; top:36px; bottom:-28px; border-left:2px solid #AFB4BB;}
#infoLayerJourney ul.connectionDetails li:first-child::before {top:18px;}
#infoLayerJourney ul.connectionDetails li.last::before        {border-left-style:dotted;}
#infoLayerJourney ul.connectionDetails li:last-child::before  {display:none;}
#infoLayerJourney li:first-child div.conDetailsRow_dep,
#infoLayerJourney li:last-child div.conDetailsRow_arr      {color:#282D37; font-size:16px; line-height:24px; font-family: DBSansBold;}
#infoLayerJourney div.detailsintermediate,
#content div.detailsintermediate                           {display:flex; flex-direction:row; align-items:center; flex:1; position:relative;}
#content div.detailsintermediate span.rtInfo               {margin-left:8px; display:flex; align-items:center; flex-direction: row;}
#content div.detailsintermediate span.rtInfo img           {margin: 0 8px 0 0;}
#infoLayerJourney div.detailsintermediate div:last-child,
#content div.detailsintermediate div:last-child            {display:flex; flex-direction:row; align-items:center;}
#content div.detailsintermediate div.intermediateSectionContent {font-size:14px; line-height:20px; color:#282D37; position:relative;}
#infoLayerJourney div.conDetailsRow_dep div.time,
#infoLayerJourney div.conDetailsRow_arr div.time,
#infoLayerJourney div.detailsintermediate div.time,
#content div.conDetailsRow_dep div.time,
#content div.conDetailsRow_arr div.time,
#content div.detailsintermediate div.time                   {flex: 0 0 120px; padding-right:37px; text-align: right; position: relative;}
#content div.conDetailsRow_dep div.time.cancelClass,
#content div.conDetailsRow_arr div.time.cancelClass         {color:#c50014;}
#infoLayerJourney div.detailsintermediate div.time          {padding-right:40px;}
#infoLayerJourney div.conDetailsRow_dep div.station,
#infoLayerJourney div.conDetailsRow_arr div.station,
#content div.conDetailsRow_dep div.station,
#content div.conDetailsRow_arr div.station                    {flex-grow: 2;}
#infoLayerJourney div.conDetailsRow_dep div.station,
#infoLayerJourney div.conDetailsRow_arr div.station           {display:flex; justify-content:space-between; flex-direction:row;}
#infoLayerJourney div.conDetailsRow_dep div.platform,
#infoLayerJourney div.conDetailsRow_arr div.platform,
#content div.conDetailsRow_dep div.platform,
#content div.conDetailsRow_arr div.platform                   {flex: 0 0 40px;}
#infoLayerJourney div.conDetailsRow_dep div.platform div,
#infoLayerJourney div.conDetailsRow_arr div.platform div,
#content div.conDetailsRow_dep div.platform div,
#content div.conDetailsRow_arr div.platform div               {background-color: #0a1e6e; color: #fff; font-family: DBSansBold; font-size: 12px; border-radius: 4px; text-align: center; line-height: 20px; padding: 2px 4px;}
#infoLayerJourney div.conDetailsRow_dep div.platform div.platformred,
#infoLayerJourney div.conDetailsRow_arr div.platform div.platformred,
#content div.conDetailsRow_dep div.platform div.platformred,
#content div.conDetailsRow_arr div.platform div.platformred   {background-color: #c50014;}
#content ul.connectionDetails li .moreDetailsLink,
#infoLayerJourney div.conDetailsRow_product,
#content div.conDetailsRow_product                        {font-family: DBSansRegular; font-size: 14px; line-height:20px; color: #282d37; padding-top:16px;}
#content ul.connectionDetails li .moreDetailsLink         {padding-left:122px;}
#content div.conDetailsRow_product .products img          {margin:0;}
#infoLayerJourney div.conDetailsRow_product               {padding:0; display: flex; width: 317px; align-items: flex-start; justify-content: space-between;}
#content div.conDetailsRow_product .products,
#infoLayerJourney div.conDetailsRow_product .products     {display:flex; align-items:flex-start; flex:1;}
#infoLayerJourney div.conDetailsRow_product .capacity     {width:221px; flex:1; display:flex; align-items:flex-start;}
#infoLayerJourney div.conDetailsRow_product .capacity img {margin-right:8px;}
#content div.conDetailsRow_product .direction             {background-image: url(../img_responsive/20dp_icon_navigation_arrow-forward-small14.svg); background-repeat:no-repeat; background-position:left 1px; background-size: 20px 20px; padding-left:29px;}
#content div.conDetailsRow_product .direction,
#content div.conDetailsRow_product .capacity              {margin-top:8px;}
#infoLayerJourney div.conDetailsRow_product .products img,
#content div.conDetailsRow_product .products img,
#content div.conDetailsRow_product .capacity img          {margin-right:8px;}
#infoLayerJourney div.conDetailsRow_product .direction,
#infoLayerJourney ul.connectionDetails li .moreDetailsLink {display:none;}
#content form.stationInfo                   {margin-top: 20px;}
#content form.stationInfo .custom-select    {display: inline-block; width: 200px;}
#content form.stationInfo div               {display: inline-block; vertical-align: bottom;}
#content form.stationInfo select           {font-size: 14px;}
#content form.stationInfo .button-inside span.button-border button  {padding: 11px 25px;}

#content table.result,
.hafasPopupContainer table.result           {width:940px; max-width:940px; empty-cells:show; font-size:0.75em;}
#content table.result.collapse,
#content table.result.fixCollapse           {border-collapse:collapse;}
.hafasPopupContainer table.result           {font-size: 1.0em; width:100%;}
#content.hafasPopupContainer table.result   {width:100%; margin:20px 0;}
#content table.result tbody.boxShadow,
#content table.availability tbody.boxShadow {box-shadow:0 1px 8px 0 rgba(0, 0, 0, 0.4); border:1px solid #878c96;}
#content table.result.partSearch tbody.boxShadow {border:2px solid #878c96 !important;}
#content table.result div.boxShadowInset    {min-height:30px; box-shadow: inset 0 5px 8px -5px rgba(0, 0, 0, 0.4); background-color:#e7e7e7; margin-left: -18px; margin-right: -18px;}
#content table.result div.boxShadowInset p.importantInformation {color:#ff0000; font-weight:bold; background-color:#ffffff;padding:5px 20px; margin:0;}
#content div.crossSellingContent            {background-color:#F5F5F5; padding:10px;}
#content .js_showlive div.scheduledCon  {display: none;}
#content .js_showscheduled div.liveCon  {display: none;}

#content table.result tbody.selected        {border:2px solid #878c96;}
#content div.tableHead,
#content table.result th,
#content table.availability th,
.hafasPopupContainer table.result th        {padding-left:8px; padding-right:8px; background: #e7e7e7 none repeat scroll 0 0; height: 22px; border-left: 1px solid #fff;}
.hafasPopupContainer table.resultMVV th     {border-bottom:none !important;}
#content table.result th.first,
#content table.result th:first-child,
#content table.availability th:first-child  {border-left:none;}
#content table.result th.sort               {padding-right:20px; position:relative;}

.hafasPopupContainer table.result tr.tarifflevel th  {border-top: 2px solid #fff;}
#content table.result td,
.hafasPopupContainer table.result td        {background-color:#FFFFFF;}
.hafasPopupContainer table.result td        {padding:5px;}
#content table.result tr.emptyCellRow td    {height:11px; background-color:transparent;}
#content table.result tr.links td           {height:24px; background-color:transparent;}
#content table.result tr.links td.farePep,
#content table.result tr.links td.fareStd   {font-weight: bold; background-color:#D5D5D5; padding-left: 8px;}
#content table.result tr.firstrow td.farePep,
#content table.result tr.firstrow td.fareStd   {padding-bottom: 8px;}
.hafasPopupContainer table.result tr.firstrow td {padding-top:7px; font-size:1.125em;}
.hafasPopupContainer table.resultMVV td     {padding:4px 8px; background-color:#F5F5F5 !important;}
.hafasPopupContainer table.resultMVV tr.firstrow td     {padding-bottom:0 !important; border-bottom:none !important; border-top:5px solid #FFFFFF; font-family: DBSansBold !important; font-size:1em !important;}
.hafasPopupContainer table.resultMVV tr.firstrow:first-child td {border-top:none !important;}

#content .detailContainer table.result tr td a.iconLink,
#content .detailContainer table.result tr td span.iconLink,
#content .trainroute a.iconLink,
#content .detailContainer div.journeyguide a.iconLink    {display:block; padding-left: 28px; font-weight: normal;}
#content a.iconLink.iconLinkNarrow          {padding-left: 24px !important;}
#content .detailContainer table.result tr td a.partSearch,
#content .detailContainer table.result tr td span.partSearch {display:block;}
#content div.detailContainer table.result tr td      {background-color:#F5F5F5;}
#content div.detailContainer table.result tr td.station,
#content div.detailContainer table.result tr td.intermediateStation {padding-left:22px;}
#content div.detailContainer table.result tr.intermediate td     {background-color:#FFFFFF;}

/* padding-definitionen für die ergebnistabelle */
#content table.result tr th                 {position:relative;}
#content table.result tr td,
#content table.result tr th                 {padding: 0 8px;}
#content table.result tr.firstrow td        {padding-top: 13px;}
#content table.resultMOT tr.firstrow td     {padding-bottom: 13px;}
#content table.result tr td.station         {padding-left:18px;}
#content table.result tr.buttonLine td:first-child {padding-top:13px; padding-left:18px;}

#content table.result tr td.time,
#content table.result tr td.timetx,
#content table.result tr td.farePep,
#content table.result tr td.fareStd,
#content table.result tr td.MOT,
#content table.result tr th.zofPrice,
#content table.result tr td.zofPrice        {background-color:#f5f5f5;}
#content table.result tr td.time.dateChange {font-family:DBSansRegular; color:#878c96; font-size:1.2em;}
#content table.result tr th.farePep,
#content table.result tr th.fareStd,
#content table.result tr td.date             {white-space: nowrap;}
#content table.result tr td.showDetails      {padding-left: 8px !important; padding-top: 8px; vertical-align: top;}
#content table.result tr td.showDetails img,
#content table.result tr td.time img,
#content table.result tr td.products img,
#content table.result tr td.platform img,
#content table.result tr td.fareStd img,
#content table.result tr td.farePep img      {vertical-align: middle;}
#content table.result tr td.weighing a.weighingIcon     {float:left; display:block;}
#content table.result tr td.weighing span.weighingText  {display:block; margin-left:30px;}

#content.hafasPopupContainer table.result tr td,
#content.hafasPopupContainer table.result tr th {padding:5px 8px;}
#content.hafasPopupContainer table.result tr td {padding-left:13px;}
#content.hafasPopupContainer table.result tr td:first-child {padding-left:8px;}
#content.hafasPopupContainer table.result tr th {background-color:#e7e7e7; border-left:5px solid #FFFFFF; border-bottom:5px solid #FFFFFF;}
#content.hafasPopupContainer table.result tr th:first-child {border-left:none;}
#content.hafasPopupContainer table.result tr.firstrow td {background-color:#f5f5f5; border-bottom:5px solid #FFFFFF; font-family:DBSansRegular;}
#content.hafasPopupContainer table.result tr.firstrow td.boldText {font-family:DBSansBold;}
#content.hafasPopupContainer table.result tr td p {font-size:1em;}
#content.hafasPopupContainer table.result tr td img {position:relative; top:5px;}

#content table.result tr td.station          {word-wrap: break-word;}
.hafasPopupContainer div.iconCheck,
#content div.iconCheck,
#returnJourneyLayer div.iconCheck,
#returnJourneyLayer div.iconCross            {float: left; height: 16px; width: 16px; margin: 0 5px 0 0; background-position: 0 -4380px;}
#content table.result tr th.map,
#content table.result tr td.map     {min-width:62px;}
#content table.result tr td.map img {margin-bottom: 0px;}
#content table.result tr th.time,
#content table.result tr td.time,
#content table.result tr td.timeButton {min-width:142px;}
#content table.result tr td.time,
#content table.result tr td.timeButton {white-space: nowrap; font-family: DBSansBold; font-size: 1.35em; line-height: 1.5em; padding-right: 30px;}
#content table.result tr td.time span  {font-size:1em;}
#content table.result tr td.time .weighting {float:right; margin-right: -20px}
#content table.result tr.buttonLine td.time {padding-right: 8px;}
#content table.result tr td.time a     {margin-left:5px;}
#content table.result tr td.timeButton span {font-family:DBSansRegular; font-size:0.875em;}
#content table.result tr td.sotContent {background-color:#FFFFFF !important;}
#content table.result tr td.time .liveCon a  { font-size:0.85em; color: #8CB90F;}
#content table.result tr td.changes img   {vertical-align: middle; margin-left: 4px;}

/* aktuelle Alternativen: Layer "Sucheinschränkungen anpassen" */
#returnJourneyLayer .sotchange span.ico.iconBorder {position:relative; margin:0 5px;}
#returnJourneyLayer .sotchange .custom-select   {margin:5px;}
#returnJourneyLayer .sotchange .button-inside   {margin:20px 20px 0 10px;}
#returnJourneyLayer .sotchange input.submit-btn {font-size:0.875em;}
#returnJourneyLayer .sotchange .queryBox        {padding: 0 20px;}
#returnJourneyLayer .sotchange  table#productsDetailed td {padding:5px !important;}

#content table.result tr td div.resultDep {padding-left: 24px;}
#content table.result td label     {margin-right:5px;}
#content table.result tr.selected td,
#content table.result tr td.selected {background-color: #D6DFF2;}
#content .tablebutton              {margin:0px; padding:0;}
#content .tablebutton  a           {padding-right:2px;}
#content .tablebutton .button-border a {padding:0px 5px 5px 8px;}
#content table.result tr td.tablebutton .button-border {clear: both;}
#content .tablebutton a span.fareOutput  {padding-left: 0; background: none;}
#content .tablebutton span.fareOutput    {font-family: DBSansBold; font-size: 24px; display: inline-block;}
#content table.result tr td.confunction  {padding-bottom: 16px; vertical-align: bottom;}
#content .tablebutton .totalPrice                 {font-family: DBSansRegular; background-color: #F0F3F5; font-size: 14px; line-height:20px; color: #646973; text-align: right; padding: 4px 8px; border-radius: 4px; margin: 8px 0;}
#content .tablebutton span.totalPrice     {display: inline-block;}
#content .tablebutton .totalPrice span.fareOutput,
#content .tablebutton .totalPrice span.fareOutput .farePrefix {font-family:DBsansRegular; font-size: 14px; line-height:20px;}

#content div.tableHead             {font-size: 0.7em; line-height: 2em; padding-left:0; padding-right: 0;}
#content div.tableHead div         {padding-left:8px; padding-right: 8px;}

#content .additionalOptions        {margin:24px 16px 0;}
#content ul.confunction            {margin:0;}
#content ul.confunction li         {padding:4px 0; font-size:14px; line-height: 20px; font-family: DBsansRegular;}
#content ul.confunction a          {padding: 2px 0 2px 28px; background-repeat:no-repeat; background-position:left top; background-size:20px 20px;}
#content ul.confunction a.liveSearchIcon          {background-image:url(../img_responsive/20dp_icon_action_info-filled_grey400.svg);}
#content ul.confunction a.trainCompositionIcon    {background-image:url(../img_responsive/20dp_icon_transportation_car-sequence.svg);}
#content ul.confunction a.alarmIcon               {background-image:url(../img_responsive/20dp_icon_action_alert.svg);}
#content ul.confunction a.saveConnectionIcon      {background-image:url(../img_responsive/20dp_icon_action_pin.svg);}
#content ul.confunction a.addToCalendarIcon       {background-image:url(../img_responsive/20dp_icon_action_calender.svg);}
#content ul.confunction a.sendConnectionEmailIcon {background-image:url(../img_responsive/ic-db_communication_mail_20.svg);}

#content div.journeyInformation    {font-family: DBSansRegular; font-size:14px; line-height:20px; margin: 30px 16px 0; color:#646973;}
#content div.journeyInformation h4 {font-size:16px; font-weight:normal; line-height:24px; margin-bottom:8px; color:#282D37;}
#content div.journeyInformation .bhfInformation {margin-top:20px;}
#content div.journeyInformation .bhfInformation a {text-decoration: underline; color: #646973;}

#content div.applicationSlider     {margin:20px 16px 0; font-size:14px; line-height:20px; font-family:DBsansRegular;}
#content div.applicationSlider a   {margin-right:28px;}


.hafasPopupContainer table table,
#content table table               {font-size: 1.0em;}
#content .detailContainer          {padding-bottom: 20px; border-top: 1px solid #d7dce1; border-bottom:none;}
#content .detailContainer .importantRIS             {border-bottom: 1px solid #d7dce1;}
#content .detailContainer .importantInformation     {padding: 8px 24px; color: #c50014; font-family: DBSansRegular; font-size: 14px; margin:0;}
#content .detailContainer .importantInformation a   {color: #c50014;}

/* Verbindungsdetails */
#content .detailContainer table.result              {width:100%; margin:-30px 0 0; font-size:1.125em;}
#content .detailContainer table.result td.time      {font-size:1em !important;}
#content .detailContainer table.result th           {height:40px; padding-left:8px; padding-right:8px; padding-top:6px; vertical-align:top; border-left: 1px solid #fff; font-size:0.875em; background-color:transparent;}
#content .detailContainer table.result th:first-child {border-left:none;}
#content .detailContainer table.result td           {background-color: #fff; vertical-align: top; padding:7px 10px 6px; font-family:DBSansRegular;}
#content .detailContainer table.result td.rtRating_double {padding-left: 38px; position: relative;}
#content .detailContainer table.result td.rtRating_single {padding-left: 20px; position: relative;}
#content .detailContainer table.result tr.last td   {padding-bottom: 8px;}
#content .detailContainer table.result.additionalOptions tr td {background-color:#FFFFFF;}


#content table.result th a.sortArrow           {display:block; position:absolute; right:6px; top:8px; background-image:url("../img/Sortierfunktionspfeil_8x6px_grau.png"); background-repeat:no-repeat; background-position:center center; width:8px; height:6px;}
#content table.result th.sorted                {background-color:#CCCCCC;}
#content table.result th.sorted a.sortArrow    {background-image:url("../img/Sortierfunktionspfeil_8x6px_weiss.png");}

/* Teilsuche */
div.partSearch                        {font-family: DBsansRegular; font-size:16px;}
div.partSearchData                    {display:flex; flex-direction:row; justify-content:space-between; align-items:center; line-height:24px; margin-bottom:24px;}
div.partSearchDuration                {display:flex; align-items:center;}
.icon-schedule                        {background-image:url(../img_responsive/20dp_icon_action_schedule.svg); background-position:center center; background-repeat:no-repeat; background-size:20px 20px; width:20px; height:20px; display:inline-block;}
div.partSearchDuration .icon-schedule {margin-right:8px;}
div.partSearchOptions                 {display:flex; flex-direction:row;}
div.partSearchOptions > div           {flex:1;}
div.partSearchOptions > div:fist-child {margin-right:16px;}
div.partSearchOptions > div label     {white-space:normal !important; text-align:left !important; background-position:left top !important; padding-left:32px !important; color:#282D37 !important;}
div.partSearchOptions > div > div     {margin-bottom:20px !important;}
div.partSearchOptions .custom-select  {width:100% !important;}
div.partSearchOptions .errormsg       {display:block;} /*ggf. verallgemeinern*/
div.partSearchBottom                  {display:flex; flex-direction:row; align-items:center; justify-content:space-between; margin-top:20px;}
div.partSearchBottom .partSearchInfo  {margin:0 39px 0 0 !important; font-size:12px; line-height:16px; color:#646973;}
div.partSearchBottom input            {margin:0 !important;}

#returnJourneyLayer p.querybutton     {font-size:0.75em}

#infoLayerReservation h2                                  {margin-bottom:10px; font-size:1.125em; font-family:DBSansRegular;}

/* TEILSTRECKE */
#returnJourneyLayer                                       {color: #282D37;}
#returnJourneyLayer h2                                    {margin:20px 0 24px; padding-right:30px;}
#returnJourneyLayer h2.iconBefore                         {margin: 0 25px 20px;}
#doc .popupContent h3.iconCheck,
#returnJourneyLayer h3.iconCheck,
#doc .popupContent h3.iconCross,
#returnJourneyLayer h3.iconCross                          {font-family: DBSansBold; font-size: 16px; line-height: 24px; margin: 8px 0 12px; padding-left:28px; background-repeat: no-repeat; background-position: left 1px; background-size: 20px 20px;}
#doc .popupContent h3.iconCheck,
#returnJourneyLayer h3.iconCheck                          {background-image: url("../img_responsive/20dp_icon_action_check-circle-filled.svg");}
#doc .popupContent h3.iconCross,
#returnJourneyLayer h3.iconCross                          {background-image: url("../img_responsive/20dp_icon_action_remove-filled_grey300.svg");}
#doc .popupContent div.connectionPart,
#returnJourneyLayer div.connectionPart                    {font-size:14px; line-height:20px; margin: 0 0 8px 24px; display:flex; flex-direction:row;}
#doc .popupContent div.connectionPart.connectionFare,
#returnJourneyLayer div.connectionPart.connectionFare     {margin-bottom:16px; margin-left:28px;}
#doc .popupContent div.connectionPart.additional,
#returnJourneyLayer div.connectionPart.additional         {margin-left:28px;}
#doc .popupContent div.connectionPart div.icon-journey-start,
#returnJourneyLayer div.connectionPart div.icon-journey-start {margin-right:16px;}
#doc .popupContent div.connectionPart div.icon-journey-start,
#returnJourneyLayer div.connectionPart div.icon-journey-start,
#doc .popupContent div.connectionPart div.icon-journey-dest,
#returnJourneyLayer div.connectionPart div.icon-journey-dest {width: auto !important; height: auto !important; padding-left: 24px; position: relative;}
#doc .popupContent .footnotes,
#returnJourneyLayer .footnotes                            {color: #646973; font-family: DBSansRegular; font-size: 12px; line-height: 16px; margin-top:24px;}

/* Druck und E-Mail */
#returnJourneyLayer .popupContent .printOutRetWrapper,
#content .popupContent .printOutRetWrapper                {margin-bottom:8px;}
#returnJourneyLayer .popupContent .configWrapper,
#content .popupContent .configWrapper,
#returnJourneyLayer .popupContent .priceWrapper,
#content .popupContent .priceWrapper                      {display:flex; align-items:center; flex-direction:row;}
#returnJourneyLayer .popupContent .configWrapper .custom-select,
#content .popupContent .configWrapper .custom-select      {width:348px;}
#returnJourneyLayer .popupContent .configWrapper .custom-select:first-child,
#content .popupContent .configWrapper .custom-select:first-child {margin-right:8px;}
#returnJourneyLayer .popupContent .priceWrapper .radio-wrapper:first-child,
#content .popupContent .priceWrapper .radio-wrapper:first-child {margin-left:8px;}


#content #zplusSlider ul li,
#content .singleApplicationSlider a        {display: block; font-size: 1.2em; line-height: 24px; height: 24px;}
#content div.singleApplicationSlider       {float:right; width: 130px;}

#content .appSliderClose         {float: right !important; background: transparent;}
#globalApplicationClose                 {float: right !important;}

#content td.moreDetailSlider li                     {margin:0 0 10px; padding:0; font-weight:normal;}
#content td.moreDetailSlider li.activeslider,
#content td.moreDetailSlider li.slider a            {display: block; width:180px; min-height:32px; background-color:#FFFFFF; color:#333; border:1px solid #878C96; text-align:center; padding-top:6px; padding-bottom:6px;}
#content td.moreDetailSlider li.slider a:hover      {background-color:#E8E8E8; text-decoration:none;}
#content td.moreDetailSlider li.activeslider        {font-family:DBSansBold; background-color:#878C96; color:#FFFFFF; box-shadow: 0 1px 7px 0 rgba(0, 0, 0, 0.5) inset;}
#content td.moreDetailSlider li.activeslider:hover  {background-color:#646973;}

#content .moreDetailContainer    {padding: 0px; font-family:DBSansRegular;}
#content .moreDetailContent      {background-color: #F5F5F5; margin:5px 10px 20px; padding:20px;}
#content .moreDetailContent h3   {font-size: 1.675em; font-weight:normal; font-family:DBSansRegular; margin: 0px;}
#content .moreDetailContainer a.printview {font-size:1.2em; padding-top:0;}
#content .moreDetail,
#content table.moreDetail td,
#content table.mainmap td        {background-color:transparent; padding:0;}
#content .moreDetail             {margin-top:20px; width:860px}

#content .moreDetail div.bhfFiles {width:200px;margin-top:8px; float:left;}
#content .moreDetail div.bhfFiles a {font-size:1.2em;}

#content table.moreDetail        {margin: 0px;}
#content table.moreDetail tr th,
#content table.moreDetail tr td,
#content table.mainmap tr td     {padding:0;}
#content .result .moreDetailSlider {vertical-align: top; padding-right:5px;}
#content .moreDetailSlider ul    {font-size: 1.0em;}
#content .moreDetailSlider li    {list-style-type: none; font-weight: bold; padding: 8px; font-size: 1.0em; margin-bottom: 2px;}
#content .result .moreDetailShow {margin:0px; border-left: 2px solid #F2F2F2; padding: 0 8px;}
.hafasPopup .moreDetail .moreDetailShow {margin:0px; padding: 8px;}
#content .result .moreDetailShow h2 {font-size: 1.4em;}
#content .result .moreDetailShow div.stInfoMobilityHint {margin:10px 0;}
#content #moreMC h2              {width: 100%;}
#content #moreMC .mapzoom,
#content #moreMC .mapbuttons     {font-family:DBsansRegular;}
#content table.mainmap           {}
#content table.mainmap td,
#hafasMaps table.mainmap,
#hafasMaps table.mainmap td      {line-height: 0.7em; vertical-align: middle; text-align: center;}
#hafasMaps table.mainmap img,
#content table.mainmap img       {margin: 0px;}
#content table.mainmap input     {margin: 0px; padding: 0px; border: 0px;}
#content table.mainmap a.mapMove {display:block; background-color:#CECECE;}
#content table.mainmap a.mapMove:hover {background-color:#A0A3A8;}

#content table.result tr td .hfs_ajaxmapWrapper td{
   background-color:transparent;
}
#content table.result tr td .hfs_ajaxmapWrapper td[bgcolor]{
   background-color:#fff;
}
#content  td.moreDetailSlider .hfs_ajaxmapsNavigation li,
#content  td.moreDetailSlider .hfs_ajaxmapsNavigation li.activeslider{
   display:inline-block;
}
#content  td.moreDetailSlider .hfs_ajaxmapsNavigation li a,
#content  td.moreDetailSlider .hfs_ajaxmapsNavigation li a:focus{
   color:#333;
   text-decoration:none;
}
#content   td.moreDetailSlider .hfs_ajaxmapsNavigation li.activeslider a,
#content  td.moreDetailSlider .hfs_ajaxmapsNavigation li.activeslider a:focus{
   color:#fff;
   text-decoration:none;
}

#content #tbpCheckboxWrapper input[type="checkbox"] + label  {background-position: right top; line-height: 16px;}
#content .tbpCheckboxContentRight {position:absolute; right:20px;}
#content .tbpNoSlots            {margin-bottom: 15px; font-size: 1em; font-family: DBSansRegular;}
#content label span.showTagesbestpreis {font-size: 0.9em; font-weight: normal;}
#content label span.showTagesbestpreis sup {font-size: 0.75em;}
#content span.tbpEuro           {color: #fff; font-family: DBSansRegular; font-size: 0.9em; line-height:0.8; padding: 0; display: block; top:3px;}
#content span.tbpEuro img       {width: 20px; height: 20px; border-radius: 3px; margin: 0;}
#content #tbpCheckboxWrapper span.tbpEuro {display: inline-block; margin-right: 8px;}
#content #tbpCheckboxWrapper span.tbpEuro img {vertical-align: text-bottom;}
#content label.labelWSup span.tbpEuro  {position: relative; top: -3px;}
#content .queryBox  label.labelWSup span.tbpEuro  {top: -1px;}
#content #hafasLegend span.tbpEuro     {display: inline; font-size: 12px; line-height: 0.9em; margin-left:16px;}
#content label.tbpCheckbox      {padding: 1px 30px 5px 0px !important; background-position-x: left;}
#content checkbox-wrapper.inactive label.tbpCheckbox  {cursor: default;}
#content #tbpScrollPrev         {display: inline-block; width: 20px; height: 20px; background-image: url(../img_responsive/20dp_icon_navigation_chevron-left.svg); vertical-align: text-bottom;}
#content #tbpScrollNext         {display: inline-block; width: 20px; height: 20px; background-image: url(../img_responsive/20dp_icon_navigation_chevron-right.svg); vertical-align: text-bottom;}
#content a#tbpScrollPrev,
#content a#tbpScrollNext        {color: #ec0016; font-family: Arial;}
#content span.tbpNoScrollPrev   {color: #c5c5c5; font-family: Arial;}
#content div.tbpSlotContainer   {max-height: 0; overflow: hidden; -webkit-transition: max-height 2s; -moz-transition: max-height 2s; transition: max-height 2s; width: 100%; padding: 0 10px; display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap;}
#content div.tbpEaseIn          {max-height: 200px; overflow-x: visible;}
#content div.tbpEaseOut         {max-height: 0; overflow: hidden; transition: max-height 1s ease-out;}
#content div.tbpError           {padding: 10px 20px; font-family: DBSansRegular; font-size: 0.9em;}
#content div.tbpErrorFlex       {flex: 1 100%;}
#content div.tbpErrorNoRetAtOutDate.tbpError  {padding: 10px 0px; font-family: DBSansRegular; font-size: 1em;}
#content div.tbpSlot            {background-color: #d7dce1; cursor: pointer; padding: 8px 4px; margin: 4px; margin-bottom: 40px; border-radius: 2px; flex: 1 1 0px; text-align: center; position: relative;}
#content div.tbpSlot.tbpSlotEmpty  {background-color: transparent; cursor: default;}
#content div.tbpSlot:hover      {background-color: #fff; box-shadow: 0px 1px 2px 1px #ccc;}
#content div.tbpSlot.tbpSlotEmpty:hover {background-color: transparent; box-shadow: none;}
#content div.tbpSlotGap         {padding: 8px 4px; margin: 4px; margin-bottom: 40px; flex-grow: 1; text-align: center; position: relative; cursor: default;}
#content div.tbpSlotScroll      {margin-bottom: 40px; padding: 8px 4px;}
#content div.tbpSlot.tbpCheap   {border-left: 20px solid #78be14; padding-left: 0;}
#content div.tbpSlot .tbpSlotPrice                  {font-family: DBSansBold; font-size: 14px; line-height:17px; /*padding: 0 20px;*/}
#content div.tbpSlot .tbpSlotPrice sup              {vertical-align: super;}
#content div.tbpSlot.tbpCheap .tbpSlotPrice         {padding-left: 0;}
#content div.tbpSlot.tbpCheap .tbpSlotPrice::before {content: '\20AC'; color: #fff; position: absolute; left: -14px;}
#content div.tbpSlot.tbpCheap .tbpSlotLine          {width: -moz-calc(100% - 10px); width: -webkit-calc(100% - 10px); width: -o-calc(100% - 10px); width: calc(100% - 10px); /*left: -5px;*/ left: -10px;}
#content div.tbpSlot .tbpSlotFrom                   {font-size: 0.75em;}
/* Slot Start: Uhrzeit, Linie, Uhrzeit */
#content div.tbpSlot .tbpSlotTimeStart              {font-weight: bold; font-size: 10px; font-family: DBSansRegular; color: #282d37; position: absolute; left: -14px; bottom: -20px; cursor: default;}
#content div.tbpSlot.tbpCheap .tbpSlotTimeStart     {left: -34px;}
#content div.tbpSlot .tbpSlotTimeEnd        {font-weight: bold; font-size: 10px; font-family: DBSansRegular; color: #282d37; position: absolute; right: -17px; bottom: -20px; cursor: default;}
#content div.tbpSlot .tbpSlotTimeEnd:last-child {right: -14px;}
#content div.tbpSlot .tbpSlotLine           {position: absolute; height: 1px; width: -moz-calc(100% - 30px); width: -webkit-calc(100% - 30px); width: -o-calc(100% - 30px); width: calc(100% - 30px); background-color: #d7dce1; bottom: -14px; /*left: 16px;*/ left: 11px;}
#content div.tbpSelect                      {background-color: #fff;}
#content div.tbpSelect::after               {z-index: 1;content: ""; display: block; width: 10px; height: 10px; position: absolute; bottom: -5px; left: 0; right: 0; margin-left: auto; margin-right: auto; background-color: #fff; transform: rotate(45deg);}
#content div.tbpSelect .tbpSlotLine         {height: 3px; background-color: #78be14 ; bottom: -15px;}
#content div.tbpSlot .tbpSlotTimeStart + .tbpSlotLine {left: 18px; width: -moz-calc(100% - 36px); width: -webkit-calc(100% - 36px); width: -o-calc(100% - 36px); width: calc(100% - 36px);}
#content div.tbpSlot.tbpCheap .tbpSlotTimeStart + .tbpSlotLine {left: -2px; width: -moz-calc(100% - 16px); width: -webkit-calc(100% - 16px); width: -o-calc(100% - 16px); width: calc(100% - 16px);}
#content a.tbpActivate                      {font-size: 0.875em; margin-right: 24px;}
#content div#hideResultOverviewTable        {position: absolute; left: -20px; width: 980px; background-color: #F5F5F5; z-index: 9; opacity: 0.95;}
#content div#hideResultOverviewTableText    {position: absolute; left: -20px; width: 980px; z-index: 9; text-align: center; padding-top: 40px; font-family: DBSansRegular;}
#content div#hideResultOverviewTableText img {vertical-align: middle;}
#content table.result tbody.TBPcheap > tr > td:first-child          {padding-left: 14px; border-left: 4px solid #67d547; }
#content table.result tbody.TBPcheap > tr > td.fareCheap            {position: relative;}
#content table.result tbody.TBPcheap > tr > td.fareCheap::before    {content: '\20AC'; color: #fff; background-color: #78be14; width: 24px; height: 24px; padding: 0 7px; font-weight: bold; font-size: 1.5em; position: absolute; top: 0; right: 16px; border-radius: 0 0 6px 6px;}
#content table.resultsOverview > tr > td.fareCheap span.fareOutput::after {font-weight:normal; content: '**'; color: #f00;font-size: 0.75em;vertical-align: top; }
#content .hfs_mapFilialAgentur{
  background-color:#fff;
	border:1px solid #000;
	padding:2px;
}



#hafasMaps .mapzoom,
#content .mapzoom                {line-height: 1.4em;}
#hafasMaps .mapzoom img,
#content .mapzoom img            {vertical-align: middle; margin: 0px; margin-right: 8px;}
#hafasMaps .mapzoom div,
#content .mapzoom div            {margin: 8px;}
#hafasMaps .mapzoom div a,
#content .mapzoom div a          {background-color: #FFFFFF; border:1px solid #878c96; display: block; text-decoration: none; padding: 8px;}
#hafasMaps .mapzoom div a:hover,
#content .mapzoom div a:hover    {background-color: #e8e8e8; color:#333;}
#hafasMaps .mapzoom div.active a,
#content .mapzoom div.active a   {background-color: #878c96; color: #fff; box-shadow:0 1px 7px 0 rgba(0, 0, 0, 0.5) inset; font-family:DBSansBold;}


#hafasMaps .mapzoom div.zoomin a,
#hafasMaps .mapzoom div.zoomout a,
#content .mapzoom div.zoomin a,
#content .mapzoom div.zoomout a,
#content .mapzoom div.zoomin span.zoomIconSurrounder,
#content .mapzoom div.zoomout span.zoomIconSurrounder  {width:32px; height:32px; background-color: #fff; padding:7px; display:inline-block;}
#hafasMaps .mapzoom div.zoomin a:hover,
#hafasMaps .mapzoom div.zoomout a:hover,
#content .mapzoom div.zoomin a:hover,
#content .mapzoom div.zoomout a:hover  {background-color: #e8e8e8; color:#333;}
#content .mapzoom div.zoomin span.zoomIconText,
#content .mapzoom div.zoomout span.zoomIconText {position:absolute; left:40px; top:6px;}
#content .mapzoom div.zoomin span.zoomIconSurrounder,
#content .mapzoom div.zoomout span.zoomIconSurrounder {border:1px solid #878c96; background-color:transparent;}
#content .mapzoom .alpha50       {opacity: 0.5;filter:Alpha(opacity=50);}
#content .mapbuttons             {margin:8px; margin-top:20px;}
#hafasMaps                              {font-size: 1.4em;}

#content table.gisobjselect      {margin:8px 0px 12px 8px;}
#content table.routeDescription td    {background-color: #ffffff; padding: 0px 8px; border-top: 4px solid #F5F5F5;}
#content table.routeDescription th    {width: auto; font-weight:normal; background-color: #E4E4E4; padding: 0px 8px; white-space: nowrap; height: 24px; border:none;}
#content table.routeDescription th.borderright,
#returnJourneyLayer table.partSearchTable th.borderright,
#content .borderright           {border-right:1px solid #fff;}
#content .borderleft            {border-left:1px solid #fff;}

#content div.stInfoContainer  {padding-bottom:8px;}

#content .result table.stInfoTable,
#content table.stInfoTable,
.hafasPopup .moreDetail table.stInfoTable   {width: 360px;}
#content .result table.stInfoTable tr td,
#content table.stInfoTable tr td,
.hafasPopup .moreDetail table.stInfoTable tr td {background: #FFFFFF; padding: 4px; border-bottom: 5px solid #F5F5F5; line-height: 24px;}
.hafasPopup .moreDetail table.stInfoTable tr td {}
#content table.stInfoTable tr td.stInfoValue,
.hafasPopup .moreDetail table.stInfoTable tr td.stInfoValue {line-height: 16px; padding-top: 10px;}
#content table.stInfoTable tr td.stInfoValue img,
.hafasPopup .moreDetail table.stInfoTable tr td.stInfoValue img {margin-top: -6px;}
#content table.stInfoTable tr td.stInfoName,
.hafasPopup .moreDetail table.stInfoTable tr td.stInfoName  {background-repeat: no-repeat; background-position: 4px 6px; padding-left: 40px; padding-top: 10px; line-height: 16px; height: 21px; vertical-align: baseline;}
#content .result table.stInfoTable tr td img,
#content table.stInfoTable tr td img,
.hafasPopup .moreDetail table.stInfoTable tr td img {padding-right: 8px; vertical-align: middle; margin: 0px;}
#content .result div.stInfoAddress,
#content div.stInfoAddress,
.hafasPopup .moreDetail div.stInfoAddress {padding: 0 8px 8px; width: 210px; line-height:1.5em;}
#zplusPane_stInfo div.stInfoAddress {font-size: 0.7em;}
#zplusPane_stInfo div.stInfoMobilityHint {font-size: 0.7em;}
#content .result div.stInfoAddress div.weekdays,
#content div.stInfoAddress div.weekdays,
.hafasPopup .moreDetail div.stInfoAddress div.weekdays {float:left; width:40px;}
#content .result div.stInfoAddress div.openinghours,
.hafasPopup .moreDetail div.stInfoAddress div.openinghours {}
#content .result div.stInfoPlan,
#content div.stInfoPlan,
.hafasPopup .moreDetail div.stInfoPlan  {height: 116px;}
#content .result div.stInfoThumbnail,
.hafasContent div.stInfoThumbnail,
.hafasPopup .moreDetail div.stInfoThumbnail {margin-right: 16px;}
#content .result div.stInfoThumbnail img,
#content div.stInfoThumbnail img,
.hafasPopup .moreDetail div.stInfoThumbnail img {border: 1px solid #ccc;}
.hafasPopup .moreDetail table.stInfoLinkTable {font-size: 1.0em;}
.hafasPopup .downloadText                   {padding-right: 130px;}
#content .sq_results h1.pagetitle,
#content .tp_journeyfolder h1.pagetitle    {margin-bottom: 16px;}
#content .sq_results table.moreDetail {border: 8px solid #F2F2F2;}
#content .queryBox table.stInfoCompose td {padding-top: 4px; padding-bottom: 4px; padding-right: 40px;}

.hafasPopUpRect                          {position:absolute;visibility:hidden;z-index:100;border: #c00 2px solid;cursor:crosshair;opacity:0.5;filter:Alpha(opacity=50, finishopacity=50, style=2);}

#content .globalAppContent       {border: 8px solid #f2f2f2; border-width: 16px 8px 8px; padding: 8px;}
#content .globalAppContent h2    {margin: 0px; padding: 8px 0px; background-color: #fff;}
#content .ecologyHint            {font-family:DBSansBold; margin:24px 0 16px; white-space: normal;}
#content table.ecologySummary td {padding: 2px 8px;}
#content table.ecologyOverview   {width: 100%;}
#content table.ecologyOverview td  {background-color: #f2f2f2; padding: 3px;}
#content table.ecologyOverview tr.duration td {background: #f6f6f6; font-size: 1.3em; font-weight: bold; color: #555; text-align: center;}
#content table.ecologyOverview tr.duration td img {vertical-align: middle;}
#content table.ecologyOverview td.col     {border-right: 2px solid #fff;}
#content table.ecologyOverview td.ecocloud {text-align: center; vertical-align: bottom;}
#content table.ecologyOverview div.ecocloud {position: relative;  color: #fff; font-size: 1.7em; font-weight: bold;}
#content table.ecologyOverview div.ecocloud div {position: absolute; left: 0; bottom: 25%; width: 100%; text-align: center; white-space: nowrap; text-shadow: 0 0 2px #999999;}
#content table.ecologyOverview div.ecocloud img {padding: 0 10px;}
#content table.ecologyOverview td.train   {background: #F2F2F2 url("../img/Bahn.png") left bottom no-repeat; height: 50px; vertical-align: top;}
#content table.ecologyOverview td.car     {background: #F2F2F2 url("../img/Auto.png") left bottom no-repeat; height: 50px; vertical-align: top;}
#content table.ecologyOverview td.flight  {background: #F2F2F2 url("../img/Flug.png") left bottom no-repeat; height: 50px; vertical-align: top;}

#content div.ecologyBox           {background-color: #fff; padding: 24px; border-radius:4px;}
#content div.ecologyBox .jsShow   {display: inline-block;}
#content div.ecologyOverview      {display: flex;}
#content div.ecologyOverview div.ecoCloud {color: #fff; margin-right: 8px;}
#content div.ecologyOverview div.ecoCloud > div:first-child {padding:24px 24px 16px; width:284px; height:184px;}
#content div.ecologyOverview div.ecoCloud:last-child {margin: 0;}
#content div.ecologyOverview div.train,
#content div.ecologyOverview div.car,
#content div.ecologyOverview div.flight  {background-position:left top; background-repeat:no-repeat; background-size:284px 184px;}
#content div.ecologyOverview div.train   {background-image:url(../img_responsive/umc_graphic-980_train_DB-coolgrey300.png);}
#content div.ecologyOverview div.train.ecoCloud_gruen {background-image:url(../img_responsive/umc_graphic-980_train_DB-lightgreen500.png);}
#content div.ecologyOverview div.car     {background-image:url(../img_responsive/umc_graphic-980_car_DB-coolgrey300.png);}
#content div.ecologyOverview div.car.ecoCloud_gruen {background-image:url(../img_responsive/umc_graphic-980_car_DB-lightgreen500.png);}
#content div.ecologyOverview div.flight  {background-image:url(../img_responsive/umc_graphic-980_airplane_DB-coolgrey300.png);}
#content div.ecologyOverview div.flight.ecoCloud_gruen {background-image:url(../img_responsive/umc_graphic-980_airplane_DB-lightgreen500.png);}
#content div.ecologyOverview div.ecoMOT  {font-family: DBSansBold; font-size: 20px;}
#content div.ecologyOverview div.ecoValue   {font-family: DBSansBold; font-size: 55px;}
#content div.ecologyOverview div.noEcoValue {font-family: DBSansRegular; font-size:16px; line-height:20px; margin-top:24px;}
#content div.ecologyOverview div.ecoUnit    {font-family: DBSansBold; font-size: 16px;}
#content div.ecologyOverview div.ecoCO2Bar  {height: 4px; background-color: #fff; border-radius: 2px; margin: 8px 0 16px 0;}
#content div.ecologyOverview div.ecoDuration  {padding-top: 8px; color: #646973; font-family: DBSansRegular; font-size: 12px; line-height:16px;}
#content div.ecoConnection         {display: flex; font-family: DBSansRegular; font-size: 14px;}
#content div.ecoConnection div      {padding-right: 16px;}
#content div.ecologySummary                 {background-color: #F0F3F5; padding: 16px;}
#content #ecoConSwitch           {width: 275px; height: 44px;border: 1px solid #282d37; border-radius: 4px;}
#content #ecoConSwitch span a    {display: inline-block; width: 100%; height: 100%;}
#content div.ecoQuery            {font-family: DBSansRegular; font-size: 14px;}

/* TODO NGR: UMC Content */
#content .resultContentHolder.ecology   {padding-top: 24px;}
#returnJourneyLayer .queryBox.ecoQuery,
#content .queryBox.ecoQuery     {font-size:14px; font-family:DBsansRegular; line-height:20px; margin-bottom:16px;}
#returnJourneyLayer .queryBox.ecoQuery > div:first-child,
#content .queryBox.ecoQuery > div:first-child {margin-bottom:16px;}
#returnJourneyLayer .queryBox.ecoQuery h3,
#content .queryBox.ecoQuery h3,
#returnJourneyLayer .queryBox.ecoQuery h4,
#content .queryBox.ecoQuery h4  {font-weight:normal; font-size:16px; line-height:24px; padding:16px 0; margin:0;}
#content .queryBox.ecoQuery h3 + h4,
#returnJourneyLayer .queryBox.ecoQuery h3 + h4 {padding-top:0;}
#returnJourneyLayer .queryBox.ecoQuery h3,
#content .queryBox.ecoQuery h3  {font-family:DBsansBold;}
#returnJourneyLayer .queryBox.ecoQuery h4,
#content .queryBox.ecoQuery h4  {font-family:DBSansRegular;}
#returnJourneyLayer .queryBox.ecoQuery .flexContent,
#content .queryBox.ecoQuery .flexContent {display:flex; flex-direction:row; gap:8px;}
#returnJourneyLayer .queryBox.ecoQuery .flexContent p,
#content .queryBox.ecoQuery .flexContent p {font-size:16px; line-height:24px;}
#returnJourneyLayer .queryBox.ecoQuery .radio-wrapper,
#content .queryBox.ecoQuery .radio-wrapper {margin-bottom:16px;}
#returnJourneyLayer .queryBox.ecoQuery .querybutton {margin-top:32px;}
#returnJourneyLayer .queryBox.ecoQuery .querybutton button {margin:0;}
#content .ecologyBox .ecologySummary .ecoConnection   {margin-bottom:8px;}
#content .ecologyBox .ecologySummary .ecoConnection .conSummaryDep,
#content .ecologyBox .ecologySummary .ecoConnection .conSummaryArr,
#content .ecologyBox .ecologySummary .conSummaryTime  {line-height:20px; background-position:left top; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
#content .ecologyBox #ecoConSwitch                    {display:flex; flex-direction:row; justify-content:space-between; margin-bottom:16px;}
#content .ecologyBox #ecoConSwitch .icons-arrow-left-btn,
#content .ecologyBox #ecoConSwitch .icons-arrow-right-btn {height:44px;}
#content .ecologyBox #ecoConSwitch .conSummaryTime    {background-position:left center; line-height:44px;}
#content .ecologyBox .currentSettingsToggler          {font-family:DBsansRegular; font-size:14px; line-height:20px; color:#282D37; cursor:pointer; padding-right:28px; background-image: url(../img_responsive/20dp_icon_navigation_expand-more.svg); background-position: right center; background-size: 20px 20px; background-repeat: no-repeat;}
#content .ecologyBox .currentSettingsToggler.opened   {background-image: url(../img_responsive/20dp_icon_navigation_expand-less_dbred.svg);}
#content .ecologyBox #ecologyCurrentSettings          {color:#878C96; font-size:12px; line-height:16px; margin: 8px 0 16px;}
#content .ecologyBox .button-inside                   {margin-top:16px; font-size:16px; line-height:24px;}


#content div.hafasEcology       {margin-top:32px; padding:24px; background-color:#FFFFFF;}
#content div.hafasEcology.last  {margin-bottom:40px;}
#content div.hafasEcology h2    {font-family: DBsansBold !important; font-size:16px; line-height:24px; margin:0 0 16px; padding:0;}
#content .ecologyDisplayMode    {margin-bottom:32px;}
#content .ecologyDisplayMode .custom-select {width:465px;}
#content .ecologyResult         {display:flex; flex-direction:row; flex-wrap:wrap; gap: 16px; justify-content:flex-start;}
#content .ecology sub,
#content .ecologyResult sub     {vertical-align: sub;}
#content .ecologyDiagramDisplayMode {display:none;}
#content .diagramContainer      {width:284px;}
#content .diagramContainer h3   {font-family: DBsansRegular; font-weight:normal; font-size:16px; line-height:24px; margin-bottom:4px;}
#content .diagramContainer p    {font-family: DBSansRegular; font-size:14px; line-height:20px; color:#646973; margin:0;}
#content .diagramTableWrapper   {background-color:#F0F3F5; padding: 13px 24px; margin:8px 0;}
#content table.diagram tr.caption td {font-family: DBSansRegular; font-size:12px; line-height:16px; text-align:center; color:#282D37;}
#content table.diagram td            {margin: 0px; padding:0; font-family:DBHeadRegular; font-size:12px; line-height: 0.1em;}
#content table.diagram td.caption    {padding-right:4px;}
#content table.diagram td img        {margin:0;}
#content table.diagram .center   {text-align: center;}
#content table.diagram .bottom   {vertical-align: bottom; font-size: 0;}
#content table.diagram .barCar      {background-color: #f39200; display:inline-block;}
#content table.diagram .barFlight   {background-color: #9B000E; display:inline-block;}
#content table.diagram .barTrain    {background-color: #63A615; display:inline-block;}
#content table.diagram .barOepnv    {background-color: #9FD45F; display:inline-block;}
#content table.diagram .barTaxi     {background-color: #C9EB9E; display:inline-block;}
#content .diagramTableWrapper + p    {padding:0; font-size:12px; line-height:16px;}
#content .hafasEcology .dataSource   {font-family:DBSansRegular; font-size:12px; line-height:16px; padding:0; margin: 16px 0 0; color:#646973;}
#content .hafasEcology .ecologyPageFooter   {font-size:16px; line-height:24px; font-family:DBsansRegular; margin-bottom:8px;}
#content .hafasEcology .ecologyLinks        {display:flex; flex-direction:column; gap:8px; font-fize:14px; line-height:20px;}

/** TABELLE **/
#content .ecoTable         {display:flex; flex-direction:column; font-family:DBsansRegular; font-size:12px; line-height:16px; color:#282D37;}

/* Header */
#content .ecoTableHeader   {display:flex; flex-direction:column; font-size:14px; line-height:20px; color:#646973; padding-left:24px; padding-right:24px;}
#content .topHeadline      {padding-top:0; padding-bottom:0;}
#content .subHeader        {padding-top:8px; padding-bottom:16px;}
#content .topHeadline,
#content .subHeader,
#content .subHeader *      {display:flex; flex-direction:row; gap:8px;}
#content .topHeadline *,
#content .subHeader *      {flex:1; gap:8px;}
#content .topHeadline .flexWide,
#content .subHeader .flexWide    {flex:2;}
#content .emissionHeadlines      {display:none; padding: 0; font-size: 14px; line-height: 20px; margin-bottom: 8px; color: #646973;}

#content .ecoTableContent .ecoContentRow {border-top:1px solid #282d3733;}

#content .ecoTableValues,
#content .ecoTableValues > div      {display:flex; flex-direction:row;}
#content .ecoTableValues            {padding:16px 24px; gap:0 8px;}
#content .ecoTableValues *          {flex:1;}
#content .ecoTableValues .flexWide  {flex:2;}
#content .ecoTableValues .emissionHeadlines,
#content .ecoTableValues .ecoTableHeader1,
#content .ecoTableValues .singleEmissionHeadline {display:none;}
#content .ecoTableValues .singleEmissionHeadline {font-size:14px; line-height:20px; color:#646973; margin-bottom:18px;}
#content .ecoTableValues .emissionOEV,
#content .ecoTableValues .emissionCar,
#content .ecoTableValues .emissionFlight         {padding-top:5px; gap:8px;}
#content .emissionType     {width:250px; flex:none !important; display:flex; flex-direction:column !important; word-wrap:break-word;}
#content .emissionName     {font-size:16px; line-height:24px; margin-bottom:4px;}
#content .emissionUnit     {color:#878C96;}
/** TABELLE **/

#content div.hintThick           {margin:20px 0; font-size: 0.75em; font-family:Arial, sans-serif !important;}
#content div.hintThick a         {font-size:1em !important; font-family:Arial, sans-serif !important;}

#fadeout                                {position: fixed; top: 0; right:0; bottom:0; left:0; z-index: 10000; background-color: #000; opacity: 0.5;filter:Alpha(opacity=50);}
#fadeout.dimmerLight                    {background-color: #aaa;}
#fadeOutResult #fadeout                 {position: absolute; top: -50px;}
#mafoDimmer                             {position: absolute; top: 0px; width: 100%; z-index: 10005; background-color: #aaa; opacity: 0.6;filter:Alpha(opacity=60)}
#mafoLayer                              {position: fixed; width: 660px; z-index: 10006; background-color: #fff; padding: 20px 20px 10px;}
#waitscreen                             {position: absolute; font-size: 0.7em; text-align: center; top: 45%; width: 980px; z-index: 11000;}
#returnJourneyLayer                     {position: absolute; width: 752px; z-index: 10001; background-color: #fff; padding: 24px;}
#returnJourneyLayer.sotParameterChange  {padding:20px 0;}
#returnJourneyLayer.sotParameterChange h2 {padding-left:20px; padding-right:20px;}
#returnJourneyLayer.sotParameterChange p.sotChangeIntro {padding-left:20px; padding-right:20px; margin-bottom:20px;}
#infoLayerReservation                   {background-color: #fff; padding: 20px;}
#rispush_notloggedin                    {position: absolute; width: 600px; z-index: 10001; background-color: #fff; padding: 0px;}
#rispush_notloggedin h2                 {padding: 0 8px;}
#rispush_notloggedin .layerClose        {padding-top: 8px; padding-right: 8px;}
#rispush_notloggedin .layerQueryBox     {padding: 8px; padding-right: 100px; margin-bottom: 20px;}
.HFShide                                {display: none;}
div#doc #returnJourneyLayer             {left: 25%; top: 30%; width: 400px; height: 20px; border: 1px solid #000; padding: 30px; font-weight: bold;}
div#doc #returnJourneyLayer a           {text-decoration: underline;}
div#doc iframe#JSLayer                  {padding: 0; border: none; position: absolute; left: 25%; top: 30%; width: 462px; height: 82px;}
div.hafasHint                           {background-color: #F2F2F2; margin-bottom: 2px; padding: 8px; font-size: 0.7em; float: none;}
div.hafasHint img                       {vertical-align: middle;}
div.hafasHint div.hintText              {padding-left: 20px;}
div.crossSellingBanner                  {float: left; font-size: 1em; color: #333; margin: 0 10px 20px; width:300px;}
div.crossSellingBanner a                {}
div.crossSellingBanner div              {padding:12px 22px;}
div.crossSellingBanner img              {margin: 0px; vertical-align: middle;}
div.mouseoverTT                         {position: absolute; padding: 8px; max-width: 200px; background-color: #FFFFFF; color: #282D37; font-size: 12px; line-height:16px; font-family:DBSansRegular; border-radius:4px; box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.4);}
div.mouseoverTT::before                 {background: #FFFFFF none repeat scroll 0 0; content: ""; display: block; height: 16px; width:16px; left: 10px; position: absolute; top: -8px; transform: skew(0deg) rotate(135deg); -ms-transform: skew(0deg) rotate(135deg); -webkit-transform:skew(0deg) rotate(135deg); box-shadow: -3px 3px 4px 0 rgba(0, 0, 0, 0.12);}
div.bubbleTooltip                       {position: absolute; z-index: 11; padding: 14px; max-width: 400px; background-color: #FFFFFF; color: #282D37; font-size: 14px; line-height: 20px; font-family:DBSansRegular; border-radius:4px; box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.4);}
div.bubbleTooltip.hide                  {display: none;}
div.bubbleTooltip p                     {font-size: 14px; line-height: 20px;}
div.bubbleTooltip p.firstWide           {margin-top: 16px;}
div.bubbleTooltip::before               {background: #FFFFFF none repeat scroll 0 0; content: ""; display: block; height: 18px; width:18px; left: 10px; position: absolute; top: -7px; transform: skew(0deg) rotate(315deg); -ms-transform: skew(0deg) rotate(315deg); -webkit-transform:skew(0deg) rotate(315eg); box-shadow: 3px -3px 3px 0 rgba(0, 0, 0, 0.12);}
div.bubbleTooltip.rightPos::before      {right: 10px; left: auto;}
div.bubbleTooltip ul                    {font-size: 14px;}
#bikeInformationBox.bubbleTooltip       {right: 45px;}
#bikeInformationBox.bubbleTooltip::before {right: 10px;}

/* tp availability */
#content .summary img,
#returnJourneyLayer .summary img          {border:0px; vertical-align:middle; margin-right:8px;}
#content .summary                  {padding-top: 8px; margin-bottom: 2px;}
#content .summaryLinks             {padding-top: 1px; font-size: 0.7em; margin-bottom: 24px;}
#content tr.traveldata th.left     {border-top: 2px solid #fff; padding-top: 8px; padding-bottom:8px;}
#content tr.traveldata td          {border-top: 2px solid #fff; padding-top:9px;}
#content .summary th               {line-height:1.5em; padding-top:8px; padding-left:8px; font-weight:bold;}
#content .summary th.left          {width:76px;}
#content .summary th.mc            {width:120px;}
#content .summary td.mc            {width:20px;}
#content .summary td               {vertical-align:top; padding-bottom:8px; padding-left:8px;}
#content .summary td.station       {width:190px;}
#content .summary td.date          {width:70px;}
#content .summary td.timetx        {width:20px;}
#content .summary td.time          {width:30px; padding-left:0px;}
#content .summary td.duration      {width:50px;}
#content .summary td.changes       {width:40px;}
#content .summary td.topPadding    {padding-top: 8px;}
#content .summary input            {font-size: 1em;}
#content .summary #esListboxS,
#content .summary #esListboxZ      {padding-top: 8px;}
#content .summary select,
#content .summary #esListboxS select,
#content .summary #esListboxZ select {font-size: 1.0em;}
#content .summary .noIcon {width: 40px;}
#content .summary .summaryLight {background-color: #fff;}
#content table.smallMarginBottom   {margin-bottom: 2px !important;}
/*#content .summary td.products    {width:60px;}*/
#content .querySummaryPadding      {padding-left: 108px;}
#content h2.secondclass            {padding:15px !important; margin-top: 8px; margin-bottom:2px; background-color:#d5d5d5; color: #333;}
#content h2.secondclass img.number {height:25px; width:27px;margin:6px 4px 0px 31px; vertical-align:text-bottom;}
#content h2.firstclass             {padding:15px !important; margin-top: 8px; margin-bottom:2px; background-color:#8f949e; color:#fff;}
#content h2.firstclass img.number  {margin:6px 4px 0px 31px; vertical-align:text-bottom;}
#content h2.firstclass img.teaser  {float:right; margin:0px;}
#content h2.firstclass ul          {list-style:none; margin-left:162px; margin-bottom:0px; padding-bottom:0px; position:relative; top:-10px;}
#content h2.firstclass ul li       {float:left;padding-right:5px; font-weight:bold;}
#content h2.firstclass .textteaser {font-size: 0.7em;}
#content h2.firstclass span,
#content h2.secondclass span       {margin-left:30px; font-size:0.7em; font-weight:bold;}
#content p.hint                    {padding-left:0.45em;}
#content div.hint                  {margin-bottom:10px;}
#content .nachtzug div.hint        {width:100% !important;}
#content div.tempHint              {margin-bottom: 8px;}

#content table.availability             {width:100%; margin-bottom:2px; font-size:0.75em;}
#content table.availability td          {vertical-align:top; padding:8px; padding-bottom:13px; line-height:1.33em; font-size:1em;}
#content table.availability tbody       {width:100%;}
#content table.availability tbody.boxShadow td {background-color:#FFFFFF;}
#content table.availability th          {border-bottom: 10px solid #F5F5F5; font-size:1em; padding:3px 8px;}
#content table.availability td img      {vertical-align: middle;}
#content table.availability td.icon     {width:32px;}
#content table.availability th.bullet   {width:8px; vertical-align: top; padding-top: 8px;}
#content table.availability td.icon img {margin-left:8px;}
#content table.availability th.bullet img {margin:0;}
#content table.availability td.type     {padding-left: 18px; font-family: DBSansBold; font-size:1.4em; position: relative;}
#content table.availability div.type    {font-family: DBSansBold; font-size:1.4em; position: relative;}
#content table.availability tr.first td {padding-top:13px; padding-bottom:8px;}
#content table.availability td.dbIcon   {line-height:1.8em;}
#content table.availability td.condition {width:260px;}
#content table.availability td.price    { border-bottom: 2px solid #ccc; width:auto; white-space: nowrap; font-family:DBSansBold; font-size: 1.25em; vertical-align: middle; text-align:center; border-left: 2px dashed #ccc; position: relative; width: 235px; z-index: 2;}
#content table.availability tr.ticketList td.price {border-bottom: none;}
#content table.availability tr.ticketList td.price::before,
#content table.availability tr.ticketName td.price::before {content: ""; display: block; width: 14px; height: 14px; position: absolute; top: -8px; left: -8px; box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.4); border: 1px solid #ccc; border-top: none; border-radius: 0 0 7px 7px; background-color: #fff; clip: rect(7px 14px 14px 0);}
#content table.availability tr.ticketName td.price::after,
#content table.availability tr.ticketList td.price::after,
#content table.availability tr.ticketName td.price::after       {z-index: 1;content: ""; display: block; width: 14px; height: 14px; position: absolute; bottom: -8px; left: -8px; box-shadow:inset 0 2px 4px 0 rgba(0, 0, 0, 0.4); border: 1px solid #ccc; border-bottom: none; border-radius: 7px 7px 0 0; background-color: #fff; clip: rect(0px 14px 7px 0);}
#content table.availability td.price .booking {margin-top:10px;}
#content table.availability td.price .smallInfo   {font-size: 0.8em; font-family: Arial, sans-serif;}
#content table.availability.verbundAvail .inactivePrice {color: #646973; font-size: 16px;}
#content table.availability.verbundAvail td.price {font-family: Helvetica Neue, Arial, Helvetica, sans-serif;  font-size: 20px; line-height: 1.1em;}
#content table.availability.verbundAvail td.price .button-inside {font-size: 16px; line-height: 21px; margin-bottom: 8px;}
#content table.availability.verbundAvail td.price .smallInfo {font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: 13 px; font-weight: bold; white-space: normal;}
#content table.availability.verbundAvail td.price .booking {margin-top: 7px;}
#content table.availability.verbundAvail td.price .booking {margin-top: 7px;}
#content table.availability.verbundAvail td.price .button-inside span.button-border a {padding: 5px 28px !important;}
#content table.availability.verbundAvail td.type div.subheadline {font-size: 14px; font-family: DBSansRegular;}
#content table.availability.verbundAvail td.price .button-inside span.button-border a {background-color: #f00; color: #fff; border-radius: 0; border: none; box-shadow: #00000080 1px 2px 2px 0px; font-weight: bold;}
#content table.availability.verbundAvail td.price .button-inside span.button-border a:hover {background-color: #c00;}
#content table.availability.verbundAvail + p.overviewButtons {margin-top: 16px;}
#content table.availability td div.direction {font-family:DBSansRegular;}
#content table.availability td.out     {border-bottom: none !important;}
#content table.availability tr.ticketName td {padding-bottom: 0;}
#content table.availability tr.ticketListFirst.prOpen td {border-bottom: none;}
#content table.availability tr.ticketList.prOpen td.price {border-bottom: none;}
#content table.availability tr.ticketList.prOpen td.price::after,
#content table.availability tr.ticketList.prOpen td.price::before {display: none;}
#content table.availability tr.ticketList td.price {border-left: none;}
#content table.availability tr.ticketList td.price:before,
#content table.availability tr.ticketList td.price:after {left: -6px;}
#content table.availability tr.ticketList td.price .booking {display: inline;}
/*#content table.availability tr.listTicket td:first-child:before {content: ""; display: block; width: 16px; background-color: #f6f6f6; position: absolute; left: 0px; top: -2px; height: 100%; box-sizing: unset; border-bottom: 2px solid #f6f6f6;}*/
#content table.availability tr.listTicket.ticketName td:first-child:before {}
#content table.availability tr.listTicket td {position: relative;}
#content table.availability tr.listTicket td.price {}
#content table.availability tr.ticketListSep td {background-color: #f6f6f6; border-bottom: 2px solid #ccc; height: 24px;}
#content table.availability tr.listTicket td.price div.listTicketBorder {background-color:#f6f6f6; width: 16px; position: absolute; right: 0px; top: 0px;}
#content table.availability tr.listTicket td.type div.listTicketBorder,
#content table.availability tr.listTicket td.zoneTime div.listTicketBorder {background-color:#f6f6f6; width: 16px; position: absolute; left: 0px; top: 0px;}
#content table.availability tr.listTicket td.type,
#content table.availability tr.listTicket td.zoneTime {padding-left: 32px;}
#content table.availability tr.listTicket td.price {padding-right: 32px;}
/*#content table.availability tr:nth-last-child(2) td.zoneTime {border-bottom: 2px solid #ccc;}*/

/*
#content table.availability tr.listTicket td:first-child {background-color: #f6f6f6; padding-right: 0;}
#content table.availability tr.listTicket td:last-child {background-color: #f6f6f6;}
#content table.availability tr.listTicket td {padding-top: 0;}
#content table.availability tr.listTicket td.price {padding-top: 0; padding-bottom: 0; padding-left: 0;}
#content table.availability tr.listTicket td.price .listTicketContent {}
#content table.availability tr.listTicket .listTicketContent {background-color: #fff; padding-top: 8px;}
#content table.availability tr.listTicket td:first-child .listTicketContent {padding-left: 16px; padding-right: 8px;}
*/
#content table.availability td.zoneTime {padding-left: 18px; font-family: DBSansRegular; font-size: 1.1em;}
#content table.availability td.zoneTime3Col {width: 273px;}
#content table.availability tr.ticketListFirst td,
#content table.availability tr.ticketList td.price,
#content table.availability tr.return td,
#content table.availability tr.first td {border-top:0px; border-bottom: 2px solid #ccc;}
#content table.availability tr:last-child td {border-top:0px; border-bottom: none;}
#content table.availability tr:nth-last-child(2) td {border-top:0px; border-bottom: none;}
#content table.availability tr.listTicket.first td {border-top:0px; border-bottom: 2px solid #ccc !important;}
#content table.availability tr.ticketListSep + tr.ticketName  td.type::before,
#content table.availability tr.ticketListSep td.type::before,
#content table.availability tr.ticketList td.type::before,
#content table.availability tr:first-child td.type::before {content: ""; display: block; width: 10px; height: 10px; position: absolute; top: -9px; right: -6px; border-radius: 0 0 7px 7px; background-color: #f5f5f5;}
#content table.availability tr.offerCond:last-child td:last-child {position: relative;}
#content table.availability tr.offerCond:last-child td:last-child::before {z-index: 2; content: ""; display: block; width: 10px; height: 9px; position: absolute; bottom: -8px; right: -6px; border-radius:7px 7px 0 0; background-color: #eee;}
#content table.availability tr.offerCond div.conditionText {position: relative;}
#content table.availability tr.offerCond .toggleThis div.conditionText {overflow: hidden; height: 100px;}
#content table.availability tr.offerCond .toggleThis.conditionOpen div.conditionText {height: auto;}
#content table.availability tr.offerCond div.conditionFade {display: none; position: absolute; bottom: 0; height: 40px; width: 100%; background-image: linear-gradient(0deg, rgb(255, 255, 255) 10%, rgba(9, 9, 121, 0) 100%);}
#content table.availability tr.offerCond .toggleThis div.conditionFade {display: block;}
#content table.availability tr.offerCond .conditionToggler {display: none; cursor: pointer; padding: 4px 80px 0;}
#content table.availability tr.offerCond .toggleThis div.conditionToggler {display: block;}
#content table.availability tr.offerCond .toggleThis div.conditionToggler .closeCond {display: none;}
#content table.availability tr.offerCond .toggleThis.conditionOpen div.conditionToggler .closeCond {display: inline;}
#content table.availability tr.offerCond .toggleThis.conditionOpen div.conditionToggler .openCond {display: none;}
#content table.availability tr.offerCond .toggleThis.conditionOpen div.conditionFade {display: none;}
#content table.availability tr.last td  {}
#content table.availability tr.ticketList td {background-color: #f6f6f6; cursor: pointer;}
#content table.availability tr.ticketListFirst td {background-color: #f6f6f6; cursor: pointer;}
/*
#content table.availability tr.ticketList td.price {background-color: #f6f6f6 !important;}
*/
#content table.availability tr.ticketList .ticketListOpen {display: inline;}
#content table.availability tr.ticketList.prOpen .ticketListOpen {display: none;}
#content table.availability tr.ticketList .ticketListClose {display: none;}
#content table.availability tr.ticketList.prOpen .ticketListClose {display: inline;}

#content table.firstclass td            {background-color:#eee; border-top:2px solid #fff;}
#content table.firstclass td.price,
#content table.firstclass td.booking    {background-color:#fff; border-top:2px solid #eee;}
#content table.firstclass tr.last td    {border-bottom:2px solid #fff;}
#content table.firstclass tr.last td.price,
#content table.firstclass tr.last td.booking    {border-bottom:2px solid #eee;}
#content table.availability tr.kampagne th.bullet img   {display: none;}
#content table.availability tr.kampagne td.type         {padding-bottom: 0;}
#content table.availability tr.kampagne td.type img     {margin-bottom: 0;}

#content table.nighttrain th.price div {font-weight:normal;}
#content table.nighttrain          {border-collapse:separate;}
#content table.nighttrain th       {padding:4px 8px; border-bottom:2px solid #fff;}
#content table.nighttrain th a     {text-decoration:underline;}
#content table.nighttrain th.type  {vertical-align:bottom;}
#content table.nighttrain th.price {width:140px;}
#content table.nighttrain th.doubleWidth {width:280px !important;}
#content table.nighttrain tr.last td.condition,
#content table.nighttrain td       {padding-bottom:7px; padding-top:7px; border-bottom:2px solid #fff;}
#content table.nighttrain td.condition     {width:300px; background-color:#fff; border-bottom:2px solid #eee;}
#content table.nighttrain td.price {width:140px; background-color:#d6dff2; border-left:2px solid #fff;}
#content table.nighttrain td.price img {margin-right:4px; vertical-align: middle;}
#content table.nighttrain tr.change td     {background-color:#fff; border-top:2px solid #f2f2f2; border-bottom:2px solid #f2f2f2;}
#content table.total tr td         {width:140px; border-bottom:0px; padding-top:4px; padding-bottom:4px; white-space:nowrap;}
#content table.total td.priceHint  {width:300px; vertical-align:top; white-space:normal;}
#content table td.autowidth,
#content table.chooseFK            {width: auto !important;}
#content div.availabilityCols      {font-family: DBSansRegular; font-size: 14px; line-height:20px; padding-bottom:40px;}
#content div.availabilityCols .linkBig {display:flex; align-items:center;}
#content div.availabilityRow       {margin-bottom:16px;}
#content div.firstAvailabilityRow       {margin-top: 0px;}
#content div.firstAvailabilityRow div.availabilityOffer  {}
#content div.availabilityCols a.arrowlinknarrow {padding-left: 16px !important;}
#content div.availabilityOffer div.availabilityOfferDirection {font-size: 12px; color: #646973; padding-top: 16px; padding-bottom: 4px;}
#content div.availabilityOffer div.availabilityOfferDirection + div.availabilityOfferName  {padding-top: 0 !important;}
#content div.availabilityOffer     {float: left; margin-right: 10px; border-radius: 4px; width: 225px; background-color: #fff; position: relative; box-shadow: 0 2px 4px 0 rgba(0,0,0,0.1);}
#content div.availabilityOffer.availabilityOffer_2                     {border-color: #d5d5d5; border: none;}
#content div.availabilityOffer.availabilityOffer_2.firstClassAvailable {margin-top:16px;}
#content div.availabilityOffer.availabilityOffer_1                     {border-radius: 0 4px 4px 4px;}
#content div.availabilityOffer.availabilityOffer_1.firstClassAvailable {margin-top:16px;}
#content div.availabilityOffer.lastOfferInRow {margin-right: 0;}
#content div.availabilityOffer div {padding: 4px 20px;}
#content div.availabilityOffer.availabilityOfferUpsellAufpreis {width: 100% !important; margin-top: 28px; font-size: 16px;}
#content div.availabilityOfferUpsellAufpreisContent {display: flex; flex-wrap: wrap;}
#content div.availabilityOffer.availabilityOffer_1.availabilityOfferUpsellAufpreis div.availabilityOfferClass {font-size: 14px; background-color: #282d37; color: #f0f3f5; width: 225px; padding: 1px 8px; top: -17px;}
#content div.availabilityOffer.availabilityOffer_1.availabilityOfferUpsellAufpreis div.availabilityOfferClass.upsellDisabled {background-color: #878c96; color: #f0f3f5;}
#content #UpsellAufpreisContent                     {color: #282d37; padding: 20px 24px 24px;}
#content #UpsellAufpreisContent .checkbox-wrapper   {padding-left: 0;}
#content #UpsellAufpreisContent label               {color: #282d37; font-family: DBSansRegular; padding-left: 38px !important; line-height: 18px; width: 388px; text-align: left; white-space: normal;}
#content #NoUpsellAufpreisContent.upsellDisabled    {color: #878c96;  padding: 20px 24px 24px;}
#content #NoUpsellAufpreisContent_disabled.upsellDisabled    {color: #878c96;  padding: 20px 24px 24px;}
#content #UpsellAufpreisContent.upsellDisabled      {color: #878c96;}
#content #UpsellAufpreisContent.upsellDisabled label {color: #878c96;}
#content #UpsellAufpreisContent.upsellDisabled #upsellTicketPre_enabled {display: none;}
#content #UpsellAufpreisContent.upsellDisabled #upsellTicketPre_disabled {display: inline;}
#content #UpsellAufpreisContent #upsellTicketPre_disabled {display: none;}
#content #availabilityUpsellTotal       {font-size: 18px; padding: 0 0 24px 0; color: #282d37; text-align: right; font-family: DBSansBold; margin-top: -12px;}
#content #availabilityUpsellTotalPrice  {margin-left:48px;}
#content #UpsellAufpreisContent .availabilityOfferUpsellBenefits .availabilityShortText {color: #282d37;}
#content #UpsellAufpreisContent.upsellDisabled  .availabilityOfferUpsellBenefits .availabilityShortText  {color: #878c96;}
#content #upsellTicketExtraCharge      {font-weight: bold;}

#content div.availabilityOffer div.cancellationTooltip {padding: 10px; -webkit-box-shadow: 0 0 12px -2px rgba(0,0,0,0.5);	box-shadow: 0 0 12px -2px rgba(0,0,0,0.5); border-radius: 4px; overflow: visible; margin-top: 8px; font-family: DBSansRegular; position: absolute; bottom: 55px; width: 217px; left: 3px; background-color: #fff; z-index: 9;}
#content div.availabilityOffer div.cancellationTooltip::before   {background: #fff;content: ""; display: block; height: 10px; position: absolute; bottom: -4px; left: 10px; transform: skew(0deg) rotate(135deg); -webkit-transform: skew(0deg) rotate(135deg); -moz-transform: skew(0deg) rotate(135deg); -ms-transform: skew(0deg) rotate(135deg); -o-transform: skew(0deg) rotate(135deg); width: 10px; box-shadow: 3px -3px 3px 0 rgba(0,0,0,0.12); }
#content div.availabilityOffer div.cancellationTooltip div.TTHint {font-family: DBSansBold; padding-bottom: 6px;}
#content div.availabilityOffer div.cancellationTooltip div.TTClose {font-family: DBSansBold; color: #ccc; position: absolute; right: 10px; cursor: pointer;}
#content div.availabilityOffer div.cancellationTooltip label.SspTTDontShowLabel {font-family: DBSansRegular !important; padding-left: 20px; text-align: left !important;}
#content .SspTTDontShowLabel   {text-align: left !important;}

#content div.availabilityCols div.availabilityOffer div.availabilityOfferName.availabilityHeight,
#content div.availabilityCols div.availabilityOffer div.availabilityOfferNameRet.availabilityHeight,
#content div.availabilityCols div.availabilityOffer div.availabilityOfferDirection.availabilityHeight {padding: 4px 20px;}
#content div.availabilityOffer div.availabilityOfferClass {background-color: #282d37; color: #fff; font-weight: bold; font-size: 1.1em; padding: 7px 8px;}
#content div.availabilityOffer_2 div.availabilityOfferClass {display: none; background-color: #d5d5d5; color: #000;}
#content div.availabilityOffer.availabilityOffer_1 div.availabilityOfferClass {margin: -2px -2px 0px -2px; padding-bottom: 9px; border-radius: 2px 2px 0 0; width: max-content; position: absolute; top: -14px; left: 2px; font-size: 12px; line-height:16px; font-weight: normal; padding: 0 8px;}
#content div.availabilityOffer div.availabilityOfferName,
#content div.availabilityOffer div.availabilityOfferNameRet {color: #282D37; font-size: 16px; font-family: DBSansBold;}
#content div.availabilityOffer div.availabilityShortText {position: relative; padding-left: 44px; font-size: 14px; color: #646973;}
#content div.availabilityShortText img {position: absolute; left: 20px; top: 3px; margin: 0; vertical-align: middle;}
#content div.availabilityOffer div.availabilityBorderCircleLeft  {width: 5px; height: 10px; border-radius: 0 5px 5px 0; border-left: 0; padding: 0; background-color: #f2f2f2; position: absolute; left: -2px; z-index: 9; box-shadow: inset -2px 2px 2px 0 rgba(0,0,0,0.1);}
#content div.availabilityOffer div.availabilityBorderCircleRight {width: 5px; height: 10px; border-radius: 5px 0 0 5px; border-right: 0; padding: 0; background-color: #f2f2f2; position: absolute; right: -2px; z-index: 9; box-shadow: inset 2px 2px 2px 0 rgba(0,0,0,0.1);}
#content div.availabilityOffer div.availabilityConLink {padding-bottom: 14px; padding-top: 20px;}
#content div.selectedOffer.availabilityOffer  {box-shadow: 0 2px 4px 0 rgba(0,0,0,0.3);}
#content div.selectedOffer div.availabilityBorderCircleLeft   {box-shadow: inset -2px 2px 2px 0 rgba(0,0,0,0.3);}
#content div.selectedOffer div.availabilityBorderCircleRight {box-shadow: inset 2px 2px 2px 0 rgba(0,0,0,0.3);}
#content div.selectedOffer div.availabilityPrice {}
#content div.availabilityOffer div.availabilityPrice      {border-top: 1px dashed #D7DCE1; margin-top: 5px; padding: 16px 23px 16px 22px; font-family: DBSansBold; position: relative;}
#content div.availabilityOffer div.availabilityPrice img  {margin: 0; vertical-align: middle;}
#content div.availabilityPrice div.availabilityPriceIcon {position: absolute; left: 40px; top: 26px;}
#content div.availabilityPrice div  {padding: 0;}
#content div.availabilityPrice label {display: block; text-align: right !important; color: #282d37; font-size: 18px !important; padding: 4px; padding-top: 3px !important; margin: 3px 0 0 0 !important; background-position: -3px 4px !important; opacity: 1; width: 100%; padding-right: 0; font-family:DBSansBold !important;}
#content div.availabilityPrice label .fareAmount  {font-size: 18px;}
#content div.availabilityPrice label.offerLabel img {vertical-align: middle;}
#content div.availabilityCols div.availabilityOffer div.availabilityHeight {padding: 0; margin: 0; min-height: 1px;}
#content div#availabilityUpsellTotal            {display:flex; align-items:center; justify-content:flex-end; font-family: DBSansBold; font-size: 18px; padding-bottom: 24px;}
#content div#availabilityUpsellTotal a          {margin-left: 14px;}
#content input.availButton          {margin: 0 !important; }
.icon-link-big-inside                       {padding: 16px;}
.iconLink.open .icon-link-big               {background-image:url("../img_responsive/24dp_icon_navigation_chevron-right.svg"); background-repeat:no-repeat; background-position:0px 0px; display: inline-block; vertical-align: top; height:24px; width:24px;}
.iconLink.close .icon-link-big              {background-image:url("../img_responsive/24dp_icon_navigation_expand-more.svg"); background-repeat:no-repeat; background-position:0px 0px; display: inline-block; vertical-align: top; height:24px; width:24px;}
.icon-link-big                              {margin-right: 8px;}
.linkBig                                    {font-family: DBHeadRegular; font-size: 18px; color: #282D37;}
.dividerBottom                              {border-bottom: 1px solid rgba(40,45,55,0.2);}

/* mbs */
#content div.comment               {font-size: 0.7em; padding: 8px 4px;}
#content table.mbs_config td       {vertical-align: top;}
#content .mbsConfigBox             {background-color: #D6DFF2; margin-bottom: 2px; padding-top: 8px; font-size: 0.7em; float: none;}
#content .mbsConfigBox div.caption {width: 160px; padding-left: 8px;}
#content .mbsConfigBox th          {width: 160px; padding-left: 8px; font-weight: bold;}
#content .mbsConfigBox table       {font-size: 1.0em;}
#content .mbsConfigBox label       {margin-right: 8px;}
#content table tr.trMarginTop td   {padding-top: 4px;}
#content .locationDiv              {width: 50px;}
#content .inputFieldLeft           {padding-left: 8px;}
#content .mbsErrorClass            {padding-left: 168px;}
#content .mapErrorClass            {padding-left: 3px;}

/* mbs gadgets */
.hafasTeaser .queryBox    {background: #f2f2f2; padding: 8px;}
.hafasTeaser .nopaddingtop  {padding-top: 0px !important;}
.hafasTeaser .nopaddingbottom  {padding-bottom: 0px !important;}
.hafasTeaser .marginbottom  {margin-bottom: 2px;}
.hafasTeaser table        {font-size: 1.0em; width: 100%;}
.hafasTeaser table th     {background-color:#e4e4e4; font-weight:bold; height: 23px; padding-left: 8px;}
.hafasTeaser table td     {height: 23px; padding-left: 8px;}
.hafasTeaser table tr:hover td {background-color: #d6dff2 !important;}
.hafasTeaser table tr:hover td.hUnderline {text-decoration: underline;}
.hafasTeaser table tr.dark td {background-color: #e4e4e4;}
.hafasMenuContainer                       {width: 200px; position: absolute; border: 1px solid #ccc; font-size:0.7em; z-index:101;}
.hafasMenuContainer.dep                   {background:#fcdab4;}
.hafasMenuContainer.arr                   {background:#d6dff2;}
.hafasMenuContainer.tq                    {background:#fff;}
.hafasMenuContainer div                   {padding:2px 8px;}
.hafasMenuContainer div.floatRight        {float: right;}
.hafasMenuContainer img                   {cursor: pointer;}

/* tp Bahncard */
body.bcPage #content                      {background-color: #F0F3F5;}
body.bcPage #content h1                   {padding: 40px 0 17px 20px; font-size: 18px; line-height:24px; color: #282d37;}
img.bahnCardHeader                        {position: relative; z-index: 0; margin: 0;}
div.bahnCardHeaderText                    {position: absolute; z-index: 1; padding: 20px 40px; width: 400px; font-family: DBSansBold; font-size: 1.8em; color: #fff;}
div.bahnCardRightColumn                   {width: 240px; position: absolute; right: 0px; z-index: 10;}
#BCRCon                                   {}
#BCRCon div.bcMainContainer               {display: flex; background: #fff; margin-right: 24px; margin-left: 24px; margin-bottom: 8px;position: relative;}
#BCRCon div.bcMainContainer div           {}
#BCRCon div.bcMainContainer.noBC          {background-color: #fff; height:72px; align-items:center;}
#BCRCon div.bcMainContainer.noBC div.bcradio {padding:0;}
#BCRCon div.bcInfo                        {width: 480px; padding: 0 0 22px 0; font-family: DBSansRegular; font-size: 14px; flex-grow: 2;}
#BCRCon div.bcInfo h2                     {font-family: DBSansBold; font-size: 18px; padding: 22px 0 0 0; margin: 0; color: #282d37;}
#BCRCon div.bcInfo a.arrowlink            {display: block; margin-bottom: 4px;}
#BCRCon div.bcInfo label                  {padding: 0 !important;}
#BCRCon div.bcInfoText                    {font-family: DBSansRegular,Arial,Helvetica,sans-serif;}
#BCRCon a.arrowlink > div.bcInfoItem        {margin-top: 2px;}
#BCRCon div.bcInfoItem                    {position: relative; line-height: 20px;}
#BCRCon div.bcInfoItemHeader              {font-family: DBSansBold,Arial,Helvetica,sans-serif; position: relative;}
#BCRCon div.bcInfoItemHeader span.icon-icon_check_small {left: 0;}
#BCRCon div.bcInfoItemText                {padding-left: 30px; font-family: DBSansRegular,Arial,Helvetica,sans-serif; }
#BCRCon div.bcPriceCon                    {display:flex; flex-direction:column; justify-content:space-between; padding: 24px 24px; text-align: right; color: #282d37; font-size: 18px;}
#BCRCon div.bcPrice                       {font-family: DBSansBold,Arial,Helvetica,sans-serif; color: #000;}
#BCRCon div.bcPriceCon p                  {font-size: 12px; margin:0;}
#BCRCon div.bcSavingCon                   {width:167px; background-color: #f0f3f5; color: #646973; padding: 14px 8px; font-size: 12px; font-family: DBSansRegular;}
#BCRCon div.bcSavingCon *                 {line-height:16px;}
#BCRCon div.bcSaving                      {font-size: 12px; font-family: DBSansBold;}
#BCRCon p.bcBreakEven                     {position: absolute; bottom: 26px; right: 30px;}
#BCRCon div.headline                      {font-size:0.7em; margin-bottom:5px; padding-top:10px; padding-bottom:10px; background-color:#8f949e; color:#fff; font-weight:bold;}
#BCRCon div.headline div                  { }
#BCRCon div.headline h2                   {font-size:1.4em; font-weight: bold; float:left; line-height: 1.0em;  margin-right:20px; margin-bottom:10px;}
#BCRCon div.headline a                    {font-weight: normal; color: #fff; padding-right: 8px !important;}
#BCRCon .buttons div label                {padding-left: 30px !important;}
#BCRCon div label                         {margin-right:0px; font-size:0.7em; line-height: 0.9em; text-align: left; /*padding-left: 48px !important;*/ margin-right: 0 !important;}
#BCRCon div label h2                      {white-space: normal; font-family: DBSansBold,Arial,Helvetica,sans-serif; padding: 15px 30px 15px 80px;}
#BCRCon div.bcradio label h2              {padding: 0px 5px 5px 5px !important;}
#BCRCon div.bcMainContainer.noBC div.bcradio label h2 {padding:0 !important;}
#BCRCon table.bahnCard                    {margin-bottom: 8px; border-collapse: separate}
#BCRCon table.bahnCard td                 {vertical-align: top; border-right: 5px solid #fff;}
#BCRCon ul                                {font-size: 1.0em; width:300px; padding: 4px 0;}
#BCRCon ul li                             {}
#BCRCon ul li span                        {float:right;}
#BCRCon td.breakEven                      {width:208px;padding-top:10px; padding-left:10px; font-weight:bold; background-color:#d6dff2; margin-right:5px;}
#BCRCon td.breakEven a                    {float:right; margin-right:10px; margin-top:10px;}
#BCRCon td.breakEven div                  {margin-right: 5px;}
#BCRCon table.bahnCard td.orderBC         {width:200px; padding-top:10px; text-align:center; font-weight:bold; background-color:#f2f2f2; border-right: 0;}
#BCRCon td.orderBC .querybutton           {font-size:1.0em; margin-top:20px;}
#BCRCon div.bcbox                         {/*background-color: #F5F5F5;*/ padding:0px 8px 15px; margin-left:44px; margin-top:4px; margin-bottom:16px; font-size:0.75em; background-position: right bottom; background-repeat: no-repeat;}
#BCRCon div.bcradio                       {margin-left: 24px; padding: 22px 24px 0 0;}
#BCRCon div.grey                          {background-color: #F2F2F2 !important;}
#BCRCon div.bcbox table.bcCalc            {font-size: 1.2em;}
#BCRCon div.bcbox table.bcCalc img        {margin: 0; padding: 0;}
#BCRCon div.bcbox table.bcCalc td         {line-height: 1.2em;}
#BCRCon div.bcbox td.bcCalc               {font-weight: bold; text-align: right; padding-right: 12px; width: 90px;}
#BCRCon .BCamortization                   {font-weight: bold;}
#BCRCon #moreBCCon                        {padding-left: 20px;}
#BCRCon div.bcbox .bcImgSmall             {vertical-align: middle; margin-right: 10px; margin-bottom: 0; margin-top: -16px; position: relative; bottom: -8px;}
#BCRCon button.submit-btn                 {margin-top: 0;}
#BCRCon #BCPriceTotal                     {display:flex; align-items:center; justify-content:flex-end; font-family: DBSansBold; font-size: 18px; padding-bottom: 24px;}
#BCRCon #BCPriceTotal a                   {display:inline-block; height:24px; margin-left:14px;}
#BCRCon #BCPriceTotalPrice                {margin-left: 48px; white-space: nowrap;}
#BCRCon .button-inside.overviewButtons    {padding: 24px;}
#BCRCon .overviewButtons .cookieCheckbox  {margin:10px 20px 20px 0;}
#BCRCon .overviewButtons .querybutton     {margin:0;}
#content div.journeyInfoBox               {width: 220px; background-color: #FFFFFF; margin:10px 10px 10px 0; font-size:1em; box-shadow:0 1px 8px 0 rgba(0, 0, 0, 0.4);}
#content div.journeyInfoBox h2            {font-size:1.333em; background-color: #878c96; color: #FFFFFF; padding: 10px !important; font-family: DBSansBold; width: 100%;}
#content div.journeyInfoBox h3            {font-size:1.333em; color: #878c96; background-color: #FFFFFF; padding: 15px 10px 10px 10px !important; font-family: DBSansRegular; font-weight: 400; width: 100%;}
#content div.journeyInfoBox a             {margin-top:10px;}
#content div.journeyInfoBox .content      {padding: 0px; font-size:0.75em;}
#content div.journeyInfoBox .greyBox      {padding: 17px 10px 25px; line-height: 1.4em; background-color:#FFFFFF; }
#content div.journeyInfoBox .iconOut      {background-position: -12px -302px; padding-left: 24px !important;}
#content div.journeyInfoBox .iconRet      {background-position: -12px -842px; padding-left: 24px !important; padding-top: 8px;}
#content div.journeyInfoBox div.infoBoxHeadline {font-family: DBSansBold;}
#content div.journeyInfoBox div.infoBoxHeadline.ticketHeadline {padding-left: 30px; position: relative;}
#content div.journeyInfoBox table td      {font-size: 1.5em; font-family: DBSansRegular; line-height: 16px; padding: 5px 0 0;}
#content div.journeyInfoBox table td.time   {font-size: 1.608em; font-family: DBSansBold; width: 50px;}
#content div.journeyInfoBox div.kaminContent {padding-left: 30px; padding-top: 5px; font-family: DBsansRegular; line-height: 20px;}
#content div.journeyInfoBox #BCNameDiv    {display: block; width: 125px;}
.icon-icon_tickets_small                  { position: absolute; width: 24px; height: 24px; top: -5px; left: 0px;}
.icon-icon_bc_small                       { position: absolute; width: 24px; height: 24px; top: -5px; left: 0px;}
.icon-icon_check_small                    {position: absolute; width: 24px; height: 24px; left: 100%; top: -3px; display: inline-block;}
.icon-icon_info_small                     { position: absolute; width: 24px; height: 24px;}
.icon-icon_info_weiss_small               { position: absolute; width: 24px; height: 24px; top: 30px; right: 30px;}

#verbundInfoContainer                                   {box-shadow:0 1px 8px 0 rgba(0, 0, 0, 0.4); background-color:#FFFFFF; padding: 0; margin-top:27px; margin-bottom: 38px;position: relative;}
#verbundInfoContainer img                               {margin:0; padding:0; width:48px; height:48px; position:absolute; left:24px; top:22px;}
#verbundInfoContainer .verbundInfoText                  {margin:0 92px; padding: 21px 16px 0 0;}
#verbundInfoContainer .verbundInfoText.useWideMargin    {margin-right:223px;}
#verbundInfoContainer .verbundInfoText.useHighPadBot    {padding-bottom:48px;}
#verbundInfoContainer .verbundInfoText p                {font-size:0.875em; margin-bottom:6px;}
#verbundInfoContainer .verbundInfoText p:last-child     {font-size:0.875em; margin-bottom:0;}
#verbundInfoContainer .verbundInfoText p.red            {color:#F01414; margin-bottom:17px;}
#verbundInfoContainer .verbundInfoText p.first          {font-size:1em; margin-bottom:3px;}
#verbundInfoContainer .verbundInfoButton                {height:30px; text-align:center; float:right; display: inline-block; padding:0; margin: 24px 20px 26px;}
#verbundInfoContainer .verbundInfoButton p              {display:inline-block; margin:0; padding:0;}
#verbundInfoContainer .verbundInfoButton p span a       {font-size:1.075em;}


.HafasInfoLayer                             {width: 752px; background-color: #fff; z-index: 10001; position: absolute; top: 250px; left: 50% !important; transform:translateX(-50%) !important; padding: 24px; border-radius: 4px;}
#trainCompositionLayer                      {padding: 0;}
#trainCompositionLayer > *                  {padding:0 24px;}
#trainCompositionLayer > #trainCompositionContent {padding:0;}
table.sotPosition,
.sotPosition table.result,
.HafasInfoLayer table.result                {width: 100%; font-size:0.75em; margin-bottom:10px;}
#content table.sotPosition                  {font-size:0.875em !important; margin-bottom:10px !important; margin-left:10px !important;}
.sotPosition table.result td,
#content table.result.sotPosition td,
.HafasInfoLayer table.result td             {padding: 4px 8px;}
#content table.result.sotPosition td,
.sotPosition table.result td                {padding:10px 8px;}
#content table.result.sotPosition td        { font-family:Arial, sans-serif; font-size:0.875em !important;}
#content table.result.sotPosition tr:hover td,
.sotPosition table.result tr:hover td       {background-color:#e7e7e7 !important; cursor:pointer;}
.HafasInfoLayer table.result th             {display: none;}
.HafasInfoLayer table.result td.boldText    {font-size: 16px; font-family: DBSansBold;}
.HafasInfoLayer table.result td.time        {font-size: 16px;}
.HafasInfoLayer table.result td.time.dateChange {color:#878c96;}
#content table.result.sotPosition th,
.sotPosition table.result th,
.HafasInfoLayer table.result th             {background-color: #e7e7e7 !important; padding: 4px 8px !important; border-left:1px solid #FFFFFF !important;}
#content table.result.sotPosition th,
.sotPosition table.result th                {font-weight:normal; height:auto !important;}
#content table.result.sotPosition th:first-child,
.sotPosition table.result th:first-child,
.HafasInfoLayer table.result th:first-child {border-left:none !important;}
#content table.result.sotPosition tr.firstrow td,
.sotPosition table.result tr.firstrow td    {border-top:10px solid #FFFFFF;}
.HafasInfoLayer table.result td.station.boldText    {font-size: 16px; color: #282d37;}
.HafasInfoLayer table.result td.time.boldText    {font-size: 16px; color: #282d37;}
.HafasInfoLayer table.result tr.first.sec_0 td.station {background-image:  url(../img_responsive/20dp_icon_itinerary_elements_journey_start_grey300.svg); background-position-y: 4px;}
.HafasInfoLayer table.result tr.first td.station {height: 60px; background-image: url(../img_responsive/20dp_icon_itinerary_elements_journey_inter-stop-1_db300.svg);  background-position-y: 4px;}
.HafasInfoLayer table.result tr.last td.station {background-image:  url(../img_responsive/20dp_icon_itinerary_elements_journey_inter-stop-1_grey300.svg);  background-position-y: 4px;}
.HafasInfoLayer table.result tr.last:last-child td.station {background-image:  url(../img_responsive/20dp_icon_itinerary_elements_journey_destination_grey300.svg); background-position-y: 4px;}
.HafasInfoLayer table.result tr.first td.station::before {content: ""; position: absolute; width: 1px; height: 70%; bottom: -5px; left: 9px; border-left: 3px solid #bbb;}
.HafasInfoLayer table.result tr.last td.station::before {content: ""; position: absolute; width: 1px; height: 50%; bottom: -5px; left: 9px; border-left: 3px dotted #bbb;}
.HafasInfoLayer table.result tr.last:last-child td.station::before {content: none;}
.HafasInfoLayer table.result tr.dateDivider td.dateChange {position: relative; padding-left: 28px; text-align: left;}
.HafasInfoLayer table.result tr.dateDivider td.dateChange::before {content: ""; position: absolute; width: 1px; height: 100%; left: 9px; border-left: 3px solid #bbb;}
.HafasInfoLayer table.result div.detailSectionContent   {display: flex;}
.HafasInfoLayer table.result div.detailSectionContent div a,
.HafasInfoLayer table.result div.detailSectionContent div {color: #646973; font-size: 12px; font-family: DBSansRegular;}
.HafasInfoLayer table.result div.detailSectionContent div.station.boldText {font-size: 16px; color: #282d37;}
.HafasInfoLayer table.result div.detailSectionContent div.station {font-size: 14px; flex: 200px 1 0;}
.HafasInfoLayer table.result div.detailSectionContent div.products {flex: 10% 1 0;}
.HafasInfoLayer table.result div.detailSectionContent div.capacity {flex: 10% 1 0;}
.HafasInfoLayer h2                          {padding: 0px; font-family:DBHeadRegular; font-size: 20px; margin:20px 0 24px;}
.HafasInfoLayer div.headline                {padding: 0px; margin-bottom:16px; font-size: 16px; font-family: DBSansBold;}
.HafasInfoLayer div.headline img            {vertical-align: middle; padding-right: 4px;}
/*.HafasInfoLayer div.greyBox                 {margin: 5px; padding: 4px 8px;}*/
.HafasInfoLayer div.whitebox                {margin: 5px; padding: 4px 8px; font-size:0.875em;}
.HafasInfoLayer div.whitebox span           {font-size:0.875em;}

.HafasInfoLayer div.infoLayerCon            {display:flex; align-items:flex-start; font-size: 14px; line-height: 20px; margin-top: 20px; font-family: DBSansRegular; padding:24px 24px 24px 0;}
.HafasInfoLayer div.infoLayerCon > div      {flex:1;}
.HafasInfoLayer div.infoLayerCon > div.icon-ticket-multiple {flex:none; margin-top:-5px; margin-right:24px; order:1;}
.HafasInfoLayer div.infoLayerName           {font-family: DBSansBold; order:2;}
.HafasInfoLayer div.infoLayerPriceSmall     {font-family: DBSansBold; text-align:right; order:4;}
.HafasInfoLayer div.infoLayerValue          {font-family: DBSansRegular; flex-grow:2; order:3;}

.HafasInfoLayer div.bottomSummary           {font-family: DBSansBold; font-size:14px; line-height:20px; text-align:right; padding:24px 24px 0; border-top: 1px solid #E8E8E8;}

.HafasInfoLayer div.direction               {font-weight: bold; float: left; width: 100px;}
.HafasInfoLayer div.infoLayerReservationText {margin-left: 100px;}
#infoLayerReservation div.greyBox           {background-color:#FFFFFF; padding:0; font-size:0.75em;}
#infoLayerReservation_outward div,
.HafasInfoLayer div.infoLayerReservationText div {margin-bottom: 6px;}
.HafasInfoLayer ul.list li                  {list-style: disc inside; font-size: 1.4em;}
#availabilityConditionLayer                    {padding-bottom: 32px;}
#infoLayerSelectedTicket .conditionLayer,
#availabilityConditionLayer .conditionLayer    {color:#282D37;}
#infoLayerSelectedTicket .conditionLayer h2,
#availabilityConditionLayer .conditionLayer h2 {color:#282D37; margin-bottom: 4px;}
#infoLayerSelectedTicket .conditionLayer h3,
#availabilityConditionLayer .conditionLayer h3 {margin-top:20px;}
#infoLayerSelectedTicket .conditionLayer h3,
#availabilityConditionLayer .conditionLayer h3,
#infoLayerSelectedTicket .conditionLayer li,
#availabilityConditionLayer .conditionLayer li {font-size:16px; line-height:24px; margin-bottom:4px;}
#infoLayerSelectedTicket .conditionLayer li,
#availabilityConditionLayer .conditionLayer li {list-style-type:disc;}
#infoLayerSelectedTicket .conditionLayer ul,
#availabilityConditionLayer .conditionLayer ul {padding-left:16px;}

#availabilityConditionLayer .conditionLayer th {font-weight: bold; padding: 2px 4px; vertical-align: top;}
#availabilityConditionLayer .conditionLayer td {padding: 2px 4px; font-size: 0.9em; vertical-align: top;}
#availabilityConditionLayer .conditionLayer tr.contentRow td ,
#availabilityConditionLayer .conditionLayer tr.contentRow th   {padding-top: 12px;}
#availabilityConditionLayer .conditionLayer .subline {font-weight: normal; font-size: 0.9em;}
#content div.resultContainer                {padding: 0 20px;}

.HafasInfoLayer ul.conSaved                 {font-size:16px; line-height:24px; padding-left:16px;}
.HafasInfoLayer ul.conSaved li              {margin-bottom:8px; list-style-type:disc;}

/* sq_query / tb_query */
#content #tbQuery,
#content #tbConfirm,
#content #tbDownload               {background-color:#f2f2f2; padding:15px 8px 10px 8px; border-top:2px solid #fff;}
#content #sqQuery                  {background-color:#f2f2f2; padding:15px 8px 5px 8px;}
#content .sq_query                 {padding-bottom:5px;}
#content .sq_query .clearfix       {padding-bottom:0px;}
#content .sq_query .button-inside  {padding-bottom:0px;}
#content #sqQuery div.leftBlock,
#content #sqQuery div.rightBlock   {width:50%; float:left;}
#content #tbQuery fieldset,
#content #sqQuery div fieldset     {font-size:0.7em; line-height:2.0em;}
#content #tbQuery fieldset table,
#content #sqQuery div fieldset table {font-size:1.0em;}
#content #tbQuery fieldset label,
#content #sqQuery fieldset label        {font-weight:bold;}
#content #sqQuery fieldset label.front  {float:left; display:block; width:120px; white-space:nowrap;margin-right:10px;}
#content #tbQuery fieldset label.front  {float:left; display:block; width:150px; white-space:nowrap;}
#content #tbQuery fieldset label.large  {width:140px;}
#content #tbQuery fieldset .leftMargin  {margin-left:170px;}
#content #sqQuery fieldset .leftMargin  {margin-left:130px;}
#content #sqQuery div.rightBlock label.front  {width:auto;}
#content #sqQuery div.rightBlock .leftMargin  {margin-left:110px;}
#content #tbQuery fieldset p    {font-size:1.0em; line-height:1.5em; padding-top:0.53em; padding-bottom:0.47em}
#content #tbQuery fieldset p br {clear:none;}
#content #tbQuery fieldset br,
#content #sqQuery fieldset br   {clear:left;}
#content #tbQuery div.errormsg,
#content #sqQuery div.errormsg  {line-height:1.4em; margin-right:10px;}
#content #sqResult p.errormsg   {line-height:1.4em; margin-right:10px; margin-bottom:0px; padding-bottom:10px; padding-top:10px;}
#content #tbQuery table.products tr td {width:3.0em; padding-top:5px;}
#content #zplusPane_stBoard table.products tr td,
#content #sqQuery table.products tr td {width:3.0em;}
#content #tbQuery table.products tr.cb td,
#content #sqQuery table.products tr.cb td {line-height:2.5em;}
#content #sqQuery table.products tr.cb td input.checkbox,
#content #zplusPane_stBoard table.products tr.cb td input.checkbox {margin-left: 6px;}
#content #tbQuery table.weekdays tr td {padding-right:5px;}
#content #sqQuery .calLater          {margin:0px; position:absolute; top:0px; left:-9px;}
#content #sqQuery .calSooner         {margin:0px; position:absolute; top:8px; left:-9px;}
#content #sqQuery #calendarlinkicon0 {vertical-align:middle; margin-bottom:0px;}
#content #sqQuery .calendar          {padding-right:9px; margin-left: 12px;}
#content #tbQuery div.noInput        {padding-top: 4px;}

/* sq_result */
#content table.stboard td       {padding:8px; border-top:2px solid #fff; vertical-align:top;}
#content table.stboard tr th.time  {}
#content table.stboard th.time  {width:50px;}
#content table.stboard th.train {width:50px; font-weight:bold;}
#content table.stboard td.train {font-weight:bold;}
#content table.stboard th.platform {width:40px; }
#content table.stboard th.station {width:100px; }

#content table.stboard.dep td       {background-color:#ffc;}
#content table.stboard.dep tr.servant td {background-color:#FFFFE0 !important;}
#content table.stboard.dep tr.servant td.time,
#content table.stboard.dep tr.servant td.platform {background-color:#F1F1E3 !important;}
#content table.stboard.dep tr.servant td.time {text-align: right; background: url(../img/stb_servant_time_bg.gif);}
#content table.stboard.dep tr td.time  {background-color:#f1f1d9; font-weight:bold;}
#content table.stboard.dep tr td.platform,
#content table.stboard.dep tr td.station {background-color:#f1f1d9; text-align:center;}

#content table.stboard.arr td       {background-color:#f2f2f2;}
#content table.stboard.arr tr td.time  {background-color:#d5d5d5; font-weight:bold;}
#content table.stboard.arr tr td.platform,
#content table.stboard.arr tr td.station {background-color:#d5d5d5; text-align:center;}

#content table.stboard tr.browse td.time,
#content table.stboard tr.browse td.platform,
#content table.stboard tr.browse td.station {background-color:#d5d5d5;}
#content table.stboard tr.browse td         {padding:4px; background-color:#fff;}
#content table.stboard tr td a   {text-decoration: underline;}

#content table.stboard tr.current td {padding:4px 8px; background-color:#fff; color:#f00;}
#content table.stboard tr.current td.time {background-color:#f00; color:#fff;}

#content table.stboard.train             {width: 100%; max-width: none;}
#content table.stboard.train td          {padding: 6px 10px; font-family: DBSansRegular;}
#content table.stboard.train th          {padding: 6px 10px; font-family: DBSansBold;}
#content table.stboard.train th.station  {text-align: left; padding-left: 18px;}
#content table.stboard.train td.station  {width: 300px; font-family: DBSansBold;}
#content table.stboard.train td.stationSmall  {width: 280px; font-family: DBSansBold;}
#content table.stboard.train tr.current td {padding-left: 18px; font-family: DBSansBold;}
#content table.stboard.train td.capacity  {white-space: nowrap; font-family: DBSansRegular; padding: 4px 10px;}
#content table.stboard.train td.capacity img {margin: 0;}
#content table.stboard.train th.platform,
#content table.stboard.train td.platform {width:100px;}
#content table.stboard.train th.arrival,
#content table.stboard.train td.arrival,
#content table.stboard.train th.departure,
#content table.stboard.train td.departure {}
#content table.stboard.train td.arrival .delay,
#content table.stboard.train td.arrival .delayOnTime,
#content table.stboard.train td.departure .delay,
#content table.stboard.train td.departure .delayOnTime {}
#content table.stboard.train tr.trainrow_1 td {background-color: #f5f5f5;}
#content table.stboard.train tr.trainrow_2 td {}
#content .lastParagraph                  {margin-bottom: 0 !important;}

/* Zuglauf */
#content .queryWrapper.tqResults            {color:#282D37; margin-bottom:32px;}
#content h3.trainroute                      {font-size:14px; line-height:20px; margin:0 0 16px; font-family: DBSansRegular; font-weight:normal; color:#282D37; display:flex; flex-direction:row; justify-content:space-between; align-items:center;}
#content h3.trainroute.red                  {color:#DB0014; display:block;}
#content div.tqHIMMsg                       {position:relative; margin: 16px 0; padding-left:24px; font-size:14px; line-height:20px; font-family:DBSansRegular;}
#content div.tqHIMMsg img                   {position:absolute; top:0; left:0; margin:0; padding:0;}
#content div#trainroute                     {display:flex; flex-direction:column; background-color: #FFFFFF; font-size:14px; line-height:20px; font-family:DBsansRegular; color:#282D37;}
#content div#trainroute .tqRow              {display:flex; flex-direction:row; min-height:52px; align-items:center; border-bottom:1px solid #D7DCE1;}
#content div#trainroute .tqRow:last-child   {border-bottom:none;}
#content div#trainroute .tqRow.tqHeadline   {font-family:DBsansBold;}
#content div#trainroute .tqRow.current,
#content div#trainroute .tqRow div          {flex:1; padding:16px;}
#content div#trainroute .tqRow.current      {color:#DB0014;}
#content div#trainroute .tqRow .stationSmall,
#content div#trainroute .tqRow .station     {flex:2; max-width:290px; min-width:150px;}
#content div#trainroute .tqRow .departure,
#content div#trainroute .tqRow .arrival     {display:flex; align-items:flex-end;}
#content div#trainroute .tqRow .departure span,
#content div#trainroute .tqRow .arrival span                {padding-left:16px;}
#content div#trainroute .tqRow .departure span .rtPrefix,
#content div#trainroute .tqRow .arrival span .rtPrefix      {display:none;}
#content div#trainroute .tqRow .combinedPlatformRis         {display:flex; justify-content:space-between; flex-direction:row; align-items:center; flex:3;}
#content div#trainroute .tqRow .combinedPlatformRis div     {padding:0;}
#content div#trainroute .tqRow .combinedPlatformRis .ris .risHL {display:none;}
#content div#trainroute .tqRow .ris                {flex:2;}
#content div#trainroute .tqRow .tqContentHL        {display:none;}
#content div.tqRemarks                             {padding:8px 0 16px; font-size:14px; line-height:20px; font-family: DBSansRegular; color:#646973;}
#content div.tqRemarks > div                       {padding-top:16px;}
#content div.tqRemarks .bold,
#content div.tqRemarks div.tqRemarkHIM .tqHintHIM  {font-weight:normal; font-family:DBSansBold;}

#content table.remarks                   {font-size:14px; line-height:20px; color:#646973; width: 100%; margin: 24px 0;}
#content table.remarks th                {width:120px; font-weight:bold;}

/* filialfinder */
#content .map_results .queryBox          {padding-bottom: 8px; padding-left:10px;}
#content .map_results p                  {margin-bottom:0px; padding-bottom:10px; padding-left:10px;}
#content .map_results .queryBox p        {font-size:1.0em; margin-bottom:10px; padding-left:0px;}
#content .map_results .noIcon            {padding-left: 0px;}
#content table.agency tr                 {border-bottom:2px solid #fff;}
#content table.agency tr tr              {border-bottom:0px;}
#content table.agency td                 {vertical-align:top;}
#content table.agency td td              {padding:0px;;}
#content table.agency td.button-inside .button-border {margin-top: 4px;}
#content table.agency th.number          {width:15px;}
#content table.agency th.type            {width:70px;}
#content table.agency th.type a img      {vertical-align:bottom; margin:0px;}
#content table.agency th.contact         {width:120px;}
#content table.agency th.hours           {width:120px;}
#content table.agency th.distance        {width:65px;}
#content table.agency th.route           {width:150px;}
#content table.agencyMap                 {width: 100%; border: 20px solid #f5f5f5; margin-top: 20px;}
#content table.agencyMap td              {padding: 20px 0px 20px 20px;}
#content table.agencyMap td td           {padding: 0px;}
#content table.agencyMap td.navigation   {vertical-align:top; padding-right: 15px; padding-left: 0;}
#content table.agencyMap div.ajaxmapdiv  {position: relative;}

/* footer */
#footerremarks                           {margin-bottom:0px; padding-bottom:0.3em;}
#footer                                  {background-color: #D7DCE1; padding: 0 16px;}
#footer #footer-nav                      {border-top: 1px solid #AFB4BB;}
#content .errorMessageContainer ~ #footer #footer-nav {border-top:none;}
#footer #footer-nav li span,
#footer #footer-nav li,
#footer #footer-nav li a                 {font-family: DBSansRegular; font-size: 14px; color: #282D37;}
#footer #footer-nav ul                   {text-align:center; padding: 24px 0;}
#footer #footer-nav ul li                {display:inline-block; margin:0 8px 8px; white-space: nowrap;}
#doc #footer li span, #footer li a       {border: none !important; float: none !important;}

/* popup */
.hafasPopup                     {width: auto !important; background-position: -10px top !important; padding: 0 !important; height: 100%;}
.hafasPopup #content     {width: auto !important;}

#content .button-nofloat,
#content .button-nofloat span.button-border,
#content .button-nofloat span.button-border a {float:none; display:inline !important;}
#content .button-nofloat                      {margin-left:20px;}
#content .button-nofloat span.button-border   {padding-bottom:4px; padding-top:3px;}
#content .button-nofloat span.button-border a {padding:3px 5px;}

#content div.buttons                               {margin-top:10px;}
#content div.buttons p.querybutton                 {margin:0px;}
#BCRCon div.buttons                                {margin:20px 0px 23px 20px;}
#BCRCon div.buttons .button-inside span.button-border button,
#BCRCon div.buttons .button-inside span.button-border input.button,
#BCRCon div.buttons .button-inside span.button-border a {font-size:1em;}



.hafasPopup .hafasPopupContent h2       {font-size:1.25em !important; font-family:DBSansRegular; padding-left:0 !important;}
.hafasPopup .hafasPopupContent h3       {font-size:1em; font-weight: normal; font-family:DBSansRegular; margin: 0px 0px 8px 0px;}
.hafasPopup .hafasPopupContent p        {font-size:1em !important;}
.hafasPopup .hafasPopupContent table.printConfig {font-size:0.85em;}
.hafasPopup .hafasPopupSystembar a.closeIcon {position:relative !important;}
.hafasPopup .hafasPopupSystembar span.ico {position:relative; display:inline-block; margin:0 10px;}
.hafasPopup .hafasPopupContent input[type="text"],
.hafasPopup .hafasPopupContent input.text,
.hafasPopup table.moreDetail td         {background-color: #fff; vertical-align: top;}
.hafasPopup .hafasPopupContent input[type="text"],
.hafasPopup .hafasPopupContent input.text {padding: 0 5px !important;}
.hafasPopup .hafasPopupContent div.verbundLogo      {float:right;}
.hafasPopup .hafasPopupContent div.verbundLogo span {font-size:0.7em; padding-top:5px; display:block; float:left; text-align:center; width:75px; line-height:1.5em;}
.hafasPopup .hafasPopupContent div.travellerHint    {font-size:0.875em; padding:10px 0;}
.hafasPopup .hafasPopupContent .popupQueryBox p,
.hafasPopup .hafasPopupContent p.calendarHint {font-size:0.875em !important;}
.hafasPopup .hafasPopupContent .popupQueryBox p.downloadButton {font-size:0.75em !important;}

.hafasPopup #header             {height: 40px; max-width: 980px;}
.hafasPopup.fares #header       {height: 72px;}
.hafasPopup.fares table.faressummary td {vertical-align: top;}
.hafasPopup.fares table.result td.fare {max-width: 55px !important; text-align: right; padding-right: 25px !important;}
.hafasPopup.fares table.resultMVV td.fare   {width:95px !important; max-width:none !important; padding-right: 10px !important; vertical-align:top;}
.hafasPopup #main-nav           {height: 24px; max-width: 980px;}
.hafasPopup .footerRedBar       {height: 16px; background-color: #f00; color: #fff; font-size: 0.7em; text-align: right; padding-right: 50px;}
.hafasPopup .redBar             {height: 8px; font-size: 1px; width: 200px; background-color: #f00;}
.hafasPopup .redBarSpace        {height: 8px; font-size: 1px;}
.hafasPopup .hafasPopupContainer {margin: 8px 24px; padding: 16px 0; background-color: #fff; max-width: 900px;}
.hafasPopup .hafasPopupContainer.fares {padding-bottom:0px;}
.hafasPopup .hafasPopupSystembar {border-top:1px solid #f5f5f5;margin: 8px 24px; padding: 4px 15px 3px; background-color: #fff; max-width: 900px; }
.hafasPopup .hafasPopupSystembar li {float: left;}
.hafasPopup .popupFooter        {margin-top: 40px; bottom: 0px; width: 100%; max-width: 980px;}
.hafasPopup .popupFooter.fares  {margin-top: 13px;}

/* mietwagenagent */
#content div.mwHint      {font-size: 0.7em; padding-left: 0.45em;}
#content div.mwHint a    {text-decoration: underline;}
#content div.mwHintMargin {height: 150px;}
#content table.mwQuery th {width: 200px;}
#content table.mwResult  {width: 100%;}
#content table.mwResult th {font-weight: bold; padding-left: 8px; padding-right: 8px; background-color: #E4E4E4; height: 24px;}
#content table.mwResult th.dark {background-color: #D5D5D5;}
#content table.mwResult td {padding: 2px 8px; background-color: #E4E4E4; border-top: 2px solid #fff;}
#content table.mwResult td.dark {background-color: #D5D5D5;}
#content table.mwResult td.center {text-align: center;}
#content div.rcLogos     {padding: 8px 0;}
#content div.rcLogos img {vertical-align: middle; margin: 0;}

/* zug oder flug */
#content table.zofCompare td img {margin: 0 4px 4px; vertical-align: middle;}
#content table.zofCompare td.grey,
#content table.zofCompare td.grey a {color: #8F949E;}
#content table.zofCompare a,
#content table.zofResult a      {text-decoration: underline;}
#content table.zofResult span.button-border a      {text-decoration: none;}
#content table.zofResult img,
#content table.zofDetail th img {vertical-align: middle;}
#content table.zofResult tr.dark td {background-color: #e4e4e4;}
#content table.zofResult th,
#content table.zofResult td,
#content div.zof                 {padding: 4px;}
#content .hafasContent div.zofButton span.button-border {float: right;}
/*.hafasPopupContainer table.popupContent {width: 100%;}*/
.hafasPopupContainer table.popupContent {width: auto; font-size:0.75em;}
.hafasPopupContainer tr.sum td          {background-color: #D6DFF2;}

/* vs_mobilcheck */
#hafasMC                        {background: #fff;}
#hafasMC #content        {background: none; position: static; padding: 0; margin: 0;}
#content .mcHint         {font-size: 0.7em;}

/* Bahnhofstafel */
.result td span.jsLink:hover {text-decoration: underline; cursor: pointer; color: #f00;}

/* Images */
/*
a.arrowlink,
a.arrowlink:link,
a.arrowlink:visited,
button.arrowlink                {background: url("../img/arrow_red_right.gif") left center no-repeat;}
*/

/*#content a.open,*/
#content div.flaparrowlink,
#content a.flaparrowlink,
#content a.flaparrowlinknohover {background: transparent url(../img/klapppfeil_rechts_17x19_schatten.jpg) 0px center no-repeat;}
/*#content a.open:active,
#content a.open:hover,*/
#content a.flaparrowlink:active,
#content a.flaparrowlink:hover  {background: transparent url(../img/klapppfeil_unten_grau_16x16.gif) 0px center no-repeat;}
#content div.flaparrowlinkclose,
#content a.flaparrowlinkclose,
#content a.flaparrowlinkclosenohover {background: transparent url(../img/klapppfeil_down_17x19_schatten.jpg) 0px center no-repeat;}
#content a.flaparrowlinkclose:active,
#content a.flaparrowlinkclose:hover  {background: transparent url(../img/klapppfeil_rechts_grau_16x16.gif) 0px center no-repeat;}

#content .flaparrowContainer a.open span,
#content table.result td a.open span        {width:24px; height:24px; background-color:#878c96; display:inline-block; position:relative; box-shadow: 1px 2px 2px rgba(0, 0, 0, 0.5); margin-right: 9px; padding: 9px 7px;}
#content .flaparrowContainer a.open:active span,
#content table.result td a.open:active span,
#content table.result td a.open:hover span  {background-color:#646973;}
#content .flaparrowContainer a.open span span,
#content table.result td a.open span span   {background-position: -22px -15px;}

#content .flaparrowContainer a.close span,
#content table.result td a.close span,
#content table.result td a.moreClose span   {width:24px; height:24px; background-color:#878c96; display:inline-block; position:relative; box-shadow: 0 1px 7px 0 rgba(0, 0, 0, 0.5) inset; margin-right: 9px; padding: 9px 7px;}
#content .flaparrowContainer a.close:active span,
#content .flaparrowContainer a.close:hover span,
#content table.result td a.close:active span,
#content table.result td a.close:hover span,
#content table.result td:hover a.close span,
#content table.result td a.moreClose:active span,
#content table.result td a.moreClose:hover span,
#content table.result td:hover a.moreClose span {background-color:#646973;}
#content .flaparrowContainer a.close span span,
#content table.result td a.close span span,
#content table.result td a.moreClose span span  {background-position: 0px -31px;}

#content .flaparrowContainer a.open span span,
#content .flaparrowContainer a.close span span,
#content table.result td a.open span span,
#content table.result td a.close span span,
#content table.result td a.moreClose span span {box-shadow:none; background-color:transparent; background-repeat: no-repeat; height:7px; width:11px; display:block; position:absolute; padding:0; margin:0;}
#content .flaparrowContainer a.open,
#content .flaparrowContainer a.close,
#content table.result td a.open,
#content table.result td a.close,
#content table.result td a.moreClose       {font-size: 1.125em; font-family: DBSansRegular; line-height: 24px; margin-bottom:10px; white-space:nowrap;}
#content table.result tr.buttonLine a.open,
#content table.result tr.buttonLine a.close,
#content table.result tr.buttonLine a.moreClose,
#content table.result td a.open:hover,
#content table.result td a.close:hover,
#content table.result td a.moreClose:hover {color:#FF0000;}

#content table.result td a.returnJourney,
#content table.result td a.retJourney      {font-size: 1.125em; font-family:DBSansRegular;}

#hafasMaps a.printview,
#content a.printview span {background: transparent url(../img_responsive/icon_action_db_ic_print_20.svg) no-repeat; display: inline-block; width: 20px; height: 20px; vertical-align: bottom; margin-right: 8px;}
#content .iconProfile {background: transparent url(../img/icons_auskunft.gif) -5px -698px no-repeat; padding-left: 32px !important; padding-bottom: 3px; width: 148px !important;}
#content .iconOut    {background: transparent url(../img/icons_auskunft.gif) -5px -294px no-repeat; padding-left: 32px !important;}
#returnJourneyLayer .iconRet,
#content .iconRet    {background: transparent url(../img/icons_auskunft.gif) -5px -850px no-repeat; padding-left: 32px !important;}
#returnJourneyLayer .iconRet {background-position: -5px -838px;}
#content .summary th.iconRet {background-position: -5px -842px;}
#content .nopaddingtop {background-position: -5px -850px !important;}
#returnJourneyLayer .transferIcon {background: transparent url(../img/icons_auskunft.gif) -5px -1000px no-repeat; padding-left: 32px !important; padding-bottom: 3px; width: 148px !important;}
#content a.iconWalk,
#content span.iconWalk  {background-image: url(../img_responsive/20dp_icon_transportation_walking_grey400.svg); background-size: 20px 20px; background-repeat:no-repeat; background-position: center center;}
#content a.iconBike,
#content span.iconBike  {background: transparent url(../img/DB_16x16_Fahrrad.png) no-repeat;}
#content a.iconCar,
#content span.iconCar   {background: transparent url(../img/DB_16x16_PKW.png) no-repeat;}
#content a.iconTaxi,
#content span.iconTaxi  {background: transparent url(../img/taxi_grau_16x16.gif) no-repeat;}
#content a.iconWalk,
#content span.iconWalk,
#content a.iconBike,
#content span.iconBike,
#content a.iconCar,
#content span.iconCar,
#content a.iconTaxi,
#content span.iconTaxi  {display: inline-block; height: 20px; width:20px;}
#content .detailsintermediate span.iconWalk,
#content .detailsintermediate span.iconBike,
#content .detailsintermediate span.iconCar,
#content .detailsintermediate span.iconTaxi {margin-right:5px;}

#content .railNavLink               {background: transparent url(../img/railnavi_blau_24x24.gif) 8px center no-repeat !important;}
#content .tbLink                    {background: transparent url(../img/persoen_fahrplan_blau_24x24.gif) 8px center no-repeat !important;}
#content .appSliderClose,
#globalApplicationClose                   {background: transparent url(../img/schliessen_outline_16x16.gif) 8px center no-repeat !important;}
#content .singleApplicationSlider  {background: #fff url(../img/verlauf_feedback.gif) 0px center repeat-x;}

#content .tooltipCont                  {position:relative; z-index: 2;}
#content .tooltipCont .tariffTooltip   {font-weight: normal; bottom: auto; left: auto;}

.hafasPopup #link-close         {background: transparent url(../img/schliessen_outline_10x10.gif) 0 center no-repeat; padding-left: 16px;}
.hafasPopup #link-print         {background: transparent url(../img/seite_drucken_16x16.gif) 0 center no-repeat; padding-left: 24px;}

.arrowlinktop,
a.arrowlinktop,
a.arrowlinktop:link,
a.arrowlinktop:visited          {background: url("../img/icons_auskunft.gif") -14px -78px no-repeat !important; padding-left: 15px;}
.arrowlinkbottom,
a.arrowlinkbottom,
a.arrowlinkbottom:link,
a.arrowlinkbottom:visited       {background: url("../img/icons_auskunft.gif") -14px -7px no-repeat !important; padding-left: 15px;}
div.arrowlinktopInactive,
div.arrowlinkbottomInactive     {}

#content .ARSLink        {background: transparent url(../img/icon_abfahrt_neu_24x24.gif) 8px center no-repeat !important;}
#content .feedback       {background: transparent url(../img/feedback_24x24.gif) 8px center no-repeat !important; padding-bottom: 7px !important;}
#content .stBoardLink    {background: transparent url(../img/anschluesse_24x24.gif) 8px center no-repeat !important;}
#content .stRouteLink    {background: transparent url(../img/bhf_24x24.gif) 8px center no-repeat !important;}
#mcLink                   {background: transparent url(../img/icons_auskunft.gif) -1px -606px no-repeat !important;}
#umcLink                  {font-family: DBSansRegular; margin-left: 20px; padding-left: 24px;}
#zofLink                  {background: transparent url(../img/flug_zug_blau_24x24.gif) 8px center no-repeat !important;}
#content .bikeLabel {background: url("../img/icons_auskunft.gif") right -150px no-repeat; padding: 1px 50px 1px 0;}
#content div.iconBike {background: url("../img/icons_auskunft.gif") -5px -150px no-repeat; padding-left: 32px !important; padding-bottom: 3px; width: 156px !important;}
#content .iconTraveller,
#content .iconTravellerS {background: url("../img/icons_auskunft.gif") -5px -774px no-repeat; height: 18px;}
#content .traveldata .traveller {background: url("../img/icons_auskunft.gif") -6px -768px no-repeat; padding-left: 32px;}
#content .traveldata div.traveller {background-position: -16px -774px;}
.hafasPopupContainer div.iconCheck,
#content div.iconCheck,
#returnJourneyLayer div.iconCheck {background: url("../cms/img/icons.gif") 0 -4380px no-repeat;}

#content .himMessagesAfterRis {padding-left: 22px;}
#content #zplusJourney .himMessagesAfterRis {padding-bottom: 8px;}
#content .himMessagesHigh {background: url("../img_responsive/20dp_icon_action_error-filled_red600.svg") left 2px no-repeat; padding: 2px 0 2px 24px;}
#content .himMessagesMiddle {background: url("../img_responsive/20dp_icon_action_error-filled_grey400.svg") left 2px no-repeat; padding: 2px 0 2px 24px;}

div.shadowtop               {height:8px;}
#hafasContentEnd,
div.shadowbottom            {height:17px; margin-bottom:5px;}
/*div.shadowtop,
#content,
#hafasLegend                {background: transparent url(../img/schatten_buchung.png) no-repeat scroll 3px -7px;}*/
div.shadowsides,
div.hafasContent,
#hafasLegend .content       {background: url(../img/schatten_buchung.png) repeat-y scroll -1963px 0px;}
div.shadowbottom,
#hafasContentEnd,
#hafasLegend .end           {background: url(../img/schatten_buchung.png) no-repeat scroll -994px 0px;}

#content ul.progress li.progress_past {background: url("../img/erledigt_gruen_16x16.gif") 0px center no-repeat;}
#content ul.progress li.progress_active {background: #f00 url("../img/aktuell_nur_rot_16x16.gif") 0px center no-repeat; color: #fff; margin-right: 8px;}
#content ul.progress li.progress_future {background: url("../img/offen_grau_16x16.gif") 0px center no-repeat;}

#hafasTooltipContainer          {position: absolute; background-color: #fff; color: #000; border: 1px solid #ccc; padding: 2px; display: inline; z-index: 100;}
#hafasTooltipContainer .greenA  {background: url("../img/kont_haken.gif") right center no-repeat; padding-right: 10px;}
#hafasTooltipContainer .redA    {background: url("../img/kont_kreuz.gif") right center no-repeat; padding-right: 10px;}
#hafasTooltipContainer .questionA {background: url("../img/kont_fragezeichen.gif") right center no-repeat; padding-right: 10px;}
#hafasTooltipContainer .out     {margin-right: 5px;}
#hafasTooltipContainer.csTooltip        {border: 1px solid #000; font-size: 0.7em;}
#hafasTooltipContainer img#tooltipImg   {position: absolute;}
#hafasTooltipContainer img#closeTooltip {float: right; padding: 3px; cursor: pointer;}

#content div.smallPadding        {padding: 2px 4px;}

#content div.grBookingChoice {margin-top: 10px; margin-bottom: 10px; padding-left: 56px; height: 40px; font-size: 0.7em;}

div.hafasErrorAjaxWrapper              {border-top: 1px solid #d7dce1; background-color: #FFFFFF;}
div.hafasErrorAjax                     {padding: 16px 0 0; margin:0 1px; background-color: #F0F3F5;}
div.hafasErrorAjax p                   {font-family:DBSansRegular; font-size:14px; line-height:20px; margin:0 15px;}
div.hafasErrorAjax p.button-inside     {margin:40px 0 0; background-color: #FFFFFF; padding: 24px 16px;}
#returnJourneyLayer div.hafasErrorAjax {border: none; background-color: transparent; padding:0;}

div#doc div#header.headerTpResults,
div#doc div#main-nav                       {z-index:100 !important;}
div#doc h2.mainNaviHeadingCorrection       {text-indent: -9000px; color: #000;}
#content ul.process-list li.active         {background-color: #E4421C !important;}

#content #zplusLeftContainer         {float: left; width: 320px; font-size: 0.7em; position: relative;}
#content #zplusLeftContainer .contentshadow   {padding: 4px;}
#content #zplusLeft                  {height: 537px;}
#content #zplusRight                 {position: relative; float: right; margin-left: 0; width: 652px;}
#content .zplusRight                 {overflow: auto; height: 500px; position: relative;}
#content.hafasContainerTransparent   {background: none; padding-top: 0;}
#content #zplusSlider ul li          {list-style-type: none; white-space: nowrap; float: left; font-size: 1.0em; cursor: pointer;}
#content #zplusSlider ul li.zplusSliderLast {float: none; background: transparent; padding: 8px 1px 8px 0; height: 24px; cursor: default;}
#content #zplusSlider .active        {background-color: #f6f6f6 !important;}
#content #zplusJourneyCon            {overflow: auto; width: 100%; height: 468px; position: relative;}
.fontsize20 #content #zplusJourneyCon {height: 438px;}
.fontsize18 #content #zplusJourneyCon {height: 448px;}
#content #zplusJourney               {width: auto; position: relative;}
#content #zplusJourney img.top       {vertical-align: middle;}
#content .zplusLocation,
#content .zplusLocationPast          {background-color: #F2F2F2; background-position: -5px 0; border-bottom: 1px solid #ccc; border-left: 10px solid #F2F2F2; border-right: 10px solid #F2F2F2; cursor: pointer;}
#content .zplusLocationArr,
#content .zplusLocationArrPast       {padding: 10px 10px 0px 25px;}
#content .zplusLocationDep,
#content .zplusLocationDepPast       {padding: 0px 10px 10px 25px;}
#content .zplusLocation .station,
#content .zplusLocationPast .station {font-size: 1.1em; font-weight: bold; padding: 0px 10px 0px 25px;}
#content .zplusWalk,
#content .zplusWalkPast              {background-color: #fff; background-position: -5px 0; padding: 10px 10px 10px 25px; border-bottom: 1px solid #ccc; border-left: 10px solid #fff; border-right: 10px solid #fff;}
#content .zplusInterStation,
#content .zplusInterStationPresent,
#content .zplusInterStationPast      {background-color: #fff; background-position: -5px 0; padding: 10px 10px 10px 25px; border-bottom: 1px solid #ccc; border-left: 10px solid #fff; border-right: 10px solid #fff; cursor: pointer;}
#content .zplusInterStation .station,
#content .zplusInterStationPresent .station,
#content .zplusInterStationPast .station {font-weight: bold;}
#content img.zplusChange             {position: absolute; left: 5px;}
#content img.zplusToggleSection      {position: absolute; right: 10px; height: 16px; width: 16px;}
#content .zplusMOT,
#content .zplusMOTPast               {background-color: #fff; background-position: -5px 0; padding: 10px 10px 10px 25px; border-bottom: 1px solid #ccc; border-left: 10px solid #fff; border-right: 10px solid #fff; cursor: pointer;}
#content .zplusMOT .MOT,
#content .zplusMOTPast .MOT          {font-size: 1.1em; font-weight: bold;}
#content .zplusLocation,
#content .zplusWalk,
#content .zplusLocationDepFuture,
#content .zplusMOT                   {background-image: url("../img/zplus/RouteLinie_v2.png"); background-repeat: repeat-y;}
#content .zplusMOTGis                {background-image: url("../img/zplus/RouteLinieGis_v2.png") !important;}
#content .zplusInterStation          {background-image: url("../img/zplus/RouteLinieStop_v2.png"); background-repeat: no-repeat; background-position: -5px center;}
#content .zplusLocationPast,
#content .zplusWalkPast,
#content .zplusMOTPast               {background-image: url("../img/zplus/RouteLinieTrain_v2.png"); background-repeat: repeat-y;}
#content .zplusMOTGisPast            {background-image: url("../img/zplus/RouteLinieTrainGis_v2.png") !important;}
#content .zplusInterStationPast      {background-image: url("../img/zplus/RouteLinieStopTrain_v2.png"); background-repeat: no-repeat; background-position: -5px center;}
#content .zplusInterStationPresent   {background-image: url("../img/zplus/RouteLinieStopPresent_v2.png"); background-repeat: no-repeat; background-position: -5px center;}
#content .zplusLocationDepFuture     {background-position: -5px 0;}
#content .zplusDestLocation          {padding-bottom: 0 !important; border-bottom: none !important; position: relative;}
#content .zplusDepLocation           {padding-top: 0 !important;}
#content .zplusEnd                   {background-color: #F2F2F2;}
#content .zplusStart                 {background-color: #F2F2F2;}
#content .zplusActiveStation         {border-left: 10px solid #999DA6 !important; border-right: 10px solid #999DA6 !important;}
#content .zplusmap_menu              {background-color: #fff; border: 1px solid #000; padding: 4px; position: absolute; right: 0; bottom: 20px; z-index: 9; font-size: 0.7em;}
#content .zplusmap_menu img          {vertical-align: middle;}
#content .zplusroute_route           {background-color: #fff; border: 1px solid #000; padding: 4px; position: absolute; right: 0; top: 20px; z-index: 9;}
#content #zplusroute_routedescription {height: 300px; overflow: auto;}
#content #zplusroute_routedescription td{padding:4px 2px;}
#content #zplusPane_stInfo           {padding: 0 8px;}
#content div.zplusSummaryLine        {padding-bottom: 4px;}
#content div#zplusSummary            {padding-bottom: 4px;}
#content #zplusPane_stBoard table.products td {padding: 0 4px;}
/*#content #zplusPane_stBoard table.result  {width: auto;}*/
#content #zplusPane_Map .ajaxmapdiv img {margin-bottom:0;}
#content #zplusPane_stRoute .ajaxmapdiv  {position: relative;}
#content #zplusPane_Map .ajaxmapdiv  {position: relative;}
#content #zplusStRouteCon            {padding: 4px 4px 0 4px;}
#zplusRight table.products label            {margin-right: 11px;}
#zplusRight a.printview,
#zplusLeftContainer a.printview             {display: inline; padding-left: 16px;}
#zplusRight a.printview:active,
#zplusRight a.printview:hover,
#zplusLeftContainer a.printview:active,
#zplusLeftContainer a.printview:hover       {text-decoration: none;}
#content div.himmessageMap           {width: 200px; white-space: normal; padding-top: 4px;}

#content div.HafasLayer              {position: absolute; width: 50%; left: 25%; top: 30%; z-index: 10001; background-color: #fff; padding: 8px; border: 1px solid #000;}
#content #zplusPane_Map .ajaxmapdiv div.ptvinfoboxcontent img.middle  {margin-bottom: 0.3em !important;}


#content .topshadow                                     {background: transparent url(../img/schatten_oben.png) 1px top repeat-x; margin-right: 10px; margin-left: 10px; height: 8px;}
#content .topshadowright                                {height: 8px; width: 10px; background: transparent url(../img/schatten_oben_rechts.png) 1px top no-repeat; position: absolute; right: 1px;}
#content .topshadowleft                                 {height: 8px; width: 10px; background: transparent url(../img/schatten_oben_links.png) 1px top no-repeat; position: absolute; left: 0px;}
#content .contentshadow                                 {background-color: #fff; margin-left: 10px; margin-right: 10px; position: relative;}
#content .contentshadowleft                             {position: absolute; left: -10px; top: 0px; width: 10px; height: 100%; background: transparent url(../img/schatten_links.png) 1px top repeat-y;}
#content .contentshadowright                            {position: absolute; right: -9px; top: 0px; width: 10px; height: 100%; background: transparent url(../img/schatten_rechts.png) 1px top repeat-y;}
#content .bottomshadow                                  {background: transparent url(../img/schatten_unten.png) 1px -3px repeat-x; margin-right: 10px; margin-left: 10px; height: 16px;}
#content .bottomshadowright                             {height: 16px; width: 10px; background: transparent url(../img/schatten_unten_rechts.png) 1px -3px no-repeat; position: absolute; right: 1px;}
#content .bottomshadowleft                              {height: 16px; width: 10px; background: transparent url(../img/schatten_unten_links.png) 1px -3px no-repeat; position: absolute; left: 0px;}
#content .reverseShadow                                 {background: #fff !important; height: 4px;}
#content .reverseShadow .bottomshadowright              {background: transparent url(../img/schatten_rechts.png) 1px -3px repeat-y; height: 2px;}
#content .reverseShadow .bottomshadowleft               {background: transparent url(../img/schatten_unten_links_reverse.png) 1px -3px no-repeat;}
#content .shadowbutton                                  {background: transparent url(../img/schatten_button.png) -27px -3px no-repeat; padding: 12px; position: relative; z-index: 2; cursor: pointer;}

/* progress bar old */
/*
#content ul.process-bar                                        {padding: 7px 8px 4px 20px;}
#content ul.process-bar li                                     {box-sizing:content-box;}
#content ul.process-bar li                                     {margin-right: 4px; float: left; padding: 5px 16px 5px 0; width: 90px; text-align: center; background: #e4e4e4 url(../img/fortschrittsanzeige_bg_kurz.png); font-size: 11.2px;}
#content ul.process-bar li.active                              {background-position: 0 54px; background-color: #f00; color: #fff; font-weight: bold;}
#content ul.process-bar li.checked                             {background-position: 0 27px; padding: 5px 16px 5px 20px; width: 70px;}
#content ul.process-bar li.longprogress_future                 {width: 125px; background: #e4e4e4 url(../img/fortschrittsanzeige_bg_lang.png)}
#content ul.process-bar li.longactive                          {width: 125px; background: #f00 url(../img/fortschrittsanzeige_bg_lang.png) 0 54px; color: #fff; font-weight: bold;}
#content ul.process-bar li.longchecked                         {padding: 5px 16px 5px 20px; width: 104px; background: #e4e4e4 url(../img/fortschrittsanzeige_bg_lang.png) 0 27px;}
#content ul.process-bar li.last                                {padding-right: 0 !important; width: 106px; background: #e4e4e4 url(../img/fortschrittsanzeige_bg_bestaetigung.png)}
*/

/* progress bar */
#content div.hfsProgressbarCon                                 {padding: 0 24px; width: 100%; opacity: 1; position: relative; background-color: #F0F3F5; margin-bottom:10px;}
#content ul.process-bar                                        {list-style: none; display: flex; flex-wrap: nowrap; justify-content: center; width: 100%; margin: 18px 0px 14px;}
#content ul.process-bar li                                     {flex-basis: 0; flex-grow: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; text-align: center; vertical-align: bottom; margin:0 4px; position: relative; height:24px;}
#content ul.process-bar li::after                              {content: ""; bottom: 0; position: absolute; height: 2px; border-bottom: 2px solid #AFB4BB; right: 0; left: 0; border-radius: 1px;}
#content ul.process-bar li.first                               {margin-left:0;}
#content ul.process-bar li.last                                {margin-right: 0;}
#content ul.process-bar li span::after                         {}
#content ul.process-bar li span                                {display: block; position: relative; color: #878c96; text-overflow: ellipsis; overflow: hidden; font-family: DBSansRegular,Arial,Helvetica,sans-serif; font-size: 12px; line-height:16px; font-style: normal;}
#content ul.process-bar li.active span                         {color: #282D37; font-family: DBSansBold;}
#content ul.process-bar li.checked a                           {color: #878c96;}
#content ul.process-bar li.checked::before,
#content ul.process-bar li.checked::after,
#content ul.process-bar li.active::after,
#content ul.process-bar li.active::before                      {border-bottom: 2px solid #63a615;}
#content ul.process-bar li.checked                             {color: #63a615;}
#content ul.process-bar li.longprogress_future                 {}
#content ul.process-bar li.longactive                          {}
#content ul.process-bar li.longchecked                         {}
#content ul.process-bar li.first                               {}
#content ul.process-bar li.first::before                       {display: none;}
#content ul.process-bar li.last                                {}
#content ul.process-bar li.last::before                        {width: 88px;}
/* Fortschrittsanzeige: anderes Design für custom-select */
#content div.hfsProgressbarCon .custom-select                  {display:none; width:100%; height:20px; background-color: transparent; border: none;}
#content div.hfsProgressbarCon .custom-select .ico             {right: -10px;}
#content div.hfsProgressbarCon .custom-select .icons-arrow-down-select {height: 20px;}
#content div.hfsProgressbarCon .custom-select select           {width:100%; display:inline-block; height:20px; line-height:20px; position: relative; cursor:pointer; padding-left:4px; font-size:14px; font-family: DBSansBold;}
#content div.hfsProgressbarCon .custom-select select option    {font-family: DBSansRegular;}

/* sprite image */
.icons-sprite, .icons-_arrow-left-grey, .icons-_arrow-right-grey, .icons-_calendar-disabled-transparent, .icons-_calendar-disabled, .icons-_calendar-white, .icons-_calendar, .icons-_check, .icons-_checkbox, .icons-_info-grey, .icons-_person-grey, .icons-_slider-controls, .icons-_slider-next, .icons-_slider-prev, .icons-_star-white, .icons-_star, .icons-_trash-dark, .icons-_warning-small, .icons-_warning, .icons-arrow-down-white, .icons-arrow-down, .icons-arrow-grey-big, a.link.disabled i.icons-ico-arrow-red-big, a.form-link.disabled i.icons-ico-arrow-red-big, #ui-datepicker-div .ui-datepicker-header a.ui-datepicker-prev span.ui-icon.ui-icon-circle-triangle-w:hover, #ui-datepicker-div .ui-datepicker-header a.ui-datepicker-prev span.ui-icon.ui-icon-circle-triangle-w, .icons-arrow-left-disabled, .icons-arrow-red, #ui-datepicker-div .ui-datepicker-header a.ui-datepicker-next span.ui-icon.ui-icon-circle-triangle-e:hover, #ui-datepicker-div .ui-datepicker-header a.ui-datepicker-next span.ui-icon.ui-icon-circle-triangle-e, .icons-arrow-right-dark, .icons-arrow-right-disabled, .icons-arrow-station, .icons-arrow-switch, .icons-arrow-up-white, a.grey-toggle.active .ico, .icons-bg-24-24, .icons-calendar-active, .icons-calendar-day-active, #ui-datepicker-div .ui-state-default.ui-state-active, #ui-datepicker-div .ui-state-default.ui-state-active:hover, #ui-datepicker-div .ui-state-highlight.ui-state-active, #ui-datepicker-div .ui-state-highlight.ui-state-active:hover, .icons-calendar-disabled-big-dark, .not-enabled .icons-calendar-big:hover, .icons-calendar-disabled-big, .not-enabled .icons-calendar-big, .icons-calendar-grey, .icons-checkboxes, .icons-close-x-grey, .icons-environment-check, .icons-favourite-active, .icons-star-big.active, .icons-star-big.active:hover, .icons-ico-arrow-red-big, .icons-icon-down, .icons-info, .icons-magnifier-minus, .icons-magnifier-plus, .icons-no-sale, .icons-person-dark, .icons-person-darkgrey-big-dark, .icons-person-darkgrey-big:hover, .icons-person-darkgrey-big, .icons-person-darkgrey, .icons-person, .icons-pin-grey, .icons-print, .icons-profil-active, .icons-person-darkgrey-big.active, .icons-person-darkgrey-big.active:hover, .icons-radio-checked, .icons-radio, .icons-seat-inkl, .icons-seat, .icons-small-star, .icons-star-big-dark, .icons-star-big:hover, .icons-star-big, .icons-toggle-disabled, .not-enabled .toggle .input-checked, .icons-toggle-large, .toggle-wrapper-large .input-checked, .toggle-wrapper-large input[type="radio"]:checked + label, .icons-toggle, .toggle-wrapper .input-checked, .toggle-wrapper input[type="radio"]:checked + label, .icons-transfer, .icons-transport-busse, .icons-transport-ecic, .icons-transport-ice, .icons-transport-interregio, .icons-transport-nahverkehr, .icons-transport-sbahn, .icons-transport-schiffe, .icons-transport-taxi, .icons-transport-tram, .icons-transport-ubahn, .icons-warning-color-small, #content table.result td a.open span span, #content table.result td a.close span span, #content table.result td a.moreClose span span, #content .flaparrowContainer a.open span span, #content .flaparrowContainer a.close span span, #content a.buttonGreyBg span, .icons-person-grey-big, .icons-person-grey-big-dark, .icons-star-yellow-big, #savedJourneysSaveJourney div, #savedJourneys #savedJourneysJourneys div div.star, #savedJourneys #savedJourneysJourneys div div.del {
    background-image: url("../img/icons-sprite.png");
}
/*.ico2                                                           {background-image: url("../img/icons-sprite2.png");}*/
.checkbox-wrapper input[type="checkbox"] + label                {background-image: url("../img_responsive/Checkbox_unchecked_active.svg");}
.checkbox-wrapper input[type="checkbox"]:checked + label        {background-image: url("../img_responsive/Checkbox_checked_active.svg");}
.checkbox-wrapper input[type="checkbox"]:disabled + label       {background-image: url("../img_responsive/Checkbox_unchecked_inactive.svg");}
/* Geht das ??? */
.checkbox-wrapper input[type="checkbox"][disabled][checked] + label {background-image: url("../img_responsive/Checkbox_checked_inactive.svg");}

.radio-wrapper input[type="radio"] + label                      {background-image: url("../img_responsive/Radiobutton_off_active.svg");}
.radio-wrapper input[type="radio"]:checked + label              {background-image: url("../img_responsive/Radiobutton_on_active.svg");}
.icon-icon_tickets_small                                        {background-image: url("../img/icon_tickets_small.png");}
.icon-icon_bc_small                                             {background-image: url("../img/icon_bahncard_small.png");}
.icon-icon_check_small                                          {background-image: url("../img/icon_check_small.png");}
.icon-icon_info_small                                           {background-image: url("../img/icon_info_small.png");}
.icon-icon_info_weiss_small                                     {background-image: url("../img/icon_info_weiss_small.png");}
.trainCompositionIcon                                           {background-image: url("../img_responsive/20dp_icon_transportation_car-sequence.svg"); background-size:20px 20px; background-repeat:no-repeat; background-position:left center; }
a.trainCompositionIcon                                          {padding: 0 0 0 28px;}
.spriteIcon2                                                    {background-image: url("../img/icons-sprite2.png");}
.icon-icon_tickets_medium                                       {background-position: 0 -2984px; display: block; width: 33px; height: 37px; background-repeat:no-repeat;}
.icon-ticket-multiple                                           {background-image:url("../img_responsive/32dp_icons_ticket_ticket-multible.svg"); background-repeat:no-repeat; background-size:32px 32px; background-position:center center; width:32px; height:32px; display:block;}
.icon-icon_euro                                                 {background-position: 0 -312px; position: absolute; display: block; width: 28px; height: 31px; top: -2px; left: 0px;}
#trainCompositionLayerContent select  {position: relative;}


.inactive                                                      {opacity:0.5;}
#date1Del                                                      {background-image: url(../img_responsive/20dp_icon_action_delete_grey400.svg); background-size: 20px; background-repeat: no-repeat; background-position: left center; padding-left: 25px; margin-top: 16px; clear:both; font-family:DBsansRegular; font-size:14px; line-height:20px;}
#date1Del.inactive                                             {display:none;}
#date1Del.inactive                                             {display:none;}

#content div.viaLocationHolder                          {margin-left: 8px;}
#content div.viaLocationHolderInner,
#returnJourneyLayer div.viaLocationHolderInner          {display:flex; flex-direction:row; margin-bottom: 8px;}
#content .returnPage div.viaLocationHolderInner,
#returnJourneyLayer div.viaLocationHolderInner          {margin-bottom: 24px;}
#content div.viaLocationHolderInner .input-wrapper      {margin:0;}
#content div.viaLocationHolderInner .stopoverContainer .input-wrapper,
#returnJourneyLayer div.viaLocationHolderInner .stopoverContainer .input-wrapper {margin-left: 8px;}
#content div.viaLocationHolderInner .stopoverContainer .input-wrapper div,
#returnJourneyLayer div.viaLocationHolderInner .stopoverContainer .input-wrapper div {display:flex; align-items:center;}
#content div.viaLocationHolderInner .stopoverContainer .input-wrapper div span.icons-arrow-left-btn,
#returnJourneyLayer div.viaLocationHolderInner .stopoverContainer .input-wrapper div span.icons-arrow-left-btn {order:1;}
#content div.viaLocationHolderInner .stopoverContainer .input-wrapper div input,
#returnJourneyLayer div.viaLocationHolderInner .stopoverContainer .input-wrapper div input {order:2;}
#content div.viaLocationHolderInner .stopoverContainer .input-wrapper div span.icons-arrow-right-btn,
#returnJourneyLayer div.viaLocationHolderInner .stopoverContainer .input-wrapper div span.icons-arrow-right-btn {order:3;}
#content div.viaLocationHolderInner .stopoverContainer .input-wrapper input:placeholder-shown ~ span.icons-arrow-left-btn,
#returnJourneyLayer div.viaLocationHolderInner .stopoverContainer .input-wrapper input:placeholder-shown ~ span.icons-arrow-left-btn {background-image:url(../img_responsive/24dp_icon_navigation_chevron-left_grey400.svg);}
#content div.viaLocationHolderInner .stopoverContainer .input-wrapper input:placeholder-shown ~ span.icons-arrow-right-btn,
#returnJourneyLayer div.viaLocationHolderInner .stopoverContainer .input-wrapper input:placeholder-shown ~ span.icons-arrow-right-btn {background-image:url(../img_responsive/24dp_icon_navigation_chevron-right_grey400.svg);}

#content div.viaLocationHolderInner label.jsPaddingLeft {padding-left:0;}
#returnJourneyLayer div.viaLocationHolderInner label.boldText {padding-left:0;}
#returnJourneyLayer div.viaLocationHolder hr.divider    {margin:10px 0 15px !important;}

/* spezielle Klasse für eigene Rückfahrt-Seite */
/* gelten z.T. auch für "Suchkriterien ändern" bei Live-Auskunft und akt. Altern. */
#content h2.returnPage,
#content h2.sotContentPage  {margin:20px 24px;}
#content div.returnPage     {background-color:#FFFFFF; padding:24px 16px;}
#content div.returnPage > div {padding:0;}
#content div.returnPage div.viaLocationHolder,
#content div.returnPage div.viaLocationHolderInner,
#content div.returnPage div.viaContainer {margin-left:0px;}
#content div.returnPage div.viaLocationHolderInner:first-child {margin-top:0 !important;}
#content div.returnPage div.viaLocationHolderInner label.boldLabel {padding-left:0;}
#content div.returnPage p.querybutton {display:flex; flex-direction:row-reverse; align-items:center; justify-content:space-between;}
#content div.returnPage .button-inside a.arrowlink {margin-left:0;}
#content div.returnPage div.viaLocationHolder hr.divider,
#content hr.divider.returnPage.smallSpace {margin:20px 0 15px !important;}

/* Layouts für ehemalige Popup-Contents */
#content div.popupContent                 {background-color:#FFFFFF; padding:24px 16px;}
#returnJourneyLayer div.popupContent div,
#returnJourneyLayer div.popupContent p,
#returnJourneyLayer div.popupContent textarea,
#returnJourneyLayer div.popupContent h3,
#content div.popupContent p,
#content div.popupContent textarea,
#content div.popupContent h3                              {margin:0; padding:0; font-family: DBsansRegular; font-size:16px; line-height:24px;}
#returnJourneyLayer div.popupContent h3,
#content div.popupContent h3                              {font-family:DBsansBold; font-weight:normal;}
#returnJourneyLayer  div.popupContent  .senderInformation,
#content  div.popupContent  .senderInformation,
#returnJourneyLayer div.popupContent .popupQueryBox,
#content div.popupContent .popupQueryBox                  {margin-top:24px;}
#returnJourneyLayer div.popupContent .downloadFlex,
#content div.popupContent .downloadFlex                   {display:flex; flex-direction:row; align-items:flex-end;}
#returnJourneyLayer  div.popupContent .downloadFlex .downloadText,
#content div.popupContent .downloadFlex .downloadText     {margin-right:40px !important;}
#returnJourneyLayer div.popupContent .popupQueryBox  textarea,
#content div.popupContent .popupQueryBox  textarea        {font-family: DBsansRegular !important; padding:12px 16px !important; background-color:#F0F3F5; border:none !important; width:500px; height:84px; margin:24px 0 !important;}
#returnJourneyLayer div.popupContent .popupQueryBox  .input-wrapper,
#content div.popupContent .popupQueryBox  .input-wrapper  {width:500px !important; margin-top:24px; line-height:initial;}
#returnJourneyLayer div.popupContent .popupQueryBox  .input-wrapper,
#content div.popupContent .popupQueryBox  .input-wrapper  {width:500px !important; margin-top:24px; line-height:initial;}


#content h2.sotContentPage  {padding-left:10px; font-size: 1.25em;}
#content p.sotChangeIntro   {font-size:0.75em;  margin-bottom:20px; padding-left:10px;}
#content h3.sotChangeHeadline {font-size: 1em; margin-bottom: 13px; margin-top: -3px !important; font-family:DBSansRegular; font-weight:normal; padding-right:20px; padding-left:10px;}


/* Bildleiste */
#content #hafasImgBar       {position: relative; background-color: #D7DCE1; padding: 36px 32px; display: flex; justify-content: space-between;}
#content #hafasImgBar_2     {text-align: right;}
#content #hafasImgBar_1_Img,
#content #hafasImgBar_2_Img {display: flex; justify-content: flex-end; align-items:center;}
#content #hafasImgBar h2    {font-family: DBSansBold; font-size: 18px; margin-bottom:16px; padding:0;}
#content #hafasImgBar div   {}
#content #hafasImgBar a     {margin: 0 8px;}
#content #hafasImgBar a:first-child {margin-left:0;}
#content #hafasImgBar a:last-child  {margin-right: 0;}
#content #hafasImgBar img   {margin: 0;}

#content .hafasDistanceBar  {position: relative; height: 20px; padding:20px 0; background-color: #F0F3F5;}

/* Iframe Verkehrstage */
#returnJourneyLayer iframe.vtk {background:transparent; border:none; margin-top:40px;}
iframe.vtCalIframe                      {border:0px; width:440px; height:500px; margin-top:20px; box-shadow:0 1px 8px 0 rgba(0, 0, 0, 0.4)}

/* Fahrradhinweis */
div.bikeHint                {margin-top:15px; font-size:0.75em;}

/* skyscraper */
.wsky{position:absolute;height:600px;width:160px;left:100%;top:120px;margin-top:-49px; margin-left:2px}
.northbanner{width:980px;margin:auto;position:fixed}
.northbanner_inner{text-align:center;width:auto}
body#doc{overflow:visible}


/**************************************** ngr NEU ******************************************/
/* Eingabeseite - Formularelemente und umliegende Container - Layout für breiteste Ansicht */
/* #content ... */
/* #content .queryBox (fieldset) ... */
/* .custom-select = "normale" selectliste
   .custom-select.special-layout = grauer Container, select mit Linie unterlegt */


/* Eingabefelder */
#content .input-wrapper,
#returnJourneyLayer .input-wrapper             {height: 56px; background-color: #F0F3F5; border-bottom: 1px solid #878C96; border-radius: 4px;}
#content .locationFlex div.errormsg,
#content .input-wrapper                        {width: 323px;}
#content .returnPage .input-wrapper,
#returnJourneyLayer .input-wrapper             {width: 348px;}
#content .input-wrapper input,
#returnJourneyLayer .input-wrapper input       {background-color: #F0F3F5;}
#content .input-wrapper.input-error,
#returnJourneyLayer .input-wrapper.input-error {border-bottom: 1px solid #C50014;}
#content .input-wrapper.input-error label,
#returnJourneyLayer .input-wrapper.input-error label {color: #C50014;}

/* Kalender, Datum, Uhrzeit */
#content .calendar-wrapper,
#returnJourneyLayer .calendar-wrapper          {margin:0; cursor:pointer;}
#content .date-wrapper,
#content .time-wrapper,
#returnJourneyLayer .date-wrapper,
#returnJourneyLayer .time-wrapper              {margin:0; height: 40px; border: 1px solid #878c96; border-radius: 4px; position: relative;}
#content .date-wrapper,
#returnJourneyLayer .date-wrapper              {display:flex; align-items:center; flex-direction:row; justify-content:space-between;}
#content .date-wrapper,
#content .dateContainer .errormsg.dateError    {width:323px;}
#returnJourneyLayer .date-wrapper,
#returnJourneyLayer .dateContainer .errormsg.dateError {width:324px;}
#content .time-wrapper,
#returnJourneyLayer .time-wrapper              {display:flex; flex-direction:row;}
#content .time-wrapper                         {width:187px;}
#returnJourneyLayer .time-wrapper              {width:184px;}
#content .date-wrapper input,
#content .time-wrapper input,
#returnJourneyLayer .date-wrapper input,
#returnJourneyLayer .time-wrapper input        {border:none !important; line-height: 24px; text-align: center;}
#content .date-wrapper input,
#returnJourneyLayer .date-wrapper input        {width: 253px;}
#content .time-wrapper input,
#returnJourneyLayer .time-wrapper input        {width: 88px;}
#content .date-wrapper span,
#content .time-wrapper span,
#returnJourneyLayer .date-wrapper span,
#returnJourneyLayer .time-wrapper span         {height:38px; vertical-align:middle;}
#content .dep-arr-wrapper,
#returnJourneyLayer .dep-arr-wrapper           {margin-left: 30px;}

/* Auswahllisten */
#content .custom-select,
#trainCompositionLayer .custom-select,
#returnJourneyLayer .custom-select             {width:323px; height: 44px; background-color: #ffffff; border: 1px solid #878c96; border-radius: 4px; margin: 0; overflow: hidden; position: relative; font-size:1em;}
#content .custom-select select,
#trainCompositionLayer .custom-select select,
#returnJourneyLayer .custom-select select      {width: 100%;}
#content .custom-select.high,
#trainCompositionLayer .custom-select.high,
#returnJourneyLayer .custom-select.high                  {height:60px; padding: 8px;}
#content .custom-select.special-layout,
#trainCompositionLayer .custom-select.special-layout,
#returnJourneyLayer .custom-select.special-layout        {height:60px; padding: 8px; border: none; background-color: #F0F3F5;}
#content .custom-select.special-layout select,
#trainCompositionLayer .custom-select.special-layout select,
#returnJourneyLayer .custom-select.special-layout select {width:307px; padding-left: 8px; border-bottom: 1px solid #AFB4BB !important;}

/* Reisende */
#content #travellerDetail                                   {margin-bottom: 40px;}
#content #travellerDetail .travellerRow                     {margin-top: 16px; display: flex; flex-direction: row; position:relative;}
#content #travellerDetail .travellerRow .travellerLeftSide  {display:flex; flex-direction:row;}
#content #travellerDetail .travellerICell                   {position:absolute; left:8px; top:18px; z-index:10;}
#content #travellerDetail .travellerRow .travellerTypeDiv   {margin-right: 8px;}
#content #travellerDetail .travellerRow .travellerTypeDiv .spaceLeft      {padding-left: 32px;}
#content #travellerDetail .travellerRow .travellerReductionDiv            {position:relative;}
#content #travellerDetail .travellerRow .travellerReductionDiv .spaceLeft {padding-left: 32px;}
#content #travellerDetail .travellerRow .travellerAgeDiv.input-wrapper {width:120px; margin-left:8px;}
#content #travellerDetail .travellerGroupJny                {display:flex; flex-direction:row; align-items:baseline; margin-top:16px;}
#content #travellerDetail .travellerGroupJny.abroad         {align-items:flex-start;}
#content #travellerDetail .travellerGroupJny .input-wrapper,
#content #travellerDetail .travellerGroupJny .custom-select {width:220px; margin-right:8px;}
#content #travellerDetail .travellerGroupJny .custom-select .dropdown {width:210px;}
#content #travellerDetail .travellerGroupJny .input-wrapper.littleChildAmount       {position:relative;}
#content #travellerDetail .travellerGroupJny .input-wrapper.littleChildAmount input {padding-right:40px;}
#content #travellerDetail .travellerGroupJny .input-wrapper.littleChildAmount a     {position:absolute; right: 32px; top: 25px; z-index: 10;}
#content #travellerDetail .travellerGroupJny.abroad .childRow               {display:flex; flex-direction:row; align-items:flex-start; margin-bottom: 8px;}
#content #travellerDetail .travellerGroupJny.abroad .travellerAbroadAdults  {margin-bottom:8px;}

/* Vias */
#content .viaSelection,
#returnJourneyLayer .viaSelection               {display:flex; flex-direction:row;}

/* Checkboxen globale Produktwahl */
#content div.globalProducts                     {display:flex; flex-direction:row;}
#content div.globalProducts > div               {margin-right: 24px;}
#content div.globalProducts > div:last-child    {margin-right:0;}
#content div.globalProducts > div label         {white-space: normal; text-align:left;} // todo ngr: verallgemeinern, wenn weitere checkboxen + icon umgebaut sind (fahrradmitnahme)

/* Texte für spezielle Configs (Länderticket, Tageskarte) */
#content .specialConfigDescription,
#content .specialConfigDescription p            {font-size:14px; line-height:20px;}
