/* --- Wrapper Styles --- */
.kt-teams-wrapper {
    /* -- Block Styles -- */
    &.kt-teams-wrapper--block {
        .kt-teams-wrapper__inner {
            max-width: 100%;
            padding-left: 0;
            padding-right: 0;
            margin: 0;
        }
    }

    /* -- Inner Wrapper Styles -- */
    .kt-teams-wrapper__inner {
        max-width: var(--kt-wrapper-max-width);
        padding: var(--kt-wrapper-padding-top) var(--kt-wrapper-padding-right) var(--kt-wrapper-padding-bottom) var(--kt-wrapper-padding-left);
        margin: 0 auto;


        &.kt-teams-wrapper__inner--archive {
            --kt-wrapper-max-width: var(--kt-max-landing-page-width);
            --kt-wrapper-padding-left: var(--kt-padding-left);
            --kt-wrapper-padding-right: var(--kt-padding-right);
            --kt-wrapper-padding-top: var(--kt-padding-landing-top-mobile);
            --kt-wrapper-padding-bottom: var(--kt-padding-landing-bottom-mobile);

            @media (min-width: 991px) {
                --kt-wrapper-padding-left: var(--kt-padding-left);
                --kt-wrapper-padding-right: var(--kt-padding-right);
                --kt-wrapper-padding-top: var(--kt-padding-landing-top-tablet);
                --kt-wrapper-padding-bottom: var(--kt-padding-landing-bottom-tablet);

            }

            @media (min-width: 1280px) {
                --kt-wrapper-padding-left: var(--kt-padding-left);
                --kt-wrapper-padding-right: var(--kt-padding-right);
                --kt-wrapper-padding-top: var(--kt-padding-landing-top-desktop);
                --kt-wrapper-padding-bottom: var(--kt-padding-landing-bottom-desktop);
            }
        }

        &.kt-teams-wrapper__inner--single {
            --kt-wrapper-max-width: var(--kt-max-details-page-width);
            --kt-wrapper-padding-left: var(--kt-padding-left);
            --kt-wrapper-padding-right: var(--kt-padding-right);
            --kt-wrapper-padding-top: var(--kt-padding-details-top-mobile);
            --kt-wrapper-padding-bottom: var(--kt-padding-details-bottom-mobile);

            @media (min-width: 991px) {
                --kt-wrapper-padding-left: var(--kt-padding-left);
                --kt-wrapper-padding-right: var(--kt-padding-right);
                --kt-wrapper-padding-top: var(--kt-padding-details-top-tablet);
                --kt-wrapper-padding-bottom: var(--kt-padding-details-bottom-tablet);

            }

            @media (min-width: 1280px) {
                --kt-wrapper-padding-left: var(--kt-padding-left);
                --kt-wrapper-padding-right: var(--kt-padding-right);
                --kt-wrapper-padding-top: var(--kt-padding-details-top-desktop);
                --kt-wrapper-padding-bottom: var(--kt-padding-details-bottom-desktop);
            }
        }
    }

    /* -- Description Styles -- */
    .kt-teams-description {
        margin: 0 0 3rem 0;
    }

    /* -- Filter Styles -- */
    .kt-filters {
        .kt-filters__list {
            display: flex;
            gap: 1rem;
            margin: 3rem 0;
            padding: 0;
            list-style: none;
        }
    
        .kt-filters__link {
            padding: 0.5rem 1rem;
            background-color: var(--kt-filter-background);
            color: var(--kt-filter-color);
            border: var(--kt-filter-border);
            font-size: 0.9rem;
            font-weight: 700;
            cursor: pointer;
            transition: all 0.3s ease-out;
    
            &:hover {
                background-color: var(--kt-filter-hover-background);
                color: var(--kt-filter-hover-color);
                border: var(--kt-filter-hover-border);
            }
    
            &:focus{
                background-color: var(--kt-filter-hover-background);
                color: var(--kt-filter-hover-color);
                border: var(--kt-filter-hover-border);
            }
    
            &.kt-filters__link--active {
                background-color: var(--kt-filter-active-background);
                color: var(--kt-filter-active-color);
                border: var(--kt-filter-active-border);
            }
        }
    }

    /* -- Listing Loop Styles -- */
    .kt-teams-loop {
        /* -- Column Styles -- */
        &.kt-teams-loop--columns {
            display: flex;
            flex-wrap: wrap;
            gap: 1rem;

            /* -- 2 Column Styles -- */
            &.kt-teams-loop--columns-2 {
                @media (min-width: 767px) {
                    .kt-listing {
                        width: calc((100% - 1rem) / 2);
                    }
                }
            }

            /* -- 3 Column Styles -- */
            &.kt-teams-loop--columns-3 {
                @media (min-width: 767px) {
                    .kt-listing {
                        width: calc((100% - 1rem) / 2);
                    }
                }

                @media (min-width: 991px) {
                    .kt-listing {
                        width: calc((100% - 2rem) / 3);
                    }
                }
            }

            /* -- 4 Column Styles -- */
            &.kt-teams-loop--columns-4 {
                @media (min-width: 767px) {
                    .kt-listing {
                        width: calc((100% - 1rem) / 2);
                    }
                }

                @media (min-width: 991px) {
                    .kt-listing {
                        width: calc((100% - 2rem) / 3);
                    }
                }

                @media (min-width: 1280px) {
                    .kt-listing {
                        width: calc((100% - 3rem) / 4);
                    }
                }
            }

            /* --- Inner Styles --- */
            .kt-listing__inner {
                --kt-inner-display: flex;
                --kt-inner-direction: column;
                --kt-inner-height: 100%;
            }

            /* --- Content Styles --- */
            .kt-listing__content {
                --kt-content-display: flex;
                --kt-content-direction: column;
                --kt-content-justify: space-between;
                --kt-content-height: 100%;
                --kt-content-padding: 1rem;
            }
            
            /* --- Main Styles --- */
            .kt-listing__main {
                --kt-main-padding: 1rem 1rem 0 1rem;
                --kt-main-text-align: left;

                /* --- Full Name Styles --- */
                .kt-full-name {
                    --kt-full-name-display: var(--kt-column-full-name-display);
                    --kt-full-name-content: var(--kt-column-full-name-content);
                    --kt-full-name-prefix: var(--kt-column-full-name-prefix);
                    --kt-full-name-color: var(--kt-column-full-name-color);
                    --kt-full-name-font-size: var(--kt-column-full-name-font-size);
                    --kt-full-name-line-height: var(--kt-column-full-name-line-height-mobile);
                    --kt-full-name-font-weight: var(--kt-column-full-name-font-weight-mobile);
                    --kt-full-name-postnominals-color: var(--kt-column-full-name-postnominals-color);
                    --kt-full-name-postnominals-font-size: var(--kt-column-full-name-postnominals-font-size);
                    --kt-full-name-postnominals-line-height: var(--kt-column-full-name-postnominals-line-height-mobile);
                    --kt-full-name-postnominals-font-weight: var(--kt-column-full-name-postnominals-font-weight-mobile);
                }

                @media (min-width: 991px) {
                    .kt-full-name {
                    --kt-full-name-line-height: var(--kt-column-full-name-line-height-desktop);
                    --kt-full-name-font-weight: var(--kt-column-full-name-font-weight-desktop);
                    --kt-full-name-postnominals-line-height: var(--kt-column-full-name-postnominals-line-height-desktop);
                    --kt-full-name-postnominals-font-weight: var(--kt-column-full-name-postnominals-font-weight-desktop);
                    }
                }

                /* --- Role Styles --- */
                .kt-role {
                    --kt-role-display: var(--kt-column-role-display);
                    --kt-role-margin: var(--kt-column-role-margin);
                    --kt-role-color: var(--kt-column-role-color);
                    --kt-role-font-size: var(--kt-column-role-font-size);
                    --kt-role-font-weight: var(--kt-column-role-font-weight-mobile);
                    --kt-role-line-height: var(--kt-column-role-line-height-mobile);
                }

                @media (min-width: 991px) {
                    .kt-role {
                        --kt-role-font-weight: var(--kt-column-role-font-weight-desktop);
                        --kt-role-line-height: var(--kt-column-role-line-height-desktop);
                    }
                }

                /* --- Department Styles --- */
                .kt-department {
                    --kt-department-display: var( --kt-column-department-display);
                    --kt-department-margin: var(--kt-column-department-margin);
                    --kt-department-color: var(--kt-column-department-color);
                    --kt-department-font-size: var(--kt-column-department-font-size);
                    --kt-department-font-weight: var(--kt-column-department-font-weight-mobile);
                    --kt-department-line-height: var(--kt-column-department-line-height-mobile);
                }

                @media (min-width: 991px) {
                    .kt-department {
                        --kt-department-font-weight: var(--kt-column-department-font-weight-desktop);
                        --kt-department-line-height: var(--kt-column-department-line-height-desktop);
                    }
                }


                /* --- Short Bio Styles --- */
                .kt-short-bio {
                    --kt-short-bio-color: var( --kt-column-short-bio-color);
                    --kt-short-bio-margin: var(--kt-column-short-bio-margin);
                    --kt-short-bio-font-size: var(--kt-column-short-bio-font-size);
                    --kt-short-bio-font-weight: var(--kt-column-short-bio-font-weight-mobile);
                    --kt-short-bio-line-height: var(--kt-column-short-bio-line-height-mobile);
                }

                @media (min-width: 991px) {
                    .kt-short-bio {
                        --kt-short-bio-font-weight: var(--kt-column-short-bio-font-weight-desktop);
                        --kt-short-bio-line-height: var(--kt-column-short-bio-line-height-desktop);
                    }
                }
            }
            
            /* --- Footer Styles --- */
            .kt-listing__footer{
                --kt-footer-padding: 2rem 1rem 1rem 1rem;
                --kt-footer-text-align: left;

                /* --- Link Styles --- */
                .kt-team-link {
                    --kt-link-display: var(--kt-column-link-display);
                    --kt-link-background: var( --kt-column-link-background);
                    --kt-link-color: var(--kt-column-link-color);
                    --kt-link-border: var(--kt-column-link-border);
                    --kt-link-padding: var(--kt-column-link-padding);
                    --kt-link-font-size: var(--kt-column-link-font-size);
                    --kt-link-font-weight: var(--kt-column-link-font-weight);
                    --kt-link-line-height: var(--kt-column-link-line-height);

                    --kt-link-hover-background: var(--kt-column-link-hover-background);
                    --kt-link-hover-color: var(--kt-column-link-hover-color);
                    --kt-link-hover-border: var(--kt-column-link-hover-border);
                }
            }
        }

        /* -- Row Styles -- */
        &.kt-teams-loop--rows {
            .kt-listing {
                width: 100%;
                margin-bottom: 1rem;
            }

                /* --- Inner Styles --- */
                .kt-listing__inner {
                --kt-inner-display: flex;
                --kt-inner-direction: column;
                --kt-inner-height: 100%;

                @media (min-width: 767px) {
                    --kt-inner-display: flex;
                    --kt-inner-direction: row;
                    --kt-inner-height: auto;
                    align-items: stretch;
                }
            }

            /* --- Images Styles --- */
            .kt-image__wrapper {
                @media (min-width: 767px) {
                    justify-content: stretch;
                    --kt-listing-image-width: 40%;
                }
            }

            /* --- Content Styles --- */
            .kt-listing__content {
                --kt-content-display: flex;
                --kt-content-direction: column;
                --kt-content-justify: space-between;
                --kt-content-height: 100%;
                --kt-content-padding: 1rem;

                @media (min-width: 767px) {
                    --kt-content-display: flex;
                    --kt-content-direction: column;
                    --kt-content-justify: space-between;
                    --kt-content-width: 60%;
                    --kt-content-height: auto;
                    --kt-content-padding: 2rem;
                }
            }
            
            /* --- Main Styles --- */
            .kt-listing__main {
                --kt-main-padding: 1rem 1rem 0 1rem;
                --kt-main-text-align: left;

                /* --- Full Name Styles --- */
                .kt-full-name {
                    --kt-full-name-display: var(--kt-row-full-name-display);
                    --kt-full-name-content: var(--kt-row-full-name-content);
                    --kt-full-name-prefix: var(--kt-row-full-name-prefix);
                    --kt-full-name-color: var(--kt-row-full-name-color);
                    --kt-full-name-font-size: var(--kt-row-full-name-font-size);
                    --kt-full-name-line-height: var(--kt-row-full-name-line-height-mobile);
                    --kt-full-name-font-weight: var(--kt-row-full-name-font-weight-mobile);
                    --kt-full-name-postnominals-color: var(--kt-row-full-name-postnominals-color);
                    --kt-full-name-postnominals-font-size: var(--kt-row-full-name-postnominals-font-size);
                    --kt-full-name-postnominals-line-height: var(--kt-row-full-name-postnominals-line-height-mobile);
                    --kt-full-name-postnominals-font-weight: var(--kt-row-full-name-postnominals-font-weight-mobile);
                }

                @media (min-width: 991px) {
                    .kt-full-name {
                        --kt-full-name-line-height: var(--kt-row-full-name-line-height-desktop);
                        --kt-full-name-font-weight: var(--kt-row-full-name-font-weight-desktop);
                        --kt-full-name-postnominals-line-height: var(--kt-row-full-name-postnominals-line-height-desktop);
                        --kt-full-name-postnominals-font-weight: var(--kt-row-full-name-postnominals-font-weight-desktop);
                    }
                }

                /* --- Role Styles --- */
                .kt-role {
                    --kt-role-display: var(--kt-row-role-display);
                    --kt-role-margin: var(--kt-row-role-margin);
                    --kt-role-color: var(--kt-row-role-color);
                    --kt-role-font-size: var(--kt-row-role-font-size);
                    --kt-role-font-weight: var(--kt-row-role-font-weight-mobile);
                    --kt-role-line-height: var(--kt-row-role-line-height-mobile);
                }

                @media (min-width: 991px) {
                    .kt-role {
                        --kt-role-font-weight: var(--kt-row-role-font-weight-desktop);
                        --kt-role-line-height: var(--kt-row-role-line-height-desktop);
                    }
                }

                /* --- Department Styles --- */
                .kt-department {
                    --kt-department-display: var( --kt-row-department-display);
                    --kt-department-margin: var(--kt-row-department-margin);
                    --kt-department-color: var(--kt-row-department-color);
                    --kt-department-font-size: var(--kt-row-department-font-size);
                    --kt-department-font-weight: var(--kt-row-department-font-weight-mobile);
                    --kt-department-line-height: var(--kt-row-department-line-height-mobile);
                }

                @media (min-width: 991px) {
                    .kt-department {
                        --kt-department-font-weight: var(--kt-row-department-font-weight-desktop);
                        --kt-department-line-height: var(--kt-row-department-line-height-desktop);
                    }
                }


                /* --- Short Bio Styles --- */
                .kt-short-bio {
                    --kt-short-bio-color: var( --kt-row-short-bio-color);
                    --kt-short-bio-margin: var(--kt-row-short-bio-margin);
                    --kt-short-bio-font-size: var(--kt-row-short-bio-font-size);
                    --kt-short-bio-font-weight: var(--kt-row-short-bio-font-weight-mobile);
                    --kt-short-bio-line-height: var(--kt-row-short-bio-line-height-mobile);
                }

                @media (min-width: 991px) {
                    .kt-short-bio {
                        --kt-short-bio-font-weight: var(--kt-row-short-bio-font-weight-desktop);
                        --kt-short-bio-line-height: var(--kt-row-short-bio-line-height-desktop);
                    }
                }
            }
            
            /* --- Footer Styles --- */
            .kt-listing__footer{
                --kt-footer-padding: 2rem 1rem 1rem 1rem;
                --kt-footer-text-align: left;
            
                /* --- Link Styles --- */
                .kt-team-link {
                    --kt-link-display: var(--kt-row-link-display);
                    --kt-link-background: var(--kt-row-link-background);
                    --kt-link-color: var( --kt-row-link-color);
                    --kt-link-border: var(--kt-row-link-border);
                    --kt-link-padding: var(--kt-row-link-padding);
                    --kt-link-font-size: var(--kt-row-link-font-size);
                    --kt-link-font-weight: var(--kt-row-link-font-weight);
                    --kt-link-line-height: var(--kt-row-link-line-height);

                    --kt-link-hover-background: var(--kt-row-link-hover-background);
                    --kt-link-hover-color: var(--kt-row-link-hover-color);
                    --kt-link-hover-border: var(--kt-row-link-hover-border);
                }
            }
        }
    }

    /* -- Single Header -- */
    .kt-single__header {
        position: relative;
        width: 100vw;
        margin-left: -50vw;
        left: 50%;
        margin-bottom: 1rem;

        .kt-hero-image {
            width: 100%;
            height: 400px;
            object-fit: cover;
            object-position: 50% 50%;
        }
    }

    /* -- Single Wrapper -- */
    .kt-single__wrapper {
        @media (min-width: 991px) {
            display: flex;
            gap: 4rem;
        }

        .kt-single__main {
            width: 100%;

            .kt-image__wrapper {
                display: block;
                margin: 0 0 3rem 0;
            }

            @media (min-width: 991px) {
                width: 60%;
                order:2;

                .kt-image__wrapper {
                    display: none;
                }
            }

            /* --- Full Name Styles --- */
            .kt-full-name {
                --kt-full-name-display: var(--kt-single-full-name-display);
                --kt-full-name-content: var(--kt-single-full-name-content);
                --kt-full-name-prefix: var(--kt-single-full-name-prefix);
                --kt-full-name-color: var(--kt-single-full-name-color);
                --kt-full-name-font-size: var(--kt-single-full-name-font-size);
                --kt-full-name-line-height: var(--kt-single-full-name-line-height-mobile);
                --kt-full-name-font-weight: var(--kt-single-full-name-font-weight-mobile);
                --kt-full-name-postnominals-color: var(--kt-single-full-name-postnominals-color);
                --kt-full-name-postnominals-font-size: var(--kt-single-full-name-postnominals-font-size);
                --kt-full-name-postnominals-line-height: var(--kt-single-full-name-postnominals-line-height-mobile);
                --kt-full-name-postnominals-font-weight: var(--kt-single-full-name-postnominals-font-weight-mobile);
            }

            @media (min-width: 991px) {
                .kt-full-name {
                    --kt-full-name-line-height: var(--kt-single-full-name-line-height-desktop);
                    --kt-full-name-font-weight: var(--kt-single-full-name-font-weight-desktop);
                    --kt-full-name-postnominals-line-height: var(--kt-single-full-name-postnominals-line-height-desktop);
                    --kt-full-name-postnominals-font-weight: var(--kt-single-full-name-postnominals-font-weight-desktop);
                }
            }

            /* --- Role Styles --- */
            .kt-role {
                --kt-role-display: var(--kt-single-role-display);
                --kt-role-margin: var(--kt-single-role-margin);
                --kt-role-color: var(--kt-single-role-color);
                --kt-role-font-size: var(--kt-single-role-font-size);
                --kt-role-font-weight: var(--kt-single-role-font-weight-mobile);
                --kt-role-line-height: var(--kt-single-role-line-height-mobile);
            }

            @media (min-width: 991px) {
                .kt-role {
                    --kt-role-font-weight: var(--kt-single-role-font-weight-desktop);
                    --kt-role-line-height: var(--kt-single-role-line-height-desktop);
                }
            }

            /* --- Department Styles --- */
            .kt-department {
                --kt-department-display: var( --kt-single-department-display);
                --kt-department-margin: var(--kt-single-department-margin);
                --kt-department-color: var(--kt-single-department-color);
                --kt-department-font-size: var(--kt-single-department-font-size);
                --kt-department-font-weight: var(--kt-single-department-font-weight-mobile);
                --kt-department-line-height: var(--kt-single-department-line-height-mobile);
            }

            @media (min-width: 991px) {
                .kt-department {
                    --kt-department-font-weight: var(--kt-single-department-font-weight-desktop);
                    --kt-department-line-height: var(--kt-single-department-line-height-desktop);
                }
            }

            .kt-full-bio {
                --kt-full-bio-color: var(--kt-single-bio-color);
                --kt-full-bio-margin: var(--kt-single-bio-margin);
                --kt-full-bio-font-size: var(--kt-single-bio-font-size);
                --kt-full-bio-font-weight: var(--kt-single-bio-font-weight-dmobile);
                --kt-full-bio-line-height: var(--kt-single-bio-line-height-mobile);
            }


            @media (min-width: 991px) {
                .kt-full-bio {
                    --kt-full-bio-font-weight: var(--kt-single-bio-font-weight-desktop);
                    --kt-full-bio-line-height: var(--kt-single-bio-line-height-desktop);
                }
            }
        }

        .kt-single__aside {
            width: 100%;

            .kt-image__wrapper {
                display: none;
            }

            @media (min-width: 991px) {
                width: 40%;
                order: 1;

                .kt-image__wrapper {
                    display: block;
                }
            }
        }
    }

    /* --- Categories Styles --- */
    .kt-categories__wrapper {
        --kt-categories-width: 100%;
        --kt-categories-padding: 1rem 0;

        width: var(--kt-categories-width);
        padding: var(--kt-categories-padding);

        /* -- Categories Title Styles -- */
        .kt-categories__title {
            --kt-categories-color: var(--kt-default-categories-color);
            --kt-categories-font-size: var(--kt-default-categories-font-size);
            --kt-categories-line-height: var(--kt-default-categories-line-height-mobile);
            --kt-categories-font-weight: var(--kt-default-categories-font-weight-mobile);

            color: var(--kt-categories-color);
            font-size: var(--kt-categories-font-size);
            font-weight: var(--kt-categories-font-weight);
            line-height: var(--kt-categories-line-height);
        }

        @media (min-width: 991px) {
            .kt-categories__title {
                --kt-categories-line-height: var(--kt-default-categories-line-height-desktop);
                --kt-categories-font-weight: var(--kt-default-categories-font-weight-desktop);
            }
        }
    }
}

