/* ########################################################################## */
/*
* Sytle-Sheet für das Res-Layout
*
*/
/* ########################################################################## */

/* ========================================================================== */
/*
* Header-Bereich
*/
/* ========================================================================== */

/* -------------------------------------------------------------------------- */
/*
* Headlines, Überschriften, Text
*/
/* -------------------------------------------------------------------------- */

div#prefix_column_1_1 div.csc-textpic .csc-textpic-imagewrap .csc-textpic-image {
  margin-bottom: 0px;
}
/* Damit das MeanMenü nicht vom Logo "angeschnitten" wird (links oben). */

#prefix_column_1_3 {
  font-family: 'Roboto Condensed';
  font-size: 16rem;
  font-weight: 400;
  line-height: 1.0;
  text-transform: uppercase;
  color: #012d6c;
}

#prefix_column_1_3 p.bodytext {
  font-weight: 600;
}

#prefix_column_2_1 {
  font-family: 'Roboto Condensed';
  font-size: 30rem;
  font-weight: 400;
  line-height: 1.0;  
  
  text-transform: uppercase;
  color: #012d6c;
}

#prefix_column_2_1 p.bodytext {
  font-weight: var(--header-slogan-font-weight);
  padding: 35px 0px 0px 0px;
}

div#prefix_column_3_2 h1.csc-firstHeader {
  display: none;
}

#prefix_column_3_2 figcaption a {
  color: #ffffff;
}

#prefix_column_3_2 figcaption a:hover {
  color: #ff0000;
}

div#header_column_1_1 div.csc-textpic-intext-left-nowrap .csc-textpic-text {
  margin-left: 0px;
}

div#header_column_1_1 div.csc-textpic-text p.bodytext {
}

/*
#header_column_1_1 h1.csc-firstHeader {
  font-family: 'Federo', sans-serif;
  color: #ffffff;
  -webkit-text-shadow: 0px 2px 6px rgba(0,0,0,0.51);
  -moz-text-shadow: 0px 2px 6px -rgba(0,0,0,0.51);
  text-shadow:
  -1px -1px 0 #8ca4c8,
  1px -1px 0 #8ca4c8,
  -1px 1px 0 #8ca4c8,
  1px 1px 0 #8ca4c8,
  0px 2px 6px rgba(0, 0, 0, 0.51);
}

#header_column_1_1 p.bodytext {
  font-family: 'Federo', sans-serif;
  color: #ffffff;
  -webkit-text-shadow: 0px 2px 6px rgba(0,0,0,0.51);
  -moz-text-shadow: 0px 2px 6px -rgba(0,0,0,0.51);
  text-shadow:
  -1px -1px 0 #8ca4c8,
  1px -1px 0 #8ca4c8,
  -1px 1px 0 #8ca4c8,
  1px 1px 0 #8ca4c8,
  0px 2px 6px rgba(0, 0, 0, 0.51);
}
*/

/* -------------------------------------------------------------------------- */
/*
* Grafiken, Images
*/
/* -------------------------------------------------------------------------- */

/*
#header_line_1 div.csc-textpic-imagewrap.csc-textpic-single-image img {
  margin-bottom: 0px;
}
#header_line_1 div.csc-textpic-equalheight div.csc-textpic-imagerow {
  margin-bottom: 0px;
}

div#header_column_1_1 div.csc-textpic-intext-left-nowrap .csc-textpic-text {
  margin-left: 0px;
}
*/

/* ========================================================================== */
/*
* Body-Bereich
*/
/* ========================================================================== */

/* -------------------------------------------------------------------------- */
/*
* Allgemeines
*/
/* -------------------------------------------------------------------------- */

#body_line .csc-default,
#body_line .csc-frame {
  max-width: 1170px;

  padding: 0px 0px 0px 0px;
  /* border-bottom: solid 1px #ffffff; */
  margin: 0 auto 28px auto;

  /* background-color: #eeeeee; */
  
  text-align: var(--body-copy-text-align);
}

#body_line hr {
  border: 1px solid #dddddd;
}

#body_line .csc-frame-rulerBefore {
  padding-top: 1.5em;
  border-top: 1px solid #6B8AB6;
  margin-top: 3.0em;
}

#body_line .csc-frame-rulerAfter {
  padding-bottom: 1.5em;
  border-bottom: 1px solid #6B8AB6;
  margin-bottom: 3.0em;
}

#body_line .csc-linkToTop {
  max-width: 1170px;
  margin: 0 auto 2.0em auto;
}
#body_line .csc-linkToTop a {
  display: block;
  color: #012d6c;
  text-decoration: none;
  text-transform: uppercase;
  background: url(../images/icon_pfeil_nach_oben.gif) 0px 8px no-repeat;
  padding: 0px 0px 0px 40px;
  font-weight: 500;
}
#body_line .csc-linkToTop a:hover {
  color: #ff0000;
  background: url(../images/icon_pfeil_nach_oben_active.gif) 0px 8px no-repeat;
}

#body_line a.buttonBuchungsanfrage {
  font-family: 'Roboto', sans-serif;

  font-size: 18rem;
  line-height: 1.50;
  font-weight: 500;

  color: #ffffff;
  
  padding: 15px;
  
  display: block;
  max-width: 300px;

  text-align: center;

  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#eb2f11+0,d22100+100 */
  background: #eb2f11; /* Old browsers */
  background: -moz-linear-gradient(top,  #eb2f11 0%, #d22100 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top,  #eb2f11 0%,#d22100 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,  #eb2f11 0%,#d22100 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eb2f11', endColorstr='#d22100',GradientType=0 ); /* IE6-9 */
  
  border-radius: 5px;
}

#body_line a.buttonBuchungsanfrage:hover {
  color: #ffff00;
}

#body_line a.buttonMehrInfo {
  font-family: 'Roboto', sans-serif;

  font-size: 18rem;
  line-height: 1.50;
  font-weight: 500;

  color: var(--button-mehr-info-font-color);

  padding: 15px;
  
  display: block;
  max-width: 300px;

  text-align: center;

  background-color: var(--button-mehr-info-background-color);
  
  border-radius: 5px;
}

#body_line a.buttonMehrInfo:hover {
  color: #ffff00;
}

#body_line a#nachoben {
  color: #2b5592;
  padding: 0px 0px 0px 20px;
  background: url(../images/bt_nach_oben-no.gif) 0px 4px no-repeat;
}
#body_line a#nachoben:hover {
  color: #ff0000;
  padding: 0px 0px 0px 20px;
  background: url(../images/bt_nach_oben-act.gif) 0px 4px no-repeat;
}

/* -------------------------------------------------------------------------- */
/*
* Ausrichtung des Textes nach Vorgabe der Headline im Typo3-BE
*/
/* -------------------------------------------------------------------------- */

#body_line div.csc-default.csc-header-alignment-left p.bodytext {
  text-align: left;
}
#body_line div.csc-default.csc-header-alignment-center p.bodytext {
  text-align: center;
}
#body_line div.csc-default.csc-header-alignment-right p.bodytext {
  text-align: right;
}

/* -------------------------------------------------------------------------- */
/*
* Headlines, Überschriften
*/
/* -------------------------------------------------------------------------- */

