@media screen and (max-width: 900px) {
  body #page > .content .flow {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  body #page > .content .mobile_full_width img {
    width: 100% !important;
    height: auto !important; } }

@media screen and (max-width: 630px) {
  body #page > .content .float_right,
  body #page > .content .float_left {
    float: none;
    margin: 0 !important;
    padding: 0 !important;
    margin-bottom: 10px !important;
    text-align: center; } }

@media screen and (max-width: 1110px) {
  header div.topbar {
    width: 100px;
    right: 0; }
    header div.topbar div {
      overflow: hidden;
      width: 20px; }
    header div.topbar + .search {
      right: 0;
      width: 100%;
      height: 40px; }
      header div.topbar + .search input {
        height: 40px; }
      header div.topbar + .search.active {
        margin-top: 140px; }
  header div.mainMenu {
    display: none; }
  header div.hamburger {
    display: block; } }

@media screen and (max-width: 420px) {
  header .logo {
    top: 24px; }
    header .logo img {
      width: 200px; } }

@media screen and (max-width: 700px) {
  body #page > .sub-info .breadcrumb {
    display: none; } }

@media screen and (max-width: 1060px) {
  .swiper .swiper-slide .boxes .begin-date-box,
  .swiper .swiper-slide .boxes .end-date-box {
    display: none; }
  .swiper .swiper-slide .boxes .price-box {
    left: 0; }
  .swiper .swiper-slide .boxes .buttons {
    left: 242px; } }

@media screen and (max-width: 590px) {
  .swiper .swiper-slide .description {
    top: 100px; }
  .swiper .swiper-slide .boxes {
    top: 284px; }
    .swiper .swiper-slide .boxes .price-box {
      width: 100%; }
    .swiper .swiper-slide .boxes .buttons {
      width: 100%;
      left: 0;
      top: 96px; }
      .swiper .swiper-slide .boxes .buttons button:first-child {
        margin-bottom: 4px; } }

@media screen and (max-width: 390px) {
  .swiper .swiper-slide .description {
    top: 50px; } }

@media screen and (max-width: 1060px) {
  .swiper .swiper-slide.standard .boxes .buttons {
    right: 0 !important;
    left: initial; } }

@media screen and (max-width: 830px) {
  .swiper .swiper-slide.standard .description h2 {
    font-size: 16px !important; }
    .swiper .swiper-slide.standard .description h2 ul li {
      line-height: 40px;
      padding-left: 34px;
      background-size: 24px; } }

@media screen and (max-width: 580px) {
  .swiper .swiper-slide.standard .description {
    top: 110px; } }

@media screen and (max-width: 550px) {
  .swiper .swiper-slide.standard .description {
    top: 130px; }
    .swiper .swiper-slide.standard .description h1 {
      font-size: 26px !important;
      line-height: 26px; }
      .swiper .swiper-slide.standard .description h1:first-child {
        display: none; }
    .swiper .swiper-slide.standard .description .text {
      position: absolute;
      top: 80px; } }

@media screen and (max-width: 1100px) {
  body #page .content .reise_suche .segments {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: auto; }
    body #page .content .reise_suche .segments .segment {
      height: 70px;
      padding: 10px;
      border: none;
      border-bottom: inherit; }
      body #page .content .reise_suche .segments .segment .ui.search {
        width: 100%; }
        body #page .content .reise_suche .segments .segment .ui.search input {
          padding: 0;
          width: 96%; }
      body #page .content .reise_suche .segments .segment .title {
        position: static; }
      body #page .content .reise_suche .segments .segment .input {
        position: static;
        width: 90%;
        height: 30px; }
      body #page .content .reise_suche .segments .segment button {
        position: static;
        width: 100%;
        margin-top: 10px; }
      body #page .content .reise_suche .segments .segment:last-child {
        border-bottom: none;
        height: 120px; }
  .date-picker-wrapper {
    top: 0 !important; } }

@media screen and (max-width: 1170px) {
  body #page .content .teaser.t2 > div {
    width: 100%;
    margin-bottom: 20px; }
    body #page .content .teaser.t2 > div:last-child {
      margin-bottom: 0; }
    body #page .content .teaser.t2 > div .text {
      left: 230px;
      width: auto; } }

@media screen and (max-width: 560px) {
  body #page .content .teaser {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    body #page .content .teaser.t2 > div {
      height: auto; }
      body #page .content .teaser.t2 > div .image {
        width: 100%;
        height: 164px;
        overflow: hidden; }
        body #page .content .teaser.t2 > div .image figure img {
          width: 100%;
          height: auto; }
        body #page .content .teaser.t2 > div .image figure figcaption {
          top: 129px; }
      body #page .content .teaser.t2 > div .text {
        position: relative;
        left: auto !important;
        right: auto !important;
        padding: 0 20px 20px; }
        body #page .content .teaser.t2 > div .text * {
          position: relative !important;
          left: auto !important;
          top: auto !important; }
        body #page .content .teaser.t2 > div .text p {
          margin-top: 10px; } }

