/* 7.6er Template Welltec.css */

/* normalize.css v3.0.3 expected! https://github.com/necolas/normalize.css/blob/3.0.3/normalize.css */

@media all {
    /* dummy query */
    html {
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    html {
        font-size: 1rem;
    }
    *,
    *:before,
    *:after {
        -moz-box-sizing: inherit;
        box-sizing: inherit;
    }
    html[lang="de"] q {
        quotes: "\201E""\201C""\2019""\201A";
    }
    figure {
        margin: 0;
    }
    .float-right {
        float: right;
    }
    figure img {
        display: block;
    }
    .sidebar figure a,
    .content figure a {
        position: relative;
    }
    .sidebar figure a::after,
    .content figure a::after {
        display: block;
        content: "";
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        position: absolute;
        z-index: 20;
        box-shadow: 0 0 2px rgba(0, 0, 0, 0.4) inset;
    }
    img {
        max-width: 100%;
        height: auto;
    }
    .ie8 img {
        width: auto;
    }
}

/* helper classes */

@media all {
    .clear:before,
    .clear:after {
        display: table;
        content: "";
    }
    .clear:after {
        clear: both;
    }
    a[class^="gfx-"]:before,
    a[class*=" gfx-"]:before,
    a[class^="gfx-"]:after,
    a[class*=" gfx-"]:after,
    a[class^="icon-"]:before,
    a[class*=" icon-"]:before,
    a[class^="icon-"]:after,
    a[class*=" icon-"]:after {
        text-decoration: none;
    }
    .ir {
        background-color: transparent;
        border: 0;
        overflow: hidden;
    }
    .ir:before {
        content: "";
        display: block;
        width: 0;
        height: 100%;
    }
    .sr-hint {
        width: 1px;
        clip: rect(1px, 1px, 1px, 1px);
        overflow: hidden;
        position: absolute !important;
    }
    .skip-link:focus > .sr-hint,
    .skip-link:focus {
        position: fixed !important;
        z-index: 100;
        width: auto;
        top: 50%;
        left: 50%;
        clip: auto;
        padding: 2em;
        border: 2px solid rgb(51, 51, 51);
        color: rgb(51, 51, 51);
        background-color: rgb(255, 255, 255);
        font-weight: bold;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
    .relative {
        position: relative;
    }
    .print-only {
        display: none;
    }
    .menu,
    .menu li {
        list-style: none;
        line-height: 1;
        margin: 0;
        padding: 0;
    }
    .menu .item {
        display: block;
        text-decoration: none;
    }
    .menu-horizontal li {
        float: left;
    }
    .menu-horizontal li + li {
        margin-left: 0.5em;
    }
    /* flexbox layout */
    .flexbox {
        display: -webkit-box;
        /* OLD Safari,  iOS, Android browser, older WebKit browsers.  */
        display: -moz-box;
        /* OLD Firefox (buggy) */
        display: -ms-flexbox;
        /* MID IE 10 */
        display: -webkit-flex;
        /* NEW Chrome 21+ */
        display: flex;
        /* NEW Opera 12.1, Firefox 22+ */
        -webkit-box-orient: vertical;
        /* old */
        -moz-box-orient: vertical;
        box-orient: vertical;
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-flex-flow: column;
        -moz-flex-flow: column;
        -ms-flex-flow: column;
        /* IE10? */
        flex-flow: column;
        /* new */
    }
    .flexbox-order-1 {
        -webkit-box-ordinal-group: 1;
        /* old spec; must be positive */
        -moz-box-ordinal-group: 1;
        -ms-flex-order: 1;
        /* IE 10 syntax */
        -webkit-order: 1;
        order: 1;
        /* new */
    }
    .flexbox-order-2 {
        -webkit-box-ordinal-group: 2;
        /* old spec; must be positive */
        -moz-box-ordinal-group: 2;
        -ms-flex-order: 2;
        /* IE 10 syntax */
        -webkit-order: 2;
        order: 2;
        /* new */
    }
    .flexbox-order-3 {
        -webkit-box-ordinal-group: 3;
        /* old spec, must be positive */
        -moz-box-ordinal-group: 3;
        -ms-flex-order: 3;
        /* IE 10 syntax */
        -webkit-order: 3;
        order: 3;
        /* new */
    }
}

/* Typography (mobile-first) */

@media all {
    body,
    input,
    select,
    textarea {
        font-family: "Myriad Pro Regular", "Myriad Pro", Myriad, myriad-pro,
            "PT Sans", "Open Sans", Lucida Sans, Segoe UI, Calibri, sans serif;
        font-size: 100%;
        font-weight: 300;
        line-height: 1.5;
    }
    b,
    strong {
        font-weight: 600;
    }
    a {
        color: rgb(0, 139, 210);
        text-decoration: none;
    }
    .mainnav a {
        color: rgb(255, 255, 255);
    }
    .icon-navigation a {
        color: rgb(255, 255, 255);
    }
    h1,
    h2,
    h3,
    h4,
    h5 {
        margin: 0;
        line-height: 1.2;
        font-weight: 300;
        /*text-transform: uppercase;*/
    }
    h1,
    h2,
    h3,
    h4 {
        font-size: 1.25em;
    }
    h1,
    h2 {
        color: rgb(0, 42, 88);
    }
    .footer-content h1,
    .footer-content h2,
    .footer-content h3,
    .footer-content h4,
    .footer-content h5,
    .footer-content h6 {
        color: rgb(255, 255, 255);
    }
    .footer-content h2 {
        font-size: 1.25em;
        font-weight: lighter;
        text-transform: uppercase;
    }
    .footer-content .ce-ruler-after {
        margin-bottom: 1em;
        padding-bottom: 0;
        border-bottom: 1px solid rgb(255, 255, 255);
    }
    .footer-content .ce-header {
        margin-bottom: 0;
    }
    /* margins */
    .ce-header,
    .news,
    .ce-teaserlink-outer,
    .Tx-Formhandler,
    .cbQuickGoogleMap,
    table,
    p,
    ul,
    ol,
    hr {
        margin: 0 0 1em;
    }
    .ce-header-subheader {
        margin-top: 0.5em;
    }
    .ce-header-date {
        margin: 0.5em 0 0;
    }
    ul ul,
    ul ol,
    ol ul,
    ol ol {
        margin: 0;
    }
    /* text flow */
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 p,
    li,
    a,
    figcaption {
        overflow-wrap: break-word;
        word-wrap: break-word;
        -webkit-hyphens: auto;
        -moz-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
    }
    p {
        word-wrap: break-word;
    }
    .ce-div {
        border: none;
        position: relative;
    }
    .news-related-wrap ul {
        margin-left: 0;
        padding-left: 0;
    }
    .news-related-wrap ul li {
        list-style-type: none;
    }
    .news-related-wrap ul li a {
        padding-left: 0;
    }
    .news-related-wrap ul li a::before {
        display: none;
    }
    .news-list-author {
        font-size: 1.375em;
        line-height: 1.2;
    }
}

/* typo */

/* hover effects */

@media all {
    a:focus,
    a:hover {
        color: rgb(0, 42, 88);
    }
    .rc-nav-enabled .item:focus,
    .rc-nav-enabled .item:hover {
        color: inherit;
        background: inherit;
    }
    .topnav .item:focus,
    .topnav .item:hover,
    .topnav li.active .item,
    .topnav li.current .item {
        color: rgb(255, 255, 255);
        background-color: rgb(0, 42, 88);
    }
    a,
    .flexslider figure,
    .ce-teaserlink-outer .ce-media,
    .ce-teaserlink-outer .ce-media-caption,
    .ce-teaserlink-link,
    /*.ce-media a,*/
    .ce-teaserlink-outer img,
    .ce-media img {
        overflow: hidden;
        transition: all 0.25s ease-in-out 0s;
    }
    .ce-teaserlink-outer .ce-media-caption {
        position: relative;
    }
    .ce-teaserlink-outer:hover .ce-media-caption {
        background: rgb(0, 139, 210);
    }
    .ce-media a:hover {
        opacity: 0.75;
    }
}

/* icons & gfx */

@media all {
    /* link icon */
    .ce-element a {
        position: relative;
        padding-left: 0.5em;
    }
    .ce-element a::before {
        content: "";
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/link-icon-dark-blue.png");
        background-position: center top 2px;
        background-repeat: no-repeat;
        position: absolute;
        top: 0.2em;
        left: 0;
        bottom: 0;
        width: 6px;
        height: 100%;
    }
    .footer .ce-element a::before {
        background-position: center top 6px;
    }
    .ce-element.ce-grid-element .rc-head a {
        padding-left: 0;
    }
    .ce-element.ce-grid-element .rc-head a::before {
        display: none;
    }
    .footer-content a {
        color: rgb(252, 252, 252);
    }
    .footer-content a:hover {
        color: rgb(0, 42, 88);
    }
    .footer-content .ce-element a::before {
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/link-icon-white.png");
    }
    .footer-menu {
        padding: 2em 0;
        text-transform: uppercase;
    }
    .footer-icon-youtube,
    .footer-icon-twitter,
    .footer-icon-linkedin {
        display: block;
        width: 42px;
        height: 32px;
        float: left;
    }
    .footer-icon-linkedin {
        margin-right: 1em;
    }
    .footer-menu a {
        color: rgb(68, 68, 68);
    }
    .footer-menu a:hover {
        color: rgb(0, 139, 210);
    }
    .footer-credits {
        padding: 0.75em 0;
        color: rgb(151, 151, 151);
        font-size: 60%;
        text-align: center;
        text-transform: uppercase;
    }
    .footer-credits p {
        margin: 0;
    }
    /* no link icon ... */
    .news-header a,
    a.ce-teaserlink-link,
    .ce-media > a {
        padding: 0;
    }
    .news-header a:before,
    a.ce-teaserlink-link:before,
    .ce-media > a:before {
        content: none;
    }
    .icon {
        position: relative;
        display: inline-block;
        width: 2.5em;
        height: 2.5em;
        vertical-align: middle;
    }
    .icon-home:before {
        content: "";
        position: absolute;
        display: inline-block;
        margin-left: 0.675em;
        border: 0.1875em solid currentColor;
        border-top-width: 0;
        width: 1.125em;
        height: 0.625em;
        margin-top: 1.35em;
    }
    .icon-home:after {
        content: "";
        display: block;
        position: absolute;
        top: 0.75em;
        left: 0.625em;
        border: 0.1875em solid currentColor;
        border-right-width: 0;
        border-bottom-width: 0;
        width: 1.225em;
        height: 1.225em;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .icon-totop:before,
    .icon-totop:after {
        content: "";
        display: block;
        position: absolute;
        top: 1em;
        left: 0.875em;
        border: 0.125em solid currentColor;
        border-right-width: 0;
        border-bottom-width: 0;
        width: 0.625em;
        height: 0.625em;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .icon-totop:after {
        top: 1.3em;
    }
    .icon-search {
        position: relative;
        display: inline-block;
        width: 2.5em;
        height: 2.5em;
        text-align: center;
    }
    .icon-search:before {
        content: "";
        margin-top: 1.55em;
        position: absolute;
        right: 0.45em;
        width: 0.75em;
        height: 0.25em;
        background-color: currentColor;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        display: inline-block;
    }
    .icon-search:after {
        content: "";
        border: 0.1875em solid currentColor;
        position: absolute;
        top: 0.45em;
        left: 0.45em;
        display: block;
        width: 1.25em;
        height: 1.25em;
        border-radius: 50%;
    }
    .search-button .icon-search:after {
        border-width: 0.25em;
    }
    .search-button:hover .icon-search:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        border-color: currentColor;
        border-style: solid;
        border-width: 0.25em 0.25em 0 0;
        width: 1em;
        height: 1em;
        -webkit-transform: rotate(45deg) translateY(-50%);
        -ms-transform: rotate(45deg) translateY(-50%);
        transform: rotate(45deg) translateY(-50%);
        margin: 0;
        right: auto;
        background-color: transparent;
    }
    .search-button:hover .icon-search:after {
        content: none;
    }
    .icon-close:before,
    .icon-close:after {
        content: "";
        position: absolute;
        top: 1.125em;
        left: 0.4em;
        right: 0.4em;
        background: currentColor;
        display: block;
        height: 0.25em;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .icon-close:after {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}

/* T3 RTE & ce options*/

@media all {
    /* rte */
    .center,
    .rte-align-center {
        text-align: center;
    }
    .rte-align-left {
        text-align: left;
    }
    .rte-align-right {
        text-align: right;
    }
    .rte-align-justify {
        text-align: justify;
    }
    /* sitemap menu */
    .ce-menu {
        list-style: none;
        padding: 0;
    }
    .ce-menu a {
        display: block;
        font-weight: 400;
        text-decoration: none;
        padding: 0 0.25em 0.25em 1em;
    }
    .ce-menu a::before {
        left: 0.125em;
    }
    /* teaserlink aka fatlink */
    .ce-teaserlink-outer {
        position: relative;
    }
    .ce-teaserlink-inner > .ce-textpic.ce-above > .ce-gallery > .ce-row,
    .ce-teaserlink-inner > .ce-textpic.ce-below > .ce-gallery > .ce-row {
        margin-bottom: 0;
    }
    .ce-teaserlink-inner > .ce-textpic.ce-above > .ce-gallery ~ .ce-bodytext {
        background-color: rgb(239, 239, 239);
        padding: 1em 1em 0.1em 1em;
        border-left: 1px solid rgb(228, 228, 228);
        border-right: 1px solid rgb(228, 228, 228);
        border-bottom: 1px solid rgb(228, 228, 228);
    }
    .ce-teaserlink-outer:hover
        .ce-teaserlink-inner
        > .ce-textpic.ce-above
        > .ce-gallery
        ~ .ce-bodytext {
        border-left: 1px solid rgb(0, 139, 210);
        border-right: 1px solid rgb(0, 139, 210);
        border-bottom: 1px solid rgb(0, 139, 210);
        transition: all 0.25s ease-in-out 0s;
    }
    .main-content
        .ce-teaserlink-inner
        > .ce-textpic.ce-above
        > .ce-gallery
        ~ .ce-bodytext {
        min-height: 340px;
    }
    /* every link inside (there should not be one...) */
    .ce-teaserlink-outer a {
        z-index: 2;
        position: relative;
    }
    /* the fatlink itself */
    .ce-teaserlink-outer .ce-teaserlink-link {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1;
    }
    .ce-element {
        margin-bottom: 1em;
    }
    /*.ce-grid-element,*/
    .stage .ce-element,
    .ce-shortcut-element {
        margin-bottom: 0;
    }
    .ce-ruler-before {
        border-top: 1px solid rgb(0, 0, 0);
        padding-top: 2em;
    }
    .ce-ruler-after {
        padding-bottom: 1em;
        border-bottom: 1px solid rgb(0, 0, 0);
        margin-bottom: 2em;
    }
    .ce-grid-element.ce-ruler-after {
        padding-bottom: 0;
    }
}

/* T3 image rendering */

@media all {
    /* lazyloading */
    img[data-sizes="auto"] {
        display: block;
        width: 100%;
        height: 1px;
        opacity: 0;
    }
    img[data-sizes="auto"].lazyloaded {
        height: auto !important;
        padding-bottom: 0 !important;
        opacity: 1;
        transition: all ease 0.2s;
    }
    .no-js img.lazyload {
        display: none !important;
    }
    .ce-gallery .ce-media,
    .ce-gallery .ce-column,
    .ce-gallery figcaption,
    .ce-gallery a,
    .ce-gallery img {
        display: block;
        max-width: 100%;
    }
    /* video */
    .ce-embed {
        position: relative;
        height: 0;
    }
    .ce-embed > * {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        overflow: hidden;
    }
    .ce-embed-default {
        padding-bottom: 75%;
    }
    .ce-embed-ratio-4-3 {
        padding-bottom: 75%;
    }
    .ce-embed-ratio-3-2 {
        padding-bottom: 66.6667%;
    }
    .ce-embed-ratio-16-10 {
        padding-bottom: 62.5%;
    }
    .ce-embed-ratio-16-9 {
        padding-bottom: 56.25%;
    }
    /* fix ul/ol bullets collapsing */
    .ce-intext.ce-left ol,
    .ce-intext.ce-left ul {
        overflow: auto;
    }
    /* rendering xsmall/small */
    /* .ce-column { width: 100%; max-width: 100%; } */
    .ce-row {
        margin: 0 0 1em;
    }
    .ce-column {
        width: 100%;
        padding: 0;
        margin-bottom: 1em;
    }
    .ce-column:last-child {
        margin-bottom: 0;
    }
    .ce-column.ce-column-width-set {
        width: auto;
    }
}

/* T3 Layouts */

@media all {
    /* layout 1 - invers */
    .ce-layout-1-inner {
        color: rgb(255, 255, 255);
        background: rgb(0, 0, 0);
        padding: 0 1em;
        margin-bottom: 2em;
        font-size: 0.9375em;
    }
    .ce-layout-1 .ce-element {
        margin-bottom: 0;
    }
    .ce-layout-1 .ce-gallery {
        margin: 0 -1em;
    }
    .ce-layout-1-inner > .ce-header,
    .ce-layout-1 .ce-element:first-child > .ce-header {
        margin-top: 1em;
    }
    .ce-layout-1-inner a {
        color: rgb(255, 255, 255);
    }
    .ce-layout-1 h3 {
        font-size: 1.133em;
    }

    /* box */
    .ce-layout-2-outer {
        border-radius: 1rem;
        overflow: hidden;
        color: rgb(0, 42, 88);
        box-shadow: 1px 1px 1em rgba(0,0,0,0.75);
    }

    .ce-layout-2 .ce-header {
        color:  rgb(255,255,255);
        background-color: rgb(0, 42, 88);
    }

    .ce-layout-2 .ce-header > * {
        color: inherit;
        background-color: transparent;
        padding: 0.625rem 1.25rem;
    }

    .ce-layout-2 .ce-textpic {
        padding: 0 1.25rem 0.625rem;
        color: inherit;
    }

}

/* T3 gridelements */

@media all {
}

/* lightbox, googlemaps, flexslider etc. */

@media all {
    /* lightbox link */
    a.lightbox {
        position: relative;
    }
    a.lightbox:before {
        content: "+";
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        left: auto;
        bottom: auto;
        font-size: 2em;
        width: 1.25em;
        height: 1.25em;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        border: none;
        line-height: 1.25;
        text-align: center;
        color: rgb(255, 255, 255);
        background: rgba(0, 42, 88, 0.8);
    }
    /* lightbox additional styles */
    .mfp-content {
        border: 6px solid white;
    }
    img.mfp-img {
        padding: 0;
    }
    .mfp-bottom-bar {
        padding: 0.5em;
        margin: 0;
        bottom: 0;
        top: auto;
        background: rgb(0, 0, 0);
        background: rgba(0, 0, 0, 0.5);
    }
    .mfp-counter {
        top: auto;
        right: 0.5em;
        bottom: 0.5em;
    }
    .mfp-image-holder .mfp-close,
    .mfp-iframe-holder .mfp-close {
        color: white;
        background-color: black;
        border: 2px solid white;
        box-shadow: 0 0 4px black;
        opacity: 1;
        top: -14px;
        right: -14px;
        width: 22px;
        height: 22px;
        font-size: 21px;
        line-height: 1;
        font-weight: bold;
        text-align: center;
        padding: 0;
        border-radius: 100%;
    }
    /* fix google maps */
    .cbQuickGoogleMap img {
        max-width: none;
    }
    .cbQuickGoogleMap > div {
        /*position: relative;*/
        /*height: 0  !important;*/
        /*padding-bottom: 56%;*/
        max-height: 50vh !important;
    }
    .rc-small .cbQuickGoogleMap {
        margin: 0 1.5em 1.5em;
    }
    /* flexslider */
    .flex-container a:hover,
    .flex-slider a:hover {
        outline: none;
    }
    .slides,
    .slides > li,
    .flex-control-nav,
    .flex-direction-nav {
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .flex-pauseplay span {
        text-transform: capitalize;
    }
    .flexslider {
        margin: 0;
        padding: 0;
    }
    .flexslider .slides > li {
        display: none;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }
    .flexslider .slides img {
        width: 100%;
        display: block;
    }
    .flexslider .slides::after {
        content: "";
        display: block;
        clear: both;
        visibility: hidden;
        line-height: 0;
        height: 0;
    }
    .no-js .flexslider .slides > li:first-child {
        display: block;
    }
}

/* flexslider theme */

@media all {
    .flexslider {
        position: relative;
    }
    /* kind of preload */
    .no-js .flexslider > noscript *,
    .flexslider > img.lazyloaded {
        display: none;
    }
    /* padded box to avoid jumpiness with lazyimages */
    .stage .flexslider {
        position: relative;
        height: 0;
        /*padding-bottom: 43.598%;*/
        border: none;
    }
    .stage .flex-viewport {
        position: absolute !important;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }
    /* shadows */
    .flex-viewport {
        position: relative;
    }
    /*.flex-viewport::before,*/
    .flex-viewport::after {
        content: "";
        position: absolute;
        z-index: 1;
        bottom: 100%;
        right: 0;
        left: 0;
        height: 2em;
        box-shadow: 0 0 2em rgba(0, 0, 0, 0.25);
        pointer-events: none;
    }
    .flex-viewport::after {
        top: 100%;
        bottom: auto;
    }
    /* .flexslider-slide, */
    .flexslider-slide-inner {
        position: relative;
        -webkit-transform: translateZ(0);
        /*  Chrome flashs images without :-( */
        transform: translateZ(0);
    }
    .flexslider-slide-caption {
        position: absolute;
        margin: 0 auto;
        bottom: 0;
        left: 0;
        right: 0;
        font-size: 1em;
        line-height: 1;
        color: rgb(255, 255, 255);
        text-shadow: 0 0 0.125em rgba(0, 0, 0, 0.5);
        background: rgba(0, 139, 210, 0.7);
        height: 0;
    }
    .flexslider-slide-caption-body {
        font-size: 0.8em;
        padding: 0.5em 3em 0.5em 1em;
        position: relative;
        height: 100%;
    }
    .flexslider-slide-caption-body::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/flex-arrow-right.png");
        height: 100%;
        width: 48px;
        background-repeat: no-repeat;
        background-position: center;
    }
    .flexslider-slide-caption p {
        margin-bottom: 0;
    }
    .flexslider-slide-caption p:last-child {
        margin-bottom: 0;
    }
    .flexslider-slide-caption-title {
        font-size: 1.2em;
    }
    /* navigations */
    .flex-direction-nav a::before,
    .flex-control-nav a::before {
        content: none;
    }
    /* control dots */
    .flex-control-nav {
        position: absolute;
        left: 0;
        right: 0;
        pointer-events: none;
        padding: 0 1em;
    }
    .flex-control-nav a {
        pointer-events: all;
        display: inline-block;
        height: 0;
        width: 0;
        padding: 0.3em;
        margin: 0.2em;
        color: rgba(0, 0, 0, 0);
        background: rgba(255, 255, 255, 0.8);
        overflow: hidden;
    }
    .flex-control-nav li {
        display: inline-block;
    }
    .flex-control-nav {
        line-height: 1;
    }
    .flex-control-nav .flex-active {
        background: rgba(0, 139, 210, 0.8);
    }
    .flex-control-nav a:hover {
        background: white;
        cursor: pointer;
    }
}

/* form controls */

@media all {
    fieldset {
        border: 0;
        margin: 0;
        padding: 0;
    }
    legend {
        font-weight: 500;
    }
    label,
    input,
    select,
    textarea {
        display: inline-block;
        width: 100%;
    }
    .form-error {
        color: rgb(221, 0, 0);
    }
    .form-captcha-getnew,
    select,
    input,
    textarea {
        font-weight: 300;
        border: 1px solid rgb(210, 210, 210);
    }
    select {
        padding: 0.25em 0;
    }
    input[type="image"],
    input[type="submit"] {
        border: none;
    }
    input[type="checkbox"],
    input[type="radio"] {
        width: auto;
    }
    .form-fieldset .ce-grid > .ce-col {
        padding: 0 1em;
    }
    .form-row,
    .form-submit,
    .form-fieldset {
        margin-top: 1.25em;
    }
    .form-required .form-required-marker {
        color: rgb(166, 28, 38);
    }
    .form-field-row {
        margin-bottom: 0.5em;
    }
    .form-infotext {
        margin: 0 0 0.25em;
        color: rgb(153, 153, 153);
    }
    .form-captcha-audio {
        float: left;
        width: 24px;
    }
    .form-captcha-input {
        float: left;
        margin-left: 0.5em;
        width: 5em;
        width: calc(100% - 0.5em - 24px);
    }
    .form-captcha-getnew {
        width: 100%;
        margin: 0.25em 0 0.5em;
        padding: 0.714em;
    }
    .form-captcha-getnew img {
        width: 100%;
    }
    .btn {
        font-size: 1em;
    }
    .btn-primary {
        background-color: rgb(0, 138, 211);
        border-color: rgb(0, 138, 211);
    }
    .btn-primary:focus,
    .btn-primary:hover {
        background-color: rgb(0, 138, 211);
        border-color: rgb(0, 138, 211);
    }
    input[type="submit"] {
        color: rgb(255, 255, 255);
        background: rgb(166, 28, 38);
        padding: 0.25em 1em;
    }
    input[type="text"]:required:valid,
    input[type="email"]:required:valid {
        background: url("../img/bg-form-valid.png") right center no-repeat;
    }
    #freecapfield:valid {
        background: none;
    }
    input[type="text"]:invalid,
    input[type="email"]:invalid {
        background: url("../img/bg-form-invalid.png") right center no-repeat;
    }
}

/* search */

@media all {
    .searchbox-inner {
        border: 1px solid rgb(240, 240, 240);
        padding: 0 2em 0 0;
    }
    .searchbox-inner .search-word {
        width: 100%;
        border: none;
        margin: 0;
        padding: 0.5em 1em;
        background: none;
    }
    .search-button {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        padding: 0 0.25em;
        border: 0;
        background: rgba(0, 0, 0, 0);
    }
    .search-button .icon {
        font-size: 0.55em;
        margin-bottom: 2px;
    }
    /* search result */
    #kesearch_num_results {
        font-weight: 500;
        margin-bottom: 1em;
    }
    .tx_kesearch-pi1 .result-list-item {
        margin-bottom: 1em;
    }
    #kesearch_results .result-list-item + .result-list-item {
        margin-top: 2em;
    }
    .result-list-item p {
        margin: 1em 0 0 0;
    }
    .kesearch_pagebrowser ul {
        padding-left: 0;
    }
    .kesearch_pagebrowser li {
        display: inline-block;
        min-width: 20px;
        min-height: 20px;
        margin-right: 10px;
        padding: 5px;
    }
    .kesearch_pagebrowser li a::before {
        display: none;
    }
    .kesearch_pagebrowser a + a {
        margin-left: 1em;
    }
}

/* breadcrumbs */

@media all {
    .bc-nav {
        padding-top: 1em;
    }
    .wrap-outer.page-content .bc-nav {
        display: none;
    }
    .bc-label {
        margin: 0 0.5em 0 0;
        line-height: 1;
        float: left;
    }
    .bc-path {
        display: inline;
    }
    .bc-path .item {
        display: inline-block;
        font-weight: normal;
        text-decoration: none;
    }
    .bc-path li {
        background-image: none !important;
        padding-left: 0 !important;
    }
    .bc-path li + li:before {
        content: ">";
        padding-left: 0.25em;
        padding-right: 0.25em;
    }
}

/* news */

@media all {
    .news-list {
        padding-bottom: 2em;
    }
    .news-more-link {
        font-weight: 400;
    }
    .news-list-item + .news-list-item {
        /*border-top: 1px solid rgb(201,201,201);*/
        padding-top: 1em;
    }
    .news-header h3 {
        color: rgb(51, 51, 51);
        font-size: 1.063em;
        font-weight: 700;
        line-height: 1.412;
        text-align: left;
    }
    .news-header h3 a {
        color: rgb(51, 51, 51);
    }
    .news-teaser {
        color: rgb(51, 51, 51);
        font-size: 1.063em;
        font-weight: 400;
        line-height: 1.529;
        text-align: left;
        background-color: rgb(239, 239, 239);
        padding: 1em 1em 0.1em 1em;
        border-top: 1px solid rgb(228, 228, 228);
        border-left: 1px solid rgb(228, 228, 228);
        border-right: 1px solid rgb(228, 228, 228);
        border-bottom: 1px solid rgb(228, 228, 228);
    }
    .news-single .news-teaser {
        margin-bottom: 1em;
    }
    .news-item:hover .news-teaser {
        border-top: 1px solid rgb(0, 139, 210);
        border-left: 1px solid rgb(0, 139, 210);
        border-right: 1px solid rgb(0, 139, 210);
        border-bottom: 1px solid rgb(0, 139, 210);
        transition: all 0.25s ease-in-out 0s;
    }
    .news-teaser.news-teaser-with-image,
    .news-item:hover .news-teaser.news-teaser-with-image {
        border-top: none;
    }
    /* Startseite Teaser (.news-layout-1)
     ------------------------------------------------------------------------ */
    .news-list-item-layout-1 .ce-news-text {
        background-color: rgb(239, 239, 239);
        padding: 1em 1em 0.1em 1em;
        border-left: 1px solid rgb(228, 228, 228);
        border-right: 1px solid rgb(228, 228, 228);
        border-bottom: 1px solid rgb(228, 228, 228);
        min-height: 295px;
    }
    .news-list-item-layout-1:hover .ce-news-text {
        border-left: 1px solid rgb(0, 139, 210);
        border-right: 1px solid rgb(0, 139, 210);
        border-bottom: 1px solid rgb(0, 139, 210);
    }
    /*  .news-list-item-layout-1 > .clear {
        min-height: 555px;
        background-color: rgb(239,239,239);
      }*/
    /*  .news-list-item-layout-1 > .clear {
        border-left: 1px solid rgb(228,228,228);
        border-right: 1px solid rgb(228,228,228);
        border-bottom: 1px solid rgb(228,228,228);
        border-top: 1px solid rgb(228,228,228);
      }*/
    /*  .news-list-item-layout-1:hover > .clear {
        border-left: 1px solid rgb(0,139,210);
        border-right: 1px solid rgb(0,139,210);
        border-bottom: 1px solid rgb(0,139,210);
        border-top: 1px solid rgb(0,139,210);
      }*/
    .ce-news-without-image .ce-news-text {
        border-top: 1px solid rgb(228, 228, 228);
    }
    .news-list-item-layout-1 .ce-news-image a {
        width: 100% !important;
    }
    .news-list-item-layout-2 .news-list-view-date {
        float: left;
    }
    .news-list-item-layout-2 p {
        margin-bottom: 0;
    }
}

/* pagination */

@media all {
    .pagination {
        margin-bottom: 0.9375rem;
    }
    .pagination .pagination-count {
        margin-bottom: 0;
    }
    .pagination ul {
        display: block;
        margin: 0 -0.3125rem;
        padding: 0;
    }
    .pagination li {
        display: block;
        float: left;
        padding: 0.3125rem;
    }
    .pagination span,
    .pagination a {
        display: inline-block;
        font-size: 75%;
        color: currentColor;
        text-decoration: none;
        text-align: center;
        line-height: 1;
        width: 1.75rem;
        padding: 0.4375rem 0;
        border: 1px solid currentColor;
        border-radius: 3px;
    }
    .pagination a:not(.fa)::before {
        content: none;
    }
    .pagination .fa {
        margin: 0;
        padding: 0;
    }
    .pagination .current {
        background: currentColor;
        background-clip: padding-box;
    }
    .pagination .current b {
        color: rgb(255, 255, 255);
    }
    .pagination .paginator-ellip {
        border: none;
        padding: 0;
        width: auto;
    }
}

/* rc-stuff functional styles */

@media all {
    /* rc-load */
    .rc-load-hide {
        display: none;
    }
    .rc-load-show {
        display: block;
    }
    .rc-load-success > .rc-hide-on-success {
        display: none;
    }
    /* rc-collapse */
    .rc-collapse-toggle {
        display: none;
    }
    .rc-collapse-enabled .rc-collapse-toggle {
        display: block;
    }
    .rc-collapse-enabled {
        width: 0;
        min-width: 50px;
        overflow: hidden;
        -webkit-transition: width 0.5s ease;
        -moz-transition: width 0.5s ease;
        -ms-transition: width 0.5s ease;
        -o-transition: width 0.5s ease;
        transition: width 0.5s ease;
    }
    .rc-collapse-enabled.rc-open {
        width: 100%;
    }
    /* rc-container */
    .rc-container-enabled,
    .rc-head .rc-html-orig,
    .rc-open .rc-show-closed,
    .rc-show-opened {
        display: none;
    }
    .rc-show-closed,
    .rc-open .rc-show-opened {
        display: block;
    }
    /* accordeon styles */
    header.ce-header.rc-head {
        background-color: rgb(0, 42, 88);
        color: #ffffff;
        border: 0 none transparent;
        position: relative;
        margin-bottom: 0;
        padding: 1.05em 1em 0.95em 1em;
        transition: background-color 0.25s ease-in-out 0s;
    }
    header.ce-header.rc-head.rc-open,
    header.ce-header.rc-head:hover {
        background-color: rgb(0, 139, 210);
    }
    header.ce-header.rc-head a:hover {
        color: #ffffff;
    }
    header.ce-header.rc-head::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/acc-icon-plus.png");
        height: 100%;
        width: 48px;
        background-repeat: no-repeat;
        background-position: center;
    }
    header.ce-header.rc-head.rc-open::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/acc-icon-minus.png");
        height: 100%;
        width: 48px;
        background-repeat: no-repeat;
        background-position: center;
    }
    header.ce-header.rc-head h2,
    header.ce-header.rc-head h3,
    header.ce-header.rc-head h4,
    header.ce-header.rc-head h5 {
        font-size: 1em;
    }
    .ce-grid-accordeon.rc-container {
        background-color: rgb(239, 239, 239);
        padding: 1em 1em 0.1em 1em;
        border-left: 1px solid rgb(228, 228, 228);
        border-right: 1px solid rgb(228, 228, 228);
        border-bottom: 1px solid rgb(228, 228, 228);
    }
    .rc-container-toggle {
        display: none;
    }
    .rc-container-toggle.rc-head {
        display: block;
    }
    /* rc-nav functional styles */
    .rc-nav-enabled .sub {
        display: none;
    }
    .rc-nav-enabled .hover > .sub {
        display: block;
    }
    .rc-nav-enabled li {
        position: relative;
    }
    .rc-nav-enabled .parent {
        position: relative;
        margin-right: 48px;
    }
    .rc-nav-enabled .rc-more {
        position: absolute;
        left: 100%;
        right: -48px;
        top: 0;
        bottom: 0px;
        cursor: pointer;
        z-index: 1;
    }
    .rc-more i {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
    /* rc-offcanvas */
    .rc-offcanvas-container {
        width: 100%;
        position: relative;
        overflow: hidden;
    }
    .rc-offcanvas-enabled {
        width: 100%;
        position: relative;
        left: 0;
    }
    .rc-offcanvas-toggle {
        display: none;
        -webkit-transition: left 250ms ease;
        -moz-transition: left 250ms ease;
        -o-transition: left 250ms ease;
        transition: left 250ms ease;
    }
    .rc-offcanvas-enabled .rc-offcanvas-toggle {
        display: block;
    }
    .rc-offcanvas-enabled .rc-offcanvas-center {
        float: left;
        width: 100%;
    }
    .rc-offcanvas-enabled .rc-offcanvas-right {
        width: 75%;
        position: absolute;
        left: 100%;
        top: 0;
        height: 100%;
        overflow: auto;
    }
    .rc-offcanvas-enabled.rc-open {
        -webkit-transform: translate(-75%, 0);
        /* android 2 */
        -ms-transform: translate(-75%, 0);
        /* ie9 */
        transform: translate(-75%, 0);
        -webkit-transform: translate3d(-75%, 0, 0);
        /* android 3-4 */
        transform: translate3d(-75%, 0, 0);
    }
    .rc-offcanvas-enabled {
        -webkit-transition: -webkit-transform 250ms ease;
        transition: transform 250ms ease;
    }
    .rc-offcanvas-enabled .rc-offcanvas-toggle {
        -webkit-transition: -webkit-transform 250ms ease;
        transition: transform 250ms ease;
    }
    .rc-open .offcanvas-toggle .icon-menu,
    .offcanvas-toggle .icon-cancel {
        display: none;
    }
    .rc-open .offcanvas-toggle .icon-cancel {
        display: inline-block;
    }
}

/* mobile mainnav + subnav */

@media all {
    /* toggle */
    .rc-link {
        display: block;
        text-decoration: none;
        color: currentColor;
        cursor: pointer;
    }
    .nav-toggle {
        float: right;
        line-height: 1;
        color: rgb(0, 0, 0);
    }
    .rc-open .nav-toggle .rc-link::after {
        content: "";
        position: absolute;
        z-index: 5;
        left: 0;
        top: 0;
        bottom: 0;
        width: 100%;
        background-color: rgba(0, 0, 0, 0.125);
    }
    .nav-toggle .rc-link {
        line-height: 2.5;
        padding: 0 0.625em;
    }
    .nav-toggle-text {
        color: currentColor;
        vertical-align: middle;
        margin-right: 0.625em;
        text-transform: uppercase;
    }
    .nav-icon-close,
    .nav-icon-menu {
        padding: 0.3125em 0;
        border-top: 0.3125em solid currentColor;
        border-bottom: 0.3125em solid currentColor;
        display: inline-block;
        width: 1.75em;
        vertical-align: middle;
        position: relative;
        z-index: 1;
    }
    .nav-icon-menu:before {
        content: "";
        background: currentColor;
        display: block;
        height: 0.3125em;
    }
    .nav-icon-close {
        border: none;
        top: -0.15em;
    }
    .nav-icon-close:before,
    .nav-icon-close:after {
        content: "";
        background: currentColor;
        display: block;
        height: 0.3125em;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        left: 0;
        right: 0;
    }
    .nav-icon-close:after {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    /* navigation */
    .subnav,
    .mainnav.rc-container-enabled {
        clear: both;
        background-color: rgb(255, 255, 255);
    }
    .subnav .item,
    .rc-nav-enabled .item {
        line-height: 1.1;
        padding: 1em 0.25em 1em 0.625em;
        text-decoration: none;
        /*text-transform:uppercase;*/
        color: rgb(51, 51, 51);
        border-bottom: 1px solid rgb(230, 230, 230);
        outline: none;
        overflow: visible !important;
    }
    .subnav .current > .item,
    .subnav .active > .item,
    .rc-nav-enabled .current > .item,
    .rc-nav-enabled .active > .item {
        font-weight: 400;
    }
    .subnav .current > .item,
    .rc-nav-enabled .current > .item {
        position: relative;
        color: rgb(255, 255, 255);
        background: rgb(0, 42, 88);
    }
    .subnav .current > .item::before,
    .rc-offcanvas-enabled .current > .item::before,
    .rc-container-enabled .current > .item::before,
    .rc-nav-enabled .current > .item::before {
        position: absolute;
        right: 100%;
        top: 49%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        content: "";
        display: block;
        width: 0;
        height: 0;
        border-top: 1.5em solid transparent;
        border-bottom: 1.5em solid transparent;
        border-right: 0.75em solid rgb(0, 42, 88);
    }
    .rc-nav-enabled .rc-more {
        background-color: rgba(0, 0, 0, 0.05);
        border-bottom: 1px solid rgb(153, 153, 153);
        bottom: -1px;
    }
    .rc-nav-enabled .rc-more i {
        display: block;
        width: 0.625em;
        height: 0.625em;
        -webkit-transform: translate(-50%, -50%) rotate(45deg);
        -moz-transform: translate(-50%, -50%) rotate(45deg);
        -ms-transform: translate(-50%, -50%) rotate(45deg);
        transform: translate(-50%, -50%) rotate(45deg);
        border: 2px solid currentColor;
        border-width: 0 2px 2px 0;
        transition: all 0.2s;
    }
    .rc-nav-enabled .hover > .item > .rc-more i {
        -webkit-transform: translate(-50%, -50%) rotate(-135deg);
        -moz-transform: translate(-50%, -50%) rotate(-135deg);
        -ms-transform: translate(-50%, -50%) rotate(-135deg);
        transform: translate(-50%, -50%) rotate(-135deg);
        margin-top: 4px;
    }
    /*.subnav,*/
    .rc-nav-enabled {
        overflow: hidden;
    }
    .subnav .sub,
    .rc-nav-enabled .sub {
        position: relative;
        /*		background-color: rgba(0,0,0,0.05);
                box-shadow: 0 0 1.25em rgba(0,0,0,.125) inset;
                margin: 0 -0.5em;
                padding: 0 0.5em;*/
    }
    .subnav .sub .item,
    .rc-nav-enabled .sub .item {
        padding-left: 1.25em;
    }
    .subnav .sub .sub .item,
    .rc-nav-enabled .sub .sub .item {
        padding-left: 1.5em;
    }
    .subnav .sub .sub .sub .item,
    .rc-nav-enabled .sub .sub .sub .item {
        padding-left: 1.75em;
    }
    .subnav .item:focus,
    .subnav .item:hover {
        position: relative;
        color: rgb(255, 255, 255);
        background: rgb(0, 42, 88);
        transition: display 0.25s ease-in-out 0s;
    }
    .subnav-header .item.sidebar-nav-header {
        color: rgb(0, 42, 88);
        font-size: 1.5em;
        padding-left: 0;
        background: none;
    }
    .subnav-header .item.sidebar-nav-header:hover {
        color: rgb(0, 42, 88);
        background: none !important;
    }
    .subnav .item:focus::before,
    .subnav .item:hover::before {
        position: absolute;
        right: 100%;
        top: 49%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        content: "";
        display: block;
        width: 0;
        height: 0;
        border-top: 1.5em solid transparent;
        border-bottom: 1.5em solid transparent;
        border-right: 0.75em solid rgb(0, 42, 88);
        transition: display 0.25s ease-in-out 0s;
    }
    .subnav-header .item.sidebar-nav-header::before,
    .subnav-header .item.sidebar-nav-header:hover::before {
        display: none;
    }
}

/* mobile */

@media all {
    body {
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/weltec-background.jpg");
        background-position: center;
        background-repeat: repeat-y;
        background-attachment: fixed;
        background-color: rgb(255, 255, 255);
    }
    body:after {
        /* http://adactio.com/journal/5429/ */
        content: "rc-xsmall";
        display: none;
    }
    head {
        font-family: "rc-xsmall";
    }
    #pagetop {
        max-width: 1640px;
        margin: 0px auto;
        background-color: rgb(255, 255, 255);
        /*box-shadow: 1px 2px 48px 0px rgba(0, 0, 0, 0.25);*/
    }
    .hide-xsmall,
    .show-small,
    .show-medium,
    .show-large,
    .show-xlarge,
    .show-xxlarge {
        display: none;
    }
    .show-xsmall {
        display: block;
    }
    .mainnav,
    .mobilenav,
    .secondnav-body,
    .searchbox {
        display: none;
    }
    .rc-offcanvas-enabled .mobilenav {
        display: block;
    }
    .ce-div {
        border: none;
        border-bottom: 1px solid rgb(0, 0, 0);
    }
    /* layout */
    .wrap-inner {
        margin: 0 0.625em;
    }
    .main-content,
    .footer {
        padding-top: 2em;
        color: rgb(68, 68, 68);
    }
    /* image caption */
    .ce-media-caption {
        color: rgb(156, 156, 156);
        background: rgb(238, 238, 238);
        padding: 1em;
        text-align: left;
        line-height: 1.5;
    }
    .ce-teaserlink-inner .ce-media-caption {
        color: rgb(255, 255, 255);
        background: rgb(0, 42, 88);
        padding: 1em;
        text-align: left;
        line-height: 1.5;
    }
    .ce-media-caption::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/link-icon-white.png");
        height: 100%;
        width: 48px;
        background-repeat: no-repeat;
        background-position: center;
    }
    /* header */
    .page-header {
        border-top: 2.5rem solid rgb(0, 139, 210);
        background: rgb(247, 247, 247);
    }
    .page-header-inner {
        display: flex;
        justify-content: space-between;
    }
    .page-header-logo {
        width: 10rem;
        margin-top: -1.875rem;
        margin-left: 0.625rem;
        padding: 0.3125rem;
        flex-shrink: 0;
        background-color: rgb(247, 247, 247);
    }
    .search-toggle {
        position: absolute;
        top: 0;
        right: 0.3125rem;
        color: rgb(255, 255, 255);
    }
    .language-menu {
        position: absolute;
        top: 0;
        right: 3.125rem;
    }
    .language-toggle {
        color: rgb(255, 255, 255);
        padding: 0.4em 0;
        font-size: 0.8em;
        margin-top: 0.5em;
    }
    .menu-language-select {
        position: absolute;
        z-index: 100;
        background-color: rgb(255, 255, 255);
        border: 1px solid rgb(240, 240, 240);
        padding: 0;
        color: rgb(0, 0, 0);
        list-style-type: none;
        right: 0;
        display: none;
    }
    .menu-language-select li + li {
        border-top: 1px solid rgb(240, 240, 240);
    }
    .menu-language-select .item {
        padding: 0.5em 1em;
        white-space: nowrap;
        min-width: 8em;
    }
    .language-flag {
        margin-right: 5px;
    }
    .language-flag img {
        width: 30px;
    }
    .page-header .searchbox {
        position: absolute;
        border: 1px solid rgb(240, 240, 240);
        border-radius: 3px;
        background-color: rgb(255, 255, 255);
        z-index: 1;
        right: 3em;
        top: 0;
    }
    /* stage */
    .stage .ce-row {
        margin: 0;
    }
    .stage .flex-direction-nav {
        display: none;
    }
    .icon-navigation {
        display: none;
    }
    /* footer */
    .footer .footer-content {
        position: relative;
        overflow: hidden;
        padding-top: 4em;
        background: rgb(119, 119, 119);
        color: rgb(252, 252, 252);
    }
    .footer::before {
        content: "";
        position: absolute;
        bottom: 100%;
        left: 0;
        right: 0;
        height: 1em;
        box-shadow: 0 0 1.5em rgba(0, 0, 0, 0.25);
    }
    .footernav {
        float: left;
    }
    .footernav .item {
        padding: 0.5em 0.25em;
    }
    .footernav {
        width: 50%;
    }
    .footernav li {
        float: none;
        margin-bottom: 0.5em;
    }
    .footernav .item {
        display: inline-block;
    }
    .werbelink {
        float: right;
        line-height: 1;
        padding: 0.5em 0.25em;
    }
    .werbelink span {
        font-weight: 400;
    }
    .totoplink {
        padding: 0 !important;
        position: fixed !important;
        right: 0.625em;
        bottom: 0.625em;
        z-index: 10;
        color: rgb(255, 255, 255);
        background: grey;
        opacity: 0.5;
    }
    .totoplink::before {
        content: none !important;
    }
    .page-content > .ce-grid-large-66-33 > .ce-col {
        position: relative;
        z-index: 2;
    }
    .page-content > .ce-grid-large-66-33 > .ce-col.sidebar {
        z-index: 1;
    }
    .ce-col.sidebar {
        position: relative;
    }
    .ce-col.sidebar::before {
        z-index: 1;
        bottom: 2em;
        content: "";
        display: block;
        left: -1em;
        position: absolute;
        top: 2em;
        width: 1em;
        border-radius: 100%;
        box-shadow: 0 0 2em rgba(0, 0, 0, 0.1), 0 0 0.5em rgba(0, 0, 0, 0.025);
    }
    .ce-col.sidebar::after {
        background-color: #ffffff;
        z-index: 2;
        bottom: 0;
        content: "";
        display: block;
        left: -3em;
        position: absolute;
        top: 0;
        width: 3em;
    }
    .ce-grid-always-50-50 {
        margin: 0 -0.5em;
    }
    .ce-grid-always-50-50 > .ce-col {
        width: 50%;
        float: left;
        padding: 0.5em;
    }
}

