@font-face {
  font-family: 'cmaisonneue';
  src: url('../fonts/maisonneue-book.woff2') format('woff2'),
  url('../fonts/maisonneue-book.woff') format('woff'),
  url('../fonts/maisonneue-book.ttf') format('truetype');
}

@font-face {
  font-family: 'droidserif';
  src: url('../fonts/droidserif-regular.woff2') format('woff2'),
  url('../fonts/droidserif-regular.woff') format('woff'),
  url('../fonts/droidserif-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'knacc-icons';
  src: url('../fonts/knacc-icons.woff') format('woff2'),
  url('../fonts/knacc-icons.woff') format('woff'),
  url('../fonts/knacc-icons.ttf') format('truetype');
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: 'cmaisonneue',-apple-system,Arial,Helvetica Neue,Helvetica,sans-serif;
  -webkit-font-smoothing: antialiased;
  -webkit-transition: font-size 200ms ease;
  transition: font-size 200ms ease;
}

*, *:before, *:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

body, h1, h2, h3, h4, h5, h6, p, ol, ul {
  margin: 0;
  padding: 0;
  line-height: 1.5;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
}

::-moz-selection {
  color: #FFFFFF;
  background: #57B38A; /* WebKit/Blink Browsers */
}

::selection {
  color: #FFFFFF;
  background: #57B38A; /* WebKit/Blink Browsers */
}
::-moz-selection {
  color: #FFFFFF;
  background: #57B38A; /* Gecko Browsers */
}
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #57B38A;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #57B38A;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #57B38A;
}
:-moz-placeholder { /* Firefox 18- */
  color: #57B38A;
}

h1, h2, h3, h4, h5, h6 {
  margin: 20px 0;
  color: #333;
}

h1 {
  font-family: 'cmaisonneue',-apple-system,Arial,Helvetica Neue,Helvetica,sans-serif;
  font-size: 2.3em;
  letter-spacing: -1px;
}

h2 {
  font-family:  'cmaisonneue',-apple-system,Arial,Helvetica Neue,Helvetica,sans-serif;
  font-size: 1.5em;
}

h3 {
  font-family:  'cmaisonneue',-apple-system,Arial,Helvetica Neue,Helvetica,sans-serif;
	font-size: 1.2em;
	}

h4 {
  font-family:  'cmaisonneue',-apple-system,Arial,Helvetica Neue,Helvetica,sans-serif;
  font-size: 1.1em;
}

h5 {
  font-family:  'cmaisonneue',-apple-system,Arial,Helvetica Neue,Helvetica,sans-serif;
  font-size: 1.1em;
}

p {
  font-family: 'droidserif',-apple-system,Arial,Helvetica Neue,Helvetica,sans-serif;

  color: #555555;
  font-size: 1em;
  line-height: 2em;
  color: #000;
}

a {
  text-decoration: none;
  color: inherit;
}

strong, b {
  font-family: 'droidserif',-apple-system,Arial,Helvetica Neue,Helvetica,sans-serif;
}

mark {
  padding: 5px;
}

.gfx-lazyload {
  display: block;
  width:10px;
  height:10px;
}

/*
.container {
  padding: 0 20px;
  margin:0 auto;
  max-width: 1440px;
}
*/

main.wrapper {
    padding: 0 ;
    max-width: 1440px;
    /* margin: 0 auto; */
    margin: 140px auto 0 auto;
    position: relative;
}

