/* author: ideenwerft GmbH */

@charset "UTF-8";

@import url("fonts.css"); 

/* .... VARIABLES .... */
:root {
	--dark-blue-clr: #0B6D8B;
	--blue-clr: #17A4D2;
    --cta-clr: #E76269;
	--dark-blue-footer-clr: #2B454B;
	--text-clr: #2B454B;
	--lighter-secondary-clr: #bbd280;
    --light-grey-bg-clr: #F7F7F7;
    --blue-overlay-clr: rgba(11, 109, 139, .75);
}


/* .... BASICS .... */
body {
    overflow-x: hidden;
	font-family: "Lato", sans-serif;
  	font-size: 1.1rem;
  	color: #555;
}
main > .container {
	padding: 60px 15px 90px;
    font-size: 1.1rem;
}
@media (min-width: 768px) {
    main > .container {
        padding: 90px 0 90px;
    }
}

/* .... TEXT .... */
h1, h2, h3, h4 {
	font-family: "Signika", sans-serif;
	font-weight: 400;
	color: var(--dark-blue-clr);
    hyphens: auto;
    -ms-hyphens: auto;
}
h1 {
	font-size: 2rem;
    margin-bottom: 1.9rem;
    hyphens: auto;
    -webkit-hyphens: auto;
}
h1 span.hellblau {
    color: var(--blue-clr);
}
h2 {
	font-size: 1.8rem;
    margin: 2.5rem 0 1.6rem;
}
h1 + h2 {
    margin-top: -1.2rem;
    margin-bottom: 3rem;
    color: #999;
    text-transform: uppercase;
    font-weight: 400;
    font-size: 1.2rem;
    text-align: center;
}
h3 {
	font-size: 1.5rem;
	margin-bottom: 1.25rem;
    margin-top: 2.5rem;
}
h4 {
	font-size: 1.3rem;
    margin-bottom: 1.1rem;
    margin-top: 1.7rem;
    color: inherit;
}
p {
    margin-bottom: 1rem;
    line-height: 1.65rem;
    color: var(--text-clr);
}
main p, 
main ul, 
main ol,
main h2, 
main h3,
main h4 {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}
.row-2col > div > div > header > h2 {
    margin-top: 0;
}
main .ce-textpic.ce-right .ce-gallery + .ce-bodytext p {
    max-width: inherit;
}
main a {
	color: var(--cta-clr);
    font-weight: 400;
}
a:hover {
	text-decoration: none;
	color: var(--darker-cta-clr);
}
main a:hover {
    text-decoration: underline;
}
a.external:before {
    content: '\f08e';
    font-family: 'Font Awesome 5 Pro';
    opacity: 1;
    margin-right: 6px;
}
main p a::before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f105";
    margin-right: 4px;
    margin-left: 2px;
    font-size: 1.0rem;
    line-height: 1.4em;
}
main a.mail::before {
    content: "\f658";
    margin-right: 6px;
}
main a.phone::before {
    content: "\f095";
    margin-right: 7px;
}
b, strong {
    font-weight: 600;
}
main span.fa {
    margin-right: 5px;
}