/* Cookie Consent
----------------------------------------------------------------------------- */

@media all {
    .cc-link {
        padding: 0;
        display: inline;
    }
}

/* mobile small */

@media all and (min-width: 25em) {
    body:after {
        content: "rc-small";
        display: none;
    }
    head {
        font-family: "rc-small";
    }
    .show-xsmall {
        display: none;
    }
    .hide-xsmall {
        display: block;
    }
    .show-small {
        display: block;
    }
    .hide-small {
        display: none;
    }
    .wrap-inner {
        margin-left: 1em;
        margin-right: 1em;
    }
    .totoplink {
        right: 1em;
    }
    /* header */
    .page-header-logo {
        margin-left: 1rem;
    }
    .search-toggle {
        right: 0.625em;
    }
    .language-menu {
        right: 3.5rem;
    }
    .nav-toggle {
        margin-right: 0.375em;
    }
    .flexslider-slide-caption-body {
        padding: 0.5em 3em 0.5em 1em;
    }
    .flexslider-slide-caption-body::after {
        right: 0em;
    }
    .flex-control-nav {
        /*bottom: 5em;*/
        bottom: -2em;
        z-index: 10;
    }
    .flex-control-nav a {
        padding: 0.35em;
        margin: 0.15em;
    }
}

/* tablet + print */

