@charset "UTF-8";

/*
Theme Name: Thomas Wilhelm v3
Theme URI: http://thomas.web-wack.at
Description: Custom theme for Thomas Wilhelm\'s Website
Version: 1.0
Author: Thomas Wilhelm
Author URI: http://thomas.web-wack.at
Tags:
*/

/* Global Reset
   Based on Eric Meyer's Global 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,
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;
}

/* always display scrollbar */
html {
	overflow-y: scroll;
	height: 100%;
	margin-bottom: 1px;
}

body {
	line-height: 1;
	color: black;
	background: white;
	text-rendering: optimizeLegibility;
}

ol, ul {
	list-style: none;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
}

/* Re-Reset some sensible defaults */
strong { font-weight: bold; }
em { font-style: italic; }
a img { border: 0 none; }

textarea {
	resize: none;
}

/* Link Styles
-------------------------------------------------- */
a, a:link, a:visited {
	color: #22a5e6;
	text-decoration: underline;
}

a:active, a:focus {
	color: #31afee;
}

a:hover {
	color: #1998d7;
	text-decoration: none;
}

/* Global Markup Settings
-------------------------------------------------- */
body {
	font-family: Helvetica, Arial, sans-serif;
	font-size: 10px;
	color: #333;
	background-color: #f2f2f2;
}
body { -webkit-text-stroke:1px transparent; }
@media only screen and (max-device-width:480px) {body{-webkit-text-strike:0 black;}}

p, blockquote { line-height: 1.5em; }

hr {
	clear: both;
	margin: 5.2em 0;
	border: 0 none;
	height: 4px;
	background: #f2f2f2;
}

hr.alt {
	margin: 3em 0;
	height: 0px;
	border-top: 2px dashed #cdcdcd;
	background: transparent;
}

.wrapper, #main {
	margin: 0 auto;
	width: 680px;
}

#page-header {
	position: relative;
	height: 200px;
	background: url("images/bg-header.png") repeat-x 0 0;
}

#globalnav {
	position: absolute;
	width: 432px;
	margin-left: -216px;
	top: 160px;
	left: 50%;
}

#breadcrumb {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 31px;
	background: url("images/bg-breadcrumb.png") repeat-x 0 0;
}

#page-body {
	background: #fff url("images/bg-gradient.png") repeat-x;
}

#main {
	padding: 4em 0;
	min-height: 200px;
}

#page-footer {
	padding-top: 3.8em;
	height: 100px;
	background-color: #f2f2f2;
	background-image: url("images/footer-gradient.png");
	background-repeat: no-repeat;
	background-position: 50% 0pt; 
}

/* Page Header Styles
-------------------------------------------------- */
/* Logo */
#logo, #logo h1, #logo a {
	display: block;
	width: 415px;
	height: 80px;
}

#logo {
	position: absolute;
	top: 69px;
	left: 50%;
	margin-left: -207px;
}

#logo h1 {
	text-indent: -999em;
}

#logo a {
	background: url("images/thomas-wilhelm.png") no-repeat 0 0;
}

/* Globalnav */
#globalnav li {
	margin-right: 26px;
	float: left;
}

#globalnav li:last-child {
	margin-right: 0;	
}

/*#globalnav li:first-child {
	margin-left: 12px;	
}*/

#globalnav a {
	display: block;
	height: 27px;
	background-image: url("images/bg-globalnav.png");
	background-repeat: no-repeat;
	text-indent: -999em;
}

a#nav-home {
	width: 76px;
	background-position: 0 0;
}
a#nav-about {
	width: 84px;
	background-position: -103px 0;
}
a#nav-work {
	width: 80px;
	background-position: -216px 0;
}
a#nav-contact {
	width: 102px;
	background-position: -330px 0;
}

#activemenu a {
	cursor: default;
}

a#nav-home:hover, #activemenu a#nav-home, a#nav-home.nav-over { background-position: 0 100%; }
a#nav-about:hover, #activemenu a#nav-about, a#nav-about.nav-over { background-position: -103px 100%; }
a#nav-work:hover, #activemenu a#nav-work, a#nav-work.nav-over { background-position: -216px 100%; }
a#nav-contact:hover, #activemenu a#nav-contact, a#nav-contact.nav-over { background-position: -330px 100%; }

/* Breadcrumb */
#breadcrumb {
	position: absolute;
	top: 217px;
	left: 0;
}

#breadcrumb li {
	float: left;
}

#breadcrumb a {
	display: block;
	padding: 10px 22px 10px 14px;
	width: auto;
	height: 11px;
	font-size: 1.1em;
	color: #a3a3a3;
	text-decoration: none;
	text-shadow: -1px -1px rgba(0,0,0,0.6);
	background: url("images/breadcrumb-seperator.png") no-repeat 100% 0;
}

