@charset "UTF-8";
/*
Theme Name: Headstarter
Description: Headstarter is a base theme meant to be extended.
Tags: -
Theme URI: -
Author: Juan Hoffmann (Lightstone Media Anstalt)
Author URI: http://www.lightstone.li
Version: 0.5.2
License: Proprietary
License URI: -
Text Domain: headstarter
*/
/*
Contents

- 1.0.0 Reset
	- 1.1.0 Common font sizes, margins, paddings 
- 2.0.0 Boilerplate Layout
	- 2.1.0 Elements
	- 2.2.0 Forms 
- 3.0.0 Utilities
- x.0.0 Accessibility
- 4.0 Tools

- 5.0 Basic Layout

*/
/*
Common media query breakpoints:
20em:		320px
30em:		480px
48em:		768px
61.25em:	980px
*/

/* 1.0.0 Reset */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p,
	blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd,
	q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
	fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr,
	th, td, article, aside, canvas, details, figcaption, figure, footer,
	header, hgroup, menu, nav, section, summary, time, mark, audio, video,
	acronym {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

html {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	line-height: 1.25;
}

*, *:before, *:after {
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}

article, aside, details, figcaption, figure, footer, header, hgroup,
	main, menu, nav, section, summary {
	display: block;
}

img, video, canvas, audio {
	display: inline-block;
	vertical-align: middle;
}

img {
	-ms-interpolation-mode: bicubic;
}

a {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

a:focus {
	outline: thin dotted;
}

a:hover {
	outline: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

input, textarea, select, button {
	vertical-align: middle; /* TODO: Test this, alternative baseline */
	font-size: inherit; /* TODO: Test this, alternative 100% */
	font-family: inherit;
}

button, input {
	line-height: normal;
}

button, input[type="button"], input[type="submit"], input[type="reset"],
	[role="button"] {
	cursor: pointer;
}

button[disabled], input[disabled] {
	cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

textarea {
	vertical-align: top;
	overflow: auto;
}

b, strong, th {
	font-weight: bold;
}

i, em, address, cite, dfn, var {
	font-style: italic;
}

code, kbd, pre, samp {
	font-family: monospace;
}

del, s {
	text-decoration: line-through;
}

small, sub, sub {
	font-size: smaller;
}

sup {
	vertical-align: text-top;
}

sub {
	vertical-align: text-bottom;
}

hr {
	/* TODO: Test this */
	display: block;
	height: 1px;
	margin: 0.75em 0;
	padding: 0;
	border: 0;
	border-style: solid;
	border-top-width: 1px;
}

[hidden] {
	display: none;
}

abbr[title] {
	border-bottom: 1px dotted;
}

/* 1.1.0 Common font-sizes, margin, paddings */
h1 {
	margin: 0.67em 0;
	font-size: 2em;
}

h2 {
	margin: 0.83em 0;
	font-size: 1.5em;
}

h3 {
	margin: 1em 0;
	font-size: 1.17em;
}

h4 {
	margin: 1.33em 0;
	font-size: 1em;
}

h5 {
	margin: 1.67em 0;
	font-size: 0.83em;
}

h6 {
	margin: 2.33em 0;
	font-size: 0.67em;
}

p, pre, ul, ol, dl, menu {
	margin: 1em 0;
}

ul, ol, menu {
	/* TODO: Test this */
	padding: 0 0 0 2.5em;
}

dd {
	/* TODO: Test this */
	margin: 0 0 0 2.5em;
}

/**
 * 2.0.0 Boilerplate Layout
 */

/**
 * 2.1.0 Elements 
 */
html {
	height: 100%;
}

body {
	overflow-y: scroll;
	-ms-overflow-style: scrollbar;
	/* 	width: auto; */
	line-height: 1.4;
	color: #252525;
	font-size: 1em;
	font-family: sans-serif;
}

h1, h2, h3, h4, h5 h6 {
	/*clear: both; *//* Removed due to problems with aligned images next to titles */
	margin-top: 1.2em;
	margin-bottom: 0.7em;
	font-weight: bold;
}

p, form {
	margin: 0.8em 0;
}

p:first-child, pre:first-child, h1:first-child, h2:first-child, h3:first-child,
	h4:first-child, h5:first-child, h6:first-child, ul:first-child, ol:first-child,
	form:first-child {
	margin-top: 0;
}

p:last-child, pre:last-child, h1:last-child, h2:last-child, h3:last-child,
	h4:last-child, h5:last-child, h6:last-child, ul:last-child, ol:last-child,
	form:last-child {
	margin-bottom: 0;
}

ul, ol, menu, dd {
	/* TODO: Test this */
	padding: 0 0 0 1.5em;
}

li>ul, li>ol {
	/* 	margin-bottom: 0; */
	
}

/* TODO table, th, td */
td {
	padding: 0;
	vertical-align: top;
}

img {
	max-width: 100%;
	height: auto;
}

/* TDOD blockquote, blockquote p, blockquote cite */
del {
	opacity: 0.75;
}

mark {
	/* TODO */
	background: #2266EE;
	color: #F2F2F2;
}

/* 2.2.0 Forms */
fieldset {
	/* TODO */
	/* border, margin, padding */
	
}

legend {
	/* TODO */
	
}

/* TODO input, button, select, textarea */
input:focus, button:focus, textarea:focus {
	-webkit-box-shadow: 0 0 0.1em;
	-moz-box-shadow: 0 0 0.1em;
	box-shadow: 0 0 0.1em;
	outline: 0;
}

/* TODO placeholders */

/**
 * custom-header
 */
.theme-support-custom-header .site-header {
	position: relative;
	overflow: hidden;
}

.header-sizing-height .site-header {
	height: 200px;
}

.header-sizing-ratio .site-header {
	padding-bottom: 25%;
}

.banner-image {
	width: 100%;
	height: auto;
}

.header-sizing-content .banner-image + div {
	position: relative;
}

.header-sizing-image .banner-image + div,
.header-sizing-height .site-header > div,
.header-sizing-ratio .site-header > div,
.header-sizing-viewport .site-header > div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

body.header-sizing-viewport,
.header-sizing-viewport .page-container,
.header-sizing-viewport .page-container .page-top,
.header-sizing-viewport .page-container .page-top > div,
.header-sizing-viewport .site-header {
	height: 100%;
}

@media only screen and (max-width: 1024px) and (min-height: 2000px) {
	.header-sizing-viewport .page-container .page-top {
		height: 75vw;
	}
	.header-sizing-viewport #site-background {
		height: 75vw;
	}
}

/**
 * Navigation
 */
#main-navigation-indicator {
	display: none;
}
#menu-main-container {
	position: relative;
}

#menu-main-container .menu-toggle {
	display: none;
}
#menu-main-container .menu-toggle .svg-menu-icon {
	width: 1.2em;
	height: 1.2em;
	vertical-align: top;
}

