/* --- HOME PAGE SPECIFICS --- */

/* 1. Hide the Sophia Domenica name on the landing spread */
.nav-home-link { 
    display: none !important; 
}

/* 2. Fade-in animation for the tabs (optional) */
.nav-links a {
    opacity: 0;
    animation: fadeIn 1.5s ease forwards 2s;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* 3. Mobile Override: Ensure tabs are visible when the menu opens */
@media (max-width: 1300px) {
    .nav-links.active a {
        opacity: 1;
        animation: none;
    }
}

.magazine-spread {
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    padding: 0 7.5%; 
}

.content-container {
    position: relative;
    width: 100%;
    max-width: 1400px;
    text-align: center;
}

.first-name, .last-name {
    font-family: 'Cormorant Garamond', serif;
    font-size: 15vw; 
    font-weight: 300;
    line-height: 0.75;
    opacity: 0;
}

.first-name {
    margin-left: -10vw;
    animation: fadeIn 1.8s ease-out forwards;
    animation-delay: 0.4s;
}

.last-name {
    margin-left: 10vw;
    font-style: italic;
    animation: fadeIn 1.8s ease-out forwards;
    animation-delay: 0.8s;
}

.keywords {
    position: absolute;
    width: 100%; height: 100%;
    top: 0; left: 0;
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 1.2rem;
    text-transform: lowercase;
}

.kw { 
    position: absolute; opacity: 0;
    animation: fadeIn 2s ease-out forwards 1.8s;
}

.kw-1 { top: -8%; left: 0; } 
.kw-2 { top: -12%; right: 0; }
.kw-3 { bottom: -22%; left: 50%; transform: translateX(-50%); }

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ABOUT SECTION */
.about-section {
    min-height: 100vh;
    display: flex;
    flex-direction: column; /* Allows footer to sit at the bottom */
    align-items: center;
    justify-content: center;
    background-color: var(--warm-emerald);
    color: var(--sand-paper);
    padding: 120px 10% 40px; /* Added bottom padding for footer space */
}

.about-content { max-width: 850px; text-align: left; }
.about-title { font-family: 'Cormorant Garamond', serif; font-size: 4rem; font-style: italic; border-bottom: 1px solid rgba(244, 241, 234, 0.2); display: inline-block; margin-bottom: 3rem; }
.about-text p { font-family: 'Cormorant Garamond', serif; font-size: 1.7rem; line-height: 1.5; font-weight: 300; margin-bottom: 2.5rem; }

.social-links { margin-top: 40px; display: flex; gap: 25px; }
.social-links a { color: var(--sand-paper); font-size: 1.5rem; transition: opacity 0.3s; text-decoration: none; }

/* --- FOOTER --- */
.site-footer { 
    width: 100%;
    padding: 20px 7.5%; /* Tight spacing */
    margin-top: 40px;    /* Pulls it closer to the text above */
    background: transparent; /* Ensures it stays on the green background */
}

.footer-content { 
    display: flex; 
    justify-content: flex-end; /* This forces the link to the far right side */
    align-items: center; 
}

.back-to-top { 
    font-family: 'Montserrat', sans-serif; 
    font-size: 0.65rem; 
    text-transform: uppercase; 
    letter-spacing: 2px;
    color: var(--warm-emerald); /* This is your Ivory/Sand Paper color */
    text-decoration: none; 
    opacity: 0.7; 
    transition: opacity 0.3s ease;
}

.back-to-top:hover {
    opacity: 1; /* Brightens when you hover over it */
}
/* --- HOME PAGE ROLES: HORIZONTAL BAR FIX --- */
@media screen and (max-width: 768px) {

    /* 1. Ensure the name is centered and scaled */
    .hero-name {
        font-size: 3.2rem !important;
        text-align: center !important;
        display: block !important;
        margin-bottom: 5px !important;
        letter-spacing: 5px !important;
    }

    /* 2. The Container: Forces everything onto one line */
    .hero-roles {
        display: flex !important;
        flex-direction: row !important; /* Forces horizontal instead of vertical */
        flex-wrap: wrap; /* Allows it to wrap only if the screen is tiny */
        justify-content: center !important;
        align-items: center !important;
        gap: 6px !important; /* Tight spacing for the editorial look */
        width: 100% !important;
        padding: 0 10px !important;
        margin-top: 5px !important;
    }

    /* 3. The Text: Targets spans or paragraphs inside the roles div */
    .hero-roles span, 
    .hero-roles p,
    .hero-roles a {
        font-family: 'Montserrat', sans-serif;
        font-size: 0.6rem !important;
        text-transform: uppercase;
        letter-spacing: 1px;
        display: flex !important;
        align-items: center;
        white-space: nowrap;
    }

    /* 4. The Bar Fix: This adds the " | " between your words */
    .hero-roles span:not(:last-child)::after,
    .hero-roles p:not(:last-child)::after {
        content: "|";
        margin-left: 6px;
        margin-right: 2px;
        font-weight: 300;
        opacity: 0.6;
    }
}