@media all and (min-width: 35em), print {
    /* ~ 600px */
    body:after {
        content: "rc-medium";
        display: none;
    }
    head {
        font-family: "rc-medium";
    }
    .show-small {
        display: none;
    }
    .hide-small {
        display: block;
    }
    .show-medium {
        display: block;
    }
    .hide-medium {
        display: none;
    }
    /* typography */
    h1 {
        font-size: 2.125em;
        line-height: 1.33;
        padding-bottom: 0.377em;
        padding-bottom: 0;
    }
    h2 {
        font-size: 1.75em;
        line-height: 1.2;
        padding-bottom: 0.1785em;
    }
    h3,
    h4,
    h5 {
        font-size: 1.375em;
        line-height: 1.2;
    }
    .ce-div {
        border: none;
        position: relative;
    }
    /* image rendering */
    .ce-row {
        margin: 0 -1em 1em;
        line-height: 0;
    }
    [data-ce-columns="1"] .ce-row {
        margin-left: 0;
        margin-right: 0;
    }
    .ce-column {
        padding: 0 1em;
        float: left;
    }
    [data-ce-columns="1"] .ce-column {
        padding: 0;
    }
    [data-ce-columns="2"] .ce-column {
        max-width: 50%;
    }
    [data-ce-columns="3"] .ce-column {
        max-width: 33.3333%;
    }
    [data-ce-columns="4"] .ce-column {
        max-width: 50%;
    }
    [data-ce-columns="5"] .ce-column {
        max-width: 20%;
    }
    [data-ce-columns="6"] .ce-column {
        max-width: 33.3333%;
    }
    [data-ce-columns="4"] .ce-column,
    [data-ce-columns="6"] .ce-column {
        margin-bottom: 2em;
    }
    /* centering works with one col only */
    .ce-center .ce-media {
        margin: 0 auto;
    }
    .ce-right [data-ce-columns="1"] .ce-row {
        text-align: right;
    }
    .ce-right [data-ce-columns="1"] .ce-column {
        display: inline-block;
        float: none;
    }
    .ce-right .ce-media-caption {
        text-align: left;
    }
    /* image left/right */
    .ce-intext {
        margin: 0 -1em;
    }
    .ce-intext > div {
        padding: 0 1em;
    }
    .ce-intext .ce-gallery {
        width: 50%;
        width: calc(50% + 1em);
    }
    .ce-intext .ce-row {
        max-width: 100%;
    }
    .ce-intext.ce-right .ce-gallery {
        float: right;
        padding-left: 2em;
    }
    .ce-intext.ce-left .ce-gallery {
        float: left;
        padding-right: 2em;
    }
    .ce-nowrap .ce-bodytext {
        overflow: hidden;
    }
    .ce-nowrap.ce-right .ce-bodytext {
        padding-right: 0;
    }
    .ce-nowrap.ce-left .ce-bodytext {
        padding-left: 0;
    }
    /* layout */
    .wrap-inner {
        margin-left: 2em;
        margin-right: 2em;
    }
    .totoplink {
        right: 2em;
    }
    .rc-offcanvas-enabled {
        box-shadow: 0 0 2.5em rgba(0, 0, 0, 0.5);
    }
    .rc-offcanvas-enabled .mainnav {
        padding: 1em;
    }
    .rc-offcanvas-enabled .rc-offcanvas-right {
        width: 50%;
    }
    .rc-offcanvas-enabled.rc-open {
        -webkit-transform: translate(-50%, 0);
        /* android 2 */
        -ms-transform: translate(-50%, 0);
        /* ie9 */
        transform: translate(-50%, 0);
        -webkit-transform: translate3d(-50%, 0, 0);
        /* android 3-4 */
        transform: translate3d(-50%, 0, 0);
    }
    /* header */
    .page-header-logo {
        width: 12rem;
        margin-left: 2rem;
    }
    .page-header .searchbox {
        right: 4em;
    }
    .nav-toggle {
        margin-right: 1.375em;
    }
    .nav-toggle .rc-link {
        padding: 0.3125em 0.625em;
    }
    .search-toggle {
        right: 1.625rem;
    }
    .language-menu {
        right: 4.5rem;
    }
    .language-toggle-text {
        display: inline-block;
    }
    .language-flag img {
        width: 20px;
    }
    .language-toggle {
        padding: 0.6em 0 0.4em 0;
        margin-top: 0;
    }
    .menu-language-select {
        right: auto;
    }
    /* footer  */
    .footernav {
        width: auto;
    }
    .footernav li {
        float: left;
        margin-bottom: 0;
    }
    .footernav .item {
        display: block;
    }
    .footernav li + li {
        margin-left: 0.5em;
    }
    /* grid styles */
    .ce-grid {
        margin: 0 -1em;
    }
    .ce-grid > .ce-col {
        float: left;
        padding: 1em;
        max-width: 100%;
        min-height: 1px;
    }
    .Tx-Formhandler .ce-grid > .ce-col {
        padding: 0 1em;
    }
    .form-kontakt .form-field-row {
        margin-bottom: 1em;
    }
    .ce-grid-container > .ce-col {
        padding: 1em 0;
    }
    /* 2 col */
    .ce-grid-50-50 > .ce-col {
        width: 50%;
    }
    .rc-medium .ce-grid-50-50 .ce-grid-50-50 > .ce-col {
        width: 100%;
    }
    .ce-grid-33-66 > .ce-col {
        width: 33.333%;
    }
    .ce-grid-33-66 > .ce-col + .ce-col {
        width: 66.666%;
    }
    .ce-grid-66-33 > .ce-col {
        width: 66.666%;
    }
    .ce-grid-66-33 > .ce-col + .ce-col {
        width: 33.333%;
    }
    .rc-medium .ce-grid-33-66 .ce-grid-50-50 > .ce-col,
    .rc-medium .ce-grid-66-33 .ce-grid-50-50 > .ce-col,
    .rc-medium .ce-grid-50-50 .ce-grid-50-50 > .ce-col {
        width: 100%;
    }
    /* 3 col */
    /*
    .rc-medium .ce-grid-33-33-33 > .ce-col:first-child { width: 100%; }
    .ce-grid-33-33-33 > .ce-col { width: 50%; }
    */
    .ce-grid-33-33-33 > .ce-col {
        width: 33.333%;
    }
    .flexslider-slide-caption {
        height: 0;
    }
    .flexslider-slide-caption-body {
        padding: 1em 6em 1em 2em;
        /*height: 95px;*/
    }
    .flexslider-slide-caption-body::after {
        right: 2em;
        /*height: 95px;*/
    }
    .flex-control-nav {
        /*bottom: 6em;*/
        padding: 0 2em;
    }
    .flex-control-nav a {
        padding: 0.5em;
        margin: 0.15em;
    }
    .rte-link-button {
        display: inline-block;
        color: rgb(255, 255, 255);
        background-color: rgb(0, 139, 210);
        padding: 0.75em;
        border-radius: 2px;
    }
    .rte-link-button::before {
        display: none;
    }
    .flexslider-slide-caption-body {
        font-size: 0.95em;
    }
    .flexslider-slide-caption-title {
        font-size: 1.2em;
    }
    .flexslider-slide-caption p {
        margin-bottom: 0.25em;
    }
    .ce-media-caption {
        min-height: 5em;
    }
    .ce-teaserlink-outer .ce-media-caption {
        min-height: 0;
    }
    /* Google Map in Head
    ------------------------------------------------------------------------- */
    /*  .cbQuickGoogleMap > div {
        height: 50vh !important;
      }*/
}

