@charset "UTF-8";

/* =============================================================================
   INHALTSVERZEICHNIS
   1.  Reset & Basis
   2.  Typografie
   3.  Layout: Wrapper, Header, Navigation
   4.  Layout: Main & Footer
   5.  Komponenten: REboxRed / REboxBlue
   6.  Komponenten: News (List & Single)
   7.  Komponenten: Formulare (Mailform, Powermail, Contact)
   8.  Komponenten: Sonstiges (Carousel, Karten, Suche, PDF)
   9.  Extensions (Drittanbieter)
   10. Responsive (max-width: 800px)
   11. Responsive (max-width: 460px / 350px)

   ÄNDERUNGSMARKIERUNGEN (im Code suchbar):
   [KORR]    = Fehler korrigiert
   [OPT]     = Regel optimiert / konsolidiert
   [HINWEIS] = Potentielles Problem, nicht geändert
============================================================================= */


/* =============================================================================
   1. RESET & BASIS
============================================================================= */

* {
    margin: 0;
    padding: 0;
}

body {
    background: #ccc;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    color: #000;
    line-height: 1.5; /* [KORR] War 1.5em – einheitenlos vererbt korrekt an Kind-Elemente */
    font-size: 87.5%; /* Ergibt 14px bei Browser-Standard 16px */
}

p {
    margin: .5em 0 0;
}

a {
    color: #005ca9;
    text-decoration: none;
    text-shadow: none;
}

a:hover {
    color: #005ca9; /* [HINWEIS] Identisch mit a – bewusst gesetzt, verhindert Framework-Override */
    background: none;
    text-decoration: underline;
}

fieldset {
    border: none;
}

table {
    border: 0;
    color: #000;
}

tbody td {
    border-top: 0;
    text-align: left;
}

tbody tr:hover th,
tbody tr:hover td {
    background: none;
}

table.contenttable td {
    line-height: 1.5; /* [KORR] War 1.5em */
    padding: 0;
    vertical-align: top;
}

.ym-skiplinks {
    display: none;
}

div.clear {
    clear: both;
    float: none;
}

/* [KORR] Border-Shorthand statt vier Einzelangaben */
hr.hr_newstrenner {
    border: none;
    border-top: 3px dotted #eee;
    height: 1px;
    margin: 2em 0;
    padding: 0;
}


/* =============================================================================
   2. TYPOGRAFIE
============================================================================= */

h1, h2, h3, h4, h5, h6 {
    color: #005ca9;
    font-family: "Open Sans Condensed", Arial, Helvetica, sans-serif;
    font-weight: 700;
    margin: 0;
    text-shadow: none;
}

h1 {
    font-size: 170%;
    line-height: 1.2; /* [KORR] War 1.2em */
    margin: .7em 0 0;
}

h2 {
    color: #a6a6a6;
    font-size: 190%;
    font-weight: 700;
    line-height: 1.2; /* [KORR] War 1.2em */
    margin: .4286em 0 0;
}

h3 {
    color: #a6a6a6;
    font-size: 160%;
    font-weight: 700;
    line-height: 1.25; /* [KORR] War 1.25em */
    margin: .4286em 0 0;
}

h6 {
    color: #000;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: inherit;
    font-weight: 700;
    padding-bottom: .5em;
    padding-top: 1em;
}

div.div_pdflink_text h3 {
    color: #005ca9;
    font-weight: 700;
    margin: 0;
}

/* [OPT] Zwei identische Regeln (p.align-center, td.align-center) zusammengefasst */
.align-center {
    text-align: center;
}


/* =============================================================================
   3. LAYOUT: WRAPPER, HEADER, NAVIGATION
============================================================================= */

/* --- Wrapper --- */
.ym-wrapper {
    background-color: transparent;
    border: 0;
    max-width: 70em;
    z-index: 4;
    position: relative;
    margin: 0 auto;
}

.ym-wbox {
    z-index: 3;
    padding: 0 10px 10px;
    min-width: 68.5em; /* [HINWEIS] Wird durch die folgende Regel (960px) überschrieben */
}

div.ym-wrapper div.ym-wbox {
    min-width: 960px;
}

/* --- Header --- */
#header {
    background: #fff;
    color: #000;
    display: inline-block;
    padding: 1em 0 2em;
    width: 100%;
}

/* [HINWEIS] min-width und max-width identisch (27em) → effektiv width: 27em */
#header_yellow {
    background: #ffd100;
    border: 2px solid #ffd100;
    border-width: 2px 5px;
    border-radius: .4em;
    box-shadow: 8px 5px 12px rgba(0,0,0,.2), 0 2px 9px 4px rgba(250,229,136,.9) inset;
    color: #000;
    display: inline-block;
    float: left;
    left: 1em;
    margin: 1em 2em 0;
    max-width: 27em;
    min-width: 27em;
    padding: .3em .5em .5em;
    position: absolute;
    top: 9em;
}

#header_yellow h2 {
    font-size: 1.7em;
    text-align: center;
    color: #005ca9;
    font-weight: 700;
}

div#header div#mh-logo.mh-logo {
    float: left;
    margin: 0 0 0 2em;
}

#logo {
    display: block;
    float: left;
    height: 100px;
    margin: 0 1.1em;
    width: 170px;
}

/* [HINWEIS] min-width (13.3em) ist redundant, da width denselben Wert hat */
#header_image {
    display: block;
    float: right;
    margin: 1em 2em 0 0;
    min-width: 13.3em;
    min-height: 13.3em;
    width: 13.3em;
    overflow: hidden;
}

#header_image img {
    border: 2px solid #e8e4e4;
    margin: 0;
}

#header_zitat {
    display: block;
    float: left;
    margin: 1em 0 1.8em;
    width: 18.1em;
}

#header_zitat div {
    float: left;
}

#header_zitat p {
    color: #666;
    font-family: "Open Sans Condensed", Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-size: 2em;
    font-style: italic;
    float: left;
    line-height: 1.25; /* [KORR] War 1.25em */
    margin: 0;
}

#header_zitat p:before {
    color: transparent;
    background: url(../../../img/z1.png) no-repeat 0 0 transparent;
    content: "";
    display: inline-block;
    width: 46px;
    height: 39px;
    position: relative;
    top: .3em;
}

#header_zitat p:after {
    color: transparent;
    background: url(../../../img/z2.png) no-repeat 0 0 transparent;
    content: "";
    display: inline-block;
    width: 42px;
    height: 39px;
    position: relative;
    left: .4em;
    top: .3em;
}

#header_uzitat {
    display: block;
    float: right;
    font-size: .9em;
    margin: 0 6em 1em 1em;
    width: 16em;
}

#header_uzitat p {
    margin: 0;
}

#header_unter {
    border: 5px solid transparent;
    display: inline-block;
    position: relative;
    left: 55em;
    bottom: 7em;
}

#top_door {
    color: #777;
    display: block;
    float: right;
    margin: 0 1em 0 0;
    text-align: left;
    width: 29.6%;
}

#top_door a,
#top_door a:focus,
#top_door a:hover,
#top_door a:active {
    font-size: .8em;
    color: #777;
}

div#header div#top_door ul {
    margin: 1em 2em 0 1em;
}

#top_door ul li {
    background: transparent;
    display: inline;
    font-size: .7em;
    line-height: .7em;
    list-style-type: none;
    margin: 0 !important;
    padding: 0 .2em;
    color: #777;
}

#top_nav {
    z-index: 98;
    position: relative;
    border: 0;
    left: 12em;
    top: 14em;
    display: inline-block;
}

#top_nav a {
    font-weight: 700;
    color: #000;
    display: inline;
    float: left;
    font-size: .8em;
    line-height: 1em;
    padding-right: 10px;
}

div#header div.tx-macinasearchbox-pi1 {
    margin: 0 0 0 33.5em;
    clear: both;
}

/* --- Suche im Header --- */
.ym-searchform {
    display: block;
    float: none;
    padding: 0;
}

/* [KORR] IE9-Gradient-Fallback entfernt */
.ym-searchform .ym-searchfield {
    float: left;
    border-radius: .4em;
    height: 2em;
    margin: 0;
    padding-left: .5em;
    width: 10em;
    background: linear-gradient(to top, #dbdbdb 0%, #f5f5f5 60%, #fefefe 100%);
    box-shadow: none;
    border: 1px solid #cecece;
}

.ym-searchform .ym-searchbutton {
    background: none;
    padding: 0;
    border: none;
    width: 2em;
}

/* --- Navigation --- */
nav {
    background: #fff;
    width: 100%;
}

.ym-hlist {
    background: #ffd100;
    overflow: visible;
    position: relative;
    width: 100%;
    height: 2.2em;
}

ul#nav {
    position: absolute;
    margin: 0 auto;
    list-style: none;
    padding: 0 0 0 1.7em;
    height: 2.2em;
}

