/* ALLGEMEIN */
:root{
    --max-width: 800px;
    --color-accent:rgb(12, 119, 167);
    --top-height:60px;
    --font-size:16px;
}
*{
    box-sizing: border-box;
}

html,body{
	width:100%;
	height:100%;
    hyphens: auto;
    overflow-wrap: break-word;
    word-break: break-word;
    font-size:var(--font-size);
}
html{
    background-color:#666666;
    height:auto;
}
html.largefont{
    --font-size:20px;
}
@media(min-width:500px){
    html,body{
        font-size:calc(var(--font-size) * 1.3);
    }
}

body {
	border:0;
	margin:0;
	padding:0;
	font-family: 'Roboto', sans-serif;
	font-size:1rem;
	color:#595959;
	overflow-y: scroll;
	background-color:#ffffff;
    max-width:var(--max-width);
    margin:0 auto;
}
#anzeiger-container{
	max-width:var(--max-width);
	margin:0 auto;
    position: relative;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    height: 100%;
}

#main{
	padding-top:70px;
	padding-bottom:70px;
	height:100%;
	width:100%;
	background-color:#ffffff;
}

.main-content{
	width:100%;
	margin:0 auto;
    padding:0 20px;
	min-height:100vh;
}
.main-topcontent{
	width:100%;
	margin:0 auto;
    padding:0 20px;
}

.startlogo{
	width:100%;
}
.startlogo img{
	width:100%;
}

.submenu{
	display:flex;
	margin-bottom:30px;
	width:calc(100% + 40px);
	margin-left:-20px;
	margin-top:-9px;
}
.submenu-item{
	flex:1;
	padding:10px;
	width:100%;
	text-align:center;
	font-size:0.9em;
	background:rgba(240,240,240,1);
}
.submenu-item.active{
	background:rgba(12,119,167,1);
	color:#fff;
}

/*
#content{
	margin:0px auto;
	width:90%;
	margin-top:20px;
}
*/
/* Artikel preview */
figure{
    margin:0;
    padding:0;
    display:inline-block;
}

figcaption{
    color:#777777;
    margin-top:5px;
    text-align:left;
    padding:0 20px;
}
figcaption .artikel-bild-text{
    font-style:normal;
    font-size:0.8rem;
    margin:0;
    line-height:1.2;
}
figcaption .artikel-bild-copy{
    margin:0;
    font-style:normal;
    font-size:0.7rem;
    text-align:right;
}

#anzeiger-top{
	position:fixed;
	width:100%;
    max-width:var(--max-width);
    /* left: 50%;
    translate: -50% 0; */
    top:0;
	/* height:60px; */
	border-bottom:2px solid grey;
	box-sizing:border-box;
    padding:15px 20px;
	background-color:#fff;
    z-index:50;
    display:flex;
    flex-flow:row nowrap;
    justify-content: space-between;
    align-items: center;
}
.anzeiger-top-logo{
	width:120px;
	margin-right:auto;
}
.anzeiger-top-logo img{
	width:100%;
	height:auto;
}
.anzeiger-top-icons{
    display:flex;
    flex-flow:row nowrap;
    gap:12px;
}
.anzeiger-top-icon{
}
.anzeiger-top-icon img{
}

.kw-box {
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    background-color: #686868;
    margin: 0 auto;
    padding: 15px;    
    margin-bottom: 10px;
    color: #fff;
}
.kw-box-head{
	font-size: 1.3rem;
	font-weight: 600;
}
.kw-box-sub{
	font-size: 1.1rem;
	font-weight: 400;
}
.kw-box2 {
    width: 100%;
    box-sizing: border-box;
    text-align: center;
	background-color:#cce2ea;
    width: 100%;
    margin: 0 auto;
    padding: 5px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #686868;
}

