.element {
    color: var(--content-text-color);
}

/* .element h1.title:after {
    content: '';
    display: block;
    width: 60%;
    height: 1px;
    border-bottom: 0.1em solid var(--accent-color);
} */

.element .title span.subtitle {
    display: block;
    font-size: 0.8em;
}

.clearfix {
    clear: both;
    overflow: hidden;
}


.element.variant-full {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: flex-start;
    --column-gap: 3vw;
    --image-width: 25%;
    --content-width: 55%;
    column-gap: var(--column-gap);
    padding: var(--element-margin-top) 0 var(--element-margin-bottom);
}

.element.variant-full.no-margin-top{
    padding-top: 0;
}

.element.variant-full.no-margin-bottom {
    padding-bottom: 0;
}

.element .wrapper {
    display: flex;
    flex-flow: column wrap;
    align-items: flex-start;
    margin: var(--element-margin-top) 0 var(--element-margin-bottom);
    padding: 0 var(--page-padding);
    box-sizing: border-box;
}

.element.variant-full .wrapper {
    flex: 0 0 calc(var(--content-width) + var(--image-width) + var(--column-gap));
    padding-left: calc(var(--image-width) + var(--column-gap));
    margin: 0;
}

.element.variant-full .image + .wrapper {
    flex: 0 0 var(--content-width);
    padding: 0;
    margin: 0;
}

.element.no-margin-top .wrapper {
    margin-top: 0;
}

.element.no-margin-bottom .wrapper {
    margin-bottom: 0;
}

.element .wrapper .content {
    flex: 1 1 50%;
    width: 50%;
    max-width: 100%;
}

.element.variant-full .wrapper .content {
    width: 100%;
}

.element.variant-full .wrapper .content {
    flex: 1 1 100%;
    width: 100%;
}

.element.variant-left .wrapper .content {
    align-self: flex-start;
}

.element.variant-right .wrapper .content {
    align-self: flex-end;
}

.element > .image {
    display: flex;
    flex-flow: column nowrap;
    align-items: flex-start;
}

.element.image-before > .image {
    
}

.element.variant-full.image-after-title > .image,
.element.variant-full.image-before > .image {
    flex: 0 0 var(--image-width);
}

.element.image-after-title > .image {
    
}

.element.image-after-title .wrapper.title {
    margin-bottom: 2rem;
}

.element.variant-full.image-after-title .wrapper.title {
    margin-bottom: 0;
    margin-top: 0;
}

.element.variant-full.image-after-title .wrapper.title > * {
    
}

.element.variant-full.image-after-title .wrapper.title {
    flex: 0 0 100%;
    padding-left: calc(var(--image-width) + var(--column-gap));
}

.element.image-after-content > .image {
    
}

.element > .image > .image-wrapper {
    margin-bottom: var(--column-gap);
}

.element.variant-full > .image > .image-wrapper,
.element.variant-full > .image.left > .image-wrapper 
{
    max-width: 100%;
    padding-top: 0.25em;
}

.element > .image.left {

}

.element > .image.left > .image-wrapper {
    max-width: 70%;
}

.element > .image.center {
    align-items: center;
}

.element > .image.center > .image-wrapper {
    max-width: 70%;
}

.element.variant-full > .image.center > .image-wrapper {
    max-width: 100%;
    padding-left: var(--column-gap);
    box-sizing: border-box;
}

.element > .image.fullwidth {
    align-items: center;
}

.element > .image.fullwidth > .image-wrapper {
    width: 100%;
}

.element > .image > .image-wrapper > img {
    display: block;
    max-width: 100%;
    height: auto;
}

.element > .image.fullwidth > .image-wrapper > img {

}

@media(max-width: 1500px){
    .element.variant-full {
        --content-width: 50%;
        --image-width: 20%;
    }
    
    .element.variant-full .wrapper {
        flex: 0 0 80%;
        padding-left: calc(var(--image-width) + var(--column-gap));
        margin: 0;
    }

    .element.variant-full .image + .wrapper {
        flex: 0 0 var(--content-width);
        padding: 0;
        margin: 0;
    }

    .element.variant-full.image-after-title > .image,
    .element.variant-full.image-before > .image {
        flex: 0 0 var(--image-width);    
    }

    .element.variant-full.image-after-title .wrapper.title {
        flex: 0 0 100%;
        padding-left: calc(var(--image-width) + var(--column-gap));
    }
}

