/**************************************************************************
	Site: 	Oak Media
	Author: Bartek Stankowski (bstankowski.pl) for Crimson Oak (oak.com.pl)
	Date: 	04.2010

***************************************************************************

	1. BASE
		1.1 CSS Reset
		1.2 Accessibility Nav
		1.3 Globals

	2. LAYOUT
		2.1 Structure
		2.2 Header
		2.3 Navigation
		2.4 Content
		2.5 Footer

	3. SPECIFIC
		3.1 Client Form
		3.2 Contact Form
		3.3 Sections
		3.4 Section SEO
		3.5 News
		3.6 About
		3.7 Misc

***************************************************************************/


/* = 1. BASE
   ------------------------------------------------------------------------*/


/* = 1.1 CSS Reset
   ------------------------------------------------------------------------*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
a { text-decoration: none; }
blockquote, q { quotes: none;}
cite { font-style: normal; }
ins { text-decoration: none; }
del { text-decoration: line-through; }
table { border-spacing: 0;}


/* = 1.2 Accessibility Nav
   ------------------------------------------------------------------------*/

#a11y {
	position: absolute;
	top: 0;
	left: -10001px;
	margin: 0;
	padding: 0;
}

#a11y li a:hover,
#a11y li a:focus,
#a11y li a:active {
	display: block;
	position: absolute;
	left: 10001px;
	top: 0;
	z-index: 10001;
	width: 200px;
	margin-top: 2px;
	padding: 2px 0;
	background: #fff;
	color: #222;
	text-align: center;
	text-decoration: none;
}


/* = 1.3 Globals
   ------------------------------------------------------------------------*/

@media only screen and (max-device-width: 480px) { html { -webkit-text-size-adjust: none; } }

body {
	min-width: 950px;
	font: 62.5%/1.3 Arial, sans-serif;
	color: #646f75;
	background-color: #404040;
}

a {
	color: #69a2cf;
	font-family: Arial, sans-serif;
}

a:visited {
	color: #476e8f;
	font-family: Arial, sans-serif;
}

a:hover,
a:focus {
	color: #69a2cf;
	text-decoration: underline;
}

a:active {
	position: relative;
	top: 1px;
}

.active { cursor: default; }

p, img,
ul, ol,
dl, table {
	margin-bottom: 1em;
}

ul li {
	margin: 0 0 5px 20px;
}

p, li, dt, dd, th, td, caption { font-size: 1.5em; }
p *, li *, li p, li li, dt *, dd *, th *, td * { font-size: 1em; }


/*
	Headers
*/

h1, h2, h3, h4, h5, h6 {
	margin-bottom: 15px;
	font-family: "Times New Roman", Times, serif;
	font-weight: normal;
}

h1 {
	color: #69a2cf;
	font-size: 3.6em;
}

h2 {
	margin-top: 2em;
	font-size: 2em;
	line-height: 1;
	font-weight: bold;
}

.main > h2:first-of-type,
.side h2 {
	margin-top: 0;
}

h3 { font-size: 2.2em; }
h4 { font-size: 2em; }
h5 { font-size: 1.8em; }
h6 { font-size: 1.6em; }

.header-a {
	margin: 0 0 20px;
	color: #75acd1;
	font: 3em "Times New Roman", Times, serif;
}

.header-b {
	color: #4c4c4c;
	font: 2.4em "Times New Roman", Times, serif;
}

.header-b a {
	color: #4c4c4c;
	font-family: "Times New Roman", Times, serif;
}

.news .header-b {
	margin: 0;
	color: #646f75;
}


/*
	Forms
*/

input, textarea, select, button, label {
	font-family: Arial, sans-serif;
}

input,
textarea {
	width: 203px;
	height: 1.5em;
	padding: 0.1em 3px;
	border: none;
	background-color: #fff;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	line-height: 1.4em;
}

button {
	display: block;
	height: 1.7em;
	padding: 0 25px;
	border: none;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	background-color: #484848;
	color: #fff;
	cursor: pointer;
}

button:hover,
button:focus {
	background-color: #2d2d2d;
}

button:active {
	position: relative;
	top: 1px;
}


/*
	Others
*/

#header .intro {
	margin-bottom: 25px;
	font-size: 2em;
	line-height: 1.2;
}

#header .intro strong {
	font-family: Arial, sans-serif;
}

#content .intro {
	margin-bottom: 1.75em;
	font-family: Arial, sans-serif;
	font-size: 1.7em;
}

.caption { font-style: italic; }

div.box {
	width: 271px;
	padding: 20px 15px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background-color: #d2e3f0;
}

