/* LAYOUT
-------------------------------------------------------- */
/* MIXINS
-------------------------------------------------------- */
.kns-block-txtimg {
  display: grid;
  grid-template-areas: "image" "contenu";
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 64px; }
  @media (min-width: 768px) {
    .kns-block-txtimg {
      grid-column-gap: 2.5641%; }
      .kns-block-txtimg.img-right {
        grid-template-areas: "contenu image"; }
        .kns-block-txtimg.img-right.txtimg-image--one-fourth {
          grid-template-columns: 1fr 23.07692%; }
        .kns-block-txtimg.img-right.txtimg-image--one-third {
          grid-template-columns: 1fr 31.62393%; }
        .kns-block-txtimg.img-right.txtimg-image--one-half {
          grid-template-columns: 1fr 48.71795%; }
      .kns-block-txtimg.img-left {
        grid-template-areas: "image contenu"; }
        .kns-block-txtimg.img-left.txtimg-image--one-fourth {
          grid-template-columns: 23.07692% 1fr; }
        .kns-block-txtimg.img-left.txtimg-image--one-third {
          grid-template-columns: 31.62393% 1fr; }
        .kns-block-txtimg.img-left.txtimg-image--one-half {
          grid-template-columns: 48.71795% 1fr; } }
  .kns-block-txtimg figure {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden; }
  .kns-block-txtimg img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  .kns-block-txtimg .txtimg-image {
    display: none;
    grid-area: image; }
    @media (min-width: 768px) {
      .kns-block-txtimg .txtimg-image {
        display: block; } }
  .kns-block-txtimg .txtimg-image-mobile {
    grid-area: image; }
    .kns-block-txtimg .txtimg-image-mobile figure {
      max-height: 30vh;
      margin-bottom: 16px; }
    .kns-block-txtimg .txtimg-image-mobile img {
      width: 100%;
      -o-object-fit: cover;
      object-fit: cover;
      -o-object-position: center;
      object-position: center; }
    @media (min-width: 768px) {
      .kns-block-txtimg .txtimg-image-mobile {
        display: none; } }
  .kns-block-txtimg .txtimg-text {
    grid-area: contenu; }
    .kns-block-txtimg .txtimg-text p:last-of-type {
      margin-bottom: 0; }
