* {
	box-sizing: border-box;
}

/* For mobile phones: */
[class*="col-"] {
	width: calc(100% - 10px);
    float: left;
    padding: 15px;
	box-shadow: 2px 2px  10px black;
	background-color: #b6cfde;
	margin: 5px;
}

@media only screen and (min-width: 1000px) {
    /* For tablets: */
    .col-m-1 {width: calc(8.33% - 10px);}
    .col-m-2 {width: calc(16.66% - 10px);}
    .col-m-3 {width: calc(25% - 10px);}
    .col-m-4 {width: calc(33.33% - 10px);}
    .col-m-5 {width: calc(41.66% - 10px);}
    .col-m-6 {width: calc(50% - 10px);}
    .col-m-7 {width: calc(58.33% - 10px);}
    .col-m-8 {width: calc(66.66% - 10px);}
    .col-m-9 {width: calc(75% - 10px);}
    .col-m-10 {width: calc(83.33% - 10px);}
    .col-m-11 {width: calc(91.66% - 10px);}
    .col-m-12 {width: calc(100% - 10px);}
}

@media only screen and (min-width: 1300px) {
	[class*="col-"] {
		float: initial;
	}

	main {
		margin: -5px;
		display: table;
		border-collapse: separate;
		border-spacing: 10px;
	}
	
	main > *.col-4 {
		display: table-cell;
		width: 33%;
		background-color: #b6cfde;
		box-shadow: 2px 2px  10px black;
	}
}

.row::after {
    content: "";
    clear: both;
    display: table;
}

html {
    font-family: "Lucida Sans", sans-serif;
}

body {
	overflow-x: hidden;
	margin: 0px;
}

.topbar {
	margin: auto;
	position: relative;
	padding: 0;
}

.topbar img {
	width: calc(100% - 0px);
	height: auto;
}

img.logo {
	width: 100%;
	max-width: 1200px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	display: block;
}

h1 {
	position: absolute;
	top: 70%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
    color: white;
	font-size: 300%;
    text-shadow: 1px 1px 2px black, 0 0 25px #b6cfde, 0 0 5px CornflowerBlue, 0 0 15px cyan;
	width: calc(100% - 10px);
	margin: 5px;
}

#werdegang td {
	padding-left: 30px;
}

#werdegang th {
	white-space: nowrap;
	text-align: left;
}

#werdegang table {
	border-spacing: 12px;
}

@media only screen and (min-width: 850px) {
	/* center werdegang */
	#werdegang * {
		margin-left: auto;
		margin-right: auto;
	}
	
	#werdegang h2 {
		text-align: center;
	}
	
	h1 {
		top: 85%;
	}
}

#infos img {
	width: 100%;
}

#infos h2 {
	text-align: center;
}


#open table tr td:nth-child(1) {
	text-align: left;
	padding-right: 10px;
}

#whatido li {
	margin-bottom: 10px;
}

footer {
	overflow: auto;
}

footer > div:nth-child(1) {
	float: right;
}

footer > div > div{
	padding: 5px;
}

footer > div div{
	padding-left: 5px;
	padding-right: 5px;
	float: left;
}

footer td {
	padding-top: 0;
}

@media only screen and (min-width: 1600px) {

	#table {
		display: table;
		width: 82%;
		border-collapse: collapse;
	}
	
	#table #contact {
		display: table-cell;
		width: 50%;
	}
	
	#table #adress {
		display: table-cell;
		width: 50%;
	}
}

/* Grid Layout */
@supports (display: grid) {
	
	main {
		display: grid;
		width: 100%;
		margin: 0px;
		height: auto;
		grid:
			"infos"		
			"whatido"	
			"werdegang";
	}
	
	main [class*="col-"] {
		width: calc(100% - 10px);
		display: initial;
	}
	/*
	@media only screen and (min-width: 850px) {
		/* For desktop: *//*
		main {
			grid:
				"whatido	infos"		
				"werdegang	werdegang";
		}
	}*/
	
	@media only screen and (min-width: 1000px) {
		/* For desktop: */
		main {
			grid:
				"whatido	infos	werdegang"
				/ 1fr		1fr			1fr;
		}
	}

	#infos {
		grid-area: infos;
	}

	#whatido {
		grid-area: whatido;
	}
	
	#werdegang {
		grid-area: werdegang;
	}
	
}

.success * {
	color: green;
}

h2 {
	color: black;
    text-shadow: 2px 3px 5px darkgray;
}

#invisible {
	font-size: 0px;
}

#steuerberater-rules {
	margin-block-start: 0;
	margin-block-end: 0;
}

footer {
	font-size: x-small;
}

.hidden-link {
	color: inherit;
	text-decoration: inherit;
}

.motto {
	font-family: "Comic Sans MS", cursive, sans-serif;
	text-align: center;
}