.quote { color: #4c4c4c; }

.quote blockquote {
	clear: right;
	padding: 20px 15px 0 12px;
	background: transparent url(../i/bg-quote.png) 0 0 no-repeat;
	line-height: 1.25;
}

.quote blockquote p {
	margin-bottom: 18px;
	font-size: 1.7em;
	text-align: center;
}

.quote cite {
	float: right;
	margin-bottom: 25px;
	font: 1.4em/1.2 Arial, sans-serif;
	text-align: right;
}

.quote cite:last-child {
	margin-bottom: 0;
}

.quote cite span {
	display: block;
}

.quote cite .fn {
	font-weight: bold;
}


/* = 2. LAYOUT
   ------------------------------------------------------------------------*/

/* = 2.1 Structure
   ------------------------------------------------------------------------*/

.container {
	width: 950px;
	margin: 0 auto;
}

.side {
	float: right;
	width: 301px;
	padding: 0;
}

.main {
	float: left;
	width: 585px;
}

#client-form:after,
#footer:after,
.container:after,
.target:after,
.sections:after,
.about:after {
	content: "";
	display: block;
	overflow: hidden;
	clear: both;
	height: 0;
}


/* = 2.2 Header
   ------------------------------------------------------------------------*/

#header {
	margin: 4.5em 0 0;
	background-color: #68a1ce;
	color: #fff;
}

#home #header {
	position: relative;
	overflow: hidden;
	height: 353px;
}

#home #header .container {
	width: 950px;
	padding-bottom: 33px;
	background: #68a1ce url(../i/bg-header-home.jpg) 100% 100% no-repeat;
}

#header .container {
	position: relative;
	padding: 28px 0 18px;
	background: transparent url(../i/bg-header.jpg) 95% 100% no-repeat;
}

#header .container .main {
	margin-left: 10px;
}

#header .container > div {
	clear: left;
	width: 474px;
	margin-top: 16px;
	font-family: "Times New Roman", Times, serif;
}

#logo {
	float: left;
	margin: 0 0 0 10px;
}

#home #logo { margin-bottom: 12px; }

#logo,
#logo a {
	display: block;
	width: 257px;
	height: 55px;
}

#header .line {
	position: absolute;
	right: 0;
	bottom: 18px;
	margin: 0;
	font: 1.4em/1 Arial, sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

#header .ask { clear: both; }

#header .ask li {
	float: left;
	list-style: none;
	margin: 0 22px 0 0;
	padding: 8px 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background-color: #90b8d9;
	color: #222;
	font-size: 1.9em;
}

#header .ask li:first-child:hover { background-color: #96c0e7; }

#header .ask a {
	color: #000;
	font-family: "Times New Roman", serif;
}

#header .ask a:hover,
#header .ask a:focus {
	text-decoration: none;
}

#header .ask span {
	display: block;
	font-family:  Arial, sans-serif;
	color: #fff;
}



/* = 2.3 Main Navigation
   ------------------------------------------------------------------------*/

#nav {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 4.5em;
	background-color: #262626;
	list-style: none;
}

#nav .container {
	position: relative;
	padding-top: 1.3em;
}

#nav ul {
	overflow: hidden;
	margin: 0;
}

#nav li {
	display: inline;
	margin: 0;
	font-size: 1.7em;
}

#nav a,
#nav a:visited {
	float: left;
	height: 1.9em;
	margin-right: 2px;
	padding: 0 16px;
	color: #fff;
	line-height: 1.9em;
	-moz-border-radius: 5px 5px 0 0;
	-webkit-border-top-right-radius: 5px;
	-webkit-border-top-left-radius: 5px;
	border-radius: 5px 5px 0 0;
}

#nav .nav a:hover,
#nav .nav a:focus,
#nav .nav a:active {
	background-color: #3e3e3e;
	text-decoration: none;
}

#nav .nav a.active:hover,
#nav .nav a.active:focus,
#nav .nav a.active:active,
#nav .nav a.active {
	background-color: #69a2cf;
}

#choose-language {
	position: absolute;
	right: 0;
	top: 0;
	width: 88px;
	height: 18px;
	padding: 17px;
	-moz-border-radius: 0 0 5px 5px;
	-webkit-border-bottom-right-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	border-radius: 0 0 5px 5px;
	background-color: #fff;
	-moz-box-shadow: 0 0 5px rgba(38, 38, 38, 0.8);
	-webkit-box-shadow: 0 0 5px rgba(38, 38, 38, 0.8);
	box-shadow: 0 0 5px rgba(38, 38, 38, 0.8);
}

#choose-language a,
#choose-language a:visited {
	width: 35px;
	height: 18px;
	margin: 0;
	padding: 0;
	background: #fff url(../i/flags.jpg) 0 0 no-repeat;
	color: #222;
	text-indent: -1000em;
	opacity: 0.8;
}

