/*
Theme Name: wp-andreas
Template: astra
Author: Lars Kissel
Version: 1.0.0
Updated: 2025-12-07 00:16:12
*/

/* * * * * *
*	Overwrite parent
* * * * * */
html {
	font-size: 100%;
}
body {
	letter-spacing: 0em;
}


/* * * * * *
*	"style/typotemp.css"
* * * * * */
/* default styles for extension "tx_felogin_pi1" */
.tx-felogin-pi1 label {
	display: block;
}
/* default styles for extension "tx_pitgooglemaps_pi1" */
.pit_googlemaps-sidebar {padding:5px;}
.pit_googlemaps-map-withsidebar {float:left; margin-right:10px;}
.tx-pitgooglemaps-pi1 {overflow:hidden;}
.pit_googlemaps-sidebar .sidebarMarker {display:block;}
/* default styles for extension "tx_cssstyledcontent" */
/* Headers */
.csc-header-alignment-center { text-align: center; }
.csc-header-alignment-right { text-align: right; }
.csc-header-alignment-left { text-align: left; }

div.csc-textpic-responsive, div.csc-textpic-responsive * { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;  }

/* Clear floats after csc-textpic and after csc-textpic-imagerow */
div.csc-textpic, div.csc-textpic div.csc-textpic-imagerow, ul.csc-uploads li { overflow: hidden; }

/* Set padding for tables */
div.csc-textpic .csc-textpic-imagewrap table { border-collapse: collapse; border-spacing: 0; }
div.csc-textpic .csc-textpic-imagewrap table tr td { padding: 0; vertical-align: top; }

/* Settings for figure and figcaption (HTML5) */
div.csc-textpic .csc-textpic-imagewrap figure, div.csc-textpic figure.csc-textpic-imagewrap { margin: 0; display: table; }

/* Captions */
figcaption.csc-textpic-caption { display: table-caption; }
.csc-textpic-caption { text-align: left; caption-side: bottom; }
div.csc-textpic-caption-c .csc-textpic-caption, .csc-textpic-imagewrap .csc-textpic-caption-c { text-align: center; }
div.csc-textpic-caption-r .csc-textpic-caption, .csc-textpic-imagewrap .csc-textpic-caption-r { text-align: right; }
div.csc-textpic-caption-l .csc-textpic-caption, .csc-textpic-imagewrap .csc-textpic-caption-l { text-align: left; }

/* Float the columns */
div.csc-textpic div.csc-textpic-imagecolumn { float: left; }

/* Border just around the image */
div.csc-textpic-border div.csc-textpic-imagewrap img {
	border: 2px solid black;
	padding: 0px 0px;
}

div.csc-textpic .csc-textpic-imagewrap img { border: none; display: block; }

/* Space below each image (also in-between rows) */
div.csc-textpic .csc-textpic-imagewrap .csc-textpic-image { margin-bottom: 10px; }
div.csc-textpic .csc-textpic-imagewrap .csc-textpic-imagerow-last .csc-textpic-image { margin-bottom: 0; }

/* colSpace around image columns, except for last column */
div.csc-textpic-imagecolumn, td.csc-textpic-imagecolumn .csc-textpic-image { margin-right: 10px; }
div.csc-textpic-imagecolumn.csc-textpic-lastcol, td.csc-textpic-imagecolumn.csc-textpic-lastcol .csc-textpic-image { margin-right: 0; }

/* Add margin from image-block to text (in case of "Text & Images") */
div.csc-textpic-intext-left .csc-textpic-imagewrap,
div.csc-textpic-intext-left-nowrap .csc-textpic-imagewrap {
	margin-right: 10px;
}
div.csc-textpic-intext-right .csc-textpic-imagewrap,
div.csc-textpic-intext-right-nowrap .csc-textpic-imagewrap {
	margin-left: 10px;
}

/* Positioning of images: */

