/*
Theme Name: Hello HSH
Description: Child-Theme von Hello Elementor für hsh-kanzlei.com. Rahmen und Optik wie die TYPO3-Seite (fileadmin/templates).
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-hsh
*/

/* Reihenfolge wie auf der alten Seite: news-basic.css, TYPO3-Standard-CSS, newstyle.css, style.css,
   danach Ergänzungen. */

/* ---- Unverändert übernommen: typo3conf/ext/news/Resources/Public/Css/news-basic.css (auf den News-Seiten) ---- */

/**************************************/
/* Default styles for news extension */
/**************************************/
.news .clear {
	clear: both;
}

.news .nav ul {
	float: left;
	display: inline;
	margin: 0;
}

.news .nav li {
	float: left;
}

.news .nav a {
	float: left;
	display: block;
}

.news .nav:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.news .article {
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.news .article:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
}

.news .article:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.news .article .news-img-wrap {
	float: left;
	margin: 3px 12px 5px 0;
	background: #fff;
}

.news .article .news-img-wrap a {
	display: block;
	float: left;
	padding: 4px;
	border: 1px solid #ddd;
	background: #fff;
}

.news .article .news-img-wrap img {
	float: left;
	height: auto;
	width: auto;
}

.news .article .teaser-text {
	margin: 0 0 10px 0;
}

.news .article h3 {
	margin-bottom: 0;
}

.news .footer {
	clear: both;
	padding: 10px 0 0 0;
	border-top: 1px solid #eee;
	margin-top: 15px;
	color: #888;
}

.news .footer p {
	line-height: 1em;
}

.news .footer span {
	display: inline-block;
	padding-right: 8px;
	margin-right: 8px;
	border-right: 1px solid #ddd;
}

.news .footer span:last-child {
	border-right: 0;
}

.news .footer .news-category a {
	text-transform: uppercase;
}

.news .no-news-found {
	color: #DB0202;
	font-style: italic;
}

.news .page-navigation p {
	float: left;
}

.news .page-navigation ul {
	float: right;
}

.news .page-navigation ul li {
	float: left;
	display: block;
	padding: 0 2px;
	background: none;
}

.news .page-navigation ul li a {
	display: block;
}

/* category menu view */
.news-category-view ul li {
	padding: 5px 8px;
}

.news-category-view ul li li {
	padding: 2px 8px 2px 12px;
}

