/* Fonts are handled via Google Fonts in index.html */

/* Reset & Basics */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    scroll-behavior: smooth;
}

body {
    background-color: #050505;
    /* Deep black for cinematic feel */
    color: #ffffff;
    overflow-x: hidden;
    /* Prevent horizontal scroll */
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #000;
}

::-webkit-scrollbar-thumb {
    background: #333;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #D4143D;
}

/* Animations */
@keyframes floatUp {
    0% {
        transform: translateY(100vh) rotate(0deg);
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    90% {
        opacity: 1;
    }

    100% {
        transform: translateY(-100px) rotate(360deg);
        opacity: 0;
    }
}

.petal {
    position: absolute;
    background: rgba(212, 20, 61, 0.4);
    width: 15px;
    height: 15px;
    border-radius: 100% 0 100% 0;
    animation: floatUp 15s linear infinite;
    z-index: 1;
    pointer-events: none;
    box-shadow: 0 0 10px rgba(212, 20, 61, 0.2);
}

.petal:nth-child(even) {
    background: rgba(255, 209, 220, 0.3);
    /* Soft pink */
    width: 10px;
    height: 10px;
    border-radius: 0 100% 0 100%;
}

/* Utility to ensure elements are above petals */
section {
    position: relative;
    z-index: 10;
}

/* Glow effects */
.glow-text {
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.5), 0 0 20px rgba(255, 215, 0, 0.3);
}

.confession-visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
}