/* -------------------------------------------------------------------------- */
/*
* Anfangs-Baseline
* (kann von nachgelagerten Stylesheets überschrieben werden)
*
* Siehe:
*   - http://joshnh.com/weblog/how-to-set-up-a-baseline-grid/
*
*/
/* -------------------------------------------------------------------------- */

/*
#body_line h1 {
  font-size: 3em;
  line-height: 1;
  margin-bottom: 0.5em;
}

#body_line h2 {
  font-size: 2.25em;
  line-height: 1.333333333333333;
  margin-bottom: 0.6666666666666667em;
}

#body_line h3 {
  font-size: 1.5em;
  line-height: 1;
  margin-bottom: 1em;
}

#body_line h4 {
  font-size: 1.3125em;
  line-height: 1.142857142857143;
  margin-bottom: 1.142857142857143em;
}

#body_line h5 {
  font-size: 1.125em;
  line-height: 1.333333333333333;
  margin-bottom: 1.333333333333333em;
}

#body_line h6 {
  font-size: 1em;
  line-height: 1.5;
  margin-bottom: 1.5em;
}

#body_line p {
  font-size: 1em;
  line-height: 1.5;
  margin-bottom: 1.5em;
}
*/

/* -------------------------------------------------------------------------- */
/*
* Baseline nach Hülsberg-Rainer
*/
/* -------------------------------------------------------------------------- */

/*
#body_line h1 {
  font-size: 2.2857142857142857142857142857143em;
  font-weight: 500;
  line-height: 1.25;
  margin-top: 1.2em;
  margin-bottom: 0.6em;
}
#body_line h1:first-child {
	margin-top: 0.6em;
}

#body_line h2 {
  font-size: 1.7em;
  font-weight: 400;
  line-height: 1.25;
  margin-top: 1.2em;
  margin-bottom: 0.6em;
}

#body_line h3 {
  font-size: 1.5em;
  font-weight: 400;
  line-height: 1.25;
  margin-top: 1.2em;
  margin-bottom: 0.6em;
}

#body_line h4 {
  font-size: 1.3em;
  font-weight: 400;
  line-height: 1.25;
  margin-top: 1.3em;
  margin-bottom: 0.6em;
}

#body_line h5 {
  font-size: 1.3em;
  font-weight: 400;
  line-height: 1.25;
  margin-top: 1.3em;
  margin-bottom: 0.6em;
}

#body_line h1, #body_line h2, #body_line h3, #body_line h4, #body_line h5 {
  color: var(--body-headline-color);
}
*/

/* -------------------------------------------------------------------------- */
/*
* Baseline nach Hülsberg
*/
/* -------------------------------------------------------------------------- */

#body_line h1 {
  font-size: 48rem;
  font-weight: 500;
  line-height: 1.5;
  padding: 45px 0px 20px 0px;
  margin: 0px 0px 13px 0px;
}
#body_line h1.csc-firstHeader {
}
#body_line h1 a {
  color: #ff0000;
}

#body_line h2 {
  font-size: 41.5rem;
  font-weight: 500;
  line-height: 1.3;
  margin: 80px 0px 20px 0px;
}
#body_line h2 em {
  font-size: 30rem;
  font-weight: 300;
  line-height: 1.3;
}

#body_line h3 {
  font-size: 24rem;
  font-weight: 400;
  line-height: 1.3;
  margin: 0px 0px 20px 0px;
}

#body_line h4 {
  font-size: 21rem;
  font-weight: 400;
  line-height: 1.3;
  margin: 0px 0px 20px 0px;
}

#body_line h1, #body_line h2, #body_line h3, #body_line h4, #body_line h5 {
  color: var(--body-headline-color);
}

/* -------------------------------------------------------------------------- */
/*
* Content-Elemente allgemein
*/
/* -------------------------------------------------------------------------- */

/* -------------------------------------------------------------------------- */
/*  CE: Text und Bilder                                                       */
/* -------------------------------------------------------------------------- */

/* ---------------------------- */
/* Allgemein                    */
/* ---------------------------- */

#body_line .csc-textpic {
  text-align: justify;
}

#body_line .csc-textpic-border .csc-textpic-imagewrap img {
  border: 1px solid #a5ceef;
  padding: 2px 2px;
  box-sizing: border-box;
}

#body_line .csc-textpic .csc-textpic-imagewrap .csc-textpic-image {
  margin-bottom: 0px;
}

#body_line .csc-textpic h2 {
  margin-top: 0;
  text-align: left;
}

#body_line .csc-textpic-center .csc-textpic-center-outer {
  position: static;
  float: none;
}

#body_line .csc-textpic-center .csc-textpic-center-inner {
  position: static;
  float: none;
}

/*
Beispiel:
#body_line div.csc-textpic-text {
}
#body_line div.csc-textpic-imagewrap {
}
*/
#body_line .csc-textpic-imagewrap .csc-textpic-imagerow {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  row-gap: 1em;
  column-gap: 1em;

  margin-bottom: 1em;
}

#body_line .csc-textpic-imagewrap  .csc-textpic-imagerow img {
  width: 100%;
  height: auto;
}

#body_line .csc-textpic-imagewrap  .csc-textpic-imagerow .csc-textpic-imagecolumn {
  background-color: #eaf0f8;
  margin: 0;
}
#body_line .csc-textpic-imagewrap  .csc-textpic-imagerow .csc-textpic-imagecolumn:empty {
  background-color: none;
}

/* --- */

#body_line .csc-default figure {
  color: #012d6c;
  width: 100%;
}

#body_line .csc-default figure figcaption {
  background-color: #eaf0f8;

  font-family: 'Roboto';
  font-size: 18rem;
  font-weight: 300;
  line-height: 1.5;
  
  text-align: center;
  
  padding: 1em 1em 1em 1em;
  
  overflow: hidden;
}

#body_line .csc-default figure figcaption h3,
#body_line .csc-default figure figcaption em{
  font-weight: 400;
  font-size: 25rem;
  line-height: 1.75;
  margin: 0;
  display: inline-block;
}

#body_line .csc-default figure figcaption em.small {
  font-size: 20rem;
  line-height: 1.25;
}


@media only screen
and (max-width: 1000px) {

  #body_line .csc-default figure figcaption {
    font-size: 16rem;
  }
  #body_line .csc-default figure figcaption em {
    font-size: 20rem;
  }
  #body_line .csc-default figure figcaption em.smal {
    font-size: 18rem;
  }

}

/* -------------------------------------------- */
/* Steuerung in Abhängigkeit von der Bilderzahl */
/* -------------------------------------------- */
/*
Beispiel:
<div class="csc-textpic-imagewrap" data-csc-images="6" data-csc-cols="2">
*/
#body_line .csc-textpic-imagewrap[data-csc-images~="2"] img,
#body_line .csc-textpic-imagewrap[data-csc-cols~="2"] img {
}

@media only screen
and (max-width: 850px) {

  #body_line .csc-textpic-border .csc-textpic-imagewrap div {
    width: 100%;
  }

  #body_line .csc-textpic-imagewrap .csc-textpic-imagerow {
    grid-template-rows: auto auto;
    grid-template-columns: auto;
  }

}

/* ---------------------------- */
/* Im Text links/rechts         */
/* ---------------------------- */

/* Links */