/* Center (above or below) */
div.csc-textpic-center .csc-textpic-imagewrap, div.csc-textpic-center figure.csc-textpic-imagewrap { overflow: hidden; }
div.csc-textpic-center .csc-textpic-center-outer { position: relative; float: right; right: 50%; }
div.csc-textpic-center .csc-textpic-center-inner { position: relative; float: right; right: -50%; }

/* Right (above or below) */
div.csc-textpic-right .csc-textpic-imagewrap { float: right; }
div.csc-textpic-right div.csc-textpic-text { clear: right; }

/* Left (above or below) */
div.csc-textpic-left .csc-textpic-imagewrap { float: left; }
div.csc-textpic-left div.csc-textpic-text { clear: left; }

/* Left (in text) */
div.csc-textpic-intext-left .csc-textpic-imagewrap { float: left; }

/* Right (in text) */
div.csc-textpic-intext-right .csc-textpic-imagewrap { float: right; }

/* Right (in text, no wrap around) */
div.csc-textpic-intext-right-nowrap .csc-textpic-imagewrap { float: right; }

/* Left (in text, no wrap around) */
div.csc-textpic-intext-left-nowrap .csc-textpic-imagewrap { float: left; }

div.csc-textpic div.csc-textpic-imagerow-last, div.csc-textpic div.csc-textpic-imagerow-none div.csc-textpic-last { margin-bottom: 0; }

/* Browser fixes: */

/* Fix for unordered and ordered list with image "In text, left" */
.csc-textpic-intext-left ol, .csc-textpic-intext-left ul { padding-left: 40px; overflow: auto; }

/* File Links */
ul.csc-uploads { padding: 0; }
ul.csc-uploads li { list-style: none outside none; margin: 1em 0; }
ul.csc-uploads img { float: left; margin-right: 1em; vertical-align: top; }
ul.csc-uploads span { display: block; }
ul.csc-uploads span.csc-uploads-fileName { text-decoration: underline; }

/* Table background colors: */