ul#nav li {
    float: left;
    margin: 0 0 0 .3em;
    font-size: 1em;
    line-height: 1em;
    height: 100%;
}

ul#nav li a {
    color: #005ca9;
    text-shadow: none;
    text-decoration: none;
    border: 2px solid transparent;
    transition: all .2s ease-in-out;
    font-weight: 700;
    font-size: .9em;
    background: transparent;
    display: block;
    line-height: 2em;
    padding: 0 .5em;
    width: auto;
}

ul#nav ul li {
    list-style-type: none;
}

ul#nav span.span_menuactive a,
ul#nav li a:hover {
    border: 2px solid #ffd100;
    bottom: .3em;
    color: #005ca9;
    line-height: 2em;
    position: relative;
    background: linear-gradient(to top, #fff, #fcef9b) !important;
    background-color: #fcef9b !important;
}

ul#nav li ul.subnav li a:hover,
ul#nav li ul.subnav li a {
    bottom: 0;
}

ul.subnav li {
    height: 2.2em;
}

ul.subnav li a {
    height: 100%;
}

ul#nav ul {
    position: absolute;
    top: -9999px;
    background: #ffd100;
    padding: 0;
    margin: 0;
    box-shadow: 5px 4px 15px rgba(0,0,0,.3);
    z-index: 1000;
}

ul#nav li:hover ul {
    top: 2.2em;
}

ul#nav ul li {
    float: none;
    text-align: left;
    margin: 0;
    transition: all .5s ease-in-out;
}

ul#nav li ul.subnav li a {
    margin: 0;
    white-space: nowrap;
}

.smart_nav_bt {
    display: none;
}

.smart_nav {
    display: none;
}

div#nn_breadcrumb {
    font-size: .9em;
    padding: .7em 0 0 2.4em;
}

#nav2top {
    display: none;
}

#link2facebook {
    float: right;
    height: 1.55em;
    margin-right: 2.2em;
    text-align: right;
    width: auto;
}

#link2facebook img {
    width: 22px;
    height: auto;
}


/* =============================================================================
   4. LAYOUT: MAIN & FOOTER
============================================================================= */

/* [KORR] Transparentes Pixel-Bild entfernt – spart einen HTTP-Request */
#main {
    max-width: 67.5em;
    background: transparent;
    margin: 0 .5em;
    clear: both;
    min-width: 945px;
    width: 100%;
}

.ym-column {
    display: block;
    overflow: hidden;
    padding-right: 0;
    width: 100%;
    font-size: .9em;
}

.ym-col1 .ym-cbox {
    padding: 0;
}

.subcl {
    float: left;
    width: 49%;
}

.subcr {
    float: left;
    width: 50%;
}

.subcolumns {
    clear: both;
    display: inline-block;
    padding-bottom: 2em;
    width: 100%;
}

#footer {
    background: #d8d8d8;
    border-top: 1px solid #efefef;
    color: #333;
    margin-left: .5em;
    max-width: 65.5em;
    opacity: .9;
    padding: 1em;
    text-align: center;
}

#footer .csc-default {
    float: left;
    padding: 0 1em;
    width: 30%;
}

#footer a {
    color: #333;
    font-size: .8em;
}

#footer .csc-textpic-imagewrap {
    height: 35px;
    float: none;
}

#footerbanner {
    margin: 7em 0 0;
    text-align: center;
    clear: both;
}

.scanlines {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    background: url(../../../SuperBGImage/grid.png);
}

#superbgimage {
    display: none;
}


/* =============================================================================
   5. KOMPONENTEN: REboxRed / REboxBlue
============================================================================= */

.REboxRed {
    background: #fff;
    border: 5px solid #ddd;
    border-radius: .4em;
    box-shadow: 0 1px 2px rgba(0,0,0,.2);
    float: none;
    margin: 1em 2em 2em;
    max-width: 100%;
    min-width: 60em;
    padding: 1em 2.3em;
    text-shadow: none;
}

.REboxheader {
    position: relative;
    top: 0;
}

.REboxRedContent {
    position: relative;
    top: 0;
}

.REboxRedContent h2 {
    margin: 0 0 1em;
}

div.REboxRedContent a:hover,
div.REboxRedContent a:focus,
div.REboxRedContent a:active {
    background-color: transparent;
    color: #005ca9;
    text-decoration: underline;
}

div#main div.REboxRed div.REboxRedContent div.divider {
    clear: both;
    padding: 20px 0;
}

/* [KORR] Border-Shorthand statt vier Einzelangaben */
div#main div.REboxRed div.REboxRedContent div.divider hr {
    border: none;
    border-top: 3px dotted #eee;
    padding: 0;
    margin: 0;
}

div#main div.REboxRed div.REboxRedContent div.csc-textpic-text p.bodytext:first-child,
div#main div.REboxRedContent div.tx-nnpdflinks-pi1 div.div_pdflink_text p:first-child {
    margin: 0;
}

div.REboxRed table.tbl_worktime td {
    padding: 0;
}

div.REboxRed table.tbl_worktime caption {
    font-variant: normal;
    text-align: left;
}

/* REboxBlue */
div.REboxBlue div.REboxBlueContent div.csc-default div.ToolBox div.ToolBoxContent {
    border-radius: .4em;
    border: 1px solid #004f8f;
}

div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxBlue > div.REboxBlueContent > div.csc-default {
    float: left;
    margin: 0 .6em .6em;
    width: 20%;
    height: 8em;
}

div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxBlue > div.REboxBlueContent > div.csc-default > div[class*="csc-header-n"] {
    display: block;
    height: 3em;
    text-align: center;
    width: 100%;
    position: relative;
    top: 5.2em;
}

div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxBlue > div.REboxBlueContent > div.csc-default > div[class*="csc-header-n"] h1 {
    font-size: .7em;
    text-shadow: none;
}

div.REboxBlue div.REboxBlueContent div.ToolBox div.ToolBoxImage {
    position: relative;
    top: -3em;
}

.ToolBox {
    padding: .2em 0;
}

.ToolBoxImage img {
    clear: both;
}

.ToolBoxContent {
    display: block;
    background: #fff;
    color: #000;
    max-width: 100%;
    padding: 2em;
    z-index: 90;
}


/* =============================================================================
   6. KOMPONENTEN: NEWS (LIST & SINGLE)
============================================================================= */

/* --- Aktionen-Seite (altes Layout) --- */
div.news div.news-list-view div.news-list-item.article {
    overflow: hidden;
}

div.news div.news-list-view div.news-list-item.article div.news-img-wrap {
    width: 304px;
    float: left;
    margin: 0 1.3em 0 0;
}

div.news div.news-list-view div.news-list-item.article div.news-img-wrap div.outer {
    width: 100%;
}

div.news div.news-list-view div.news-list-item.article div.news-img-wrap div.outer img {
    width: 100%;
    height: auto;
    margin-bottom: 1.3em;
}

div.news div.news-list-view hr.hr_newstrenner:last-of-type {
    display: none;
}

div.news p {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    color: #000;
}

div.news div.news-list-view div.news-list-item.article div.div_news_text span.news-list-date {
    float: none;
}

div.news div.news-list-view div.news-list-item.article div.div_news_text div.header h1 {
    margin-top: 0;
}

/* --- News-/Service-Tipps-Seite --- */
div.news div.news-list-view div.news-list-item.article div.div_news_image div.news-img-wrap a {
    width: 100%;
    height: 100%;
    display: block;
}

div.news div.news-list-view div.news-list-item.article div.div_news_image div.news-img-wrap a img {
    width: 100%;
    height: auto;
}

/* --- News Detail (Single) --- */
div.news.news-single div.article div.news-img-wrap {
    float: left;
    width: 304px;
    margin: 0 1.3em 0 0;
}

div.news.news-single div.article div.news-img-wrap div.outer {
    margin-bottom: 1.3em;
}

div.news.news-single div.article div.news-img-wrap div.outer img {
    width: 100%;
    height: auto;
}

/* --- News List Container --- */
div.news-list-container {
    padding: 0;
}

div.news-list-container hr.hr_newstrenner {
    margin: 1em 0;
    clear: both;
}

div.news-list-container div.news-list-item {
    clear: both;
    overflow: hidden;
    padding: 0;
}

div.news-list-container div.news-list-item div.div_tt_news_list div.div_news_list_item {
    padding: 0;
}

div.news-list-container div.news-list-item div.div_tt_news_list div.td_tt_news_list_img {
    float: left;
    margin: 0 1.3em 0 0;
}

div.news-list-container div.news-list-item div.div_tt_news_list div.td_tt_news_list_img img {
    width: 304px;
    height: auto;
    float: none;
    border: 1px solid #ddd;
    margin: 0;
}

div.REboxRedContent div.csc-default div.news-list-container hr:last-of-type {
    display: none;
}

