/* =stylesheet for designbits.de
================================================ */

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,
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-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; list-style: none;}

body {font-size: 62.5%; font-family: "Helvetica Neue", Arial, sans-serif; color: #333; text-align: center; background: #f4f4f4 url(/images/header.png) 0 0 repeat-x; margin: 0; padding: 0; height: 100%;}
img {border: none;}

/* =typography
================================================ */
h2 {font-size: 1.8em; font-weight: bold; line-height: 1.6; color: #036; background: url(/images/line-grey.png) bottom repeat-x; padding: .5em 0 .3em 0; margin: .3em 0 .6em 0;}
h2 a, h2 a:hover {text-decoration: none;}
h3 {font-size: 1.4em; font-weight: bold; line-height: 1.6; color: #036; padding: .7em 0 0 0; margin: 1em 0 .6em 0;}
p {font-size: 1.2em; line-height: 1.6; padding-bottom: 1em;}
p.intro {font-size: 1.4em; line-height: 1.6; font-weight: bold; padding: 2em 0;}
cite {display: block; background: #f0f0db; padding: 5px 10px; border-top: 1px solid #fff; border-bottom: 1px solid #d0d0c9;}
b {color: #000;}
em {font-style: italic; font-family: Georgia, "Times New Roman", serif;}
li {font-size: 1.2em; line-height: 1.6;}
a {color: #369;}
a:hover {color: #036; text-decoration: underline;}

/* =icons
================================================ */
.icon {clear: both; line-height: 1.6; background-position: 0 .1em; background-repeat: no-repeat; padding-left: 20px;}
.info {background-image: url(/images/mini/info.png); margin-bottom: 1em;}
.warning {background-image: url(/images/mini/warning.png); margin-bottom: 1em;}

/* =header
================================================ */
#header {position: relative; width: 1020px; height: 70px; padding: 0 10px; margin: 0 auto;}
#header h1 a {position: absolute; top: 0; left: 0; width: 260px; height: 70px; background: url(/images/logo.png) no-repeat; text-indent: -9999px; text-decoration: none; border: none;}

/* =banner
================================================ */
#banner-wrap {text-align: left; background: #6691cc; padding: 0; border-top: 1px solid #a7c0e2; margin: 0 auto;}
#banner {width: 1000px; background: url(/images/halo.jpg) 0 0 no-repeat; padding: 20px 0 20px 40px; margin: 0 auto; overflow: auto;}
#banner h2 {font-size: 4.2em; line-height: 1.6; color: #fff; text-shadow: 0 1px 0 #000; letter-spacing: .1em; background: none; padding: 0; margin: 0;}
#banner h2 em {font-size: 50%; font-weight: normal;}
#banner h2 em:before {content: "\2014 \0020";} /* add em dash and space */

/* =intro
================================================ */
#intro {float: left; width: 360px; margin: 0;}
#intro h2 {font-size: 1.8em; font-weight: bold; letter-spacing: .05em; background: url(/images/line-blue.png) bottom repeat-x; padding: .5em 0;}
#intro ul {background: url(/images/line-blue.png) bottom repeat-x; padding: .5em 0 1em 0; margin-bottom: 10px;}
#intro li {font-size: 1.2em; color: #001933; background: url(/images/tick.png) 0 .4em no-repeat; padding: .3em 0 .3em 22px;}

/* =slideshow
================================================ */
#slideshow {position: relative; float: right; width: 500px; padding: 0 50px; margin: 10px 10px 0 0;}
#slides {height: 220px; overflow: hidden;} /* if JS is off */
#controller {display: none;}
.jFlowPrev,
.jFlowNext {position: absolute; top: 85px; display: block; width: 42px; height: 42px; text-indent: -9999px; cursor: pointer;}
.jFlowPrev {left: 0; background: url(/images/prev-button.png) top right no-repeat;}
.jFlowNext {right: 0; background: url(/images/next-button.png) top right no-repeat;}
.jFlowPrev:hover,
.jFlowNext:hover {background-position: 0 -42px; outline: none;}
.jFlowPrev:active,
.jFlowNext:active {background-position: 0 -84px; outline: none;}

/* =nav
================================================ */
#nav {position: absolute; bottom: 0; right: 40px; list-style: none;}
#nav li {float: left; display: inline; margin-top: 0;}
#nav a {float: left; display: inline; font-family: "Helvetica Neue", Arial, sans-serif; font-weight: bold; color: #6691cc; text-decoration: none; text-transform: uppercase; letter-spacing: .1em; text-shadow: 0 1px 0 #000; background: #143152 url(/images/nav-right-off.png) left top no-repeat; padding: 7px 17px 7px 20px;}
#nav a:hover {color: #fff;}
#nav a:active {padding-top: 8px; padding-bottom: 6px;}
#nav li#current {border-bottom: 1px solid #6691cc; position: relative; margin-bottom: -1px;}
#nav li#current a {color: #fff; background: #6691cc url(/images/nav-left-on.png) right top no-repeat;}

#nav #first {background: #143152 url(/images/nav-left-off.png) left top no-repeat; padding-left: 23px;}
#nav li#current a#first {background: #6691cc url(/images/nav-left-on.png) left top no-repeat;}
#nav #last {background: #143152 url(/images/nav-right-off.png) right top no-repeat; padding-right: 23px;}
#nav li#current a#last {background: #6691cc url(/images/nav-right-on.png) right top no-repeat;}

/* =links
================================================ */
#links {position: absolute; top: 0; right: 20px; background: url(/images/links-right.png) right no-repeat; padding-right: 39px;}
#links ul {float: right; list-style: none; height: 19px; background: url(/images/links-left.png) left no-repeat; padding-left: 39px;}
#links li {float: left; background: url(/images/links.png) repeat-x; padding: 0 15px;}
#links a {line-height: 19px; color: #c2c270; text-decoration: none;}
#links a:hover, 
#links li#current a {color: #fff;}

/* =content
================================================ */
#content-wrap {background: url(/images/content-wrap.png) 0 0 repeat-x;}
#content {position: relative; width: 1020px; background: url(/images/content.png) no-repeat; text-align: left; padding: 30px 15px 40px 15px; margin: 0 auto; overflow: auto;}

.left {float: left; margin: .3em 20px 1em 0;}
.right {float: right; margin: .3em 20px 1em 0;}
.planner {background: url(/images/planner.png) 0 0 no-repeat; padding-left: 60px;}
.agb {background: url(/images/agb.png) 0 0 no-repeat; padding-left: 60px;}
.shade {background: url(/images/shade.png) center bottom no-repeat; padding-bottom: 10px;}

/* =subnav
================================================ */
.subnav li {border-bottom: 1px solid #fff;}
.subnav li.selected,
.subnav li:hover {background: url(/images/subnav-hover.png) repeat-y;}
.subnav li:hover a {color: #369;}
.subnav li a {display: block; width: 224px; line-height: 1.6; color: #333; text-decoration: none; background: url(/images/subnav-off.png) 2px .9em no-repeat; padding: .5em 3px .5em 13px; border-bottom: 1px solid #e2e2e2;}
.subnav li a span {float: right; font-family: Georgia, serif; font-style: italic; color: #bbb;}
.subnav li.selected a {font-weight: bold; color: #000; background-color: inherit; background-image: url(/images/subnav-on.png);}

/* =col
================================================ */
.col {float: left; padding: 10px 30px;}
.narrow {width: 240px;}
.medium {width: 360px;}
.wide {width: 660px;}
.half {width: 450px;}

/* =browser
================================================ */
.browser-small {float: left; width: 290px; font-size: 1.2em; text-align: center; margin: 10px 40px 50px 0;} 
.browser-small img {float: right; width: 290px; height: 128px;}
#browser-large {display: block; margin-top: 30px;}
#browser-large img {width: 620px; height: 273px; padding: 0 25px;}

/* =project-data
================================================ */
#project-data {font-size: 1.2em; line-height: 1.6; border-collapse: collapse;}
#project-data td.column {width: 50%; vertical-align: top;} /* for IE6 & 7 */
#project-data table th {font-weight: bold; color: #000; padding: 5px 10px;}
#project-data table td {padding: 5px 10px;}
#project-data table li {font-size: 1em; background: url(/images/mini/tick.png) left 1px no-repeat; padding-left: 22px;}

/* =checklist
================================================ */
.checklist {padding-bottom: 1em;}
.checklist li {line-height: 1.6; background-position: left 1px; background-repeat: no-repeat; padding: 0 0 .5em 22px;}
.checklist li ul {padding: .5em 0 0 0;} /* nested checklist */
.checklist li ul li {font-size: 1em; list-style-type: square; background-image: none; padding-left: 0; margin-left: 60px;}
.checklist li ul li:last-child {padding-bottom: 0;}
.ticks li {background-image: url(/images/mini/tick.png);}
.warnings li {background-image: url(/images/mini/warning.png);}

/* =service
================================================ */
.service {font-size: 1.2em; line-height: 1.6; padding-bottom: 2em;}
.service a {text-decoration: none;}
.service a:hover {text-decoration: underline;}
.service dt {font-weight: bold;}
.service img {float: left; width: 48px; height: 48px; margin-right: 12px;}
.service dd {padding-bottom: 0; margin-left: 60px;}

/* =icons
================================================ */
table#icons td {width: 300px; vertical-align: top; padding: 1.8em 0;}
table#icons td:first-child {padding-right: 60px;}
table#icons img {float: left;}
table#icons h3 {font-size: 1.3em; font-weight: bold; padding: 0; margin: 0 0 .3em 60px;}
table#icons p {margin-left: 60px;}

/* =cv
================================================ */
.cv {float: left; width: 300px;}
.cv + .cv {margin-left: 60px;}
.cv img {width: 150px; height: 150px;}
.cv h3 em {font-weight: normal; font-style: italic; color: #333;}

/* =portfolio
================================================ */
#portfolio div {width: 400px; height: 200px; background: url(/images/browser-grey.png) center center no-repeat; padding: 22px 0 7px 0; margin: 0 80px 0 0;}
#portfolio div:hover {-moz-opacity:.95; filter:alpha(opacity=95); opacity:.95;}
#portfolio div a {display: block; width: 400px; height: 200px; background: url(/images/loader.gif) center center no-repeat;}
#portfolio div a img {display: block; width: 400px; height: 200px;}
#portfolio ul {padding: 10px 0 40px 0;}

/* =blog-articles
================================================ */
#blog-contents {width: 100%; font-size: 1.2em; line-height: 1.6; border-collapse: collapse;}
#blog-contents tr {background: url(/images/line-grey.png) bottom repeat-x;}
#blog-contents tr:hover {background-color: #f7f7f7;}
#blog-contents th,
#blog-contents td {text-align: left /* for IE7 */; padding: .6em 1px;}
#blog-contents td.comment {background: url(/images/comment.png) 0 45% no-repeat; text-align: right;}

/* =comment
================================================ */
.comment {margin-bottom: 4.2em;}
.comment img {float: left; width: 40px; height: 40px; border: 1px solid #ccc;}
.comment p {margin-left: 70px;}
.comment p.author {font-weight: bold;}

/* =data
================================================ */
table.data {font-size: 1.2em; line-height: 1.6; margin-bottom: 3em; border-collapse: collapse /* IE 6 hack */;}
table.data th, table.data td {padding: 5px 10px;}
table.data th {font-weight: bold; background: #e0e0b7; border-bottom: 1px solid #b4b468;}
table.data td {border-bottom: 1px solid #ccc;}

/* =grid
================================================ */
.grid {width: 660px; font-size: 1.2em; line-height: 1.6; border-collapse: collapse; margin-bottom: 3em;}
.grid tr.alt th,
.grid tr.alt td {background: #fff;}
.grid td,
.grid th {text-align: left; vertical-align: top; background: url(/images/table-line.png) 0 0 repeat-x; padding: 10px; border: 1px solid #ccc;}
.grid tr#head th {font-weight: bold; color: #fff; letter-spacing: .1em; text-shadow: 0 1px 0 #000; background: #143152 url(/images/table-head.png) center top no-repeat; padding: 10px; border: 0;}
.grid tr#head th#first {background-position: left top;} /* support for first-child pseudo class still sketchy */
.grid tr#head th#last {background-position: right top;} /* IE 7 not supporting last-child pseudo class */
.grid tr#head th img {vertical-align: middle;} /* align header text */
.grid th span {font-size: 2em; font-weight: bold; display: block;}

/* =prices
================================================ */
.prices td, 
.prices th {text-align: center;}
.prices th:first-child {/* font-family: Georgia, serif; font-style: italic;*/ text-align: left;}
.prices td img {vertical-align: middle;}
.prices span.total {font-family: Georgia, serif; font-size: 1.8em; color: #001933;}

/* =form
================================================ */
form {margin: 15px 0;}
form label {float: left; width: 5em;}
form label.error {float: right;}
form input[type="text"],
form textarea {font: 1.2em/1.6 "Helvetica Neue", Arial, sans-serif; background: #fff; margin-right: 5px; border: 1px solid #bbb; border-top: 1px solid #777; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
form input[type="text"] {width: 177px;}
form textarea {width: 359px; overflow: hidden; /* hide scrollbar in IE6 */}
form input.error,
form textarea.error {background: #fff url(/images/mini/warning.png) 99% .1em no-repeat; border-color: #c00;}
form em {color: #c00;}

/* =address
================================================ */
#address {font-size: 1.2em; line-height: 1.6; background: #fff; padding: 10px 15px; border: 1px solid #e2e2e2; -moz-border-radius: 3px; -webkit-border-radius: 3px;}
#address dt {font-weight: bold; color: #111; margin: .6em 0 .2em 0;}
#address dd {margin-bottom: 1.2em;}
#address dd.skype {background: 0 50% url(/images/mini/skype.png) no-repeat; padding-left: 20px;}

/* =button
================================================ */
.button {display: block; float: left; width: 142px; height: 32px; font-size: 1.2em; font-weight: bold; color: #fff; text-align: center; line-height: 32px; text-decoration: none; text-transform: uppercase; letter-spacing: .1em; text-shadow: 0 1px 0 #000; border: none; background: url(/images/button.png) no-repeat; cursor: pointer; padding: 0 /* for Safari */; margin-right: 10px;}
.button:hover {color: #fff; text-decoration: none; background-position: 0 -32px; outline: none; /* hide dotted outline in Firefox */}
.button:active {background-position: 0 -64px; outline: none; line-height: 33px;}

/* =mini-button
================================================ */
.mini-button {display: block; float: left; width: 92px; height: 22px; font-size: 11px; font-weight: bold; color: #fff; text-align: center; line-height: 22px; text-decoration: none; text-transform: uppercase; letter-spacing: .1em; text-shadow: 0 1px 0 #111; border: none; background: url(/images/mini-button.png) no-repeat; cursor: pointer; padding: 0 /* for Safari */;}
.mini-button:hover {color: #fff; text-decoration: none; background-position: 0 -22px; outline: none; /* hide dotted outline in Firefox */}
.mini-button:active {background-position: 0 -44px; outline: none; line-height: 23px;}

/* =paginate
================================================ */
.paginate {margin-top: 1.7em;}
.paginate strong,
.paginate a {display: block; float: left; width: 42px; height: 22px; font-weight: bold; line-height: 22px; color: #fff; text-shadow: 0 1px 0 #000; text-decoration: none; text-align: center; background: url(/images/page-tab.png) 0 0 no-repeat; margin-right: 10px;}
.paginate a:hover {background-position: 0 -22px;}
.paginate strong,
.paginate a:active {background-position: 0 -44px;}
.paginate a:active {line-height: 23px;}

/* =faq
================================================ */
.faq {margin-bottom: 2em;}
.faq dt {font-size: 1.2em; line-height: 1.6; cursor: pointer; background-position: right 50%; background-repeat: no-repeat; padding: .3em 20px .3em 0; border-bottom: 1px dotted #bbb;}
.faq dt:hover {color: #369; background-color: #fff;}
.faq dt.off {background-image: url(/images/mini/plus.png);}
.faq dt.on {background-image: url(/images/mini/minus.png);}
.faq dd {font-size: 1.2em; line-height: 1.6; padding: 0 0 1em 20px; border-bottom: 1px dotted #bbb;}
	
/* =tooltip
================================================ */	
#tooltip {position: absolute; cursor: pointer; z-index: 3000; border: 1px solid #111; background-color: #fff; padding: 5px; /* opacity: 0.85; */}
#tooltip h3, #tooltip div {font-size: 1.2em; padding: 0; margin: 0;}
a.tooltip {color: inherit; cursor: help; border-bottom: 1px dotted;}
a:hover.tooltip {text-decoration: none;}
	
/* =footer
================================================ */
#footer {width: 960px; padding: 10px 0; margin: 0 auto; border-top: 5px solid #c2c270; overflow: auto;}
#footer p {padding: 0;}
#footer p#left {float: left;}
#footer p#right {float: right;}

/* =grid
================================================ */
#grid {position: absolute; left: 50%; top: 120px; margin-left: -510px; width: 1020px; height: 1000px; z-index: 100; background: url(/images/16_col.png) repeat-y;}
#grid {display: none;}

/* =misc
================================================ */
.clear {clear: both;}
input[type="submit"]::-moz-focus-inner{padding:0; border:none;} /* center text vertically in FF */