@media screen and (max-width: 1096px) {
  body #page .content .teaser.t4 > div {
    width: 100%;
    margin-bottom: 20px; }
    body #page .content .teaser.t4 > div:last-child {
      margin-bottom: 0; }
    body #page .content .teaser.t4 > div .mod_article img {
      width: 100%;
      height: auto; } }

@media screen and (max-width: 900px) {
  body #page .content .newsletter p {
    margin-left: 20px;
    margin-right: 20px; }
  body #page .content .newsletter > div {
    width: 66.6666666667%; }
    body #page .content .newsletter > div .widget-text {
      display: block; }
      body #page .content .newsletter > div .widget-text input {
        display: block;
        width: 100% !important; }
      body #page .content .newsletter > div .widget-text .widget-submit {
        width: 100%;
        margin-left: 0;
        margin-top: 6px; } }

@media screen and (max-width: 1160px) {
  body #page .content .gruende .mod_article .ce_headline:before, body #page .content .gruende .mod_article .ce_headline:after {
    width: 22%; } }

@media screen and (max-width: 1010px) {
  body #page .content .gruende .mod_article .ce_headline:before, body #page .content .gruende .mod_article .ce_headline:after {
    width: 19%; } }

@media screen and (max-width: 910px) {
  body #page .content .gruende .mod_article .ce_headline:before, body #page .content .gruende .mod_article .ce_headline:after {
    width: 16%; } }

@media screen and (max-width: 824px) {
  body #page .content .gruende .mod_article {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column; }
    body #page .content .gruende .mod_article .ce_headline:before, body #page .content .gruende .mod_article .ce_headline:after {
      display: none; }
    body #page .content .gruende .mod_article .ce_text {
      width: auto;
      padding-bottom: 30px; }
      body #page .content .gruende .mod_article .ce_text figure,
      body #page .content .gruende .mod_article .ce_text h1, body #page .content .gruende .mod_article .ce_text h2, body #page .content .gruende .mod_article .ce_text h3, body #page .content .gruende .mod_article .ce_text h4, body #page .content .gruende .mod_article .ce_text h5, body #page .content .gruende .mod_article .ce_text h6 {
        margin-left: 0 !important;
        text-align: center; }
      body #page .content .gruende .mod_article .ce_text figure img {
        margin-left: 0 !important; }
      body #page .content .gruende .mod_article .ce_text p {
        text-align: center; }
        body #page .content .gruende .mod_article .ce_text p a {
          position: static;
          margin: 10px auto 0 auto;
          width: 235px; } }

@media screen and (max-width: 900px) {
  body #page .content .katalog {
    display: block;; } }

@media screen and (max-width: 1050px) {
  footer .f1, footer .f2, footer .f3, footer .f4, footer .f5, footer .f6 {
    display: none; }
  footer .f7 {
    display: block; }
  footer .social {
    margin-top: 0; } }

@media screen and (max-width: 1130px) {
  .employee-card .image {
    width: 120px;
    height: 120px; } }

@media screen and (max-width: 920px) {
  .employee-card {
    padding: 30px 30px; }
    .employee-card .image {
      width: 100px;
      height: 100px; } }

@media screen and (max-width: 750px) {
  .employee-card .container .person .contact,
  .employee-card .container .person .addon {
    float: none; }
  .employee-card .container .person .addon {
    margin-top: 20px; } }

@media screen and (max-width: 690px) {
  .employee-card .image,
  .employee-card .container {
    float: none; }
  .employee-card .container {
    width: 100%;
    margin-top: 20px; }
    .employee-card .container .person {
      width: 100%; }
      .employee-card .container .person .contact {
        width: 100%; }
        .employee-card .container .person .contact .email {
          margin-top: 20px; }
      .employee-card .container .person .addon {
        width: 100%; }
        .employee-card .container .person .addon .cat .cats div {
          width: 26px;
          height: 26px;
          background-size: 20px;
          margin-right: 4px; }
          .employee-card .container .person .addon .cat .cats div.rundreisen {
            background-size: 32px; } }

@media screen and (max-width: 900px) {
  .mod_article.flow .ce_text.block {
    width: 100%; } }

@media screen and (max-width: 1030px) {
  .flow .agency-card {
    height: auto; }
    .flow .agency-card .contact,
    .flow .agency-card .open {
      position: static; } }

@media screen and (max-width: 900px) {
  .flow .agency-card {
    width: 100%;
    max-width: 100%;
    height: 236px; }
    .flow .agency-card .contact,
    .flow .agency-card .open {
      position: absolute; } }