.news-category-view > ul > li:nth-child(even) {
	background: #f9f9f9;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

.news-category-view .category-desc {
	padding-left: 10px;
	margin-left: 10px;
	border-left: 1px solid #ddd;
}

/* single view */
.news-single .footer {
	margin-bottom: 20px;
	margin-top: 5px;
	padding: 10px 0 0 0;
	border-bottom: 0;
	border-top: 1px solid #eee;
}

.news-single .article .news-img-wrap {
	float: right;
	width: 282px;
	margin: 0 0 0 25px;
}

.news-single .article .news-img-wrap img {
	float: none;
}

.news-single .teaser-text {
	font-size: 15px;
	color: #888;
}

.news-text-wrap {
	margin-bottom: 10px;
}

.news-img-caption {
	color: #888;
}

/* related news + files */
.news-related-wrap {
	display: table;
	margin-top: 20px;
	width: 100%;
}

.news-related {
	width: 50%;
	padding: 15px;
	border: 1px solid #eee;
	display: table-cell;
}

.news-related ul li {
	line-height: 1em;
	margin-bottom: 12px;
}

.news-related ul li span {
	border-right: 1px solid #DDDDDD;
	display: inline-block;
	margin-right: 8px;
	padding-right: 8px;
	color: #888;
}

.news-related ul li span:last-child {
	border-right: 0;
	padding-right: 0;
}

.news-related h4 {
	margin-bottom: 10px;
}

.news-related-files ul li {
	margin-bottom: 20px;
}

.news-related-files .news-related-files-link .jpg {
	background-position: 0 0;
}

.news-clear {
	clear: both;
}

/* ---- Standard-CSS von fluid_styled_content und tx_form (typo3temp/Assets/bfe827fb5b.css) ---- */

/* default styles for extension "tx_frontend" */
	.ce-align-left { text-align: left; }
	.ce-align-center { text-align: center; }
	.ce-align-right { text-align: right; }

	.ce-table td, .ce-table th { vertical-align: top; }

	.ce-textpic, .ce-nowrap .ce-bodytext, .ce-gallery, .ce-row, .ce-uploads li, .ce-uploads div { overflow: hidden; }

	.ce-left .ce-gallery, .ce-column { float: left; }
	.ce-center .ce-outer { position: relative; float: right; right: 50%; }
	.ce-center .ce-inner { position: relative; float: right; right: -50%; }
	.ce-right .ce-gallery { float: right; }

	.ce-gallery figure { display: table; margin: 0; }
	.ce-gallery figcaption { display: table-caption; caption-side: bottom; }
	.ce-gallery img { display: block; }
	.ce-gallery iframe { border-width: 0; }
	.ce-border img,
	.ce-border iframe {
		border: 2px solid black;
		padding: 0px;
	}

	.ce-intext.ce-right .ce-gallery, .ce-intext.ce-left .ce-gallery, .ce-above .ce-gallery {
		margin-bottom: 10px;
	}
	.ce-intext.ce-right .ce-gallery { margin-left: 10px; }
	.ce-intext.ce-left .ce-gallery { margin-right: 10px; }
	.ce-below .ce-gallery { margin-top: 10px; }

	.ce-column { margin-right: 10px; }
	.ce-column:last-child { margin-right: 0; }

	.ce-row { margin-bottom: 10px; }
	.ce-row:last-child { margin-bottom: 0; }

	.ce-above .ce-bodytext { clear: both; }

	.ce-intext.ce-left ol, .ce-intext.ce-left ul { padding-left: 40px; overflow: auto; }

	.ce-uploads { margin: 0; padding: 0; }
	.ce-uploads li { list-style: none outside none; margin: 1em 0; }
	.ce-uploads img { float: left; padding-right: 1em; vertical-align: top; }
	.ce-uploads span { display: block; }
/* default styles for extension "tx_form" */
		div.csc-mailform ol,
		div.csc-mailform ol li {
			margin: 0;
			padding: 0;
		}

		div.csc-mailform ol li {
			overflow: hidden;
		}

		div.csc-mailform fieldset {
			margin: 0;
			padding: 0;
			position: relative;
		}

		div.csc-mailform legend {
			margin-left: 1em;
			color: #000000;
			font-weight: bold;
		}

		div.csc-mailform fieldset ol {
			padding: 1em 1em 0 1em;
		}

		div.csc-mailform fieldset li {
			padding: 0.5em;
			margin-bottom: 0.5em;
			list-style: none;
		}

		div.csc-mailform fieldset.submit {
			border-style: none;
		}

		/**
		 * Normal label
		 * Left aligned, in front of input
		 */
		div.csc-mailform li label {
			float: left;
			width: 13em;
			margin-right: 1em;
			vertical-align: baseline;
		}

		div.csc-mailform li input + label,
		div.csc-mailform li textarea + label,
		div.csc-mailform li select + label {
			float: none;
			width: auto;
			margin-right: 0;
			margin-left: 1em;
		}

		div.csc-mailform li textarea + label {
			vertical-align: top;
		}

		label em,
		legend em {
			display: block;
			color: #060;
			font-size: 85%;
			font-style: normal;
			text-transform: uppercase;
		}

		legend em {
			position: absolute;
		}

		label strong,
		legend strong {
			display: block;
			color: #C00;
			font-size: 85%;
			font-weight: normal;
			text-transform: uppercase;
		}

		legend strong {
			position: absolute;
			top: 1.4em;
		}


/* ---- Unverändert übernommen: fileadmin/templates/css/newstyle.css ---- */

.news-img-wrap .no-media-element {
display:none;
}
.news-list-view .article .footer {
width:100%;
}
body#id-3 .ce-column {
    margin-right: 0;
}

body#id-3 .ce-gallery img {
    width: 92%;
    height: auto;
}

div.csc-mailform input[type="submit"] {
    width: 150px;
    margin-left: 196px;
    margin-top: 16px;
}

/* ---- Unverändert übernommen: fileadmin/templates/css/style.css (Bildpfade ../img/ -> images/) ---- */