/* desktop */

@media all and (min-width: 62.5em) {
    /* ~ 860px + margin */
    body:after {
        content: "rc-large";
        display: none;
    }
    head {
        font-family: "rc-large";
    }
    .show-medium {
        display: none;
    }
    .hide-medium {
        display: block;
    }
    .show-large {
        display: block;
    }
    .hide-large {
        display: none;
    }
    .mainnav,
    .secondnav-body {
        display: block;
    }
    /* typography */
    h1 {
        font-size: 2.5em;
        line-height: 1.2;
        padding-bottom: 0.35em;
        padding-bottom: 0;
    }
    h2 {
        font-size: 2.125em;
        line-height: 1.33;
        padding-bottom: 0.377em;
    }
    h3 {
        font-size: 1.75em;
        line-height: 1.2;
        padding-bottom: 0.1785em;
    }
    /* image rendering */
    [data-ce-columns="4"] .ce-column {
        max-width: 25%;
    }
    [data-ce-columns="6"] .ce-column {
        max-width: 16.6667%;
    }
    [data-ce-columns="4"] .ce-column,
    [data-ce-columns="6"] .ce-column {
        margin-bottom: 1em;
    }
    .ce-intext .ce-gallery {
        width: 50%;
        width: calc(50% + 1em);
    }
    footer .ce-intext .ce-gallery {
        width: 50%;
        width: calc(50% + 1em);
    }
    /* layout */
    .wrap-outer {
        margin: 0 auto;
        max-width: 76.5em;
        padding: 0 2em;
        max-width: 1160px;
        max-width: 72.5em;
    }
    .wrap-outer.page-content {
        padding-top: 1em;
    }
    .page-content > .ce-grid-large-66-33 > .ce-col > .main-content {
        padding-right: 1em;
    }
    .page-content > .ce-grid-large-66-33 > .ce-col.sidebar > .wrap-inner {
        padding-left: 1em;
    }
    .wrap-inner {
        margin: 0;
    }
    .page-header {
        border: none;
    }
    .page-header-logo {
        flex-shrink: 0;
        margin: 1rem 0 0 0;
        padding: 0;
        width: 15em;
    }
    .page-header-navigation {
        flex-grow: 1;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding-right: 1em;
    }
    .language-menu,
    .search-toggle {
        position: static;
    }
    .page-header-navigation-top {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        position: relative;
    }
    .page-header-navigation-top > * + * {
        margin-left: 0.625em;
    }
    .page-header .searchbox {
        right: 2em;
    }
    .topnav .item,
    .language-toggle,
    .search-toggle {
        color: rgb(0, 42, 88);
        font-size: 100%;
        padding: 0.3125em;
    }
    .topnav .item:hover,
    .topnav .item:focus {
        color: currentColor;
        background: none;
    }
    .language-flag {
        border-radius: 50%;
        overflow: hidden;
        display: inline-block;
        width: 0.75em;
        height: 0.75em;
        background: gray;
        position: relative;
    }
    .language-flag img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 1.25em;
        max-width: none;
    }
    .page-header .icon-close,
    .page-header .icon-search {
        font-size: 50%;
    }
    .page-header .icon-close::after,
    .page-header .icon-search::after {
        border-width: 0.25em;
    }
    .search-toggle {
        padding: 0;
    }
    .search-toggle .rc-link {
        padding: 0.3125em;
        padding-top: 0.2em;
    }
    .sf-menu {
        display: flex;
        justify-content: flex-end;
    }
    .page-header-secondnav-header,
    .page-header-secondnav-body {
        display: block;
    }
    .page-header-secondnav-header .menu {
        display: flex;
        font-size: 80%;
    }
    .page-header-secondnav-header li {
        width: 33.3333%;
        flex-grow: 0;
        flex-shrink: 0;
        background-color: #008bd2;
    }
    .page-header-secondnav-header li:first-child {
        background-color: #002a58;
    }
    .page-header-secondnav-header li:last-child {
        background-color: #005b95;
    }
    .page-header-secondnav-header .item {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        color: rgb(255, 255, 255);
        padding: 0 1em;
    }
    .page-header-secondnav-header .item::before {
        content: "";
        display: inline-block;
        width: 4em;
        height: 4em;
        margin: 0.625em;
        background-image: url("/fileadmin/user_upload/weltec/Icons/WEL-Header-Icon-Two.svg");
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center center;
    }
    .page-header-secondnav-header li:first-child .item::before {
        background-image: url("/fileadmin/user_upload/weltec/Icons/WEL-Header-Icon-One.svg");
    }
    .page-header-secondnav-header li:last-child .item::before {
        background-image: url("/fileadmin/user_upload/weltec/Icons/WEL-Header-Icon-Three.svg");
    }
    .page-header-secondnav-header .item-inner {
        display: inline-block;
        line-height: 1.2;
        margin: 0.625em;
        text-align: center;
    }
    .bg-secondnav-1 .sub-wrapper,
    .bg-secondnav-1 {
        background-color: #002a58;
    }
    .bg-secondnav-2 .sub-wrapper,
    .bg-secondnav-2 {
        background-color: #008bd2;
    }
    .bg-secondnav-3 .sub-wrapper,
    .bg-secondnav-3 {
        background-color: #005b95;
    }
    .secondnav-international .menu,
    .secondnav-body .menu {
        display: flex;
        justify-content: space-around;
        max-width: 53.9em;
        padding: 0;
    }
    .secondnav-international .item,
    .secondnav-body .item {
        color: rgb(255, 255, 255);
        padding: 1em;
    }
    .secondnav-international .item:focus,
    .secondnav-international .item:hover,
    .secondnav-body .item:focus,
    .secondnav-body .item:hover {
        background-color: rgb(0, 42, 88);
    }
    .secondnav-international .sub-wrapper,
    .secondnav-body .sub-wrapper {
        position: absolute;
        width: 100%;
        left: 0;
        display: none;
    }
    .secondnav-international
        .secondnav-international-inner
        > li:hover
        .sub-wrapper,
    .secondnav-body .secondnav-body-inner > li:hover .sub-wrapper {
        z-index: 11;
        display: block;
    }
    .secondnav-international .sub-wrapper .menu.sub,
    .secondnav-body .sub-wrapper .menu.sub {
        max-width: 53.9em;
        margin: 0 auto;
    }
    .page-international .page-header-secondnav-header {
        display: none;
    }
    .page-international .page-header-navigation {
        flex-direction: row-reverse;
        justify-content: end;
    }
    .page-international .page-header-navigation-bottom {
        align-items: center;
        display: flex;
    }
    .page-international .flexslider-slide-caption {
        height: 146px;
    }
    .stage {
        min-height: 1em;
    }
    .stage .flex-direction-nav {
        display: none;
    }
    .sidebar {
        margin-top: 2em;
    }
    .sidebar .subnav-header {
        margin-top: -1em;
    }
    .stage .ce-element,
    .ce-shortcut-element {
        margin-bottom: 0;
    }
    .ce-ruler-before {
        padding-top: 4em;
    }
    .ce-ruler-after {
        padding-bottom: 3em;
        margin-bottom: 4em;
    }
    .ce-layout-1-inner {
        margin-bottom: 4em;
    }
    /* superfish */
    .sf-menu,
    .sf-menu * {
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .sf-menu li {
        position: relative;
    }
    .sf-menu ul {
        position: absolute;
        display: none;
        z-index: 99;
    }
    .sf-menu {
        width: 100%;
    }
    .sf-menu li:hover > ul,
    .sf-menu li.sfHover > ul {
        display: block;
    }
    .sf-menu .item {
        display: block;
        position: relative;
        white-space: nowrap;
    }
    .sf-menu ul ul {
        top: 0;
        left: 100%;
    }
    .sf-menu > li:last-child > ul {
        right: 0;
    }
    .sf-menu > li:last-child > ul ul,
    .sf-menu > li:nth-child(5) > ul ul {
        right: 100%;
        left: auto;
    }
    .mainnav a {
        color: rgb(0, 42, 88);
    }
    /* sf theme */
    .sf-menu .item {
        display: block;
        padding: 1em 0.625em;
        text-align: center;
        text-decoration: none;
    }
    .sf-menu .active > .item,
    .sf-menu .item:active,
    .sf-menu .item:focus,
    .sf-menu li:hover > .item {
        color: rgb(51, 51, 51);
        background: rgb(255, 255, 255);
    }
    .sf-menu > .current > .item,
    .sf-menu > .active > .item {
        background: rgb(0, 139, 210);
        color: rgb(255, 255, 255);
    }
    .sf-menu .sub {
        box-shadow: 0 0 1em rgba(0, 0, 0, 0.25);
    }
    .sf-menu .sub li {
        border-top: 1px solid rgba(0, 0, 0, 0.25);
    }
    .sf-menu .sub .sub {
        border-left: 1px solid rgba(0, 0, 0, 0.25);
    }
    .sf-menu > li:last-child > .sub .sub {
        border-left: none;
        border-right: 1px solid rgba(0, 0, 0, 0.25);
    }
    .sf-menu .sub .item {
        color: rgb(51, 51, 51);
        background: rgb(255, 255, 255);
        padding: 0.725em 1em 0.525em 1em;
        border: none;
        text-align: left;
        font-size: 0.9em;
    }
    .sf-menu .sub .item:hover {
        background: rgb(0, 139, 210);
        color: rgb(255, 255, 255);
    }
    .subnav {
        margin-bottom: 2em;
    }
    .subnav-header {
        margin-bottom: 0;
    }
    /* grid */
    .ce-grid-large {
        margin: 0 -1em;
    }
    .ce-grid-large > .ce-col {
        float: left;
        max-width: 100%;
        padding: 0 1em;
    }
    .ce-grid-large-50-50 > .ce-col {
        width: 50%;
    }
    .ce-grid-large-66-33 > .ce-col {
        width: 66.6666%;
    }
    .ce-grid-large-66-33 > .ce-col + .ce-col {
        width: 33.3333%;
    }
    .flexslider-slide-caption {
        height: 0;
    }
    .flexslider-slide-caption-body {
        padding-top: 2em;
        padding-bottom: 2em;
        padding-right: 6em;
    }
    .flex-control-nav {
        margin: 0 auto;
        max-width: 76.5em;
        padding: 0 2em;
        max-width: 1160px;
        max-width: 72.5em;
        /*bottom: 8em;*/
    }
    /* contact icons navigation
    ------------------------------------------------------------------------- */
    .icon-navigation {
        display: block;
    }
    .contact-icons {
        position: absolute;
        z-index: 60;
        list-style-type: none;
        padding-top: 1em;
        right: 1em;
    }
    .contact-icons > li {
        height: 60px;
        width: 60px;
        opacity: 0.8;
        margin-bottom: 1em;
    }
    li.contact-telefon {
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/icon-telefon.png");
    }
    li.contact-mail {
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/icon-mail.png");
    }
    li.contact-location {
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/icon-location.png");
    }
    .contact-icons ul {
        list-style-type: none;
        visibility: hidden;
        opacity: 0;
        transition: visibility 0.5s, opacity 0.5s linear;
    }
    .contact-icons > li:hover ul {
        visibility: visible;
        opacity: 1;
    }
    .contact-icons ul > li {
        position: absolute;
        right: 60px;
        height: 60px;
        width: 200px;
        border-right: 1px solid transparent;
        color: #ffffff;
        font-size: 0.9em;
        line-height: 1.3em;
    }
    .contact-icons ul > li > div {
        background-color: rgba(0, 42, 88, 0.8);
        padding: 0.6em 0 0.4em 0.6em;
        min-height: 60px;
    }
    .contact-icons ul > li > div a::before {
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/link-icon-white.png");
    }
    .contact-icons ul > li > div a:hover {
        color: #002a58;
        background-color: #ffffff;
    }
    .contact-icons ul > li > div a:hover::before {
        background-image: url("/typo3conf/ext/ti_base_weltec/Resources/Public/Images/link-icon-dark-blue.png");
    }
    .contact-icons ul > li > div p {
        margin: 0;
    }
    .flexslider-slide-caption-body {
        font-size: 1em;
    }
    .flexslider-slide-caption-title {
        font-size: 1.4em;
    }
    .flexslider-slide-caption p {
        margin-bottom: 0.5em;
    }
}