/* -- Listing Styles -- */
.kt-listing {
    display: block;
    opacity: 1;
    width: 100%;
    background-color: var(--kt-default-card-background);
    transform: scale(1);
    transition: all 0.3s ease;

    &.kt-listing--fade-out {
        opacity: 0;
        transform: scale(0.95);
        pointer-events: none;
    }
    
    &.kt-listing--hidden {
        display: none;
    }

    &:hover {
        .kt-listing__inner {
            .kt-listing__image--has-hover-video {
                .kt-image {
                    &.kt-image--listings {
                        opacity: 0;
                    }

                    &.kt-image--video {
                        opacity: 1;
                    }
                }

            }

            .kt-listing__image--has-hover {
                .kt-image {
                    &.kt-image--listings {
                        opacity: 0;
                    }

                    &.kt-image--hover {
                        opacity: 1;
                    }
                }
            }
            
            .kt-listing__image--no-hover {
                .kt-image {
                    &.kt-image--listings {
                        opacity: 1;
                    }
                }
            }
        }
    }
}

/* --- Inner Styles --- */
.kt-listing__inner {
    --kt-inner-display: flex;
    --kt-inner-direction: column;
    --kt-inner-height: 100%;

    display: var(--kt-inner-display);
    flex-direction: var(--kt-inner-direction);
    height:var(--kt-inner-height);  
}

