/**
 * Theme Name: tobias-kirschstein.de
 * Author: Tobias Kirschstein
 */

/**
 * Table of contents:
 *
 * 0.9 - Font Definition
 * 1.0 - Reset
 * 2.0 - Basic structure (Layout)
 * 3.0 - Header
 *   3.1 - Site Header
 *   3.2 - Navigation
 * 4.0 - Content
 *   4.1 - Entry
 *   4.2 - Portfolio
 * 5.0 - Footer
 * 6.0 - Media Queries
 * ----------------------------------------------------------------------------
 */

/**
 * 0.9 - Font Definition
 *
 */

@font-face {
	font-family: 'Titillium Web';
	src: url('fonts/titillium_web/titilliumweb-regular.eot'); /* IE9 Compat Modes */
	src: url('fonts/titillium_web/titilliumweb-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	url('fonts/titillium_web/titilliumweb-regular.woff2') format('woff2'), /* Super Modern Browsers */
	url('fonts/titillium_web/titilliumweb-regular.woff') format('woff'), /* Pretty Modern Browsers */
	url('fonts/titillium_web/titilliumweb-regular.ttf')  format('truetype'), /* Safari, Android, iOS */
	url('fonts/titillium_web/titilliumweb-regular.svg#titilliumWeb') format('svg'); /* Legacy iOS */
}

@font-face {
	font-family: 'Titillium Web';
	font-weight: bold;
	src: url('fonts/titillium_web/titilliumweb-bold.eot'); /* IE9 Compat Modes */
	src: url('fonts/titillium_web/titilliumweb-bold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	url('fonts/titillium_web/titilliumweb-bold.woff2') format('woff2'), /* Super Modern Browsers */
	url('fonts/titillium_web/titilliumweb-bold.woff') format('woff'), /* Pretty Modern Browsers */
	url('fonts/titillium_web/titilliumweb-bold.ttf')  format('truetype'), /* Safari, Android, iOS */
	url('fonts/titillium_web/titilliumweb-bold.svg#titilliumWeb') format('svg'); /* Legacy iOS */
}

@font-face {
	font-family: 'Titillium Web';
	font-style: italic;
	src: url('fonts/titillium_web/titilliumweb-italic.eot'); /* IE9 Compat Modes */
	src: url('fonts/titillium_web/titilliumweb-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	url('fonts/titillium_web/titilliumweb-italic.woff2') format('woff2'), /* Super Modern Browsers */
	url('fonts/titillium_web/titilliumweb-italic.woff') format('woff'), /* Pretty Modern Browsers */
	url('fonts/titillium_web/titilliumweb-italic.ttf')  format('truetype'), /* Safari, Android, iOS */
	url('fonts/titillium_web/titilliumweb-italic.svg#titilliumWeb') format('svg'); /* Legacy iOS */
}

@font-face {
	font-family: 'Titillium Web';
	font-weight: bold;
	font-style: italic;
	src: url('fonts/titillium_web/titilliumweb-bolditalic.eot'); /* IE9 Compat Modes */
	src: url('fonts/titillium_web/titilliumweb-bolditalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	url('fonts/titillium_web/titilliumweb-bolditalic.woff2') format('woff2'), /* Super Modern Browsers */
	url('fonts/titillium_web/titilliumweb-bolditalic.woff') format('woff'), /* Pretty Modern Browsers */
	url('fonts/titillium_web/titilliumweb-bolditalic.ttf')  format('truetype'), /* Safari, Android, iOS */
	url('fonts/titillium_web/titilliumweb-bolditalic.svg#titilliumWeb') format('svg'); /* Legacy iOS */
}

@font-face {
	font-family: 'EB Garamond';
	src: url('fonts/eb_garamond/eb-garamond.eot'); /* IE9 Compat Modes */
	src: url('fonts/eb_garamond/eb-garamond.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	url('fonts/eb_garamond/eb-garamond.woff2') format('woff2'), /* Super Modern Browsers */
	url('fonts/eb_garamond/eb-garamond.woff') format('woff'), /* Pretty Modern Browsers */
	url('fonts/eb_garamond/eb-garamond.ttf')  format('truetype'), /* Safari, Android, iOS */
	url('fonts/eb_garamond/eb-garamond.svg#ebGaramond') format('svg'); /* Legacy iOS */
}

/**
 * 1.0 - Reset
 * ----------------------------------------------------------------------------
 */

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
video {
	display: inline-block;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden] {
	display: none;
}

html {
	font-size: 100%;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

html,
button,
input,
select,
textarea {
	font-family: "Titillium Web", "Source Sans Pro", Helvetica, sans-serif;
}

body {
	color: #222;
	line-height: 1.5;
	margin: 0;
        word-wrap: break-word;

	-webkit-hyphens: auto;
        -moz-hyphens: auto;
        hyphens: auto;
}

a {
	color: #F27900;
	text-decoration: none;
}

a:visited {
	color: #FFB650;
}

a:focus {
	outline: none;
}

a:active,
a:hover {
	color: #F27900;
	outline: none;
}

a:hover {
	text-decoration: underline;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	font-family: "EB Garamond", Bitter, Georgia, serif;
	line-height: 1.3;
}

h1 {
	font-size: 48px;
	margin: 10px 0 33px 0;
}

h2 {
	font-size: 30px;
	margin: 25px 0;
}

h3 {
	font-size: 22px;
	margin: 22px 0;
}

h4 {
	font-size: 20px;
	margin: 25px 0;
}

h5 {
	font-size: 18px;
	margin: 30px 0;
}

h6 {
	font-size: 16px;
	margin: 36px 0;
}

address {
	font-style: italic;
	margin: 0 0 24px;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

mark {
	background: #ff0;
	color: #000;
}

p {
	margin: 0 0 24px;
}

code,
kbd,
pre,
samp {
	font-family: monospace, serif;
	font-size: 14px;
	-webkit-hyphens: none;
	-moz-hyphens:    none;
	-ms-hyphens:     none;
	hyphens:         none;
}

pre {
	background: #f5f5f5;
	color: #666;
	font-family: monospace;
	font-size: 14px;
	margin: 20px 0;
	overflow: auto;
	padding: 20px;
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

blockquote,
q {
	-webkit-hyphens: none;
	-moz-hyphens:    none;
	-ms-hyphens:     none;
	hyphens:         none;
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

blockquote {
	font-size: 18px;
	font-style: italic;
	font-weight: 300;
	margin: 24px 40px;
}

blockquote blockquote {
	margin-right: 0;
}

blockquote cite,
blockquote small {
	font-size: 14px;
	font-weight: normal;
	text-transform: uppercase;
}

blockquote em,
blockquote i {
	font-style: normal;
	font-weight: 300;
}

blockquote strong,
blockquote b {
	font-weight: 400;
}

small {
	font-size: smaller;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

dl {
	margin: 0 20px;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 0 20px;
}

menu,
ol,
ul {
	margin: 16px 0;
	padding: 0 0 0 40px;
}

ul {
	list-style-type: square;
}

nav ul,
nav ol {
	list-style: none;
	list-style-image: none;
}

li > ul,
li > ol {
	margin: 0;
}

img {
	-ms-interpolation-mode: bicubic;
	border: 0;
	vertical-align: middle;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 0;
}

form {
	margin: 0;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
	white-space: normal;
}

button,
input,
select,
textarea {
	font-size: 100%;
	margin: 0;
	max-width: 100%;
	vertical-align: baseline;
}

button,
input {
	line-height: normal;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
input[disabled] {
	cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
	padding: 0;
}

input[type="search"] {
	-webkit-appearance: textfield;
	padding-right: 2px; /* Don't cut off the webkit search cancel button */
	width: 270px;
}

input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
}

table {
	border-bottom: 1px solid #ededed;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 14px;
	line-height: 2;
	margin: 0 0 20px;
	width: 100%;
}

caption,
th,
td {
	font-weight: normal;
	text-align: left;
}

caption {
	font-size: 16px;
	margin: 20px 0;
}

th {
	font-weight: bold;
	text-transform: uppercase;
}

td {
	border-top: 1px solid #ededed;
	padding: 6px 10px 6px 0;
}

del {
	color: #333;
}

ins {
	background: #fff9c0;
	text-decoration: none;
}

hr {
	background: url(images/dotted-line.png) repeat center top;
	background-size: 4px 4px;
	border: 0;
	height: 1px;
	margin: 0 0 24px;
}

/**
 * 2.0 - Basic Structure (Layout)
 * ----------------------------------------------------------------------------
 */

#page {
	background-color: #ccc;
}

.wrapper {
	max-width: 960px;
	width: 100%;
	margin: 0 auto;
	position: relative;
}

.drop-shadow-top {
	 width: 100%;
	 height: 10px;
	 margin-bottom: -10px;
	-webkit-box-shadow: 0 -7px 4px rgba(0, 0, 0, 0.5);
	-moz-box-shadow: 0 -7px 4px rgba(0, 0, 0, 0.5);
	box-shadow: 0 -7px 4px rgba(0, 0, 0, 0.5);
	 position: relative;
	 z-index: 1;
 }

.drop-shadow-bottom {
	width: 100%;
	height: 10px;
	margin-top: -10px;
	-webkit-box-shadow: 0 7px 4px rgba(0, 0, 0, 0.5);
	-moz-box-shadow: 0 7px 4px rgba(0, 0, 0, 0.5);
	box-shadow: 0 7px 4px rgba(0, 0, 0, 0.5);
	position: relative;
	z-index: 1;
}


/**
 * 3.0 - Header
 * ----------------------------------------------------------------------------
 */


/**
 * 3.1 - Site Header
 * ----------------------------------------------------------------------------
 */

#header-top {
	background-color: #fff;
}

#logo {
	padding: 30px 50px;
	position: relative;
}

#logo-text {
	position: absolute;
	bottom: 30px;
	left: 170px;
	line-height: 1;
	font-style: italic;
	font-family: "EB Garamond", serif;
	color: #333;
}


/**
 * 3.2 - Navigation
 * ----------------------------------------------------------------------------
 */

#navbar {
	background-color: #6A7822;
	-webkit-box-shadow: 0 7px 4px rgba(0, 0, 0, 0.5);
	-moz-box-shadow: 0 7px 4px rgba(0, 0, 0, 0.5);
	box-shadow: 0 7px 4px rgba(0, 0, 0, 0.5);
	height: 47px;
	position: relative;
	z-index: 2;
	font-family: "EB Garamond", serif;
}

#navbar ul {
	margin: 0;
	padding: 0;
}

#navbar ul li {
	list-style: none;
	display: inline-block;
	line-height: 47px;
	position: relative;
}

#navbar ul li a {
	color: #ccc;
	padding: 0 20px;
	display: inline-block;
}

#navbar ul li a:hover {
	text-decoration: none;
}

#navbar ul li:hover > a {
	color: #fff;
}