#menu-main-container .menu {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.responsive-menu #menu-main-container .menu-toggle {
	display: block;
	z-index: 1200;
	text-align: right;
	cursor: pointer;
}

.responsive-menu #menu-main-container .menu-toggle span {
	position: relative;
	display: inline-block;
	padding-right: 0.5em;
}

.responsive-menu #menu-main-container .menu-toggle span:before {
	content: "\2261\0020";
	position: relative;
	top: 0.125em;
	line-height: 1;
	font-size: 1.3em;
}

.responsive-menu #menu-main-container .menu {
	/* IE and Edge Browser: Dont give the z-index to elements inside the toggled menu, but to the toggle menu itself */
	position: relative;
	z-index: 1100;
}

.responsive-menu #menu-main-container .menu.menu-toggled {
	height: 0;
	overflow: hidden;
}

.responsive-menu #menu-main-container .menu>.menu-item {
	
}

.responsive-menu #menu-main-container .menu>.menu-item>a {
	
}

@media only screen and (min-width: 48em) {
	.responsive-menu #menu-main-container .menu-toggle {
		display: none;
	}
	.responsive-menu #menu-main-container .menu.menu-toggled {
		height: auto;
	}
	.responsive-menu #menu-main-container .menu>.menu-item {
		display: inline-block;
	}
}

/** 
 * 3.0.0 Utilities 
 */
