.logo-grid {
    position: relative;

    .left-col {
        position: relative;
        z-index: 1;
        transition: min-height 0.2s ease-out;

        &.heading-col {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            
            @media screen and (max-width: 1200px) {
                padding-left: 80px;
            }
            @media screen and (max-width: 991px) {
                padding-left: 60px;
            }
            @media screen and (max-width: 768px) {
                padding-left: 40px;
            }
            @media screen and (max-width: 576px) {
                padding-left: calc(var(--bs-gutter-x) * .5);
                text-align: center;
            }
            h2 {
                margin-bottom: 0;
                width: 100%;
            }
        }
        &.callout-col {
            @media screen and (max-width: 1200px) {
                padding-left: 80px;
            }
            @media screen and (max-width: 991px) {
                padding-left: 60px;
            }
            @media screen and (max-width: 768px) {
                padding-left: calc(var(--bs-gutter-x) * .5);
            }
        }
        .callout {
            outline: 2px solid rgba(var(--color-white-rgb), .2);
            border-radius: 30px;
            padding: 60px;

            @media screen and (max-width: 1600px) {
                padding: 40px;
            }
            @media screen and (max-width: 1200px) {
                max-width: 385px;
            }
            @media screen and (max-width: 768px) {
                max-width: none;
            }
            h2 {
                margin-bottom: var(--spacing-sm);
                line-height: 1.1;

                @media screen and (max-width: 991px) {
                    margin-bottom: 1.5rem;
                }
                @media screen and (max-width: 576px) {
                    margin-bottom: var(--spacing-xs);
                }
                .h3-gotham {
                    font-family: var(--font-primary);
                    font-size: 4.2rem;
                    font-weight: bold;
                    font-style: normal;
                    text-transform: uppercase;
                    letter-spacing: 4.2px;
                    margin-right: 4px;

                    @media screen and (max-width: 991px) {
                        font-size: 3rem;
                        letter-spacing: 3px;
                        margin-right: 2px;
                    }
                    @media screen and (max-width: 576px) {
                        font-size: 2.4rem;
                        letter-spacing: 2.4px;
                        margin-right: 1px;
                    }
                    .flip {
                        display: inline-block;
                        transform: rotate(180deg);
                        margin-right: 10px;

                        @media screen and (max-width: 991px) {
                            margin-right: 6px;
                        }
                        @media screen and (max-width: 576px) {
                            margin-right: 4px;
                        }
                    }
                }
            }
            p {
                font-size: 1.6rem;
                line-height: 1.4;
                margin-bottom: 0;
                text-wrap: pretty;
            }
            .callout-video {
                width: 100%;
                aspect-ratio: 1 / 1;
                border-radius: 30px;
                overflow: hidden;
                margin-top: var(--spacing-lg);

                @media screen and (max-width: 991px) {
                    margin-top: var(--spacing-md);
                }
                video {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                }
            }
        }
    }
    .logo-grid-container {
        position: absolute;
        top: var(--spacing-5xl);
        right: 0;
        
        @media screen and (max-width: 1200px) {
            position: relative;
            top: auto;
            right: auto;
            width: 90%;
            margin: 0 auto;
            padding: 0 var(--container-padding);
            margin-top: 40px;
        }
        .logo-grid-bg {
            margin-left: calc(((100% - var(--container-max-width)) / 2) + var(--container-padding) + (var(--container-max-width) / 3));
            background: linear-gradient(135deg, rgba(128, 128, 128, .15) 60%, rgba(var(--color-white-rgb), 0) 100%);
            outline: 2px solid rgba(var(--color-white-rgb), .1);
            border-top-left-radius: 30px;
            border-bottom-left-radius: 30px;
            padding: 80px;

            @media screen and (max-width: 1600px) {
                padding: 80px 60px;
            }
            @media screen and (max-width: 1460px) {
                padding: 70px 50px;
                margin-left: calc(((105% - var(--container-max-width)) / 2) + var(--container-padding) + (var(--container-max-width) / 3));
            }
            @media screen and (max-width: 1200px) {
                padding: 70px 50px;
                margin-left: 0;
                border-radius: 30px;
            }
            @media screen and (max-width: 768px) {
                padding: 40px;
            }
            .logos {
                display: flex;
                flex-wrap: wrap;
                margin: -30px;

                @media screen and (max-width: 1460px) {
                    margin: -25px;
                }
                @media screen and (max-width: 576px) {
                    margin: -20px;
                }
                .logo {
                    width: 20%;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    padding: 30px;

                    @media screen and (max-width: 1460px) {
                        padding: 25px;
                    }
                    @media screen and (max-width: 991px) {
                        width: 25%;
                    }
                    @media screen and (max-width: 768px) {
                        width: calc(100% / 3);
                    }
                    @media screen and (max-width: 576px) {
                        width: 50%;
                        padding: 20px;
                    }
                    a {
                        display: inline-block;

                        &:hover, &:focus-visible {
                            img {
                                top: -5px;
                            }
                        }
                    }
                    img {
                        width: 100%;
                        max-width: 130px;
                        position: relative;
                        top: 0;
                        transition: .2s ease-in-out;
                    }
                }
            }
        }
    }
}