html {
	color: #000;
	font-size: 100%;
	line-height: 1.5;
}

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

body {
	margin: 0;
	padding: 0;
	background: #edfaff;
	color: #000;
	font-family: 'Rubik', sans-serif;
}

#home .home-intro {
	background: transparent url("../photos/eiger.jpg") no-repeat;
	background-size: cover;
}

::-moz-selection {
    background: #feecba;
	color: #302D29;
    text-shadow: none;
}

::selection {
	background: #feecba;
	color: #302D29;
	text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

img {
	max-width: 100%;
}

figure {
	margin: 0;
}
/* ==========================================================================
   Typography
   ========================================================================== */
h1, h2, h3, h4, h5, h6, caption, .subtitle {
	font-family: 'Trirong', serif;
	font-weight: 400;
	font-style: italic;
	margin: 0;
	color: #3e4445;
}
h1, .main-subtitle {
	font-size: 3.157rem;
	line-height: 1.43;
	letter-spacing: 0.01em;
	font-style: italic;
}
.main-subtitle {
	text-align: center;
}
.slogan {
	font-size: 3.157rem;
	line-height: 1.43;
}
#home h1, .home-intro p {
	/*font-family: Baloo, sans-serif;*/
	color: #ffd784;
	text-shadow: 4px 4px 4px #000;
	text-align: center;
}
#home .home-heading {
	margin: 0;
	padding: 0;
	font-size: 7.594rem;
	line-height: 1.38;
}
figcaption {
	font-family: 'Trirong', serif;
	font-weight: 500;
	font-style: italic;
	color: #000;
}
h2 {
	font-size: 2.369rem;
	/*font-weight: 700;*/
	line-height: 1.27;
}
h3, .legal h4, .intro-smaller, .subtitle {
	font-size: 1.777rem;
	line-height: 1.7;
}
footer .subtitle, footer h3 {
	color: #f7ff58;
}
h4, caption {
	font-size: 1.333rem;
	font-weight: 700;
	line-height: 1.7;
}
p, li {
	margin-top: 0;
	margin-bottom: 1.5rem;
}
.content p, .content th, .content td, .content li, .legal p, footer {
	font-size: 1.333rem;
	line-height: 1.7;
}
 .content th {
	color: #3e4445;
}
 .home-intro p {
	font-size: 2.369rem;
	font-family: 'Trirong', serif;
	font-weight: 600;
	font-style: italic;
	/*line-height: 1.7;*/
}
.intro-smaller p {
	font-size: 1.5rem;
}
#home .intro p {
	color: #ffffff;
	margin-bottom: 0;
}
figcaption {
	font-size: 1.2rem;
	font-style: italic;
	line-height: 1.25;
	padding: 0.75rem 0.5rem;
}
address {
	font-style: normal;
}
strong {
	font-weight: 600;
	color: #3e4445;
}
i {
	font-style: italic;
	font-weight: 500;
}
caption {
	text-align: left;
}
th:nth-child(2), td:nth-child(2) {
	text-align: right;
}
/* ==========================================================================
   Navigation
   ========================================================================== */
.mainnav ul {
	border-bottom: 2px solid #a3b18a;
	padding: 12px 0;
}
.nav {
	list-style: none;
	margin: 0 20px 40px 20px;
	padding: 0;
	background: transparent;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}
