@charset "UTF-8";
/* roboto-300 - latin */
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/roboto-v32-latin-300.woff2") format("woff2"), url("../fonts/roboto-v32-latin-300.ttf") format("truetype");
}

/* roboto-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/roboto-v32-latin-regular.woff2") format("woff2"), url("../fonts/roboto-v32-latin-regular.ttf") format("truetype");
}

/* roboto-500 - latin */
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/roboto-v32-latin-500.woff2") format("woff2"), url("../fonts/roboto-v32-latin-500.ttf") format("truetype");
}

/* roboto-700 - latin */
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/roboto-v32-latin-700.woff2") format("woff2"), url("../fonts/roboto-v32-latin-700.ttf") format("truetype");
}

/**
 * ===============================================
 * CUSTOM MIXINS - ROTATE
 */
/**
 * ============================
 * CUSTOM MIXINS - ROUND BORDER
 */
/* round-border customized */
/* round-border all */
/* round-border top */
/* round-border bottom */
/* round-border left */
/* round-border right */
/* basic mixin to include in others */
/**
 * ===============================================
 * CUSTOM MIXINS - BOX SHADOW
 * 1. Parameter: Verschiebung X-Achse (horizontal)
 * 2. Parameter: Verschiebung Y-Achse (vertical)
 * 3. Parameter: Breite des Verlaufs
 * 4. Parameter: Farbe des Schattens
 * 5. Parameter: Schatten nach Innen
 */
/*
$col-bg: 				$white;
$col-bg-light:	$grey-light;
$col-bg-dark:	  $grey-blue;
$col-bg-nav:    $grey-blue;
$col-border: 		$grey-blue;
$col-ruler:			$col-border;
$col-important:	$unused;
$col-warning:		$unused;
$col-error:			$unused;
$col-bg-button:	$green;
$col-light:     $grey;
//$body-background: $white;


// base typography
// --------------
$lh-default: 1.5em;
$lh-h1:      1.14em;
$lh-h2:      1.3em;
$lh-h3:      1.3em;


//$global-font-size: 100%;
$global-lineheight: $lh-default;
//$global-weight-normal: normal;
//$global-weight-bold: bold;

//$header-height: 100px;
//$header-lineheight: 1.4;
//$header-margin-bottom: 0.5rem;
*/
/* Fonts / Webfonts zuordnen 

$webfont-light:   rubrik-light,arial,helvetica,sans-serif;
$webfont-regular: rubrik-regular,arial,helvetica,sans-serif;
$webfont-medium: 	rubrik-medium,arial,helvetica,sans-serif;
$webfont-bold: 		rubrik-bold,arial,helvetica,sans-serif;
$webfont-h1: 			introheadh-base,rubrik-medium,arial,helvetica,sans-serif;
$webfont-h2: 			introheadr-base,rubrik-regular,arial,helvetica,sans-serif;
$webfont-h3: 			rubrik-regular,arial,helvetica,sans-serif;
$webfont-kicker: 	rubrik-regular,arial,helvetica,sans-serif;
$webfont-serif:		times,serif;
*/
/**
* @section global typography settings
*
* vertical rhythm settings (based on em-unit)
* -------------------------------------------
* basefont-size: 14px (87.5%)
* line-height  : 21px (factor: 1.5)
*/
/* (en) reset font size for all elements to standard (16 Pixel) */
/* (de) Alle SchriftgrÃ¶ÃŸen auf StandardgrÃ¶ÃŸe (16 Pixel) zurÃ¼cksetzen */
/**
* (en) reset monospaced elements to font size 16px in all browsers
* (de) SchriftgrÃ¶ÃŸe von monospaced Elemente in allen Browsern auf 16 Pixel setzen
*
* @see: http://webkit.org/blog/67/strange-medium/
*/
textarea,
pre,
code,
kbd,
samp,
var,
tt {
  font-family: arial;
}

/* (en) base layout gets standard font size 16px */
/* (de) Basis-Layout erhÃ¤lt StandardschriftgrÃ¶ÃŸe von 16 Pixeln */
body {
  font-family: Roboto,arial,helvetica,sans-serif;
  font-size: 1.0625rem;
  line-height: 1.6rem;
  color: #54574f;
  font-weight: 300;
  /* (en) Prevent auto-scaling of text in mobile webkit browsers */
  /* (de) Automatische SchriftvergrÃ¶ÃŸerung in mobilen Webkit-Browsern vermeiden */
  -webkit-text-size-adjust: 100%;
}