/* --- Content Styles --- */
.kt-listing__content {
    --kt-content-display: flex;
    --kt-content-direction: column;
    --kt-content-justify: space-between;
    --kt-content-width: 100%;
    --kt-content-height: 100%;
    --kt-content-padding: 5rem;
    
    display: var(--kt-content-display);
    flex-direction: var(--kt-content-direction);
    justify-content: var(--kt-content-justify);  
    width: var(--kt-content-width);
    height: var(--kt-content-height);  
    padding: var(--kt-content-padding);
}

/* --- Main Styles --- */
.kt-listing__main {
    --kt-main-padding: 0 0 0 0;
    --kt-main-text-align: left;

    padding: var(--kt-main-padding);
    text-align: var(--kt-main-text-align);
}

/* --- Footer Styles --- */
.kt-listing__footer{
    --kt-footer-padding: 2rem 0 0 0;
    --kt-footer-text-align: left;

    padding: var(--kt-footer-padding);
    text-align: var(--kt-footer-text-align);
}

/* --- Back to Teams Styles --- */
.kt-back-btn {
    display: block;
    margin-bottom: 2rem;
    color: var(--kt-link-color);
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1;
    text-decoration: none;

    &:hover {
        color: var(--kt-hover-link-color);
    }

    &:focus {
        color: var(--kt-hover-link-color);
    }
}