.nav li {
	margin: 0.444rem 0.618rem;
}
.nav a {
	font-size: 1rem;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
	outline: none;
	padding: 0.75rem 0.5rem;
	color: #232b0c;
	font-weight: 500;
	border: 0;
}
.nav a:hover, .nav a.current {
	color: #588157;
	border: 0;
}
.nav a.current {
	cursor: default;
}
.langselection {
	margin: 1.5rem 0 0 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.langselection a {
	font-size: 2.25rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	text-shadow: 4px 4px 4px #000;
	outline: none;
	display: block;
	padding: 0.25rem 0.5rem;
	border: 0;
	color: #EDF5DD;
	font-weight: 700;
}
.langselection li {
	margin: 0 0.618rem;
}
.langselection a:hover, .langselection a.current {
	/*color: #B6CC89;*/
	border: 0;
}
.langselection a.current {
	cursor: default;
}
footer a {
	/*font-weight: 500;*/
	color: #e8d264;
}
 /*======================================
   TEXTLINKS
   ====================================== */
a {
	color: #59651f;
	border-bottom: 1px dotted;
	text-decoration: none;
	outline: none;
}
footer a {
	color: #c6c9bd;
}
/*#home a {
	color: #ffde77;
	border-bottom: 1px dotted;
	text-decoration: none;
	outline: none;
}*/
a:hover {
	text-decoration: none;
	border-bottom: 1px solid;
}
.img-link {
	text-decoration: none;
	border-bottom: none;
}
.img-link:hover {
	text-decoration: none;
	border-bottom: none;
}
/* ==========================================================================
   Main Structure
   ========================================================================== */
/* ---- no grid support ---- */
.content, .legal, footer {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	justify-content: space-between;
}
.home-intro {
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
}
.content > * {
	padding: 0 0.75rem;
	margin-bottom: 3rem;
}
.content, .legal {
	/*background-color: #002516;*/
	padding: 1.25rem;
	margin: 0 1.5rem 2.25rem 1.5rem;
	/*border-radius: 10px;*/
}
footer {
	padding: 20px;
}
.content-100 {
	width: 100%;
}
.contentleft-50, .contentright-50 {
	width: 50%;
}
.contentmid-66 {
	width: 66.6666%;
}
.contentleft-66 {
	width: 66.6666%;
}
.contentleft-5tracks, .contentright-5tracks {
	width: 40%;
}
.contentleft-33, .contentmid-33, .contentright-33, .legal li {
	width: 33.333%;
}
table {
	margin: 1rem 0;
}
@media screen and (max-width: 60rem) {
	.contentleft-50, .contentright-50, .contentleft-5tracks, .contentright-5tracks, .contentleft-33, .contentmid-33, .contentright-33, .legal li {
		width: 100%;
	}
}
/*------------ Grid support ---------------*/
@supports (display: grid) {
	/* zurücksetzen, da wir grid-gap haben */
	.content > * {
		width: auto;
		margin: 0;
		padding: 0;
	}
	footer > * {
		width: auto;
		margin: 0;
		padding: 0;
	}
	.legal li {
		width: auto;
	}
}
/*.home-intro {
	display: grid;
	grid-column-gap: 20px;
	grid-row-gap: 48px;
	grid-template-columns: repeat(12, 1fr);
	margin-bottom: 20px;
}*/
 .header {
    grid-column: 1 / -1;
    /* needed for the floated layout */
    clear: both;
  }
.content {
	/*background-color: #E4EEFB;*/
	color: #000;
	padding: 20px;
	margin: 0 20px 40px 20px;
	display: grid;
	grid-column-gap: 20px;
	grid-row-gap: 48px;
	grid-template-columns: repeat(12, 1fr);
}
.content ul, .legal {
	padding-left: 0;
	list-style: none;
}
.legal {
	/*background-color: #E4EEFB;*/
	margin: 0 1.5rem 2.25rem 1.5rem;
	padding: 1.5rem 2.25rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-column-gap: 20px;
	grid-row-gap: 48px;
}
footer {
	background-color: #2f3a10;
	color: #edfaff;
	display: grid;
	grid-column-gap: 20px;
	grid-row-gap: 48px;
	grid-template-columns: repeat(6, 1fr);
}
#idIframe {
	height: 36rem;
	width: 100%;
	border: 0;
}
/*----- The Basic Grid ----------------------
 custom classes:
 .content-100: full width, 12 Tracks, 1 / -1
 .contentmid-66: middle 2 thrds, 8 Tracks, 3 / 11
 .contentleft-66: left 2 thrds, 8 Tracks, 1 / 9
 .contentright-66: left 2 thrds, 8 Tracks, 5 / 13
 .contentleft-5tracks: 5 Tracks, 2 / 7, 1 Track border left
 .contentright-5tracks: 5 Tracks, 7 / 12, 1 Track border right
 .contentleft-50: 1/2 width, 6 Tracks, 1 / 7
 .contentright-50: 1/2 width, 6 Tracks, 7 / 13
 .contentleft-33: 1/3 width, 4 Tracks, 1 / 5
 .contentmid-33: 1/3 width, 4 Tracks, 5 / 9
 .contentright-33: 1/3 width, 4 Tracks, 9 / 13

 .padded-015: horizontal padding 1.5rem
 ------------------------------------------- */
 .padded-015 {
	padding: 0 1.5rem;
}
.content-100 {
	grid-column: 1 / -1;
}
.contentleft-5tracks {
	grid-column: 2 / 7;
}
.contentright-5tracks{
	grid-column: 7 / 12;
}
.contentmid-50 {
	grid-column: 4 / 10;
}
.contentleft-50 {
	grid-column: 1 / 7;
}
.contentright-50 {
	grid-column: 7 / 13;
}
.contentleft-66 {
	grid-column: 1 / 9;
}
.contentmid-66 {
	grid-column: 3 / 11;
}
.contentright-66 {
	grid-column: 5 / 13;
}
.contentleft-33 {
	grid-column: 1 / 5;
}
.contentmid-33 {
	grid-column: 5 / 9;
}
.contentright-33 {
	grid-column: 9 / 13;
}
footer address {
	grid-column: 1 / 3;
}
footer .ft-mid {
	grid-column: 3 / 5;
}
footer .ft-right {
	grid-column: 5 / 7;
	align-self: end;
}
/* ==========================================================================
   Lageplan
   ========================================================================== */