@media (max-width: 979px) {
  body {
    font-size: 1rem;
  }
}

input, select, textarea {
  font-size: 1.0625rem;
  color: #54574f;
}

/*--- Headings | Überschriften ------------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  color: #54574f;
  font-family: Roboto,arial,helvetica,sans-serif;
  font-weight: 400;
}

h1, .h1 {
  display: block;
  margin: 0 0 0.5em 0;
  color: #7a7f74;
  font-size: 1.625rem;
  line-height: 1.3em;
  text-transform: uppercase;
  letter-spacing: 1px;
}

h2, .h2 {
  display: block;
  margin: 0 0 1.3em 0;
  color: #faac06;
  font-weight: 400;
  font-size: 135%;
  font-size: 1.4375rem;
  line-height: 1.3em;
  letter-spacing: 1px;
}

h2 strong, h2 b, .h2 strong, .h2 b {
  font-weight: 400;
}

h3, .h3 {
  display: block;
  margin: 0 0 0.6em 0;
  color: #00929e;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4em;
}

h3.lg, .h3.lg {
  font-weight: 500;
  font-size: 1.25rem;
}

h4, .h4 {
  font-size: 114.29%;
  /* 16px */
  line-height: 1.125em;
  margin: 1.125em 0 0 0;
}

h5, .h5 {
  font-size: 114.29%;
  /* 16px */
  line-height: 1.2857em;
  margin: 1.2857em 0 0 0;
}

h6, .h6 {
  font-size: 114.29%;
  /* 16px */
  line-height: 1.5em;
  margin: 1.5em 0 0 0;
}

/* --- Lists | Listen  -------------------------------------------------------------------------------- */
ul,
ol,
dl {
  font-size: 1em;
  line-height: 1.5em;
  margin: 0.7em 0;
}

ul {
  list-style-type: disc;
}

ol {
  list-style-type: decimal;
}

ul ul {
  list-style-type: circle;
  margin-top: 0;
}

ol ol {
  list-style-type: lower-latin;
  margin-top: 0;
}

ol ul {
  list-style-type: circle;
  margin-top: 0;
}

li {
  font-size: 1em;
  line-height: 1.5em;
  margin-left: 1.5em;
}

ul li {
  padding-left: 0;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 0 1.5em 0.8em;
}

/* --- general text formatting | Allgemeine Textauszeichnung ------------------------------------------ */
p {
  font-size: 1em;
  margin: 0;
}

blockquote, cite, q {
  font-style: italic;
}

blockquote {
  margin: 1.5em 0 0 0;
  text-align: center;
}

address {
  font-style: normal;
}

strong, b, .bold {
  font-weight: 500;
}

em, i {
  font-style: italic;
}

small {
  font-size: 85.71%;
}

pre,
code,
kbd,
tt,
samp,
var {
  font-size: 100%;
}

