/**
 * Hero Intro — Styles
 *
 * Conditional geladen via hero-intro.php (nur Startseite).
 * Referenziert CSS-Variablen aus global-variables.css.
 */


/* ============================================
   HERO CONTAINER
   ============================================ */

.bl-hero {
    height: 100%;
    width: 100%;
    position: relative;
    margin: auto;
}

@media screen and (max-width: 960px) {
    .bl-hero {
        height: 60%;
    }
}

@media screen and (max-width: 600px) {
    .bl-hero {
        height: 100vh;
    }
}


/* ============================================
   INTRO ANIMATION
   ============================================ */

.bl-hero__intro {
    width: 220px;
    height: 180px;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

@media screen and (min-width: 600px) {
    .bl-hero__intro {
        width: 320px;
        height: 263px;
    }
}

@media screen and (min-width: 900px) {
    .bl-hero__intro {
        width: 620px;
        height: 525px;
    }
}

.bl-hero__animation {
    width: 100%;
    height: 100%;
    position: absolute;
}

.bl-hero__herz,
.bl-hero__logo,
.bl-hero__frau {
    position: absolute;
}

.bl-hero__herz {
    width: 100%;
    opacity: 1;
}

.bl-hero__logo-link {
    display: block;
    cursor: pointer;
    animation: bl-float 3.5s ease-in-out infinite;
    will-change: transform;
}

@keyframes bl-float {
    0%   { transform: translateY(0) scale(1); }
    33%  { transform: translateY(-10px) scale(1.05); }
    66%  { transform: translateY(4px) scale(1); }
    100% { transform: translateY(0) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .bl-hero__logo-link {
        animation: none;
    }
}

.bl-hero__logo {
    width: 41.171875%;
    left: 65px;
    top: 30px;
}

@media screen and (min-width: 600px) {
    .bl-hero__logo {
        left: 95px;
        top: 40px;
    }
}

@media screen and (min-width: 900px) {
    .bl-hero__logo {
        left: 185px;
        top: 70px;
    }
}

.bl-hero__frau {
    display: none;
}

@media screen and (min-width: 1000px) {
    .bl-hero__frau {
        display: block;
        width: 450px;
        left: 50%;
        transform: translateX(-50%);
        z-index: 0;
    }
}