@media all and (min-width: 82.5em) {
    body:after {
        content: "rc-xlarge";
        display: none;
    }
    head {
        font-family: "rc-xlarge";
    }
    .show-large {
        display: none;
    }
    .hide-large {
        display: block;
    }
    .show-xlarge {
        display: block;
    }
    .hide-xlarge {
        display: none;
    }
    body {
        margin: 0 auto;
    }
    body {
        font-size: 1.125em;
    }
    .totoplink {
        left: 50%;
        right: auto;
        margin-left: 540px;
    }
    .mainnav .sf-menu {
        display: flex;
    }
    .flex-control-nav {
        bottom: -2em;
    }
    .flexslider-slide-caption {
        height: 0;
    }
    .flexslider-slide-caption-body::after {
        right: 2em;
    }
}

/* print */

@media print {
    html,
    body,
    a {
        font-size: 10pt !important;
    }
    h2,
    h3 {
        page-break-after: avoid;
    }
    table,
    ol,
    ul,
    figure,
    img {
        page-break-inside: avoid;
    }
    a {
        font-size: 10pt !important;
        overflow: visible !important;
    }
    .ce-bodytext a[href^="http"]::after {
        content: " [" attr(href) "] ";
        font-size: 8pt !important;
    }
    .print-only {
        display: block;
    }
    .stage,
    .totoplink,
    .topnav,
    .searchbox,
    .mainnav,
    .subnav,
    .footernav,
    .footer {
        display: none !important;
    }
}

