<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";

/* ----------------------------------------------------------------------------- * 
 *          Responsive Webdesign - Praxisbeispiele - 3. Auflage 2017             *
 *           In atmosphere.css sind Farben und Schriften definiert,              *
 *                  die für alle Beispiele verwendet werden.                     *
 *       In der layout.css stehen ergänzende Styles für alle Layoutstufen.       *
 *          Autoren: Andrea Ertel und Kai Laborenz (Rheinwerk Verlag)            *
 * ----------------------------------------------------------------------------- */


/* ----------------------------------------------------------------------------- *
 *                           Styles der Basisversion                             *
 * ----------------------------------------------------------------------------- */


/* ----------------------------------------------------------------------------- *
 *       Änderung des default-Box-Modells aller Elemente auf "border-box"        *
 *          https://www.paulirish.com/2012/box-sizing-border-box-ftw/            *			 
 * ----------------------------------------------------------------------------- */

html {
	box-sizing: border-box;
}

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


/* ----------------------------------------------------------------------------- */

.header {
	text-align: center; /* -- dient nur den kleinsten Bildschirmen -- */
}

.aside {
	border-top: 1px dashed #ddd;
	padding-top: 1em;
	margin-top: 1em;
}

.footer {
	padding: 0.6em 2rem;
	text-align: center;
}

.section {
	margin: 1em 0;
}

.section-4 {
    border-top: 1px dashed #ddd;
}    

/*** Textauszeichnungen ***/

h1 {
	margin: 0 0 0.625em;
}

h2 {
	margin: 0.5em 0;
}

h3 {
	margin: 0.6em 0;
}

p {
	margin: 0.5em 0;
}

ul,
ol {
	padding: 0;
	margin: 0 0 0.625em 2rem;
}

.logo a:link,
.logo a:visited {
	padding: 0.6em 2rem;
}


/* ----------------------------------------------------------------------------- *
 *                             Mini-Navigation                                   *
 * ----------------------------------------------------------------------------- */

.main-nav {
	margin: 0;
}

.main-nav a:link {
	text-decoration: none;
}

.main-nav &gt; li &gt; a,
.main-nav &gt; li &gt; b {
	display: block;
	font-size: 1.8rem;
}

@media screen and (max-width: 39.938em) {
	.main-nav {
		display: block;
		padding: 0 2rem;	/* top, bottom erhoeht den Abstand des ganzen Navi-Feldes nach oben und unten auf winzigen Bildschirmen, nicht der einzelnen Link-Buttons - keine Wirkung bei grossen Bildschirmen */
		overflow: hidden;
	}
	.main-nav &gt; li {
		float: left;
		display: block;
	}
	.main-nav &gt; li &gt; a,
	.main-nav &gt; li &gt; b {
		padding: 0.9em 1.7rem 1.0em 1.2rem ; /* top, right, bottom, left erhoeht den Innenabstand der einzelnen Link-Buttons auf winzigen Bildschirmen - keine Wirkung bei grossen Bildschirmen */
	}
	.main-nav__item-act b {
		font-weight: 600;
	}
}


/* ----------------------------------------------------------------------------- *
 *                           Styles der Tabletversion                            *
 *                            640px / 16px/em = 40em                             *
 * ----------------------------------------------------------------------------- */

@media screen and (min-width: 40em) {
	.header {
		padding: 1.5em 2.4rem;
		text-align: left;
	}
	.main-wrapper {
		padding: 3rem 0;
		display: block;
		overflow: auto;
	}
	.main-content {
		display: block;
		float: left;
		width: 70%;
		border-right: 1px dashed #ddd;
		padding: 0 2rem 0 3rem;
	}
	.aside {
		display: block;
		margin: 0 0 0 70%;
		width: 30%;
		padding: 0 3rem 0 2rem;
		border-top: none;
	}
	.footer {
		padding: 0.8em 2rem;
		text-align: left;
	}
	/*** Textauszeichnungen ***/
	.logo {
		font-size: 2.8rem;
		text-align: left;
		display: inline-block;
		padding: 0;
	}
	.logo a:link,
	.logo a:visited {
		padding: 0.1em 0.6rem;
	}
	.logo a:hover,
	.logo a:focus,
	.logo a:active {
		background-color: #fff;
		color: #da0545;
	}
	h1 {
		font-size: 2.8rem;
		/* 28px */
		margin: 0;
	}
	p.teasertext {
		margin: 0.8em 0;
	}
	/*** Zierelemente: Pfeil verwendet in Header und in Nav ***/
	.arrow-down {
		position: relative;
	}
	.arrow-down::after {
		content: '';
		position: absolute;
		bottom: -2rem;
		border-width: 2rem 2rem 0;
		border-style: solid;
		display: none;
		width: 0;
	}
	.nav.arrow-down::after {
		left: 70%;
		border-color: #060 transparent;
		margin-left: -2rem;
		display: block;
	}
}