#body_line div.csc-textpic-intext-left div.csc-textpic-imagewrap {
  margin-right: 3ex;
  margin-bottom: 3ex;
}

#body_line div.csc-textpic-intext-left div.csc-textpic-imagewrap figure {
  width: 100%;
}

#body_line div.csc-textpic-intext-left div.csc-textpic-imagewrap figure img {
  width: 100%;
}

@media only screen
and (max-width: 1000px) {

  #body_line div.csc-textpic-intext-left div.csc-textpic-imagewrap {
    margin-right: 0;
    float: none;
  }

}

/* Rechts */

#body_line div.csc-textpic-intext-right div.csc-textpic-imagewrap {
  margin-left: 3ex;
  margin-bottom: 3ex;
}

#body_line div.csc-textpic-intext-right div.csc-textpic-imagewrap figure {
  width: 100%;
}

#body_line div.csc-textpic-intext-right div.csc-textpic-imagewrap figure img {
  width: 100%;
}

@media only screen
and (max-width: 1000px) {

  #body_line div.csc-textpic-intext-right div.csc-textpic-imagewrap {
    margin-left: 0;
    float: none;
  }

}

/* ---------------------------- */
/* Neben dem Text links/rechts  */
/* ---------------------------- */

#body_line div.csc-textpic-intext-left-nowrap {
  margin-top: 80px;
}

#body_line div.csc-textpic-intext-left-nowrap div.csc-textpic-text {
  margin-left: calc(500px + 3ex);
  /* https://css-tricks.com/a-complete-guide-to-calc-in-css/ */
}

#body_line div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap {
  margin-right: 3ex;
  margin-bottom: 3ex;
}

#body_line div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap figure {
  width: 100%;
}

#body_line div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap figure img {
  width: 500px;
}

@media only screen
and (max-width: 1000px) {

  #body_line div.csc-textpic-intext-left-nowrap div.csc-textpic-text {
    margin-left: 0;
  }

  #body_line div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap {
    margin-right: 0;
    float: none;
  }

  #body_line div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap figure img {
    width: 100%;
  }

}

/* ---------------------------- */
/* Unten: links, mittig, rechts */
/* ---------------------------- */

/* ---------------------------- */
/* Oben: links, mittig, rechts  */
/* ---------------------------- */

/* -------------------------------------------------------------------------- */
/*
* CE: Listen
*/
/* -------------------------------------------------------------------------- */

#body_line ul.csc-bulletlist {
  text-align: left;
}

#body_line ul.csc-bulletlist li {
  padding-left: 25px;
  padding-bottom: 0px;
  margin-left: 0px;
  margin-bottom: 0.75em;
  list-style-type: none;
  background: url(../images/list_bobbl.png) 0px 9px no-repeat;
}

/* -------------------------------------------------------------------------- */
/*
* CE: File-Upload-Links
*/
/* -------------------------------------------------------------------------- */

#body_line .css-filelinks {
  width: 80%;
  margin: 0 auto;
  text-align: left;
}

#body_line .css-filelinks ul li {
  padding: 0.5em !important;
  margin: 0.5em !important;
}

#body_line .css-filelinks ul li:nth-child(2n) {
  background-color: #eeeeee;
}

#body_line .css-filelinks ul li:nth-child(2n+1) {
  background-color: #dddddd;
}

#body_line .css-filelinks ul li div {
  margin: 0 !important;
  padding: 0 !important;
}

#body_line .css-filelinks span.icon img {
  width: 18px !important;
  height: 16px !important;
}

/* -------------------------------------------------------------------------- */
/*
* CE: Menü/Sitemap
*/
/* -------------------------------------------------------------------------- */

#body_line ul.csc-menu {
  width: 80%;
  margin: 0 auto;
  text-align: left;
}

#body_line ul.csc-menu li {
  background: url(../images/list_bobbl.png) no-repeat 10px 9px;
  padding: 0px 0px 0px 35px;
  margin: 0px 0px 0px 0px;
}

/* -------------------------------------------------------------------------- */
/*
* CE: Forms
*/
/* -------------------------------------------------------------------------- */

/* -------------------------------------------------------------------------- */
/*
* CE: Tables
*/
/* -------------------------------------------------------------------------- */

/*
#body_line table.contenttable {
}

#body_line table.contenttable thead {
}
#body_line table.contenttable thead tr {
}
#body_line table.contenttable thead tr.tr-even {
}
#body_line table.contenttable thead tr.tr-odd {
}
#body_line table.contenttable thead tr th {
}
#body_line table.contenttable thead tr.tr-even th {
}
#body_line table.contenttable thead tr.tr-odd th {
}

#body_line table.contenttable tbody {
}
#body_line table.contenttable tbody tr {
}
#body_line table.contenttable tbody tr.tr-even {
}
#body_line table.contenttable tbody tr.tr-odd {
}
#body_line table.contenttable tbody tr td {
}
#body_line table.contenttable tbody tr td a {
}
#body_line table.contenttable tbody tr.tr-even td {
}
#body_line table.contenttable tbody tr.tr-odd td {
}
#body_line table.contenttable tbody tr td.td-0 {
}
#body_line table.contenttable tbody tr td.td-1 {
}
#body_line table.contenttable tbody tr td.td-2 {
}
#body_line table.contenttable tbody tr td.td-3 {
}
#body_line table.contenttable tbody tr td.td-4 {
}
*/

/* --- */

#body_line table.contenttable {
  color: #000000;
  text-align: left;
}

#body_line table.contenttable thead {
}
#body_line table.contenttable thead tr {
  background-color: #274F8D ;
  color: #ffffff;
  font-weight: 500;
}
#body_line table.contenttable thead tr.tr-even {
}
#body_line table.contenttable thead tr.tr-odd {
}
#body_line table.contenttable thead tr th {
  vertical-align: top;
  padding: 7px 20px 7px 7px;
}
#body_line table.contenttable thead tr.tr-even th {

}
#body_line table.contenttable thead tr.tr-odd th {
}

#body_line table.contenttable tbody {
}

#body_line table.contenttable tbody tr {
}
#body_line table.contenttable tbody tr.tr-even {
  background-color: #d9e6fb;
}
#body_line table.contenttable tbody tr.tr-odd {
  background-color: #f1f6ff;
}
#body_line table.contenttable tbody tr td {
  padding: 7px 20px 7px 7px;
  vertical-align: top;
}
#body_line table.contenttable tbody tr td em {
  font-weight: bold;
}
#body_line table.contenttable tbody tr td a {
}
#body_line table.contenttable tbody tr.tr-even  td {
}
#body_line table.contenttable tbody tr.tr-odd  td {
}

#body_line table.contenttable tbody tr td.td-0 {
}
#body_line table.contenttable tbody tr td.td-1 {
}
#body_line table.contenttable tbody tr td.td-2 {
}

#body_line table.contenttable img {
  vertical-align: bottom;
}
#body_line table.contenttable tbody tr td a {
  font-style: italic;
}
#body_line table.contenttable tbody tr td em {
  font-weight: bold;
}

/* --- */

#body_line table.contenttable-0 {
  width: 100%;
}

@media screen and (max-width: 950px) {

  #body_line table.contenttable {
    font-size: 17px;
  }

}

