.leaders-section {
    padding: 2rem 1rem;
    @media (min-width: 1024px) {
        padding-top: 6rem;
        padding-bottom: 6rem;
    }

    .leaders-grid {
        display: grid;
        gap: 4rem;
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .leader-card {
        display: flex;
        align-items: flex-start;
        gap: 2rem;
        flex-direction: column;
        @media (min-width: 1024px) {
            flex-direction: row-reverse;
            align-items: center;
            gap: 4rem;
        }
    }

    .leader-photo {
        border-radius: 0.75rem;
        overflow: hidden;
        width: 100%;
        @media (min-width: 1024px) {
            width: 45%;
        }
        img {
            display: block;
            width: 100%;
            height: auto;
        }
    }

    .leader-info {
        width: 100%;
        position: relative;
        @media (min-width: 1024px) {
            width: 55%;
        }

        .leader-position {
            font-family: var(--e-global-typography-accent-font-family, "Merriweather"), serif;
            color: var(--e-global-color-secondary, rgb(14, 18, 22));
            font-size: 1.125rem;
            line-height: 1rem;
            letter-spacing: -.045rem;
            margin-bottom: 1.25rem;
            @media (min-width: 1024px) {
                font-size: 1.25rem;
                line-height: 1.75rem;
            }
        }

        .leader-name {
            font-family: var(--e-global-typography-primary-font-family, "Oswald"), sans-serif;
            color: rgb(14, 18, 22);
            letter-spacing: -0.045rem;
            font-weight: 700;
            font-size: 2.25rem;
            line-height: 1.15;
            @media (min-width: 1024px) {
                font-size: 3rem;
                line-height: 1;
            }
        }

        p:not(.leader-position) {
            max-width: 32rem;
            font-size: 1rem;
            line-height: 1.5;
            letter-spacing: .025em;
            color: rgb(35, 31, 32);
        }

        .btn-primary {
            background-color: var(--e-global-color-primary);
            font-family: var(--e-global-typography-accent-font-family);
            border-radius: 1.25rem;
            text-transform: uppercase;
            line-height: 1;
            font-size: .875rem;
            padding: .75rem 1.5rem;
            font-weight: 500;
            transition: all .3s cubic-bezier(.455, .03, .515, .955);
            &:hover {
                background-color: #000;
            }
        }
    }
    
    &.leaders-senior_pastor,
    &.leaders-interim_pastor {
        .leader-card {
            @media (min-width: 1024px) {
                flex-direction: row;
            }
        }
        .leader-photo {
            aspect-ratio: 1 / 1;
            position: relative;
            img {
                position: absolute;
                inset: 0;
                object-fit: cover;
				height: 100%;
            }
        }
        .leader-info {
            display: flex;
            flex-direction: column;
            .leader-position {
                order: 0;
                margin-bottom: 0;
            }
            .leader-name {
                order: 1;
                margin: 1.5rem 0 0;
                letter-spacing: -0.1rem;
                @media (min-width: 1024px) {
                    font-size: 3.75rem;
                    line-height: 1;
                }
            }
            p:not(.leader-position) {
                order: 3;
                margin: 1.5rem 0 0;
            }
        }
    }

    .section-title {
        font-family: var(--e-global-typography-primary-font-family, "Oswald"), sans-serif;
        color: rgb(14, 18, 22);
        letter-spacing: -0.095rem;
        line-height: 1;
        font-weight: 700;
        font-size: 3.75rem;
        @media (min-width: 1024px) {
            font-size: 5.5rem;
        }
    }

    &.leaders-associate_pastor {
        background-color: rgb(226 227 218 / 1);
        padding: 0 1.5rem;
        border-radius: 1.25rem;
        @media (min-width: 640px) {
            padding-left: 3rem;
            padding-right: 3rem;
        }

        .section-title {
            position: relative;
            transform: translateY(-1.5rem);
        }

        .leader-card {
            align-items: flex-start;
            justify-content: space-between;
            gap: 1.75rem;
            .leader-info {
                width: 100%;
                @media (min-width: 1024px) {
                    width: calc(5/12 * 100%);
                }

                p:not(.leader-position) {
                    font-size: 1.125rem;
                    line-height: 1.75rem;
                    padding: 0;
                    @media (min-width: 768px) {
                        padding-left: 1rem;
                        padding-right: 1rem;
                    }
                }
            }
            .leader-photo {
                width: 100%;
                border-radius: .5rem;
                aspect-ratio: 16/9;
                position: relative;
                @media (min-width: 1024px) {
                    width: 50%;
                }

                img {
                    position: absolute;
                    inset: 0;
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                }
            }
        }
    }

    &.leaders-staff {
        .leaders-grid {
            display: flex;
            flex-wrap: wrap;
            gap: 2rem;
        }

        .leader-card {
            flex-direction: column;
            align-items: center;
            gap: 0;
            flex: 1 1 42%;
            @media (min-width: 1200px) {
                flex: 1 1 20%;
            }
        }

        .leader-photo {
            width: 100%;
            aspect-ratio: 1 / 1.25;
            img {
                height: 100%;
                object-fit: cover;
            }
        }

        .leader-info {
            width: 100%;
            .leader-name {
                font-size: clamp(1.6rem, 6vw, 2rem);
                margin-bottom: 5px;
            }
			.leader-position {
				font-size: 1rem;
				line-height: 1.2;
				margin-bottom: 0;
			}
        }
    }
}