@media (min-width: 768px) {
    h1 {
        font-size: 2.2rem;
        margin-bottom: 2rem;
    }
}
/* .... BUTTONS .... */
.button,
.btn,
input[type=submit]{
	padding: 7px 20px;
    margin-top: 10px;
	background: var(--cta-clr);
    border: 2px solid var(--cta-clr);
	display: inline-block;
	color: #fff;
    font-weight: 400;
    border-radius: 10px;
}
.button:hover,
.btn:hover,
.button:focus,
.btn:focus {
	background: #ca434a;
    color: #fff;
    text-decoration: none;
}
.dce-keyvisual a.button {
    font-weight: 400;
    height: auto;
    width: auto;
    padding: 5px 20px;
}
.dce-buttons a.button {
    font-weight: 400;
    height: auto;
    width: auto;
    padding: 5px 20px;
}
main .dce-buttons .row {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* .... OTHER .... */
img {
  	max-width: 100%;
  	height: auto; 
}
@media (max-width: 758px) {
    .ce-right.ce-intext .ce-gallery {
        max-width: 45%;
    }
}
main .row {
    padding-top: 2em;
    padding-bottom: 2em;
}
.frame ~ .content-frame,
.content-frame ~ .frame {
    margin-top: 3em;
}
.frame-type-text ~.frame-type-text {
    margin-top: 3em;
}

/* Box */
.frame-layout-2 {
    background: var(--light-grey-bg-clr);
    max-width: 900px;
    margin: 2rem auto 0 !important;
    padding: 20px 25px 5px;
}


/* ---------- HEADER -------------------*/
header {
    position: relative;
}
header > .container {
    max-width: 1400px;
}

/* .... top .... */
.header-top {
    padding: 8px 0;
    font-size: 0.95rem;
    position: absolute;
    right: 0;
    max-width: 1400px;
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    margin-top: 20px;
}
.header-top .container {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    margin-right: 0;
}
.header-top a {
    z-index: 101;
}
.header-top a,
.header-top a:link, 
.header-top a:visited {
    color: var(--text-clr);
    display: inline-block;
    margin-left: 20px;
    white-space:nowrap;
}
.header-top a:hover, 
.header-top a:focus {
    color: var(--cta-clr);
}
.header-top a i {
    margin-right: 8px;
    color: var(--cta-clr);
}

@media (max-width: 1199px){
    .header-top {
        padding-right: 30px;
    }
}
@media (max-width: 992px){
    .header-top {
        position: relative;
        margin: 0;
        background: var(--dark-blue-clr);
    }
    .header-top .container {
        justify-content: center;
        padding: 0;
    }
    .header-top .container a,
    .header-top .container a i {
        color: #fff;
    }
    .header-top .container a:hover {
        opacity: .7;
    }
}
@media (max-width: 767px){
    .header-top .container {
        max-width: 100%;
        justify-content: center;
    }
}

/* .... logo .... */
img#logo {
    max-width: 400px;
    z-index: 300;
}
@media (max-width: 1050px) {
    img#logo {
        max-width: 300px;
    }
}


/* .... navigation .... */
header .navbar {
    align-items: flex-end;
    padding: 1rem;
}
header .container .navbar-collapse {
    justify-content: flex-end;
}
#mainnavi .navbar-nav li a {
    color: var(--text-clr);
    font-size: 1.3rem;
}
#mainnavi .navbar-nav li:last-child a {
    padding-right: 0;
}
#mainnavi .navbar-nav li.active a {
    color: var(--dark-blue-clr);
}
#mainnavi .navbar-nav li:hover a {
    color: var(--dark-blue-clr);
}
#mainnavi .navbar-nav .home a i {
    color: var(--dark-blue-clr);
}

@media (min-width: 992px) {
    .navbar-expand-lg .navbar-nav li a.nav-link {
        padding-left: .8em;
        padding-right: .8em;
    }
}

/* dropdown */
#mainnavi .navbar-nav li.dropdown .dropdown-menu {
    padding: 0;
    margin-top: 0;
}
#mainnavi .navbar-nav li.dropdown ul.dropdown-menu li {
    border-bottom: 1px solid #fff;
    padding: 7px 13px;
}
#mainnavi .navbar-nav li.dropdown ul.dropdown-menu li:hover,
#mainnavi .navbar-nav li.dropdown ul.dropdown-menu li.active {
    background: rgba(11,110,141,0.2);
}
#mainnavi .navbar-nav li.dropdown ul.dropdown-menu li:last-child {
    border-bottom: none;
}
#mainnavi .navbar-nav li:hover .dropdown-menu a {
    color: var(--text-clr);
    width: 100%;
    display: block;
    font-size: 1.1rem;
    white-space: nowrap;
}
#mainnavi .navbar-nav li:hover .dropdown-menu li:hover a {
    color: var(--dark-blue-clr);
}

