#about {
    padding-top: 4em;
    margin: 0 20px;
    display: flex;
    flex-direction: column;

    & .description__box {
        background-color: var(--lighter-blue-color);
        padding: 15px;
        font-size: 18px;
        border-radius: 12px;
        line-height: 1.7;

        & p{
            text-align: justify;
        }

        & img {
            width: 100%;
        }
    }

    & .partners__box {
        margin: 2em 0;
        justify-content: space-evenly;

        & h4 {
            font-size: 24px;
            font-weight: 600;
            text-align: center;
            text-decoration: underline;
            text-decoration-color: var(--light-blue-color);
        }

        & .partner {
            background-color: var(--lighter-blue-color);
            margin: .8em 0;
            border-radius: 12px;
            padding: 0;
            
            &:hover {
                background-color: var(--light-blue-color);
            }
            
            & a {
                width: 100%;
                height: 150px;
                display: flex;
                justify-content: center;
                
                img {
                    width: 50%;
                    object-fit: contain;
                }
            }
        }
    }

    & .social__box {
        margin: 2em 0;
        display: flex;
        flex-direction: column;

        & .icons {
            border-radius: 20px;
            padding: .5em 1em;
            display: flex;
            justify-content: space-around;

            & .social__media {
                background-color: var(--medium-blue-color);
                border-radius: 50%;
                width: 50px;
                aspect-ratio: 1/1;

                &:hover {
                    background-color: var(--light-blue-color);
                }
                
                & a {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    width: 100%;
                    height: 100%;
                    color: var(--black-color);
                    font-size: 30px;
                    animation: pulse-social 2s infinite;
                    text-decoration: none;
                    border-radius: 50%;
                }
            }
        }
    }
}

@keyframes pulse-social {
    0% {
        box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.2);
    }

    100% {
        box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
    }
}

@media screen and (min-width: 576px) {
    #about {
        & .description__box {
            font-size: 20px;
        }

        & .partners__box{
            margin: 1em 0;

            & h4 {
                font-size: 32px;
            }

            & .partner a img {
                width: 70%;
            }
        }

        & .social__box {
            flex-direction: row;
            margin: 1em 0;

            & .team__box {
                & img {
                    width: 100%;
                }
            }

            & .icons {
                flex-direction: column;
                padding: 0;
                justify-content: space-evenly;

                & .social__media {
                    width: 60px;

                    & a {
                        font-size: 32px;
                    }
                }
            }
        }
    }
}

@media screen and (min-width: 992px) {
    #about {
        display: grid;
        grid-template-columns: 5fr 4fr;

        & .description__box {
            min-height: fit-content;
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-evenly;
        }

        & .section__title {
            grid-column: 1/3;
            margin: 1em 0;
        }

        & .social__box {
            margin: 1em 0;
            
            & .icons {
                justify-content: end;
                flex-direction: row;
                width: 100%;

                & .social__media {
                    margin: 0 20px;
                }
            }
        }

        & .partners__box {
            margin: 0;
            align-items: end;
            
            & h4 {
                margin: 20px 0;
            }

            & .team__box {
                width: 80%;
                align-self: center;
                
                & img {
                    width: 100%;
                }
            }

            & .partner {
                height: fit-content;
                min-height: 120px;
                display: flex;
                align-items: center;
                margin: 0;
                
                & a {
                    
                    & img{
                        width: 70%;
                    }
                }
            }
        }
    }
}

@media screen and (min-width: 1700px) {
    #about {
        & .description__box p {
            font-size: 24px;
        }
    }
}