@media screen and (max-width: 750px) {

  #body_line table.contenttable {
    font-size: 14px;
  }

}

@media screen and (max-width: 650px) {

  #body_line table.contenttable {
    font-size: 14px;
    font-weight: 500;
  }

  #body_line table.contenttable thead {
    display: none;
  }

  #body_line table.contenttable tbody tr {
    width: 100%;
    float: left;
    margin-bottom: 2em;
  }

  #body_line table.contenttable tbody tr::before {
		display: block;
		width: auto !important;
		padding: 1em;
		border-bottom: 1px solid #ffffff;

		word-wrap: break-word;
		background: #274F8D;
    color: #ffffff;
		font-weight: 500;
  }

  #body_line table.contenttable tbody tr td {
		display: block;
		width: auto !important;
		padding: 1em;
		border-bottom: 1px solid #ffffff;
	}
  
  #body_line table.contenttable tbody tr td::before {
		word-wrap: break-word;
		background: #274F8D;
    color: #ffffff;
		border-right: 1px solid #ffffff;
		border-bottom: 1px solid #ffffff;
		width: 20%;
		float: left;
		padding: 1em;
		font-weight: 500;
		margin: -1em 1em -1em -1em;
	}
  
}

@media screen and (max-width: 400px) {

  #body_line table.contenttable tbody tr::before {
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 4px 0.5em 4px 4px !important;
  }

  #body_line table.contenttable tbody tr td {
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 4px 0.5em 4px 4px !important;
  }

  #body_line table.contenttable tbody tr td::before {
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 4px 0.5em 4px 4px !important;
    margin: -4px 0.5em -4px -4px !important;
  }

}

@media screen and (max-width: 360px) {

  #body_line table.contenttable tbody tr::before {
    font-size: 10px !important;
  }

  #body_line table.contenttable tbody tr td {
    font-size: 10px !important;
  }

  #body_line table.contenttable tbody tr td::before {
    font-size: 10px !important;
  }

}

@media screen and (max-width: 260px) {

  #body_line table.contenttable tbody tr::before {
    font-size: 1px !important;
  }

  #body_line table.contenttable tbody tr td {
    font-size: 1px !important;
  }

  #body_line table.contenttable tbody tr td::before {
    font-size: 1px !important;
  }

}

/* --- */

table.terminuebersicht tbody tr td.td-0 {
  width: 46%;
}
table.terminuebersicht tbody tr td.td-1 {
  width: 17%;
}
table.terminuebersicht tbody tr td.td-2 {
  width: 27%;
}
table.terminuebersicht tbody tr td.td-3 {
  width: 10%;
}

@media screen and (max-width: 650px) {

  table.terminuebersicht tbody tr::before {
    content: 'Reisetermin';
  }
  
  table.terminuebersicht tbody tr td.td-0::before {
		content: 'Reise';
  }
  table.terminuebersicht tbody tr td.td-1::before {
		content: 'Termin';
  }
  table.terminuebersicht tbody tr td.td-2::before {
		content: 'Schiff';
  }
  table.terminuebersicht tbody tr td.td-3::before {
		content: 'Info';
  }
  
}

#body_line table.contenttable.lektoreneinsaetze em {
  font-weight: 400;
  font-style: italic;
}

/* -------------------------------------------------------------------------- */
/*
* Sonderelemente
*/
/* -------------------------------------------------------------------------- */

/* -------------------------------------------------------------------------- */
/*
* Layout 125: Element über die volle Breite
*/
/* -------------------------------------------------------------------------- */

#body_line .csc-default.layout-125 {
  max-width: none;
}
#body_line .csc-default.layout-125 figure {
}
#body_line .csc-default.layout-125 figure figcaption {
  color: #ffffff;
  background-color: transparent;
  
  font-family: 'Roboto Condensed';
  font-size: 25rem;
  font-weight: 300;
  line-height: 1.6;

  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  
  text-align: center;
}
#body_line .csc-default.layout-125 figure figcaption em {
  color: #ffffff;
  
  font-family: 'Roboto';
  font-size: 50rem;
  font-weight: 500;
  line-height: 1.2;
}

/* -------------------------------------------------------------------------- */
/*
* Layout 160: Werbestreifen
*/
/* -------------------------------------------------------------------------- */

#body_line .csc-default.layout-160 {
  background-color: #eaf0f8;
  padding: 1em;
}

#body_line .csc-default.layout-160 .csc-textpic-imagewrap  .csc-textpic-imagerow img {
  width: auto;
  height: auto;
  margin: 0 auto;
}

#body_line .csc-default.layout-160 .csc-textpic-imagewrap .csc-textpic-imagerow {
  grid-template-rows: 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  margin: 0 auto;
}

#body_line .csc-default.layout-160 .csc-textpic-imagewrap  .csc-textpic-imagerow .csc-textpic-imagecolumn {
  background-color: transparent;
}

@media only screen
and (max-width: 850px) {

  #body_line .csc-default.layout-160 .csc-textpic-imagewrap .csc-textpic-imagerow {
  grid-template-rows: 1fr;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    margin: 0 auto;
  }

}

/* -------------------------------------------------------------------------- */
/*
* Werbestreifen
*/
/* -------------------------------------------------------------------------- */

#body_line div.csc-default.werbestreifen {
  padding: 30px 20px 16px 20px;
  /* border-top: 1px solid #dedeff; */
  /* border-bottom: 1px solid #dedeff; */
  margin: 0px auto 28px auto !important;
  background-color: #EAF0F8;
  box-sizing: border-box;
  max-width: none;
}

#body_line div.csc-default.werbestreifen > .padding {
  max-width: 1170px;
  margin: 0 auto;
}

#body_line div.csc-default.werbestreifen h2 { 
  display: block;
  color: #fff;
  background-color: #87cd00;
  line-height: 1.25;
  padding: 0.25em;
  margin-top: 0.2em;
  margin-bottom: 1.25em;
}

#body_line div.csc-default.werbestreifen ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-rows: 1fr;
  grid-row-gap: 20px;
  grid-column-gap: 10px;
  
  text-align: center;
}

#body_line div.csc-default.werbestreifen ul li {
  /* margin: 0px 0px 2.0em 0px; */
  max-width: 280px;
  background-color: #ffffff;
  color: #012d6c;
  position: relative;
}
#body_line div.csc-default.werbestreifen ul li figure div {
  background-color: #012d6c;
  padding: 0.75em;
  min-height: 102px;
}
#body_line div.csc-default.werbestreifen ul li figure div h3 {
  font-size: 18rem;
  margin: 0;
}
#body_line div.csc-default.werbestreifen ul li figure div h3 a {
  color: #ffffff;
  text-decoration: none;
}
#body_line div.csc-default.werbestreifen ul li figure div h3 a:hover {
  color: #ff0000;
}
#body_line div.csc-default.werbestreifen ul li figure div.fusszeile {
  background-color: #87cd00;
  color: #ffffff;
  font-size: 18rem;
  padding: 0.75em;
  position: absolute;
  left: 0;
  bottom: 10px;
  width: 100%;
  min-height: 0;
}
#body_line div.csc-default.werbestreifen ul li figure div.fusszeile a {
  color: #ffffff;
  text-decoration: none;
}
#body_line div.csc-default.werbestreifen ul li figure div.fusszeile a:hover {
  color: #ff0000;
}
/*
#body_line div.csc-default.werbestreifen ul li:nth-child(1) {
  margin-left: 0px;
  margin-right: 16px;
}
#body_line div.csc-default.werbestreifen ul li:nth-child(2) {
  margin-left: 0px;
  margin-right: 16px;
}
#body_line div.csc-default.werbestreifen ul li:nth-child(3) {
  margin-left: 0px;
  margin-right: 16px;
}
#body_line div.csc-default.werbestreifen ul li:nth-child(4) {
  margin-left: 0px;
  margin-right: 0px;
}
*/
#body_line div.csc-default.werbestreifen ul li figcaption {
  padding: 1.5em 1.5em 7.0em 1.5em;
  min-height: 2.0em;
  background-color: #ffffff;
  /*background-color: #071e4a;*/
  /*background-color: #012d6c;*/
  font-size: 15rem;
  font-weight: 400;
  line-height: 1.75;
  text-align: left;
}