.td_tt_news_list p {
    margin: 0;
    line-height: 1.5; /* [KORR] War 1.5em */
}

div.td_tt_news_list_title a {
    font-weight: 700;
}

/* --- News Single --- */
div.news-single-rightbox {
    display: none;
}

div.news-single-img {
    float: left;
    margin: 1em 1em 1em 0;
    padding: 0;
}

div.news-single-item {
    width: auto;
}

div.news-single-item h4 {
    color: #000;
    margin: .7em 0 .3em;
    font-size: 1em;
    font-family: inherit;
}

.news-single-additional-info,
.news-single-related,
.news-single-files,
.news-single-links {
    width: 100%;
}

.news-single-related dd,
.news-single-links dd,
.news-single-files dd {
    margin: 2em 0;
}

.news-single-related dt,
.news-single-links dt,
.news-single-files dt {
    margin: 0;
}

.news-single-img img {
    border: 1px solid #ddd;
    width: 304px;
    height: auto;
}

div.news-single-img p.news-single-imgcaption {
    background-color: #dedede;
    font-size: .9em;
    font-style: italic;
    padding: 0 2px;
    width: 302px !important;
}


/* =============================================================================
   7. KOMPONENTEN: FORMULARE
============================================================================= */

/* --- Allgemeine Mailform --- */
form#mailform fieldset.csc-mailform {
    height: 33em;
}

.csc-mailform-field label {
    width: 4em;
    padding-left: 1.6em;
}

/* [KORR] IE9-Gradient-Fallback entfernt */
.csc-mailform-field input,
.csc-mailform-field textarea {
    float: right;
    border-radius: .4em;
    border: 1px solid #b7b7b7;
    padding-left: 1em;
    display: inline-block;
    outline: none;
    background: linear-gradient(to top, #dbdbdb 0%, #f5f5f5 60%, #fefefe 100%);
    box-shadow: 2px 2px 2px rgba(0,0,0,.2) inset;
    width: 20em;
}

.csc-mailform-field input {
    height: 2em;
    margin: 0;
}

.csc-mailform-field textarea {
    height: 5em;
    margin: 0 0 18px;
    padding: 1em 0 0 1em;
    resize: none;
}

.csc-mailform-submit {
    float: right;
}

input#mailformBitte-um-Rueckruf {
    width: 1em;
    height: 1em;
    border-radius: 0;
    margin: .3em 0 0;
}

form#mailform fieldset label[for*="Rueckruf"] {
    float: left;
    width: 85%;
    margin: 0 0 1em;
}

form#mailform fieldset label[for*="mailformcaptchaResponse"],
form#mailform fieldset label[for*="mailformSicherheitscode:"] {
    float: left;
    margin: 55px 0 0;
}

/* [KORR] IE9-Gradient-Fallback entfernt */
div.subcr form#mailform fieldset.csc-mailform div.csc-mailform-field input#mailformformtype_mail.csc-mailform-submit {
    background: linear-gradient(to top, #b0b0b0 0%, #575757 60%, #888 100%);
    border-radius: .8em;
    box-shadow: 1px 1px 2px rgba(0,0,0,.8);
    clear: both;
    color: #fff;
    margin: 1em 0;
    padding: 0;
    text-align: center;
    width: 8em;
    position: relative;
    top: 3em;
}

div.subcr form#mailform fieldset.csc-mailform div.csc-mailform-field input#mailformformtype_mail.csc-mailform-submit:hover {
    background: linear-gradient(to top, #888 0%, #575757 60%, #b0b0b0 100%);
}

div.REboxRed div.subcr form#mailform fieldset.csc-mailform div.csc-mailform-field {
    margin: .5em 0;
    height: 3em;
}

div.REboxRed div.subcr form#mailform fieldset.csc-mailform div.csc-mailform-field img {
    height: 3em;
    margin: .5em 0 .5em 150px;
}

