/*
Theme Name: hello-elementor-child
Description: A plain-vanilla & lightweight theme for Elementor page builder
Author: instant
Author URI: https://instantmedia.de
Template: hello-elementor
Version: 2.2.1
Text Domain: hello-elementor
Tags: flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

body {}

/* Silbentrennung für Überschriften (nutzt u.a. &shy; / &#173; im Text) */
h1,
h2,
h3 {
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphenate-limit-chars: 6 3 3;
    overflow-wrap: break-word;
}

/* "Beitrag Inhalt"-Widget (theme-post-content): H1 des verlinkten Beitrags
   wird serverseitig als H3-Titel ausgegeben, mit Abstand zum gekürzten Text */
.theme-post-content-title {
    margin: 0 0 12px;
}

.theme-post-content-text {
    margin: 0;
}

.sr-only {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}



.keyboard-outline {
    outline: 3px solid #000 !important;
    /*border:2px solid #FFF!important;*/
    box-shadow: 0px 0px 0px 2px #FFF !important;
    outline-offset: 3px;
    -webkit-transition: none !important;
    transition: none !important;
    display: inline-block
}

.checkmark:active,
.checkmark:focus {
    outline: 3px solid #000 !important;
    /*border:2px solid #D9090C!important;*/
    box-shadow: 0px 0px 0px 2px #FFF !important;
    outline-offset: 3px;
    -webkit-transition: none !important;
    transition: none !important;
    display: block
}

button:active.keyboard-outline,
button:focus.keyboard-outline,
input:active.keyboard-outline,
input:focus.keyboard-outline,
a[role="tab"].keyboard-outline {
    outline: 3px solid #000 !important;
    /*border:2px solid #D9090C!important;*/
    box-shadow: 0px 0px 0px 2px #FFF !important;
    outline-offset: 3px;
    -webkit-transition: none !important;
    transition: none !important;
    display: inline-block
}

a.back-to-top {
    position: fixed;
    z-index: 9999 !important;
    bottom: 10px;
    right: 10px;
    text-decoration: none !important;
}




a.e-button-base {
    text-decoration: none !important;
}

a.e-button-base:hover {
    color: #fff !important;
    background-color: #1A1A1A !important
}

a.thema,
a.thema h3,
a.thema p,
a.thema:hover {
    text-decoration: none !important;
}

a.thema:hover {
    border: 5px solid #F1A475
}

a.thema:hover .elementor-icon-wrapper .elementor-icon .e-font-icon-svg {
    color: #1a1a1a !important;
    fill: #1a1a1a !important;
}

.elementor-swiper-button-next,
.elementor-swiper-button-prev {
    background: #000;
    border-radius: 100%;
    padding: 10px;
}


body.page-id-77 h1,
body.page-id-3 h2,
body.page-id-3 h1 {
    padding-top: 50px
}

body.page-id-77 .post-77,
body.page-id-3 .post-3 {
    padding-bottom: 100px;
}

ul#menu-2-6793d5ef {
    min-height: calc(100vh - 75px) !important;

}

figcaption.elementor-image-carousel-caption {
    color: #fff !important;
    font-size: 1rem !important;
    font-weight: normal !important;
    text-decoration: none !important;
    font-style: normal !important;
}

a[data-elementor-open-lightbox="yes"] {
    text-decoration: none !important;
    font-weight: normal !important;
    font-style: normal !important;

}

.elementor-lightbox .elementor-swiper-button-next,
.elementor-lightbox .elementor-swiper-button-prev {
    height: 50px !important;
    width: 50px !important;

}

@media only screen and (max-width: 950px) {


    body.page-id-3 ul.wp-block-list {
        margin-left: -15px !important
    }

    body.page-id-3 ul.wp-block-list li {
        padding: 10px 0px !important
    }

    body.page-id-3 p.wp-block-paragraph,
    body.page-id-3 ul.wp-block-list li,
    body.page-id-3 ul.wp-block-list li a,
    body.page-id-3 a,
    body.page-id-3 a:link,
    body.page-id-3 a:visited,
    body.page-id-3 a:hover,
    body.page-id-3 a:active {
        -ms-word-break: break-all !important;
        word-break: break-all !important;
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
    }

}


@media only screen and (max-width: 320px) {
    #logotxt p {
        font-size: 1rem !important
    }


    .elementor-element p,
    .elementor-element ul li,
    .akkordion .elementor-tab-title h3.elementor-accordion-title {
        -ms-word-break: break-all !important;
        word-break: break-all !important;
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
    }


}




@property --hue1 {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
}

@property --hue2 {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;

}

.bg-ani {
    width: 100%;
    max-width: 100vw;
    min-height: 100vh;
    text-align: center;
    overflow-x: hidden;
    background-image: linear-gradient(in oklch longer hue to right,
            oklch(0.93 0.08 var(--hue1) / 50%),
            oklch(0.93 0.08 var(--hue2) / 50%)),
        linear-gradient(in oklch longer hue to bottom,
            oklch(0.93 0.08 var(--hue1) / 50%),
            oklch(0.93 0.08 var(--hue2) / 50%));

    background-size: 100% 100%;


    animation-name: anim_bg;
    animation-duration: 7.5s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

@keyframes anim_bg {
    0% {
        --hue1: 0deg;
        --hue2: 300deg;
    }

    100% {
        --hue1: 360deg;
        --hue2: 660deg;
    }
}


/* Desktop - Aktiven Menüpunkt korrekt stylen */
.elementor-nav-menu--main .current-menu-parent>a,
.elementor-nav-menu--main .current-post-parent>a,
.elementor-nav-menu--main .current-post-ancestor>a {
    color: var(--e-global-color-accent) !important;
    fill: var(--e-global-color-accent) !important;
}

/* Mobile - Aktiven Menüpunkt korrekt stylen */
.elementor-nav-menu--dropdown .current-menu-parent>a,
.elementor-nav-menu--dropdown .current-post-parent>a,
.elementor-nav-menu--dropdown .current-post-ancestor>a {
    color: var(--e-global-color-accent) !important;
    fill: var(--e-global-color-accent) !important;
}







@media only screen and (max-width: 1500px) {}


@media only screen and (max-width: 1410px) {}

@media only screen and (max-width: 1200px) {}



/* tablet*/
@media only screen and (max-width: 1024px) {}





/* Mobile*/
@media only screen and (max-width: 768px) {}


@media only screen and (max-width: 500px) {}




@media only screen and (max-width: 400px) {}

@media only screen and (max-width: 350px) {}






@supports (-webkit-touch-callout: default) {
    /* Safari Only CSS */
}

@supports (-webkit-overflow-scrolling: touch) {
    /* iOS Safari Only */
}