pre {
  line-height: 1.5em;
  margin: 1.5em 0 0 0;
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

pre, code {
  color: #800;
}

kbd, samp, var, tt {
  color: #666;
  font-weight: bold;
}

var, dfn {
  font-style: italic;
}

acronym, abbr {
  border-bottom: 1px #aaa dotted;
  font-variant: small-caps;
  letter-spacing: .07em;
  cursor: help;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

mark {
  background: #ff0;
  color: #000;
}

hr {
  color: #fff;
  background: transparent;
  margin: 0 0 0.75em 0;
  padding: 0 0 0.75em 0;
  border: 0;
  border-bottom: 1px #eee solid;
}

/*--- Links ----------------------------------------------------------------------------------------- */
a {
  color: #54574f;
  text-decoration: underline;
  text-underline-offset: 3px;
}

a:active {
  outline: none;
}

/* (en) maximum constrast for tab focus - change with great care */
/* (en) Maximaler Kontrast fÃ¼r Tab Focus - Ã„ndern Sie diese Regel mit Bedacht */
a:hover {
  color: #00929e;
  text-decoration: underline;
}

a img {
  border: 0 none;
  outline: 0 none;
}

/* --- images ------------------ */
picture,
figure {
  margin: 0;
}

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

.flexible {
  max-width: 100%;
  height: auto;
}

.img-fleft {
  float: left;
  margin: 0.35em 1.5em 0.35em 0;
}

.img-fright {
  float: right;
  margin: 0.35em 0 1.5em 0.35em;
}

.bordered,
.img-border img {
  border: 1px solid #009999;
}

.dyn {
  display: block;
  max-width: 60%;
}

.block {
  display: block;
}

/**
* ----------------------------------------------------------------------- #
*
* Generic Content Classes
*
* (en) standard classes for positioning and highlighting
* (de) Standardklassen zur Positionierung und Hervorhebung
*
* @section content-generic-classes
*/
.large {
  font-size: 400%;
  font-weight: 300;
  line-height: 1.4em;
}

.semi-large {
  font-size: 206.66%;
  line-height: 1.4em;
}

.mtop10 {
  margin-top: 10px;
}

.mtop40 {
  margin-top: 40px;
}

.ptop10 {
  padding-top: 10px;
}

.pbot1em {
  padding-bottom: 1em;
}

.pbot20 {
  padding-bottom: 20px !important;
}

.fleft {
  float: left;
}

.fright {
  float: right;
}

.float-left {
  float: left;
  display: inline;
  margin: 0.5em 1em 0.5em 0;
}

.float-right {
  float: right;
  display: inline;
  margin: 0.5em 0 0.5em 2em;
}

.center {
  display: block;
  text-align: center;
}

.right {
  text-align: right;
}

/**
* ------------------------------------------------------------------------------------------------- #
*
* Tables | Tabellen
*
* (en) Generic classes for table-width and design definition
* (de) Generische Klassen fÃ¼r die Tabellenbreite und Gestaltungsvorschriften fÃ¼r Tabellen
*
* @section content-tables
*/
table {
  width: 95%;
  margin: 0.7em 0;
  border-collapse: collapse;
}

table.bordertable {
  border: 1px #4c4c46 solid;
}

table caption {
  padding-bottom: 0.3em;
  text-align: left;
  font-weight: 500;
}

tr.colored {
  background-color: rgba(0, 146, 158, 0.1);
}

th, td {
  padding: 5px 15px 5px 15px;
  vertical-align: top;
  text-align: left;
}

tr th:first-child,
tr td:first-child {
  padding-left: 10px;
}

th *:first-child,
td *:first-child {
  margin-top: 0;
}

th.nowrap,
td.nowrap {
  white-space: nowrap;
}

thead th {
  border-bottom: 1px #4c4c46 solid;
}

.bordertable thead th {
  background: #e0e0e0;
  border-right: 1px #4c4c46 solid;
  border-bottom: 1px #4c4c46 solid;
}

.bordertable tbody th[scope="row"] {
  background: #f0f0f0;
}

.bordertable tbody th {
  border-right: 1px solid #4c4c46;
}

.bordertable tbody td {
  border-right: 1px solid #4c4c46;
}

table, tr, td {
  border-color: #8b9084;
}

/**
* ------------------------------------------------------------------------------------------------- #
*
* Custom Styles
*
*/
.neg a, .neg a:hover, .neg a.current {
  color: #fff;
}

#topnav a {
  font-size: 1.1875rem;
  line-height: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}

#topnav a.current {
  color: #00929e;
}

#mainnav {
  list-style: none;
}

#mainnav a {
  font-weight: 400;
  letter-spacing: 1px;
}

#mainnav a.level-top {
  font-size: 1.125rem;
  line-height: 1.5rem;
}

#mainnav span.current {
  color: #00929e;
}

#mainnav .subitems {
  list-style: none;
}

#mainnav .subitems a {
  padding-left: 10px;
  font-size: 1rem;
  line-height: 1.45rem;
}

#mainnav .subitems a:hover, #mainnav .subitems a.current {
  color: #00929e;
}

a.icon-pdf {
  display: block;
  margin-top: 20px;
  padding: 31px 0  0 48px;
  background: url("../images/icons.png") no-repeat 0 -30px;
}

button.trigger-weiterlesen {
  background-color: transparent;
  color: #54574f;
  font-size: 90%;
  text-decoration: underline;
  cursor: pointer;
}

button.trigger-weiterlesen:hover {
  color: #00929e;
  text-decoration: underline;
}

/* Silcc spezifische Styles */
table.tabelle {
  margin: 5px 0;
}

table.tabelle tr:nth-child(odd) {
  background-color: #e4eabf;
}

table.tabelle td {
  padding: 5px 15px 5px 15px;
  vertical-align: top;
  text-align: left;
}

/**
 * "Yet Another Multicolumn Layout" - YAML CSS Framework
 *
 * default screen tbstylesheet - PAGE-layout type layout
 *
 * @copyright       Copyright 2005-2012, Dirk Jesse
 * @license         CC-BY 2.0 (http://creativecommons.org/licenses/by/2.0/),
 *                  YAML-CDL (http://www.yaml.de/license.html)
 * @link            http://www.yaml.de
 * @package         yaml
 * @version         v4.0.1
 * @revision        $Revision: 733 $
 * @lastmodified    $Date: 2012-03-04 19:15:48 +0100 (So, 04 Mrz 2012) $
 */