/* ----------------------------------------------------------------------------- *
 *                       Mini-Navigation: ul.main-nav                            *
 * ----------------------------------------------------------------------------- */

@media screen and (min-width: 40em) and (max-width: 63.938em) {
	.nav.arrow-down::after {
		left: 70%;
		border-color: #060 transparent;
		margin-left: -2rem;
		display: block;
	}
	.main-nav {
		display: block;
		padding: 0 2rem;
		overflow: hidden;
	}
	.main-nav &gt; li {
		float: left;
		display: block;
	}
	.main-nav &gt; li &gt; a,
	.main-nav &gt; li &gt; b {
		padding: 0.9em 1.4rem 0.9em 1.1rem ; /* top, right, bottom, left erhoeht den Innenabstand der einzelnen Link-Buttons auf mittleren Bildschirmen - keine Wirkung bei grossen Bildschirmen */
	}
}


/* ----------------------------------------------------------------------------- *
 *                          Styles für kleine Desktops                           *
 *                           1024px / 16px/em = 64em                             *
 * ----------------------------------------------------------------------------- */

@media screen and (min-width: 64em) {
	/* .main-wrapper macht Platz für .nav */
	.main-wrapper {
		width: 80%;
		padding: 0;
		margin-left: 20%;
	}
	.main-content {
		width: 65%;
		padding: 2em 2rem;
	}
	.aside {
		width: 35%;
		padding: 3rem;
		margin: 0 0 0 65%;
	}
	/* Zierelemente: Pfeil in Header einblenden, Pfeil in Nav ausblenden */
	.header.arrow-down::after {
		display: block;
		left: 20%;
		border-color: #211497 transparent;
		margin-left: -2rem;
	}
	.nav.arrow-down::after {
		display: none;
	}
	/* Navigation wird links neben dem Inhalt angeordnet */
	.main-nav {
		width: 20%;
		float: left;
		box-shadow: none;
		margin: 1.6em 0 0;
		padding: 0;
	}
	.main-nav &gt; li {
		width: 100%;
		float: none;
	}
	.main-nav &gt; li &gt; a,
	.main-nav &gt; li &gt; b {
		padding: 0.9em 3rem; /* erhoeht den Innenabstand der einzelnen Link-Buttons auf grossen Bildschirmen */
		display: block;
	}
	.main-nav a:link,
	.main-nav a:visited {
		color: #fff;
	}
	.main-nav a:hover,
	.main-nav a:focus,
	.main-nav a:active {
		color: #fff;
		background-color: #96cfbf;
	}
}


/* ----------------------------------------------------------------------------- *
 *                          Styles für große Desktops                            *
 *                           1280px / 16px/em = 80em                             *
 * ----------------------------------------------------------------------------- */

@media screen and (min-width: 80em) {
	.page-wrapper {
		margin: 0 auto;
		max-width: 80em;
	}
}



/*                           Anpassungsfähige Bilder                             *
 * ----------------------------------------------------------------------------- */

/* Bilder flexibel machen */
img {
	max-width: 90%;
	height: auto;
}


/* figure.slides-Container um die Bilder */
.slides {
	margin: 2rem 0;
	line-height: 0;
}


/* Bildunterschrift */
figcaption {
	line-height: 1.4;
	padding: 0.5em 0 0;
}


/*                         Intrinsic Ratio Trick                                *
* ----------------------------------------------------------------------------- */

.iframe-wrapper {
   position: relative;
   padding-bottom: 71.429%;
   height: 0;
}

iframe {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}
</pre></body></html>