.amtsmeldung{
	width:100%;
	padding:20px 30px 20px 30px;
	margin-bottom:10px;
}
.amtsmeldung-container{
	border:4px solid #0085d2;
	padding:20px;
}
.amtsmeldung-headline{
	width:100%;
	background-color:#0085d2;
	color:#fff;
	font-size:1.4em;
	font-weight:600;
	text-align:center;
	padding:10px;
}

.header-box{
	width:100%;
	box-sizing:border-box;
	text-align:center;
	background-color:#ececec;
	width:100%;
	margin:0 auto;
	padding:10px 20px;
	font-weight:300;
	margin-bottom:10px;
    position:relative;
}
.header-box._level1{
    font-size:1.2rem;
    font-weight:400;
}
.header-box._level1:not(._icon){
    position:sticky;
    top:var(--top-height);
    z-index:5;
}
.header-box._level3{
    font-size: 1.3rem;
    color: #232323;
    font-weight: 600;
    margin-top: 20px;
    margin-bottom: 00px;
    background-color:transparent;
    text-align:left;
    border-bottom:1px solid #cccccc;
    margin-left:20px;
    margin-right:20px;
    padding-left:0;
    padding-right:0;
    width:calc(100% - 40px);
}
.header-box._level3::before{
    /* content: " - ";
    display:inline; */
}
.header-name{
    flex-grow:1;
    align-self:flex-end;
}
.kategorie-icon {
    height: 30px;
    width: auto;
    margin-right: 10px;
    vertical-align: middle;
}
.header-box._icon{
    display:flex;
    text-align:left;
    font-size:1.2rem;
    /*background-color:#f5f5f5;
    border-bottom:2px solid #000000;*/
	background-color:#fff;
    border-bottom:2px solid #000000;
    margin:0 20px;
    padding-left:0;
    width:calc(100% - 40px);
    font-weight:400;
    align-items: center;
    align-items: flex-end;
    /* background:linear-gradient(to right, #ffffff 50%, #f5f5f5 100%); */
}
.verein-box-mit-logo{
	width:100%;
	box-sizing:border-box;
	border-bottom:2px solid grey;
	width:95%;
	margin:0 auto;
	margin-bottom:15px;
}
.verein-box-mit-logo img{
	width:100%;
}
.artikel-list{
	/* border-bottom:1px solid grey; */
    margin-bottom:20px;
    /* display:flex;
    flex-flow:column nowrap; */
    gap:15px;
}
.artikel-box{
	width:100%;
	/* border-bottom:1px solid grey; */
	box-sizing:border-box;
	padding-top:10px;
	width:100%;
	padding-bottom:30px;
	margin-bottom:15px;
}
.artikel-box + .artikel-box{
	border-top:1px dashed #aeaeae;
	padding-top:30px;
	padding-top:10px;
}
.artikel-box + .header-box{
	border-top:1px dashed #aeaeae;
}
.artikel-box-content{
	width:100%;
	padding:0 20px;
    position:relative;
}
.artikel-box-kategorie{
	font-size:0.8rem;
	color:#007194;
	margin-bottom:10px;
    /* padding:0 20px; */
}
.artikel-box-headline{
	font-size:1.3rem;
	color:#232323;
	font-weight:600;
	margin-bottom:20px;
}
.artikel-box-teasertext{
	width:100%;
	margin-bottom:20px;
	color:#595959;
}