.clearfix:before, .clearfix:after {
	content: " ";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clear {
	clear: both;
}

.hidden {
	display: none;
}

.uppercase {
	text-transform: uppercase;
}

.w3c-box-model {
	box-sizing: content-box;
}

.auto-hyphens {
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

body .cover-parent {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	min-width: 100%;
	max-width: none;
	height: auto;
	min-height: 100%;
	max-height: none;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}

/**
 * WordPress core CSS elements
 */
.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	clip: rect(1px, 1px, 1px, 1px);
	overflow: hidden;
	color: transparent;
}

.aligncenter {
	text-align: center;
}

.alignright {
	text-align: right;
}

.alignleft {
	text-align: left;
}

img.alignright, a img.alignright {
	float: right;
	margin: 0 0 0.8em 0.8em;
}

img.alignleft, a img.alignleft {
	float: left;
	margin: 0 0.8em 0.8em 0;
}

img.aligncenter, a img.aligncenter {
	display: block;
	margin: 1em auto;
}

.wp-caption {
	
}

.wp-caption-text {
	
}

.gallery-caption {
	
}

.sticky {
	
}

.bypostauthor {
	
}

/**
 * Wordpress admin bar
 */
/*
html { 
	margin-top: 32px !important; 
}
* html body { 
	margin-top: 32px !important; 
	}
@media screen and ( max-width: 782px ) {
	html { 
		margin-top: 46px !important;
	}
	* html body { 
		margin-top: 46px !important;
	}
}
*/

/**
 * Modules
 */

/**
 * Media
 */

/**
 * Galleries 
 */
.gallery-size-thumbnail {
	margin: auto;
}

.gallery-size-thumbnail .gallery-item {
	display: inline-block;
	vertical-align: top;
	margin-top: 0.4em;
	margin-bottom: 0.4em;
	text-align: center;
}

.gallery-size-thumbnail.gallery-columns-2 .gallery-item {
	width: 50%;
}

.gallery-size-thumbnail.gallery-columns-3 .gallery-item {
	width: 33%;
}

.gallery-size-thumbnail.gallery-columns-4 .gallery-item {
	width: 25%;
}

.gallery-size-thumbnail.gallery-columns-5 .gallery-item {
	width: 20%;
}

.gallery-size-thumbnail .gallery-icon {
	position: relative;
	box-sizing: border-box;
	width: 162px;
	max-width: 95%;
	margin: auto;
	padding: 5px;
	border: 1px solid silver;
	overflow: hidden;
}

.gallery-size-thumbnail .gallery-icon img {
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

.gallery-size-thumbnail .gallery-icon a {
	text-decoration: none;
}

.gallery-size-thumbnail .gallery-icon a:after {
	content: "+";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1.3em;
	height: 1.3em;
	margin-top: -0.65em;
	margin-left: -0.65em;
	background-color: rgba(0, 0, 0, 0);
	color: rgba(0, 0, 0, 0);
	border-radius: 50%;
	font-family: sans-serif;
	font-size: 3em;
	line-height: 1.3em;
	vertical-align: middle;
	-webkit-transition: all 0.4s linear;
	-moz-transition: all 0.4s linear;
	-o-transition: all 0.4s linear;
	transition: all 0.4s linear;
}

.gallery-size-thumbnail .gallery-icon:hover a:after {
	background-color: rgba(0, 0, 0, 0.6);
	color: rgba(255, 255, 255, 0.4);
}

.gallery-size-thumbnail .gallery-caption {
	margin-left: 0;
}

/**
 * Columns
 */
@media only screen and (min-width: 48em) , print {
	.headstarter-columns {
		display: table;
		width: 100%;
	}
	.headstarter-columns>* {
		display: table-cell;
		vertical-align: top;
	}
	.headstarter-columns>.column {
		width: 1%;
	}
	.headstarter-columns>.column20 {
		width: 20%;
	}
	.headstarter-columns>.column25 {
		width: 25%;
	}
	.headstarter-columns>.column33 {
		width: 33.333%;
	}
	.headstarter-columns>.column40 {
		width: 40%;
	}
	.headstarter-columns>.column50 {
		width: 50%;
	}
	.headstarter-columns>.column60 {
		width: 60%;
	}
	.headstarter-columns>.column66 {
		width: 66.666%;
	}
	.headstarter-columns>.column75 {
		width: 75%;
	}
	.headstarter-columns>.column80 {
		width: 80%;
	}
}
.hs-columns > * {
	margin-top: 0.8em;
	margin-bottom: 1.2em;
}
.hs-columns:first-child > *:first-child {
	margin-top: 0;
}
.hs-columns:last-child > *:last-child {
	margin-bottom: 0;
}
@media only screen and (min-width: 48em), print {
	.hs-columns {
		-js-display: flex;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-direction: row;
		flex-direction: row;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-ms-flex-align: stretch;
		align-items: stretch;
	}
	.hs-columns:first-child {
		margin-top: 0;
	}
	.hs-columns:last-child {
		margin-bottom: 0;
	}
	.hs-columns > * {
		vertical-align: top;
		-ms-flex: 1 1 auto;
		flex: 1 1 auto;
		margin: 0 1%;
		width: auto;
	}
	.hs-columns > :first-child {
		margin-left: 0;
	}
	.hs-columns > :last-child {
		margin-right: 0;
	}
	.hs-columns.set-width > * {
		width: 10%;
	}
	.hs-columns.set-width > :first-child:nth-last-child(1) {
		width: 100%;
	}
	.hs-columns.set-width > :first-child:nth-last-child(2),
	.hs-columns.set-width > :first-child:nth-last-child(2) ~ * {
		width: 50%;
	}
	.hs-columns.set-width > :first-child:nth-last-child(3),
	.hs-columns.set-width > :first-child:nth-last-child(3) ~ * {
		width: 33.333333%;
	}
	.hs-columns.set-width > :first-child:nth-last-child(4),
	.hs-columns.set-width > :first-child:nth-last-child(4) ~ * {
		width: 25%;
	}
	.hs-columns.set-width > :first-child:nth-last-child(5),
	.hs-columns.set-width > :first-child:nth-last-child(5) ~ * {
		width: 20%;
	}
	.hs-columns.set-width > :first-child:nth-last-child(6),
	.hs-columns.set-width > :first-child:nth-last-child(6) ~ * {
		width: 15%;
	}
	.hs-columns > .width-10 { width: 10%; }
	.hs-columns > .width-20 { width: 20%; }
	.hs-columns > .width-25 { width: 25%; }
	.hs-columns > .width-30 { width: 30%; }
	.hs-columns > .width-33 { width: 33.333333%; }
	.hs-columns > .width-40 { width: 40%; }
	.hs-columns > .width-50 { width: 50%; }
	.hs-columns > .width-60 { width: 60%; }
	.hs-columns > .width-66 { width: 66.666666%; }
	.hs-columns > .width-70 { width: 70%; }
	.hs-columns > .width-75 { width: 75%; }
	.hs-columns > .width-80 { width: 80%; }
	.hs-columns > .width-90 { width: 90%; }
}
/**
 * Responsive Embeds
 */
.headstarter-responsive-embed {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
}

.headstarter-responsive-embed iframe, .headstarter-responsive-embed object,
	.headstarter-responsive-embed embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100%;
}

/**
 * Sticky Footer
 */
body.sticky-footer {
	height: 100%;
}

.sticky-footer .page-container {
	-js-display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 100%;
}

.sticky-footer .page-container > * {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
}

.sticky-footer .page-container > *.expand {
	-webkit-box-flex: 1;
	-ms-flex: 1 0 auto;
	flex: 1 0 auto;
}

/**
 * 3rd party plugins
 */

/**
 * Contact Form 7
 */
.wpcf7 .screen-reader-response {
	position: absolute !important;
	width: 1px;
	height: 1px;
	clip: rect(1px, 1px, 1px, 1px);
	overflow: hidden;
	color: transparent;
}

.wpcf7-response-output {
	margin: 1em 0;
	padding: 0.3em 0.8em;
	border: 2px solid transparent;
}

.wpcf7-mail-sent-ok {
	border-color: #3d9915;
}

.wpcf7-mail-sent-ng {
	border-color: #f70000;
}

.wpcf7-spam-blocked {
	border-color: #ffa41a;
}

.wpcf7-validation-errors {
	border-color: #f7d800;
}

.wpcf7-form-control-wrap {
	position: relative;
}

.wpcf7-not-valid-tip {
	display: block;
	color: #f70000;
}

.wpcf7-list-item {
	margin-left: 0.65em;
}

.wpcf7-display-none {
	display: none;
}

.wpcf7 img.ajax-loader {
	vertical-align: middle;
	margin-left: 4px;
	margin-left: 0.25rem;
}

.wpcf7 div.ajax-error {
	display: none;
}

.wpcf7 .placeheld {
	color: #909090;
}

/**
 * Credits 
 */
#lsma_poweredby {
	padding: 0.6em 0.6em;
	font-size: 0.85em;
	text-align: right;
}

#lsma_poweredby a {
	text-decoration: none;
	color: inherit;
}
#svg-lsma-poweredby-logo {
	display: inline-block;
	vertical-align: top;
	width: 1.2em;
	height: 1.2em;
	margin-top: 0.05em;
}

/**
 * Media queries
 */
@-ms-viewport {
    /*noinspection CssInvalidPropertyValue*/
	width: device-width;
}

@viewport {
	zoom: 1;
    /*noinspection CssInvalidPropertyValue*/
	width: device-width;
}

/** 
 * Print 
 */
@media print {
	body {
		overflow: visible;
	}
	#menu-main-container {
		display: none;
	}
}