table.contenttable-color-1 { background-color: #EDEBF1; }
table.contenttable-color-2 { background-color: #F5FFAA; }
table.contenttable-color-240 { background-color: black; }
table.contenttable-color-241 { background-color: white; }
table.contenttable-color-242 { background-color: #333333; }
table.contenttable-color-243 { background-color: gray; }
table.contenttable-color-244 { background-color: silver; }
/* specific page styles for extension "tx_cssstyledcontent" */
.csc-textpic-intext-right-nowrap .csc-textpic-text { margin-right: 310px; }
.csc-textpic-intext-left-nowrap .csc-textpic-text { margin-left: 310px; }
/* 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;
}

/**
	* Labels alignment right
	*/
.labels-alignment-right label,
.labels-alignment-right .fieldset-subgroup legend,
.labels-alignment-right.fieldset-subgroup legend {
	text-align: right;
}

/**
	* Horizontal fieldset
	*/
fieldset.fieldset-horizontal {
	border-width: 0;
}

fieldset.fieldset-horizontal ol {
	padding: 0;
}

fieldset.fieldset-horizontal li {
	float: left;
	padding: 0;
	margin-right: 1em;
}

fieldset.fieldset-horizontal.label-below label {
	display: block;
	margin-left: 0;
	margin-top: 0.2em;
	font-size: 90%;
	color: #999999;
	text-align: left;
}

fieldset.fieldset-horizontal label em {
	display: inline;
}

/**
	* Subgroup fieldset
	*/
fieldset.fieldset-subgroup {
	margin-bottom: -2em;
	border-style: none;
}

fieldset.fieldset-subgroup legend {
	margin-left: 0;
	padding: 0;
	font-weight: normal;
	width: 13em;
}

fieldset.fieldset-subgroup ol {
	position: relative;
	top: -1.4em;
	margin: 0 0 0 14em;
	padding: 0;
}

fieldset.fieldset-subgroup li {
	padding: 0;
}

fieldset.fieldset-subgroup input + label {
	float: none;
	width: auto;
	display: inline;
	margin: 0 0 0 1em;
}

/**
	* Labels as block
	* Labels displayed above or below the input fields
	*/
.labels-block label {
	display: block;
	float: none;
	margin: 0 0 0.5em;
	width: auto;
}

.labels-block input + label,
.labels-block textarea + label {
	margin: 0.5em 0 0;
}

.labels-block fieldset.fieldset-subgroup,
fieldset.labels-block.fieldset-subgroup {
	margin-bottom: 0;
}

.labels-block .fieldset-subgroup legend,
.labels-block.fieldset-subgroup legend {
	width: auto;
}

.labels-block .fieldset-subgroup legend em,
.labels-block.fieldset-subgroup legend em {
	position: relative;
}

.labels-block .fieldset-subgroup legend strong,
.labels-block.fieldset-subgroup legend strong {
	position: relative;
	top: 0;
}

.labels-block .fieldset-subgroup ol,
.labels-block.fieldset-subgroup ol {
	top: 0;
	margin: 0;
	padding: 0.5em 0 0;
}


/* * * * * *
*	"style/style.css"
* * * * * */
/* global */
html{height: 100%;}

body
{ font-family: verdana, arial, sans-serif;
	padding: 0px;
	margin: 0px;
	font-size: .68em;
}

p
{ margin: 0px;
	padding: 0px 0px 16px 0px;
	line-height: 1.7em;
}

table {
	margin: 0;
}

table td img{
	border: 0px;
	text-align: left;
	line-height: 1.7em;
	padding-right:0px;
}

h1
{ font-family: arial, sans-serif;
	font-size: 140%;
	letter-spacing: .1em;
}

h2
{ margin: 0px;
	padding: 0px 0px 4px 0px;
	font-size: 100%;
}

img{border: 0px;}

a{outline: none;text-decoration:none}


/* image positioning - left, right and center */
.left
{ float: left;
	padding: 0px 8px 0px 0px;
}

.right
{ float: right;
	padding: 0px 0px 0px 8px;
}

.center
{ display: block;
	text-align: center;
	margin: 0 auto;
}

/* block quote */
blockquote
{ margin: 20px 0px 20px 0px;
	padding: 10px 20px 0px 20px;
	border-left: 8px solid;
}

/* unordered list */
ul
{ margin: 8px 0px 0px 16px;
	padding: 0px;
}

ul li
{ list-style-type: square;
	margin: 0px 0px 11px 0px;
	padding: 0px;
}

/* ordered list */
ol
{ margin: 8px 0px 0px 24px;
	padding: 0px;
}

ol li
{ margin: 0px 0px 11px 0px;
	padding: 0px;
}

/* margin lefts / margin rights - to centre content */
#root, #links, #footer, #logo, #menu, #content
{ margin-left: auto;
	margin-right: auto;
}

/* root container
#root{float:left;width: 770px;margin-top:10px;margin-left:100px;overflow: hidden;}
	*/
#root{width: 770px;margin-top:10px;overflow: hidden;}

/* links above the logo / footer */
#links, #footer
{ width: 732px;
	height: 14px;
	font-size: 88%;
	text-transform: uppercase;
	padding: 8px 0px 0px 0px;
}

#links{text-align: right;}

#footer
{ text-align: center;
	border-top: 1px solid;
}

#links a, #footer a, #links a:hover, #footer a:hover{text-decoration: none;}

/* logo */
#logo
{ width: 770px;
	height: 180px;
	border-top: 0px solid;
	border-bottom: 0px solid;
}


#logo h1, #logo h2, #logo h4
{ margin: 0px;
	letter-spacing: .2em;
}

#logo h1
{ padding: 5px 0px 0px 125px;
	font-size: 180%;
}

#logo h2
{ font-family: arial, sans-serif;
	padding: 8px 0px 0px 142px;
	letter-spacing: .1em;
	font-size: 165%;
}

#logo h3
{ font-family: arial, sans-serif;
	margin-top: 9px;
	padding: 0px 0px 0px 125px;
	line-height: 16px;
	font-size: 110%;
}

#logo h3 li
{margin: 0px;
}

#logo h4
{ font-family: arial, sans-serif;
	margin-top: -87px;
	padding: 0px 0px 0px 450px;
	line-height: 16px;
	font-size: 180%;
}

#logo h5
{ font-family: arial, sans-serif;
	margin-top: 4px;
	padding: 0px 0px 0px 450px;
	line-height: 16px;
	font-size: 110%;
}

/* navigation menu */
#menu
{ height: 26px;
	width: 400px;
	margin-top: -35px;
	margin-left: 300px;
	position: relative;
}

#menu ul{margin: 0px auto;}

#menu li
{ float: left;
	margin: 0px 1px 0px 0px;
	padding: 0px;
	list-style: none;
}

#menu li a
{ display: block;
	float: left;
	height: 22px;
	text-decoration: none;
	padding: 6px 7px 0px 7px;
	text-transform: uppercase;
	font-size: 88%;
	border-left: 0px solid;
	border-right: 0px solid;
}

#menu li a:hover, #menu li a#selected, #menu li a#selected:hover
{ height: 22px;
	padding: 6px 7px 0px 7px;
	border-bottom: 0px #360087 solid;
}

/* main content */
#content
{ width: 95%;
	overflow: hidden;
	margin: 0px 0px 0px 0px;
	padding: 0px 19px 15px 19px;
	font-size: 120%;
}

#content h1
{ font-family: arial, sans-serif;
	padding: 16px 19px 5px 0px;
	margin: 0px 0px 12px 0px;
	border-bottom: 1px solid;
	font-size: 130%;
	text-transform: uppercase;
	font-weight: normal;
}

#content a, #content a:hover
{ padding: 0px 0px 2px 0px;
	text-decoration: none;
	border-bottom: 1px dashed;
}

#content a:hover{border-bottom: 1px solid;}

#content dt a {
	border-bottom: 0px;
}


#content dt a:hover {
	border-bottom: 0px;
}

#content_right {
	position: absolute;
	top:260px;
	left:560px;
	width: 275px;
	overflow: hidden;
}