/**
 * Basic Element Styling
 */
.editmode-info, .print {
  display: none;
}

.ym-wrapper {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
  border: 0px solid orange;
}

/* Grid-Layout */
.ym-g240 {
  width: 24.5%;
}

.ym-g420 {
  width: 42.85%;
}

.ym-g320 {
  width: 32.65%;
}

.ym-g740 {
  width: 75.5%;
}

.ym-gbox {
  padding: 0 15px;
}

.ym-gbox-left {
  padding-right: 15px;
}

.ym-gbox-right {
  padding-left: 15px;
}

.ym-g420 .ym-gbox,
.ym-g740 .ym-gbox {
  padding-top: 30px;
  padding-bottom: 20px;
}

/**
* Responsive : Breite >= 980px
*/
@media screen and (min-width: 980px) {
  /* Grid-Layout */
  .ym-g240 {
    max-width: 240px;
  }
  .ym-g420 {
    width: calc(100% - 600px);
  }
  .ym-g320 {
    max-width: 360px;
  }
  .ym-g740 {
    max-width: calc(100% - 240px);
  }
}

#logo {
  display: block;
  width: 193px;
  height: 32px;
  margin: 20px 15px;
  background: url("../images/logo.png") no-repeat;
  background-size: 100% 100%;
}

#main {
  position: relative;
  margin: 15px 0;
}

footer .ym-inside {
  margin: 0 32.65% 0 24.5%;
}

/* skip links styling */
.ym-skiplinks a.ym-skip:focus,
.ym-skiplinks a.ym-skip:active {
  color: #fff;
  background: #333;
  border-bottom: 1px #000 solid;
  padding: 10px 0;
  text-align: center;
  text-decoration: none;
}

/**
  * generische Klassen
  */
.hidden {
  display: none;
}

.rcol {
  margin-left: 10px;
  padding-left: 50%;
}

.backlink {
  margin-top: 10px;
}

/*	 
.bgb { background: #009999; }
.bgd { background: #333333; }
.ruler { border-top: 1px solid #999;/ }
.display-block { display: block !important; }
*/
/**
  * Navigationen
  */
nav ul {
  margin: 0;
  list-style: none;
}

nav li {
  margin: 0;
  padding: 0;
}

nav a {
  text-decoration: none;
}

#topnav {
  position: absolute;
  bottom: 0;
  right: 0;
  text-align: right;
}

#topnav li {
  display: block;
  float: left;
  border-left: 1px solid #666b5d;
}

#topnav li:first-child {
  border: none;
}

#topnav a {
  display: block;
  padding: 0 15px;
  line-height: 30px;
}

#mainnav {
  position: relative;
  margin: 25px 0 20px 0;
}

#mainnav .opener {
  display: none;
  width: 170px;
}

#mainnav .opener span {
  font-size: 110%;
}

#mainnav .opener:hover {
  text-decoration: none;
}

#mainnav li {
  position: relative;
}

#mainnav a {
  display: block;
  padding: 5px 0px 5px 0px;
}

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

#mainnav .subitems {
  display: block;
  padding: 10px 0 20px 0;
}

#mainnav .subitems a {
  padding: 0px 0px 10px 15px;
}

/*
  * Teaser
  */
#teaser {
  background: #fff url("../images/bg_teaser.png") repeat-y top center;
}

#teaser .ym-wrapper {
  background-color: #fff;
}

#teaser .ym-inside {
  max-height: 420px;
  margin: 0 15px;
  overflow: hidden;
  background-color: rgba(250, 172, 6, 0.8);
}

#teaser .ym-inside picture {
  display: block;
  margin: 0 auto;
}

#teaser .ym-inside img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page_start #teaser .ym-inside {
  max-height: 420px;
}

/*
  * Footer 
  */
footer {
  padding: 30px 0;
  background-color: #efeeed;
}

footer h3 {
  margin-bottom: 1.0em;
  line-height: 30px;
}

footer h3.current {
  background: transparent url("../images/underline.png") no-repeat 0px 28px;
}

footer .h3-spacer {
  height: 30px;
  margin-bottom: 1.0em;
}

/* 
  * Aufklapp Box (weiterlesen)
  */
button.trigger-weiterlesen {
  border: none;
  padding: 10px 0;
}

