/* *  Print  * */
@media print {
  body                     {background: #ffffff !important; height: auto !important; margin: 0px !important; padding: 0px !important; overflow:auto !important; }

  header,
  .printbtn,
  .socialbar               {display: none !important; }
  
  main, footer, div        {color: #000000 !important; background-color: transparent !important; }
  h1, h2, h3, h4, h5, h6   {color: #000000 !important; text-align: left !important; border: none; padding: 0px; margin: 0px 0px 15px 0px; text-shadow: none; }

  h1                       {font-size: 180%; }
  h3                       {font-size: 160%; }
  .inner                   {max-width: auto !important; padding: 0px !important; }
}



@media only screen and (max-width: 1310px) {
  ul.LanguageBox                  {left: auto; right: 0px; top: 10px; }
  ul.makeMenu li ul               {left: auto; right: 0px; }
}


/* smaller labtops */
@media only screen and (max-width: 1170px) {

  /* Header */
  .headerBoxLogo,
  .ContentBoxTop-fixed .headerBoxLogo  {margin-left: 5px !important; }
  .SearchBox                           {right: 15px; width: 245px; height: 30px; }
  .QuickfinderBox                      {right: 15px; }

  #start main                          {background-position: right -133px top; }
  #start .ContentTextBoxLeft,
  #start .ContentTextBoxRight          {width: 33%; }
  #start .ContentTextBoxLeft p,
  #start .ContentTextBoxRight p        {margin-bottom: -10px; height: auto; }
  #start h1.page-title                 {font-size: 300%; margin-bottom: 0px; }
  #start h2                            {width: 100%; font-size: 110%; }

  .BackgroundImage::before             {padding-top: 50%; }
  .BackgroundImageLabel                {font-size: 160%; padding: 0px 15px; }
  .BackgroundImage:hover .leftarrow    {left: 10px !important; }
  .BackgroundImage:hover .rightarrow   {right: 10px !important; }

  .mainnav                             {font-size: 90%; }
  .mainnav, .inner                     {padding: 0px 15px; }

  ul.LanguageBox                       {right: 15px; }

  .rightcolumn,
  .video_bg,
  .gallery_slideshow                           {width: 100% !important; padding: 0px 0px !important; }
  a.foldout-more-btn,
  .FooterSubLineInner,
  .FooterBoxInner,
  .rightcolumn .text-container,
  .leftcolumn,
  .textblock-inner,
  .textblock_separator_light .textblock-inner,
  .textblock_separator_image_dark,
  .textblock_separator_image,
  .textblock_separator_dark,
  .video .textblock-inner,
  .video_bg .textblock-inner,
  .gallery_slideshow .textblock-inner          {margin: 0px !important; padding-left: 15px !important; padding-right: 15px !important; }

  .textblocks_left,
  .textblocks_right,
  .textblocks_left_big,
  .textblocks_right_small                      {left: auto; right: auto; transform: none; -webkit-transform: none; }

  .BreadCrumbBox             {width: 100%; padding: 0px 15px 20px 15px; }

}


/* Tablet/iPad */
@media only screen and (max-width: 1024px) {

  .scroll-wrapper             {}
  .read-more                  {}
  .read-more-show             {display: none !important; }

  .sociallinks                {text-align: left; }

  /* *  Content boxes  * */
  .ContentBoxRight                     {font-size: 90%; }

  #start .ContentImgBoxLeft,
  #start .ContentImgBoxRight           {width: 65%; margin-top: 10px; }
  #start .ContentTextBoxLeft,
  #start .ContentTextBoxRight          {width: 34%; }
  #start h1.page-title                 {font-size: 240%; }
  #start h2                            {font-size: 90%; }

  .mainnav                    {font-size: 80%; letter-spacing: 0.0em; }
  ul.makeMenu li a            {padding: 5px 0px 5px 15px; }

  .tile_slide video,
  .tile_slide img             {height: 100%; max-width: none; }
  .tile,
  .listblock                  {margin: 0px 2% 3% 0px; width: 31%; }
  .tilecontent,
  .listblock-text             {padding: 15px; }

  table                       {font-size: 90%; }

}


/* smaller Tablets */
@media only screen and (max-width: 800px) {
  body                       { }
  #tooltip                   {font-size: 80%; }

  #start .headline-container br,
  #main-nav-toggle_footer,
  #mainnav_footer,
  .FooterBoxCol-last,
  a.printbtn                  {display: none !important; }

  /* Header */
  #start #ContentBoxTop,
  #ContentBoxTop                       {height: 60px !important; text-align: left; background-image: none !important; /*background: #000000 !important; */}
  .headerBoxLogo,
  #start .headerBoxLogo,
  #start #ContentBoxTop:not(.ContentBoxTop-fixed) .headerBoxLogo ,
  .ContentBoxTop-fixed .headerBoxLogo  {margin: 12px 0px 0px !important; height: 60% !important; z-index: 30000; }
  ul.LanguageBox                       {right: 75px; top: 15px; }

  #start main                          {background-image: url(../img/_layout/bg_top_m.png); background-position: center top; background-repeat: no-repeat; background-size: 100% auto; }
  main                                 {padding: 60px 0px 0px; }
  .leftcolumn                          {height: auto !important; }
  .rightcolumn                         {background: transparent !important; height: auto !important; }
  #start .ContentTextBoxLeft p,
  #start .ContentTextBoxRight p        {margin-bottom: -20px; }

  #main-nav-toggle                     {display: block; }
  ul.makeMenu li ul li ul,
  ul.makeMenu a img,
  a.main-nav-toggle span,
  .minimized                           {display: none !important; }
  .mainnavfixed,
  .mainnav                             {position: fixed; top: 0px !important; bottom: 0px; left: auto !important; right: 0px !important; font-size: 110%; border: none; width: 100%; height: 100%; margin: 0px !important; padding: 60px 0px 0px 0px !important; background: transparent !important; text-align: right; overflow: visible; }
  .mainnav-closed                      {height: 50px !important; width: auto !important; }
  ul.makeMenu                          {box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; position: absolute; top: 0px; right: auto; left: 0px; background: #4c525b !important; height: 100% !important; width: 60% !important; overflow: hidden; overflow-y: auto; padding: 30px 15px 0px 15px; margin: 60px 0px 0px 0px; box-shadow: 20px 20px 20px rgba(0,0,0,0.8); -moz-box-shadow: 20px 20px 20px rgba(0,0,0,0.8); -webkit-box-shadow: 20px 20px 20px rgba(0,0,0,0.8); }
  ul.makeMenu li ul .lifirst,
  ul.makeMenu li                       {position: relative !important; top: auto !important; left: auto !important; width: 100% !important; background: #4c525b !important; display: block !important; padding: 0px !important; margin: 0px !important; border-top: 2px dotted rgba(222,222,222,0.8); }
  ul.makeMenu li ul li ul,
  ul.makeMenu li ul                    {position: relative !important; top: auto !important; left: auto !important; right: auto !important; width: 100%; padding: 0px 0px 10px 0px !important; background: transparent !important; border: none !important; box-shadow: none; -moz-box-shadow: none; -webkit-box-shadow: none; }
  ul.makeMenu li ul li                 {border: none !important; }
  ul.makeMenu > li.hassubs:hover > ul,
  ul.makeMenu > li.hassubs:focus > ul,
  ul.makeMenu > li:hover > ul          {display: block !important; background-color: transparent !important; }
  ul.makeMenu li a                     {color: #dedede !important; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; border: none !important; margin: 0px 0px 0px 0px !important; text-align: left !important; height: auto !important; min-height: auto !important; padding: 15px 0px !important; }
  ul.makeMenu li a.menu-sel,
  ul.makeMenu li a:hover               {background-color: rgba(0,0,0,0.0) !important; color: #f87700 !important; }
  ul.makeMenu li ul li a               {font-size: 90%; font-weight: 300 !important; padding: 5px 0px 5px 15px !important}
  ul.makeMenu li ul li ul li a         {padding-left: 30px !important; }
  ul.makeMenu li ul li a.menu-sel,
  ul.makeMenu li ul li a:hover         {color: #f87700 !important; }
  ul.makeMenu > li.hassubs > a::after  {content: "\203A"; display: block; font-weight: 300; position: absolute; top: 0px; right: 5px; font-size: 130%; padding: 12px 10px; height: 100%; }
  ul.makeMenu > li > a::before         {display: none; }

  /* Slideshows */
  .BackgroundImage::before             {padding-top: 70%; }
  .BackgroundImageLabel                {font-size: 120%; }
  .BackgroundImageBtns                 {bottom: 5px; }
  a.BackgroundImageBtn                 {width: 9px; height: 9px; }
  a.extrabutton-down                   {bottom: 45px !important; width: 45px !important; height: 45px !important; margin: 0px 0px 0px -22px !important; }
  a.extrabutton-down:focus,
  a.extrabutton-down:hover             {bottom: 40px !important; }

  .ContentTextBoxNormal,
  .ContentTextBoxLeft,
  .ContentTextBoxRight,
  .ContentImgBoxNormal,
  .ContentImgBoxLeft,
  .ContentImgBoxRight,
  .ContentTBBoxLeft,
  .ContentTBBoxRight,
  .ContentTBImgBoxNormal,
  .ContentTBImgBoxLeft,
  .ContentTBImgBoxRight       {width: 100% !important; max-width: 100% !important; float: none; padding: 0px !important; margin: 0px 0px 10px 0px !important; }

  .ContentImgBoxLeft img,
  .ContentImgBoxRight img,
  .ContentTBImgBoxNormal img,
  .ContentTBImgBoxLeft img,
  .ContentTBImgBoxRight img   {width: 100% !important; height: auto !important; display: block; padding: 0px !important; margin: 0px !important; }

  .mapCont                    {height: 400px; }
  .textblock:not(.map_locations) .mapimgCont,
  .textblock:not(.map_locations) .mapimg,
  .mapimgCont,
  .mapimg,
  .maphoverimg                {width: 100% !important; }

  footer                      {/*font-size: 90%; padding: 20px 0px 20px; */}
  .FooterBoxCol               {margin: 0px 0px 10px 0px !important; padding: 0px !important; width: 100% !important; text-align: left !important; float: none !important; }
  .leftcol,
  .rightcol,
  .col1-2,
  .col2-3,
  .col1,
  .col2,
  .col3                       {margin: 0px 0px 10px 0px !important; padding: 0px !important; width: 100% !important; max-width: none !important; }
  footer .leftcol,
  footer .rightcol            {padding: 0px 15px 0px 0px !important; width: 49% !important; }

  /* * Textblock-News  * */
  a.newstop                           {position: absolute !important; padding: 0px !important; }
  .textblock .NewsBox                 {margin-right: 5%; width: 95%; font-size: 80%; }
  .textblock .NewsBoxCont             {width: 220px; text-align: left; padding: 0px 30px 0px 0px; margin: 60px 30px 0px 0px; font-weight: normal; text-transform: none; border-right: 2px dotted #dedede; }
  .textblock .NewsBoxCont:last-child  {margin-right: 0px; padding-right: 10px; width: 200px; }

  .NewsContainer                      {width: 100%; padding: 10px 0px 10px 0px; }
  .newscontblock                      {width: 50%; }
  .newsimg                            {width: 46%; }

  .Slidearrow                 {bottom: 120px; width: 40px; height: 70px; }
  .mediabox                   {width: 100% !important; height: auto !important; }
  .Videobox                   {width: 100% !important; height: 360px !important; }

  /* Big Teaser */
  .TileCont                   {}
  .tile_square                {width: 50% !important; }

  .ContExtraMenu              {float: none !important; margin: 15px 0px !important; }
  ul.makeExtraMenu	          {text-align: left !important; }

  table                       {font-size: 80%; }
  th, td                      {padding: 3px !important; }

  .show-mobile-0              {display: none !important; }

}



/* iPhones and others */
/* @media only screen and (-webkit-min-device-pixel-ratio:1.5) { */
@media only screen and (max-width: 640px) {
  body                        { }

  .QuickfinderBox,
  .LabelBox,
  .socialbar,
  .BreadCrumbBox,
  .parallax-slide,
  .ContentBoxLeft,
  a.printbtn                  {display: none !important; }

  .BackgroundImageLabel       {top: 33%; font-size: 100%; }
  .tile_slide img             {/*height: 100%;*/ }

  input.radio,
  label                       {margin: 0px 5px 0px 0px !important; float: none !important; }

  h1.page-title              {margin: 20px 0px 30px; }
  h1                         {font-size: 180%; }
  h2, h3                     {font-size: 130%; }
  h4                         {font-size: 120%; }
  h5                         {font-size: 110%; }
  blockquote                 {font-size: 180%; }

  .textblock,
  .headline-container,
  .text-container,
  .float_left, .float_right, 
  .FooterBoxCol        {width: 100% !important; max-width: 100% !important; float: none; padding: 0px !important; margin: 0px 0px 10px 0px !important; }

  .mediabox            {width: 96% !important; margin: 0px !important; }
  .Videobox            {height: 260px !important; margin: 0px !important; }
  a.videostart         {display: block; margin: 0px !important; }
  .mapCont             {height: 300px; }
  a.foldout-more-btn   {font-size: 120%; }
  .mapimgCont          {min-height: 540px; }

  /* Big Teaser */
  .tile,
  .listblock                  {margin: 0px 2% 2% 0px !important; width: 48% !important; }
  .maplist                    {margin: 0px 0px 20px 0px !important; width: 100% !important;  }
  .textblock .NewsBoxCont     {}

  .textblocks_left .tile_square,
  .textblocks_right .tile_square,
  .textblocks_right_small .tile_square               {margin: 0px 0px 0px 0px !important; width: 50% !important; }

  /*table, tbody, tr, th, td    {display: block !important; clear: both !important; width: 100% !important; margin: 0px 0px 0px 0px !important; padding: 0px 0px 10px 0px !important; text-align: left !important; }*/
  .show-mobile-0              {display: none !important; }

}


/* phones */
@media only screen and (max-width: 440px) {


}


/* phones */
@media only screen and (max-width: 380px) {

  .headerBoxLogo,
  #start .headerBoxLogo,
  #start #ContentBoxTop:not(.ContentBoxTop-fixed) .headerBoxLogo ,
  .ContentBoxTop-fixed .headerBoxLogo  {margin: 12px 0px 0px !important; height: 50% !important;}

  .listblock .imgbox          {width: 70%; }
  .listblock                  {padding: 0px 20px !important; }
  .listblock,
  .tile,
  .tile_square                {width: 100% !important; padding: 0px !important; margin: 0px 0px 0px 0px; }
  .maplist                    {margin: 0px 0px 20px 0px !important; width: 100% !important; padding: 0px 0px !important; }

  .mapimgCont                 {min-height: 310px; }
  .map_locations .mapimgCont  {min-height: 420px; }

}