/* --- Powermail --- */
div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form h3 {
    display: none;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap {
    margin-top: 1em;
    width: 100%;
    line-height: 2em;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap label,
div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_textarea label.powermail_label {
    display: inline-block;
    width: 25%;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap input.powermail_input,
div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_select select.powermail_select {
    height: 2em;
    padding: 0 .3em;
    width: 71%;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_select select.powermail_select {
    width: 73%;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_textarea textarea.powermail_textarea {
    resize: none;
    padding: .3em;
    width: 71%;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_check fieldset legend.powermail_check_legend {
    display: none;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_check fieldset div.powermail_check_outer div.powermail_check_inner label {
    width: 94%;
    line-height: 1.5; /* [KORR] War 1.5em */
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_text {
    font-style: italic;
    font-size: .9em;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_check fieldset div.powermail_check_outer div.powermail_check_inner input.powermail_checkbox {
    display: table-cell;
    vertical-align: top;
    margin-right: .5em;
    float: left;
    height: 1.5em;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_check fieldset div.powermail_check_outer div.powermail_check_inner {
    line-height: 1em;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_submit input.powermail_submit {
    padding: .3em .5em;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_submit {
    text-align: right;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_textarea label.powermail_label {
    vertical-align: top;
}

div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap ul.parsley-errors-list {
    margin-top: 0;
}

.parsley-custom-error-message,
.parsley-required,
.powermail_message_error {
    color: red;
}

#span_hinweis {
    cursor: pointer;
    color: #005ca9;
}

#span_privacyHintLink {
    color: #005ca9;
    cursor: pointer;
}

#powermail_field_marker {
    display: none;
}

/* --- Kontaktformular mit Captcha --- */
div.tx-nncontactwithcaptcha-pi1 {
    line-height: 1.5; /* [KORR] War 1.5em */
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form {
    padding-top: 45px;
    width: 100%;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form div.div_titel_1 {
    margin: 1em 0;
}

/* [OPT] Gemeinsame Basis für Input- und Textarea-Felder konsolidiert (vorher zwei getrennte Regeln)
   [KORR] IE9-Gradient-Fallback entfernt
   [HINWEIS] input#input_5 trifft nur, wenn #input_5 ein <input> ist.
             Falls es ein <textarea> ist (wahrscheinlich), ist dieser Selektor toter Code. */
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_1,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_2,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_3,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_5,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_6,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_7,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form textarea#input_5 {
    width: 66%;
    border-radius: .4em;
    border: 1px solid #b7b7b7;
    padding-left: 1em;
    display: inline-block;
    outline: none;
    background: linear-gradient(to top, #dbdbdb 0%, #f5f5f5 60%, #fefefe 100%);
    box-shadow: 2px 2px 2px rgba(0,0,0,.2) inset;
    margin: 1em 0 0;
    box-sizing: border-box;
}

/* Inputs: Standard-Höhe */
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_1,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_2,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_3,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_5,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_6,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_7 {
    height: 2em;
}

/* Textarea: größere Höhe */
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form textarea#input_5 {
    height: 5em;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_4,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_8 {
    float: left;
}

/* [OPT] Gemeinsame Basis für Select-Felder konsolidiert (vorher zwei getrennte Regeln)
   [KORR] IE9-Gradient-Fallback entfernt */
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form select[name="year"],
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form select[name="month"] {
    margin: 1em .5em 0 0;
    background: linear-gradient(to top, #dbdbdb 0%, #f5f5f5 60%, #fefefe 100%);
    border: 1px solid #b7b7b7;
    border-radius: .4em;
    box-shadow: 2px 2px 2px rgba(0,0,0,.2) inset;
    display: inline-block;
    height: 2em;
    outline: none;
    padding-left: .5em;
    padding-top: .2em;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form select[name="year"] {
    width: 6em;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form select[name="month"] {
    width: 10em;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_1 {
    width: 30%;
    float: left;
    margin: .2em 1em 0 0;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_2,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_3,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_5,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_6,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_7 {
    margin: 1.2em 1em 0 0;
    width: 30%;
    float: left;
    clear: left;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_4,
div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_8 {
    width: 93%;
    float: right;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form a#reload {
    box-sizing: border-box;
    clear: left;
    cursor: pointer;
    float: left;
    font-size: .9em;
    margin: 2em 1em 0 0;
    padding-left: 3em;
    text-align: right;
    text-decoration: none;
    width: 30%;
}

.span_reload_img {
    font-size: 2em;
    font-weight: 700;
}

img#img_contact_captcha {
    border: 1px solid transparent;
    border-radius: .6em;
    margin: 1em 0 0;
    width: 66%;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input[type="submit"] {
    background: linear-gradient(to top, #b0b0b0 0%, #575757 60%, #888 100%);
    border-radius: .8em;
    border: 1px solid #b7b7b7;
    box-shadow: 1px 1px 2px rgba(0,0,0,.8);
    display: inline-block;
    outline: none;
    color: #fff;
    padding: .2em;
    text-align: center;
    width: 8em;
    float: right;
    margin: 1em 0 0;
}

div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input[type="submit"]:hover {
    background: linear-gradient(to top, #888 0%, #575757 60%, #b0b0b0 100%);
}


/* =============================================================================
   8. KOMPONENTEN: SONSTIGES
============================================================================= */

/* --- Carousel --- */
.caroufredsel_wrapper {
    width: 96% !important; /* !important nötig: überschreibt Inline-Style vom JS-Plugin */
}

.carouselContainer {
    width: 99% !important; /* !important nötig: überschreibt Inline-Style vom JS-Plugin */
    margin: 1.5em 0 3em;
}

.carousel {
    padding-top: 1.3em;
}

.carouselcaption {
    color: #000;
    font-size: .8em;
    margin-top: -2.3em;
}

.carouselcaption span {
    background: rgba(255,255,255,.8);
    white-space: pre;
}

div.carousel div.caroufredsel_wrapper ul.jpcarousel li {
    text-align: center;
}

/* --- Karte --- */
#map_canvas,
#map {
    height: 479px;
    margin: auto;
    overflow: hidden;
    width: 99%;
}

div#map_static {
    height: 100%;
    width: 100%;
}

#anfahrt_img {
    border: 1px solid #0053ae;
    font-weight: 700;
    height: 21em;
    overflow: hidden;
    padding: 0;
}

#anfahrt_img a {
    display: block;
}

/* --- Suche (Indexed Search) --- */
form#tx_indexedsearch input.tx-indexedsearch-searchbox-sword {
    background: #fff;
    border: 1px solid rgba(255,255,255,.1);
    box-shadow: 0 1px 3px rgba(0,0,0,.2) inset;
    line-height: 1em;
    outline: none;
    padding: .3em;
    width: 10em;
}

form#tx_indexedsearch table {
    width: auto;
}

form#tx_indexedsearch td:first-child {
    padding-left: 0;
}

div.tx-indexedsearch div.tx-indexedsearch-res td:first-child {
    padding-left: 0;
    padding-right: 0;
}

div.tx-indexedsearch div.tx-indexedsearch-res {
    clear: left;
}

div.tx-indexedsearch div.tx-indexedsearch-browsebox {
    margin-bottom: 4.5em;
}

div.tx-indexedsearch div.tx-indexedsearch-browsebox ul.browsebox {
    list-style-type: none;
    margin-left: 0;
}

div.tx-indexedsearch div.tx-indexedsearch-browsebox ul.browsebox li {
    float: left;
}

div.tx-indexedsearch div.tx-indexedsearch-browsebox ul.browsebox li:first-child {
    margin-left: 0;
}

.tx-indexedsearch-whatis {
    display: none;
}

/* --- PDF-Links --- */
div#main div.REboxRed div.REboxRedContent div.tx-nnpdflinks-pi1 div.div_pdflink_thumb {
    float: left;
    margin: 0 0 2em;
}

div#main div.REboxRed div.REboxRedContent div.tx-nnpdflinks-pi1 div.div_pdflink_text {
    float: left;
    margin: 0 0 0 1.3em;
    max-width: 16em;
}

div#main div.REboxRed div.REboxRedContent div.tx-nnpdflinks-pi1 div.divider {
    clear: both;
    padding: 20px 0;
}

/* --- Textpic / Bildunterschriften --- */
dd.csc-textpic-caption,
.csc-textpic-caption {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    background-color: #dedede;
    box-sizing: border-box;
    font-size: .9em;
    font-style: italic;
    margin: 0;
    padding: 0 2px;
    font-variant: normal;
}

div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap dl.csc-textpic-image,
div.csc-textpic-intext-left-nowrap div.csc-textpic-firstcol dl.csc-textpic-image {
    width: 304px !important; /* !important nötig: überschreibt TYPO3-Inline-Style */
}

div.csc-textpic-intext-left-nowrap img {
    width: 304px;
    height: auto;
}

div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap dl.csc-textpic-image[style*="width:600"] {
    width: 304px !important; /* !important nötig: überschreibt TYPO3-Inline-Style */
}

div.csc-textpic-intext-left-nowrap div.csc-textpic-single-image + div,
div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap + div {
    margin-left: 320px !important; /* !important nötig: überschreibt TYPO3-Inline-Style */
}

div.tx-nnnfp-pi1 div.csc-textpic-intext-left-nowrap div.csc-textpic-single-image + div,
div.tx-nnnfp-pi1 div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap + div {
    margin-left: 0 !important; /* !important nötig: überschreibt vorherige !important-Regel */
}

div.REboxRedContent div.csc-textpic-center div.csc-textpic-imagewrap dl.csc-textpic-image dt a img {
    margin-top: 1.6em;
}

/* --- Tabellen --- */
table.tbl_worktime > caption {
    font-weight: 700;
}

table.tbl_worktime td:first-child {
    width: 7em;
}

table.tbl_gebrauchte_vor_ort tr.tr-even {
    background: #e3e3e3;
}

table.tbl_gebrauchte_vor_ort td.td-0 {
    width: 50%;
}

table.ttx td {
    border: 5px solid #fff;
    padding-left: .5em !important;
    vertical-align: middle !important;
    line-height: 2.5em !important;
}

table.ttx tr.tr-even {
    background: #eee;
}

table.ttx tr.tr-odd {
    background: #eeedf3;
}

/* --- Aktionspreise --- */
div.tx-nnnfp-pi1 div.action_service_price_mwst {
    float: right;
    font-size: .8em;
    width: 100%;
}

.action_service_header {
    font-size: 1em;
    color: #005caa;
}

.action_service_price_1,
.action_service_price_3 {
    display: none;
}

.action_service_price_2 {
    margin: 1.2em 6em 1.2em 0;
    position: relative;
    transform: rotate(-15deg);
    font-size: 1.5em;
    color: #005ca9;
    display: inline-block;
    font-weight: 700;
    padding: .6em .9em;
    text-align: center;
    background: linear-gradient(to bottom, #ffd100, #fae588);
    background-color: #ffd100;
    border-top-left-radius: 60px 90px;
    border-bottom-right-radius: 60px 90px;
    box-shadow: 5px 5px 4px #d3d3d3;
}

div.action_service_price_2 div.action_service_price_4 {
    font-size: .5em;
    font-weight: 400;
    position: absolute;
    right: -10em;
    top: 2em;
    transform: rotate(15deg);
    width: 100%;
}

div.div_action_text {
    padding: 1em 0;
}

/* --- Banner --- */
#div_banner {
    position: absolute;
    right: -300px;
    opacity: 0;
    display: none;
    z-index: 5;
    top: 4em;
    border: 4px solid red;
    outline: 4px solid #fff;
    box-shadow: -6px 6px 8px 0 #333;
}

#div_banner div.div_bannerClose {
    background: #ffd100;
    text-align: right;
    line-height: 2em;
    padding: 0 .5em 0 0;
    cursor: pointer;
}

/* --- Sonstiges --- */
div#header_yellow div.csc-textpic-imagewrap img {
    margin-bottom: 0;
}

div.REboxRed div.REboxRedContent div.csc-default ul {
    margin: .5em 0 1.5em 1em;
}

div.angebotDetailItem a.gallery img {
    width: 191px !important;
}

div.angebotListItem,
div.angebotDetailItem,
div#angebotUebersichtHeader {
    min-width: 0 !important;
}

div#angebotUebersichtHeader div.filter {
    margin-left: 215px !important;
}

#footer div.csc-default div.csc-textpic div.csc-textpic-imagewrap div.csc-textpic-image img {
    margin: 0 auto;
}

#footer div.csc-default div.csc-textpic div.csc-textpic-imagewrap figure.csc-textpic-image {
    margin: 0 auto 10px;
}

div.tx-nnnfp-pi1 div.csc-default div.csc-textpic div.csc-textpic-imagewrap {
    margin-right: 1.5em !important;
}

div.tx-nnnfp-pi1 div.csc-default:last-child hr.hr_newstrenner,
div#main div.tx-nnnfp-pi1 div.divider:first-child,
div#main div.tx-nnnfp-pi1 div.divider:last-child {
    display: none;
}

div.tx-nnnfp-pi1 > div.divider + div.csc-default + div.divider {
    display: none;
}

div.tx-nnnfp-pi1 div.csc-default div.csc-header.csc-header-n1 h1.csc-firstHeader {
    margin-bottom: 1em;
}

html body div.ym-wrapper div.ym-wbox div#header div#header_yellow div.csc-default p#p_address {
    font-style: normal;
    text-align: center;
    white-space: nowrap;
}

div#div_address_2 {
    width: 100%;
}

div#div_address_2 ul {
    width: 100%;
    list-style: none;
    overflow: hidden;
    margin: .7em 0 0;
}