.artikel-box-bild{
	/*
	float:right;
	width:120px;
	height:90px;
	margin-left:20px;
	*/

	width:calc(100% + 40px);
	margin-left:-20px;
	height:250px;
	background-color:grey;	
	margin-bottom:30px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position:relative;

}
@media(min-width:500px){
    .artikel-box._has_image .artikel-box-content{
        display:flex;
        flex-flow:row nowrap;
        gap:20px;
    }
    .artikel-box-bild{
        width:100%;
	    margin-left:0;
        aspect-ratio: 2;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        position:relative;
        flex:0 1 50%;
        order:3;
        height:auto;
    }
    .artikel-box-text {
        flex:0 0 50%;
        order:2;
    }
    .artikel-box._has_image._odd .artikel-box-bild{
        order:1;
    }
}
.artikel-box-link{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.artikel-box-footer{
    display:flex;
    flex-flow:row nowrap;
    justify-content: space-between;
	width:100%;
	/* height:30px; */
    padding:0 20px;
}
.artikel-box-footer-left{
	float:left;
	font-size:0.9rem;
	padding-top:5px;
	color:#595959;
}
.artikel-box-footer-left-image{
	margin-right:auto;
	width:30px;
}
.artikel-box-footer-right{
	width:30px;
}
.artikel-box-footer-left-image img{
	width:100%;
}
.artikel-box-footer-right img{
	width:100%;
}
.artikel-doppelbox{
	display:flex;	
	gap:20px;
}
.artikel-doppelbox-box{
	flex:1;
}


/* Artikel-Detailseite */
.artikel-details{
	width:100%;
    padding:0 20px;
	margin:0 auto;
	line-height:1.4rem;
}
.artikel-details-topbar{
	display:flex;
    flex-flow:row nowrap;
    justify-content: space-between;
	width:100%;
	margin-bottom:15px;
    gap:10px;
}
/*.artikel-details-footerbar{
	display:flex;
    flex-flow:row nowrap;
    justify-content: space-between;
	width:100%;
	height:100px;
	margin-top:15px;
	margin-bottom:40px;
}*/
.artikel-details-bild{
	width:calc(100% + 40px);
    margin-left:-20px;
	margin-bottom:10px;
}
.artikel-details-bild img{
    width:100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.meldung-termine-headline{
    font-size:1.2rem;
    font-weight:600;
    margin-bottom:10px;
}
.meldung-termin-block{
    margin-bottom:1em;
    /* padding-bottom:1em; */
    /* border-bottom:1px solid #666666; */
}
.meldung-termin-top{
    /* font-size:1.2rem; */
    font-weight:600;
    /* margin-bottom:10px; */
}
.meldung-termin-eintrag{
    /* margin-bottom:0.4em; */
}
.meldung-termin-eintrag:last-child{
    /* margin-bottom:10px; */
}
.meldung-termin-time{
    display:inline-block;
    vertical-align:top;
    width:5.0rem;
    margin-right:0.5rem;
}
.meldung-termin-description{
    display:inline-block;
    vertical-align:top;
    width:calc(100% - 6rem);
}


.anzeige{
	width:calc(100% + 10px);
    margin-left: -5px;
	background-color:#f1f1f1;
	/* background-color:#ffffff; */
	margin-top:15px;
	margin-bottom:15px;
    min-height:65dvh;
    position:relative;
    padding:10px;
    color:#aaaaaa;
}
.anzeige-head{
	width:100%;
	margin:0 auto;
	/* padding:10px 20px 0; */
    text-transform: uppercase;
    font-size:0.9rem;
}
.anzeige-head img{
	width:30px;
}
.anzeige-body{
    background-size:100% auto;
    background-position:center;
    background-repeat:no-repeat;
    width:100%;
    /* padding-bottom:40px; */
    position:sticky;
    top:60px;
}
.anzeige-body.parallax{
    background-attachment: fixed;
}
.anzeige-body img{
    opacity:0;
    width:100%;
    height:auto;
}
.anzeige-body.parallax img{
    padding:50px 0;
}
.anzeige-link{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom:0;
    z-index: 5;
}
.news{
	float:left;
	border:1px solid grey;
	padding:20px;
	box-sizing:border-box;
	margin-top:20px;
}
.news-red{
	border:6px solid #c23b3b;
}
.new{
	font-weight:600;
	color:#92b34c;
}
.old{
	font-weight:600;
	color:#c23b3b;
	text-decoration:line-through;
}
.old2{
	font-weight:600;
	color:#c23b3b;
}

/* MENU */

#anzeiger-menu{
    position: fixed;
    bottom: 0px;
    height: 55px;
    z-index: 999;
    background-color: var(--color-accent);
    right: 0;
    left: 0;
    width: 100%;
    max-width:var(--max-width);
    left: 50%;
    translate: -50% 0;
	filter: drop-shadow(0px 0px 10px #888888);
}
.anzeiger-menu-itemcontainer{
	width:100%;
    height: 100%;
	display:flex;
    flex-flow:row nowrap;
    justify-content: center;
}
.anzeiger-menu-item{
    flex:0 0 20%;
	text-align:center;
	cursor:pointer;
    position:relative;
    display:flex;
    flex-flow:column nowrap;
    justify-content: center;
    align-items: center;
}
.anzeiger-menu-item img{
    width:45px;
    height:auto;
}
.anzeiger-menu-item a{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.anzeiger-menu-item._active{
    background-color:#ffffff;
}
.anzeiger-menu-item._active .icon{
    color:var(--color-accent);
}
.icon {
    fill: currentColor;
    color:#ffffff;
    width:34px;
    height:34px;
    overflow: visible !important;
    min-width: 34px;
    min-height: 34px;
    flex-shrink: 0;
    /* display: inline-block; */
}
.top-icon {
    fill: currentColor;
    color:var(--color-accent);
    width:30px;
    height:30px;
}
.artikel-icon{
    fill: currentColor;
    color:var(--color-accent);
    width:24px;
    height:24px;
}

.textinput{
	border-radius:7px;
	border:2px solid #c8c8c8;
	background-image:URL('../images/input-bg.jpg');
	background-size:100% auto;
	background-repeat:repeat-x;
	height:26px;
	padding:10px;
	font-size:1.6rem;
}

/* PAGETOP */

#pagetop{
	float:left;
	width:100%;
	height:87px;
	background-image:URL('../images/topbg.jpg');
	background-size:100% auto;
	background-position:center;
}
.pagetop-logo{
	float:left;
	width:120px;
	margin-left:27px;
	margin-top:20px;
}

.pagetop-logo img{
	width:100%;
}

.pagetop-bg-content{
	float:right;
	font-size:1.6rem;
	font-weight:600;
	color:#ffffff;
	margin-right:30px;
	margin-top:45px;
}

/* CONTENT */
#content-scrollcontent{
	height:100%;
	overflow-y:scroll;
	overflow-x:hidden;
	width:616px;
}
.content-area{
	float:left;
	margin-top:27px;
	margin-left:27px;
}
.content-box{
	float:left;
	width:255px;
	height:195px;
	margin-bottom:30px;
}
.zaehlernummer-box{
	float:left;
	width:500px;
	border:1px dashed grey;
	padding:20px;
	font-size:2rem;
	font-weight:300;
	margin-top:20px;
	cursor:pointer;
	height:45px;
}
.zaehlernummer-box.active{
	background-color:#b2b2b2;
}
.zaehlernummer-box:hover{
	background-color:#eaeaea;
}
.zaehlernummer-box-done{
	float:right;
	width:180px;
	padding:10px;
	padding-left:20px;
	font-size:1rem;
	font-weight:300;
	margin-bottom:20px;
	background-color:#609329;
	color:#ffffff;
	cursor:pointer;
	margin-top:-20px;
	margin-right:-20px;
}
.zaehlernummer-box-content{
	float:left;
	width:540px;
	height:400px;
	border:1px dashed grey;
	background-image:url('../images/test/stromzaehler.jpg');
	background-size:100% auto;
	display:none;
}

.meinanzeiger-box{
	border-radius:10px;
	background-color:#f8f8f8;
	margin-top:10px;
	/* height:50px; */
	padding:15px;
	display:flex;
	gap:20px;
}
.meinanzeiger-box-icon{
	width:50px;
}
.meinanzeiger-box-icon img{
	width:100%;
}
.meinanzeiger-box-text{
	flex:1;
}
.meinanzeiger-box-text a,a:link, a:hover, a:visited{
	color:#595959 !important;
}
.meinanzeiger-box-text2{
	flex:1;
	font-size:1.2rem;
	font-weight:600;
	padding-top:13px;
}
.meinanzeiger-box-text-headline{
	font-size:1.2rem;
	font-weight:600;
	margin-bottom:0px;
	padding-bottom:0px;
	height:7px;
}

.anzeiger-alt-infopopup{
	position:fixed;
	bottom:55px;
	background-color:red;
	color:#ffff;
	box-sizing:border-box;
	width:100%;
	max-width:var(--max-width);
	padding:10px;
	z-index:998;
	text-align:center;
	transition: 0.3s ease;
    display:flex;
    flex-flow:row nowrap;
    justify-content: space-around;
    align-items:center;
    gap:20px;
}
.anzeiger-alt-infopopup.inaktiv{
	bottom:10px;
}
.anzeiger-alt-infopopup img{
    height:30px;
    width:auto;
    filter:brightness(0) invert(1);
}

#anzeiger-archiv{
	width:100%;
	padding:20px;
	/* background-color:#2e67b1; */
	color:#fff;
	text-align:center;
	margin-bottom:55px;
	font-size:1.1rem;
}
#anzeiger-archiv .anzeiger-archiv-link{
    color:#fff !important;
    text-decoration:none;
}
#anzeiger-next{
	width:100%;
	padding:20px;
	background-color:#7c8c43;
	color:#fff;
	text-align:center;
	margin-bottom:55px;
	font-size:1.1rem;
}