#navbar li.current-menu-ancestor > a,
#navbar li.current-menu-item > a {
	color: #fff;
}

#navbar ul .sub-menu {
	display: none;
	position: absolute;
	background-color: #333;
	overflow: hidden;
	white-space: nowrap;
}

#navbar ul .sub-menu:before {
	content: '';
	display: block;
	width: 100%;
	height: 10px;
	margin-top: -10px;
	-webkit-box-shadow: 0 7px 4px rgba(0, 0, 0, 0.5);
	-moz-box-shadow: 0 7px 4px rgba(0, 0, 0, 0.5);
	box-shadow: 0 7px 4px rgba(0, 0, 0, 0.5);
	position: relative;
	z-index: 1;
}

#navbar ul li:hover .sub-menu {
	display: block;
}

.breadcrumbs {
	margin-top: -25px;
	font-size: 14px;
	color: #999;
	margin-right: 100px;
}

.breadcrumbs a,
.breadcrumbs a:visited {
	color: #999;
}

.breadcrumbs .breadcrumbs-separator {
	font-size: 12px;
	margin: 0 7px 2px;
	vertical-align: bottom;
	display: inline-block;
}

.breadcrumbs .breadcrumbs-current {
	font-weight: bold;
}

/**
 * 4.3 - Sidebar
 * ----------------------------------------------------------------------------
 */