/* --- Image Styles --- */
.kt-image__wrapper {
    --kt-listing-image-aspect-ratio: var(--kt-aspect-ratio-3-4);
    --kt-listing-image-width: 100%;
    --kt-listing-image-height: auto;
 
    position: relative;
    aspect-ratio: var(--kt-listing-image-aspect-ratio);  
    width: var(--kt-listing-image-width);
    height: var(--kt-listing-image-height);

    &.kt-image__wrapper--3-4 {
        --kt-listing-image-aspect-ratio: var(--kt-aspect-ratio-3-4);
    }

    &.kt-image__wrapper--4-3 {
        --kt-listing-image-aspect-ratio: var(--kt-aspect-ratio-4-3);
    }

    &.kt-image__wrapper--9-16 {
        --kt-listing-image-aspect-ratio: var(--kt-aspect-ratio-9-16);
    }

    &.kt-image__wrapper--16-9 {
        --kt-listing-image-aspect-ratio: var(--kt-aspect-ratio-16-9);
    }

    &.kt-image__wrapper--1-1 {
        --kt-listing-image-aspect-ratio: var(--kt-aspect-ratio-1-1);
    }

    .kt-image {
        --kt-image-width: 100%;
        --kt-image-height: 100%;

        position: absolute;
        width: var(--kt-image-width);
        height: var(--kt-image-height);
        object-fit: cover;
        object-position: 50% 50%;
        transition: opacity 0.5s ease-in-out;

        &.kt-image--listings {
            opacity: 1;
        }

        &.kt-image--hover {
            opacity: 0;
        }

        &.kt-image--video {
            opacity: 0;
        }
    }
}

