:root {
  --basecolor: #1d70b8;
  --linkcolor: #be1622;
  --headercolor: #be1622;
  --fontsize: 16px;
  --fontfamily: 'Lucida Grande',Tahoma,Verdana,Arial,sans-serif;
  
  --space-small: 8px;
  --space-medium: 16px;
  --space-large: 32px;
}

html,body {
  margin: 0;
  padding: 0;
  
  font-family: var(--fontfamily);
  color: var(--basecolor);
  font-size: var(--fontsize);
  display:flex;
  flex-direction:column;
  min-height:95vh;
}

body { height:100%; }

* {
  box-sizing: border-box;
}

address {
  font-style:normal;
}

.wrap {
  margin-left: auto;
  margin-right: auto;
  width: 90vw;
  max-width:1280px;
  min-width:350px;
}

body .wrap:first-child {
  height: 100%;
  flex-grow:1
}

[role="document"] {
  border-left: 1px dotted var(--basecolor);
  padding: 16px 32px;
  height:100%;
  background: url("/fileadmin/Template/Resources/Public/Images/geld2.png") no-repeat scroll right bottom rgba(0, 0, 0, 0);
}

.Logo { 
  margin: 0px 0px;
  padding: 24px 0px 0px 0px; 
}

.Logo img {
  width:100%;
  height:100%;
  object-fit:contain;
}

a {
  color: var(--linkcolor);
  text-decoration: none;
}

p { margin: 8px 0px 16px 0px }

h1, h2, h3, h4 {
  font-weight:400;
  padding: 0px;
  margin-bottom: var(--space-small);
  color: var(--headercolor);
}

h1 { font-size: 24px }
h2 { font-size: 20px }
h3 { font-size: 18px }

ul{
  list-style-position: inside;
  list-style-type: square;
  margin-left: var(--space-medium);
  padding-left: 0;
}

nav li { color: var(--linkcolor); border-top: 1px dotted var(--basecolor) }
nav li:last-child { border-bottom: 1px dotted var(--basecolor) }
nav ul ul li:last-child { border-bottom:0px }
nav li a { display:block; padding: var(--space-small) 0px }

nav ul {
  margin-left:0px;
  padding:0px;
  list-style-type:none;
}

nav ul ul { margin-left: var(--space-large); }

footer nav a {
  border-top: 0px;
}

footer nav a:before {
  content: '|';
  padding: 0px var(--space-medium) 0px var(--space-medium);
}

footer nav a:first-child:before {
  content: '';
}

td {
  min-width: 65px;
  text-align: right;
  padding: 3px;
}

td:first-child{
  text-align: left;
}

footer{
  background-color: #FFFFFF;
  border-top: 1px dotted #1d70b8;
  padding: var(--space-small) 0px;
  width: 100%;
  text-align: center;
}

/* POWERMAIL */
.powermail_fieldset {
  border:0px;
  margin: 0px;
  padding: 0px;
}
.powermail_fieldwrap { 
  display:flex; 
  flex-direction:row;
  margin-bottom:8px;
}
.powermail_label { display:flex; width:20%; align-content:center }
.powermail_field .radio label { margin-right: 16px }
.powermail_field { display:flex; width:80%; flex-wrap: wrap; }
.powermail_fieldwrap_type_captcha .powermail_field { width:100% }
.powermail_fieldwrap_type_captcha input[type="text"] { width:8rem }

.powermail_fieldwrap_type_radio .powermail_field { gap: 1rem }

.contenttable { width: 100% }

input[type="text"],
input[type="email"],
textarea {
  width: 50%;
  padding: 4px 8px;
  font-size: var(--fontsize);
  font-family: var(--fontfamily);
}

input[type="radio"],
input[type="checkbox"] { transform: scale(1.3); }

.frame-type-text p, 
.frame-type-text li {  max-width: 40rem !important; }

@media(max-width:1024px){  
  .powermail_label { width:30% }
  .powermail_field { width:70% }
    
  input[type="text"],
  input[type="email"],
  textarea { width: 80% }
}

@media(max-width:600px){
  [role="document"] { border-left: 0px; }
  .powermail_fieldwrap { 
    flex-direction:column
  }
  .powermail_label { width:100% }
  .powermail_field { width:100% }
    
  input[type="text"],
  input[type="email"],
  textarea { width: 100% }
  
  .powermail_fieldwrap_type_captcha .powermail_field { flex-direction:column; }
  .powermail_fieldwrap_type_textarea .powermail_field { flex-direction:column; }
  
	.contenttable {
		max-width: 100%;
		table-layout: fixed;
		font-size: .8em;
	}
	[role="document"] {
		padding: 16px;
	}
}