#blackoverlay{
	position:fixed;
	z-index:1099;
	width:100%;
	height:100%;
	top: 0; 
	left: 0;
	right: 0;
	bottom: 0;
	background-color:rgba(0,0,0,0.6);
    display:none;
}
.blackoverlay-box{
	position:relative;
	width:90%;
	overflow-y:auto;
	margin:0 auto;
	background-color:#ffffff;
	margin-top:2%;
	margin-bottom:2%;
	box-sizing:border-box;
	padding:30px;
	position: relative;
	top: 45%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.blackoverlay-box-close{
	position:absolute;
	top:25px;
	right:25px;
	cursor:pointer;
	width:30px;
	height:30px;
}
.blackoverlay-box-close img{
	width:100%;
}
.blackoverlay-box-headline{
	font-weight:600;
	font-size:1.3rem;
	width:90%;
	margin-bottom:20px;
}
.blackoverlay-socialbox{
	border-radius:10px;
	background-color:#f8f8f8;
	margin-top:10px;
	padding:5px;
	display:flex;
	gap:20px;
}

.magazin-item{
    margin-bottom:20px;
}
.magazin-box{
	width:100%;
	border:1px solid black;
	padding:20px;
	text-align:center;
	margin-bottom:3px;
}
.magazin-box-headline{
	width:100%;
	font-size:1.4rem;
	font-weight:600;
	text-align:center;
	margin-bottom:10px;
}
.magazin-box-subline{
	width:100%;
	height:30px;
	color:#8d8d8d;
	margin-bottom:20px;
	font-size:0.9rem;
}
.magazin-box p:last-child{
    margin-bottom:0px;
}

.sucheingabe{
	display:flex;
	width:100%;
	gap:20px;
}
.sucheingabe-input{
	flex:1;
}
.sucheingabe-button{
	display:flex;
	background-color:#0c77a7;
	width:40px;
	height:40px;
	padding:10px;
	margin-top:8px;
	align-items: center;
	justify-content: center;
}
.sucheingabe-button img{
	width:80%;
}

.faq-item{
	width:100%;
	padding:10px;
	background-color:#ededed;
	margin-top:10px;
	position:relative;
	padding-right:70px;
	min-height:60px;
}
.faq-item-arrow{
	position:absolute;
	right:10px;
	top:15px;
	width:30px;
	height:30px;
	background-image:URL('../images/icons/icon-arrow-up-grey-trans.png');
	background-size:contain;
}
.faq-item-arrow-down{
	position:absolute;
	right:10px;
	top:15px;
	width:30px;
	height:30px;
	background-image:URL('../images/icons/icon-arrow-down-grey-trans.png');
	background-size:contain;
}
.faq-answer{
	width:100%;
	padding:10px;
	/*background-color:#f7f7f7;*/
}
.faq-answer a{
	text-decoration:underline;
}

#overview{
	width:100%;
	height:100vh;
}
.overview{
	display:flex;
	gap:20px;
	width:90%;
	margin:0 auto;
	/*height:100vh;*/
	padding-top:10px;
}
.overview-large{
	padding-top:20px;
}
.overview-icon{
	width:30px;
}
.overview-icon-right{
	width:40px;
	border-left:1px solid grey;
	text-align:right;
}
.overview-icon-right img{
	width:22px;
}
.overview-text{
	display:flex;
	flex:1;
	height:24px;
	align-items: center;
}
.overview-headline{
	font-size:1.3rem;
	font-weight:600;
	margin-top:2px;
}