div#div_address_2 ul li {
    width: 47%;
    float: left;
    font-size: .9em;
    font-style: normal;
    line-height: 1.5; /* [KORR] War 1.5em */
    text-shadow: none;
}

.coin-slider {
    float: left;
}

div.REboxRed div.REboxRedContent div.html5videoplayer div.vjs-big-play-button {
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}

#wrapp, #wrapp div,
#carOffers, #carOffers div {
    width: 100%;
}

.tx-facebooksocialplugins-pi1 {
    border: 0;
}

.tx-facebooksocialplugins-pi1 iframe {
    width: 100% !important;
}

#kdeWidget {
    width: 100% !important;
}

.csc-frame-invisible hr {
    clear: both;
    visibility: hidden;
}


/* =============================================================================
   9. EXTENSIONS (DRITTANBIETER)
============================================================================= */

/* --- Cookie-Consent --- */
div.cc_banner-wrapper div.cc_banner.cc_container.cc_container--open {
    opacity: .9;
}

div.cc_banner-wrapper div.cc_banner.cc_container.cc_container--open p.cc_message {
    color: #fff;
    font-size: .9em !important;
    margin-top: .6em;
}

div.cc_banner-wrapper div.cc_banner.cc_container.cc_container--open p.cc_message a {
    color: #fff;
    font-size: .9em !important;
}

/* [KORR] turquoise → expliziter Hex-Wert #40e0d0 */
.cc-compliance .cc-btn {
    background-color: #40e0d0 !important;
    color: black !important;
}

.cc-window.cc-top-left,
.cc-window.cc-top-right,
.cc-window.cc-bottom-left,
.cc-window.cc-bottom-right {
    max-width: 40em;
}

/* --- TÜV-Zertifizierung --- */
.tx-nn-kuwe-tuev-zertifizierung img {
    width: auto !important;
    height: auto;
}

/* --- User Counter --- */
div.tx-nn-simple-fe-user-counter {
    margin: 30px 0 0;
    font-size: smaller;
}

/* --- TX-Imagecycle --- */
div.tx-imagecycle-pi2-images a.cs-next:hover,
div.tx-imagecycle-pi2-images a.cs-prev:hover {
    background: #fff;
    color: #000;
    text-decoration: none;
}

div.tx-imagecycle-pi2-images a:active {
    text-decoration: none;
    background: #000;
    color: #fff;
}

.tx-nnnfp-pi1 div.csc-textpic div.csc-textpic-single-image {
    width: 304px;
}

.tx-nnnfp-pi1 div.csc-textpic div.csc-textpic-single-image img {
    margin-bottom: 0;
    width: 100%;
    margin-top: .5em;
}