/* --- Full Name Styles --- */
.kt-full-name {
    display: var(--kt-full-name-display);
    justify-content: var( --kt-full-name-content);
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0.5rem 0 0.3rem 0;

    /* -- Prefix Styles -- */
    .kt-prefix {
        color: var(--kt-full-name-prefix);
        font-size: var(--kt-full-name-font-size);
        font-weight: var(--kt-full-name-font-weight);
        line-height: var(--kt-full-name-line-height);
    }

    /* -- First Name Styles -- */
    .kt-first-name {
        color: var(--kt-full-name-color);
        font-size: var(--kt-full-name-font-size);
        font-weight: var(--kt-full-name-font-weight);
        line-height: var(--kt-full-name-line-height);
    }

    /* -- Middle Name Styles -- */
    .kt-middle-name {
        color: var(--kt-full-name-color);
        font-size: var(--kt-full-name-font-size);
        font-weight: var(--kt-full-name-font-weight);
        line-height: var(--kt-full-name-line-height);
    }

    /* -- Last Name Styles -- */
    .kt-last-name {
        color: var(--kt-full-name-color);
        font-size: var(--kt-full-name-font-size);
        font-weight: var(--kt-full-name-font-weight);
        line-height: var(--kt-full-name-line-height);
    }

     /* -- Postnominals Styles -- */
    .kt-postnominals {
        color: var(--kt-full-name-postnominals-color);
        font-size: var(--kt-full-name-postnominals-font-size);
        font-weight: var(--kt-full-name-postnominals-font-weight);
        line-height: 1;
        vertical-align: super;
    }
}