* + html #content_right {
	padding: 20px 0px 0px 0px;
}


/* Based on Nifty Corners: rounded corners without images */
/* By Alessandro Fulciniti */
/* http://www.html.it/articoli/nifty/index.html */
.rtop, .rbottom{display: block;}

.rtop .r1, .rtop .r2, .rtop .r3, .rtop .r4,
.rbottom .r1, .rbottom .r2, .rbottom .r3, .rbottom .r4
{ display: block;
	height: 1px;
	overflow: hidden;
}

.r1{margin: 0 5px}

.r2{margin: 0 3px}

.r3{margin: 0 2px}

.rtop .r4, .rbottom .r4
{ margin: 0 1px;
	height: 2px
}

/* additional colour scheme selections */
#colour{margin: 0px 0px 20px 0px;}

#colour a, #colour a:hover{border: 0px;}

.blue
{ background: #000 no-repeat left center;
	color: #109CEF;
	padding: 0px 40px 0px 20px;
}


/* TYPO3 */
.csc-sword {
background-color:#723900;
}

/*------mailformular formatieren------*/
#mailform {
border:none;
width: 680px;
padding: 0px;
}

.csc-mailform {
border:none;
width: 680px;
padding: 0px;
}

.csc-mailform p, ol, .success {
color:red;
}

div.csc-mailform li label {
float: left;
width: 130px;
margin-right: 1em;
vertical-align: baseline;
color:black;
}


.csc-form-element-textline input, textarea {
background-color: #ccc;
width:430px;
margin-bottom:10px;
}

.csc-form-element-textarea input, textarea {
background-color: #ccc;
width:427px;
margin-bottom:10px;
}


.csc-form-element-hidden {
display:none;
}