/* teaser grid and teaser */

@media all {
    /* teaser */
    .ce-teaser-link {
        display: block;
        background-color: rgb(0, 139, 210);
        border: 1px solid rgb(0, 139, 210);
        color: rgb(255, 255, 255);
        padding: 0.5em;
        width: 100%;
    }
    .ce-teaser-link:focus,
    .ce-teaser-link:hover {
        color: rgb(255, 255, 255);
    }
    .ce-teaser-link::before {
        content: none !important;
    }
    .ce-teaser-bg {
        display: none;
    }
    .ce-teaser-body {
        display: flex;
        align-items: center;
        flex-direction: column;
        padding: 1em;
    }
    .ce-teaser-icon {
        flex-shrink: 0;
        margin: 0 auto;
        padding: 1em;
        width: 100px;
        height: 100px;
    }
    .ce-teaser-text {
        margin: 0;
        padding: 1em;
        width: 100%;
    }
    /* teaser grid */
    .ce-teaser-grid {
        display: flex;
        flex-direction: column;
    }
    .ce-teaser-grid .ce-col {
        display: flex;
    }
    /* teaser in teaser-grid */
    .ce-teaser-grid .ce-col:first-child .ce-teaser-link {
        border-color: rgb(0, 42, 88);
        background-color: rgb(0, 42, 88);
    }
    .ce-teaser-grid .ce-col:last-child .ce-teaser-link {
        border-color: rgb(0, 91, 149);
        background-color: rgb(0, 91, 149);
    }
    .ce-teaser-grid .ce-teaser {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
    }
    .ce-teaser-grid .ce-teaser-body {
        flex-direction: row;
        padding: 0;
        width: 100%;
    }
    .ce-teaser-grid .ce-teaser-icon {
        margin: 0;
    }
}

