html, body, div, span, h1, h2, h3, h4, p, a, address, cite, em, img, strong, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, img {
  margin: 0; padding: 0; border: 0; outline: 0; font-style: inherit; font-family: inherit; vertical-align: baseline;
}
ol, ul {
  list-style: none;
}
a {
  color: #c8e6a9;
}
a:hover {
  text-decoration: none;
}
body {
  background: #1f84b9 url(/images/bg.png) repeat-x;
  color: #fff;
  font: 14px/21px 'Helvetica Neue', Helvetica, Arial, sans-serif;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
em {
  color: #c8e6a9;
  font-family: Georgia;
  font-style: italic;
}
h1 {
  background: url(/images/backbone.png) no-repeat;
  height: 112px;
  margin: 13px 0 0 12px;
  width: 216px;
}
h1 a {
  display: block;
  height: 112px;
  text-indent: -9999px;
  width: 216px;
}
h2 {
  font: 36px/42px Constantia, Georgia, Times, serif;
  height: 84px;
  padding-left: 8px;
  margin-bottom: 21px;
  text-shadow: 1px 1px 1px #545454;
}
#how h2, #portfolio h2 {
  height: 42px;
}
#how h2.coffee {
  color: #f7be32;
}
#how h2.style {
  color: #f7fe43;
}
#how h2.equation {
  color: #a4fd43;
}
h2 {
  /*background: #327095;*/
  float: left;
  font: 32px chaparral-pro-n4, chaparral-pro, Constantia, Georgia, Times, serif;
  letter-spacing: -1px;
  margin-bottom: 17px;
  padding: 4px 11px 0;
  text-indent: 0;
  text-shadow: 1px 1px 1px #000;
}
li.first h2 {
  color: #f8be32;
}
li.second h2 {
  color: #f7fe43;
}
#footer li.third h2 {
  background: url(/images/sk/txt-formular-pre-vase-napady.png) no-repeat;
  height: 128px;
  margin-top: 32px;
  text-indent: -999em;
  width: 320px;
}
.en #footer li.third h2 {
  background-image: url(/images/en/txt-client-form.png);
}
#contact li.first h2 {
  color: #f8be32;
}
h2 a {
  display: block;
}
h3 {
  color: #afcedf;
  font-size: 12px;
  margin-bottom: 21px;
  padding-left: 31px;
  text-transform: uppercase;
}
li.first a {
  color: #fbc269;
}
li.first h3, .module.number h3 {
  background: url(/images/numbers.png) 8px 0 no-repeat;
}
.module.number h3, .module.number2 h3 {
  margin: 0;
}
li.second h3 {
  background: url(/images/numbers.png) 8px -21px no-repeat;
}
.module.number2 h3, #portfolio #footer li.first h3 {
  background: url(/images/numbers.png) 8px -146px no-repeat;
}
li.third h3 {
  background: url(/images/numbers.png) 8px -42px no-repeat;
}
#how #footer li.second h3, #contact #footer li.second h3, #portfolio #footer li.second h3 {
  background: url(/images/numbers.png) 8px -105px no-repeat;
}
#footer li.first h3 {
  background: url(/images/numbers.png) 8px -63px no-repeat;
}
#footer li.second h3 {
  background: url(/images/numbers.png) 8px -84px no-repeat;
  margin-bottom: 14px;
}
#how #footer li.first h3, #contact #footer li.first h3 {
  background: url(/images/numbers.png) 8px -146px no-repeat;
}
.module li.fourth p {
  padding-top: 57px;
  margin-bottom: 0;
}
li.fourth a {
  color: #f8be32;
}
h4 {
  font: 300 21px/42px adelle-n3, adelle, Constantia, Georgia, serif;
  padding-left: 12px;
  text-shadow: 1px 1px 1px #545454;
}
div.hr {
  background: url(/images/arrow-hr.png) no-repeat 42px 26px;
  border: none;
  height: 84px;
  margin: 0 auto;
  width: 920px;
}
div.module hr { display: none; }
img {
  border: 10px solid #3383ae;
}
ul.classic li {
  line-height: 21px;
  padding-left: 35px;
}
ul.orange li {
  background: url(/images/bullets.png) 12px 0 no-repeat;
}
ul.yellow li {
  background: url(/images/bullets.png) 12px -21px no-repeat;
}
ul.green li {
  background: url(/images/bullets.png) 12px -42px no-repeat;
}
#portfolio ul.orange li {
  background: url(/images/bullets.png) 12px -63px no-repeat;
}
#portfolio ul.yellow li {
  background: url(/images/bullets.png) 12px -21px no-repeat;
}
#portfolio .module.odd.reference:hover ul.yellow li {
  background: url(/images/bullets.png) 12px -84px no-repeat;
}
#portfolio .module.odd.reference:hover ul.orange li {
  background: url(/images/bullets.png) 12px 0 no-repeat;
}
textarea, input {
  background: #237baa;
  border: 1px solid #4394c0;
  color: #64a2c3;
  font: 12px/21px 'Helvetica Neue', Helvetica, Arial, sans-serif;
  line-height: 21px;
  padding: 3px 12px 2px;
  width: 229px;
}
input.text {
  float: left;
  width: 150px;
}
input.button {
  color: #befa7d;
  margin-left: 3px;
  width: 76px;
}