/* 
  * Kontakt Box

.contact-box { text-align: center; }
.contact-box .buttonlink { margin 20px auto; padding: 12px 20px 10px 20px; color: #fff; background-color: #009999; font-size: 146.66%; text-transform: uppercase; text-decoration: none; }
.contact-box .buttonlink:hover { background-color: #666; }
  */
/**
  * Accordion 

#accordion h3 { display: block; border-top: 1px solid #fff; padding: 7px 10px; margin: 0; text-decoration: none; font-weight: normal; color: #fff; background-color: #949DAE; cursor: pointer; }
#accordion h3.selected { background-color: #091f3c; }
#accordion div { padding: 5px 10px; line-height: 1.4em; background-color: #eee; }
#accordion div a { display: inline; padding: 0; color: #df0079; background: transparent; font-weight: normal; }
#accordion div a:hover { text-decoration: underline; }
#accordion h3, #accordion div { -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; }
  */
/**
  * Formatierung der FAQs

.faq-question { margin-top: 10px; padding-left: 12px; font-weight: bold; line-height: 1.5em; cursor: pointer; cursor: hand; background: url('../images/icon_pfeil333.gif') no-repeat; background-position: 0px 6px; }
.faq-question:hover { text-decoration: underline; }
.faq-open { background: url('../images/icon_pfeil333_open.gif') no-repeat; background-position: 0px 6px; text-decoration: underline; }
.faq-answer { padding: 10px 0 25px 12px; line-height: 1.5em; }
  */
/**
  * Formatierung des Kontaktformulars
  */
.formular {
  width: 400px;
}

.formular form {
  margin: 20px 0;
}

.formular fieldset {
  position: relative;
  margin-bottom: 10px;
  padding: 20px 0px 8px 0px;
}

.formular div.nolabel {
  padding: 20px;
  font-weight: bold;
}

.formular p.legend {
  margin-bottom: 20px;
  font-size: 125%;
}

.formular label {
  width: 130px;
  display: block;
  float: left;
  text-align: left;
  padding-right: 10px;
  line-height: 2em;
}

.formular input, .formular textarea {
  border: 1px solid #999;
  padding: 3px;
}

.formular input.margin-top {
  margin-top: 3px;
  border: 0;
}

.formular input.submit {
  margin-left: 140px;
  padding: 3px 5px 2px 5px;
  color: #222;
  background: #fff;
  border: 1px solid #999;
  cursor: pointer;
  cursor: hand;
}

.formular input.textfield,
.formular textarea.textfield {
  width: 210px;
}

.formular textarea {
  height: 100px;
}

.formular form fieldset div.floatbox {
  margin-bottom: 5px;
  overflow: hidden;
}

.formular form fieldset div.pflichtfelder {
  margin-bottom: 0;
  font-size: 87.5%;
  color: #333;
}

.formular label.error {
  width: 280px;
  margin-left: 140px;
  margin-bottom: 0.5em;
  padding-right: 0;
  text-align: left;
  color: red;
  font-size: 87.5%;
}

.formular textarea.error,
.formular input.error {
  border-color: red;
}

/* Spambot-Feld ausserhalb des viewports platzieren */
.formular #mail {
  position: absolute;
  top: -10em;
  left: -99em;
}

/**
  * Formatierung der Gallerie
  */
.gallery {
  margin: 10px -5px 0 -5px;
  padding: 0;
  list-style: none outside none;
  overflow: hidden;
  border: 0px solid red;
}

.gallery li {
  float: left;
  margin: 0;
}

.gallery li a {
  display: block;
  margin: 5px;
  border: 0px solid #3C3C3C;
}

.gallery li a img {
  max-width: 100%;
  height: auto;
}

/*  Responsive Galerie: 
 * Breite der Bilder 150px + 2 x 7px Abst�nde links/rechts = 164px gesamt pro Bild
 * 2 x 30px Abstand links/rechts der Galerie

@media only screen and (max-width: 995px) {
  .gallery li { width: 25%; }
}
@media only screen and (max-width: 555px) {
  .gallery li { width: 33.3333%; }
}
@media only screen and (max-width: 380px) {
  .gallery li { width: 50%; }
}
 */
/**
 * Responsive : Breite < 980px
 */
@media screen and (max-width: 979px) {
  #main img, #main figure {
    max-width: 100%;
    height: auto !important;
    width: auto;
  }
}

/**
 * Responsive : Breite < 768px
 */
