.theme-toggle-container {
    display: flex;
    justify-content: flex-end;
    margin: 1rem 1.25rem;
}

header {
    text-align: center;
    margin-bottom: 30px;
}

main section {
    margin-bottom: 5rem;
}

.hero {
    align-items: center;

    section {
        margin: 0;
    }

    .logo {
        justify-self: center;
    }
}

.details,
.program {
    ul {
        padding: 0;

        li {
            list-style-type: none;
        }
    }
}

.details {
    text-align: center;
}

.cta-button {
    display: flex;
    justify-content: center;
    margin-top: 40px;

    a {
        text-decoration: none;
        color: white;
    }

    button {
        border: none;
        padding: 10px 20px;

        &:hover {
            background-color: var(--pico-primary-hover-background);
        }
    }
}

.social-promo {
    margin-top: 3rem;
}

.team-members {
    display: flex;
    justify-content: center;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 3rem;

    .team-member {
        display: flex;
        flex-direction: column;
        align-items: center;
        max-width: 250px;
        gap: 1rem;

        .member-photo {
            width: 200px;
            height: 200px;
            border-radius: 50%;
            color: white;
            background-color: #d92662;
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 150px;
            
            img:not(.blank) {
                border-radius: 50%;
            }
        }

        .member-details {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: .25rem;
            text-align: center;
        }

        .social-icons {
            margin-top: 0.5rem;
            display: flex;
            gap: 0.5rem;
        }
    }
}


.partner {
    display: flex;
    justify-content: center;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 3rem;

    .team-member {
        display: flex;
        flex-direction: column;
        align-items: center;
        max-width: 250px;
        gap: 1rem;

        .member-photo {
            img {
                width: 200px;
            }            
            color: white;
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 150px;
        }

        .member-details {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: .25rem;
            text-align: center;
        }

        .social-icons {
            margin-top: 0.5rem;
            display: flex;
            gap: 0.5rem;
        }
    }
}

footer {
    background-color: var(--pico-primary-background);
    margin-top: 1rem;
    padding: 20px;
    text-align: center;

    p {
        color: white;
    }

    a {
        color: white;
        text-decoration: underline;

        &:hover {
            text-decoration: none;
        }
    }
}
