/* ============================================================
   HAUPTSEITE - GOTHIC/HAUNTED THEME
   ============================================================ */

/* Reset & Basis */
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    width: 100%;
    height: 100%;
    overflow: hidden;
    user-select: none;
    -webkit-user-select: none;
}

/* Body - Hintergrund */
body {
    margin: 0;
    min-height: 100vh;
    background-color: #0a0000;
    background-image: url("../hauntedbackground.png"), url("https://lifestyleschmerzen.de/gallery/hauntedbackground.png");
    background-size: 1920px 1080px, 1920px 1080px;
    background-position: center bottom, center bottom;
    background-repeat: no-repeat, no-repeat;
    position: relative;
}

/* Vignetten-Effekt */
body::before {
    content: '';
    position: fixed;
    inset: 0;
    background: radial-gradient(
        ellipse at center,
        rgba(0,0,0,0) 20%,
        rgba(0,0,0,0.35) 55%,
        rgba(0,0,0,0.72) 80%,
        rgba(0,0,0,0.92) 100%
    );
    z-index: 1;
    pointer-events: none;
}

body::after {
    content: '';
    position: fixed;
    inset: 0;
    background: radial-gradient(
        ellipse 120% 120% at center,
        transparent 40%,
        rgba(0,0,0,0.5) 100%
    );
    z-index: 1;
    pointer-events: none;
}

/* Haupt-Ansicht */
#main-view {
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    flex-direction: column;
    z-index: 2;
}

/* Hauptüberschrift */
h1 {
    font-family: 'Creepster', cursive;
    font-size: clamp(2rem, 6vw, 5rem);
    color: #fff;
    letter-spacing: 0.12em;
    text-align: center;
    text-shadow:
        0 0 12px rgba(200,0,0,0.9),
        0 0 30px rgba(180,0,0,0.6),
        0 0 70px rgba(120,0,0,0.4),
        0 2px 4px rgba(0,0,0,0.95);
    pointer-events: none;
    line-height: 1.3;
}

/* Nebel-Layer */
#fog-layer {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 200px;
    pointer-events: none;
    z-index: 1;
    background: linear-gradient(to top, rgba(0,5,0,0.6) 0%, transparent 100%);
}

.fog {
    position: absolute;
    bottom: 20px;
    left: -10%;
    width: 120%;
    height: 65px;
    background: radial-gradient(ellipse at 50% 100%, rgba(0,255,80,0.045) 0%, transparent 70%);
    animation: fogdrift 14s ease-in-out infinite alternate;
    filter: blur(9px);
}

.fog2 {
    bottom: 38px;
    animation-duration: 20s;
    animation-delay: -7s;
    opacity: 0.65;
}

.fog3 {
    bottom: 10px;
    animation-duration: 26s;
    animation-delay: -13s;
    opacity: 0.45;
    left: -20%;
    width: 140%;
}

@keyframes fogdrift {
    from { transform: translateX(-5%); }
    to { transform: translateX(5%); }
}
