.press-teaser > .row.flexy,
.podcast-teaser > .row.flexy,
.transformations-teaser > .row.flexy,
.favorite-teaser > .row.flexy {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: stretch;
    -moz-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.blog-teaser > .row.flexy {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: stretch;
    -moz-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.blog-image-wrapper,
.podcast-image-wrapper,
.favorite-image-wrapper,
.transformations-image-wrapper {
    height:100%;
    position: relative;
}

.press-image-wrapper {
    height: 135%;
    position: relative;
}

/* Homepage blog blog requires a different setup */
.blog .blog-image-wrapper {
    padding-bottom: 75%;
    position: relative;
}

/* Homepage and About pages press blocks requires a different setup */
.press .front-page-press .press-teaser .press-image-wrapper,
.block-views-blockpress-press-block-about-page .latest-press .press-image-wrapper {
    padding-bottom: 135%;
    position: relative;
}

/* Default flexy setup for overvew pages, works in FF and Chrome. */
.blog-image-wrapper  > .field--name-field-image,
.podcast-image-wrapper  > .field--name-field-podcast-image,
.press-image-wrapper  > .field--name-field-press-image,
.transformations-image-wrapper  > .field--name-field-before-and-after-photo,
.favorite-image-wrapper  > .field--name-field-image {
    position: relative;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: start;
    -moz-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

/* Homepage press blocks need a different setup */
.press .press-image-wrapper > .field--name-field-press-image,
/* Homepage press blocks when linked */
.press .press-image-wrapper a > .field--name-field-press-image,
/* Press block used on other pages */
.latest-press .press-image-wrapper  > .field--name-field-press-image,
/* Press block when linked */
.latest-press .press-image-wrapper a > .field--name-field-press-image,
/* Homepage blog requires a different setup */
.blog .blog-image-wrapper  > .field--name-field-image {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    box-sizing: border-box;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: stretch;
    -moz-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

/* Press and Blog section on About page */
.latest-press .press-image-wrapper  > .field--name-field-press-image {
    position: relative;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width:100%;
    overflow: hidden;
    box-sizing: border-box;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: stretch;
    -moz-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

/* Default images in flexy dynamic */
.blog-image-wrapper .field--name-field-image img,
.podcast-image-wrapper .field--name-field-podcast-image img,
.press-image-wrapper .field--name-field-press-image img,
.transformations-image-wrapper .field--name-field-before-and-after-photo img,
.favorite-image-wrapper .field--name-field-image img,
/* Homepage images */
.path-frontpage .blog .field--name-field-press-image img,
.path-frontpage .press .field--name-field-press-image img {
    width: 100%;
    height: auto !important;
    border-radius: 16px;
    object-fit: cover !important;
    box-sizing: border-box;
    border: 1px solid lightgrey;
}

/* Homepage images need to be sized differently */
.press-image-wrapper .field--name-field-press-image img,
.path-frontpage .node--type-blog-post img {
    height: 100% !important;
}