@media screen and (max-width: 880px) {
  /* Grid Anpassungen */
  .ym-g240 {
    width: 32%;
  }
  .ym-g420 {
    width: 68%;
  }
  .ym-g740 {
    width: 68%;
  }
  .ym-g320 {
    width: 68%;
  }
  .ym-g320.ym-gr {
    clear: both;
    margin-left: 32%;
  }
  /*
	.ym-g240 { width: 24.5%; }
	.ym-g420 { width: 42.85%; }
	.ym-g320 { width: 32.65%; }
	.ym-g740 { width: 75.5%; }
*/
  #logo {
    width: 150px;
    height: 77px;
    margin: 20px 15px;
    background-image: url("../images/logo.png");
    background-size: 100% 100%;
  }
  #topnav {
    top: 54px;
  }
  #topnav a,
  #mainnav a.toplevel {
    font-size: 100%;
  }
  footer .ym-inside {
    margin: 0 0 0 32%;
  }
  #teaser img {
    max-width: 100%;
    height: auto !important;
  }
}

/**
 * Responsive : Breite < 640px
 */
@media screen and (max-width: 580px) {
  /* Linearisation for Grid- and Column-Module, based on CSS class .linearize-level-1 */
  .linearize-level-1,
  .linearize-level-1 > [class*="ym-g"] {
    display: block;
    float: none;
    padding: 0;
    margin: 0;
    width: 100% !important;
  }
  .ym-equalize > [class*="ym-g"] > [class*="ym-gbox"] {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  #logo {
    margin: 15px;
  }
  #topnav {
    top: 0;
  }
  #topnav li {
    float: none;
    margin-bottom: 0.35em;
    border: none;
  }
  #topnav a {
    padding: 0 10px;
    line-height: 20px;
  }
  #mainnav .opener {
    display: block;
    height: 20px;
    padding-left: 38px;
    background: url("../images/icons.png") no-repeat 0 3px;
    font-size: 120%;
    font-weight: 300;
    cursor: pointer;
  }
  #mainnav .menu-open {
    display: block;
  }
  #mainnav .nav {
    display: none;
    padding-top: 10px;
  }
  #mainnav .nav.visible {
    display: block;
  }
  #mainnav a, #mainnav .subitems a {
    padding-left: 38px;
  }
  footer .ym-inside {
    margin-left: 0px;
  }
  /* Abstände Bilder und Hintergründe auf 0px setzen */
  #teaser .ym-inside {
    margin: 0;
  }
  .ym-g320 .ym-gbox {
    padding: 0;
  }
  .news-teaser-headline {
    padding: 20px 15px 0px 15px;
  }
  .news-teaser .inside {
    padding: 20px 15px;
  }
  /**
   * Formatierung des Kontaktformulars
	.formular { width: auto; }
	.formular label { width: auto; float: none; }
	.formular input.submit { margin-left: auto; }
	.formular input.textfield,
	.formular textarea.textfield { width: 90%; }
	.formular label.error { width: auto; margin-left: auto; }
   */
}

/**
 * Responsive : Breite <= 380px
 */
@media screen and (max-width: 380px) {
  .text .dyn {
    max-width: 100%;
  }
  .text .img-fleft {
    float: none;
    margin: 0 0 0.75em 0;
  }
}

/**
 * Responsive : Breite < 400px
 */
@media screen and (max-width: 400px) {
  .linearize-level-2,
  .linearize-level-2 > [class*="ym-g"] {
    display: block;
    float: none;
    padding: 0;
    margin: 0;
    width: 100% !important;
  }
}

/**
 * Responsive : Breite < 400px

@media screen and ( max-width: 399px ) {

}
 */
/**
 * Akkordeon
 */
.acc {
  margin-top: 4rem;
}

.acc .acc-item {
  display: block;
  position: relative;
  margin: 0;
}

.acc .acc-item + .acc-item {
  margin-top: 0.6rem;
}

.acc .acc-item:first-child > .acc-title {
  margin-top: 0;
}

.acc .acc-title {
  margin: 1.5em 0 0.5em 1px;
}

.acc .acc-wrapper {
  display: block;
  position: relative;
  margin: 5px 0 10px;
}

.acc .acc-trigger {
  position: relative;
  display: block;
  border: none;
  width: 100%;
  padding: 1em 1.2em;
  background-color: #EFEEED;
  transition: 0.2s background-color;
  text-align: left;
  cursor: pointer;
}