#sidebar-menu {
	position: absolute;
	width: 180px;
	left: -180px;
	padding-right: 40px;
	padding-top: 77px;
	text-align: right;
}

#sidebar-menu a {
	color: #000;
}

#sidebar-menu a.current-page {
	color: #6A7822;
	font-weight: bold;
}

#sidebar-menu .sidebar-menu-ancestor {
	margin-bottom: 10px;
}

#sidebar-menu .sidebar-section-header {
	font-style: italic;
	border-bottom: 1px solid #222;
	padding-bottom: 5px;
	margin-bottom: 5px;
}

/**
 * 4.0 - Content
 * ----------------------------------------------------------------------------
 */



/**
 * 4.1 - Entry
 * ----------------------------------------------------------------------------
 */

.entry-thumbnail {
	margin-left: -9999px;
	margin-right: -9999px;
}

.entry-thumbnail img {
	margin: auto;
	display: block;
	height: 420px;
	width: auto;
}

.entry-header {
	overflow: hidden;
}

#header-image-overlay {
	height: 420px;
	max-width: 960px;
	width: 100%;
	margin: auto auto -420px;
	display: block;
	position: relative;
}

#header-image-overlay-left,
#header-image-overlay-right {
	position: absolute;
	width: 1000px;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.15);
}

