        /* Reset default browser styles */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html, body {
            height: 100%;
            font-family: 'Georgia', serif;
            background-color: #f8f9fa;
            overflow: hidden;
        }

        .background {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
        }

        /* Container for text elements */
        .text-container {
            position: relative;
            min-height: 100vh;
            width: 100vw;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            padding: 2vw 20vw;
            z-index: 1;
        }

        .text {
            opacity: 0;
            font-size: clamp(1.4rem, 4vw, 2.8rem);
            font-weight: 600;
            color: #333;
            margin-bottom: 0.4vh;
            transform: translateY(0);
            white-space: normal;
            text-align: justify;
            width: 100%;
        }

        /* Special text styles */
        .bold-text {
            font-weight: 700;
            color: #111;
        }

        .red-highlight {
            color: #cc0000;
        }

        .pink-text {
            color: #e6397a;
        }

        /* Animations */
        @keyframes fadeIn {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .text-1 {
            animation: fadeIn 0.8s forwards;
            animation-delay: 0.4s;
        }

        .text-2 {
            animation: fadeIn 0.8s forwards;
            animation-delay: 0.7s;
        }

        .text-3 {
            animation: fadeIn 0.8s forwards;
            animation-delay: 1.2s;
        }

        /* Mail Link Styles */
        .mail-link {
            position: absolute;
            bottom: 4.5vh;
            right: 15vw;
            font-size: 1rem;
            font-weight: 500;
            color: #111;
            text-decoration: none;
            opacity: 0.7;
            transition: all 0.2s ease;
            z-index: 2;
        }

        .mail-link:hover {
            opacity: 1;
            transform: translateX(-2px);
        }

        /* Mobile-specific styles */
        @media (max-width: 768px) {
            body {
                overflow-y: auto;
            }
            
            .text-container {
                padding: 4vw 22vw;
            }
            
            .text {
                font-size: clamp(1.1rem, 8vw, 2.4rem);
            }
            
            .mail-link {
                font-size: 0.9rem;
                right: 18vw;
                bottom: 4.5vh;
            }
        }

        /* Tablet-specific styles */
        @media (min-width: 769px) and (max-width: 1024px) {
            .text {
                font-size: clamp(1.6rem, 6vw, 2.6rem);
            }
        }