/* ganz allgemeinene regeln */
html {
    box-sizing: border-box;
}

body{
    overflow-x:hidden;
    hyphens:auto;
}

*,
*:before,
*:after {
    box-sizing: inherit;
    margin:0px;
    padding:0px;
}

input{
    border-radius: 0px;
    height:30px;
    border-style:solid;
    
}

input[type="image"]:active{
    border:solid 1px #ff6600ff;
}

a:hover{
    color: #ff6600ff;
}

a:active{
    color: #ff1100ff;
}

a{
    color: white;
}

p, h3{
    margin: 0 0 20px 0;
}

h3{
    font-size: 1.30em;
}

h4{
    font-size: 1.27em;
    margin: 0 0 10px 0;
}


li{
    list-style-type: none;
}
img{
    object-fit: cover;
    width:100%;
    height:100%;
}
video{
    width:100%;
}

/* allgemeine Klassen */


.flexrow{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.hidden{
    display:none;
}

.button-field{
    display:flex;
}

.background0{
    color: black;
    background-color:white;
}

.background0 a{
    color: #003366;
}

.background1, .background2{
    background-color: grey;
    color:white;
}

.width1{
    width:360px;
    grid-column: auto /span 1;
}

.height1{
    grid-row: auto /span 1;
    height:240px;
}

.nblock{
    position:relative;
}

.nblock .background_image{
    position:absolute;
    top: 0px;
    left: 0px;
    z-index:0;
    width:100%;
}
.blocktext{
    padding: 20px;
    position:relative;
    z-index:3;
}
img + div.blocktext{
    background: linear-gradient(to bottom, #222222aa, #22222299 80% ,#22222200);
}




/* possible deprected */ 
[class*='block-box'] {
    padding: 20px;
    height:240px;
    /*background-color: #265380;*/
    background-color: grey;
    color: white;
}
/* deprected end */ 



/* Header Area */


/* Flash Messages  */

.messagelist{
    position:absolute;
    background: #003366ff;
    color:white;
    font-size:150%;    
    min-height: 70px;
    top:0px;
    outline: 10px solid white;
    margin:0px;
    padding:20px;
    list-style:none;
    z-index:999;
}

/* Logo */



.block-box1-logo{
    width:360px;
    background:#ff6600ff;
    padding:0px;
    grid-column-start:1; 
}
.block-box1-logo > img{
    padding:20px 20px 0px 17px;
    height:165px;
    width: auto;
    margin-bottom:10px;
}

.block-box1-logo .naerus_logo_small{
    width:360px;
    background:black;
    padding-left:0px;
    height: 60px;
    display:block;
    z-index:500;
}

.block-box1-logo .naerus_logo_small img{
    padding:8px 0px 0px 20px;
    height: auto;
    width: auto;

}


.block-box2-nav .naerus_logo_small{
    width:200px;
    float:left;
    padding:20px
}
.block-box2-nav .naerus_logo_small img{
    height:auto
}


/* main menu */

.row1{
    align-items: flex-start;
}


.breadcrumb{
    display:flex;
    font-size: 80%;
}
.breadcrumb li{
    padding: 5px;
}
.breadcrumb li + li:before{
    content: ">";
    padding-right:7px;
}


.navbar-nav{
    padding-top:15px;
    font-weight: 700;
    margin:0px;
    margin-top:28px;
    background: black;
    height:60px;
    width:740px;
    z-index:600;
    padding-left:15px; 
}
.navbar-nav .nav-item, .navbar-nav .sub-item{
    display: block;
    height:70px;
    float:left;
}


.navbar-nav .nav-link{
    margin-right:18px;
    text-decoration:none;
}
.navbar-nav .nav-link.has_submenu{
    margin-right:0px;
}

.navbar-nav a.active {
    #color: #ff6600;
    border-bottom:  3px solid white;
}

.navbar-nav .dropdown, .navbar-nav .dropdown2{
    display:none; 
    left:0;
    position:absolute;
    outline: solid white 9px;
    margin: 34px 0px; 
    background:black; 
    padding:5px;
    padding-top:20px;
    height: 70px;
    width:100%;
    z-index:500; 
    padding-left:15px;
}


.check_arrow{
  position: relative;
  float: right;
  padding: 20px 15px 20px 5px;
  top: -20px;
}
.check_arrow span{
  display:block;
  height: 10px;
  margin-top: 8px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #fff;
  border-bottom: 5px solid transparent;
}

/* Wenn der Menüpunkt mit Untermenü gehovert wird, soll sich der Pfeil verändern und nach oben zeigen. Dazu tauschen wir lediglich die Farbe der Rahmenlinien oben und unten: */
    
.menu_check:checked ~ .check_arrow span{
  margin-top: 2px;
  border-top: 5px solid transparent;
  border-bottom: 5px solid #fff;
}

.menu_check:checked ~ .dropdown, .menu_check:checked ~ .dropdown2 {
  display: block;
}

.burger_menu{
    display:none;
    justify-content: flex-end;
    padding-top:0px;
    padding-right:15px;
}

.burger_menu img{
    height:30px;
    width: auto;
}


.languages{
    padding-top:7px;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    padding-right:13px;
}

.search-area{
    padding:0 10px;
    height:68px; 
    align-items: flex-end;
}
.search-area .page_title h3{
    margin-bottom: 0px;
}

.sticky {
  position: fixed;
  top: 0;
  margin: 0;
  display:block;
  outline: solid white 9px;
}

.naerus_logo_small.sticky{
    background:#ff6600ff;
}


/* Footer Area */


.block-box2-footer{
    grid-column: 2;
    align-self: end;
    padding: 0px;
    background:#ff6600ff;
}

.footer-links{
    padding: 20px;
    line-height:150%;
    list-style:none;
    float:right;
    background:black;
    height:240px;
    font-weight: bold;
}
.footer-links a{
    text-decoration:none;
}

.subscribe_box{
    grid-column-start:1; 
    align-self: end;
    display:flex;
    justify-content: center;
    align-items: center;
} 
.subscribe_box .subscribe{
}

.credits_logo_block img{
    width: 200px;
    height: auto;
}

.credits_logo_block{
    color: #444;
    #grid-column-start: 3;
}
/* Content Area */

/* TODO: check for possible deprecations */
/* TODO: check for unused code */
/* TODO: check for rules for other aeras */

.subscribe label{
    width:200px;
    display:block;
}
.subscribe input[type="submit"] {
    width:232px;
}
.content-area li{
        list-style-type: list;
        list-style-position: outside;
        padding: 5px 0 5px 0;
}
.content-area ul, .content-area ol{
    padding-left: 20px;
}
.svgmap svg{
    width:100%;
    height:100%;
}

.svgmap a path {
    fill: #555 !important;
}
.svgmap a title{
    height:200;
    width: 200
    display:block;
    position:absolute;
    x: 200;
    y:200;
    font-size: 1.25em;
}

.svgmap a text{
    font-size: 2em;
    width:900px;
    height:900px;
    y:200%;
    x:200%;
    textLength:1000;
    color: black;
    fill: red !important;
}

.end-of-contentarea{
    grid-column-start:1; 
    color: white;
    background: white;
    border: none;
}

.video-block iframe{
    width:100%;
    height:100%;
}

.nblock .plus{
    display:block;
    height: 32px;
    position:absolute;
    right:0px;
    bottom:0px;
    z-index:4;
}


.block-box2-nav{
	padding:0px;
    position: relative;
	background:#ff6600ff;
}

.block-box360{
    font-weight:bold;
    width:360px;
}

.block-image img{
    object-fit: cover;
    width: 360px;
    height:240px;
}



/* media queries */

@media (min-width: 1140px) {
    body{
        display: grid;
        grid-template-columns:360px 360px minmax(0px, 360px);
        grid-gap: 20px;
        font-family:Roboto;
        font-size: 1.25em;
        width: 1140px;
        margin: 0 auto;
    }
    
    .width2{
        grid-column: auto/ span 2;
        width:740px;
    }

    .height2{
        height:500px;
        grid-row: auto /span 2;
    }

    .width3{
        grid-column: auto /span 3;
        width:1120px;
    }

    
    [class*='block-box2']{
        grid-column: auto /span 2;
        width:740px;
    }

    [class*='block-w2'] {
        width:740px;
        grid-column: auto /span 2;    
    }

    [class*='block-w3'] {
        width:1120px;
        grid-column: auto /span 3;    
    }

    .content-area{  /*use only in ContentPage*/
        grid-column-start:2; 
    }


    .block-box2-nav .naerus_logo_small{
        //display:none;
        visibility: hidden;
    }
    .block-box1-logo{
        display:block;
    }
    
    .navbar-nav .nav-item:hover .dropdown, .navbar-nav .dropdown .sub-item:hover .dropdown2{
        display:block;
        z-index:500; 
    }
    .navbar-nav a:focus + .dropdown{
        display:block; 
    }

}

@media (min-width:740px) and (max-width: 1139px) {
    body{
        display:grid;
        grid-template-columns:360px minmax(0px, 360px);
        grid-gap: 20px;
        font-family:Roboto;
        font-size: 1.25em;
        width: 740px;
        margin: 0 auto;
    }
    
    .width3, .width2{
        grid-column: auto /span 2;
        width:740px;
    }
    
    .height2{
        grid-row: auto /span 2;
        height:500px;
    }
    
    .width3{
        height:auto;
    }

    
    [class*='block-box2']{
        grid-column: auto /span 2;
        width:740px;
    }

    [class*='block-w2'] {
        width:740px;
        grid-column: auto /span 2;    
    }
    
    .block-box1-logo{
        display:none;
    }
    
    .block-box2-nav{
        background:#ff6600ff;
    }
    
    .block-box2-footer{
        width:360px;        
        grid-column: auto;    
    }

    .navbar-nav .nav-item:hover .dropdown, .navbar-nav .dropdown .sub-item:hover .dropdown2{
        display:block;
        z-index:500; 
    }
    .navbar-nav a:focus + .dropdown{
        display:block; 
    }

}

@media (max-width: 739px) {
    body{
        display:grid;
        grid-template-columns:360px;
        grid-gap: 15px;
        font-family:Roboto;
        font-size: 1.25em;
        width: 360px;
        margin: 0 auto;
    }

    .width3, .width2, .width1{
        grid-column: auto /span 1;
        width:350px;
    }

    .width1.height1{
        grid-row: auto /span 1;
        height:240px;
    }
    .width2.height1{
        height:auto;
    }
    .width3.height1{
        height:auto;
    }
    
    [class*='block-box2']{
        grid-column: auto /span 1;
        width:350px;
    }
    [class*='block-w2'] {
        width:350px;
        grid-column: auto /span 1;    
    }
    .block-box1-logo{
        display:none;
    }
    .block-box2-nav{
        background:#ff6600ff;
    }
    .navbar-nav{
        padding-top:10px;
        width:350px;
        z-index: 500;
        display: block;
    }
    .main_menu{
        outline: 9px white solid;
        display: none;
        background:black;
        position:absolute;
        left:0px;
        z-index:500;
        width: 350px;        
    }
        
    .burger_menu{
        display:flex;
        margin-top:0px;
    }
        
    .navbar-nav .nav-item, .navbar-nav .sub-item{
        display: block;
        height: auto;
        float:none;
        padding: 10px;
        width:350px;
    }
    .navbar-nav .dropdown, .navbar-nav .dropdown2 {        
        position:relative;
        outline:none;
        margin: 0px;
        padding:0px;
        height: auto;
    }

    .burger_check:checked ~ .main_menu {
      display: block;
      outline: solid 9px white;
    }
    
    .breadcrumb{
        display:none;
    }
    




}
