/*
Template Name:Mediumish
Copyright:WowThemes.net,https://www.wowthemes.net
Version:1.0.1
License: https://www.wowthemes.net/freebies-license/
*/
body {
	padding-top:7rem;
}
.mainheading {
	padding:1rem 0rem;
}
a,a:hover {
	transition:all 0.2s;
}
a {
	color:#8a6134;
}
a:hover {
	color:#5f4322;
}
.mediumnavigation {
	background:rgba(255,255,255,.97);
	box-shadow:0 2px 2px -2px rgba(0,0,0,.15);
}
section {
	margin-bottom:20px;
}
.section-title h2 {
	border-bottom:1px solid rgba(0,0,0,.15);
	margin-bottom:25px;
	font-weight:700;
	font-size:1.4rem;
	margin-bottom:27px;
}
.section-title span {
	border-bottom:1px solid rgba(0,0,0,.44);
	display:inline-block;
	padding-bottom:20px;
	margin-bottom:-1px;
}
@media (min-width:576px) {
	.card-columns.listfeaturedtag {
		-webkit-column-count:2;
		-moz-column-count:2;
		column-count:2;
	}
}
@media (min-width:992px) {
	.navbar-toggleable-md .navbar-nav .nav-link {
		padding-right:.7rem;
		padding-left:.7rem;
	}
}
.card-columns .card {
	margin-bottom:20px;
}
.listfeaturedtag .wrapthumbnail {
	height:258px;
	flex:0 0 auto;
}
.listfeaturedtag .card {
	border:1px solid rgba(0,0,0,.1);
	border-radius:2px;
	height:260px;
	padding-left:0;
	margin-bottom:15px;
}
.listfeaturedtag .thumbnail {
	background-size:cover;
	height:100%;
	display:block;
	background-position:38% 22% !important;
	background-origin:border-box!important;
	border-top-left-radius:2px;
}
.listfeaturedtag .card-block {
	padding: 1.25rem;
	padding-left:0;
}
.listfeaturedtag h2.card-title,.listrecent h2.card-title {
	font-size:1.3rem;
	font-weight:700;
	line-height: 1.25;
}
.listfeaturedtag h2.card-title a,.listrecent h2.card-title a {
	color:rgba(0,0,0,.8);
}
.listfeaturedtag h2.card-title a:hover,.listrecent h2.card-title a:hover {
	color:rgba(0,0,0,.6);
	text-decoration:none;
}
.listfeaturedtag h4.card-text,.listrecent h4.card-text {
	color:rgba(0,0,0,.44);
	font-size:0.95rem;
	line-height:1.4;
	font-weight:400;
}
.listfeaturedtag .wrapfooter {
	position:absolute;
	bottom:20px;
	font-size:12px;
	display:block;
	width:85%;
}
.listrecent .wrapfooter {
	font-size:12px;
	margin-top:30px;
}
.author-thumb {
	width:40px;
	height:40px;
	float:left;
	margin-right:13px;
	border-radius:100%;
}
.post-top-meta {
	margin-bottom:2rem;
}
.post-top-meta .author-thumb {
	width:72px;
	height:72px;
}
.post-top-meta.authorpage .author-thumb {
	margin-top:40px;
}
.post-top-meta span {
	font-size:0.9rem;
	color:rgba(0,0,0,.44);
	display:inline-block;
}
.post-top-meta .author-description {
	margin-bottom:5px;
	margin-top:5px;
	font-size:0.95rem;
}
.author-meta {
	flex:1 1 auto;
	white-space:nowrap!important;
	text-overflow:ellipsis!important;
	overflow:hidden!important;
}
span.post-name,span.post-date,span.author-meta {
	display:inline-block;
}
span.post-date,span.post-read {
	color:rgba(0,0,0,.44);
}
span.post-read-more {
	align-items:center;
	display:inline-block;
	float:right;
	margin-top:8px;
}
span.post-read-more a {
	color:rgba(0,0,0,.44);
}
span.post-name a,span.post-read-more a:hover {
	color:rgba(0,0,0,.8);
}
.dot:after {
	content:"·";
	margin-left:3px;
	margin-right:3px;
}
.mediumnavigation .form-control {
	font-size:0.8rem;
	border-radius:30px;
	overflow:hidden;
	border:1px solid rgba(0,0,0,0.04);
}
.mediumnavigation .form-inline {
	margin-left:15px;
}
.mediumnavigation .form-inline .btn {
	margin-left:-50px;
	border:0;
	border-radius:30px;
	cursor:pointer;
}
.mediumnavigation .form-inline .btn:hover,.mediumnavigation .form-inline .btn:active {
	background:transparent;
	color:green;
}
.mediumnavigation .navbar-brand {
	font-weight:500;
}
.mediumnavigation .dropdown-menu {
	border:1px solid rgba(0,0,0,0.08);
	margin:.5rem 0 0;
}
.mediumnavigation .nav-item,.dropdown-menu {
	font-size:0.9rem;
}
.mediumnavigation .search-icon {
	margin-left:-40px;
	display:inline-block;
	margin-top:3px;
	cursor:pointer;
}
.mediumnavigation .navbar-brand img {
	max-height:30px;
	margin-right:5px;
}
.mainheading h1.sitetitle {
	#font-family:Righteous;
}
.mainheading h1.posttitle {
	font-weight:700;
	margin-bottom:1rem;
}
.footer {
	border-top:1px solid rgba(0,0,0,.05)!important;
	padding-top:15px;
	padding-bottom:12px;
	font-size:0.8rem;
	color:rgba(0,0,0,.44);
	margin-top:50px;
}
.link-dark {
	color:rgba(0,0,0,.8);
}
.article-post {
	#font-family:Merriweather;
	font-size:1.2rem;
	#line-height:1.8;
	color:rgba(0,0,0,.8);
}
blockquote {
	border-left:4px solid #00ab6b;
	padding:0 20px;
	font-style:italic;
	color:rgba(0,0,0,.5);
}
.article-post p,.article-post blockquote {
	margin:0 0 1.5rem 0;
}
.featured-image {
	display:block;
	margin:0px auto;
	margin-bottom:1.5rem;
}
.share {
	text-align:center;
	margin-top:20px;
}
.share p {
	margin-bottom:10px;
	font-size:0.95rem;
}
.share {
	display:none;
}
.share ul li {
	display:inline-block;
	margin-bottom:5px;
}
.share ul {
	padding-left:0;
	margin-left:0;
}
.svgIcon {
	vertical-align:middle;
}
@media (min-width:1024px) {
	.share {
		position:fixed;
		display:block;
	}
	.share ul li {
		display:block;
	}
}
@media (max-width:999px) {
	.listfeaturedtag .wrapthumbnail, .listfeaturedtag .col-md-7 {
		width:100%;
		max-width:100%;
		-webkit-box-flex: 0;
		-webkit-flex: 100%;
		-ms-flex: 100%;
		flex: 100%;
	}
	.listfeaturedtag .wrapthumbnail {
		height:250px;
	}
	.listfeaturedtag .card {
		height:auto;
	}
	.listfeaturedtag .wrapfooter {
		position:relative;
		margin-top:30px;
	}
	.listfeaturedtag .card-block {
		padding:20px;
	}
}
@media (max-width:1024px) {
	.post-top-meta .col-md-10 {
		text-align:center;
	}
}
@media (max-width:767px) {
	.post-top-meta.authorpage {
		text-align:center;
	}
}
.share,.share a {
	color:rgba(0,0,0,.44);
	fill:rgba(0,0,0,.44);
}
.graybg {
	background-color:#fafafa;
	padding:40px 0 46px;
	position:relative;
}
.listrelated .card {
	box-shadow:0 1px 7px rgba(0,0,0,.05);
	border:0;
}
.card {
	border-radius:4px;
}
.card .img-thumb {
	border-top-right-radius:4px;
	border-top-left-radius:4px;
}
ul.tags {
	list-style:none;
	padding-left:0;
	margin:0 0 3rem 0;
}
ul.tags li {
	display:inline-block;
	font-size:0.9rem;
}
ul.tags li a {
	background:rgba(0,0,0,.05);
	color:rgba(0,0,0,.6);
	border-radius:3px;
	padding:5px 10px;
}
ul.tags li a:hover {
	background:rgba(0,0,0,.07);
	text-decoration:none;
}
.margtop3rem {
	margin-top: 3rem;
}
.sep {
	height:1px;
	width:20px;
	background:#999;
	margin:0px auto;
	margin-bottom:1.2rem;
}
.btn.follow {
	border-color:#02B875;
	color:#1C9963;
	padding:3px 10px;
	text-align:center;
	border-radius:999em;
	font-size:0.85rem;
	display:inline-block;
}
.btn.subscribe {
	background-color:#1C9963;
	border-color:#1C9963;
	color:rgba(255,255,255,1);
	fill:rgba(255,255,255,1);
	border-radius:30px;
	font-size:0.85rem;
	margin-left:10px;
	font-weight:600;
	text-transform:uppercase;
}
.post-top-meta .btn.follow {
	margin-left:5px;
	margin-top:-4px;
}
.alertbar {
	box-shadow:0 -3px 10px 0 rgba(0,0,0,.0785);
	position:fixed;
	bottom:0;
	left:0;
	background-color:#fff;
	width:100%;
	padding:14px 0;
	z-index:1;
}
.form-control::-webkit-input-placeholder {
	color: rgba(0,0,0,.5);
}
.form-control:-moz-placeholder {
	color: rgba(0,0,0,.5);
}
.form-control::-moz-placeholder {
	color: rgba(0,0,0,.5);
}
.form-control:-ms-input-placeholder {
	color: rgba(0,0,0,.5);
}
.form-control::-ms-input-placeholder {
	color: rgba(0,0,0,.5);
}
.authorpage h1 {
	font-weight:700;
	font-size:30px;
}
.post-top-meta.authorpage .author-thumb {
	float:none;
}
.authorpage .author-description {
	font-size:1rem;
	color:rgba(0,0,0,.6);
}
.post-top-meta.authorpage .btn.follow {
	padding:7px 20px;
	margin-top:10px;
	margin-left:0;
	font-size:0.9rem;
}
.graybg.authorpage {
	border-top:1px solid #f0f0f0;
}
.authorpostbox {
	width:760px;
	margin:0px auto;
	margin-bottom:1.5rem;
	max-width:100%;
}
.authorpostbox .img-thumb {
	width:100%;
}
.sociallinks {
	margin:1rem 0;
}
.sociallinks a {
	background:#666;
	color:#fff;
	width:22px;
	height:22px;
	display:inline-block;
	text-align:center;
	line-height:22px;
	border-radius:50%;
	font-size:12px;
}
.svtext {
  font-size: 0.9rem;
  line-height: 1.45;
}
.svtext-short {
  display: none;
}
.footer-plain, .footer-plain:hover, .footer-plain:link, .footer-plain:visited {
  color: inherit !important;
}
.footer-plain:hover {
  text-decoration: underline;
}
/* Fußzeile: Links mit ausreichend großen Tap-Flächen, Trennstriche automatisch */
.fuss-links a {
  display: inline-block;
  padding: 0.35rem 0.6rem;
}
.fuss-links a + a::before {
  content: "|";
  color: #ced4da;
  margin-right: 0.9rem;
}
@media screen and (max-width: 767px) {
  .fuss-links {
    line-height: 2.2;
  }
  .fuss-links a + a::before {
    content: "";
    margin: 0;
  }
}
/* Fester Kontaktbalken am unteren Rand, nur am Handy */
.kontaktbalken {
  display: none;
}
@media screen and (max-width: 767px) {
  .kontaktbalken {
    display: flex;
    /* erscheint erst nach dem Hero, siehe Skript in index.php */
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1040;
    border-top: 1px solid rgba(255,255,255,0.15);
    box-shadow: 0 -2px 6px rgba(0,0,0,.15);
  }
  .kontaktbalken a {
    flex: 1;
    text-align: center;
    padding: 0.9rem 0.5rem;
    font-size: 0.95rem;
    text-decoration: none;
  }
  .kontaktbalken .kb-anruf {
    background: #1c1f23;
    color: #fff;
  }
  .kontaktbalken .kb-mail {
    background: #f8f9fa;
    color: #212529;
  }
  .kontaktbalken.sichtbar {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  body {
    padding-bottom: 3.4rem;
  }
}
/* Bilder in Kacheln und Beitragskarten: füllen ihren Rahmen wie zuvor als Hintergrundbild */
.sk-bild, .card-bild {
  width: 100%;
  object-fit: cover;
  display: block;
}
.card-bild {
  height: 250px;
}
.listfeaturedtag .card .thumbnail {
  width: 100%;
  height: 100%;
  min-height: 220px;
  object-fit: cover;
  display: block;
}
/* Startseitenkacheln: Links sitzen unabhängig von der Textlänge auf einer Linie */
.sk-col {
  display: flex;
}
.sk-card {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.sk-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
.sk-link {
  margin-top: auto;
}
/* Kontaktstreifen: Trennlinien senkrecht am Desktop, waagrecht am Handy */
.ks-item {
  margin-bottom: 0.75rem;
}
@media screen and (min-width: 768px) {
  .ks-item + .ks-item {
    border-left: 1px solid #e2e5e8;
    padding-left: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .ks-strip {
    padding-top: 0.2rem !important;
    padding-bottom: 0.6rem !important;
  }
  .ks-item {
    margin-bottom: 0;
    padding-top: 0.9rem;
    padding-bottom: 0.9rem;
  }
  .ks-item:first-child {
    padding-top: 0.5rem;
  }
  .ks-item + .ks-item {
    border-top: 1px solid #e2e5e8;
  }
}
/* Vertrauensleiste: am Handy untereinander mit Trennlinien */
@media screen and (max-width: 767px) {
  .vl-item {
    flex: 0 0 100%;
    max-width: 100%;
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
  }
  .vl-item + .vl-item {
    border-top: 1px solid #e2e5e8;
  }
  /* Aussenabstand gleich gross wie der Abstand der Einträge zu den Trennlinien */
  .vl-row {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}
/* Hero-Überschrift: ab Tablet einzeilig, Schrift passt sich der Breite an */
@media screen and (min-width: 768px) {
  .hero-title {
    font-size: clamp(1.2rem, 1.75vw, 1.6rem) !important;
    line-height: 1.3;
  }
}
/* Buttons im Hero: nebeneinander ab Tablet, gestapelt am Handy */
.hero-btn + .hero-btn {
  margin-left: 0.5rem;
}
@media screen and (max-width: 767px) {
  /* Unterseiten am Handy: kompaktere Überschrift, kleineres Coverbild, lesbarer Fließtext */
  .mainheading h1.posttitle {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
  /* Titel mittig zwischen Kopfzeile und Coverbild */
  .mainheading {
    padding: 1.4rem 0 0.8rem;
  }
  /* Coverbild begrenzen, aber nie beschneiden – Hochformat bliebe sonst kopflos */
  .featured-image {
    max-height: 260px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    margin: 0 auto 1.1rem;
  }
  .article-post {
    font-size: 1.05rem;
  }
  .article-post p, .article-post blockquote {
    margin-bottom: 1.1rem;
  }
  .article-post ol, .article-post ul {
    padding-left: 1.2rem;
  }
  .article-post li {
    margin-bottom: 0.5rem;
  }
  /* Aktionsknöpfe im Text über die volle Breite */
  .article-post .btn {
    display: block;
    width: 100%;
    margin-bottom: 0.6rem;
  }
  /* Beiträge am Handy als Textliste: Bilder sparen Platz und Ladezeit */
  .listrecent .card-bild {
    display: none;
  }
  /* Die beiden hervorgehobenen Beiträge behalten ein kleines Bild links daneben */
  .listfeaturedtag .card .row {
    display: flex;
    align-items: flex-start;
    flex-wrap: nowrap;
  }
  .listfeaturedtag .wrapthumbnail {
    display: block;
    flex: 0 0 92px;
    max-width: 92px;
    padding-right: 0;
  }
  .listfeaturedtag .wrapthumbnail .thumbnail {
    height: 92px;
    min-height: 92px;
    border-radius: 6px;
  }
  .listfeaturedtag .col-md-7 {
    flex: 1 1 auto;
    min-width: 0;
  }
  /* Feste Kartenhöhe des Themes aufheben – sie erzeugt am Handy leere Flächen */
  .listfeaturedtag .card {
    height: auto;
    margin-bottom: 0;
    border: 0;
    border-bottom: 1px solid #e9ecef;
    border-radius: 0;
  }
  .listfeaturedtag .wrapthumbnail {
    height: auto;
  }
  .listfeaturedtag .card-block {
    padding: 0.9rem 0 0.9rem 0.8rem;
  }
  .listrecent .card,
  .listfeaturedtag .card {
    border: 0;
    border-bottom: 1px solid #e9ecef;
    border-radius: 0;
    margin-bottom: 0;
  }
  .listrecent .card-block,
  .listfeaturedtag .card-block {
    padding: 0.9rem 0 !important;
  }
  .listrecent h2.card-title,
  .listfeaturedtag h2.card-title {
    font-size: 1.05rem;
    margin-bottom: 0.2rem;
  }
  .listrecent h4.card-text,
  .listfeaturedtag h4.card-text {
    font-size: 0.9rem;
  }
  /* Lange Komposita am Handy trennen statt überlaufen lassen */
  .hero-title {
    font-size: 1.5rem !important;
    overflow-wrap: break-word;
    /* keine automatische Silbentrennung: Trennstellen stehen als &shy; im Text */
    hyphens: manual;
  }
  .hero-btn {
    display: block;
    width: 100%;
  }
  .hero-btn + .hero-btn {
    margin-left: 0;
    margin-top: 0.6rem;
  }
  .hero-pic img {
    max-width: 200px !important;
  }
  .hero-pic {
    margin-bottom: 1.25rem;
  }
  /* Am Handy: Kurzfassung statt voller Titelkette, Funktionszeile weg */
  .svtext-role, .svtext-full {
    display: none;
  }
  .svtext-short {
    display: inline;
  }
}
/* Ausgeklapptes Menü am Handy: volle Breite unter der Kopfzeile */
@media screen and (max-width: 767px) {
  .mediumnavigation .container {
    flex-wrap: nowrap;
    position: relative;
  }
  .mediumnavigation .navbar-collapse {
    position: absolute;
    /* + 8px: untere Innenabstand der Navigationsleiste, damit das Menü bündig anschließt */
    top: calc(100% + 8px);
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background: #fff;
    border-top: 1px solid #e9ecef;
    box-shadow: 0 6px 6px -6px rgba(0,0,0,.2);
    padding: 0 1rem;
    z-index: 1030;
  }
  .mediumnavigation .navbar-nav {
    width: 100%;
  }
  .mediumnavigation .navbar-nav .nav-item + .nav-item {
    border-top: 1px solid #f1f3f5;
  }
  .mediumnavigation .navbar-nav .nav-link {
    text-align: left;
    padding: 0.75rem 0.25rem;
  }
}
@media screen and (max-width: 767px) {
  .svtext {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    font-size: 0.6rem;
    line-height: 1.3;
    text-align: center;
    color: rgba(0,0,0,.6);
    padding: 0 8px;
  }
  .svtext-desktop-only {
    display: none;
  }
}
.navbar-toggler {
  border: none;
}
/* Bilder im Beitragstext: nie breiter als die Textspalte, Seitenverhaeltnis bleibt */
.article-post img {
  max-width: 100%;
  height: auto;
  display: block;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #e9ecef;
  border-radius: 4px;
  padding: 4px;
  background: #fff;
}
/* Bildunterschrift: der zentrierte Absatz direkt nach einem Bild */
.article-post p > img + * {
  margin-top: 0;
}
/* Vorformatierte Bloecke (Dateipfade) am Handy scrollbar statt ueberlaufend */
.article-post pre {
  max-width: 100%;
  overflow-x: auto;
}
/* Zeigt an, dass sich Bilder im Beitrag vergroessern lassen (Plugin Viewerjs) */
#page_content img {
  cursor: zoom-in;
}
/* Abschnittsueberschriften im Beitragstext.
   Deutlich groesser als der Fliesstext, aber unter der Seitenueberschrift.
   Grosser Abstand nach oben, kleiner nach unten: Die Ueberschrift gehoert
   sichtbar zum Text darunter, nicht zum Absatz darueber. */
.article-post h2 {
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.01em;
  margin: 3rem 0 1rem 0;
  color: rgba(0, 0, 0, .9);
}
/* Unterabschnitte innerhalb einer h2-Gruppe. Muss kleiner sein als h2,
   sonst kehrt sich die Hierarchie optisch um (Bootstrap-Standard waere 28px). */
.article-post h3 {
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.35;
  margin: 2rem 0 0.75rem 0;
  color: rgba(0, 0, 0, .9);
}
/* Erste Ueberschrift direkt unter der Seitenueberschrift ohne Extra-Abstand */
.article-post > h2:first-child,
.article-post > h3:first-child {
  margin-top: 0;
}
/* Folgt ein h3 unmittelbar auf seinen Gruppentitel, kein doppelter Abstand */
.article-post h2 + h3 {
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .article-post h3 {
    font-size: 1.1rem;
    margin: 1.5rem 0 0.6rem 0;
  }
}
@media screen and (max-width: 767px) {
  .article-post h2 {
    font-size: 1.3rem;
    margin: 2.25rem 0 0.75rem 0;
  }
}
/* Eingerueckter Block im Beitragstext, buendig mit Aufzaehlungen (z.B. Anschrift) */
.article-post .einzug {
  padding-left: 40px;
}
@media screen and (max-width: 767px) {
  .article-post .einzug {
    padding-left: 1.2rem;
  }
}