/* --- Role Styles --- */
.kt-role {
    display: var(--kt-role-display);
    margin: var(--kt-role-margin);
    color: var(--kt-role-color);
    font-size: var(--kt-role-font-size);
    font-weight: var(--kt-role-font-weight);
    line-height: var(--kt-role-line-height);
}

/* --- Department Styles --- */
.kt-department {
    display: var(--kt-department-display);
    margin: var(--kt-department-margin);
    color: var(--kt-department-color);
    font-size: var(--kt-department-font-size);
    font-weight: var(--kt-department-font-weight);
    line-height: var(--kt-department-line-height);
}

/* --- Short Bio Styles --- */
.kt-short-bio {
    margin: var(--kt-short-bio-margin);
    color: var(--kt-short-bio-color);
    font-size: var(--kt-short-bio-font-size);
    font-weight: var(--kt-short-bio-font-weight);
    line-height: var(--kt-short-bio-line-height);
}

/* --- Full Bio Styles --- */
.kt-full-bio {
    --kt-full-bio-color: var(--kt-color-off-black);
    --kt-full-bio-margin: 2rem 0 2rem 0;
    --kt-full-bio-font-size: 1rem;
    --kt-full-bio-line-height: 1.5;
    --kt-full-bio-font-weight: 400;

    margin: var(--kt-full-bio-margin);
    color: var(--kt-full-bio-color);
    font-size: var(--kt-full-bio-font-size);
    line-height: var(--kt-full-bio-line-height);
    font-weight: var(--kt-full-bio-font-weight);
}