*{padding:0px;margin:0px;}
html, body{height:101%;font-family:Verdana;}
body{}
#bg{position:fixed;top:0px;left:0px;width:100%;height:100%;background:url(images/bg.jpg) repeat-x #BCBCBC;background-size:100% 100%;z-index:0;}
#wrapper{margin:40px auto 0px auto;position:relative;z-index:10;width:1000px;background:#fff;border-radius:10px;padding:20px;box-shadow:0px 0px 3px rgba(0,0,0,0.3);}
#snow {position: fixed;width: 90%;margin: 0px 5%;height: 100%;top:0;left: 0;}
#logo{float:left;height:200px;width:861px;padding:10px 0px 0px 10px;background:url(images/gradient.png) no-repeat;position:absolute;}
#footer-left img,
#logo img{border:none;}
#footer-center img{border-color:#fff;box-shadow:0px 0px 5px #000;}
#header{position:relative;z-index:60;height:210px;}
#header-txt{float:right;text-align:right;padding:10px 10px 0px 10px;background:rgba(255,255,255,0.8);border-width:0px 0px 1px 1px;border-color:#fff;border-style:solid;border-radius:0px 0px 0px 8px;display:none;}
#header-txt h1{font-size:16px;color:#2A2F71;}
#header-txt .fon{font-size:12px;color:#2A2F71;text-align:right;}
#header-txt .fon td{padding:0px 0px 0px 5px;}
#header-txt a{font-size:12px;color:#2A2F71;text-decoration:none;}
#header-txt a:hover{color:#2A2F71;text-decoration:underline;}
.clear{clear:both;}
#pictures{height:210px;position:absolute;z-index:50;}
.slideshow{box-shadow:3px 3px 3px rgba(0,0,0,0.3);}