@media(max-width: 1200px){
    .element.variant-full {
        --content-width: 75%;
        --image-width: 25%;
    }
    
    .element.variant-full .wrapper {
        flex: 0 0 100%;
        padding-left: calc(var(--image-width) + var(--column-gap));
        margin: 0;
    }

    .element.variant-full .image + .wrapper {
        flex: 0 0 calc(var(--content-width) - var(--column-gap) - var(--page-padding));
        padding: 0;
        margin: 0;
    }

    .element.variant-full.image-after-title > .image,
    .element.variant-full.image-before > .image {
        flex: 0 0 var(--image-width);    
    }

    .element.variant-full.image-after-title .wrapper.title {
        flex: 0 0 100%;
        padding-left: calc(var(--image-width) + var(--column-gap));
    }
}

/* @media(max-width: 1800px){
    .element .wrapper .content {
        flex: 1 1 40%;
        width: 40%;
    }
}

@media(max-width: 1200px){
    .element .wrapper .content {
        flex: 1 1 50%;
        width: 50%;
    }
} */

@media(max-width: 1000px){
    .element .wrapper .content,
    .element.variant-full .wrapper .content {
        flex: 1 1 100%;
        width: 100%;
    }
}

@media(max-width: 768px){
    .element.variant-full {
        --content-width: 100%;
        --image-width: 70%;
    }

    .element.variant-full .wrapper {
        flex: 0 0 100%;
        padding: 0 var(--page-padding);
    }

    .element.variant-full .image + .wrapper {
        flex: 0 0 100%;
        padding: 0 var(--page-padding);
        box-sizing: border-box;
        max-width: 100%;
    }

    .element.variant-full.image-after-title > .image,
    .element.variant-full.image-before > .image {
        flex: 0 0 var(--image-width);
        margin-bottom: 2rem;    
    }

    .element.variant-full.image-after-title .wrapper.title {
        order: 2;
        flex: 0 0 100%;
        padding: 0 var(--page-padding);
    }

    .element.variant-full.image-after-title .image {
        order: 1
    }

    .element.variant-full.image-after-title .wrapper {
        order: 3
    }

    .element.variant-full > .image.center > .image-wrapper {
        padding-left: var(--page-padding);
    }
}


.element a.link-btn {
    display: inline-flex;
    flex-flow: row nowrap;
    column-gap: 0.5em;
    align-items: center;
    font-size: 1.2em;
    font-family: var(--secondary-font);
    background-color: transparent;
    padding: 0.3em 2em 0.3em 2em;
    color: var(--content-text-color);
    border-radius: 0.6em;
    transition: background-color 0.2s ease;
    border: 2px solid var(--content-text-color);
    text-decoration: none;
    font-style: normal;
}

.element a.link-btn:hover {
    background-color: var(--content-text-color);
    color: var(--highlighting-color-darker);
}



/* Text Element*/

.element.TextElement {
    
}



/* File Element*/

.element.FileDownloadElement {

}


.element.FileDownloadElement .file-wrapper {

}

/* 
.element.FileDownloadElement .file-wrapper > a {
    display: inline-flex;
    flex-flow: row nowrap;
    column-gap: 0.5em;
    align-items: center;
    font-size: 1.2em;
    font-family: var(--secondary-font);
    background-color: var(--secondary-color);
    padding: 0.3em 0.6em 0.3em 0.6em;
    color: var(--content-text-color);
    border-radius: 0.3em;
    transition: background-color 0.2s ease;
}

.element.FileDownloadElement .file-wrapper > a:hover {
    background-color: var(--third-color);
} 

 
.element.FileDownloadElement .file-wrapper > a:before {
    content: '';
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background-image: url('../images/file-download-icon.svg');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    
}

.element.FileDownloadElement .file-wrapper.pdf > a:before {
    background-image: url('../images/pdf-download-icon.svg');
} 
*/



/* Link Element*/

.element.LinkElement {

}