@media (min-width: 35em) {
    .ce-teaser-link {
        position: relative;
        overflow: hidden;
        background-color: rgb(239, 239, 239);
        border-bottom-width: 1em;
        padding: 0;
        padding-left: 0 !important;
        /* f*ck link icons ... */
        padding-bottom: 95%;
        height: 0;
        text-decoration: none !important;
    }
    .ce-teaser-bg {
        display: block;
        position: absolute;
        top: -2px;
        left: -2px;
        right: -2px;
        bottom: -2px;
        background-size: cover;
        background-position: center center;
    }
    .ce-teaser-body {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        justify-content: flex-end;
        padding: 1em;
        transition: 0.2s all;
    }
    .ce-teaser-link:focus .ce-teaser-body,
    .ce-teaser-link:hover .ce-teaser-body {
        background-color: rgba(0, 139, 210, 0.4);
    }
    .ce-teaser-text {
        position: relative;
        padding: 0.5em;
        padding-right: 1em;
        background-color: rgba(0, 139, 210, 0.7);
    }
    .ce-teaser-text::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        background-image: url(/typo3conf/ext/ti_base_weltec/Resources/Public/Images/link-icon-white.png);
        height: 100%;
        width: 1em;
        background-repeat: no-repeat;
        background-position: center;
    }
    .ce-teaser-grid {
        flex-direction: row;
        padding: 2rem;
    }
    .ce-teaser-grid .ce-teaser {
        font-size: 90%;
    }
    .ce-teaser-grid .ce-col {
        width: 33.3333%;
    }
    .ce-teaser-grid .ce-teaser-body {
        flex-direction: column;
        padding: 1em;
    }
    .ce-teaser-grid .ce-teaser-link:focus,
    .ce-teaser-grid .ce-teaser-link:hover {
        transform: scale(1.1);
        z-index: 1;
    }
}

@media (min-width: 62.5em) {
    .ce-teaser-grid {
        padding: 2em;
    }
    .ce-teaser-grid .ce-teaser {
        font-size: 100%;
    }
    .ce-teaser-body {
        justify-content: center;
    }
    .ce-teaser-icon {
        width: 120px;
        height: 120px;
    }
    .ce-teaser-text {
        position: absolute;
        left: 1em;
        right: 1em;
        bottom: 1em;
        width: auto;
        padding: 1em;
        padding-right: 2em;
    }
    .ce-teaser-text::after {
        width: 2em;
    }
}

@media (min-width: 82.5em) {
    .ce-teaser-icon {
        width: 140px;
        height: 140px;
    }
}

/* Cookieman */

#cookieman-modal
    [data-toggle="collapse"][data-target="#cookieman-settings"]::after {
    font-size: 0.875rem;
    position: unset;
}

.tx-go-maps-ext img {
    width: 100%;
}

.ce-element .tx-go-maps-ext .js-gme-show {
    padding-left: 0;
}

.ce-element .tx-go-maps-ext .js-gme-show::before {
    display: none;
    content: "";
}