.pictures .csc-textpic-center-inner,
.slideshow .csc-textpic-image .csc-textpic-last,
.slideshow .csc-textpic-image .csc-textpic {
	max-height: 210px;
}
#c55 .csc-textpic-imagecolumn td a{border-radius:8px;float:left;overflow:hidden;width:100px;height:125px;}
.align-center{text-align:center;}
.align-left{text-align:left;}
.align-justify{text-align:justify;}
.align-right{text-align:right;}
.left-content{padding:51px 0px 20px 0px;width:200px;float:left;}
.content{padding:51px 20px 20px 20px;width:560px;float:left;}
.right-content{padding:51px 0px 20px 0px;width:200px;float:left;}
.hsh-qrcode{text-align:center;}
.content h1{font-size:26px;padding-bottom:10px;color:#2A2F71;}
.content p{color:#666;font-size:14px;padding-bottom:10px;}
.content a{color:#666;}
.content a:hover{text-decoration:underline;color:#000;}
.content ul.csc-sitemap{list-style-type:square;margin:0px 0px 20px 20px;font-size:14px;}
.csc-textpic-caption{font-size:10px;text-align:center;}
#content ul{font-size:14px;color:#666;list-style:none;}
#content ol{font-size:14px;color:#666;list-style:square;margin-left:15px;}
#footer{color:#fff;font-size:14px;margin-top:30px;position:relative;z-index:10;line-height:22px;}
.footer{margin:0px auto;width:1000px;padding:20px;background:url(images/footer.png);background-size: 100% 100%;border-radius:10px;box-shadow:0px 0px 3px rgba(0,0,0,0.3);}
.footer a{color:#fff;text-decoration:none;}
.footer a:hover{text-decoration:underline;}
#footer-left{width:400px;float:left;}
#footer-center{width:200px;float:left;}
#footer-right{width:400px;float:left;text-align:right;}
#footer-right .google-map-pic{border-radius:10px;overflow:hidden;width:310px;height:100px;}
.kontakt-left{float:left;width:50%;}
.kontakt-right{float:right;}
#copyright a{color:#fff;text-decoration:none;}
#copyright a:hover{text-decoration:underline;}
#copyright b{color:red;}
#copyright{margin:0px auto;width:980px;text-align:center;}
#copyright p{line-height:155px;color:#999;}
#footer .kontakt img{position:relative;top:3px;}
div.csc-mailform label em{color:#006600;display:inline-block;font-size:8px;margin-left:5px;float:none;font-style:normal;text-transform:uppercase;}
div.csc-mailform li label{float:left;margin-right:1em;vertical-align:baseline;width:180px;}
div.csc-mailform input[type=text],div.csc-mailform input[type=submit]{width:250px;border:1px solid #777;padding:5px;border-radius:4px;}
div.csc-mailform input[type=submit]{width:150px;}
div.csc-mailform input[type=text]:focus{border:1px solid #2A2F71;}
div.csc-mailform li{line-height:30px;list-style:none;}
div.csc-mailform textarea{height:100px;width:250px;border:1px solid #777;padding:5px;border-radius:4px;}
div.csc-mailform textarea:focus{border:1px solid #2A2F71;}
.content div.article{padding:10px 10px 0px 10px;border:1px solid #DDDDDD;border-radius:5px;}
.content div.article div.news-header{margin:0px 0px 5px 0px;}
.content div.article div.news-footer p{text-align:right;padding:0px 0px 10px 0px;font-size:10px;font-style:italic;}
.content div.article div.news-img-wrap a:hover{border:1px solid #2F7098;}
.content div.article div.teaser-text a.more,
.content div.article div.news-backlink-wrap a{font-size:12px;color:#2F7098;text-decoration:none;}
.content div.article div.teaser-text a.more:hover,
.content div.article div.news-backlink-wrap a:hover{color:#2A2F71;}
.content div.article h3{font-size:16px;color:#2A2F71;text-decoration:none;}
.content div.article h3 a{font-size:16px;color:#2A2F71;text-decoration:none;}
.content div.article h4{font-size:14px;color:#2A2F71;}
.content div.article h3 a:hover{color:#2F7098;text-decoration:none;}
.content div.news-single div.article{padding:0px;border:none;}
.content div.article p.news-img-caption{font-size:10px;text-align:center;}
.content div.article div.news-related ul li a{font-size:12px;}
.content div.article div.news-related ul li a:hover{color:#2F7098;}
.content div.article div.news-related ul li{font-size:10px;}
.content div.article div.news-related ul li span{margin:5px 0px 0px 0px;}
.content div.article div.news-related-wrap{border:1px solid #2A2F71;border-radius:5px;background:#EEEEEE;}
.content div.article div.news-related{border:none;}
#navi{height:45px;position:relative;width:100%;z-index:60;background:rgba(42, 47, 113, 0.8);border-radius:5px;box-shadow:3px 3px 3px rgba(0,0,0,0.3);margin:-55px 0px 0px 0px;}
.navi{padding:0px 20px;}
#navi ul{list-style:none;position:relative;}
#navi li{display:inline;float:left;}
#navi a{color:#FFFFFF;float:left;line-height:45px;text-decoration:none;padding:0px 15px;}
#navi a:hover{background:#2F7098;transition-delay:0s;transition-duration:0.4s;transition-property:all;transition-timing-function:ease-in-out;}
#navi a.current{background:#2F7098;transition-delay:0s;transition-duration:0.4s;transition-property:all;transition-timing-function:ease-in-out;}
#navi a.main_page{background:#2F7098;}
#navi ul ul{display:none;position:absolute;width:250px;border-radius:0px 0px 5px 5px;overflow:hidden;background:rgba(42, 47, 113, 0.8);box-shadow:3px 3px 3px rgba(0,0,0,0.3);}
#navi li:hover > ul{display:block;position:absolute;top:45px;z-index:20;}
#navi #nav_7 > ul{margin-left:-128px;}
#navi ul ul a{width:220px;float:none;display:block;line-height:25px;font-size:12px;}
#navi ul ul a:hover{background:#2F7098;}
.subnavi{display:inline-block;}
.subnavi ul{list-style:none;}
.subnavi li{background:rgba(42, 47, 113, 0.8);overflow:hidden;width:200px;}
.subnavi li:nth-child(1){border-radius:5px 5px 0px 0px;}
.subnavi li:nth-last-child(1){border-radius:0px 0px 5px 5px;}
.subnavi a{color:#fff;float:left;width:190px;padding-left:10px;line-height:22px;font-size:13px;text-decoration:none;}
.subnavi li:hover{text-decoration:underline;background:#2F7098;transition:0.8s;}
.subnavi li a.current{background:#2F7098;}
.subnavi #nav_22 a{text-indent:-10px;padding-left:20px;line-height:18px;}
.layout_3 {
	margin-bottom: 50px;
	border: 2px solid red;
	padding: 10px;
	background: rgba(0,0,0,0.1);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.3);
}

.layout_3 a {
	color: red;
}

#nav-btn {
	display: none;
}

.show-sub.on-mobile {
	display: none;
}

.searchbar *, [class*="searchbar--"] * {
	box-sizing: border-box;
}

.searchbar .searchbar--header,
.content .searchbar--header {
	color: #2A2F71;
	font-weight: bold;
	font-size: 16px;
}

.content .searchbar--header {
	font-size: 24px;
	margin-bottom: 16px;
}

.searchbar .searchbar--box-wrap {
	display: -webkit-flex;
	display: -moz-flex;
	display: -o-flex;
	display: flex;
}

.right-content .searchbar .searchbar--input {
	width: 170px;
}

.content .searchbar--input input {
	min-width: 100%;
	line-height: 38px;
	height: 40px;
	border: 1px solid #2A2F71;
	padding: 0 5px;
}

.searchbar .searchbar--input input {
	width: 100%;
	height: 30px;
	line-height: 28px;
	border: 1px solid #2A2F71;
	border-right: none;
	padding: 0 5px;
}

.searchbar .searchbar--submit {
	width: 30px;
	height: 30px;
	border: 1px solid #2A2F71;
	background-image: url(images/searchicon.png);
	background-size: 22px;
	background-position: center;
	background-repeat: no-repeat;
}

.searchbar .searchbar--submit input {
	width: 30px;
	height: 30px;
	color: transparent;
	background: transparent;
	border: none;
	box-shadow: none;
	cursor: pointer;
}

.content .searchbar--submit input {
	padding: 0 20px;
	color: #2A2F71;
	border: 1px solid #2A2F71;
	background: transparent;
	line-height: 38px;
	height: 40px;
	font-size: 18px;
	cursor: pointer;
	margin-top: 16px;
}

.tx-indexedsearch .tx-indexedsearch-searchbox INPUT.tx-indexedsearch-searchbox-sword {
	width: 100%;
}

.tx-indexedsearch-browsebox {
	margin-bottom: 16px;
}

.navi .searchbar {
	display: none;
}

.tx-sttagcloud-pi1 {
	padding: 20px 0px;
}

.tx-sttagcloud-pi1 a {
	white-space: nowrap;
	font-size: 1em;
	font-weight: bold;
	text-decoration: none;
	color: #666;
	display: block;
	line-height: 20px;
	transition: 1s;
}

.tx-sttagcloud-pi1 a:hover {
	color: #ff0000 !important;
}

.tagcloudContainer ul {
	position: relative;
	left: -50px;
	
}

@media screen and (max-width: 1060px) {
	*, *:after, *:before {
		box-sizing: border-box;
	}
	
	#bg {
		display: none;
	}
	
	#wrapper {
		width: 100%;
		margin: 0;
		box-shadow: none;
		border: none;
		position: relative;
	}
	
	#pictures {
		max-width: calc(100% - 40px);
		overflow: hidden;
	}
	
	#logo {
		width: 100%;
		height: 100%;
	}
	
	#logo a {
		display: block;
	}
	
	#footer .footer {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	
	#footer-left,
	#footer-right {
		width: 200px;
		float: none;
	}
	
	#footer-center {
		float: none;
	}
	
	.kontakt-left {
		width: 100%;
	}
	
	#footer .footer .clear {
		display: none;
	}
	
	#content .subnavi a {
		width: 100%;
		float: none;
		display: block;
	}
}

@media screen and (max-width: 1017px) {
	#wrapper {
		padding-left: 0;
		padding-right: 0;
	}
	
	#content img {
		width: 100%;
		height: auto;
	}
	
	#wrapper {
		position: static;
		overflow-x: hidden;
		padding-top: 100px;
	}
	
	#pictures {
		position: relative;
		max-width: 100%;
		height: auto;
	}
	
	#pictures * {
		width: 100% !important;
		margin: 0;
	}
	
	#pictures img {
		height: auto;
	}
	
	#nav-btn {
		display: block;
		position: fixed;
		top: 0px;
		right: 0px;
		width: 100px;
		height: 100px;
		z-index: 99;
		padding: 20px;
		background-color: #FFF;
	}
	
	#nav-btn .nav-btn {
		position: relative;
		width: 60px;
		height: 60px;
		border: none;
		box-shadow: none;
		outline: none;
		-webkit-appearance: none;
		background-color: transparent;
		cursor: pointer;
	}
	
	#nav-btn .nav-btn .btn-part {
		position: absolute;
		left: 15px;
		width: 30px;
		height: 2px;
		background-color: #2F7098;
		-webkit-transition: all .3s ease;
		-moz-transition: all .3s ease;
		-o-transition: all .3s ease;
		transition: all .3s ease;
	}
	
	#nav-btn .nav-btn .btn-part.top {
		top: 12px;
	}
	
	#nav-btn .nav-btn .btn-part.mid {
		top: 21px;
	}
	
	#nav-btn .nav-btn .btn-part.bot {
		top: 30px;
	}
	
	#nav-btn .nav-btn .btn-text {
		padding-top: 36px;
		height: 60px;
		line-height: 20px;
		display: block;
		font-size: 1.4em;
		color: #2F7098;
	}
	
	#nav-btn .nav-btn.is-clicked .btn-part.top {
		top: 21px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	#nav-btn .nav-btn.is-clicked .btn-part.mid {
		top: 21px;
		-webkit-transform: scale(0);
		-moz-transform: scale(0);
		-o-transform: scale(0);
		transform: scale(0);
	}
	
	#nav-btn .nav-btn.is-clicked .btn-part.bot {
		top: 21px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	
	#header {
		position: fixed;
		width: 100%;
		top: 0;
		left: 0;
		height: 100px;
		background-color: #FFF;
		box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.2);
	}
	
	#header #logo {
		position: static;
	}
	
	#logo img {
		height: 80px;
		width: auto;
	}
	
	#navi {
		position: fixed;
		background-color: #FFF;
		width: 100%;
		height: 100%;
		top: -100%;
		left: 0;
		box-shadow: none;
		border-radius: 0;
		z-index: 98;
		margin: 0;
		overflow-y: scroll;
		opacity: 0;
		-webkit-transition: all .3s ease;
		-moz-transition: all .3s ease;
		-o-transition: all .3s ease;
		transition: all .3s ease;
	}
	
	#navi.is-active {
		top: 0;
		opacity: 1;
	}
	
	#navi .navi {
		padding: 80px 20px 40px;
	}

	.navi .searchbar {
		display: block;
		max-width: 500px;
		margin: 0 auto;
		margin-bottom: 20px;
	}
	
	.navi .searchbar--input {
		width: calc(100% - 30px);
	}
	
	#navi .navi > ul {
		max-width: 500px;
		margin: 0 auto;
	}
	
	#navi li {
		display: block;
		float: none;
	}
	
	#navi a {
		float: none;
		display: block;
		color: rgba(0, 0, 0, 0.87);
	}
	
	#navi a:hover,
	#navi ul ul a:hover {
		color: #2F7098;
		background-color: transparent;
	}
	
	#navi a.current,
	#navi a.main_page {
		background-color: transparent;
		border-left: 2px solid #2F7098;
	}
	
	#navi li:hover > ul {
		position: static;
	}
	
	#navi ul ul {
		display: block;
		position: relative;
		width: auto;
		background: transparent;
		box-shadow: none;
		border-radius: none;
	}
	
	#navi ul ul a {
		padding-left: 40px;
		font-size: 14px;
		line-height: 28px;
		width: 100%;
	}
	
	#navi #nav_7 > ul {
		margin: 0;
	}
	
	#content {
		display: -webkit-flex;
		-webkit-justify-content: space-between;
		display: flex;
		justify-content: space-between;
	}
	
	#content .right-content {
		display: none;
	}
	
	#content .left-content,
	#content .content,
	#content .right-content {
		float: none;
	}
	
	#content .left-content {
		width: 28%;
	}
	
	#content .content {
		width: 72%;
	}
	
	#content .clearfix {
		display: none;
	}
	
	#content #c26,
	#content #c27 {
		height: 439px;
	}
	
	#content iframe {
		width: 100% !important;
		height: 420px !important;
	}
	
	#footer .footer {
		width: 100%;
	}
	
	#footer img {
		width: 16px;
		height: 16px;
	}
	
	#footer #footer-center img {
		width: 100%;
		height: auto;
	}
}