#breadcrumb a:hover {
	text-decoration: underline;
}

#breadcrumb ul li:last-child a {
	color: #c7c7c7;
	text-decoration: none;
	cursor: default;
}

/* Page Body Styles
-------------------------------------------------- */
/* Intro Links */
#intro-links {
	margin: 2.5em 0 0 1px;
	height: 15px;
}

#intro-links a, #intro-links span {
	display: block;
	float: left;
	height: 15px;
	text-indent: -999em;
	background-image: url("images/learn-more-git.png");
	background-repeat: no-repeat;
}

#intro-links span {
	width: 45px;
	background-position: -140px 0;
}

#learn-more {
	width: 140px;
}

#get-in-touch {
	width: 150px;
	background-position: -185px 0;
}

#view-work {
	width: 133px;
	background-image: url("images/view-work.png") !important;
	background-position: 0 0;
}

/* Footer Styles
-------------------------------------------------- */
#page-footer li {
	float: left;
	text-indent: -999em;
}

#page-footer li a {
	display: block;
}

#contact-li a {
	width: 92px;
	height: 17px;
	background-image: url("images/contact.png");
	background-repeat:  no-repeat;
	background-position: 0 0;
}

#contact-li a:hover, #contact-li a.link-over {
	background-position: 0 100%;
}

#copyright {
	float: right;
	width: 203px;
	height: 14px;
	text-indent: -999em;
	background: url("images/copyright.png") no-repeat 0 0;
}

/* Text Layout
-------------------------------------------------- */
h2.imgrep {
	margin-bottom: 1em;
	height: 23px;
	text-indent: -999em;
	background-repeat: no-repeat;
	background-position:0 0;
}

h2.imgrep.thomas, h2.imgrep.about-languages,
h2.imgrep.about-websites, h2.imgrep.about-contact  {
	height: 17px;
}

h2.imgrep.about-languages,
h2.imgrep.about-websites, h2.imgrep.about-contact {
	margin-top: 4em;
}

h2.imgrep.about {
	background-image: url("images/h-about.png");
}
h2.imgrep.work {
	background-image: url("images/h-work.png");
}
h2.imgrep.contact {
	background-image: url("images/h-contact.png");
}
h2.imgrep.thomas {
	margin-top: 6em;
	background-image: url("images/h-thomas.png");
}
h2.imgrep.about-languages {
	background-image: url("images/h-about-languages.png");
}
h2.imgrep.about-websites {
	background-image: url("images/h-about-websites.png");
}
h2.imgrep.about-contact {
	background-image: url("images/h-about-contact.png");
}

#main p {
	margin-bottom: 1.8em;
	font-size: 1.4em;
	line-height: 1.4;
}

p#intro-text {
	font-size: 1.5em;
}

p.note, div.fancy-note p {
	font-size: 12px !important;
	line-height: 1.3 !important;
	color: #888;
}

div.fancy-note, div.fancy-note p.bottom {
	width: 259px;
	background: url("images/bg-mail-info.png") no-repeat;
}

div.fancy-note p.bottom {
	height: 4px;
	background-position: 0 100%;
}
	
div.fancy-note p, div.fancy-note h3 {
	margin: 0 !important;
	padding: 12px 6px 0 24px;
}

div.fancy-note h3 {
	font-weight: bold;
	color: #6a7f94;
	font-size: 13px;
	text-shadow: 0 1px #fff;
}

p.about {
	margin: 2em 0 !important;
	padding-top: 8px;
	background-repeat: no-repeat;
	background-image: url("images/line-about.png");
	background-position:0 0;
	font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "HelveticaNeue LT 45 Light", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
	font-size: 1.6em !important;
	line-height: 1.3 !important;
	text-transform: uppercase;
	color: #888;
}

p.about.home {
	background-image: url("images/line-home.png");
}
p.about.work {
	background-image: url("images/line-work.png");
}
p.about.contact {
	background-image: url("images/line-contact.png");
}

/* Project Showcase */
div.project-tabs {
	width: 424px;
	margin: 0 auto 4em;
	-moz-box-shadow: 0 0 12px rgba(0,0,0,0.15);
	-webkit-box-shadow: 0 0 12px rgba(0,0,0,0.15);
	box-shadow: 0 0 12px rgba(0,0,0,0.15);
}

div.project-tabs ul {
	margin: 0 !important;
	list-style: none !important;
}

div.project-tabs li {
	margin: 0 0 -10px !important;
	float: left;
}