.archiv-eintrag{
	display:flex;
	gap:10px;
	border-bottom:1px dashed #d1d1d1;
	padding: 10px 10px;
	align-items: center;
}
.archiv-eintrag-icon{
	flex:0.2;
}
.archiv-eintrag-content{
	flex:1;
	text-align:center;
}
.archiv-jahr{
	font-size:1.7em;
	border-top:1px solid grey;
	border-bottom:1px solid grey;
	padding: 10px 10px;
	margin-bottom:10px;
}

hr{
	height:1px;
	border:0;
	background-color:#aaaaaa;
}

.left{ 
	float:left; 
}
.right{ 
	float:right; 
}
.clear{
	clear:both;
}

.textfeld{
	width:100%;
	padding:10px;
	border-radius:10px;
	box-sizing:border-box;
	border:1px solid grey;
	margin-top:10px;
}

.inputtext{
	font-size:0.9rem;
	margin-top:10px;
	margin-bottom:-10px;
	padding-bottom:-10px;
}

.button{
	padding:10px;
	border-radius:10px;
	border:0px;
	background-color:#0085d2;
	color:#ffffff;
	font-family: 'Roboto', sans-serif;
	font-size:1.1rem;
	width:70%;
	text-align:center;
	height:45px;
	background-color:#0085d2;
	margin-top:15px;
}