#choose-language a:hover,
#choose-language a:focus,
#choose-language a.active {
	opacity: 1;
}

#choose-language #lang-pl {
	margin-left: 18px;
	background-position: -53px 0;
}


/* = 2.4 Content
   ------------------------------------------------------------------------*/

#content {
	padding: 35px 0 23px;
	background-color: #fff;
}

#home #content {
	padding-top: 15px;
	background-color: #fbfbfb;
	background-image: url(../i/bg-gradient-content-a.png);
	background-image: -moz-linear-gradient(top, #fbfbfb, #cfcfcf);
	background-image: -webkit-gradient(linear, from(#fbfbfb), to(#404040));
	background-position: left bottom;
	background-repeat: repeat-x;
}

#content.alt {
	background-color: #fff;
	background-image: url(../i/bg-gradient-content-b.png);
	background-image: -moz-linear-gradient(top, #fff, #fff 85%, #f4f4f4);
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#f4f4f4));
	background-position: left bottom;
	background-repeat: repeat-x;
}

#content .container {
	overflow: hidden;
	width: 930px;
	padding: 0	10px;
}


/* = 2.5 Footer
   ------------------------------------------------------------------------*/

#footer {
	padding: 20px 0 25px;
	background-color: #404040;
}

#footer .container {
	width: 930px;
	padding: 0	10px;
}

#footer ul {
	margin: 0;
	padding: 0;
}

#footer li {
	float: left;
	margin-left: 0;
	/*margin-right: 40px;*/
        margin-right: 5px;
	list-style: none;
	font-size: 1.6em;
}

#footer li h6 {
	margin-bottom: 3px;
	color: #91c5e7;
	font-size: 1.2em;
}

#footer li li {
	float: none;
	margin-bottom: 3px;
	margin-right: 0;
	font: 0.75em Arial, sans-serif;
}

#footer li li a {
	color: #fff;
}

#footer li li a:visited {
	color: #e1e1e1;
}

#footer .vcard {
	float: right;
}

#footer .vcard p {
	margin: 0;
	color: #8c8c8c;
	font: 1.2em Arial, sans-serif;
	text-align: right;
}

#footer .vcard .oak {
	float: right;
	width: 50px;
	margin-top: 10px;
	padding-top: 13px;
	border-top: 1px solid #666;
}


/* = 3. SPECIFIC
   ------------------------------------------------------------------------*/

/* = 3.1 Client form
   ------------------------------------------------------------------------*/

#client-form {
	margin-bottom: 13px;
	padding: 5px 14px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	background: #4f7c9f;
	background: rgba(0, 0, 0, 0.22);
}

#client-form > div {
	float: right;
	width: 110px;
	padding-top: 6.9em;
}

#client-form input,
button,
#client-form label {
	font-size: 1.4em;
}

#client-form button {
	margin-bottom: 2px;
}

#client-form .password,
#client-form .password:visited {
	margin-left: 2px;
	color: #fff;
}

#client-form fieldset {
	float: left;
	width: 310px;
	min-height: 107px;
}

#client-form fieldset > div {
	overflow: hidden;
	margin-bottom: 7px;
}

#client-form legend {
	padding-bottom: 11px;
	font: 2.2em "Times New Roman", Times, serif;
}

#client-form label {
	float: left;
	width: 89px;
	padding-right: 10px;
	text-align: right;
}


/* = 3.2 Contact Form
   ------------------------------------------------------------------------*/

#form-contact h2 {
	margin-top: 0;
}

#form-contact fieldset {
	margin-bottom: 10px;
}

#form-contact fieldset.first {
	float: left;
	width: 120px;
}
#form-contact fieldset.second {
	float: left;
	width: 330px;
	margin-left: 30px;
}
#form-contact fieldset.second label {
	width: 295px;
}
#form-contact fieldset.third {
	float: right;
	width: 430px;
}
#form-contact fieldset.third label {
	width: 200px;
}


#form-contact li {
	list-style: none;
	margin: 0 0 7px 0;
	padding-left: 2px;
	font-size: 1.2em;
	line-height: 1.5em;
}

#form-contact li:after {
	content: "";
	display: block;
	overflow: hidden;
	clear: both;
	height: 0;
}

#form-contact label {
	float: left;
	width: 265px;
	margin-bottom: 3px;
	padding-right: 10px;
	text-align: right;
}

#form-contact .checkbox {
	margin-bottom: 10px;
	padding: 0;
}

#form-contact .last { margin-bottom: 20px; }

#form-contact .checkbox label {
	width: 305px;
	margin: 0;
}

#form-contact input,
#form-contact textarea {
	float: right;
	border: 1px solid #484848;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	color: #646F75;
}