#copy {
  background: #1a4258;
  border-bottom: 1px solid #315d74;
  border-top: 1px solid #315d74;
  font-size: 11px;
  height: 42px;
  line-height: 42px;
  position: relative;
}
#copy a {
  color: #fff;
}
#faux-bg {
  background: #35556d;
  border-bottom: 1px solid #a4aeb4;
  border-top: 1px solid #a4aeb4;
  height: 124px;
  left: 0;
  position: absolute;
  top: 42px;
  width: 100%;
  z-index: 1;
}
#footer {
  padding: 41px 0 20px;
}
#footer li.first, #home li.first, #home li.second {
  background: url(/images/arrow-l.png) no-repeat 100% 2px;
}
#home li.second {
  background-position: 95% 2px;
}
#home .even li {
  background: none;
}
#footer li.second {
  background: none;
}
#footer li.third {
  position: relative;
}
#header {
  margin: 21px 0 0;
  padding-bottom: 42px;
  z-index: 2;
}
#header p {
  background: url(/images/arrow-left.png) no-repeat;
  font-size: 12px;
  left: -23px;
  padding-left: 35px;
  position: relative;
  top: 0;
}
#header span, li.third span, li.first span {
  background: url(/images/arrow-down.png) no-repeat;
  bottom: -53px;
  height: 58px;
  left: 42px;
  position: absolute;
  width: 38px;
  z-index: 9999;
}
li.first span {
  bottom: -53px;
}
li.third span {
  bottom: -54px;
  left: auto;
  right: 84px;
}
#nav {
  position: absolute;
  left: 274px;
  top: 89px;
}
#nav a {
  border: 1px solid transparent;
  color: #72a0bb;
  display: block;
  padding: 0 18px;
  text-decoration: none;
}
#nav a:hover, #nav a.selected {
  color: #fff;
  text-shadow: 1px 1px 1px #35556d;
}
#nav a.selected {
  border: 1px solid #5d778a;
}
#nav li {
  float: left;
  font: 18px/42px 'Helvetica Neue Light', 'HelveticaNeue-Light', 'Helvetica Neue', Arial, sans-serif;
  height: 42px;
  margin-right: 21px;
}
.module.even, #portfolio .module.odd.reference:hover {
  background: #2576a2 url(/images/bg-secondary.png) repeat-x;
  border-bottom: 1px solid #4690b7;
  border-top: 1px solid #4690b7;
  padding: 20px 0;  
}
#how .module.even {
  padding: 41px 0 20px;
}
#how .module.odd {
  padding: 42px 0 21px;
}
/*#how .module.odd *, #how .module.even * {
  font-size: 14px;
}*/
.module.odd {
  padding: 21px 0;
}
.module {
  position: relative;
  text-align: center;
  width: 100%;
}
.module div, .module ol, #copy p {
  margin: 0 auto;
  position: relative;
  text-align: left;
  width: 920px;
}
.module ol li {
  float: left;
  font-size: 12px;
  padding-right: 30px;
  width: 255px;
}
.module ol.form {
  left: 12px;
  position: absolute;
  top: 83px;
  width: auto;
}
.module ol.form li {
  float: none;
}
.module li.third, #how .odd li.second, #how .even li.second {
  padding: 0;
  width: 350px;
}
#how .odd li.first, #how .even li.first {
  width: 540px;
}
#portfolio li.second p {
  padding-top: 64px;
}
#portfolio #footer li.second h3 {
  margin-bottom: 21px;
}
#portfolio #footer li.second p {
 padding-top: 0; 
}
.module ol p {
  padding-left: 12px;
  margin-bottom: 21px;
}
.module.reference p.text {
  margin-bottom: 0;
}