@media screen and (max-width: 800px) {
	#content .left-content {
		width: 30%;
	}
	
	#content .content {
		width: 70%;
	}
	
	#content .right-content {
		display: none;
	}
}

@media screen and (max-width: 600px) {
	#wrapper {
		padding-top: 80px;
	}
	
	#header {
		height: 80px;
	}
	
	#logo {
		padding-right: 80px;
	}
	
	#logo img {
		height: 60px;
		width: auto;
	}
	
	#nav-btn {
		padding: 10px;
		width: 80px;
		height: 80px;
	}
	
	#c15 {
		display: none;
	}
	
	#content {
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	#content .left-content {
		display: none;
	}
	
	#content .content {
		width: 100%;
	}
	
	#content #c26,
	#content #c27 {
		height: 299px;
	}
	
	#content iframe {
		width: 100%;
		height: 280px !important;
	}
	
	#footer .footer {
		background: rgba(0, 0, 0, 0.70);
		background-image: none;
		border-radius: 0;
	}
	
	#footer .footer {
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
/*		-webkit-flex-direction: column;
		flex-direction: column;*/
	}
	
	#footer #footer-left {
		order: 1;
		text-align: center;
		width: 50%;
	}
	
	#footer #footer-center {
		order: 3;
		text-align: center;
		width: 100%;
	}
	
	#footer #footer-right {
		order: 2;
		text-align: center;
		width: 50%;
	}
	
	.kontakt-right {
		float: none;
	}
}