#form-contact textarea { height: 100px; }

#form-contact .checkbox > input {
	width: auto;
	height: auto;
	/*margin: 6px 0 0 0;*/
	padding: 0;
	border: none;
}

#form-contact .checkbox div {
	clear: both;
	margin: 0 0 10px 36px;
	font-size: 0.85em;
}

#form-contact .checkbox div label {
	display: block;
	float: none;
	width: auto;
	margin-bottom: 0;
	padding-right: 0;
}

#form-contact button {
	float: right;
	clear: both;
	margin: 0 0 10px 2px;
	background-color: #69A2CF;
}

#form-contact button:hover,
#form-contact button:focus {
	background-color: #6298c4;
}

#form-contact .error { color: #b71c2a; }

#form-contact .error * { border-color: #D4202F; }

#form-contact .message {
	clear: both;
	margin: 0;
	padding-top: 1em;
	font-family: Arial, sans-serif;
	text-align: right;
}


/* = 3.3 Sections
   ------------------------------------------------------------------------*/

.sections {
	padding: 35px 0 18px;
	background: #fff url(../i/bg-gradient-sections.png) left bottom repeat-x;
}

.sections .container { padding-left: 16px; }

.sections li {
	float: left;
	margin-left: 0;
	list-style: none;
	background: transparent url(../i/bg-sections.png) 0 38px no-repeat;
	color: #4c4c4c;
	font-size: 1.4em;
}

.sections li h2 {
	margin-top: 0;
	font: 1.7em/1 "Times New Roman", Times, serif;
}

.sections li p {
	margin: 0;
}

.sections .section-a {
	width: 192px;
	margin-right: 11px;
	padding: 0 0 0 106px;
}

.sections .section-b {
	width: 199px;
	margin-right: 11px;
	padding: 0 0 0 120px;
	background-position: -298px 38px;
}

.sections .section-c {
	width: 174px;
	padding-left: 121px;
	background-position: -631px 38px;
}


/* = 3.4 Section SEO
   ------------------------------------------------------------------------*/

.section-seo {
	padding-top: 25px;
	background-color: #fff;
}

.section-seo h2 { margin-top: 0; }

.target {
	padding: 10px 0 20px;
}

.target li {
	float: left;
	width: 237px;
	margin-left: 0;
	font-size: 1.4em;
	list-style: none;
}

/* = 3.5 News
   ------------------------------------------------------------------------*/

.news { padding-bottom: 10px; }

ul.news { padding-top: 5.1em; }

.news p { font-size: 1.6em; }

.news li {
	list-style: none;
	border-bottom: 1px solid #dcdcdc;
	font-size: 1.6em;
	line-height: 2.2em;
}

.news li:last-child { border: none; }

.news li a {
/* 	color: #dcdcdc; */
}


/* = 3.6 About
   ------------------------------------------------------------------------*/

.about {
	clear: both;
	padding: 0 10px 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background: #f9f9f9 url(../i/bg-gradient-about.png) 0 100% repeat-x;
}

.about .main {
	width: 305px;
	min-height: 198px;
	padding: 24px 30px 0 301px;
	background: transparent url(../i/bg-about.jpg) 0 100% no-repeat;
}

.about p {
	font-size: 1.4em;
}

.about p strong {
	font-family: Arial, sans-serif;
}

.about .side {
	width: 250px;
	padding-top: 24px;
}

.about h2 {
	margin-top: 0;
	margin-bottom: 5px;
	font: 2.4em/1 "Times New Roman", Times, serif;
}

.clients h2 {
	margin-top: 0;
	margin-bottom: 30px;
}

.clients ul {
	margin: 0;
}

.js .clients ul {
	position: relative;
	width: 240px;
	height: 150px;
}

.clients li {
	list-style: none;
	width: 240px;
	height: 150px;
	margin: 0 10px 0 0;
}

.js .clients li {
	position: absolute;
	left: 0;
	top: 0;
}


/* = 3.7 Misc
   ------------------------------------------------------------------------*/

#button-contact,
#button-contact span {
	display: block;
	width: 260px;
	height: 95px;
}

#button-contact {
	position: relative;
	float: right;
	margin-top: 5px;
	font-size: 1.5em;
	cursor: pointer;
}

#button-contact span {
	position: absolute;
	left: 0;
	top: 0;
	background: transparent url(../i/button-contact.png) 0 0 no-repeat;
}

.flash_notice {
    border: 3px solid green;
    padding: 20px;
    font-size: large;
    color: white;
    text-align: center;
}

.news-link {
    display: block;
    text-align: right;
}

#news-list p {
    font-size: small;
    display: block;
    min-height: 100px;
}

#news-list-box {
    min-height: 300px;
}