#body_line div.csc-default.werbestreifen img {
  vertical-align: middle;
  width: auto;
}
/*
@media only screen
and (max-width: 1224px) {

  #body_line div.csc-default.werbestreifen ul li:nth-child(1) {
    margin-left: 0px;
    margin-right: 24px;
  }
  #body_line div.csc-default.werbestreifen ul li:nth-child(2) {
    margin-left: 0px;
    margin-right: 24px;
  }
  #body_line div.csc-default.werbestreifen ul li:nth-child(3) {
    margin-left: 0px;
    margin-right: 0px;
  }
  #body_line div.csc-default.werbestreifen ul li:nth-child(4) {
    margin-left: 0px;
    margin-right: 0px;
  }

}

@media only screen
and (max-width: 1004px) {

  #body_line div.csc-default.werbestreifen ul li:nth-child(1) {
    margin-left: 0px;
    margin-right: 70px;
  }
  #body_line div.csc-default.werbestreifen ul li:nth-child(2) {
    margin-left: 0px;
    margin-right: 0px;
  }
  #body_line div.csc-default.werbestreifen ul li:nth-child(3) {
    margin-left: 0px;
    margin-right: 70px;
  }
  #body_line div.csc-default.werbestreifen ul li:nth-child(4) {
    margin-left: 0px;
    margin-right: 0px;
  }

}

@media only screen
and (max-width: 708px) {

  #body_line div.csc-default.werbestreifen ul li {
    width: 100%;
    max-width: none;
  }

  #body_line div.csc-default.werbestreifen ul li:nth-child(1) {
    margin-left: 0px;
    margin-right: 0px;
  }

  #body_line div.csc-default.werbestreifen ul li:nth-child(2) {
    margin-left: 0px;
    margin-right: 0px;
  }

  #body_line div.csc-default.werbestreifen ul li:nth-child(3) {
    margin-left: 0px;
    margin-right: 0px;
  }

  #body_line div.csc-default.werbestreifen ul li:nth-child(4) {
    margin-left: 0px;
    margin-right: 0px;
  }

}
*/

/* -------------------------------------------------------------------------- */
/* Akkordeon                                                                  */
/* -------------------------------------------------------------------------- */
/*
div.accordion-start dl dt {
  box-sizing: border-box;
  width: 100%;
  min-height: 35px;
  background: url(../images/accordion-pfeilchen.png) left top no-repeat, linear-gradient(#EDF0F5, #EDF0F5);
  padding: 3px 0px 0px 62px;
  margin: 0px 0px 18px 0px;
}

div.accordion-start dl dd {
  margin: 0px 0px 17px 0px;
}

div.accordion-start dl dd h5 {
  display: none;
}
*/

/* -------------------------------------------------------------------------- */
/*
* ODS-OSM-Karten
*/
/* -------------------------------------------------------------------------- */

/*
div.tx-odsosm-pi1[style] {
  height: 75vw !important;
}

div#osm_88852 {
  max-height: 700px;
}
*/

#body_line div.poi-content {
  width: 300px;
}

#body_line div.poi-content img {
  width: 250px;
  height: auto;
}

div.leaflet-popup-content h3 {
  font-size: 16rem;
}

div.leaflet-popup-content {
  font-size: 14rem;
}

div.leaflet-popup-content img {
  width: 80px;
  height: 60px;
}

/* -------------------------------------------------------------------------- */
/*
* Google-Karten
*/
/* -------------------------------------------------------------------------- */

#body_line .googlekarte-responsive {
  position: relative;
  padding-bottom: 56%;
  height: 0;
  overflow: hidden;
}

#body_line .googlekarte-responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* -------------------------------------------------------------------------- */
/*
* Responsive Einbindung von iframes bspw. für Videos:
*
* <div class="mediaobject-responsive">
*   <iframe width="560" height="315" src="https://www.youtube.com/embed/v6dyez7EUzs" frameborder="0" allowfullscreen></iframe>
* </div>
*
* Thanks to: http://www.holgerkoenemann.de/ein-vimeo-oder-youtube-video-responsive-einbinden/
*/
/* -------------------------------------------------------------------------- */

#body_line .mediaobject-responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#body_line .mediaobject-responsive  {
  position: relative;
  padding-bottom: 56.25%; /* Default for 1600x900 videos 16:9 ratio*/
  padding-top: 0px;
  height: 0;
  overflow: hidden;
}

/* -------------------------------------------------------------------------- */
/*
* CSS Styled Slider
*
* See:
*
* https://corpocrat.com/2015/12/09/20-cool-pure-css-sliders-without-jqueryjavascript/
* https://codepen.io/dudleystorey/full/kFoGw
* https://codepen.io/anon/pen/oymevJ
*
*/
/* -------------------------------------------------------------------------- */

div#captioned-gallery-slider-overlay { 
  /* width: 100%; */
  /* height: 468px; */
  overflow: hidden;
  position: absolute;
  top: 0px;
  /* background-color: rgba(255, 0, 0, 0.3); */
  z-index: 1;
  /* background: url(../svgs/icon_spitzbergenkreuzfahrt.svg) no-repeat left top; */
}

div#captioned-gallery-slider-container { 
  /* width: 100%; */
  /* height: 468px; */
  overflow: hidden;
  position: relative;
}

div#captioned-gallery-slider-overlay-attendant {
  width: 100%;
  height: 100%;
  position: absolute;
  background: url(../images/layer_logo_white.png), url(../images/layer_welle_transparent.pn
  background-size: contain, contain;
  background-repeat: no-repeat, no-repeat;
  background-position: 0% 0%, 0% 0%;
  z-index: 1;
}

div#captioned-gallery-slider-container-attendant {
  /* width: 1920px; */
  /* height: 468px; */
}

div#captioned-gallery-slider,
div#captioned-gallery-slider * {
  box-sizing: border-box;
}

@keyframes slidy {
0% { left: 0%; }
20% { left: 0%; }
25% { left: -100%; }
45% { left: -100%; }
50% { left: -200%; }
70% { left: -200%; }
75% { left: -300%; }
95% { left: -300%; }
100% { left: -400%; }
}

div#captioned-gallery-slider figure { 
  margin: 0;
  background: #101010;
  font-family: sans-serif;
  font-weight: 100;
}

