:root {
    --beige: #f4efe9;
    --beige-dark: #d8c4a8;
    --marron: #5a4a3a;
    --dark: #2a2a2a;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Montserrat', sans-serif;
    background-color: var(--beige);
    color: var(--dark);
    scroll-behavior: smooth;
}

.home-section {
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.page-title {
    font-family: 'Playfair Display', serif;
    font-size: 3.5rem;
    margin-bottom: 20px;
}

.name {
    text-transform: uppercase;
    letter-spacing: 3px;
    font-size: 16px;
}

.role {
    font-size: 14px;
    opacity: 0.7;
    margin-top: 5px;
}

.scroll-down {
    margin-top: 50px;
    text-decoration: none;
    font-size: 12px;
    letter-spacing: 2px;
    color: var(--marron);
    animation: bounce 2s infinite;
}

@keyframes bounce {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

.scrolling-presentation {
    background: var(--dark);
    color: #fff;
    overflow: hidden;
    white-space: nowrap;
}

.scrolling-text {
    padding: 30px 0;
    font-size: 32px;
    letter-spacing: 4px;
    animation: scroll 18s linear infinite;
}

@keyframes scroll {
    from { transform: translateX(100%); }
    to { transform: translateX(-100%); }
}

.projects-container {
    padding: 100px 0;
    text-align: center;
}

.projects-container h2 {
    font-family: 'Playfair Display', serif;
    font-size: 2.5rem;
    color: var(--marron);
    margin-bottom: 20px;
}

.cv-link {
    font-size: 1.2rem;
    text-decoration: none;
    color: var(--marron);
    border-bottom: 2px solid transparent;
    transition: border-color 0.3s ease;
}

.cv-link:hover {
    border-color: var(--marron);
}