@media (min-width: 992px) {
    #mainnavi .navbar-nav li .dropdown-toggle {
        display: none;
    }
    #mainnavi .navbar-nav li.dropdown:hover ul.dropdown-menu {
        display: block;border-radius: 0;
    border-top: 3px solid var(--cta-clr);
    background: rgba(255, 255, 255, .9);
    }
}
@media (max-width: 991px){
    header .navbar {
        align-items: center;
    }
    header .navbar .navbar-toggler {
        font-size: 1.8rem;
        color: var(--dark-blue-clr);
        outline: none;
    }
    .navbar .navbar-collapse {
        border-top: 3px solid var(--cta-clr);
        margin-top: 1em;
    }
    #mainnavi .navbar-nav li.dropdown {
        display: block;
    }
    #mainnavi .navbar-nav li.dropdown .dropdown-toggle {
        position: absolute;
        top: 0;
        right: 0;
        color: var(--dark-blue-clr)
    }
    #mainnavi .navbar-nav li.dropdown .dropdown-menu.show {
        border-radius: 0;
        border: none;
    }
    #mainnavi .navbar-nav li.dropdown .dropdown-menu.show li {
        margin-left: 10px;
        padding: 0;
        margin-bottom: 10px;
    }
    #mainnavi .navbar-nav li.dropdown .dropdown-menu.show li a {
        font-size: 1rem;
    }
}
@media (max-width: 450px) {
    img#logo {
        max-width: 200px;
    }
}


/* .... dce-keyvisual .... */
.dce-keyvisual {
    overflow: hidden;
}
.dce-keyvisual img {
    max-height: 500px;
    object-fit: cover;
}
.dce-keyvisual:before {
    position: absolute;
    content: "";
    background: url(/typo3conf/ext/iw_77_praxis_schachtaudorf/Resources/Public/Img/logo-circle-weiss.svg);
    background-repeat: no-repeat;
    background-size: contain;
    right: -200px;
    bottom: -150px;
    height: 550px;
    width: 550px;
    opacity: .3;
}
.dce-keyvisual .container {
    max-width: 1400px;
}
.dce-keyvisual .textbox {
    width: 50%;
}
.dce-keyvisual .textbox .text {
    background: transparent;
    color: #fff;
    font-size: 1.1rem;
}
.dce-keyvisual h2,
.dce-keyvisual p {
    color: #fff;
}
.dce-keyvisual h2 {
    font-size: 2rem;
}
.dce-keyvisual .textbox .dce-buttons .col-12:first-child .button {         background: transparent;
    border: 2px solid #fff;
    border-radius: 10px;
    font-weight: 400;
}
.dce-keyvisual .textbox .dce-buttons .col-12:first-child .button:hover {
    border-color: #6AC3D6;
    background: #6AC3D6;
    color: #fff;
}
.dce-keyvisual .textbox .dce-buttons .col-12:last-child .button:hover {
    border-color: #fff;
    background: transparent;
    color: #fff;
}