#location iframe {
	height: 66vh;
	width: 100%;
	border: 0;
	border-radius: 5px;
}
/* ==========================================================================
   Media Queries
   ========================================================================== */
@media all and (max-width: 86rem) {
	.contentleft-5tracks {
		grid-column: 1 / 7;
	}
	.contentright-5tracks{
		grid-column: 7 / 13;
	}
}
@media all and (max-width: 84rem) {
	#home .home-heading {
		font-size: 5.063rem;
	}
	.slogan {
		font-size: 2.369rem;
	}
	.egg {
		grid-column: 2 / 7;
	}
	.boimen {
		grid-column: 7 / 12;
	}
}
@media all and (max-width: 82rem) {
	.legal {
		grid-template-columns: repeat(2, 1fr);
	}
	.intro p {
		font-size: 1.333rem;
	}
	.padded-015 {
		padding: 0 0.75rem;
	}
}
@media screen and (max-width: 64rem) {
	html {
		font-size: 90%;
	}
	nav a {
		font-size: 110%;
	}
	p, li {
		margin-bottom: 1rem;
	}
	.content {
		margin-right: 0;
		margin-left: 0;
	}
	.content p, .content li, .legal p, footer {
		line-height: 1.5;
	}
	.contentleft-50,
	.contentright-50,
	.contentleft-5tracks,
	.contentright-5tracks,
	.contentleft-33,
	.contentmid-33,
	.contentright-33,
	.contentmid-66
	{
		grid-column: 2 / 12;
	}
	#location iframe {
		height: 75vh;
	}
	footer address {
		grid-column: 1 / 4;
	}
	footer .ft-mid {
		grid-column: 4 / 7;
	}
	footer .ft-right {
		grid-column: 1 / -1;
		text-align: center;
	}
}
@media screen and (max-width: 52rem) {
	#home .home-heading {
		font-size: 4.209rem;
	}
	h1 {
		font-size: 2.369rem;
	}
	.egg, .boimen {
		grid-column: 3 / 11;
	}
	.legal {
		grid-template-columns: repeat(1, 1fr);
		margin: 0 0 2.25rem 0;
	}
}
@media screen and (max-width: 40rem) {
	#home .home-heading {
		font-size: 3.157rem;
	}
	.slogan {
		font-size: 1.777rem;
	}
	.egg, .boimen {
		grid-column: 2 / 12;
	}
	.contentleft-50,
	.contentright-50,
	.contentleft-5tracks,
	.contentright-5tracks,
	.contentleft-33,
	.contentmid-33,
	.contentright-33,
	.contentmid-66,
	footer address,
	footer .ft-mid
	{
		grid-column: 1 / -1;
	}
}
@media screen and (max-width: 26rem) and (orientation: portrait) {
	#location .main-subtitle {
		font-size: 2.369rem;
		line-height: 1.27;
	}
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after,
    *:first-letter,
    *:first-line {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        -webkit-box-shadow: none !important;
                box-shadow: none !important;
        text-shadow: none !important;
    }
	.home-intro .intro p {
		opacity: 1;
	}
	nav, footer {
		display: none;
	}
	.egg,
	.boimen,
	.contentleft-50,
	.contentright-50,
	.contentleft-5tracks,
	.contentright-5tracks,
	.contentleft-33,
	.contentmid-33,
	.contentright-33,
	.contentmid-66,
	.legal li
	{
		width: 100%;
	}
	.egg,
	.boimen,
	.contentleft-50,
	.contentright-50,
	.contentleft-5tracks,
	.contentright-5tracks,
	.contentleft-33,
	.contentmid-33,
	.contentright-33,
	.contentmid-66
	{
		grid-column: 1 / -1;
	}

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