/* --- Link Styles --- */
.kt-team-link {
    display: var(--kt-link-display);
    padding: var(--kt-link-padding);
    background-color: var(--kt-link-background);
    color: var(--kt-link-color);
    border:  var(--kt-link-border);
    font-size: var(--kt-link-font-size);
    font-weight: var(--kt-link-font-weight);
    line-height: var(--kt-link-line-height);;
    text-decoration: none;
    transition: all 0.3s ease-out;

    &:hover {
        background-color: var(--kt-link-hover-background);
        color: var(--kt-link-hover-color);
        border:  var(--kt-link-hover-border);
    }

    &:focus {
        background-color: var(--kt-link-hover-background);
        color: var(--kt-link-hover-color);
        border:  var(--kt-link-hover-border);
    }

    &:focus-visible {
        outline: solid 2px var(--kt-accessability-color);
        outline-offset: 2px;
        visibility: visible;
        opacity: 1;
    }
}

/* --- Information Styles --- */
.kt-information {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 0;
    margin: 4rem 0 0 0;
    list-style: none;

    .kt-information__item {
        width: calc((100% - 1rem) / 2);
    }
}

.kt-phone {
    .kt-phone__label {
        color: var(--kt-label-color);
        font-size: 1.1rem;
        font-weight: 700;
        line-height: 1;
    }

    .kt-phone__info {
        color: var(--kt-info-color);
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 1;
    }

    .kt-phone__link {
        color: var(--kt-link-color);
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 1;
        text-decoration: none;
        transition: all 0.3s ease-out;

        &:hover {
            color: var(--kt-hover-link-color);
        }

        &:focus {
            color: var(--kt-hover-link-color);
        }
    }
}

