* { margin: 0; padding: 0; box-sizing: border-box; }

:root {
  --black: #101010;
  --dark-grey: #404040;
  --light-grey: #D2D2D2;
  --mid-grey: #848484;
  --beige: #FAF4F1;
}

body { 
  margin: 0;
  font: 18px/1.5 neue-haas-grotesk-text, sans-serif;
  letter-spacing: -0.004em;
  color: var(--dark-grey);
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media (max-width: 700px) {
  body {font-size: 100%}
}

hr { border: 0; border-top: 1px solid #ccc }

a { 
  color: inherit; 
  border-bottom: 1px solid; 
  text-decoration: none;
}
a, .button {transition: background-color 0.3s, border-color 0.3s, color 0.3s !important;}
a:hover, .button:hover { color: var(--black);border-color: var(--light-grey); }
header a, .section--dark a { color: #fff; }
header a:hover, .section--dark a:hover { color: var(--light-grey); }

.heading { font-family: neue-haas-grotesk-display, sans-serif; font-weight: 700 }
/* Base of 18 */
.fs15 {font-size: 0.8333em}
.fs16 {font-size: 0.89em}
h2, .fs24 {font-size: 1.33em}
h1, .fs32 {font-size: 1.78em}
.fs48 {font-size: 2.67em}
.lhheading {line-height: 1.2}
p, ul, ol {margin-top: 1.5rem;margin-bottom: 1.5rem}


ul, ol {padding-left: 1.2em}
ul.list-checks li {margin-left: -1.2em;list-style: none;padding-left: 1.2em; position:relative;padding-bottom: 0.5rem}
ul.list-checks li:before {content: '✓'; width: 1.2em;display: inline-block;position: absolute;left: 0;}
ul ul { margin: 0;margin-left: 1.2em }

img {width: 100%}

.tag { display: inline-block; padding: 1px 6px;background-color: var(--dark-grey); color:#fff; border-radius:5px; font-size: 0.77em; font-weight:bold; }

.db {display: block}

.color--black {color: var(--black);}
.color--dark-grey {color: var(--dark-grey);}
.color--mid-grey {color: var(--mid-grey);}
.color--light-grey {color: var(--light-grey);}

.b0 {border: none}

.normal { font-weight: normal; }
.b {font-weight: bold}
.tc {text-align: center;}
.tl {text-align: left;}
.tr {text-align: right;}

.mb0 {margin-bottom: 0}
.mb1 {margin-bottom: 16px}
.mt0 {margin-top: 0;}
.mvhalf {margin-top: 8px;margin-bottom: 8px}
.mt2 {margin-top: 32px}
.mt3 {margin-top: 48px}
.mt4 {margin-top: 64px}
.mt5 {margin-top: 80px}
.mb2 {margin-bottom: 32px}
.mb3 {margin-bottom: 48px}
.mb4 {margin-bottom: 64px}
.mb5 {margin-bottom: 80px}

header {padding: 48px 1em; background-color: var(--black);color: #fff}
header {background-image: url("img/pattern-1.png");background-position: center 30%;background-size: 906px;background-repeat: no-repeat;}
nav a {margin: 0 8px;}
nav a.active {font-weight:bold;color: #fff}
@media (max-width: 700px) {
  .menu {margin-top: 8px !important}
}
nav.cols {align-items: center;}
@media (min-width: 701px) {
  nav.cols {display: flex;justify-content: space-between;}
}

.hero {margin: 80px 0 48px;}

.container { max-width: 700px;margin-left: auto;margin-right: auto; }
.container--narrow {max-width: 600px}
.container--wide {max-width: 1120px;}
.container.hero {max-width: 800px}
section {
  margin-left: auto;
  margin-right: auto;
  padding: 112px 2em;
}
@media (max-width: 700px) {
  section {padding: 80px 2rem}
}
.section--full {
  max-width: 100%;
}
.section--full-padded {
  max-width: 92%;
}
.section--dark {
  background-color: var(--black);
  color: #fff;
}
.section--beige {
  background-color: var(--beige);
}

footer {padding-top:56px;margin: 0 auto 2rem; border-top: 1px solid var(--light-grey)}
body.home-template footer {border: 0}

@media (min-width: 701px) {
  .cols {display: flex;justify-content: space-between;}
  .flexwrap {flex-wrap: wrap;}
  .col--third {width: 48%}
  .about__left {width: 160px;margin-right: 3rem}
}

#services {background-image: url("img/pattern-1.png");background-position: center 30%;background-size: 969px;background-repeat: repeat-y;}

.home-photo {
  margin: 0 auto;
  max-width: 600px;
  width: 100%;
  padding-bottom: 80%;
  margin-bottom: -20em;
  background-image: url("img/home.jpg");
  background-position: center;
  background-size: cover;
}
@media (min-width: 501px) {
  .home-photo {
    padding-bottom: 60%;
  }
}
@media (min-width: 701px) {
  .home-photo {
    padding-bottom: 47%;
  }
}

.box {
  position: relative;
  padding: 3rem 50px;
  background: #FAF4F1;
  border: 1px solid var(--dark-grey);
  border-radius: 18px;
}
.pricing-box {
  display: inline-block;
  padding: 1.5rem 2rem;
  background-color: #fff;
  border: 1px solid var(--dark-grey);
  border-radius: 18px;
  margin: auto;
  top: -104px;
  position: absolute;
  width: 180px;
  margin-left: calc(50% - 90px - 50px);
}
@media (min-width: 700px) {
  .pricing-box {
    position: absolute;
    right: 32px;
    top: -80px;
  }
}
.quotes {position: absolute;left: 32px;top: 12px;font-size: 120px;line-height: 32px;}

.button {display:inline-block;padding: 0.89em 1.78em;border-radius: 2em;border: 2px solid var(--black);background-color: #fff;font-size: 1.11em;font-family:inherit;cursor: pointer;}
.section--dark .button {
  background-color: #fff; color: var(--black);border-color: #fff;
}
.section--dark .button:hover {
  background-color: var(--light-grey);border-color: var(--light-grey);color: var(--black);
}

.paypal-buttons {max-width: 300px;margin: 0 auto}
.avatar {display:block;width:100%;max-width:160px;height:auto;border-radius: 2em}




.post-content pre,
.post-content blockquote,
.post-content .kg-card {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.post-content h2,
.post-content h3,
.post-content h4 {
  margin-top: 3rem
}

.kg-width-wide,
.kg-width-full {
  position: relative;
  width: 75vw;
  min-width: 100%;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  transform: translateX(calc(50vw - 50%));
}

.kg-width-full {
  width: 90vw;
}

article figure {
  margin: 0;
}

article figcaption {
  text-align: center;
}



.kg-bookmark-card {
    width: 100%;
    position: relative;
}

.kg-bookmark-container {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    color: currentColor;
    font-family: inherit;
    text-decoration: none;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.kg-bookmark-container:hover {
    text-decoration: none;
}

.kg-bookmark-content {
    flex-basis: 0;
    flex-grow: 999;
    padding: 20px;
    order: 1;
}

.kg-bookmark-title {
    font-weight: 600;
}

.kg-bookmark-metadata,
.kg-bookmark-description {
    margin-top: .5em;
}

.kg-bookmark-metadata {
    align-items: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.kg-bookmark-description {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.kg-bookmark-icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: text-bottom;
    margin-right: .5em;
    margin-bottom: .05em;
}

.kg-bookmark-thumbnail {
    display: flex;
    flex-basis: 24rem;
    flex-grow: 1;
}

.kg-bookmark-thumbnail img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
    object-fit: cover;
}

.kg-bookmark-author {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.kg-bookmark-publisher::before {
    content: "•";
    margin: 0 .5em;
}



.kg-image-card figcaption,
.kg-gallery-card figcaption {
    margin: -1.0em 0 1.5em;
}

.kg-embed-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 1.5em 0 3em;
    min-width: 100%;
}

.kg-embed-card figcaption {
    margin: 0.5em 0 0;
}

.kg-embed-card .fluid-width-video-wrapper {
    margin: 0;
}


.kg-image-full + figcaption {
    padding: 0 1.5em;
}


@media (max-width: 1040px) {
    .post-full-content .kg-width-full .kg-image {
        width: 100vw;
    }
}

.kg-gallery-container {
    display: flex;
    flex-direction: column;
    margin: 1.5em auto;
    max-width: 1040px;
    width: 100%;
}

.kg-gallery-row {
    display: flex;
    flex-direction: row;
    justify-content: center;
}
.kg-gallery-image img {
    display: block;
    margin: 0;
    width: 100%;
    height: 100%;
}

.kg-gallery-row:not(:first-of-type) {
    margin: 0.75em 0 0 0;
}

.kg-gallery-image:not(:first-of-type) {
    margin: 0 0 0 0.75em;
}