.csc-form-element-submit input {
margin-left: 145px;
width:150px;
}

.csc-mailform ol { list-style-type: none; }

.csc-textpic-firstcol, .csc-textpic-lastcol {
margin-bottom: -10px !important;
margin-right: 0px !important;
}

.tx-wecmap-pi1 {
margin-left: 0px;
}

div.csc-textpic .csc-textpic-imagewrap table tr td {
	padding-right: 20px;
}


/* * * * * *
*	"style/blue.css"
* * * * * */
body
{ background: #E7E7E7 url(img/background.jpg) repeat;
	color: #333;
}

blockquote{border-color: #B1445B;}

.rot {
color: #7D404F;
}

#root
{ background: #FFF;
	color: #333;
}

#links, #footer
{ background: #FFF;
	color: #3C557C;
	border-color: #FF3333;
}

#links a, #footer a
{ background: transparent;
	color: #3C557C;
}

#links a:hover, #footer a:hover
{ background: transparent;
	color: #FF3333;
}

#logo
{ background: #FFF url(img/banner.png) no-repeat;
	color: #D5D2D6;
	border-color: #90A4C5;
}

#logo h1
{ background: transparent;
	color: #FF3333;
	border-color: #787878;
}
#logo h2, #logo h3
{ background: transparent;
	color: #3C557C;
}
#logo h3 a
{ background: transparent;
	color: #7C7c7C;
}
#logo h3 a:hover
{ background: transparent;
	color: #FF3333;
}
#logo h3 ul li
{list-style-image:url(img/pfeil.gif);
}

#logo h4, #logo h5
{ background: transparent;
	color: #7C7c7C;
}

#menu
{ background: transparent;
	color: #000;
	border-color: #90A4C5;
}

#menu li a
{ color: #3C557C;
}

#menu li a:hover, #menu li a#selected, #menu li a#selected:hover
{ color: #FF3333;
}

#content h1
{ background: transparent;
	color: #FF3333;
	border-color: #FF3333;
}

#content h3
{ background: transparent;
	color: #7C7c7C;
}


.rtop, .rbottom{background: #414141;}
.rtop .r1, .rtop .r2, .rtop .r3, .rtop .r4,
.rbottom .r1, .rbottom .r2, .rbottom .r3, .rbottom .r4{background: #545454;}

/* TYPO3 */
/* Formular */
.csc-mailform-captcha,
.mf-input,
.mf-label,
.mf-pass,
.mf-text,
.mf-check,
.mf-radio,
.mf-select,
.mf-file,
.mf-submit {
	background: #CCC;
	color: #000;
	border: 1px #000 solid;
}

/*------tabelle formatieren------*/
/* RTE / Table styling */
TABLE.contenttable {  color: white; border:none; margin:5px 0px 10px 0px; width:100%; }
TABLE.contenttable TR TD { padding:0px 5px 0px 5px; }
TABLE.contenttable TR TD P.bodytext { font-size:10px; }
TABLE.contenttable TR { margin:none; background-color:#109CEF; }

/* RTE / Bulletlists */


/* * * * * *
*	Manual finetuning
* * * * * */

/* #root {
	padding-bottom: -50px;
} */
#links {
	padding-top: 6px;
}
#logo {
	margin-top: 8px;
}
#logo h1 {
	padding-top: 2px;
}
#logo h4 {
	margin-top: -80px;
}
#menu {
	margin-top: -37px;
	margin-bottom: 3px;
}
#menu li.current_page_item a {
	color: #FF3333;
}
#main {
	padding: 0px 19px 15px 19px;
}
#main header h1 {
	color: #FF3333;
	border-color: #FF3333;
	border-bottom: 1px solid;
	font-family: arial, sans-serif;
	padding: 16px 19px 5px 0px;
	margin: 0px 0px 12px 0px;
	font-size: 17px;
	text-transform: uppercase;
	font-weight: normal;
	letter-spacing: .1em;
}
#main p {
	font-size: 120%;
	margin-bottom: 0px;
}
@media (min-width: 1200px) {
	.ast-plain-container.ast-no-sidebar #primary {
		margin-top: 0;
		margin-bottom: 0;
	}
}
#footer {
	margin-bottom: 15px;
}
.partner-logo img {
	width: 50px;
}
.contact-form {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}
.contact-form label.wpforms-field-label {
	font-size: 13px !important;
}
.contact-form input, .contact-form textarea {
	width: 100% !important;
	max-width: 100% !important;
	font-size: 13px !important;
	padding: 6px 10px !important;
	margin-top: 0px !important;
	margin-bottom: 0px !important;
	box-sizing: border-box !important;
}
.contact-form .wpforms-field {
	padding-top: 10px !important;
	padding-bottom: 5px !important;
}
.contact-form label {
	margin-bottom: 5px !important;
}
.contact-form button {
	font-size: 13px !important;
	padding: 10px 12px !important;
}
.page-id-29 #root {
	margin-top: 10%;
}
.page-id-29 #logo {
	display: none;
}
.page-id-29 #menu {
	display: none;
}
.page-id-29 #links {
	margin-bottom: 30px;
}
.page-id-29 #footer {
	display: none;
}
.page-id-29 header {
	display: none;
}
#home-animated h3 {
	animation-duration: 3s;
	animation-name: slide-in;
}
@keyframes slide-in {
  from {
    translate: 150vw 0;
    scale: 200% 1;
  }

  to {
    translate: 0 0;
    scale: 100% 1;
  }
}