.kt-phone-ext {
    .kt-phone-ext__label {
        color: var(--kt-label-color);
        font-size: 1.1rem;
        font-weight: 700;
        line-height: 1;
    }

    .kt-phone-ext__info {
        color: var(--kt-info-color);
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 1;
    }
}

.kt-mobile {
    .kt-mobile__label {
        color: var(--kt-label-color);
        font-size: 1.1rem;
        font-weight: 700;
        line-height: 1;
    }

    .kt-mobile__info {
        color: var(--kt-info-color);
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 1;
    }

    .kt-mobile__link {
        color: var(--kt-link-color);
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 1;
        text-decoration: none;
        transition: all 0.3s ease-out;

        &:hover {
            color: var(--kt-hover-link-color);
        }

        &:focus {
            color: var(--kt-hover-link-color);
        }
    }
}

.kt-fax {
    .kt-fax__label {
        color: var(--kt-label-color);
        font-size: 1.1rem;
        font-weight: 700;
        line-height: 1;
    }

    .kt-fax__info {
        color: var(--kt-info-color);
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 1;
    }
}

.kt-email {
    .kt-email__label {
        color: var(--kt-label-color);
        font-size: 1.1rem;
        font-weight: 700;
        line-height: 1;
    }

    .kt-email__info {
        color: var(--kt-info-color);
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 1;
    }

    .kt-email__link {
        color: var(--kt-link-color);
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 1;
        text-decoration: none;
        transition: all 0.3s ease-out;

        &:hover {
            color: var(--kt-hover-link-color);
        }

        &:focus {
            color: var(--kt-hover-link-color);
        }
    }
}

.kt-years-with-company {
    margin: 1.2rem 0 0 0;

    .kt-years-with-company__label {
        color: var(--kt-info-color);
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 1;
    }

    .kt-years-with-company__info {
        color: var(--kt-info-color);
        font-size: 1.1rem;
        font-weight: 500;
        line-height: 1;
    }
}

.kt-address {
    margin: 1.2rem 0 0 0;
    color: var(--kt-info-color);
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1;
    font-style: normal;

    .kt-address__title {
        display: block;
        color: var(--kt-info-color);
        font-size: 1.2rem;
        font-weight:700;
        line-height: 1.6;
        font-style: normal;
    }
}

/* --- Social Media Styles --- */
.kt-social-media {
    --kt-social-btn-width: 30px;
    --kt-social-btn-height: 30px;
    --kt-social-btn-padding: 0.2rem;
    --kt-social-btn-radius: 5px;

    .kt-social-media__list {
        display: flex;
        gap: 0.5rem;
        padding: 0;
        margin: 2rem 0 0 0;
        list-style: none;
    }

    .kt-social-media__link {
        display: flex;
        justify-content: center;
        align-items: center;
        width: var(--kt-social-btn-width);
        height: var(--kt-social-btn-height);
        padding: var(--kt-social-btn-padding);
        background-color: var(--kt-social-background-color);
        color: var(--kt-social-icon-color);
        border-radius: var(--kt-social-btn-radius);
        transition: all 0.3s ease-out;

        &:hover {
            background-color: var(--kt-social-background-hover-color);
            color: var(--kt-social-icon-hover-color);
        }
    }
}

/* --- Short contact Styles --- */
.kt-teams-short-contact {
    margin: 1.5rem 0 0 0;

    .kt-teams-short-contact__list {
        margin: 0;
        padding: 0;
        list-style: none;

        .kt-teams-short-contact__item {
            margin: 0;
            padding: 0;
        }
    }

    .kt-phone__label {
        font-size: 0.9rem;
    }

    .kt-phone__link {
        font-size: 0.9rem;
    }

    .kt-mobile__label {
        font-size: 0.9rem;
    }

    .kt-mobile__link {
        font-size: 0.9rem;
    }

    .kt-email__label {
        font-size: 0.9rem;
    }

    .kt-email__link {
        font-size: 0.9rem;
    }

    .kt-social-media {
        .kt-social-media__list {
            margin: 1rem 0 0 0;
        }

        .kt-social-media__link {
            --kt-social-btn-width: 26px;
            --kt-social-btn-height: 26px;

            svg {
                width: 16px !important;
                height: 16px !important;
            }
        }
    }
}