#header-image-overlay-left {
	left: -1000px;
	-webkit-box-shadow: 2px 0 4px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 2px 0 4px rgba(0, 0, 0, 0.2);
	box-shadow: 2px 0 4px rgba(0, 0, 0, 0.2);
}

#header-image-overlay-right {
	right: -1000px;
	-webkit-box-shadow: -2px 0 4px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: -2px 0 4px rgba(0, 0, 0, 0.2);
	box-shadow: -2px 0 4px rgba(0, 0, 0, 0.2);
}

#content .entry-content {
	background-color: #fff;
	padding: 40px;
}

img.alignleft {
    float: left;
    clear: left;
	margin-right: 20px;
	margin-bottom: 20px;
	margin-top: 20px;
}

img.alignright {
    float: right;
    clear: right;
	margin-left: 20px;
	margin-bottom: 20px;
	margin-top: 20px;
}

.entry-content img {
	max-width: 100%;
	height: auto;
}

.wp-caption {
	margin-top: 5px;
	max-width: 100%;
}

.wp-caption.alignright {
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
	margin-right: 0;
}

.wp-caption.alignleft {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}

.wp-caption .wp-caption-text {
	margin-top: 5px;
	margin-bottom: 5px;
	color: #999;
	font-style: italic;
	padding-right: 10px;
	font-size: 14px;
}

/**
 * Sub sections
 */

.sub-section,
.blog-entry {
	overflow: hidden;
	position: relative;
}

.sub-section a:visited {
	color: #f27900;
}

.sub-section-image,
.blog-entry-image {
	position: relative;
	margin-right: 3%;
	margin-bottom: 3%;
	float: left;
	width: 39.772727272%;
}

.sub-section-image img,
.blog-entry-image img {
	width: 100%;
	height: auto;
}

.sub-section-name,
.blog-entry-title {
	display: inline-block;
	width: 57.227272727%;
	margin-bottom: 15px;
}

.sub-section-name a,
.blog-entry-title a {
	display: block;
	border-bottom: 1px dashed #f27900;
	padding-bottom: 2px;
}

.sub-section-name a:hover,
.blog-entry-title a:hover {
	border-bottom: 1px solid #f27900;
	text-decoration: none;
}

.sub-section-name h3,
.blog-entry-title h3 {
	display: inline;
}

.sub-section-description,
.blog-entry-excerpt {
	color: #222;
}

.blog-entry-excerpt {
	padding-right: 75px;
}

.blog-entry-date {
	font-size: 12px;
	color: #f27900;
	float: right;
	margin-top: -15px;
}

.entry-date {
	float: right;
	margin-top: -25px;
	color: #999;
	font-size: 14px;
}

.previous-next-post-links {
	overflow: hidden;
	margin-top: 35px;
	padding-top: 10px;
	border-top: 1px dashed #999;
	clear: both;
}