@media screen and (max-width: 440px) {
	div.csc-textpic-intext-right .csc-textpic-imagewrap {
		float: none;
		margin: 0;
	}
	
	.content h1 {
		font-size: 1.1em;
	}
	
	#footer .footer {
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	#footer #footer-left {
		width: 100%;
		padding-bottom: 20px;
	}
	
	#footer #footer-right {
		width: 100%;
	}
}

@media screen and (max-width: 360px) {
	#logo {
		padding: 15px 80px 0 15px;
	}
	
	#logo img {
		height: 50px;
		width: auto;
	}
}

#custom-popup {
	position: fixed;
	top: 0; left: 0;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
  }
#popup-content {
	background: white;
	padding: 2rem;
	border-radius: 10px;
	text-align: center;
	max-width: 90%;
	box-shadow: 0 4px 20px rgba(0,0,0,0.3);
}
#popup-content img {
	max-width: 100%;
	height: auto;
	margin-bottom: 1rem;
}

/* ---- Ersatz für styleIn3/4/6.css: Im Bereich mit Untermenü links klappt oben nichts aus ---- */

@media screen and (min-width: 1001px) {
	#navi li.hsh-subnav-section > ul {
		display: none !important;
	}
}

/* ---- Elementor und WordPress an das TYPO3-Markup angleichen ---- */