h1{
	font-family: 'Roboto', sans-serif;
	font-size:1.6rem;
	padding:0px;
	margin:0px;
	border:0px;
	color:#707070;
	font-weight:400;
	margin-bottom:20px;
	margin-top:10px;
}

h2{
	font-family: 'Roboto', sans-serif;
	font-size:1.8rem;
	padding:0px;
	margin:0px;
	border:0px;
	color:#4b4b4b;
	font-weight:400;
}

h3{
	font-family: 'Roboto', sans-serif;
	font-size:1.6rem;
	padding:0px;
	margin:0px;
	border:0px;
	font-weight:400;
}

h4{
	font-family: 'Roboto', sans-serif;
	font-size:1.4rem;
	padding:0px;
	margin:0px;
	border:0px;
	font-weight:400;
}


.bold{
	font-weight:600;
}
.italic{
	font-style:italic; 
}

a {
	font-family: 'Roboto', sans-serif;
	text-decoration: none;
	color:#8bb8d1;
}

a:hover {
	font-family: 'Roboto', sans-serif;
	text-decoration: none;
	color:#595959;
}

a:active {
	font-family: 'Roboto', sans-serif;
	text-decoration: none;
	color:#595959;
}
a[id]{
    display:inline-block;
    position:relative;
    top:-100px;
}

img{
	border: 0px;
}