.acc .acc-trigger .inside {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  /* line
       &::before {
         content: "";
         display: block;
         height: 3px;
         min-width: 20px;
         margin-right: 28px;
         background-color: $fc-text;
         border-radius: 100vw;
         flex: 1;
         order: 2;
         top: 0.8em;
         position: relative;
         transition: 0.2s background-color;
      }
*/
  /* 
      // arrow
      &::after {
        content: "";
        display: block;
        height: 25px;
        width: 25px;
        background-image: url("../images/arrow_right.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        transition: 0.3s all;
        order: 3;
        top: 0.2em;
        position: relative;
      }
      */
}

.acc .acc-trigger .txt {
  color: #54574f;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4rem;
}

@media (miin-width: 98px) {
  .acc .acc-trigger .txt {
    font-size: 1.125rem;
  }
}

.acc .acc-trigger .arrow-r {
  display: block;
  height: 20px;
  width: 20px;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
  transition: 0.3s all;
}

.acc .acc-trigger .arrow-r svg {
  height: 100%;
  width: 100%;
  object-fit: contain;
}

.acc .acc-trigger .arrow-r path {
  fill: #faac06;
  fill-rule: nonzero;
  transition: 0.2s fill;
}

.acc .acc-trigger:hover, .acc .acc-trigger:focus-visible, .acc .acc-trigger.open {
  background-color: #fbb41f;
}

.acc .acc-trigger:hover .arrow-r path, .acc .acc-trigger:focus-visible .arrow-r path, .acc .acc-trigger.open .arrow-r path {
  fill: #00929e;
}

.acc .acc-trigger:hover .arrow-r, .acc .acc-trigger:focus-visible .arrow-r {
  /* Firefox 3.6 Firefox 4 */
  -webkit-transform: rotate(90deg);
  /* Chrome, Safari, Opera */
  /* Opera */
  -ms-transform: rotate(90deg);
  /* IE 9 */
  transform: rotate(90deg);
}

.acc .acc-trigger.open .arrow-r {
  /* Firefox 3.6 Firefox 4 */
  -webkit-transform: rotate(270deg);
  /* Chrome, Safari, Opera */
  /* Opera */
  -ms-transform: rotate(270deg);
  /* IE 9 */
  transform: rotate(270deg);
}

.acc .acc-content:not(.backend) {
  display: none;
}

.acc .acc-content {
  margin-bottom: 1rem;
}

.acc .acc-content .inside {
  padding: 1em 0.2em;
}

.acc .acc-content picture {
  display: inline-block;
  margin-bottom: 20px;
}

@media print {
  .acc .acc-content {
    display: block;
  }
  .acc .acc-trigger {
    display: block;
  }
}

/*
 * News
 */
/* Sidebox Titel */
.sidebox h2.sidebox-h2 {
  margin: 0;
  padding: 20px 25px;
  background-color: #faac06;
  color: #fff;
  text-transform: uppercase;
}

/* Sidebox - News-Teaser */
.news-teaser {
  margin-top: 15px;
  background-color: #faac06;
}

.news-teaser:hover, .news-teaser:focus, .news-teaser:focus-visible {
  background-color: rgba(250, 172, 6, 0.85);
}

.news-teaser:hover h2 > .h1, .news-teaser:focus h2 > .h1, .news-teaser:focus-visible h2 > .h1 {
  color: #6d7268;
}

.news-teaser:hover h2 > .h3, .news-teaser:focus h2 > .h3, .news-teaser:focus-visible h2 > .h3 {
  color: #008994;
}

.news-teaser:hover .weiter, .news-teaser:focus .weiter, .news-teaser:focus-visible .weiter {
  color: #00929e;
}

.news-teaser .inside {
  padding: 20px 25px;
}

.news-teaser .teaser-link {
  display: block;
  color: #54574f;
  text-decoration: none;
}

.news-teaser .news-date {
  color: #fff;
  font-weight: 400;
  padding-bottom: 0.8rem;
}

.news-teaser h2 {
  margin-bottom: 0.8em;
}

.news-teaser h2 .h1 {
  font-size: 1.375rem;
}

.news-teaser h2 .h3 {
  font-size: 1.125rem;
}

.news-teaser .weiter {
  display: block;
  padding-top: 0.5em;
  text-align: right;
  text-decoration: underline;
  text-underline-offset: 4px;
}

/*
 * News-Teaser - Übersichtsseite
 */
.newslist .news {
  position: relative;
  padding-top: 3.0rem;
}

.newslist .news:first-child {
  padding-top: 2rem;
}

.newslist .news p.right {
  padding-top: 10px;
}