/* Elementor rechnet mit border-box, das alte CSS erst unter 1060 px (dort für alles) */
@media screen and (min-width: 1061px) {
	.content .elementor img,
	.content .elementor div.csc-mailform * {
		box-sizing: content-box;
	}
}
.content .elementor-widget-text-editor {
	color: inherit;
	display: flow-root; /* hält umflossene Bilder wie .ce-textpic { overflow: hidden } */
}
.content .elementor-widget-image img {
	display: block;
}
/* Elementor nimmt Links die Unterstreichung (.elementor a), im Original sind sie unterstrichen */
.content .elementor a {
	text-decoration: underline;
}
/* Bild im Text (fluid_styled_content .ce-intext.ce-right / .ce-left) */
.content img.alignright {
	float: right;
	margin: 0 0 10px 10px;
}
.content img.alignleft {
	float: left;
	margin: 0 10px 10px 0;
}
img.ce-border {
	border: 2px solid black;
	padding: 0;
	box-sizing: content-box; /* Rahmen außen wie im Original, auch unter 1060 px */
}
/* Anwälte (Seite 3): newstyle.css verkleinert die Fotos auf 92 % ihrer 112 px breiten Spalte ohne Abstand;
   im Flex-Container von Elementor braucht die Spalte eine feste Breite */