.element.LinkElement .link-wrapper {

}

/* 
.element.LinkElement .link-wrapper > a {
    display: inline-flex;
    flex-flow: row nowrap;
    column-gap: 0.5em;
    align-items: center;
    font-size: 1.2em;
    font-family: var(--secondary-font);
    background-color: var(--secondary-color);
    padding: 0.3em 0.6em 0.3em 0.6em;
    color: var(--content-text-color);
    border-radius: 0.3em;
    transition: background-color 0.2s ease;
}

.element.LinkElement .link-wrapper > a:hover {
    background-color: var(--third-color);
} 

.element.LinkElement .link-wrapper > a:before {
    content: '';
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background-image: url('../images/link-icon.svg');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    
}

.element.LinkElement .link-wrapper.contact > a:before {
    background-image: url('../images/contact-icon.svg');
}

.element.LinkElement .link-wrapper.email > a:before {
    background-image: url('../images/email-icon.svg');
} 
*/



/* Image Element */

.element.ImageElement {
    padding: 0;
    margin: 0;
    position: relative;
    overflow: hidden;
}

.element.ImageElement.has-video.is-open {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    /* grid-auto-rows: 1fr; */
}

.element.ImageElement > .wrapper {
    display: block;
    padding: 0;
    margin: 0;
    width: 100%;
    overflow: hidden;
    position: relative;
    z-index: 3;
}

.element.ImageElement > .wrapper .image-wrapper {
    margin: 0;
    padding: 0;
    position: relative;
}

.element.ImageElement > .wrapper .image-wrapper img {
    display: block;
    max-width: 100%;
    height: auto;
}

.element.ImageElement.variant-contain > .wrapper .image-wrapper,
.element.ImageElement.variant-cover > .wrapper .image-wrapper 
{
    width: 100%;
}

.element.ImageElement.variant-contain > .wrapper .image-wrapper img,
.element.ImageElement.variant-cover > .wrapper .image-wrapper img 
{
    width: 100%;
}

@media(orientation: landscape){
    .element.ImageElement .wrapper .image-wrapper img.portrait {
        display: none;
    }
}

@media(orientation: portrait){
    .element.ImageElement .wrapper .image-wrapper img.landscape {
        display: none;
    }
}

.element.ImageElement > .wrapper .image-wrapper > .content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100%;
    padding: var(--page-padding);
    box-sizing: border-box;
    color: var(--main-color);
}

.element.ImageElement.has-video.by-content-height > .wrapper .image-wrapper {
    background-repeat: no-repeat;
    background-size: cover;
}

.element.ImageElement.has-video.by-content-height > .wrapper .image-wrapper > img {
    display: none;
}

.element.ImageElement.has-video.by-content-height > .wrapper .image-wrapper > .content {
    position: relative;
}



.element.ImageElement > .wrapper .image-wrapper > .content > * {
    width: 1200px;
    max-width: 100%;
    margin: 0 auto;
}

.element.ImageElement.has-video > .wrapper .image-wrapper > .content {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    align-items: center;
    text-align: center;
}

.element.ImageElement.has-video > .wrapper .image-wrapper > .content > .text {
    flex: 0 0 auto;
}

.element.ImageElement .video-button {
    padding: 4rem 0 5rem;
    width: 100%;
    flex: 1 1 100%;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    max-height: 50vh;
}

.element.ImageElement .play-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0 auto;
    border: 0;
    background: transparent;
    cursor: pointer;
    width: 100%;
}

.element.ImageElement .play-button:focus {
    outline: none;
}

.element.ImageElement .play-lottie {
    width: clamp(90px, 10vw, 160px);
    height: clamp(90px, 10vw, 160px);
}

.element.ImageElement.is-opening .video-button,
.element.ImageElement.is-open .video-button,
.element.ImageElement.is-open .video-button.hidden {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
}

.element.ImageElement.is-opening {
    padding-bottom: calc(var(--element-height) + 4vw);
}

@media(max-width: 1024px){
    .element.ImageElement.is-opening {
        padding-bottom: var(--element-height);
    }
}

.element.ImageElement.is-open {
    padding-bottom: 0;
}

