
/* =============================================================================
   Login Formular
   ========================================================================== */   
  .form-signin{max-width:380px;  padding:15px;  margin:0 auto;}
  .form-signin .form-signin-heading, .form-signin .checkbox{margin-bottom:10px;}
  .form-signin .checkbox{font-weight:normal;}
  .form-signin .form-control{position:relative;  font-size:16px;  height:auto;  padding:10px;  box-sizing:border-box;}
  .form-signin .form-control:focus{z-index:2;}
  .form-signin input[type="text"]{margin-bottom:-1px;  border-bottom-left-radius:0;  border-bottom-right-radius:0;}
  .form-signin input[type="password"]{margin-bottom:10px;  border-top-left-radius:0;  border-top-right-radius:0;}
  

/* =============================================================================
   Standards
   Colors:  blau #345c76 dunkelblau #0c223a weiss #fff    sand #ebdcc5
   ========================================================================== */   

  .text-normal {  }
  .text-weiss { color: #fff; }
  .text-sand { color: #ebdcc5; }
  .text-gelb { color: #ECAE19; }
  .text-orange { color: #ff9900; }
  .text-pflaume { color: #E5007D; }
  .text-hellblau { color: #08AAED; }
  .text-blau { color: #345c76; }
  .text-dunkelblau { color: #0c223a; }
  .text-gruen { color: #57AE3C; }
  .text-schwarz { color: #000; }
   
  iframe { width: 100% !important; }           
  *:focus, a:focus { border: 0; outline: none; }              
    
  .container { width: 100%; max-width: 100%; margin: 0 auto; padding: 0;  }        
   html { min-height: 100%; }
   body { min-height: 100%; overflow-y: scroll; }
   
   a, a:link, a:hover, a:active, a:visited, a:focus { color: #fff; text-decoration: none; }
   a:hover { color: #ddd; }
   
  /* experimentell: Silbentrennung */
  #mainrow > .container .inner p { -ms-hyphens: auto; -webkit-hyphens: auto; hyphens: auto; }    
  body.lang-1 #mainrow > .container .inner p { text-align: justify; }   

/* =============================================================================
   Font Styles   
   ========================================================================== */     
   
    body, input, button, select, textarea { font-family: 'Roboto', sans-serif; font-weight: bold; line-height: 1em;}      
    body, p, li { font-size: 15px; line-height: 1.4em; font-weight: 400; color: #fff; } 
    div.lang a { font-family: 'Roboto Condensed', sans-serif; font-weight: 300; line-height: 1em;}  
    h1, h2, h3 { margin: 0; padding: 0; font-weight: 500; }   
    .h1 span, .h2 span, .h3 span { font-weight: 300; }     
    
    h2 + h3 { padding-top: 1em; } 
    h3 + .tabelle { padding-top: 1em; } 
          
    .btn-sand a  { font-weight: 400; padding: 7px 10px; margin: 4px 0; }    
    .btn-sand a, .btn-sand a:hover, .formgen .formsubmit, .formgen .formsubmit:hover { border: 0; display: block; width: 100%; max-width: 100%;  text-align: center; }
    .btn-sand a { color: #fff; background: #08AAED; }
    .btn-sand a:hover { color: #fff; background: #181B1E; }    
    .btn-sand.angebot a { color: #fff; background: #ECAE19; }
    .btn-sand.angebot a:hover { color: #fff; background: #181B1E; }
    .btn-sand.back a { color: #fff; background: #3B4149; }
    .btn-sand.back a:hover { color: #fff; background: #181B1E; }
    
    .navbar-content ul.nav li a { font-size: 18px; color: #fff; background: #3B4149; font-weight: 300; }     
    .navbar-content ul.nav li a:hover { background: #181B1E; padding-right: 50px; }
    .navbar-content ul.nav li a.active { color: #fff; font-weight: bold; background: #181B1E; padding-right: 15px; }  
    #homepageitems .item span { font-size: 18px; color: #fff; background: #3B4149; font-weight: 500; }               
    #homepageitems .item span i { font-weight: 300; font-style: normal; }     
    
    div.lang a { font-size: 9px; line-height: 16px; }  
    
    .h1 { font-size: 1.7em; } 
    .headlines .h1 { padding-bottom: 6px; }  
    #mainrow > .container .h1 { margin-bottom: 25px;line-height: 1.3em;  }   
    .h2 { font-size: 1.5em;  }   
    #mainrow > .container .h2 { margin-top: 25px; }   
    .h3 { font-size: 1.2em;  }  

    
    h1.mehrabstand, h2.mehrabstand, h3.mehrabstand { margin-bottom: 2rem; }   
    
    div.footer, div.footer a { color: #ccc; }   
    
    .inner img { max-width: 100%; height: auto; }   

/* =============================================================================
   Sizes and Backgrounds
   ========================================================================== */    
   
    body { background: #5F6774; color:  #fff; } 
    body.template-12 { background: #3B4149; color:  #fff; }     
    
    body.template-12 #homenav { z-index: 1; position: relative; float: left; width: 60%; }   
     
    #mainrow { background: #3B4149; color:  #fff; }   
    body.template-12 #mainrow { z-index: 2; position: relative; float: left; width: 38.5%; margin-right: 1.5%; background: #5F6774; padding: 20px 30px 30px 30px;  box-shadow: 0 0 10px 10px rgba(0,0,0,0.3); }
    
    .logo-pc { border-bottom: 1px solid #3B4149; padding: 0 0 20px 0; text-align: right; margin: 0 0 30px 0; }
    .logo-pc img { height: 70px; width: auto; }          
    .logo-mobil { display: none; }      
    #menutoggle, #menuremove { display: none; }    
                                          
    body.template-12 div.lang { margin: 30px auto 30px 30px; }
    div.lang a { display: block; float: left; width: 32px; margin: 0 5px 0 0; padding: 0; text-align: center;   }   
    div.lang a img { display: block; width: 100%;   }  
    
    body.template-12 #footer { border-top: 1px solid #3B4149; padding: 20px 0; margin: 30px 0 0 0; }     
    body.template-12 #footer .allpart { margin: 0 -15px; }   
    body.template-12 #footer .part { float: left; width: 50%; padding: 0 0 15px 15px; }     
    
    
     #homepageitems { position: relative;  display: block; margin: 0 -20px 0 -5px;   } 
     #homepageitems .item { display: block; float: left; width: 33.33%; position: relative; padding: 5px; margin: 0; overflow: hidden; }       
     #homepageitems .item a { display: block; width: 100%; height: auto; position: relative;  padding: 60% 0 0 0; background-position: center center; background-size: 100% auto;  box-shadow: 0 0 3px 3px rgba(0,0,0,0.1);}  
     #homepageitems .item a span {position: absolute; left: 0; bottom: 20px; background: #181B1E; background: rgba(0,0,0,0.7); padding: 6px 25px; }    
     #homepageitems .item a:hover, #homepageitems .item a:focus { }  
    
    div.footer .part, div.footer .part ul li a { font-size: 0.85em; line-height: 1.4em; }  
    
    /* ab hier nicht die Homepage */
                       
    .template-1 header { position: fixed; top: 0; left: 0; right: auto; width: 20%; bottom: 0; padding: 10px 25px 25px 25px; overflow: hidden;  }     
    .template-1 #mainrow { position: relative; margin-left: 20%; margin-right: 0; padding: 0; overflow: hidden; overflow-y: auto;  box-shadow: 0 0 10px 10px rgba(0,0,0,0.3);  }   
    .template-1 #bottommenu { position: fixed; top: auto; left: 0; bottom: 0; right: auto; width: 20%; min-width: 200px; padding: 25px; overflow: hidden;  }    
               
    .template-1 #mobillogo { display: block; background: url('../css/logo.svg') top left no-repeat transparent; background-size: auto 65px; height: 65px;  }     
    
    .navbar-content ul.nav, .navbar-content ul.nav li { margin: 0; padding: 0; list-style: none; }      
    .navbar-content ul.nav { margin: 80px 0 0 -25px;  }                                                                       
    .navbar-content ul.nav li {margin: 0 0 5px 0;  } 
    .navbar-content ul.nav li a { display: inline-block; width: auto; padding: 6px 15px 6px 25px; background: #3B4149; white-space: nowrap; } 
    
    .template-1 .headlines { padding: 20px 50px 20px 25px; text-align: right;  }  
    .template-1 #mainrow > .container { padding: 50px; position: relative; }   
                          
    .template-1 #mainrow > .container .inner { margin-right: 270px; }  
    .slidermitnavi { position: relative; padding-right: 270px; background: #5F6774;  border-top: 1px solid #181B1E; border-bottom: 1px solid #181B1E; }
    .theslider { }
    
    div.page-navi.pconly { position: absolute; right: 0; top: 0; background: #5F6774; color:  #fff; width: 270px; padding: 25px 0; }
    div.page-navi.mobilonly { display: none; }
    
    div.subpageitem {}
    div.subpageitem .textitem { float: left; width: 100%; }      
    div.page-navi.subpages { position: relative; right: auto; top: auto; bottom: auto; float: right; margin-right: -360px;}   
    div.page-navi.subpages { position: relative; right: auto; top: auto; bottom: auto; float: right; margin-right: -360px;}   
    .page-navi ul, .page-navi ul li { margin: 0; padding: 0; list-style: none; }      
    .page-navi ul { margin: 0 0 20px 0;  }                                                                       
    .page-navi ul li {margin: 0 0 1px 0;  } 
    .page-navi ul li a { display: block; padding: 3px 10px 0 25px; background: transparent; font-weight: 300;   }  
    .page-navi ul li a:hover { background: #3B4149;  }                 
    .page-navi ul li.active a { background: #3B4149; font-weight: 500; }    
    .page-navi ul li.main a, .page-navi ul li.main > span { font-family: 'Roboto Condensed', sans-serif; display: block; background: #181B1E; font-weight: 700; margin: -25px 0 0 0; padding: 5px 10px 5px 25px; text-transform: uppercase; } 
    
    .page-navi .btn { margin: 0 25px; }    
    
    .template-1 div.footer { position: relative; margin-left: 0; margin-right: 0; padding: 0; overflow: hidden; overflow-y: auto;  box-shadow: none; background: #181B1E; padding: 25px 50px;  }       
    .template-1 div.footer .part { float: left; width: 260px; padding: 0 35px 40px 0; max-width: 100%; }      
    .template-1 div.footer .part:nth-child(2) { width: 360px; }                               
    .template-1 div.footer .part:nth-child(3) { width: 200px; }                                
    .template-1 div.footer .part.last { width: auto; white-space: nowrap; float: right; padding-right: 0; }         
                                                                                         
     .reiselinks { margin: -50px -320px 50px -50px; }
     .reiselinks ul, .reiselinks ul li { margin: 0; padding: 0; list-style: none; }   
     .reiselinks ul li { width: 33.33%; float: left; padding: 2px 2px 0 0; }            
     .reiselinks ul li.full { width: 100%; float: none; clear: both; padding: 2px 2px 0 0; }                                                          
     .reiselinks ul li h3 { display: block; background: #181B1E; color: #fff; padding: 15px 25px 15px 25px; position: relative; overflow: hidden; }    
     .reiselinks ul li a { display: block; background: #33373E; color: #fff; padding: 15px 40px 15px 25px; position: relative; overflow: hidden; }     
     .reiselinks ul li a:hover { background: #181b1e; }        
     .reiselinks ul li a { font-weight: 300; }        
     .reiselinks ul li a strong { font-weight: 500; }         
     .reiselinks ul li a span.label { display: inline-block; font-weight: 500; font-size: 12px; position: absolute; top: 0; right: 10px; background: #ECAE19; color: #fff; padding: 3px 6px 6px; border-radius: 0 0 50% 50%; }     
     .reiselinks ul li a span.label.blau { background: #08AAED; }       
     .reiselinks ul li a span.label.pflaume { /* background: #CC99FF; */ background: #E5007D; }       
     
     
              
    div.footer ul, div.footer ul li { margin-left: 0; padding-left: 0; list-style: none; }  
    div.footer ul li { background: transparent; padding: 0; border-bottom: 0; position: relative; }  
    div.footer ul li:first-child { border-top: 0;  }
    div.footer ul li a { display: block; }      
                                    
/* =============================================================================
   Alte Module
   ========================================================================== */   
   
   a img.whitespace { width: 120px !important; height: auto; margin: 0 0 15px 15px !important; }
   img.tbwhitespace { width: 100px !important; height: auto; margin: 0 0 15px 15px !important; }
   .table p, table td.inhalt p { margin: 0; padding: 0; }
   table td.inhalt { border-bottom: 1px solid #eee; padding: 3px 8px; }                              
                                    
/* =============================================================================
   Allgemeine Module
   ========================================================================== */   
    
    .textitem ul, .textitem ul li { margin-left: 0; padding-left: 0; list-style: none; }  
    .textitem ul li { background: transparent; padding: 2px 0 2px 20px; border-bottom: 0; position: relative; }  
    .textitem ul li:first-child { border-top: 0;  }
    .textitem ul li span.glyphicon { display: block; position: absolute; top: 7px; left: 0; font-size: 0.8em; }
    
    .textitem strong { font-weight: bold; }
    
    .textitem a, .textitem a:link, .textitem a:hover, .textitem a:active, .textitem a:visited, .textitem a:focus { color: #fff; }
    
        
     .galerie { margin: 5px -5px 30px; }            
     .galerie a { display: block; float: left; padding: 0 0 25% 0; position: relative; overflow-y: visible; }     
     .mediaitem { padding: 0; }
     .galerie a img { position: absolute; display: block; top: 5px; left: 2%; right: 2%; width: 96%; height: 96%; border-radius: 0; background: #33373E; } 
     .galerie a { width: 33.3333%;  padding: 0 0 25% 0; }                           
     .galerie a span.desc { display: block; position: absolute; left: 2%; top: 100%; padding: 4px 0; min-height: 22px; overflow: hidden; font-size: 12px; line-height: 14px; color: #fff !important; }     
     .galerie.ohnebeschriftung a span.desc { display: none; }  
     .galerie a  {  margin-bottom: 35px; } 
     .galerie.ohnebeschriftung a {  margin-bottom: 5px; }  
     .galerie a:nth-child(3n+1) { clear: both; }  
     
     .table-condensed > thead > tr > th, .table-condensed > tbody > tr > th, .table-condensed > tfoot > tr > th, .table-condensed > thead > tr > td, .table-condensed > tbody > tr > td, .table-condensed > tfoot > tr > td { line-height: 1.1em; padding: 3px; }
     .tabelle { overflow: hidden; width: 100%; }                                     
     .tabelle .table { margin-left: -15px;  margin-right: -15px; width: calc(100% + 30px); max-width: calc(100% + 30px); }
     .tabelle .table tr td:first-child { margin-left: -15px; padding-left: 15px;  }   
     .tabelle .table tr td:last-child { margin-right: -15px; padding-right: 15px;  }
     .tabelle .table tr > td { border-top: 0; border-bottom: 1px solid #345c76;  }  
     .tabelle .table tr:last-child > td { }                          
     
     .tabelle .table.twocols   tr td { width: 40%;  }     
     .tabelle .table.threecols tr td { width: 25%;  }   
     .tabelle .table.fourcols  tr td { width: 20%;  }   
     .tabelle .table.fivecols  tr td { width: 15%;  }  
     
     .tabelle .table.twocols   tr td:first-child { width: 60%;  }     
     .tabelle .table.threecols tr td:first-child { width: 50%;  }   
     .tabelle .table.fourcols  tr td:first-child { width: 40%;  }   
     .tabelle .table.fivecols  tr td:first-child { width: 40%;  }   
    
/* =============================================================================
   Carousel und Lightbox Styles 
   ========================================================================== */   
   
   .carousel  { width: 100%; height: auto; box-shadow: 0; position: relative;  }
   .carousel-inner > .item > img, .carousel-inner > .item > a > img    { width: 100%; height: auto; }
   
   .carousel-control { padding-top: 20%; font-size: 60px; width: 100px; }    
   
   .carousel-indicators {left: auto; right: 50px; top: 25px; bottom: auto; width: auto; }       
     .carousel-indicators li { border: 0; background: #fff; margin: 1px 4px; height: 10px; width: 10px; }     
     .carousel-indicators li.active { border: 0; background: #08AAED; margin: 1px 4px; height: 10px; width: 10px; }
    /*     
    .lightboxOverlay { opacity: 1; background: #345c76; }
    .lb-data .lb-caption { font-weight: normal; font-size: 15px; line-height: 18px; }
    .lb-container { padding: 0;  background: transparent; }
    .lb-dataContainer { padding-top: 0; padding: 0 0; }
    .lb-outerContainer { border-radius: 0; margin: 0 !important; background: #345c76; width: 100% !important; }
    .lightbox .lb-image { border-radius: 0; margin: 0 auto;  background: transparent; max-width: 100%; height: auto !important; }
    .lb-nav a.lb-prev, .lb-nav a.lb-next { opacity: 1; margin-top: 30px; margin-bottom: 30px; }
    .lb-data .lb-close { position: fixed; top: 15px; right: 15px; opacity: 1; z-index: 1999; }
    .lb-data .lb-details { display: none; }
    */
    
    .bloglist .carousel-control { padding-top: 0; font-size: 15px; width: 20px;background: transparent !important; bottom: auto; top: -25px; height: 25px; }   
    .bloglist .carousel-control.left { left: auto; right: 22px; } 
    
    div.oldkopf  {min-height: 80px; }
    div.oldkopf img  { width: 100%; height: auto; }    
    
                               
    
/* =============================================================================
   Platzhalter für Bilder
   ========================================================================== */   
   
   #myCarousel .carousel-inner > .item.active { position: relative; padding-top: 42.7%; }                    
   /* #myCarousel .carousel-inner > .item.active > a { position: absolute; top: 0; right: 0; left: 0; }   */         
   #myCarousel .carousel-inner > .item.active > img { position: absolute; top: 0; right: 0; left: 0; }     
   #myCarousel .carousel-inner > .item.active > a > img { position: absolute; top: 0; right: 0; left: 0; }     
   #myCarousel .carousel-inner > .item > .carousel-caption { }                    
    
/* =============================================================================
   Newsbox
   ========================================================================== */   
   
   .bloglist { margin: 1em 0; }
   .bloglist h3 { border-bottom: 1px solid #3b4149; font-size: 1em; text-transform: uppercase; }
   .bloglist h3 span { display: inline-block; background: #3b4149; padding: 4px 8px; color: #fff; font-weight: 300; }
   .bloglist .boxitem { padding: 1em 0; }
   .bloglist .boxitem.mitbild {}
   .bloglist .boxitem .boxbild { float: right; width: 25%; width: calc(180px); }      
   .bloglist .boxitem.mitbild .box { float: left; width: 75%; width: calc(100% - 180px); padding: 0 30px 0 0; }        
   .bloglist .boxitem .newstext { margin: 0 0 1em 0;  }                                                         
   .bloglist .boxitem .newstext p { margin: 0 0 1em 0;  }
   .bloglist .boxitem .newstitle { font-weight: 100; font-size: 0.8em; padding: 0 0 5px 0; }    
   .bloglist .boxitem .boxbild small { display: block; font-size: 0.85em; line-height: 1.3em; color: #ccc; padding: 1em 0; }   
   
   .socialshare { text-align: right; }
   .socialshare a.btn-social-txt { display: inline-block; padding: 10px 10px 0 0; font-size: 11px; line-height: 13px; }
   .socialshare a.btn-social-icon { display: inline-block; width: 30px; height: 30px; color: #fff; background: #3B5998; border-radius: 50%; text-align: center; font-size: 20px; line-height: 30px; }
   
   
   
    
/* =============================================================================
   Buchungsbox
   ========================================================================== */    
   
      
    .formgen{font-size:1em;padding: 1em 0; margin: 30px 0; }
    label, select, input[type=checkbox], input[type=radio], input[type=button], input[type=submit]{cursor:pointer; }
    .formgen form{line-height:120%; }
    .formgen .formblock{margin-bottom:15px;margin-top:10px;padding-top:3px;padding-bottom:3px;padding-right:2px;padding-left:5px; clear: both; width: 100%; }
    .forminfo{width: 100%;margin: 1em 0; padding: 6px 15px; background-color: #fb0909; border-radius: 4px; color: #fff; font-weight:bold; border: 0; }
    .formhinweis { padding: 0.5em 0; margin: 0.5em 0; border-top: 0; border-bottom: 0; text-align: right; font-size: 0.8em; }
    #form-module-thanks { border: 0; padding: 6px 1em; background: #A5B837; color: #fff;  border-radius: 0;}
    .formgen br{clear:both;}  
    .formgen .formnote { width:75%; text-align:left; float:right; margin: 1em 0; padding: 0; border: 0; font-size: 0.9em; }                                                                               
    
    .formgen .formtextfield, .formgen .formtext, .formgen .formselect, .formgen input[type="file"] {display: block; line-height: 1.1em; padding: 6px 5px; margin: 0 0 8px 0; background-color:#eee; color:#000; border: 0; float:right; width: 75%;  border-radius: 4px; box-shadow: none; }   
    .formgen .formselect { border-radius: 4px 0 0 4px; }
    .formgen input[type="file"], .formgen input[type="file"]:hover, .formgen input[type="file"]:focus {background-color: #eee; border-radius: 4px; color:#666; border: 0; float:right; width: 75%;}   
    .formgen div.formtext {background-color: transparent; color:#000; border: 0; font-size: 0.9em; }       
    .formgen .formselect{ padding: 2px 2px 2px 0; width: 35%; margin-right: 40%; }                                            
    .formgen textarea { height: 5em;}
    .formgen input:focus,.formgen input:hover, .formgen select:focus,.formgen select:hover,.formgen textarea:focus,.formgen textarea:hover{ background-color:#ddd;}
    .formgen label{width: 23%;clear:left;float:left; height: auto; padding: 2px 0; margin: 0; font-weight: 400;color:#fff; border-bottom: 0; text-align: right; }  
    .formgen .checkspan input {width: auto;clear:left;float:left; }   
    .formgen .checkspan label {width: 93%;clear:left;float:right; height: auto; padding: 2px 0; margin: 0; font-weight: 400; color:#fff; border-bottom: 0;}    
                       
    .formgen .radiofield {margin-left: 25%; width: 75%; clear: both; position: relative; }                                 
    .formgen .radiofield input {margin-left: 0; width: 20px; margin-top: 0; position: absolute; top: 5px; left: 0; }
    .formgen .radiofield label {width:100%;clear:right;float:none;  text-align:left; height: auto; padding: 0 0 2px 25px; margin: 0; font-weight:normal; border-bottom: 0;}    
    .formgen .checkspan { position: relative; clear: both; padding-bottom: 4px; display: block; margin-left: 25%;  padding-left: 25px; }   
    .formgen .checkspan input {width: 15px; position: absolute; left: 0; top: 5px; }   
    .formgen .checkspan label {width: 100%; text-align:left; float: none; height: auto; padding: 0 0 2px 0; margin: 0; font-weight: normal; border-bottom: 0; text-transform: none; }     
    /* Sende-Button */
    .formgen .formsubmit {width:100%; text-align:center; float:right; margin: 0 0 0 0%; margin-right: 0; padding: 8px; border: 0; border-radius: 0; font-weight: bold; font-size: 1.1em; color: #fff; background: #57AE3C; text-transform: uppercase; }  
    .formgen .formsubmit:hover { color: #fff; background: #57AE3C;}
    /* Fieldsetbeschriftung */
    .formgen legend { border: 0; width: auto; padding: 0 10px; font-size: 1.1em; font-weight: 600; }
    .formgen .fieldset{margin-bottom: 0; border:0; padding: 15px 0; border-radius: 0; }
    /* -------------- AUSGABEN / Fehlermeldungen --------*/
    /* Markierung der Labels bei Fehler */
    .formgen .formerror{border-bottom-width:1px;color:#6A2D6C;}
    .formgen .formcaptcha{border:2px solid #F58220;vertical-align:top;float:left;margin-right:10px;}
    .formgen .formreq{color: #fff; font-weight: 300; }
    .formgen .formheadline{ padding-top:4px;padding-bottom:4px;margin-top:5px;margin-bottom:5px; }      
    
    .formgen .radioaddon { padding-left: 25%; }
                                                                                         
   body.modal-open { overflow: hidden; height: 100%; }
   .modal-content { border-radius: 0;}
   .modal-dialog { margin: 0 auto; width: 100%; max-width: 600px; }
   .modal-header { color: #000; }
   .modal-body .formgen { color: #000 !important; margin: 0; padding: 0; }     
   body.modal-open .modal-body, body.modal-open .modal-body .textitem p, .modal-body p, .modal-body li, , .modal-body a { color: #000 !important; }
   .modal-body .formgen label { color: #000 !important; text-align: left; } 
   .modal-body .textitem p { color: #000 !important; }         
   .modal-body .formgen legend { color: #fff !important; padding: 4px 7px; background: #3B4149; display: block; width: 100%; } 
   .modal-body a, .modal-body a:link, .modal-body a:hover, .modal-body a:active, .modal-body a:visited, .modal-body a:focus { color: #000 !important; }     
   
   /* Optionale Felder */
   .formgen .reiseangaben { display: none; }    
   .modal-body .formgen .zweiteperson .formblock { display: none; }       
   .modal-body .formgen .zweiteperson.aktiv .formblock { display: block; }      
   .modal-body .formgen .zweiteperson legend { cursor: pointer; }         
   .modal-body h1.h1 { display: none; }
   
   .formonly p { line-height: 1.1em; }
   
   .theslider > .carousel .item a { padding: 42.7% 0 0 0; margin: 0; display: block; position: relative; }        
   .theslider > .carousel .item a img { position: absolute; top: 0; left: 0; right: 0;  }      
   
   .partnerlink { display: block; float: left; width: auto; margin: 25px 0 0 0; } 
   .partnerlink > a { font-family: 'Roboto Condensed', sans-serif; display: block; padding: 8px 50px 8px 30px; background: #000; color: #fff; font-weight: 300;font-size: 1.15em; position: relative; }  
   .partnerlink > a strong { } 
   span.skiicon { display: display: block; position: absolute; top: 0; right: 0; bottom: 0; left: auto; width: 36px; padding-top: 8px; text-align: center; background: #5F6774; }    
   span.skiicon > span {}       
    .partnerlink.mobil-only { display: none; width: 100%; }    
    
    .galerie a { position: relative;  }
    span.fotograf { z-index: 10; position: absolute; display: block; font-size: 9px; color: #fff; text-shadow: 0 0 3px #000; right: 10px; bottom: 5px; left: 15px; overflow: hidden; text-align: right; } 
    
    a#gotop{border:0; position:fixed; right: 20px; bottom:20px; opacity: 0.8;  color: #fff; background: #08AAED; display:block; font-size:30px; height:40px; width:40px; line-height:30px; padding: 5px 3px 3px; text-align:center; text-decoration:none; z-index:999; box-shadow:0 0 15px rgba(0,0,0,0.5); }
    a#gotop:hover { opacity: 1; }
       
    
/* =============================================================================
   responsive Anpassungen
   ========================================================================== */   

   
   
@media only screen and (min-width: 1399.01px) {       
   body, p, li { font-size: 16px; } 
}  
   
@media only screen and (max-width: 1599px) {      
  .template-1 header, #bottommenu { width: 260px; }
  .template-1 #mainrow { margin-left: 260px; }
  .navbar-content ul.nav li a { font-family: 'Roboto Condensed', sans-serif; font-size: 16px; }      
  .page-navi .btn a { font-size: 14px; }      
  
  
   .bloglist .boxitem .boxbild { width: calc(160px); }      
   .bloglist .boxitem.mitbild .box { width: calc(100% - 160px); padding: 0 25px 0 0; }        
}     
   
@media only screen and (max-width: 1399px) {  

    body.template-12 #homenav { width: 63%; }   
    body.template-12 #mainrow { width: 36%; margin-right: 1%; padding: 20px 20px 20px 20px; }
    
    body, p, li { font-size: 14px; } 
    #homepageitems .item a span { font-size: 16px; padding: 5px 15px; }   
    .partnerlink > a { padding-left: 15px; }   
    .logo-pc img { height: 60px; width: auto; }  
    
    body.template-12 #footer { border-top: 0; padding: 20px 0; margin: 30px 0 0 0; }     
    body.template-12 #footer .allpart { margin: 0; }   
    body.template-12 #footer .part { float: none; width: 100%; padding: 15px 0; border-top: 1px solid #3B4149;  }               
  
   .bloglist .boxitem .boxbild { width: calc(140px); }      
   .bloglist .boxitem.mitbild .box { width: calc(100% - 140px); padding: 0 20px 0 0; }         
   .bloglist .boxitem.mitbild .newstext { font-size: 0.9em; }     
    
}       

@media only screen and (max-width: 1279px) {     
 
  .template-1 #mainrow > .container { padding: 40px; }
  .template-1 .headlines { padding: 20px 40px; }     
  .template-1 div.footer { padding: 20px 40px; }
  .page-navi ul li a { padding: 3px 15px; }   
  .page-navi ul li.main a, .page-navi ul li.main > span { padding: 5px 15px; }   
  .page-navi .btn { margin: 0 15px; }                 
  .reiselinks { margin: -40px -280px 40px -40px; }
  
  div.page-navi.pconly { padding: 25px 0 10px 0; width: 240px; }
  .template-1 #mainrow > .container .inner { margin-right: 240px; }
  .slidermitnavi { padding-right: 240px;  }                             
  
  .template-1 div.footer .part.last { width: auto; padding-top: 0px; float: left; clear: both; text-align: left; }    
  #footer .socialshare { float: left; width: auto; }                                  
  #footer .socialshare a.btn-social-txt { float: right; padding: 0 0 0 15px; }                                  
  #footer .socialshare a.btn-social-icon { float: left; } 
}          

                      
@media only screen and (max-width: 1160px) {                                                                 
  .template-1 .footer { padding-right: 0; }  
  .template-1 div.footer .part, .template-1 div.footer .part:nth-child(2), .template-1 div.footer .part:nth-child(3) { width: 50%; margin: 0; }    
  .template-1 div.footer .part:nth-child(2) { padding-left: 0; } 
  /*
  .template-1 div.footer .part:last-child ul li { width: auto; display: inline-block; padding: 0 5px  0 0; margin: 0 5px 5px 0; border-right: 1px solid #ccc; }    
  .template-1 div.footer .part:last-child ul li:last-child { border-right: 0 solid #fff; }     
  */
}       

@media only screen and (max-width: 1099px) {      
  .reiselinks ul li { width: 50%; }
  
  .template-1 #mainrow > .container { padding: 40px 30px; }
  .template-1 .headlines { padding: 20px 30px; }     
  .template-1 div.footer { padding: 20px 30px; }     
  .reiselinks { margin: -40px -260px 40px -30px; }
                                       
}  

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

    body.template-12 #homenav { width: 100%; float: none; overflow: hidden;  }   
    body.template-12 #mainrow { width: 100%; float: none; margin-right: 0; padding: 30px; background: #3B4149; box-shadow: none; }     
  .reiselinks { margin: -40px -30px 40px -30px; }
    
    body.template-12 header { min-height: 80px;}
    .logo-pc { display: none; }     
    .logo-mobil { display: block; position: absolute; top: 10px; right: auto; left: 20px; }  
    .logo-mobil img { height: 60px; width: auto; }   
    
    body.template-12 div.lang { margin: 20px 20px 20px auto; float: right; width: auto; }
    div.lang a { display: block; float: left; width: 32px; margin: 0 5px 0 0; padding: 0; text-align: center;   }   
    div.lang a img { display: block; width: 100%;   }  
    
     #homepageitems .item { padding: 3px; } 
    body.template-12 #footer .part { border-top: 1px solid #5F6774;  }   
    
    div.page-navi.pconly { display: none; }    
    div.page-navi.mobilonly { display: block; padding: 50px 0 0 0; }   
  .template-1 #mainrow > .container .inner { margin-right: 0; }
  .slidermitnavi { padding-right: 0;  }
  .page-navi ul li a { border-bottom: 1px solid #181B1E;   }      
    .btn-sand.back a { color: #fff; background: #181B1E; }
    .btn-sand.back a:hover { color: #fff; background: #000; }
    .page-navi .btn { margin: 0; }
    
  .template-1 div.footer .part { width: 100% !important; float: none; margin: 0 0 15px 0 !important; border-top: 1px solid #aaa; padding: 15px 0 0 0 !important; }      
  .template-1 div.footer .part:first-child { border-top: 0; padding-top: 0; }
  
  .h1 { font-size: 1.5em; }     
  .h3 { font-size: 1.1em; }
  
  
   .bloglist h3 { border-color: #5F6774; }
   .bloglist h3 span { background: #5F6774;  }        
                              
    
    .partnerlink.pc-only { display: none; }  
    .partnerlink.mobil-only { display: block; }                 
   .socialshare { text-align: left; }
    
    
                                              
}

 
 /*  englsiche Seite */                   
@media only screen and (min-width: 980px) {  
    body.template-12.lang-4 #homenav  { width: 50%; }
    body.template-12.lang-4 #mainrow  { width: 48.5%; margin-right: 1.5%; }                                                 
}
                                                                            
    body.template-12.lang-4 #homepageitems .item  { width: 100%; }          
body.template-12.lang-4 #homepageitems .item a { padding-top: 25% !important; }        

 /*  Ende englsiche Seite */   

@media only screen and (min-width: 666px) {  

    .textmitbild {}
    .textmitbild .zweidrittel { float: left; width: 66.67%; padding-right: 20px; } 
    .textmitbild .eindrittel { float: left; width: 33.33%; padding: 0 35px 20px 35px; }    
    
    p.pleft { float: left; width: auto; white-space: nowrap; padding-right: 40px; }
    p.pright { float: left; width: auto; white-space: nowrap; padding-right: 0; }      
}     

@media only screen and (max-width: 665px) {      
    
  /* Mobilmenu */       
  .template-1 header { z-index: 120; position: fixed; width: 100%; top: 0; left: 0; right: 0; height: 60px; padding: 7px 20px; background: #5F6774; border-bottom: 1px solid #181B1E; box-shadow: 0 0 10px 10px rgba(0,0,0,0.3);  }     
  .template-1 div.navbar-content { display: none; }  
  .template-1 #mobillogo { height: 46px; background-size: auto 100%; }
  .template-1 #mainrow { margin-left: 0; box-shadow: none; padding-top: 60px;  }
  .template-1 .headlines { display: none; }    
  .template-1 #bottommenu { position: relative; margin-top: 0; height: auto; }    
  
  
  .template-1 #mainrow > .container { padding: 30px 15px; }
  .template-1 div.footer { padding: 20px 15px; }     
  .reiselinks { margin: -30px -15px 30px -15px; }
  .carousel-indicators { top: 10px; right: 10px; }     
    .slidermitnavi { border-top: 0; }
    
   #menuremove, #menutoggle { z-index: 950; position: fixed; top: 0; right: 0; width: 60px; height: 60px; padding: 10px; background: #000; cursor: pointer; }              
   #menutoggle img , #menuremove img { width: 40px; height: auto; }
   #menutoggle { display: block; }
   #menuremove { display: none; }
   
   
   
   body.template-1.mitmenu  div.navbar-content { z-index: 110; display: block; position: fixed; top: 60px; left: auto; right: 0; bottom: 0; background: #5F6774; height: auto; width: auto; min-width: 240px; overflow: auto; padding: 25px 0; box-shadow: 0 0 50px 50px rgba(0,0,0,0.5); }    
   body.mitmenu #menutoggle { display: none; }
   body.mitmenu #menuremove { display: block; }         
     
    .navbar-content ul.nav { margin: 0 0 0 0;  }                                                                       
    .navbar-content ul.nav li {margin: 0 0 5px 0;  } 
    .navbar-content ul.nav li a { display: block; padding: 6px 25px 6px 25px; } 
     
    .navbar-content ul.nav li a:hover { padding-right: 25px; }
    .navbar-content ul.nav li a.active { padding-right: 25px; }  
                                       
}  

@media only screen and (max-width: 559px) {      
     #homepageitems .item { width: 50%;padding: 3px; }    
    .logo-mobil img { height: 40px; width: auto; }        
    body.template-12 div.lang { margin: 10px 10px 10px auto;  }       
    body.template-12 header { min-height: 60px;}
    
    div.lang a { width: 24px; margin: 0 4px 0 0; font-size: 8px;  }    
    body.template-12 #mainrow { padding: 30px 15px; }
    
    .bloglist .boxitem.mitbild .box { float: none; width: 100%; padding: 0 0 10px 0; }
    .bloglist .boxitem .boxbild { float: none; width: 100%; padding: 0 0 10px 0; }
    
}      

@media only screen and (max-width: 389px) {       
    .logo-mobil { left: 15px; }  
}     

@media only screen and (max-height: 640px) and (min-width: 666px)  {       
    .template-1 header { position: absolute; bottom: auto; padding-bottom: 100px; }  
    .navbar-content ul.nav { margin-top: 40px; }
    .template-1 #bottommenu { position: relative; margin-top: -80px; height: 80px; }    
}