.m-header {
  margin: 35px 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.m-header .m-responsive-menu {
  display: none;
}



/*.header-logo {
  background-image:url('../gfx/d-logo.svg');
  max-width: 200px;
  width: 200px;
  min-height:38px;

  text-indent: 100%;
   white-space: nowrap;
   overflow: hidden;
}*/

.m-header .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.m-header .m-header-menu a {
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 15px;
}

.m-header .m-header-menu a:hover {
  color: #57B38A;
}

.m-header .m-header-menu a:not(:last-child) {
  margin-right: 20px;
}

.m-home {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}


  /* Main Element 1 */

  .m-main-element {
    max-width: 100%;

    background-position: 50% 50%;
    background-size: cover;
	  /* background-color: rgba(0,0,0,.20); */
    background-blend-mode: multiply;
    color: #FFFFFF;
    text-align: center;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
        -ms-flex-flow:column nowrap;
            flex-flow:column nowrap;

    margin-bottom: 15px;
    /* margin-right: 15px; */
  }

  .m-main-element h2 {
    color: inherit;
    display: inline;
    border-bottom: 3px solid #9dd6c3;
    background-color:unset !important;

  }

  .m-main-element p {
    color: inherit;
    padding:0 80px;
	background-color:unset !important;

  }


  /* Instagram Element */


  .m-instagram-feed {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
        -ms-flex-flow:row wrap;
            flex-flow:row wrap;

    max-width: 100%;
    width: 100%;

  }

  .m-instagram-feed-hero {
    color: #FFFFFF;
    background-color: #57B38A;

    width: calc(16.6%);
    height: 180px;
    /* margin-right: 15px; */

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
        -ms-flex-flow:column nowrap;
            flex-flow:column nowrap;

    text-align: center;

  }

  .m-instagram-feed-hero > * {
    color: inherit;
  }

  .m-instagram-feed-hero h4 {
    margin-bottom: 0;
  }


  .m-instagram-feed-image {
    width: calc(16.6%);
    height: 180px;

    margin-bottom: 15px;
    /* margin-left: 15px; */

    background-position: 50% 50%;
    background-size: cover;
    background-repeat: no-repeat;
  }


  .content-50 {
    max-width: 50%;
    /*width: 50%;*/
  }


  /* News Element */

  .m-news {
    width: 100%;
    margin-bottom: 15px;
  }

  .m-news .m-news-image {
    height:250px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
  }

  .m-news .m-news-post-details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #D7D7D7;

    padding: 20px 30px;
  }

  .m-news .m-news-post-details-date {
    width: 40px;
    height: 40px;
    background-color: #36373A;
    border-radius: 40px;
    color: #FFFFFF;
    text-align: center;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
  }

  .m-news .m-news-post-details-date h5 {
    padding-top: 8px;
    color: inherit;
    font-size: 12px;
    margin: 0 auto;
    line-height: .5;
  }

  .m-news .m-news-post-details-date p {
    color: inherit;
    font-size: 14px;
  }

  .m-news-post-details-author {
    margin-left: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .m-news .m-news-post-details-author img {
    width: 40px;
    height: 40px;
    border-radius:40px;
  }

  .m-news .m-news-post-details-author h5 {
    margin: 0 auto;
    margin-left: 10px;
    line-height: 1.3;
  }

  .m-news .m-news-post {
    background-color: #EDEBEB;
    padding: 20px 30px 40px 30px;
  }

  .m-news .m-news-post h2 {
    font-size: 20px;
    color: #313235;
    border-bottom: 3px solid #9dd6c3;
  }

  .m-news .m-news-post h5 {
    color: #797979;
    margin-bottom: 4px;
  }

  .m-page p {
    margin-bottom: 15px;
  }

  .m-page ul, .m-page ol {
    color: #555555;
  }

  .m-page li {
    margin:10px 0;
  }






  .m-widget-link {
    width: 100%;
    margin-bottom: 15px;
  }


  .m-widget-link-header {
    color: #FFFFFF;
    background-color: #57B38A;

    padding:30px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
        -ms-flex-flow:column nowrap;
            flex-flow:column nowrap;

    text-align: center;
  }

  .m-widget-link-header h3 {
    color: inherit;
  }

  .m-widget-link-items {
    position: relative;
    text-align: center;
    background-color: #666A69;
    padding: 10px 0;
  }

  .m-widget-link-arrow {
    width: 0;
    height: 0;
    top: -15px;
    position: relative;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #57B38A;
    margin: 0 auto;
  }

  .m-widget-link-items a {
    color: #FFFFFF;
    display: inline-grid;
    border-bottom: 3px solid #9dd6c3;

    margin-bottom: 10px;
    padding: 0 7px;
  }



  .content-half {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
        -ms-flex-flow:row wrap;
            flex-flow:row wrap;

    max-width: 50%;
  }

  .content-half {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
    //        flex-flow: column nowrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }

  .content-half:first-of-type {
    margin-right: 15px;
  }



.content-50:last-of-type {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}


@media screen and (max-width:900px) {

  .m-page {

  }

  .m-page h1 {
    font-size: 36px;
  }


  .m-home {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
  }

  .m-header .m-responsive-menu {
    display: block;
  }

  .m-header .m-header-menu {
    display: none;
  }

  .content-50 {
    max-width: 100%;
  }

  .m-main-element {
    margin-right: 0;
  }

  .m-header .container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-box-align: left;
        -ms-flex-align: left;
            align-items: left;
  }

  .m-header .m-header-menu a {
    display: block;
    font-size: 16px;
    padding: 15px 0;
  }

  .m-header .header-logo {
    margin-bottom: 20px;
  }

  .m-header .m-header-menu a:not(:last-child) {
    margin-right: 0;
  }
  .m-instagram-feed-hero{
    width:50%;
  }

  .m-instagram-feed-image {
    margin-right: 0;
    width:50%;
  }


  .m-header-menu.m-responsive-menu-open {
    display: block;
  }

  .m-responsive-menu {
    cursor: pointer;
    -webkit-user-select:none;
       -moz-user-select:none;
        -ms-user-select:none;
            user-select:none;
    position: absolute;
    bottom:0;
    top:45px;
    right:25px;
  }

}



@media screen and (max-width:400px) {

  .m-responsive-menu {
    cursor: pointer;
    -webkit-user-select:none;
       -moz-user-select:none;
        -ms-user-select:none;
            user-select:none;
    position: absolute;
    bottom:0;
    top:26px;
    right:25px;
  }

  .content-half {
    max-width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
  }


  .m-instagram-feed-hero {
    margin-bottom: 15px;
  }

  .m-instagram-feed-hero, .m-instagram-feed-image {
    width: 50%;
    margin-right: 0;
  }

  .m-instagram-feed-image:nth-child(even) {
    margin-right: 0;
    width:50%;
  }

  .content-half:first-of-type {
    margin-right: 0;
  }


  .content-50:last-of-type {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
  }

  .m-header .m-header-menu a {
    display: block;
    font-size: 14px;
    padding: 15px 0;
  }

  .m-header {
    margin:15px 0;
  }

}



@media screen and (min-width: 900px) {
  html {
    zoom: 0.9;
  }
}

/** Adhoc **/

.m-page {
  padding: 0 10px 50px 10px;
}

.m-page h1{
  color: rgba(0,0,0,0.9);
  font-size: 30px;
  border-bottom:3px solid #9dd6c3;
  display: inline-block;
}

@media screen and (min-width: 600px) {
  .m-page h1{
    font-size: 3em;
    display: inline-block;
  }
}

.m-page p{
  font-family: "cmaisonneue";
}

.m-page li, .m-page p{
  font-size: 16px;
}

body.page-template-default .max-container{
  max-width: 960px;
  margin: 35px auto;
}

.m-news-image{
  display: block;
}

/** New **/

.mcontainer{
  padding: 0 20px;
  margin: 0 auto;
  max-width: 1440px;
}

.grid {
  display: grid;
  grid-gap: 14px 70px;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));

  grid-template-rows: max-content;

  grid-auto-rows: 5px;
  /* padding-left: 20px;
  padding-right: 5px;*/
}

