:root{
    --bg1: 203,192,177;
    --bg2: 162,165,144;
    --med1: 170,120,150;
    --med2: 120,70,100;
    --drk1: 32,19,11;
    --drk2: 47,25,12;
    --sans: Montserrat,sans-serif;
    --serif: Quattrocento,serif;
}

html, body {
    font: 10.5pt var(--sans);
    color: rgb(var(--drk2));
    background-color: rgb(var(--bg2));
    position: relative;
    text-align: center;
}

#content {
    width: 80%;
    max-width: 1300px;
    min-width: 850px;
    position: relative;
    margin: 0px auto;
    background-color: rgb(var(--bg1));
    min-height: 200px;
    box-shadow: 0 0 1.5em rgba(var(--drk1),.5);
    padding: .3em;
    text-align: left;
}

/* generelle Eigenschaften v. Elementen (z.B. Tabellen zentrieren und Bilder default als Block behandeln) */

table {
    margin: 0 auto;
    border-collapse: collapse;
    width: 100%;
}

td {
	font: 11pt var(--sans);
	color: rgb(var(--drk1));
}

img {
    display:block;
    margin: 0 auto;
}

/* Textelemente */

h1, h2, h3, h4 {
    font-family: var(--serif);
    text-align: left;
    border-bottom: 1pt solid rgba(var(--drk2),.3);
}

.h5 {
    text-align: justify;
    font-size: 1em;
    font-weight: bold;
	margin-top: .7em;
	margin-bottom: .3em;
	display: inline-block;
}

p {
    text-align: justify;
    line-height: 1.5em;
}

ul, ol, li {
    text-align: justify;
}

ul {
    list-style: none; /* Remove list bullets */
    padding: 0;
    margin: 0;
}

li { 
    padding-left: 16px;
    line-height: 1.5em;
}

li:before {
    content: "-"; /* Insert content that looks like bullets */
    padding-right: 8px;
}

.bildschutz {
    display: none;
    visibility: hidden;
}

/* LINKS und BUTTONS */

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

a:hover, a:focus, a:active {
    text-decoration: underline;
}

.button, button {
    display: inline-block;
    padding: .2em .7em;
	font-family: var(--sans);
    color: rgb(var(--drk2));
    text-decoration: none;
    border-radius: .2em;
    background-color: rgba(var(--med2),.3);
    border: 2px solid rgba(var(--med2),.5);
    border-bottom-color: rgba(var(--med2),.7);
    border-right-color: rgba(var(--med2),.7);
}

.button:active, .button:hover, .button:focus, button:active, button:hover, button:focus {
    text-decoration: none;
    background-color: rgba(var(--med1),.4);
    border-top-color: rgba(var(--med2),.7);
    border-left-color: rgba(var(--med2),.7);
}

/* Formulare */
input, select, textarea {
    font: 10pt var(--sans);
    background-color: rgba(255,255,255,.4);
    border: 1px solid rgba(var(--drk1),.6);
    width: 15em;
	color: rgb(var(--drk1));
}

input[type=checkbox], input[type=radio] {
	width: .9em;
}

input[type=file] {
	width: 22em;
}

input:active, input:focus, select:active, select:focus, textarea:active, textarea:focus {
    border: 1px solid rgb(var(--drk1));
    background-color: rgba(255,255,255,.7);
}

/* Tabellen */
.table {
    width: 100%;
    border-bottom: 1pt solid rgba(var(--med1),.1);
}

.table thead tr {
    background-color: rgba(var(--med2),.3);
    border-bottom: 1pt solid rgba(var(--drk2),.7);
}

.table th, .table td {
    padding: .4em .7em;
    text-align: left;
}

.table th {
    color: rgb(var(--drk2));
    font-size: 1.05em;
}

.table tbody th {
    background-color: rgba(var(--med2),.1);
    border-bottom: 1pt solid rgba(var(--drk2),.1);
}

.table tbody tr:nth-child(even) {
    background-color: rgba(var(--med1),.1);
}

/* Generelle Klassen */
.center {
    text-align: center;
}

.left {
    text-align: left;
}

.right {
    text-align: right;
}

.vcenter {
    vertical-align: middle;
}

.block {
    display: block;
    margin: 5pt auto;
}

.small {
	font-size: small;
}

.big {
	font-size: 1.5em;
}

.highlight1 {
    background-color: rgba(var(--med1),.2);
}

.highlight2 {
    background-color: rgba(var(--bg2),.4);
}

[class*="col-"] [class*="highlight"] {
    padding: 15px;
}

.red {
    background-color: rgba(150,0,0,.1);
    border: 3px solid rgb(150,0,0);
    color: rgb(150,0,0);
    padding: .5em;
}

.red a {
    color: rgb(230,0,0);
}

/* Troubleshooter-Class */
.border {
    border: 1px solid black;
}

/* FOOTER */
footer {
    text-align: center;
}

footer #foot {
    width: 98%;
    display: inline-block;
    padding-top: .7em;
    padding-bottom: .3em;
    border-top: 1px solid rgba(var(--med2),.2);
    text-align: center;
}