div.project-tabs a {
	display: inline-block;
	width: 140px;
	padding: 0.4em 0;
	font-size: 1.8em;
	text-align: center;
	background-color: #29abe2;
	background-image: url("images/overlay-button.png");
	background-repeat: repeat-x;
	border: 0 none;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: rgba(0, 0, 0, 0.25);
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: rgba(0, 0, 0, 0.1);
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: rgba(255, 255, 255, 0.25);
	box-shadow: 0pt 1px 3px rgba(0, 0, 0, 0.25);
	text-shadow: 0pt -1px 1px rgba(0, 0, 0, 0.25);
	color: #fff !important;
	text-decoration: none !important;
	-moz-transition: all 0.1s ease-in;
	-webkit-transition: all 0.1s ease-in;
	-o-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
}

div.project-tabs li:first-child a {
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	border-left: 0 none;
}

div.project-tabs li:last-child a {
	width: 140px;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	border-right: 0 none;
}

div.project-tabs a:hover, div.project-tabs a.active {
	background-color: #238bb7;
	color: #fff !important;
}

div.project-tabs a.active {
	cursor: default;
}

div.project-tabs li.last {
	border: 0 none;
}

div.project-box {
	position: relative;
	margin: 0 0 2.5em;
	padding: 12px;
	background-color: #fafafa;
	-moz-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
	-moz-box-shadow: 0 0 12px rgba(0,0,0,0.15);
	-webkit-box-shadow: 0 0 12px rgba(0,0,0,0.15);
	box-shadow: 0 0 12px rgba(0,0,0,0.15);
}

div.project-box a.top {
	position: absolute;
	bottom: 8px;
	right: 8px;
	display: block;
	width: 12px;
	height: 12px;
	text-indent: -999em;
	background: url("images/icon-back-top.png") no-repeat 0 0;
	opacity: 0.4;
}

div.project-box a.top:hover {
	opacity: 0.8;
}

div.project-box:hover {
	-moz-box-shadow: 0 0 12px rgba(0,0,0,0.25);
	-webkit-box-shadow: 0 0 12px rgba(0,0,0,0.25);
	box-shadow: 0 0 12px rgba(0,0,0,0.25);
}

div.project-thumb {
	width: 320px;
	float: left;
}

div.project-thumb a {
	position: relative;
}

div.project-thumb a span {
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	width: 22px;
	height: 24px;
	-moz-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
	background: url("images/icon-loupe.png") no-repeat 24px 24px;
	opacity: 0;
}

div.project-thumb a img {
	-moz-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
}

div.project-thumb a:hover span {
	background-position: 0 0;
	opacity: 0.9;
}

div.project-thumb a:hover img {
	opacity: 0.8;
}

div.project-description {
	width: 308px;
	float: right;
}

div.project-description h3 {
	margin: 0.8em 0 0.65em;
	padding-bottom: 0.1em;
	border-bottom: 1px solid #eee;
	font-size: 1.8em;
}

#projects-logos div.project-description h3,
#projects-photos div.project-description h3 {
	border: 0 none;
	margin-top: 5em;
}

div.project-description p {
	margin-bottom: 0.4em !important;
	font-size: 1.35em !important;
	line-height: 1.4;
}

div.project-tags {
	margin-bottom: 0.8em;
	text-align: center;
	line-height: 1.6;
}

div.project-tags ul {
	margin: 0 !important;
	list-style: none;
}

div.project-tags li {
	display: inline-block;
	padding: 0.15em 0.65em;
	background-color: #eee;
	color: #888;
	font-size: 0.8em !important;
	text-shadow: 1px 1px rgba(255,255,255,0.8);
	-moz-border-radius: 11px;
	-webkit-border-radius: 11px;
	-khtml-border-radius: 11px;
	border-radius: 11px;
}

div.project-tags li:hover {
	background-color: #eaeaea;
	color: #777;
	text-shadow: 1px 1px rgba(255,255,255,0.6);
}

/* Error, Success and Notice Messages */
.error, .notice, .success {
	padding:.8em;
	margin-bottom:1em;
	border:2px solid #ddd;
}
.error {
	background:#FBE3E4;
	color:#8a1f11;
	border-color:#FBC2C4;
}
.notice {
	background:#FFF6BF;
	color:#514721;
	border-color:#FFD324;
}
.success {
	background:#E6EFC2;
	color:#264409;
	border-color:#C6D880;
}
.error a {color:#8a1f11;}
.notice a {color:#514721;}
.success a {color:#264409;}

/* Lists */
#main ul, #main ol {
	margin: -1em 0 2em 2em;
	font-size: 1.3em;
}

#main ul {
	list-style: disc;
}

#main li {
	line-height: 1.3;
	margin-bottom: 0.1em;
}

/* work navigation buttons */
#work-navigation {
	margin: -1em 0 2em;
	font-size: 1.2em;
}

#work-navigation a {
	margin-right: 0.6em;
}

/* Image Layout */
img.right {
	float: right;
}