/* .element.ImageElement.is-opening:before {
    display: block;
    content: '';
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 255, 0.5);
    z-index: 1000;
}

.element.ImageElement.is-open:before {
    display: block;
    content: '';
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(255, 0, 0, 0.5);
    z-index: 1000;
} */

.element.ImageElement .loading {
    display: none;
    background: url('../images/loading.svg') center center no-repeat;
    background-size: 100px 100px;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: calc(var(--element-height) + 4vw);
    z-index: 1;
}

.element.ImageElement.is-opening .loading,
.element.ImageElement.is-open .loading 
{
    display: block;
}

.element.ImageElement.is-open .loading {
    position: absolute;
}

.element.ImageElement.completed .loading {
    display: none !important;
}

/* iOS-only: hide loading indicator (detected via -webkit-touch-callout, an iOS-exclusive property) */
/* @supports (-webkit-touch-callout: none) {
    .element.ImageElement .loading {
        display: none !important;
    }
} */

@media(max-width: 1024px) {
    .element.ImageElement .loading {
        height: var(--element-height);
    }
}

.element.ImageElement > .video-wrapper {
    width: 100vw;
    overflow: hidden;
    height: 100vh;
    max-height: 100%;
    position: absolute;
    bottom: 0;
    padding: 2vw 0;
    box-sizing: content-box;
    z-index: 2;
}

/* @media(max-width: 1024px) {
    .element.ImageElement > .video-wrapper {
        padding: 0;
    }
} */

.element.ImageElement.portrait.is-opening > .video-wrapper {
    position: fixed;
    top: var(--video-fixed-position);
}

.element.ImageElement.landscape.is-opening > .video-wrapper {
    position: fixed;
    bottom: 0;
}

.element.ImageElement.is-open > .video-wrapper {
    position: relative;
    bottom: 0;
}



.element.ImageElement.is-opening > .video-wrapper,
.element.ImageElement.is-open > .video-wrapper {
    height: 100%;
}

.element.ImageElement > .wrapper .image-wrapper {
    z-index: 2;
}

.element.ImageElement > .video-wrapper > .video-container {
    width: 100%;
    height: 100%;
    padding: 0;
    box-sizing: border-box;
    height: auto;
}

.element.ImageElement.is-opening > .video-wrapper > .video-container {
    /* position: fixed;
    bottom: 0;
    left: 0;*/
    width: 100vw;
    height: 100%;
    padding: 0;
    overflow: hidden;
    
}

.element.ImageElement.is-open > .video-wrapper > .video-container {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0;
    box-sizing: content-box;
    overflow: hidden;
    z-index: 1;
}

.element.ImageElement > .video-wrapper > .video-container .video {
    width: 100%;
    /* max-width: 1920px; */
    height: 0;
    margin: 0 auto;
    padding: calc(9 / 16 * 100%) 0 0 0;
    position: relative;
    padding: 0;
    box-sizing: border-box;
}

.element.ImageElement.is-opening > .video-wrapper > .video-container .video,
.element.ImageElement.is-open > .video-wrapper > .video-container .video {
    width: 100%;
    height: 100%;
    max-height: 100vh;
    max-width: none;
    margin: 0;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
}

.element.ImageElement > .video-wrapper > .video-container .video iframe {
    width: 80vw;
    height: auto;
    max-height: 90%;
    aspect-ratio: 16 / 9;
    position: relative;
    transform: none;
}