body#id-3 .content .ce-gallery {
	gap: 0 !important;
}
body#id-3 .content .ce-gallery > .elementor-widget-image {
	flex: none;
	width: 112px;
}
/* Bildreihen brechen auf schmalen Bildschirmen um wie die alten Floats (linksbündig) */
@media screen and (max-width: 1017px) {
	.content .ce-gallery {
		flex-wrap: wrap !important;
		justify-content: flex-start !important;
	}
}
/* Kanzleibild links (Element c15) */
.subnavi #c15 img {
	display: block;
}
/* Suchfeld: Beschriftung als <label> statt <div> */
.searchbar label.searchbar--header {
	display: block;
}
.searchbar .searchbar--input input::-webkit-search-cancel-button {
	-webkit-appearance: none;
}
/* Kontaktformular: E-Mail-Feld wie die Textfelder, Spamfalle unsichtbar */
div.csc-mailform input[type=email] {
	width: 250px;
	border: 1px solid #777;
	padding: 5px;
	border-radius: 4px;
}
div.csc-mailform input[type=email]:focus {
	border: 1px solid #2A2F71;
}
div.csc-mailform .hsh-kontakt-hp {
	position: absolute;
	left: -9999px;
}
.hsh-kontakt-error {
	color: #C00 !important;
}
/* Tag-Cloud: Kugel erst, wenn das Skript läuft; ohne Skript eine einfache Liste.
   Die Verschiebung um -50 px (style.css) bleibt wie im Original. */
.tagcloudContainer.is-sphere {
	position: relative;
	width: 200px;
	height: 350px;
	overflow: hidden;
}
.tagcloudContainer.is-sphere li {
	position: absolute;
	list-style: none;
}
.tagcloudContainer a {
	color: #2A2F71;
}
/* Kopf-Slideshow: Überblenden statt jquery.cycle */
#c88 {
	position: relative;
}
#c88 img {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: opacity 5s ease-in-out;
}
#c88 img:first-child {
	position: relative;
}
#c88 img.is-active {
	opacity: 1;
}
/* Suchergebnisse */
.tx-indexedsearch-res h3 {
	font-size: 16px;
	color: #2A2F71;
	padding-bottom: 4px;
}
.tx-indexedsearch-res h3 a {
	color: #2A2F71;
	text-decoration: none;
}
.content .searchbar--content {
	margin-bottom: 20px;
}
.content .nav-links {
	font-size: 14px;
	color: #666;
}
.content .nav-links .page-numbers {
	margin-right: 6px;
}
/* News-Blätterleiste wie f3-widget-paginator */
.content .page-navigation {
	font-size: 14px;
	color: #666;
	overflow: hidden;
	margin-bottom: 10px;
}
.content .page-navigation p {
	float: left;
	padding: 0;
}
.content .page-navigation ul.f3-widget-paginator {
	float: right;
}
.content .page-navigation ul.f3-widget-paginator li {
	display: inline;
	margin-left: 4px;
}

/* ---- Ergänzungen gegenüber dem Original ---- */

/* Datenschutz-Hinweis unten (ersetzt den Cookie-Banner mindshape_cookie_hint, gleiche Optik) */
#privacy-note {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 10px 40px;
	background: rgba(0, 0, 0, 0.85);
	color: #ddd;
	font-size: 13px;
	line-height: 1.5;
}
#privacy-note[hidden],
.elementor-editor-active #privacy-note {
	display: none;
}
#privacy-note a {
	color: #fff;
}
#privacy-note button {
	flex: none;
	min-width: 94px;
	padding: 6px 16px;
	border: 0;
	border-radius: 5px;
	background: #ddd;
	color: #000;
	font-size: 14px;
	cursor: pointer;
}
@media screen and (max-width: 600px) {
	#privacy-note {
		padding: 10px 16px;
	}
}
/* Tastaturbedienung: sichtbarer Fokus */
#navi a:focus-visible,
.subnavi a:focus-visible,
.nav-btn:focus-visible {
	outline: 2px solid #fff;
	outline-offset: -2px;
}
