
html
{
	background-color: #dee4ea;
	margin: 0;
	padding: 0;
}

body {
    background-repeat: repeat-x;
    background-color: #dee4ea;
    margin-top; 4em;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 1em;
    padding: 0;
    text-align: center;
    background: #dee4ea; /* Old browsers */
    background: -moz-linear-gradient(top, #FFFFFF 0%, #dee4ea 50vh); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #FFFFFF 0%,#dee4ea 50vh); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #FFFFFF 0%,#dee4ea 50vh); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#dee4ea',GradientType=0 ); /* IE6-9 */
}

div {
	box-sizing: border-box;
}

div.company_container {
	width: 100%;
	max-width: 440px;
	margin-left: auto;
	margin-right: auto;
}

div.company_description {
    width: 100%;
	max-width: 420px;
    font-family: 'Oxygen', sans-serif;
    background-color: white;
    color: #333;
    border: 1px solid #888;
    margin: auto;
	padding: 0.3em;
    text-align: center;
    border-radius: 10px;
}

a { text-decoration: none; }

a.ted { 
    font-weight: bold;
    color: lightblue;
    text-shadow: 1px 1px darkblue;
}

div.main {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	width: 100%;
}

div.title {
    width: 98%;
    background-color: white;
    border: 1px solid #555;
    border-radius: 10px;
	margin-left: auto;
	margin-right: auto;
    margin-bottom: 1vw;
    overflow: hidden;
}

div.subtitle {
    background-color: #CCC;
    color: #333;
    font-family: 'Oxygen', sans-serif;
    font-size: 0.9em;
    padding-top: 1vw;
    padding-bottom: 2vw;
    padding-left: 0.5vw;
    padding-right: 0.5vw;
}

div.title_contact {
    background-color: #77A;
    padding: 1vw;
}

div.menu_button {
    display: inline-block;
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    padding: 1vw 1.4vw 1vw 1.4vw;
    font-size: 0.8em;
    text-transform: uppercase;
    text-shadow: 0.3vw 0.3vw #557;
	background-color: #777;
    border-radius: 0.6vw;
}

div.menu_button:hover {
    border-color: white;
	background-color: #cdf;
    text-shadow: none;
    color: #484a4b;
}

div.project_container {
	margin-left: auto;
	margin-right: auto;
	width: 84%;
	padding-bottom: 0.4em;
}

div.project_content {
	width: 98%;	
	margin-left: auto;
	margin-right: auto;
    overflow: hidden;
    background-color: #FFF;
    border: 1px solid #555;
    border-radius: 0.6vw;
	margin-top: 0em;
}

div.project_content:hover {
	background-color: #CCDDFF;
    border-radius: 0.6vw;
    color: white;
}

img.project_header {
    border-bottom: 1px solid #333;
    width: 100%;
	margin-bottom: 1vw;
}

p.project_title {
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    font-size: 1em;
    color: black;
    //text-shadow: 1px 1px darkblue;
    padding-top: 0.1em;
	padding-bottom: 0.1em;
    margin: 0.1em auto;
    text-decoration: none;
    text-transform: uppercase;
}

p.project_short_details {
    font-family: 'Oxygen', sans-serif;
    <!--text-transform: uppercase;-->
    font-size: 0.9em;
    margin-top: 0;
    margin-bottom: 1vw;
    font-style: italic;
	text-decoration: none;
	color: #777;
}

p.project_owner {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.2em;
    color: #CCDDFF;
    text-shadow: 1px 1px darkblue;
    margin: 0.1em auto;
    font-style: italic;
}

p.project_owner:hover {
    border-radius: 5px;
    color: white;
    background-color: deepskyblue;
}

p.project_description {
    font-family: 'Oxygen', sans-serif;
    font-size: 0.9em;
    margin: 0.5em;
    color: black;
    padding-top: 0.3em;
    padding-left: 0.5em;
    padding-right: 0.5em;
    padding-bottom: 0.5em;
    text-align: justify;
    border-radius: 5px;
    background-color: #EEE;
}

p.footer {
    font-family: arial;
    color: #aaa;
    font-style: italic;
}

details {
    padding-top: 0em;
    padding-bottom: 0em;
}

summary {
    font-family: 'Montserrat', sans-serif;
    font-size: 1em;
    border-radius: 5px;
    margin: auto;
    padding: 0.2em;
    color: white;
    background-color: #555;
    width: 130px;
	display: none; // invisible by default
}

summary:hover {
    color: white;
    background-color: darkorange;
    text-shadow: 1px 1px darkblue;
}

div.section_header {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
    border: 1px solid #555;
    border-radius: 10px;
    font-family: 'Oxygen', sans-serif;
	background-color: white;
	color: #333;
}

div.header_container {
    width: 100%;
    overflow: hidden;
    border-radius: 0.6vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1vw;
	border: 1px solid #555;
    background-color: #ffffff;
	text-align: left;
}

div.header_title {
    width: 100%;
    font-family: 'Alfa Slab One', cursive;
    background-color: #777777;
    color: #ffffff;
    font-size: 5vw;
	padding-top: 1vw;
	padding-bottom: 1vw;
	text-align: center;

    /*text-shadow: 0.2vw 0.3vw #333333;*/
    /*text-transform: uppercase;*/
}

p.header_list_item
{
	margin: 0;
	padding: 1vw 2vw 1vw 2vw;
    font-size: 3vw;
}

p.header_list_item:hover
{
	background-color: #cccccc;
}

p.header_subtitle
{
	padding: 0;
	margin: 0;
	font-size: 3vw;
	font-family: 'Montserrat', sans-serif;	
}

div.header_description {
    width: 100%;
    font-family: 'Oxygen', sans-serif;
    color: #000000;
    <!--padding-top: 1vw;-->
    <!--padding-bottom: 1vw;-->
    font-size: 0.9vw;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 600px) 
{
	div.company_container {
		width: 600px;
		margin-left: auto;
		margin-right: auto;
	}
	div.project_container {
		margin-left: 0;
		margin-right: 0;
		width: 50%;
		padding-bottom: 0.4em;
	}
}