div#captioned-gallery-slider { 
  width: 100%;
  overflow: hidden; 
}

div#captioned-gallery-slider figure.slider { 
  position: relative;
  width: 500%;
  font-size: 0;
  animation: 30s slidy infinite; 
}

div#captioned-gallery-slider figure.slider figure { 
  width: 20%;
  height: auto;
  display: inline-block;
  position: inherit;
  
  background-size: cover !important;
  background-position: center center !important;
}

div#captioned-gallery-slider figure.slider img {
  width: 100%;
  height: auto;
  
  visibility: hidden;
  min-height: 200px;
  max-height: 320;
}

div#captioned-gallery-slider figure.slider figure figcaption { 
  position: absolute;
  bottom: 0;
  background: rgba(0,0,0,0.4);
  color: #fff;
  width: 100%;
  font-size: 20rem;
  padding: 0.6rem; 
}

/* -------------------------------------------------------------------------- */
/*
* CSS Styled Fader
*/
/* -------------------------------------------------------------------------- */

div#captioned-gallery-fader-overlay { 
}

div#captioned-gallery-fader-container { 
  overflow: hidden;
  position: relative;
}

div#captioned-gallery-fader-overlay-attendant {
  width: 100%;
  height: 100%;
  position: absolute;
  background: url(../images/layer_logo_white.png), url(../images/layer_welle_transparent.png);
  background-size: 40vw, contain;
  background-repeat: no-repeat, no-repeat;
  background-position: 1vw 4vw, 0% 0%;
  z-index: 1;
}

div#captioned-gallery-fader-container-attendant {
}

div#captioned-gallery, div#captioned-gallery * {
  box-sizing: border-box;
}

.slides {
    /* Größe festlegen: */
    width: 100%;
    height: auto;

    overflow:hidden;
    position:relative;
}
.slides ul {
    list-style:none;
    position:relative;
}
.slides ul li {
  background-size:     cover;
  background-repeat:   no-repeat;
  background-position: center center;  
}

/* keyframes #anim_slides */
@-webkit-keyframes anim_slides {
    0% {
        opacity:0;
    }
    6% {
        opacity:1;
    }
    24% {
        opacity:1;
    }
    30% {
        opacity:0;
    }
    100% {
        opacity:0;
    }
}
@-moz-keyframes anim_slides {
    0% {
        opacity:0;
    }
    6% {
        opacity:1;
    }
    24% {
        opacity:1;
    }
    30% {
        opacity:0;
    }
    100% {
        opacity:0;
    }
}
.slides ul li {
    opacity:0;
    position:absolute;
    top:0;
    width: 100%;
    /* Otherwise the slider image will not fill entire width, even */
    /* when the image is set to width 100%! */
    /* css3 animation */
    -webkit-animation-name: anim_slides;
    -webkit-animation-duration: 32.0s;
    -webkit-animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-direction: normal;
    -webkit-animation-delay: 0;
    -webkit-animation-play-state: running;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-name: anim_slides;
    -moz-animation-duration: 32.0s;
    -moz-animation-timing-function: linear;
    -moz-animation-iteration-count: infinite;
    -moz-animation-direction: normal;
    -moz-animation-delay: 0;
    -moz-animation-play-state: running;
    -moz-animation-fill-mode: forwards;

    animation-name: anim_slides;
    animation-duration: 32.0s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: normal;
    animation-delay: 0;
    animation-play-state: running;
    animation-fill-mode: forwards;
}
.slides ul li:first-child {
  position: relative;
}
/* css3 delays */
.slides ul  li:nth-child(1), .slides ul  li:nth-child(1) div {
    -webkit-animation-delay: 2.0s;
    -moz-animation-delay: 2.0s;
}
.slides ul  li:nth-child(2), .slides ul  li:nth-child(2) div {
    -webkit-animation-delay: 6.0s;
    -moz-animation-delay: 6.0s;
}
.slides ul  li:nth-child(3), .slides ul  li:nth-child(3) div {
    -webkit-animation-delay: 10.0s;
    -moz-animation-delay: 10.0s;
}
.slides ul  li:nth-child(4), .slides ul  li:nth-child(4) div {
    -webkit-animation-delay: 14.0s;
    -moz-animation-delay: 14.0s;
}
.slides ul  li:nth-child(5), .slides ul  li:nth-child(5) div {
    -webkit-animation-delay: 18.0s;
    -moz-animation-delay: 18.0s;
}
.slides ul  li:nth-child(6), .slides ul  li:nth-child(6) div {
    -webkit-animation-delay: 22.0s;
    -moz-animation-delay: 22.0s;
}
.slides ul  li:nth-child(7), .slides ul  li:nth-child(7) div {
    -webkit-animation-delay: 26.0s;
    -moz-animation-delay: 26.0s;
}
.slides ul  li:nth-child(8), .slides ul  li:nth-child(8) div {
    -webkit-animation-delay: 30.0s;
    -moz-animation-delay: 30.0s;
}
.slides ul li img {
    display:block;
    width: 100%;
    height: auto;
    visibility: hidden;
}
/* keyframes #anim_titles */
@-webkit-keyframes anim_titles {
    0% {
        left:100%;
        opacity:0;
    }
    5% {
        left:10%;
        opacity:1;
    }
    20% {
        left:10%;
        opacity:1;
    }
    25% {
        left:100%;
        opacity:0;
    }
    100% {
        left:100%;
        opacity:0;
    }
}
@-moz-keyframes anim_titles {
    0% {
        left:100%;
        opacity:0;
    }
    5% {
        left:10%;
        opacity:1;
    }
    20% {
        left:10%;
        opacity:1;
    }
    25% {
        left:100%;
        opacity:0;
    }
    100% {
        left:100%;
        opacity:0;
    }
}
.slides ul li div {
    /* Anzeige deaktivieren: */
    display: none;
    
    background-color:#000000;
    border-radius:10px 10px 10px 10px;
    box-shadow:0 0 5px #FFFFFF inset;
    color:#FFFFFF;
    font-size:26px;
    left:10%;
    margin:0 auto;
    padding:20px;
    position:absolute;
    top:50%;
    width:200px;
    /* css3 animation */
    -webkit-animation-name: anim_titles;
    -webkit-animation-duration: 32.0s;
    -webkit-animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-direction: normal;
    -webkit-animation-delay: 0;
    -webkit-animation-play-state: running;
    -webkit-animation-fill-mode: forwards;

    -moz-animation-name: anim_titles;
    -moz-animation-duration: 32.0s;
    -moz-animation-timing-function: linear;
    -moz-animation-iteration-count: infinite;
    -moz-animation-direction: normal;
    -moz-animation-delay: 0;
    -moz-animation-play-state: running;
    -moz-animation-fill-mode: forwards;

    name: anim_titles;
    duration: 32.0s;
    timing-function: linear;
    iteration-count: infinite;
    direction: normal;
    delay: 0;
    play-state: running;
    fill-mode: forwards;
}

/* -------------------------------------------------------------------------- */
/*
* Buchungsformular
*/
/* -------------------------------------------------------------------------- */

#body_line form[name="Buchungsanfrageformular"] {
  max-width: 1170px;
  margin: 0 auto;
  /* background-color: pink; */
  padding: 0px 19px 0px 19px;
}