/* Columned Layout */
div.column1 {
	float: left;
	width: 400px;
}

div.column2 {
	float: right;
	width: 260px;
}

/* Slider */
#intro-slider {
	width: 675px;
	height: 300px;
	background: url("images/loading.gif") no-repeat 50% 50%;
	border-radius: 10px;
	box-shadow: 0 0 12px rgba(0,0,0,0.4);
}

#intro-slider img {
	border: 1px solid #fff;
	border-radius: 10px;
}

.slider-wrapper {
	margin-top: 2em;
}

#slider {
	display: none;
	margin: 0 auto;
	width: 640px;
	height: 400px;
}

.screen {
	width: 640px;
	height: 542px;
	background: url("images/bg-monitor.png") no-repeat;
}

/* Fancy Ampersand */
.amp {
	font-family: Baskerville, 'Goudy Old Style', Palatino, 'Book Antiqua', serif;
	font-style: italic;
	font-weight: normal;
	color: #888;
}


/* Form Styles
-------------------------------------------------- */
label {
	cursor: pointer;
}

label span {
	display: block;
	padding: 0 1.2em;
	font-size: 1.3em;
	font-weight: bold;
}

label input, textarea, #recaptcha_response_field {
	margin: 0.6em 0 1.6em;
	padding: 0.6em 0.3em;
	width: 375px;
	background-color: #f2f2f2;
	border: 3px solid #eee !important;
	border-radius: 4px;
	color: #666;
	box-shadow: 0pt 0pt 2px rgba(0, 0, 0, 0.2) inset;
	font-family: Helvetica, Arial, sans-serif;
	font-size: 13px !important;
	-moz-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
}

label input:focus, textarea:focus, #recaptcha_response_field:focus {
	border-color: #29abe2 !important;
	box-shadow: 0pt 0pt 3px #29abe2, 0pt 0pt 2px rgba(0, 0, 0, 0.2) inset;
	color: #247ea4;
}

textarea {
	padding: 0.3em;
	height: 278px;
}

#recaptcha_widget_div {
	margin: 0.6em 0 2em;
}

/* Buttons */
.button {
	display: inline-block;
	padding: 8px 18px 4px;
	background-image: url("images/overlay-button.png");
	background-repeat: repeat-x;
	border: 0 none;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: rgba(0, 0, 0, 0.25);
	border-radius: 5px;
	box-shadow: 0pt 1px 3px rgba(0, 0, 0, 0.25);
	text-shadow: 0pt -1px 1px rgba(0, 0, 0, 0.25);
	color: #fff !important;
	font-size: 14px;
	font-weight: bold;
	font-family: Helvetica, sans-serif;
	cursor: pointer;
	-moz-transition: all 0.1s ease-in;
	-webkit-transition: all 0.1s ease-in;
	-o-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
	text-decoration: none !important;
}

.button.wide {
	display: block;
}

.green.button { background-color: #91bd09; }
.green.button:hover { background-color: #749a02; }
.blue.button { background-color: #29abe2; }
.blue.button:hover { background-color: #238bb7; }
.red.button { background-color: #e33100; }
.red.button:hover { background-color: #872300; }
.magenta.button{ background-color: #a9014b; }
.magenta.button:hover { background-color: #630030; }
.orange.button { background-color: #ff5c00; }
.orange.button:hover { background-color: #d45500; }
.sunny.button { background-color: #ffb515; }
.sunny.button:hover { background-color: #fc9200; }
.white.button { background-color: #fff; border: 1px solid #ccc; color: #666 !important; font-weight: normal; text-shadow: 0 1px 1px rgba(255,255,255,1); }
.white.button:hover { background-color: #eee; }

/* Misc. */
.overlay-close {
	display: block;
	float: right;
	width: 163px;
	height: 17px;
	background: url("images/return.png") no-repeat 0 0;
	text-indent: -999em;
}

.overlay-close:hover {
	background-position: 0 -17px;
}

.icon-websites span, .icon-logos span, .icon-photos span {
	display: inline-block;
	height: 20px;
	padding: 6px 0 0 30px;
	background-repeat: no-repeat;
	background-position: 0 50%;
	text-shadow: 0 2px rgba(0,0,0,0.3);
	color: #ececec;
}

.icon-websites span { background-image: url("images/icon-websites.png"); }
.icon-photos span {
	background-image: url("images/icon-photos.png");
	background-position: 0 40%;
}
.icon-logos span { background-image: url("images/icon-logos.png"); }

/* Tweaks
-------------------------------------------------- */
.clear, .clearfix:after, #globalnav:after, #breadcrump:after,
#page-footer:after, div.columns:after, ul#work-navigation:after,
div.project-box:after, div.project-tabs:after {
  display: block;
  visibility: hidden;
  content: ".";
  clear: both;
}