.next-post-link {
	float: right;
}

#fancybox-outer {
	background-color: #000 !important;
	padding: 1px;
}

#fancybox-content {
	border-width: 0 !important;
	margin: 10px;
}

#fancybox-title {
	padding-right: 1px;
}

#fancybox-title-over {
	font-family: "Titillium Web", sans-serif;
	font-size: 14px;
	margin-right: -1px;
}

.read-button {
	position: absolute;
	right: 5px;
	bottom: 25px;
	color: #fff !important;
	background-color: #F27900;
	padding: 3px 10px;
	margin-top: 5px;
	-webkit-box-shadow: 0px 0px 2px 1px rgba(255,229,233,1);
	-moz-box-shadow: 0px 0px 2px 1px rgba(255,229,233,1);
	box-shadow: 0px 0px 2px 1px rgba(255,229,233,1);
}
.read-button:visited:hover {
	background-color: #F27900;
}

.read-button:visited {
	color: #fff;
	background-color: #FFB650;
}

.sub-section .read-button:visited {
	background-color: #F27900;
}

.read-button:before {
	content: '';
	display: inline-block;
}

.read-button:after {
	content: '';
	display: inline-block;
}

/**
 * 4.2 - Portfolio
 * ----------------------------------------------------------------------------
 */

.page-Portfolio #projects {
	border-bottom: none;
}

.page-Portfolio #projects td {
	padding-top: 0;
	padding-bottom: 0;
	border-top: none;
}

.page-Portfolio #projects figure {
	overflow: hidden;
	position: relative;
	border: 3px solid #eee;
	border-radius: 8px;
}

.page-Portfolio #projects figure.wp-caption {
	margin: 0;
}

.page-Portfolio #projects figure img {
	transition: transform 1s, filter 1s ease-in-out;
	filter: grayscale(0) blur(0);
}

.page-Portfolio #projects figure:hover img {
	transform: scale(1.2);
	filter: grayscale(50%) blur(4px);
}

.page-Portfolio #projects figure:hover figcaption {
	background-color: rgba(40, 40, 80, 0.5);
}

.page-Portfolio #projects figure figcaption {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	text-align: center;
	transition: background-color .75s ease-in-out;
	background-color: rgba(40, 40, 80, 0);
	display: flex;
	align-items: center;
}

.page-Portfolio #projects figure figcaption.wp-caption-text {
	margin: 0;
	padding: 0;
}

.page-Portfolio #projects figure figcaption a {
	transition: opacity .5s ease-in-out, letter-spacing .5s ease-in-out;
	opacity: 0;
	display: block;
	text-decoration: none;
	font-size: 30px;
	color: #FFB650;
	letter-spacing: 1.5px;
	width: 100%;
	padding: 100% 6px;
}

.page-Portfolio #projects figure:hover figcaption a {
	opacity: 1;
	letter-spacing: 1px;
}

/**
 * 5.0 - Footer
 * ----------------------------------------------------------------------------
 */

#colophon {
	background-color: #6A7822;
	-webkit-box-shadow: inset 0 7px 4px rgba(0, 0, 0, 0.5);
	-moz-box-shadow: inset 0 7px 4px rgba(0, 0, 0, 0.5);
	box-shadow: inset 0 7px 4px rgba(0, 0, 0, 0.5);
}

#colophon .wrapper {
	padding: 40px;
}

#colophon ul li {
	list-style: none;
}

#colophon a {
	color: #ccc;
}

/**
 * 6.0 - Media Queries
 * ----------------------------------------------------------------------------
 */

@media(max-width: 650px) {
	.entry-content img.size-thumbnail {
		display: block;
		margin-left: auto;
		margin-right: auto;
		float: none;
	}

	#logo img {
		width: 250px;
		height: auto;
	}

	#logo-text {
		left: 130px;
		top: 86px;
		bottom: auto;
	}

	#content .entry-content {
		padding: 40px 20px;
	}

	#page .entry-content img {
		max-width: 100% !important;
		min-width: initial !important;
	}

	#page .entry-content .gallery-item {
		min-width: initial !important;
		max-width: 100% !important;
	}
}