#body_line form[name="Buchungsanfrageformular"] .pflichtfeld {
  /* color: #ff0000; */
  font-weight: 400;
}
#body_line form[name="Buchungsanfrageformular"] .pflichtfeld:after {
  /* content: "(*)"; */
}

.pflichtfeld .form-control {
  background-color: #f5f5f5;
}

/* ---------------- */
/* Bootstrap-Bugfix */
/* See: https://mdbootstrap.com/support/jquery/checkbox-required-not-work */

/* Anpassung Bootstrap, wegen des font-size: 1px ... */
.form-control {
  height: calc(1.5em + 1em + 2px);
  font-size: 18rem;
}

.form-group {
  margin-bottom: 1.5em;
}

.btn {
  font-size: 22rem;
}

input[type="checkbox"]#datenspeicherungakzeptiert {
  width: 10%;
}

/* ---------------- */

#body_line form[name="Buchungsanfrageformular"] ul.csc-bulletlist li {
  font-size: 0.75em;
  background: url(../images/list_bobbl.png) 0px 4px no-repeat;
}

#body_line form[name="Buchungsanfrageformular"] p.hinweistext {
  margin-top: 0.5em;
  font-size: 0.75em;
}

#body_line form[name="Buchungsanfrageformular"] p.hinweistext em {
  color: #1046a0;
}

#body_line form[name="Buchungsanfrageformular"] p.hinweistext b {
  font-weight: 400;
}

#body_line a.zurueckzumformular {
  display: block;
  color: #012d6c;
  text-decoration: none;
  text-transform: uppercase;
  background: url(../images/icon_pfeil_nach_oben.gif) 0px 8px no-repeat;
  padding: 0px 0px 0px 40px;
  font-weight: 500;
}
#body_line a.zurueckzumformular:hover {
  color: #ff0000;
  background: url(../images/icon_pfeil_nach_oben_active.gif) 0px 8px no-repeat;
}

/* -------------------------------------------------------------------------- */
/*
* Indexed Search
*/
/* -------------------------------------------------------------------------- */

#body_line div.tx-indexedsearch {
}

#body_line div.tx-indexedsearch em {
  color: #1046a0;
  font-weight: 500;
}

#body_line div.tx-indexedsearch  strong.tx-indexedsearch-redMarkup {
  color: #ff0000;
}

#body_line div.tx-indexedsearch .link-to-other-search {
  margin: 1.5em 0px 1.5em 0px;
}

#body_line div.tx-indexedsearch .link-to-other-search a {
  display: inline-block;
  color: #012d6c;
  text-decoration: none;
  text-transform: uppercase;
  background: url(../images/icon_pfeil_nach_oben.gif) 0px 8px no-repeat;
  padding: 0px 0px 0px 40px;
  font-weight: 500;
}
#body_line div.tx-indexedsearch .link-to-other-search a:hover {
  color: #ff0000;
  background: url(../images/icon_pfeil_nach_oben_active.gif) 0px 8px no-repeat;
}

#body_line div.tx-indexedsearch div.rules {
  font-size: 15rem;
  margin-bottom: 1.5em;
}

#body_line div.tx-indexedsearch div.tx-indexedsearch-whatis {
  background-color: #1046a0;
  color: #ffffff;
  padding: 0.5em;
  font-weight: 400;
}

#body_line div.tx-indexedsearch div.tx-indexedsearch-sectionlinks {
  margin-bottom: 1.5em;
}

#body_line div.tx-indexedsearch div.tx-indexedsearch-sectionlinks ul li {
  padding-left: 15px;
  background: url(../images/icon_pfeil_nach_rechts_klein.gif) 0px 7px no-repeat;
}

#body_line div.tx-indexedsearch div.section-head {
  background-color: #1046a0;
  color: #ffffff;
  padding: 0.5em;
  font-weight: 400;
  margin-bottom: 0.5em;
}

#body_line div.tx-indexedsearch div.section-head div.sectiontitle {
  float: left;
  width: auto;
}
#body_line div.tx-indexedsearch div.section-head div.sectiontitle em {
  font-style: italic;
}
#body_line div.tx-indexedsearch div.section-head div.sectiontitle a {
  color: #ffffff;
}

#body_line div.tx-indexedsearch div.section-head div.sectiondetails {
  float: right;
  width: auto;
}

#body_line div.tx-indexedsearch div.sections {
}

#body_line div.tx-indexedsearch p.tx-indexedsearch-noresults {
  color: #1046a0;
  padding: 0.5em;
}

#body_line div.tx-indexedsearch div.tx-indexedsearch-browsebox {
  color: #1046a0;
  padding: 0.5em;
}

#body_line div.tx-indexedsearch div.tx-indexedsearch-browsebox ul.browsebox {
  margin-bottom: 1.5em;
}

#body_line div.tx-indexedsearch div.tx-indexedsearch-browsebox ul.browsebox li {
  display: inline-block;
  padding-right: 0.5em;
}
#body_line div.tx-indexedsearch div.tx-indexedsearch-browsebox ul.browsebox li:last-child {
  padding-right: 0;
}

#body_line div.tx-indexedsearch div.one-hit {
  margin-bottom: 1.5em;
  padding: 0.5em;
}

#body_line div.tx-indexedsearch div.one-hit:nth-child(2n) {
  background-color: #f9f9f9;
}

#body_line div.tx-indexedsearch div.one-hit:nth-child(2n+1) {
  background-color: #eeeeee;
}

#body_line div.tx-indexedsearch div.clearer {
  width: 0;
  clear: both;
}

#body_line div.tx-indexedsearch div.header-row div.icon {
  float: left;
  width: auto;
}
#body_line div.tx-indexedsearch div.header-row div.number {
  float: left;
  width: auto;
}
#body_line div.tx-indexedsearch div.header-row div.title {
  float: left;
  width: auto;
}
#body_line div.tx-indexedsearch div.header-row div.rating {
  float: right;
  width: auto;
  text-align: right;
}

#body_line div.tx-indexedsearch div.description {
  font-weight: 400;
}

/* -------------------------------------------------------------------------- */
/*
* Rechtliche Texte
*/
/* -------------------------------------------------------------------------- */

div.legal h1:before {
  content: counter(numh1) ". ";
}
div.legal h1 {
  counter-increment: numh1 1;
  counter-reset: numh2;
}

div.legal h2:before {
  content: counter(numh2) ". ";
}
div.legal h2 {
  counter-increment: numh2 1;
  counter-reset: numh3;
}

div.legal h3:before {
  content: counter(numh2) "." counter(numh3) ". ";
}
div.legal h3 {
  counter-increment: numh3 1;
}

div.legal h4:before {
  content: counter(numh2) "." counter(numh3) "." counter(numh4) ". ";
}
div.legal h4 {
  counter-increment: numh4 1;
}

div.legal h5:before {
  content: counter(numh2) "." counter(numh3) "." counter(numh4) "." counter(numh5) ". ";
}
div.legal h5 {
  counter-increment: numh5 1;
}

div.legal ul {
  text-align: left;
}

div.legal ul li {
  padding-left: 25px;
  padding-bottom: 0px;
  margin-left: 0px;
  margin-bottom: 0.75em;
  list-style-type: none;
  background: url(../images/list_bobbl.png) 0px 9px no-repeat;
}

