/* global */

* { font-family: 'Open Sans', sans-serif; }
b { font-weight: 700; }
a { color: black; font-weight: 400; }
ul { line-height: 24px; list-style-position: inside; list-style-type: square; padding: 25px 25px 0 35px; }
ul li { color: black; font-size: 16px; font-weight: 300; }


/* page top */

#overlay { height: 100%; left: 0; min-height: 100%; min-width: 100%; position: fixed; top: 0; width: 100%; }
#logo { color: #eee; font-size: 12px; left: 60px; letter-spacing: 2px; position: absolute; text-align: center; text-transform: uppercase; top: 15px; }
#logo a { display: block; margin: 0 0 10px 0; }
#nav { position: absolute; right: 60px; top: 0; }
#nav a, .navact { background-color: rgb( 42,42,42 ); color: rgb( 194,194,194 ); float: left; font-size: 15px; font-weight: 300; margin: 0 1px 0 0; padding: 30px 12px 10px 12px; text-decoration: none; }
#nav a:hover, .navact { background-color: white; color: black; }
@media only screen and ( max-width:640px ) {
    #nav { height:60px; overflow:hidden; position:relative; right:auto; top:auto; }
    #logo { top: 75px; }
}


/* footer */

#footer { background-color: rgba( 0,0,0,0.68 ); bottom: 0; height: 55px; left: 0; overflow: hidden; position: absolute; width: 100%; }
#footer p { color: rgb( 176,176,176 ); font-size: 15px; font-weight: 400; line-height: 55px; padding: 0; text-align: center; }
#footer a { color: white; font-weight: 400; }


/* front page */

#fpblocks { position: absolute; top: 40%; width: 100%; }
#fpblock1 p { background-color: rgba( 0,0,0,0.67 ); color: white; float: right; font-size: 41px; font-weight: 300; letter-spacing: -1px; min-width: 60%; padding: 23px 48px 23px 18px; }
#fpblock2 { background-color: white; float: left; min-width: 60%; }
#fpblock2 p { color: rgb( 105,105,105 ); float: right; font-size: 19px; font-weight: 300; letter-spacing: -1px; line-height: 24px; max-width: 530px; padding: 23px 29px 23px 18px; text-align: right; }
@media only screen and ( max-width:640px ) {
    #fpblock1 p { font-size: 30px; }
    #fpblock2 p { font-size: 16px; }
}


/* inner pages */

#inner { background-image: url( /images/innerback.png ); bottom: 55px; height: 70%; overflow: hidden; position: absolute; width: 100%; }
#innertitle { background-color: rgb( 42,42,42 ); background-image: url( /images/innertitleback.png ); position: absolute; width: 50%; }
#innertitle p { color: white; font-size: 41px; font-weight: 300; letter-spacing: -1px; padding: 23px 39px 23px 18px; text-align: right; }
#innercontent { height: 100%; left: 50%; overflow: auto; padding: 0 0 0 0; position: absolute; width: 50%; }
#innercontent p { color: black; font-size: 16px; font-weight: 300; line-height: 24px; padding: 25px 25px 0 35px; }
@media only screen and ( max-width:640px ) {
    #innercontent { left: 0; overflow: auto; padding: 0; position: absolute; width: 100%; }
    #innertitle { position: relative; width: 100%; }
    #innertitle p { font-size: 30px; text-align: left; }
}


/* flexbox generic */

.flex { display:-moz-box; display:-ms-flexbox; display:-webkit-box; display:-webkit-flex; display:flex;  }
.flex_row { -moz-box-direction:normal; -ms-flex-direction:row; -webkit-box-orient:horizontal; -webkit-flex-direction:row; flex-direction:row; }
.flex_column { -moz-box-direction:normal; -ms-flex-direction:column; -webkit-box-orient:vertical; -webkit-flex-direction:column; flex-direction:column; }
.flex_align_center { -moz-box-align:center; -ms-flex-align:center; -webkit-align-items:center; -webkit-box-align:center; align-items:center; justify-content: center; }
.flex_align_start { -moz-box-align:start; -ms-flex-align:start; -webkit-align-items:flex-start; -webkit-box-align:start; align-items:flex-start; }
.flex_item_size_auto { -moz-box-flex:1; -ms-flex:1 1 auto; -webkit-box-flex:1; -webkit-flex:1; -webkit-flex-basis:auto; flex:1; flex-basis:auto; }
.flex_item_size_fixed { -moz-box-flex:1; -ms-flex:1 1 auto; -webkit-box-flex:1; -webkit-flex:1; flex:1; }