.newslist .news-date + h3 {
  margin-top: 0.5rem;
}

.newslist .nav-news {
  margin-top: 20px;
}

.newslist .more {
  margin-top: 1.5rem;
  color: #54574f;
  font-weight: 400;
  text-align: right;
}

/*
 * News-Artikel
 */
.news-article .news-date + h1 {
  margin-top: 0.5rem;
}

.news-article .news-teasertext {
  padding-bottom: 1.0em;
  font-weight: 400;
}

.news-article .backlink {
  margin-top: 1.5rem;
  color: #54574f;
  font-weight: 400;
  text-align: right;
}

/**
 * "Yet Another Multicolumn Layout" - YAML CSS Framework
 *
 * default print stylesheet
 *
 * @copyright       Copyright 2005-2012, Dirk Jesse
 * @license         CC-BY 2.0 (http://creativecommons.org/licenses/by/2.0/),
 *                  YAML-CDL (http://www.yaml.de/license.html)
 * @link            http://www.yaml.de
 * @package         yaml
 * @version         v4.0.1
 * @revision        $Revision: 724 $
 * @lastmodified    $Date: 2012-03-03 11:45:41 +0100 (Sa, 03 Mrz 2012) $
 */
@media print {
  * {
    margin: 0;
    padding: 0;
  }
  body {
    font-size: 12pt;
    padding: 0 5px;
  }
  #topnav, #mainnav, .sidebox-h2, .news-teaser {
    display: none;
  }
  div.print, p.print {
    display: block;
  }
  span.print, img.print {
    display: inline;
  }
  /* Positionieren der Inhaltselemente */
  .wrapper {
    position: relative;
    width: 940px;
    margin: 0 auto;
    border: 0px solid red;
  }
  #teaser {
    margin: 20px 0;
  }
  .box {
    position: relative;
    margin-bottom: 1px;
    padding: 10px 20px;
    background-image: url("../images/bg_trans.png");
  }
  .box.pleft240 {
    padding-left: 240px;
  }
  .box .posleft {
    position: absolute;
    left: 20px;
    top: 20px;
    width: 180px;
    padding-bottom: 20px;
  }
  .ym-g25 .ym-gbox-right .box {
    padding-left: 240px;
  }
  .ym-g25 {
    margin-top: 30px;
  }
  .page_start .box {
    padding-left: 240px;
  }
  #mainnav .last {
    margin: 20px 0px 0px auto;
    text-align: right;
  }
  /*------------------------------------------------------------------------------------------------------*/
  /* (en) Avoid page breaks right after headings */
  /* (de) Vermeidung von Seitenumbr�chen direkt nach einer �berschrift */
  h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid;
  }
  /*------------------------------------------------------------------------------------------------------*/
  /* (en) optional output of acronyms and abbreviations*/
  /* (de) optionale Ausgabe von Auszeichnung von Abk�rzungen */
  /*
	abbr[title]:after,
	acronym[title]:after {
		content:'(' attr(title) ')';
	}
	*/
  /*------------------------------------------------------------------------------------------------------*/
  /* (en) optional URL output of hyperlinks in print layout */
  /* (de) optionale Ausgabe der URLs von Hyperlinks */
  /*
	a[href]:after {
		content:" <URL:"attr(href)">";
		color:#444;
		background:inherit;
		font-style:italic;
	}
	*/
  .formular {
    width: 400px;
  }
  .formular form {
    margin: 20px 0;
  }
  .formular fieldset {
    position: relative;
    margin-bottom: 10px;
    padding: 20px 0px 8px 0px;
  }
  .formular div.nolabel {
    padding: 20px;
    font-weight: bold;
  }
  .formular p.legend {
    margin-bottom: 20px;
    font-size: 125%;
  }
  .formular label {
    width: 150px;
    display: block;
    float: left;
    text-align: left;
    padding-right: 10px;
    line-height: 2em;
  }
  .formular input, .formular textarea {
    border: 1px solid #999;
    padding: 3px;
  }
  .formular input.margin-top {
    margin-top: 3px;
    border: 0;
  }
  .formular input.submit {
    display: none;
  }
  .formular input.textfield,
  .formular textarea.textfield {
    width: 210px;
  }
  .formular textarea {
    height: 80px;
  }
  .formular form fieldset div.floatbox {
    margin-bottom: 5px;
    overflow: hidden;
  }
  .formular form fieldset div.pflichtfelder {
    display: none;
  }
  .formular #mail {
    display: none;
  }
}

/*# sourceMappingURL=styles.css.map */