/* nur verlauf auf unterseiten */
.dce-keyvisual.only-gradient {
    height: 200px;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#0c6f8e+0,24bee2+100 */
background: #0c6f8e; /* Old browsers */
background: -moz-linear-gradient(left,  #0c6f8e 0%, #24bee2 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left,  #0c6f8e 0%,#24bee2 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  #0c6f8e 0%,#24bee2 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0c6f8e', endColorstr='#24bee2',GradientType=1 ); /* IE6-9 */
}
.dce-keyvisual.only-gradient:before {
    right: -80px;
    bottom: -220px;
    height: 400px;
    width: 400px;
}
.dce-keyvisual.only-gradient .textbox {
    width: 100%;
}
.dce-keyvisual.only-gradient h2 {
    margin: 0;
    font-size: 1.7rem;
}

@media (max-width: 1050px) {
    .dce-keyvisual > div:not(.box-below) .textbox {
        width: 80%;
    }
    .dce-keyvisual:before {
        right: -150px;
        bottom: -100px;
        height: 400px;
        width: 400px;
    }
}
@media (max-width: 768px) {
    .dce-keyvisual > div:not(.box-below) .textbox {
        display: block;
        width: 400px;
    }
}
@media (max-width: 600px) {
    .dce-keyvisual:before {
        opacity: .2;
        bottom: -100px;
        right: -100px;
        height: 300px;
        width: 300px;
    }
}
@media (max-width: 480px) {
    .dce-keyvisual > div:not(.box-below) .textbox .dce-buttons {
        display: none;
    }
}
@media (max-width: 350px) {
    .dce-keyvisual > div:not(.box-below) .textbox p {
        display: none;
    }
}

/* keyvisual notizbox */
.keyvisual-notice .fullwidth.dunkelgrau {
    padding: 10px;
    background: #E0E0E0;
}
.keyvisual-notice .fullwidth:after {
    content: none;
}
.keyvisual-notice .fullwidth .container {
    max-width: 1400px;
    padding: 0 15px;
}
.keyvisual-notice .fullwidth p {
    padding: 0 15px;
    text-align: center;
    margin-bottom: 0;
}
.keyvisual-notice .fullwidth p a {
    color: var(--text-clr);
    text-decoration: underline;
}
.keyvisual-notice .fullwidth p a:hover {
    color: var(--cta-clr);
}


/* .... DCE Bildkacheln .... */
.dce-image-tiles .tile .text-wrap {
    position: absolute;
    z-index: 10;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-pack: center;
    align-items: center;
    text-align: center;
    background: transparent;
    padding-top: 35%;
}
.dce-image-tiles .text-wrap header h3 {
    color:#fff;
    font-size: 1.6rem;
    -webkit-transition: all .8s ease-in-out;
    -moz-transition: all .8s ease-in-out;
    -ms-transition: all .8s ease-in-out;
    -o-transition: all .8s ease-in-out;
    transition: all .8s ease-in-out;
}
.dce-image-tiles .tile:hover .text-wrap header h3 {
    transform: scale(1.1);
}
@media (min-width:500px) {
    .dce-image-tiles .text-wrap header h3 {
        font-size: 1.8rem;
    }
}
.dce-image-tiles .tile:hover a img, 
.dce-image-tiles .tile:focus a img {
    transform: scale3d(1.2, 1.2, 1.2);
}

/* ---------------- CONTENT --------------- */
main {
    position: relative;
    overflow: hidden;
}
main:after {
    content: "";
    display: block;
    position: absolute;
    right: -50px;
    bottom: -100px;
    background: url(../Img/logo-circle-grau.svg);
    height: 300px;
    width: 300px;
    background-repeat: no-repeat;
    background-size: contain;
    opacity: 0.6;
} 

.fullwidth:after {
    content: "";
    display: block;
    position: absolute;
    right: -100px;
    bottom: -100px;
    background: url(../Img/logo-circle-weiss.svg);
    height: 300px;
    width: 300px;
    background-repeat: no-repeat;
    background-size: contain;
}
/* .... dce - fullwidth .... */
.fullwidth {
    background: var(--light-grey-bg-clr);
    position: relative;
    overflow: hidden;
}
.fullwidth:after {
    content: "";
    display: block;
    position: absolute;
    right: -100px;
    bottom: -100px;
    background: url(../Img/logo-circle-weiss.svg);
    height: 300px;
    width: 300px;
    background-repeat: no-repeat;
    background-size: contain;
}
.fullwidth > .container {
    padding: 0;
}
.fullwidth .row {
    z-index: 200;
    position: relative;
}
main > .container > div.content-frame:last-child .fullwidth {
    margin-bottom: -5.2em;
}

@media (max-width: 768px) {
    .fullwidth:after {
        right: 0;
        left: 0;
        bottom: -200px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* .... fullwidth mit bild .... */
#c16393 .fullwidth {
    background: url(/fileadmin/Projects/77_praxis_schacht_audorf/bilder/corona-hinweis-masken.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}
#c16393 .fullwidth:after {
    background: var(--blue-overlay-clr);
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
}
#c16393 .fullwidth h2,
#c16393 .fullwidth h3,
#c16393 .fullwidth h4,
#c16393 .fullwidth p,
#c16393 .fullwidth a {
    color: #fff;
}
#c16393 .fullwidth a  {
    font-weight: 400;
}
#c16393 .fullwidth .dce-buttons .button:hover {
    border: 2px solid #fff;
}
#c16393 .fullwidth .row-2col .col-xs-12:first-child {
    border-right: 2px solid rgb(255 255 255 / 35%);
}
#c16393 {
    margin-bottom: -5.2em;
}
@media (min-width: 993px) {
    #c16393 .fullwidth .row-2col .col-xs-12:last-child {
        padding-left: 25px;
    }
}
@media (max-width: 992px) {
    #c16393 .col-xs-12.col-sm-12.col-md-6 {
        flex-wrap: wrap;
        flex: 0 0 100%;
        max-width: 100%;
    }
    #c16393 .fullwidth .row-2col .col-xs-12:first-child {
    border-bottom: 2px solid rgb(255 255 255 / 35%);
        border-right: none;
    }
    #c16393 .fullwidth .row-2col .col-xs-12:first-child {
        padding-bottom: 1em;
    }
    #c16393 .fullwidth .row-2col .col-xs-12:last-child {
        margin-top: 2em;
    }
}