@media screen and (max-width: 500px) {
  .flow .agency-card {
    height: auto; }
    .flow .agency-card .contact,
    .flow .agency-card .open {
      position: static; } }

@media screen and (max-width: 440px) {
  .flow .agency-card {
    background-position: 20px 20px;
    padding-top: 80px; } }

@media screen and (max-width: 1100px) {
  nav.busse ul li.filler,
  nav.busse ul li a, nav.icons ul li.filler,
  nav.icons ul li a {
    width: 24vw; } }

@media screen and (max-width: 880px) {
  nav.busse ul li.filler,
  nav.busse ul li a, nav.icons ul li.filler,
  nav.icons ul li a {
    width: 38vw; } }

@media screen and (max-width: 570px) {
  nav.busse ul li.filler,
  nav.busse ul li a, nav.icons ul li.filler,
  nav.icons ul li a {
    width: 100%; } }

@media screen and (max-width: 570px) {
  nav.busse ul, nav.icons ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column; }
    nav.busse ul li.filler,
    nav.busse ul li a, nav.icons ul li.filler,
    nav.icons ul li a {
      width: 100%; } }

@media screen and (min-width: 1200px) {
  .flow .travel-card,
  .flow .report-card,
  .flow .filler {
    width: 290px;
    max-width: 290px; } }

@media screen and (max-width: 1120px) {
  .flow .travel-card,
  .flow .report-card,
  .flow .filler {
    width: 38vw;
    max-width: 38vw; } }

@media screen and (max-width: 1120px) {
  .flow .travel-card,
  .flow .report-card,
  .flow .filler {
    width: 38vw;
    max-width: 38vw; } }

@media screen and (max-width: 900px) {
  .flow .travel-card,
  .flow .report-card,
  .flow .filler {
    width: 100%;
    max-width: 100%;
    margin-bottom: 1vh; } }

@media screen and (max-width: 500px) {
  .flow .travel-card,
  .flow .report-card {
    height: 340px; }
    .flow .travel-card .image,
    .flow .report-card .image {
      background-position: center top;
      height: 160px; }
  .flow .report-card {
    height: 260px; } }

@media screen and (max-width: 1120px) {
  body.linienverkehr #page .content .main .legend nav ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    body.linienverkehr #page .content .main .legend nav ul li {
      margin-bottom: 1px; } }

@media screen and (max-width: 920px) {
  body.linienverkehr #page .content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column; }
    body.linienverkehr #page .content .main,
    body.linienverkehr #page .content .linien {
      width: 100%;
      padding: 0 20px 20px 20px; }
    body.linienverkehr #page .content .linien {
      display: none; }
    body.linienverkehr #page .content .main .legend ul {
      display: none; }
  body.linienverkehr.all-active #page .content .main #transportation {
    display: none; } }

@media screen and (max-width: 390px) {
  body.linienverkehr .mod_article .baustellen_banner {
    padding-left: 70px; } }

@media screen and (max-width: 580px) {
  body.linienverkehr .mod_article .baustellen_banner p {
    font-size: 20px !important; } }

@media screen and (max-width: 410px) {
  body.linienverkehr .mod_article .baustellen_banner p {
    font-size: 18px !important; } }

@media screen and (max-width: 390px) {
  body.linienverkehr .mod_article .baustellen_banner p {
    font-size: 16px !important; } }

@media screen and (max-width: 364px) {
  body.linienverkehr .mod_article .baustellen_banner p {
    font-size: 14px !important; } }

@media screen and (max-width: 1170px) {
  body.linienverkehr .content .main .download {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column; }
    body.linienverkehr .content .main .download .download-element {
      width: 100%; } }

@media screen and (max-width: 600px) {
  .main .mod_article .travel-info div.tabs {
    overflow-x: scroll; } }

@media screen and (max-width: 1000px) {
  body.error-404 #page div.error {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700 !important;
    font-size: 200px !important;
    min-height: 500px; } }

@media screen and (max-width: 850px) {
  body.error-404 #page div.error {
    min-height: 400px; } }

@media screen and (max-width: 850px) {
  body.error-404 #page div.error {
    min-height: 400px; } }

@media screen and (max-width: 770px) {
  body.error-404 #page div.error {
    min-height: 300px;
    font-size: 160px !important; } }

@media screen and (max-width: 620px) {
  body.error-404 #page div {
    font-size: 30px !important; }
    body.error-404 #page div.error .link a {
      padding: 10px;
      font-size: 14px !important; } }

@media screen and (max-width: 600px) {
  body.error-404 #page div.error {
    font-size: 140px !important; } }

@media screen and (max-width: 460px) {
  body.error-404 #page div {
    font-size: 20px !important; }
    body.error-404 #page div.error {
      letter-spacing: 10px;
      font-size: 90px !important;
      background-position: center 17%; }
      body.error-404 #page div.error .link a {
        padding: 10px 0px; } }