.frontpage-grid {
  display: grid;
  grid-gap: 14px 30px;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));

  grid-template-rows: max-content;

  grid-auto-rows: 5px;
  /* padding-left: 20px;
  padding-right: 5px;*/
}



/*.masonry {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-flow: column wrap;
  margin-left: -8px;
  max-height: 200px;
}

.masonry-brick {
  margin: 0 8px 8px 0;
  border: 1px solid #000;
  min-height: 200px;
  width: 30%;
}
/*
.masonry-brick:nth-child(4n+1){
  width: 250px;
}

.masonry-brick:nth-child(4n+2){
  width: 325px;
}

.masonry-brick:nth-child(4n+3){
  width: 180px;
}

.masonry-brick:nth-child(4n+4){
  width: 380px;
}
*/

/*
@media only screen and (max-width: 400px) {
  .grid {
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  }
}
@media only screen and (min-width: 400px) {
  .grid {
    grid-template-columns: repeat(auto-fill, minmax(260px, 380px));
  }
}

@media only screen and (min-width: 769px) {
  .grid {
    grid-template-columns: repeat(auto-fill, minmax(280px, 380px));
  }
}

@media only screen and (min-width: 900px) {
  .grid {
    grid-template-columns: repeat(auto-fill, minmax(280px, 280px);
  }
}
*/
/*
@media only screen and (min-width: 1024px) {
  .grid {
    grid-template-columns: 24% 24% 24% 24%;
  }
}*/

/*
.masonry {
  margin: 1em 0;
  padding: 0;

  -moz-column-gap: 1em;
  -webkit-column-gap: 1em;
  column-gap: 1em;

  -moz-column-count: 1;
  -webkit-column-count: 1;
  column-count: 1;
}

.item {
  display: inline-block;
  background: #fff;
  margin: 0 0 1em;
  width: 100%;
}

@media only screen and (min-width: 500px) {
  .masonry {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    column-count: 2;
  }
}

@media only screen and (min-width: 769px) {
  .masonry {
    -moz-column-count: 3;
    -webkit-column-count: 3;
    column-count: 3;
  }
}

@media only screen and (min-width: 900px) {
  .masonry {
    -moz-column-count: 4;
    -webkit-column-count: 4;
    column-count: 4;
  }
}
*/

/*.itemGraphic{
  display: block;
  height: 250px;
  //width:100%;
  //display:inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}

.itemContent{
  background: #EDEBEB;
  padding: 20px 30px 40px 30px;
}

.itemContent h2{
  font-family: 'cmaisonneue';
  font-size: 20px;
  color: #313235;
  border-bottom: 3px solid #9dd6c3;
}

.itemContent h5{
  color: #797979;
  margin-bottom: 4px;
}

.itemContent p{
  color: #000;
  font-family: "cmaisonneue";
  font-size: 16px;
}
*/