/* .... dce teaser .... */
.dce-teaser .text-wrap h3 {
    font-size: 1.2rem;
    margin-bottom: .5rem;
}
.dce-teaser .text-wrap p {
    font-size: 1.1rem;
}


/* ---------------- FOOTER --------------- */

footer {
    background: var(--dark-blue-footer-clr);
    color: #fff;
}
footer .container {
    max-width: 1400px;
    padding-left: 30px;
    padding-right: 30px;
    margin-left: auto;
    margin-right: auto;
}
footer .row {
    padding-top: 4em;
    padding-bottom: 2em;
}
footer .col-md-4:nth-child(2) {
    margin-top: 1.5em;
}
footer p,
footer a {
    color: #fff;
    font-size: 15px;
    font-weight: 300;
}
footer .footer-kontakt p {
    margin-bottom: .5em;
}
footer a:hover {
    opacity: .7;
}
footer .footer-kontakt {
    color: #fff;
    margin-top: 2em;
}
footer .footer-kontakt p,
footer .footer-kontakt i,
footer .footer-kontakt a {
    color: #fff;
}
footer .footer-adresse,
footer .footer-telefon,
footer .footer-mail {
    display: grid;
    grid-template-columns: .3fr 3fr;
    grid-column-gap: 10px;
}
footer .footer-adresse,
footer .footer-telefon {
    margin-bottom: .5em;
    position: relative;
}
footer .footer-adresse:after,
footer .footer-telefon:after {
    content: "";
    background: rgb(255 255 255 / 50%);
    position: absolute;
    bottom: 0;
    left: 0;
    height: 1px;
    width: 80%;
}
footer .footer-telefon .icons {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
footer .footer-logo {
    max-width: 350px;
}

footer .footnavi {
    list-style: none;
}
footer .footnavi li {
    padding-bottom: 10px;
}
footer .footnavi li:last-child {
    padding-bottom: 0;
}
footer .footnavi li:before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f054";
    margin-right: 8px;
    font-size: 1.0rem;
    line-height: 1.4em;
    color: #fff;
}
footer .footnavi a {
    color: #fff;
}
footer .footnavi a:hover {
    opacity: .7;
}
footer .sprechzeiten {
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    max-width: 300px;
}
footer .sprechzeiten p {
    color: #fff;
    margin-bottom: 0;
    font-weight: 300;
}
footer .sprechzeiten div {
    display: grid;
    grid-template-columns: .5fr 1fr 1fr;
    grid-column-gap: 5px
}
footer .sprechzeiten .day {
    font-weight: 400;
}
footer .footnavi {
        margin-top: 7.2em;
}
footer .footer-kontakt i {
    font-size: 1.3em;
    text-align: center;
    align-items: center;
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}
footer .footer-mail i {
    font-size: 1.2em;
}
footer .footer-telefon i {
    font-size: 1em;
    margin-bottom: 0;
}
footer .footer-telefon i:first-child {
    margin-top: 5px;
    margin-bottom: 10px;
}
footer .footer-telefon i:last-child {
    margin-bottom: 19px;
}

@media (max-width: 1250px) {
    footer .col-md-4 {
        flex-wrap: wrap;
        flex: 0 0 50%;
        max-width: 50%;
    }
    footer .col-md-4:last-child {
        margin-top: 3em;
        margin-left: auto;
        margin-right: auto;
    }
}
@media (max-width: 768px) {
    footer .col-md-4 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    footer .col-md-4:nth-child(2) {
        margin-top: 3em;
    }
    footer .footer-logo {
        margin-left: auto;
        margin-right: auto;
    }
    footer .footnavi {
        margin-top: 0;
        text-align: center;
        padding: 0;
    }
    footer .footer-adresse,
    footer .footer-telefon,
    footer .footer-mail {
        display: flex;
        justify-content: center;
    }
    footer h5 {
        text-align: center;
    }
    footer .sprechzeiten {
        max-width: 500px;
        margin-left: auto;
        margin-right: auto;
    }
    footer .sprechzeiten div {
        text-align: center;
    }
    footer .col-md-4:nth-child(2) p {
        text-align: center;
    }
    footer .footer-adresse:after,
    footer .footer-telefon:after {
        width: 60%;
        right: 0;
        margin-left: auto;
        margin-right: auto;
    }
}