/* =============================================================================
   10. RESPONSIVE (max-width: 800px)
============================================================================= */

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

    .ym-wrapper {
        max-width: 100%;
    }

    body {
        font-size: 14px;
        width: 100%;
    }

    body div.ym-wrapper div.ym-wbox {
        padding: 0;
        min-width: 0;
    }

    p {
        line-height: 1.5; /* [KORR] War 1.5em */
        margin: 1.5em 0 0;
        font-size: 3.5vw;
    }

    li {
        font-size: 3.5vw;
    }

    h1, h2, h3 {
        font-size: 4vw;
    }

    a:hover, a:focus {
        background-color: #4d87c7;
        color: #fff;
        text-decoration: none;
    }

    #header {
        height: 22em;
    }

    body div.ym-wrapper div.ym-wbox div#header {
        background-color: #fff;
        height: auto;
        padding: 0;
        overflow: hidden;
    }

    body div.ym-wrapper div.ym-wbox div#header div#header_yellow div:first-child {
        font-size: 100%;
    }

    body div.ym-wrapper div.ym-wbox div#header div#header_yellow {
        box-sizing: border-box;
        float: none;
        left: 0;
        margin: 0 !important;
        max-width: 100%;
        min-width: 100%;
        padding: .7em 0;
        position: static;
        top: 0;
        width: 100% !important;
        border-radius: 0;
    }

    body div.ym-wrapper div.ym-wbox div#header div#top_door {
        float: none;
        box-sizing: border-box;
        width: 100%;
        padding: .4em;
        font-size: 4vw;
        margin: 0;
        text-align: center;
    }

    #header_image,
    #header_zitat,
    #header_zitat div,
    #header_zitat p,
    #header_uzitat,
    #header_unter,
    #top_nav,
    #media,
    #logo {
        display: none;
    }

    #header_yellow p {
        font-size: 3.5vw;
        text-align: center;
        line-height: 1.3; /* [KORR] War 1.3em */
        margin: 1em 0 .5em;
        white-space: normal !important;
    }

    #header_yellow h2 {
        font-size: 5vw;
        text-align: center;
        line-height: 1.3; /* [KORR] War 1.3em */
    }

    #top_door ul li {
        font-size: 1em;
        line-height: 1.5; /* [KORR] War 1.5em */
        color: #666;
    }

    div#header div#mh-logo.mh-logo {
        box-sizing: border-box;
        float: none !important;
        margin: 1em 0 !important;
        padding: 0 0 0 1em;
        width: 100%;
    }

    div#header div#mh-logo img {
        width: 13em;
    }

    html body div.ym-wrapper div.ym-wbox div#header div.tx-macinasearchbox-pi1 {
        display: none;
    }

    html body div.ym-wrapper div.ym-wbox div#header div#smart_nav_bt.smart_nav_bt img {
        height: .8em;
        margin: 0;
        width: auto;
    }

    nav {
        display: none;
    }

    .ym-searchform {
        display: none;
    }

    .coin-slider {
        display: none;
    }

    html body div.ym-wrapper div.ym-wbox div#header div#smart_nav.smart_nav ul#mobile_nav li.menuparent ul.subnav li a,
    html body div.ym-wrapper div.ym-wbox div#header div#smart_nav.smart_nav ul#mobile_nav li.menuactive_menuparent ul.subnav li a {
        border-radius: .2em;
        display: block;
        height: 100%;
        padding: .5em;
        line-height: 1em;
        box-sizing: border-box;
    }

    html body div.ym-wrapper div.ym-wbox div#header div#smart_nav.smart_nav ul#mobile_nav > li.menuparent > ul.subnav > li,
    html body div.ym-wrapper div.ym-wbox div#header div#smart_nav.smart_nav ul#mobile_nav > li.menuactive_menuparent > ul.subnav > li {
        color: #005ca9;
        list-style-type: none;
        margin: 0 .5em;
        text-transform: uppercase;
        width: 92%;
    }

    div#smart_nav.smart_nav ul#mobile_nav li.menuactive span.span_menuactive a,
    div#smart_nav.smart_nav ul#mobile_nav li.menuactive_menuparent span.span_menuactive a {
        border-radius: .2em;
        color: #ffd100;
        display: block;
        padding: 1em;
        position: inherit;
    }

    div#smart_nav.smart_nav ul#mobile_nav li.menuactive_menuparent > span.span_menuactive a {
        font-weight: 700;
    }

    #smart_nav_bt {
        background-color: #005ca9;
        border-radius: .5em 0 0 .5em;
        box-sizing: border-box;
        color: #ffd100;
        cursor: pointer;
        display: table;
        height: 4em;
        margin: 0;
        opacity: .8;
        padding: .4em .3em;
        position: fixed;
        right: 0;
        text-align: center;
        top: 4em;
        width: 4em;
        z-index: 110;
        background-repeat: no-repeat;
        background-position: center;
        background-size: 57%;
    }

    #smart_nav_bt.menu_isoff {
        background-image: url(/uploads/pics/icon_responsive_menu_striche_MH.png);
    }

    #smart_nav_bt.menu_ison {
        background-image: url(/uploads/pics/close_MH.png);
    }

    #smart_nav_bt.fixed {
        top: 1em !important;
    }

    .smart_nav {
        background: #ffd100;
        clear: both;
        display: none;
        margin: 0;
        overflow: visible;
        padding: 1em;
        position: absolute;
        top: 0;
        width: 100%;
        box-sizing: border-box;
    }

    .smart_nav ul#mobile_nav {
        margin: 0;
        padding: 1em;
        box-sizing: border-box;
        width: 100%;
    }

    .smart_nav ul#mobile_nav > li {
        background: #fffef6 !important;
        border-radius: .4em;
        color: #005ca9;
        list-style-type: none;
        margin: .5em 0;
        text-transform: uppercase;
    }

    .smart_nav ul#mobile_nav > li.menuactive > span.span_menuactive {
        display: block;
        font-size: 2em;
        font-weight: 700;
        text-shadow: none;
        width: auto;
        color: #005ca9;
        border-radius: .2em;
    }

    .smart_nav ul#mobile_nav > li > a,
    .smart_nav ul#mobile_nav > li.menuactive > a {
        display: block;
        font-size: 2.5vmax;
        font-weight: 700;
        padding: .5em 1em;
        text-decoration: none;
        text-shadow: none;
        width: auto;
        border: 2px solid transparent;
        border-radius: .2em;
    }

    .smart_nav ul#mobile_nav > li.menuactive > a,
    .smart_nav ul#mobile_nav > li.menuactive_menuparent > a {
        color: #ffd100;
        background-color: #4d87c7;
    }

    ul.subnav li {
        height: auto;
        line-height: 2em;
    }

    ul.subnav li a {
        display: block;
        text-decoration: none;
        text-shadow: none;
        padding: 0 .5em;
        border-radius: .2em;
        font-size: 2.5vmax;
    }

    ul.subnav li.menuactive a {
        color: #ffd100;
        border: 2px solid transparent;
    }

    #main {
        margin: 0;
        min-width: 0;
        width: 100%;
        padding: 0;
        background: #eee;
    }

    div#main div.ym-column {
        padding: 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox {
        box-sizing: border-box;
        padding: 0 !important;
        margin: 0;
    }

    /* [HINWEIS] font-Shorthand setzt implizit font-style, font-variant, font-weight auf Initialwerte zurück */
    div#main div.REboxRed {
        border-radius: 0;
        box-shadow: 0 1px 2px rgba(0,0,0,.2);
        box-sizing: border-box;
        clear: both;
        font: 14px/100% Arial, Helvetica, sans-serif;
        margin: 0;
        max-width: 100% !important;
        min-width: 100% !important;
        padding: 1em;
        text-shadow: none;
        width: 100%;
        border: none;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default {
        margin: 1em 0 !important;
    }

    div.REboxBlue {
        display: none;
    }

    /* [HINWEIS] Diese Regel hat niedrigere Spezifität als div#main div.REboxRed oben.
       Sie wirkt daher nur auf .REboxRed-Elemente AUSSERHALB von div#main (falls vorhanden). */
    .REboxRed {
        max-width: 90% !important;
        font: 14px/100% Arial, Helvetica, sans-serif;
        padding: .5em 2em .75em;
        margin: .5em;
        border-radius: .4em;
        box-shadow: 0 1px 2px rgba(0,0,0,.2);
        clear: both;
    }

    .REboxRedContent h1 {
        font-size: 4vw;
    }

    div#main div.REboxRed div.REboxRedContent div.csc-header h2.csc-firstHeader {
        font-size: 4vw;
        width: 100%;
        margin: 1em 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.REboxRed div.REboxRedContent div.csc-header h2.csc-firstHeader {
        margin-bottom: .5em;
    }

    html body div.ym-wrapper div.ym-wbox div#main div.ym-column div.ym-col1 div.ym-cbox div.REboxRed div.REboxheader img {
        height: 10em;
        width: 8em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-textpic div.csc-textpic-imagewrap,
    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-textpic div.csc-textpic-imagewrap div.csc-textpic-imagerow {
        margin: 0;
        width: 100% !important;
        text-align: center;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-textpic div.csc-textpic-imagewrap dl.csc-textpic-image {
        width: 100% !important;
        margin: 0;
    }

    div.REboxRedContent div.csc-textpic div.csc-textpic-imagewrap dd.csc-textpic-caption {
        text-align: center;
        margin: .5em 0 1em;
    }

    div.REboxRedContent div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap [style*="width:304"],
    div.REboxRedContent div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap [style*="width:304"] div.csc-textpic-imagerow [style*="width:304"] {
        width: 100% !important;
    }

    div.REboxRedContent div.csc-textpic-intext-left-nowrap div[style*="margin-left"] {
        margin-left: 0 !important;
    }

    div.csc-textpic div.csc-textpic-imagecolumn {
        float: none;
    }

    div.csc-textpic-center div.csc-textpic-imagewrap {
        width: 100% !important;
    }

    /* [HINWEIS] font-size: 50% ergibt ca. 7px – potentiell unlesbar. Bewusst so gewollt? */
    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-default div.csc-textpic div div.csc-textpic-text p.bodytext {
        margin: 1em 0 0;
        font-size: 50%;
        line-height: 1.2; /* [KORR] War 1.2em */
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-default div.csc-textpic div div.csc-textpic-text div.csc-textpicHeader h1.csc-firstHeader {
        font-size: 50%;
        line-height: 1.25; /* [KORR] War 1.25em */
        margin: 0;
        text-shadow: none;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-default div.csc-textpic div div.csc-textpic-text div.csc-textpicHeader h3.csc-firstHeader {
        font-size: 1.5em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent h1.csc-firstHeader {
        margin: .3em 0 1em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default iframe {
        width: 100% !important;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div#kdeWidget {
        max-width: 100% !important;
        width: 100% !important;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.tx-facebooksocialplugins-pi1 iframe {
        max-width: 100% !important;
        width: 100% !important;
    }

    .subcl, .subcr {
        width: 100%;
    }

    html body div.ym-wrapper div.ym-wbox div#main div.ym-column div.ym-col1 div.ym-cbox div#c439.csc-default div.REboxRed div.REboxRedContent div#c442.csc-default div.subcolumns div.c50l div.subcl {
        width: 100%;
        float: none;
        padding: 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50r div.subcr {
        padding: 0;
        width: 100%;
        float: none;
    }

    #main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-textpic.csc-textpic-intext-left-nowrap div.csc-textpic-single-image + div.csc-textpic-text,
    #main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-textpic.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap + div.csc-textpic-text {
        margin-left: 0 !important;
        width: 100%;
        float: left;
    }

    div.tx-nnnfp-pi1 div.csc-textpic-intext-left-nowrap div.csc-textpic-single-image + div,
    div.tx-nnnfp-pi1 div.csc-textpic-intext-left-nowrap div.csc-textpic-imagewrap + div {
        width: 100%;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent > div.csc-default > div.csc-default > div.csc-textpic > div:nth-child(2) {
        margin: 0 !important;
    }

    div.REboxRed div.REboxRedContent div.csc-default {
        width: 100%;
        box-sizing: border-box;
    }

    div.REboxRedContent div.tx-jpcarousel-pi1 div.carouselContainer div.carousel div.caroufredsel_wrapper ul.jpcarousel li div.carouselcaption {
        margin-top: -1.2em;
    }

    .ym-cbox > .csc-default:first-child {
        box-sizing: border-box;
        display: inline-block;
        padding: 0;
        width: 100% !important;
    }

    dd.csc-textpic-caption {
        font-size: 3vw;
        margin: 0 0 1em !important;
        padding: .3em;
        width: 100% !important;
        line-height: 2; /* [KORR] War 2em */
    }

    figure.csc-textpic-image {
        width: 100%;
    }

    figcaption.csc-textpic-caption {
        padding: 5px;
        line-height: 1.5; /* [KORR] War 1.5em */
    }

    /* News */
    div.news-single-item {
        width: 100%;
        margin: 0;
        padding: 0;
        line-height: 1.5; /* [KORR] War 1.5em */
    }

    div.news-single-item h1,
    div.news-single-item h4 {
        line-height: 1.5; /* [KORR] War 1.5em */
    }

    div.news-single-item h4 {
        font-size: 3.5vw;
    }

    div.news-single-item h6 {
        font-size: 1.5em;
    }

    div.news-single-item div.news-single-img {
        margin: 0 0 1em;
        width: 100%;
    }

    div.news-single-img img {
        width: 100% !important;
        height: auto;
    }

    /* [HINWEIS] Hintergrundfarbe #e0e7f5 weicht von der Desktop-Version (#dedede) ab – bewusst? */
    div.news-single-img p.news-single-imgcaption {
        background-color: #e0e7f5;
        font-size: 3vw;
        font-style: italic;
        padding: 0 2px;
        width: 100% !important;
        margin: 1em 0 0;
    }

    div.news-single-item div.div_prev_news a,
    div.news-single-item div.div_next_news a {
        font-size: 3.5vw;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-single-item div.div_next_news {
        text-align: right;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-single-item div.div_next_news,
    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-single-item div.div_prev_news {
        width: 42%;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-single-item div.news-single-backlink {
        margin: 1em 0 0;
        font-size: 3.5vw;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-single-item div#text_to_cut p.bodytext {
        margin: 1em 0 0;
    }

    div.news-list-container {
        padding: 0;
    }

    .news-list-container img {
        border: 1px solid #ddd;
        width: 100%;
        height: auto;
        margin: 0;
    }

    div.news-list-container div.news-list-item div.div_tt_news_list div.td_tt_news_list_img {
        width: 100%;
        float: none;
        margin-bottom: 0;
    }

    div.news-list-container div.news-list-item div.div_tt_news_list div.td_tt_news_list_img img {
        width: 100% !important;
        height: auto;
    }

    div.news-list-container div.news-list-item div.div_tt_news_list div.div_news_list_item {
        width: 100%;
        padding: 0;
    }

    div.news-list-container div.news-list-item div.div_tt_news_list div.div_news_list_item div.td_tt_news_list_text a {
        font-size: 3.5vw;
    }

    div.news-list-container div.news-list-item div.div_tt_news_list div.div_news_list_item div.div_news_list_date {
        line-height: 1em;
        margin: 1em 0;
        font-size: 3.5vw;
    }

    div.news-list-container div.news-list-item div.div_tt_news_list div.div_news_list_item div.td_tt_news_list_title {
        line-height: 2em;
    }

    div.news-list-container div.news-list-item div.div_tt_news_list div.div_news_list_item div.td_tt_news_list_text {
        line-height: 1.5; /* [KORR] War 1.5em */
        width: 100% !important;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item div.div_tt_news_list div.td_tt_news_list_img {
        margin: 2em 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item div.div_tt_news_list div.td_tt_news_list_title a {
        font-size: 4vw;
        line-height: 1.3; /* [KORR] War 1.3em */
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item div.div_tt_news_list div.td_tt_news_list_text {
        width: 77%;
    }

    div#main div.REboxRed div.REboxRedContent div.news-list-container p {
        font-size: 3.5vw;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item table.tbl_tt_news_list {
        margin: 0;
        line-height: 1em;
        border: none;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item table.tbl_tt_news_list tbody tr td.td_tt_news_list_img {
        width: auto !important;
        padding: 1em 1em 0 0 !important;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item table.tbl_tt_news_list td {
        border: none;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item table.tbl_tt_news_list td.td_tt_news_list_title {
        padding: 1em 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item table.tbl_tt_news_list tbody tr td.td_tt_news_list_text {
        padding: 1em 0 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item table.tbl_tt_news_list tbody tr td.td_tt_news_list_title a {
        font-size: 1.5em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.news-list-container div.news-list-item table.tbl_tt_news_list td.td_tt_news_list_img > img {
        margin: 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent a:hover,
    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent a:active,
    #footer a:hover,
    #footer a:active {
        color: #000;
        background: none;
        text-decoration: underline;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.tx-nnpdflinks-pi1 div.div_pdflink_text {
        float: none;
        margin: 1em 0 0;
        color: #005caa;
        font-size: 4vw;
        width: 100%;
        line-height: 1.3; /* [KORR] War 1.3em */
    }

    div#main div.REboxRed div.REboxRedContent div.tx-nnpdflinks-pi1 div.div_pdflink_text a {
        font-size: 3.5vw;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div#c287.csc-default div.REboxRed div.REboxRedContent div#c289.csc-default div.tx-nnpdflinks-pi1 div.div_pdflink_thumb {
        float: none;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.tx-nnpdflinks-pi1 div.div_pdflink_thumb a img {
        width: 100% !important;
        height: auto;
    }

    div#main div.REboxRed div.REboxRedContent div.csc-textpic div.csc-textpic-imagewrap dl.csc-textpic-image dt a img {
        margin: 1em 0 0;
    }

    div.action_service_price_2 {
        margin: 1em 0;
        padding: .6em .5em;
        font-size: 4.5em;
    }

    div.tx-nnnfp-pi1 div.action_service_price_mwst {
        font-size: 1.5em;
        display: inline-block;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-header h4.csc-firstHeader {
        font-size: 2em;
        line-height: 1em;
        margin: .5em 0 1em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.tx-nnnfp-pi1 div.divider:first-child {
        display: none;
    }

    div#main div.REboxRed div.REboxRedContent div.tx-nnnfp-pi1 div.divider {
        padding: 2em 0;
    }

    div#main div.REboxRed div.REboxRedContent div.tx-nnnfp-pi1 div.div_action_text p {
        margin: 0;
    }

    div#main div.REboxRed div.REboxRedContent div.tx-nnnfp-pi1 div.csc-textpic-text div.div_action_text li,
    div#main div.ToolBox div.ToolBoxContent li {
        font-size: 3.5vw;
    }

    div#main div.REboxRed div.REboxRedContent div.tx-nnnfp-pi1 div.csc-textpic div.csc-textpic-text div.div_action_text {
        padding: 1em 0;
    }

    div#main div.REboxRed div.REboxRedContent div.tx-nnnfp-pi1 div.csc-textpic div.csc-textpic-text h2.h2_action_header {
        font-size: 1em;
        left: 0;
        margin: 1em 0 0;
        position: inherit;
    }

    p#p_address span {
        display: none;
    }

    p#p_address span[itemprop] {
        display: inline-block;
    }

    p#p_address {
        text-align: left;
    }

    #anfahrt_img {
        max-height: 250px;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div#anfahrt_img {
        max-width: 100% !important;
        padding: 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div#map_canvas div#content {
        font-size: 3vw;
        line-height: 1.2; /* [KORR] War 1.2em */
        margin: 1em 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div#map_canvas div#content div#div_link2route {
        margin: .5em 0 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.tx-jpcarousel-pi1 {
        position: relative;
        top: .3em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.tx-jpcarousel-pi1 div.carouselContainer {
        width: 99%;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.tx-jpcarousel-pi1 div.carouselContainer div.carousel {
        position: relative;
        top: .7em;
        padding: 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.tx-jpcarousel-pi1 div.carouselContainer div.carousel div.caroufredsel_wrapper {
        width: 97% !important;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.tx-jpcarousel-pi1 div.carouselContainer div.carousel div.caroufredsel_wrapper ul.jpcarousel li {
        text-align: center;
    }

    html body div.ym-wrapper div.ym-wbox div#main div.ym-column div.ym-col1 div.ym-cbox div.tx-imagecycle-pi2 {
        display: none;
    }

    object[type*="flash"] {
        display: none;
    }

    #mailform {
        padding: 1em 0 0;
    }

    .csc-mailform-field label {
        padding-left: 0;
    }

    /* [HINWEIS] transform: scale(5) ergibt ca. 80×80px für eine Checkbox – prüfen ob beabsichtigt */
    form#mailform fieldset.csc-mailform div.csc-mailform-field input.csc-mailform-check {
        float: right;
        margin: 1em .5em 0 1em;
        transform: scale(5);
    }

    form#mailform fieldset.csc-mailform div.csc-mailform-field label[for="mailformBitte-um-Rueckruf"] {
        width: 16em !important;
    }

    div#main div.REboxRed div.REboxRedContent div.subcolumns div.c50r div.subcr div.csc-default form#mailform fieldset.csc-mailform div.csc-mailform-field textarea#mailformNachricht {
        float: right;
        margin: .5em 0;
        width: 70%;
    }

    div#main div.REboxRed div.REboxRedContent div.subcolumns div.c50r div.subcr div.csc-default form#mailform fieldset.csc-mailform div.csc-mailform-field label[for="mailformBitte_rufen_Sie_mich_zur_Termi"] {
        width: 88% !important;
        line-height: 1.5; /* [KORR] War 1.5em */
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50r div.subcr div.csc-default form#mailform fieldset.csc-mailform div.csc-mailform-field {
        max-width: 100%;
        clear: both;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50r div.subcr div.csc-default form#mailform fieldset.csc-mailform div.csc-mailform-field input#mailformname,
    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50r div.subcr div.csc-default form#mailform fieldset.csc-mailform div.csc-mailform-field input#mailformemail,
    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50r div.subcr div.csc-default form#mailform fieldset.csc-mailform div.csc-mailform-field input#mailformTelefon {
        float: right;
        margin: .5em 0;
        width: 70%;
        font-size: .8em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50r div.subcr div.csc-default form#mailform fieldset.csc-mailform div.csc-mailform-field label {
        float: left;
        font-size: .8em;
        line-height: 1em;
        width: 5em;
        margin: .5em 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50r div.subcr div.csc-default form#mailform fieldset.csc-mailform div.csc-mailform-field input#mailformformtype_mail.csc-mailform-submit {
        background: #005ca9;
        border-radius: .5em;
        color: #000;
        cursor: pointer;
        display: block;
        font-size: .9em;
        font-weight: 700;
        margin: .5em 0;
        padding: .7em .5em;
        text-align: center;
        text-transform: uppercase;
        border: none;
        font-family: Verdana, Arial, Helvetica, sans-serif;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div#small.REboxRed div.REboxRedContent div.csc-default div form[name="tt_address_form"] {
        font-size: 1.5em;
        line-height: 1.5; /* [KORR] War 1.5em */
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div#small.REboxRed div.REboxRedContent div.csc-default div form[name="tt_address_form"] input[type="text"] {
        width: 20em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div#small.REboxRed div.REboxRedContent div.csc-default div form[name="tt_address_form"] input[type="submit"] {
        background: #005ca9;
        border-radius: .5em;
        color: #000;
        cursor: pointer;
        display: block;
        font-size: 1.2em;
        font-weight: 700;
        margin: .5em 0;
        padding: .7em .5em;
        text-align: center;
        text-transform: uppercase;
        border: none;
        font-family: Verdana, Arial, Helvetica, sans-serif;
    }

    div#main div.REboxRed div.REboxRedContent div.subcolumns div.c50l div.subcl table.tbl_worktime td {
        padding: 0;
    }

    div#main div.REboxRed div.REboxRedContent div.subcolumns div.c50l div.subcl table.tbl_worktime caption {
        font-variant: normal;
        text-align: left;
        line-height: 1.5; /* [KORR] War 1.5em */
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50l div.subcl table.tbl_worktime {
        font-size: 3.5vw;
        margin: 1em 0;
        border: none;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50l div.subcl div.csc-default div.csc-default p#p_mail_title.bodytext {
        font-style: normal;
        line-height: 1.5; /* [KORR] War 1.5em */
        margin: 1.5em 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent p#p_address {
        font-style: normal;
        line-height: 1.5; /* [KORR] War 1.5em */
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50l div.subcl div.csc-default div.csc-default h2 {
        color: #000 !important;
        font-size: .5em;
        font-weight: 700;
        line-height: 1em;
        margin: 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50l div.subcl div.csc-default div.csc-default h6 {
        font-size: 1em;
        font-weight: 400;
        padding-top: 1em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50l div.subcl div.csc-default div.csc-default h6 a.mail {
        font-size: .6em;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.subcolumns div.c50l div.subcl div.csc-default div.csc-default div.csc-header h4 {
        font-size: 1em;
        margin: 1em 0 0;
    }

    div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap label,
    div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_textarea label.powermail_label {
        width: 100%;
        float: left;
    }

    div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap input.powermail_input,
    div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_select select.powermail_select,
    div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_textarea textarea.powermail_textarea {
        width: 100%;
        box-sizing: border-box;
    }

    div.REboxRed div.REboxRedContent div.subcolumns div.tx-powermail form.powermail_form fieldset.powermail_fieldset div.powermail_fieldwrap_check fieldset div.powermail_check_outer div.powermail_check_inner label {
        width: 92%;
        line-height: 1.5; /* [KORR] War 1.5em */
        float: none;
    }

    legend {
        line-height: 1.5; /* [KORR] War 1.5em */
    }

    div.tx-nncontactwithcaptcha-pi1,
    div.tx-nncontactwithcaptcha-pi1 label {
        font-size: 3.5vw;
    }

    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_1 {
        float: left;
        margin: 0 1em 0 0;
        width: 30%;
    }

    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_2,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_3,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_7 {
        clear: left;
        float: left;
        margin: 1.1em 1em 0 0;
        width: 30%;
    }

    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_4,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_8 {
        float: left;
        line-height: 2em;
        margin-left: 1em;
        width: 83%;
    }

    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_5 {
        clear: left;
        float: left;
        margin: 1em 1em 0 0;
        width: 30%;
    }

    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form label#label_6 {
        clear: left;
        float: left;
        margin: 1.2em 1em 0 0;
    }

    /* [OPT] Gemeinsame Basis für responsive Kontaktformular-Felder konsolidiert (vorher zwei getrennte Regeln) */
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_1,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_2,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_3,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_7,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form textarea#input_5,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_6 {
        background: linear-gradient(to top, #dbdbdb 0%, #f5f5f5 60%, #fefefe 100%);
        border: 1px solid #b7b7b7;
        border-radius: .2em;
        box-shadow: 2px 2px 2px rgba(0,0,0,.2) inset;
        display: inline-block;
        font-size: 3.5vw;
        outline: none;
        padding-left: 1em;
        width: 62%;
        box-sizing: border-box;
    }

    /* Felder ab dem zweiten: oberer Abstand */
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_2,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_3,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_7,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form textarea#input_5,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_6 {
        margin: 1em 0 0;
    }

    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_4,
    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input#input_8 {
        background: linear-gradient(to top, #dbdbdb 0%, #f5f5f5 60%, #fefefe 100%);
        border: 1px solid #b7b7b7;
        transform: scale(2.5);
        margin: 1em 1em 0;
        float: left;
    }

    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input[type="submit"] {
        background: linear-gradient(to top, #b0b0b0 0%, #575757 60%, #888 100%);
        border: 1px solid #b7b7b7;
        border-radius: .8em;
        box-shadow: 1px 1px 2px rgba(0,0,0,.8);
        color: #fff;
        display: inline-block;
        margin: 1em .5em 1em 60%;
        outline: none;
        padding: .2em;
        text-align: center;
        width: 40%;
        font-size: 4vw;
    }

    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form input[type="submit"]:hover {
        background: linear-gradient(to top, #888 0%, #575757 60%, #b0b0b0 100%);
    }

    div.tx-nncontactwithcaptcha-pi1 div.div_contact_form form a#reload {
        font-size: 3.5vw;
        line-height: 1.5; /* [KORR] War 1.5em */
        margin: 1em 1em 0 0;
        padding-left: 0;
    }

    img#img_contact_captcha {
        border: 1px solid transparent;
        border-radius: .6em;
        margin: 1.5em 0 0;
        width: 62%;
    }

    div.tx-nnhureminder-pi1 div.div_hu_form form label#label_8 {
        float: left;
        font-size: 1.5em;
        line-height: 1.4; /* [KORR] War 1.4em */
        margin: 1.5em 0 1.5em 1.5em !important;
        width: 71%;
    }

    div.tx-nnhureminder-pi1,
    div.tx-nnhureminder-pi1 label,
    div.tx-nnhureminder-pi1 input,
    div.tx-nnhureminder-pi1 select,
    div.tx-nnhureminder-pi1 option,
    div.tx-nnhureminder-pi1 a {
        font-size: 3.5vw !important;
    }

    div#nn_breadcrumb {
        display: none;
    }

    #nav2top,
    #nav2top:hover,
    #nav2top:active,
    #nav2top:focus {
        display: table-cell;
        width: 100%;
        height: 100%;
        border-radius: .5em .5em 0 0;
        background: none;
    }

    .div_nav2top {
        background-color: #005ca9;
        background-image: url(/uploads/pics/icon_arrow_down.png);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: 66% auto;
        border-radius: 0 0 .4em .4em;
        bottom: 0;
        color: #ffd100;
        cursor: pointer;
        display: table;
        height: 4em;
        margin: 0;
        opacity: .8;
        position: fixed;
        right: 0;
        text-align: center;
        width: 4em;
        z-index: 110;
        transform: rotate(180deg);
    }

    .div_nav2top img {
        width: .7em;
        height: auto;
        margin-top: .75em;
    }

    div#div_banner div.div_bannerClose {
        line-height: 4em;
    }

    #footer {
        background: #ddd;
        color: #333;
        padding: 3em 0 1em;
        max-width: 100%;
        width: 100%;
        height: auto;
        margin: .5em 0 0;
    }

    #footer .csc-default {
        float: none;
        padding: 1em;
        margin: 0;
        width: 100%;
        font-size: 2em;
        box-sizing: border-box;
    }

    #footer a {
        color: #333;
        font-size: .8em;
    }

    #footer .csc-textpic-imagewrap {
        height: auto;
    }

    #footerbanner {
        text-align: center;
        margin: 4em 0 0;
    }

    div#footer div.csc-default div.csc-textpic div.csc-textpic-imagewrap img {
        margin: 0 auto .1em;
        height: auto;
        max-width: 10em;
    }

    div#footer div.csc-default div.csc-textpic div.csc-textpic-text p.bodytext {
        font-size: .9em;
        line-height: 1em;
        margin: 0;
    }

    div#footer div#footerbanner a img {
        width: 80%;
        height: auto;
    }

    body div#superbgimage,
    #superbgimage {
        display: none !important;
    }

    .serviceBox_ie8 {
        box-sizing: border-box;
        width: 100%;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-default div.csc-textpic div.csc-textpic-imagewrap a img {
        margin: 1em 0 0;
    }

    div#main div.ym-column div.ym-col1 div.ym-cbox div.csc-default div.REboxRed div.REboxRedContent div.csc-default div.csc-default div.csc-textpic div.csc-textpic-imagewrap {
        float: none;
    }

    .tx-nnnfp-pi1 {
        margin: 1em 0;
    }

    div.tx-nnnfp-pi1 div.csc-default:last-child hr.hr_newstrenner {
        display: none;
    }
}


/* =============================================================================
   11. RESPONSIVE (max-width: 460px / 350px)
============================================================================= */

@media only screen and (max-width: 460px) {
    .video-js {
        width: 350px !important;
        height: 235px !important;
    }
}

@media only screen and (max-width: 350px) {
    .video-js {
        width: 300px !important;
        height: 200px !important;
    }
}