/* -------------------------------------------------------------------------- */
/*
* Reiseveranstalter, Werbeeinträge, Übersicht
*/
/* -------------------------------------------------------------------------- */

div.reiseangebote.reiseveranstalter #body_line {
}

div.reiseangebote.reiseveranstalter #body_line .csc-textpic-imagerow {
  row-gap: 1em;
  column-gap: 1.5em;
  margin-bottom: 1.5em;
}

div.reiseangebote.reiseveranstalter #body_line .csc-textpic-imagecolumn {
  background-color: #eaf0f8;
  border: 2px solid #eeeeee;
  border-radius: 20px;
  overflow: hidden;
}

div.reiseangebote.reiseveranstalter #body_line .csc-textpic-imagecolumn figure {
  padding: 0px;
}

div.reiseangebote.reiseveranstalter #body_line .csc-textpic-imagecolumn figure figcaption {
  line-height: 2.5;
}

div.reiseangebote.reiseveranstalter #body_line .csc-textpic-imagecolumn figure figcaption em {
  line-height: 1.25;
}

/* -------------------------------------------------------------------------- */
/*
* Reiseveranstalter, Einzelportraits
*/
/* -------------------------------------------------------------------------- */

div#content.reiseveranstalter div#body_line div.csc-default.layout-300 h2 em,
div#content.reiseveranstalter div#body_line div.csc-frame.layout-300 h2 em {
  font-size: 20rem;
}

div#content.reiseveranstalter div#body_line div.csc-default.layout-300,
div#content.reiseveranstalter div#body_line div.csc-frame.layout-300 {
  text-align: left;
}

div#content.reiseveranstalter div#body_line div.csc-frame.layout-300 p.bodytext {
  font-size: 15rem;
  line-height: 22rem;
  color: #282828;
  margin-bottom: 1.6em;
}

div#content.reiseveranstalter div#body_line div.csc-frame.layout-300 p.bodytext:last-child {
  margin-bottom: 2.0em;
}

div#content.reiseveranstalter div#body_line div.csc-default.layout-300 p.bodytext,
div#content.reiseveranstalter div#body_line div.csc-default.layout-300 ul.csc-bulletlist {
  font-size: 15rem;
  line-height: 22rem;
  color: #282828;
  margin-bottom: 0.6em;
}

div#content.reiseveranstalter div#body_line div.csc-default.layout-300 p.bodytext em,
div#content.reiseveranstalter div#body_line div.csc-frame.layout-300 p.bodytext em {
  color: #282828;
  font-weight: 400;
}

div#content.reiseveranstalter div#body_line div.csc-default.layout-300 p.bodytext a,
div#content.reiseveranstalter div#body_line div.csc-frame.layout-300 p.bodytext a {
  color: #012d6c;
}

div#content.reiseveranstalter div#body_line div.csc-default.layout-300 p.bodytext a:hover,
div#content.reiseveranstalter div#body_line div.csc-frame.layout-300 p.bodytext a:hover {
  color: #ff0000;
}

div#content.reiseveranstalter div#body_line div.csc-frame-rulerBefore.layout-300 {
  border-top: 1px solid #8096b5;
}

div#content.reiseveranstalter div#body_line div.csc-frame-rulerBefore.layout-300 h2 {
  font-size: 29rem;
  margin-top: 35px;
}

div#content.reiseveranstalter div#body_line div.csc-default.layout-300 h3 {
  font-size: 21rem;
  margin-top: 25px;
}

div#content.reiseveranstalter div#body_line div.csc-frame-rulerBefore.layout-300 div.csc-header {
  /* width: 50%; */
  /* position: absolute; */
}

div#content.reiseveranstalter div#body_line div.csc-frame-rulerBefore.layout-300 div.csc-textpic {
  /* margin-top: 35px; */
}

div#content.reiseveranstalter div#body_line div.csc-frame-rulerBefore.layout-300 div.csc-textpic-text {
  width: 50%;
  margin-top: 90px;
}

div#content.reiseveranstalter div#body_line div.csc-frame-rulerBefore.layout-300 div.csc-textpic-imagewrap {
  width: 50%;
  margin-left: 0px;
}

div#content.reiseveranstalter div#body_line div.csc-frame-rulerBefore.layout-300 figure {
  margin: 0 auto;
}

div#content.reiseveranstalter div#body_line div.csc-frame-rulerBefore.layout-300 figure img {
  width: 100%;
  max-width: 300px;
}

div#content.reiseveranstalter div#body_line ul.csc-bulletlist {
  text-align: left;
}

div#content.reiseveranstalter div#body_line ul.csc-bulletlist li {
  /* font-size: 15rem; */
  padding-left: 25px;
  padding-bottom: 0px;
  margin-left: 0px;
  margin-bottom: 0.5em;
  list-style-type: none;
  background: url(../images/list_bobbl.png) 0px 8px no-repeat;
}

div#content.reiseveranstalter div#body_line div.css-filelinks ul.layout-300 {
  padding-left: 0px;
}

div#content.reiseveranstalter div#body_line div.css-filelinks ul.layout-300 li {
  font-size: 15rem;
  padding-left: 25px;
  padding-bottom: 0px;
  margin-left: 0px;
  margin-bottom: 0.5em;
  list-style-type: none;
  background: url(../images/list_bobbl.png) 0px 3px no-repeat;
}

/* -------------------------------------------------------------------------- */
/*
* Reiseangebote
*/
/* -------------------------------------------------------------------------- */


#body_line .padding div.csc-frame.csc-frame-reiseangebote .columnItem.columnItemFirst {
  margin-bottom: 1em;
}

#body_line .padding div.csc-frame.csc-frame-reiseangebote {
  padding: 4% 4% 4% 4%;
  background-color: #87cd00;
  color: #ffffff;
}

#body_line .padding div.csc-frame.csc-frame-reiseangebote .csc-default {
  margin: 0px 0px 0px 0px;
}

#body_line .padding div.csc-frame.csc-frame-reiseangebote figcaption.csc-textpic-caption {
  background-color: #ffffff;
}

#body_line .padding div.csc-frame.csc-frame-reiseangebote h3 {
  margin-top: 0em;
  color: #ffffff;
  padding-left: 39px;
  background: url(../images/img_kalender_buchung.png) no-repeat 1px 5px;
}

#body_line .padding div.csc-frame.csc-frame-reiseangebote p.bodytext {
  font-weight: 400;
}

#body_line .padding div.csc-frame.csc-frame-reiseangebote em {
  color: #ffffff;
}

#body_line .padding div.csc-frame.csc-frame-reiseangebote a {
  color: #ffffff;
}
#body_line .padding div.csc-frame.csc-frame-reiseangebote a:hover {
  color: #ff0000;
}

#body_line .padding div.csc-frame.csc-frame-reiseangebote a.buttonBuchungsanfrage {
  color: #ffffff;
}
#body_line .padding div.csc-frame.csc-frame-reiseangebote a.buttonBuchungsanfrage:hover {
  color: #ffff00;
}

/* ========================================================================== */
/*
* Footer-Bereich
*/
/* ========================================================================== */

#postfix_column_2_2 .csc-default {
  padding: 30px 0px 0px 0px;
}