/* .... subfooter .... */
footer .musthavecopy {
    background: #fff;
    color: var(--text-clr);
}
footer .musthavecopy .container {
    display: flex;
    justify-content: space-between;
    padding: 10px 30px;
}
footer .musthavecopy ul.musthave {
    list-style: none;
    display: flex;
    margin-bottom: 0;
}
footer .musthavecopy ul.musthave a,
footer .musthavecopy .copy a {
    color: var(--text-clr);
}
footer .musthavecopy .copy {
    font-size: 14px;
}
footer .musthavecopy li.first {
    padding-right: 10px;
}
@media (max-width: 934px) {
    footer .musthavecopy {
        margin-bottom: 64px;
    }
}
@media (max-width: 768px) {
    footer .musthavecopy .container {
        flex-direction: column;
        justify-content: center;
    }
    footer .musthavecopy .copy {
        text-align: center;
    }
    footer .musthavecopy .musthave {
        padding: 0;
        justify-content: center;
    }
}


/* ---------------- ETC --------------- */

/* .... sticky sidebar .... */
@keyframes initial-display {
    0% {
      right: 0;
      width: 50px;
    }
    33% {
      right: 120px; 
      width: 170px;
    } 
    66% {
      right: 120px; 
      width: 170px;
    } 
    100% {
      right: 0;
      width: 50px;
    }
  }
.dce-stickysidebar .item {
    background: var(--cta-clr);
}
.dce-stickysidebar .item:hover {
    background: #c94b52;
}
.dce-stickysidebar .item a,
.dce-stickysidebar .item .title {
    color: #fff;
}
.dce-stickysidebar .item a {
    padding: 10px 5px;
}
.dce-stickysidebar i {
    margin-right: 10px;
    margin-left: 9px;
    font-size: 1.5em;
}
.dce-stickysidebar .item i.fa-info {
    margin-left: 17px;
    margin-right: 19px;
}
.dce-stickysidebar a:hover i,
.dce-stickysidebar a i{
    color: #fff;
}
@media (orientation: landscape) {
    .dce-stickysidebar .item:hover, 
    .dce-stickysidebar .item:focus {
        right: 115px;
        width: 185px;
    }
}
@media (max-width: 934px) {
    .dce-stickysidebar {
        z-index: 9999;
        max-width: 100vw;
    }
}

/* .... POWERMAIL .... */
.tx-powermail h3,
.tx-powermail legend {
    display: none;
}
main .tx-powermail div.powermail_fieldwrap {
    padding-left: 0;
    padding-right: 0;
}
.tx-powermail .powermail_fieldset .parsley-errors-list,
.tx-powermail .powermail_fieldset div.parsley-error,
.tx-powermail .powermail_fieldset .powermail_field_error_container .parsley-errors-list{
    background: transparent;
    border: none;
}
.tx-powermail .powermail_fieldset .parsley-errors-list>li {
    padding: 0;
}
body.pid4028 .row-2col {
    padding-top: 0;
}
@media (max-width:991px) {
    .tx-powermail .container-fluid {
        padding: 0;
    }
    main .tx-powermail div.powermail_fieldwrap {
        display: block;
    }
    main .powermail_fieldwrap > label.col-sm-2 {
        width: 100%;
        max-width: inherit;
    }
    main .powermail_fieldwrap > .col-sm-10 {
        max-width: inherit;
    }
    .powermail_fieldwrap_datenschutz label.control-label {
        display: none;
    }
}

/* .... dce gmaps .... */
.dce-gmaps {
    margin: 0;
}
.dce-gmaps .iframewrap {
    height: 300px;
}
.dce-gmaps .img-wrap {
    align-items: inherit !important;
}
.dce-gmaps .img-wrap img {
    height: 100%;
    object-fit: cover;
}
.dce-gmaps .text-wrap .btn {
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    font-weight: 600;
    color: var(--blue-clr);
    font-size: 14px;
}
.dce-gmaps .text-wrap .btn:hover {
    color: var(--dark-blue-clr);
}


/* .... PRINT STYLES .... */
@media print {
    .header-top,
    .footnavi,
    .musthave,
    .dce-keyvisual img {
        display: none;
    }
    .dce-keyvisual {
        height: 300px;
    }
    .dce-keyvisual h2, 
    .dce-keyvisual p {
        color: #333;
    }
}