.element.ImageElement.portrait > .video-wrapper > .video-container .video iframe {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

@media(max-width: 1024px) {
    .element.ImageElement > .video-wrapper > .video-container .video iframe {
        width: 100%;
        height: 100%;
        max-height: 100%;
    }
}

/* Story Element*/

.element.StoryElement {
    
}

.element.StoryElement.element.variant-full > .wrapper,
.element.StoryElement > .wrapper
{
    margin-bottom: var(--element-margin-bottom);
}

.story-slider {
    width: 100%;
    /* overflow: hidden; */
    position: relative;
}

.story-slider.slick-slider {
    position: relative;
    width: 100%;
    /* overflow: hidden; */
}

.story-slider.slick-slider.slick-dotted {
    margin-bottom: 0;
}

.story-slider.slick-slider button.slick-arrow {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    position: absolute;
    z-index: 2;
    top: 0;
    height: calc(100% - 10vh);
    width: 10vw;
    transform: translate(0,0);
    opacity: 0.3;
}

@media(hover:hover){
    .story-slider.slick-slider button.slick-arrow:hover {
        opacity: 1;
    }
}

@media(hover:none){
    .story-slider.slick-slider button.slick-arrow {
        opacity: 1;
    }
}

.story-slider.slick-slider .slick-arrow:before {
    content: '';
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    width: 100%;
    height: 10vw;
    max-height: 150px;
}

.story-slider.slick-slider button.slick-arrow.slick-prev {
    left: 0;
}

.story-slider.slick-slider button.slick-arrow.slick-prev:before {
    background-image: url('../images/arrow-left-white.svg');
}

.story-slider.slick-slider button.slick-arrow.slick-next {
    right: 0;
}

.story-slider.slick-slider button.slick-arrow.slick-next:before {
    background-image: url('../images/arrow-right-white.svg');
}

.story-slider.slick-slider ul.slick-dots {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    column-gap: 0.5rem;
    width: 100%;
    height: 10vh;
    position: relative;
    left: 0;
    bottom: auto;
    top: auto;
}

.story-slider.slick-slider ul.slick-dots > li {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
    width: 2rem;
    height: 10vh;
}

.story-slider.slick-slider ul.slick-dots > li button {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 2rem;
}

.story-slider.slick-slider ul.slick-dots > li button:before {
    display: inline-block;
    position: relative;
    font-size: 0.5rem;
    text-align: center;
    left: auto;
    top: auto;
    color: var(--main-color);
}

.story-slider.slick-slider ul.slick-dots > li button:before:hover {
    color: var(--main-color);
}

.story-slider.slick-slider ul.slick-dots > li.slick-active button {

}

.story-slider.slick-slider .slick-list {
    position: relative;
    z-index: 1;
    width: 100%;
    overflow: hidden;
}

.story-slider.slick-slider .slick-list .story-entry.slick-slide {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: flex-start;
    column-gap: 5%;
    padding: 0 var(--page-padding);
}

.element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide {
    justify-content: flex-start;
    column-gap: var(--column-gap);
    padding: 0;
    width: 100%;
}

.story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper {
    flex: 0 0 27.5%;
    text-align: left;
}

.element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper {
    flex: 0 0 var(--image-width);
    padding-top: 0.25em;
}

.story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper img {
    display: inline-block;
    max-width: 100%;
}

.story-slider.slick-slider .slick-list .story-entry.slick-slide .text-wrapper {
    flex: 0 0 37.5%;
}

.element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .text-wrapper {
    flex: 0 0 calc(var(--content-width) - 10%);
    padding-left: calc(var(
    --image-width) + var(--column-gap));
    padding-right: var(
    --page-padding);
    margin: 0;
}

.element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper + .text-wrapper {
    flex: 0 0 var(--content-width);
    padding-left: 0;
    padding-right: var(--page-padding);
    margin: 0;
}

@media(max-width: 1500px){
    .story-slider.slick-slider .slick-list .story-entry.slick-slide {
        display: flex;
        flex-flow: row wrap;
        justify-content: center;
        row-gap: 2rem;
        column-gap: 5%;
        padding: 0 var(--page-padding);
        box-sizing: border-box;
    }

    .story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper {
        flex: 0 0 100%;
        text-align: center;
        padding: 0 var(--page-padding);
        box-sizing: border-box;
    }

    .element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper {
        flex: 0 0 var(--image-width);
        text-align: left;
        padding-left: 0;
        padding-right: 0;
    }

    .story-slider.slick-slider .slick-list .story-entry.slick-slide .text-wrapper {
        flex: 0 0 100%;
        padding: 0 var(--page-padding);
        
    }

    .element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .text-wrapper {
        flex: 0 0 var(--content-width);
        padding-left: calc(var(--image-width) + var(--column-gap));
        padding-right: var(--page-padding);
        
    }

    .element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper + .text-wrapper {
        flex: 0 0 var(--content-width);
        padding-left: 0;
        padding-right: var(--page-padding);
        margin: 0;
    }
}

@media(max-width: 1200px){
    .element.StoryElement .wrapper .content {
        flex: 1 1 100%;
        width: 100%;
    }

    .element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .text-wrapper {
        flex: 0 0 calc(var(--content-width) - 15%);
        padding-left: calc(var(--image-width) + var(--column-gap));
        padding-right: var(--page-padding);
        
    }

    .element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper + .text-wrapper {
        flex: 0 0 calc(var(--content-width) - 15%);
    }

    .element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper {
        flex: 0 0 var(--image-width);
    }
}

@media(max-width: 768px){
    .element.StoryElement .wrapper .content {
        flex: 1 1 100%;
        width: 100%;
    }

    .element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide {
        justify-content: center;
    }
    
    .element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .text-wrapper {
        flex: 0 0 calc(var(--content-width) - 30%);
        padding: 0 var(--page-padding);
    }

    .element.variant-full .story-slider.slick-slider .slick-list .story-entry.slick-slide .image-wrapper + .text-wrapper {
        flex: 0 0 calc(var(--content-width) - 30%);
        padding: 0 var(--page-padding);
    }
}

/* Form Element*/

/* .element.FormElement {
    display: block;
} */


/* People Grid Element*/

.element.PeopleGridElement {
    
}

.element.PeopleGridElement > .wrapper
{
    margin-bottom: var(--element-margin-bottom);
}

.element.PeopleGridElement > .wrapper > .content {
    margin-bottom: var(--element-margin-bottom);
}

.element.PeopleGridElement .people-grid {
    display: grid;
    align-items: stretch;
    column-gap: 2rem;
    row-gap: 2rem;
    box-sizing: border-box;
    max-width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.element.PeopleGridElement.variant-left.no-image .people-grid {
    max-width: 100%;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media(max-width: 1600px){
    .element.PeopleGridElement.variant-full .people-grid 
    {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media(max-width: 1200px){
    .element.PeopleGridElement.variant-full .people-grid,
    .element.PeopleGridElement .people-grid 
    {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    
    .element.PeopleGridElement.variant-left.no-image .people-grid 
    {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

}

@media(max-width: 900px){
    .element.PeopleGridElement.variant-full .people-grid,
    .element.PeopleGridElement .people-grid 
    {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .element.PeopleGridElement.variant-left.no-image .people-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}

@media(max-width: 600px){
    .element.PeopleGridElement.variant-full .people-grid,
    .element.PeopleGridElement .people-grid {
        grid-template-columns: 1fr;
    }

    .element.PeopleGridElement.variant-left.no-image .people-grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}

.element.PeopleGridElement .people-grid > .people-entry {
    background-color: #FFFFFF;
    --padding: 1rem;   
    padding-bottom: var(--padding);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    font-size: 1rem;
    border-radius: 0.8rem;
    overflow: hidden;
    -webkit-box-shadow: 0.2rem 0.5rem 0.5rem 0rem rgba(0,0,0,0.2);
    box-shadow: 0.2rem 0.5rem 0.5rem 0rem rgba(0,0,0,0.2);
}

.element.PeopleGridElement .people-grid > .people-entry .image-wrapper {
    margin-bottom: var(--padding);
}

.element.PeopleGridElement .people-grid > .people-entry .image-wrapper img {
    display: block;
    width: 100%;
    height: auto;
}

.element.PeopleGridElement .people-grid > .people-entry .title-wrapper {
    padding-left: var(--padding);
    padding-right: var(--padding);
}

.element.PeopleGridElement .people-grid > .people-entry .title-wrapper h3 {
    font-size: 1.2em;
}

.element.PeopleGridElement .people-grid > .people-entry .text-wrapper {
    padding-left: var(--padding);
    padding-right: var(--padding);
    flex: 1 1 auto;
}

.element.PeopleGridElement .people-grid > .people-entry .text-wrapper .content {
    width: 100%;
}

.element.PeopleGridElement .people-grid > .people-entry .text-wrapper .content p {
    font-size: 0.8em;
}

@media(max-width: 600px){
    .element.PeopleGridElement .people-grid > .people-entry .text-wrapper .content p {
        font-size: 1.0em;
    }
}