/*
#logo {
	margin-top: 8px;
}
#logo li {
	line-height: 1.4;
}
#menu {
	margin-top: -36px;
}
#logo h4 {
	margin-top: -123px;
}
#logo h3 li {
	line-height: 1.3;
}
#logo h3 a {
	font-weight: bold;
	font-size: 109%;
}
#logo h5 {
	font-weight: bold;
	font-size: 109%;
	letter-spacing: 0.005em;
}
#menu li.current_page_item a {
	color: #FF3333;
}
#main {
	padding-bottom: 10px;
}
#content {
	padding-bottom: 12px;
	margin-left: 0px;
	width: 100%;
	line-height: 0.1em;
}
div#content h3 {
	color: #7C7c7C;
	margin: 0;
	display: block;
	font-size: 1.25em;
	margin-block-start: 1em;
	margin-block-end: 1em;
	margin-inline-start: 0px;
	margin-inline-end: 0px;
	font-weight: bold;
}
div.wp-block-image {
	all: initial;
	* {
		all: unset;
	}
}
#content figure {
	margin-bottom: 16px;
}
#content > h1 {
	padding-top: 19px;
}
#content > div {
	margin-top: 20px;
	margin-bottom: 14px;
}
#content a:link,
#content a:visited {
	color: blue;
}
#content a:hover,
#content a:active {
	color: green;
}
label.wpforms-field-label {
	font-size: 13px;
	font-weight: bold;
}
div.wpforms-field.wpforms-field-hp {
	display: none;
}
.wp-elektro-input > input {
	width: 100%;
	font-size: 13px;
	padding: 6px 10px;
	margin-top: 15px;
	margin-bottom: 20px;
	box-sizing: border-box;
}
.wp-elektro-input > textarea {
	width: 100%;
	font-size: 13px;
	padding: 6px 10px;
	margin-top: 15px;
	margin-bottom: 20px;
	box-sizing: border-box;
	background-color: white;
	height: 100px;
}
button.wp-elektro-input {
	font-size: 13px;
	padding: 14px 18px;
}
p.wp-elektro-success {
	border-left: 6px solid green;
	background-color: rgb(200,255,200);
	padding: 10px 20px;
}
#content div.img-link a,
#content div.img-link a:hover {
	border-style: none;
}
.cmplz-cookiebanner .cmplz-links .cmplz-link {
	margin-right: 5px !important;
}
*/