/* Clearing floats without extra markup
   Based on How To Clear Floats Without Structural Markup by PiE
   [http://www.positioniseverything.net/easyclearing.html] */

.module:after, .module ol:after {
  content: '\0020'; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden;
  overflow: hidden; 
}
/*.module, .module ol li {
  display: block;
}*/
.hidden {
  display: none;
}
.module div.vcard {
  padding: 26px 0 0 12px;
  width: auto;
}
.module div.info {
  padding-top: 21px;
  width: auto;
}
#subject {
  display: none;
}

#page {
  position: relative;
}
#page_wrapper {
  position: relative;
  overflow: hidden;
}

.page-container {
  display: none;
  height: 675px;
  position: absolute;
  width: 100%;
}

a.reference-image-link {
  display: block;
  position: relative;
  width: 345px;
}
a.reference-image-link em {
  background: #3383ae url(/images/ref-arrow.png) no-repeat 10px 20px;
  cursor: pointer;
  height: 50px;
  position: absolute;
  right: 0;
  text-indent: -9999px;
  visibility: hidden;
  width: 50px;
}
a.reference-image-link img {
  display: block;
}
a.mobile img, img.mobile {
  border: 0;
  margin: 0 10px;
}
a.reference-image-link:hover em {
  visibility: visible;
}
ul.reference {
  margin: 0 auto;
  position: relative;
  text-align: left;
  width: 920px;
}
ul.reference li {
  float: left;
  margin: 4px 0 4px 25px;
}
ul.reference li.first {
  margin-left: 0;
}
ul.reference a.reference-image-link {
  display: inline;
  width: auto;
}


.page-container div {
  margin: 0 auto;
  padding-left: 60px;
  position: relative;
  text-align: left;
  width: 900px;
}
.page-container div.header {
  height: 80px;
  overflow: hidden;
  padding: 40px 0 0;
}
.header h2 {
  float: left;
}
.header h2 a {
  color: #fec232;
  display: block;
  text-decoration: none;
}
.header a.target {
  color: #fec232;
  float: left;
  line-height: 49px;
  padding-left: 40px;
}
.page-container div .sidebar {  
  position: absolute;
  right: 0;
  top: 120px;
  width: 220px;
}
.sidebar img.mobile {
  margin: 10px 0;
}
.return {
  background: url(/images/ref-arrow-left.png) no-repeat;
  display: block;
  height: 38px;
  left: 0;
  position: absolute;
  text-indent: -9999px;
  top: 280px;
  width: 58px;
}
abbr {
  border-bottom: 1px dotted #6bb9e1;
}

a.lang {
  background: url(/images/flags.png) right no-repeat;
  font-size: 11px;
  font-weight: bold;
  padding-right: 25px;
  position: absolute;
  right: 15px;
  top: 0; }
.sk a.lang {
  background-position: 100% 5px; }
.en a.lang {
  background-position: 100% -20px; }

.link, .clear {
  clear: left; }
