/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

main {
  display: block; }

h1, .h1 {
  font-size: 2em;
  margin: 0.67em 0; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

a {
  background-color: transparent; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted; }

b,
strong {
  font-weight: bolder; }

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: 0.35em 0.75em 0.625em; }

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

/**
 * Base Styles
 */
html {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", Helvetica, sans-serif;
  font-size: 100%; }

body {
  background-color: #fff;
  color: #536171;
  line-height: 1.625;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

a {
  color: #f59cba;
  text-decoration: underline; }
  a:hover {
    text-decoration: none; }

h1, .h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  color: #282f36;
  font-weight: 700;
  line-height: 1.2;
  margin: 2.25rem 0 1.125rem; }
  h1:first-child, .h1:first-child,
  h2:first-child,
  .h2:first-child,
  h3:first-child,
  .h3:first-child,
  h4:first-child,
  .h4:first-child,
  h5:first-child,
  .h5:first-child,
  h6:first-child,
  .h6:first-child {
    margin-top: 0; }
  h1 a, .h1 a,
  h2 a,
  .h2 a,
  h3 a,
  .h3 a,
  h4 a,
  .h4 a,
  h5 a,
  .h5 a,
  h6 a,
  .h6 a {
    color: inherit;
    text-decoration: none; }

h1, .h1 {
  font-size: 2.625em; }


h2,
.h2 {
  font-size: 2.25em; }


h3,
.h3 {
  font-size: 1.875em; }


h4,
.h4 {
  font-size: 1.5em; }


h5,
.h5 {
  font-size: 1.3125em; }


h6,
.h6 {
  font-size: 1.125em; }

blockquote {
  border-left: 3px solid #f59cba;
  color: #282f36;
  font-size: 1.25em;
  font-style: italic;
  line-height: 1.5;
  margin: 2.25rem 0;
  padding: 0 1.2em; }
  blockquote:first-child {
    margin-top: 0; }

p {
  margin: 0 0 1.5rem; }

ul,
ol {
  margin: 0 0 1.5rem;
  padding: 0 0 0 1.25rem; }

ul {
  list-style: disc; }

ol {
  list-style: decimal; }

li > ul,
li > ol {
  margin-bottom: 0; }

hr {
  background-color: #e1e4e9;
  border: 0;
  height: 1px;
  margin: 2.25rem 0; }
  hr:first-child {
    margin-top: 0; }

/* Media */
embed,
iframe,
object,
video {
  max-width: 100%; }

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

figure {
  margin: 0; }

@media (max-width: 640px) {
  h1, .h1 {
    font-size: 2.25em; }
  
  h2,
  .h2 {
    font-size: 1.875em; }
  
  h3,
  .h3 {
    font-size: 1.5em; }
  
  h4,
  .h4 {
    font-size: 1.3125em; }
  
  h5,
  .h5 {
    font-size: 1.125em; }
  
  h6,
  .h6 {
    font-size: 1em; } }

/**
 * Helper Classes
 */
.container {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  padding-left: 1.125rem;
  padding-right: 1.125rem; }

.container--md {
  max-width: 740px; }

.container--lg {
  max-width: 1140px; }

/* Headings */
/* Text alignment */
.align-left {
  text-align: left; }

.align-right {
  text-align: right; }

.align-center {
  text-align: center; }

/* Background image */
.bg-image {
  position: relative; }

.bg-image__image {
  background-position: center center;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }

/* Text meant only for screen readers */
.sr-only {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: polygon(0px 0px, 0px 0px, 0px 0px, 0px 0px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; }

/* Clear floats */
.clear:after {
  clear: both; }

.clear:before, .clear:after {
  content: "";
  display: table; }

/**
 * Form fields
 */
label {
  display: block;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 0.25em; }

input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="url"],
select,
textarea {
  background: 0;
  border: 1px solid #e1e4e9;
  border-radius: 3px;
  box-shadow: none;
  box-sizing: border-box;
  color: #536171;
  display: block;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5;
  max-width: 100%;
  padding: 0.625em 0.625em;
  width: 100%; }
  input[type="text"]:focus,
  input[type="password"]:focus,
  input[type="email"]:focus,
  input[type="tel"]:focus,
  input[type="number"]:focus,
  input[type="search"]:focus,
  input[type="url"]:focus,
  select:focus,
  textarea:focus {
    outline: 0; }

.form-group {
  margin-bottom: 1.125rem; }

.form-submit {
  margin-top: 1.875rem; }

.form-select-wrap {
  font-size: 1em;
  position: relative; }
  .form-select-wrap select {
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 25px; }
    .form-select-wrap select:focus {
      outline: 0; }
  .form-select-wrap:before, .form-select-wrap:after {
    border: solid transparent;
    border-width: .3125em;
    box-sizing: border-box;
    content: "";
    position: absolute;
    right: 10px;
    top: 50%;
    z-index: 1; }
  .form-select-wrap:before {
    border-top-color: #536171;
    margin-top: .125em; }
  .form-select-wrap:after {
    border-bottom-color: #536171;
    margin-top: -.75em; }

.form-checkbox {
  padding-left: 1.5em;
  position: relative; }
  .form-checkbox input[type=checkbox] {
    height: 1.5em;
    left: 0;
    position: absolute;
    top: 0; }
  .form-checkbox label {
    font-weight: normal; }

/**
 * Button Styles
 */
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.btn {
  background-color: #f59cba;
  border: 2px solid #f59cba;
  border-radius: 5px;
  box-sizing: border-box;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 1em;
  font-weight: 700;
  line-height: 1.25;
  padding: 0.625em 1.5em;
  text-align: center;
  text-decoration: none;
  transition: .3s ease;
  vertical-align: middle; }
  button:hover, button:focus, button:active,
  input[type="submit"]:hover,
  input[type="submit"]:focus,
  input[type="submit"]:active,
  input[type="button"]:hover,
  input[type="button"]:focus,
  input[type="button"]:active,
  input[type="reset"]:hover,
  input[type="reset"]:focus,
  input[type="reset"]:active,
  .btn:hover,
  .btn:focus,
  .btn:active {
    opacity: .8;
    outline: 0; }

.btn--secondary {
  background-color: transparent;
  border-color: #f59cba;
  color: #f59cba; }

.btn--icon {
  align-items: center;
  display: inline-flex;
  font-size: 1.5em;
  height: 1.25em;
  justify-content: center;
  line-height: 1.25em;
  padding: 0;
  position: relative;
  width: 1.25em; }

.btn--clear {
  background: 0;
  border: 0;
  color: #282f36; }
  .btn--clear:hover, .btn--clear:focus, .btn--clear:active {
    opacity: 1; }

.btn-group {
  align-items: center;
  display: flex;
  flex-wrap: wrap; }
  .btn-group a,
  .btn-group .btn {
    margin: 0 1.125em 1.125em 0; }

.align-center .btn-group {
  justify-content: center; }
  .align-center .btn-group a,
  .align-center .btn-group .btn {
    margin-left: 0.5625em;
    margin-right: 0.5625em; }

.align-right .btn-group {
  justify-content: flex-end; }
  .align-right .btn-group a,
  .align-right .btn-group .btn {
    margin-left: 1.125em;
    margin-right: 0; }

/**
 * Icons
 */
.icon {
  color: inherit;
  display: inline-block;
  fill: currentColor;
  flex-shrink: 0;
  height: 1em;
  line-height: 1;
  width: 1em; }

/**
 * Tables
 */
table {
  border-bottom: 1px solid #e1e4e9;
  border-collapse: collapse;
  border-spacing: 0;
  line-height: 1.5;
  margin: 0;
  max-width: 100%;
  text-align: left;
  width: 100%; }

caption {
  color: #8594a5;
  font-size: 0.875em;
  font-style: italic;
  margin-bottom: 0.75rem;
  text-align: left; }

th,
td {
  border-top: 1px solid #e1e4e9;
  padding: 0.5em 5px; }

th {
  color: #282f36;
  font-weight: 700; }

:not(.responsive-table) > table {
  margin: 0 0 1.5rem; }

.responsive-table {
  display: block;
  margin: 0 0 1.5rem;
  overflow-x: auto;
  width: 100%; }

/**
 * Menus
 */
.menu {
  list-style: none;
  margin: 0;
  padding: 0; }
  .menu li {
    color: #536171;
    line-height: 1.25; }
    .menu li.is-active {
      color: #f59cba; }
  .menu a:not(.btn) {
    border: 0;
    color: inherit;
    display: inline-block;
    text-decoration: none; }
    .menu a:not(.btn):hover {
      color: #f59cba; }

/**
 * Grids
 */
.flex {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.75rem;
  margin-left: -0.75rem; }

.flex--middle {
  align-items: center; }

.flex--center {
  justify-content: center; }

.cell {
  box-sizing: border-box;
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  width: 100%; }

.flex--col-2 .cell {
  flex: 0 0 50%;
  max-width: 50%; }

.flex--col-3 .cell {
  flex: 0 0 33.333%;
  max-width: 33.333%; }

@media (max-width: 800px) {
  .flex--col-2 .cell,
  .flex--col-3 .cell {
    flex: 0 0 100%;
    max-width: 100%; } }

/**
 * Cards
 */
.card {
  background-color: #fff;
  border: 1px solid #e1e4e9;
  border-radius: 3px;
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.08);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  flex-grow: 1; }

.cell .card {
  height: 100%;
  transition: 0.3s; }

.cell .card:hover {
  transform: scale(1.1); }

.card__media img {
  display: block;
  width: 100%; }

.card__media:only-child img {
  border-radius: 3px; }

.card__media--top img {
  border-radius: 3px 3px 0 0; }

.card__media--bottom {
  order: 1; }
  .card__media--bottom img {
    border-radius: 0 0 3px 3px; }

.card__body {
  flex-grow: 1;
  padding: 1.5rem; }

.card__header,
.card__meta,
.card__footer {
  margin-bottom: 1.125rem; }

.card__title {
  margin-top: 0; }

.card__meta,
.card__footer {
  color: #8594a5;
  font-size: 0.875em;
  line-height: 1.5; }

.card__copy > *:last-child {
  margin-bottom: 1.125rem; }

/**
 * Styles for dark backgrounds
 */
.inverse {
  color: #f5f6f7; }
  .inverse a {
    color: #f5f6f7; }
  .inverse h1, .inverse .h1,
  .inverse h2,
  .inverse .h2,
  .inverse h3,
  .inverse .h3,
  .inverse h4,
  .inverse .h4,
  .inverse h5,
  .inverse .h5,
  .inverse h6,
  .inverse .h6 {
    color: #fff; }
  .inverse .btn {
    background-color: #f59cba;
    border-color: #f59cba;
    color: #fff; }
  .inverse .btn--secondary {
    background-color: #fff;
    border-color: #fff;
    color: #f59cba; }
  .inverse .btn--clear {
    background: 0;
    color: #fff; }

body.has-theme-bar #site-wrap {
  top: 60px;
  padding-top: 60px; }
  @media only screen and (max-width: 801px) {
    body.has-theme-bar #site-wrap {
      top: 60px;
      padding-top: 0; } }
  @media only screen and (min-width: 801px) {
    body.has-theme-bar #site-wrap .site-header {
      top: 60px; } }

/**
 * Site Layout
 */
.site {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  position: relative; }

.site-content {
  box-sizing: border-box;
  flex-grow: 1;
  width: 100%; }

/**
 * Site Header
 */
.site-header {
  border-bottom: 1px solid #e1e4e9;
  padding-bottom: 1.125rem;
  padding-top: 1.125rem; }

.navbar {
  align-items: center;
  display: flex; }

.navbar__logo,
.navbar__title {
  flex: 0 1 auto;
  margin: 0 1.25rem 0 0;
  text-decoration: none; }

.navbar__logo img {
  max-height: 2rem; }

.navbar__menu {
  margin-left: auto; }

.navbar__item {
  font-size: 0.875em; }

@media (min-width: 801px) {
  .js-nav-toggle {
    display: none; }
  .navbar__list {
    align-items: center;
    display: flex; }
  .navbar__item {
    margin-left: 1.25rem; }
  .js-menu-toggle {
    display: none; } }

@media (max-width: 800px) {
  .navbar:after {
    background: rgba(245, 246, 247, 0.8);
    content: "";
    height: 100vh;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: opacity .25s, visibility 0s .25s;
    visibility: hidden;
    width: 100%; }
  .navbar__menu-btn,
  .navbar__close-btn {
    margin-left: auto; }
  .navbar__menu {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-color: #fff;
    bottom: 0;
    right: -100%;
    max-width: 360px;
    -webkit-overflow-scrolling: touch;
    position: fixed;
    top: 0;
    transition: right 0.3s cubic-bezier(0.65, 0.05, 0.36, 1), visibility 0s 0.3s;
    visibility: hidden;
    width: 100%;
    z-index: 999; }
  .navbar__scroller {
    height: 100%;
    overflow-y: auto;
    position: relative; }
  .navbar__inner {
    padding: 1.125rem 1.5rem; }
  .navbar__close-btn {
    position: absolute;
    right: 1.5rem;
    top: 1.125rem; }
  .navbar__list {
    margin-top: 3rem; }
  .navbar__item {
    border-top: 1px solid #e1e4e9; }
    .navbar__item:not(.navbar__item--btn):last-child {
      border-bottom: 1px solid #e1e4e9; }
    .navbar__item a:not(.btn) {
      display: block;
      padding: 0.75rem 0; }
    .navbar__item .btn {
      padding-left: 0.75rem;
      padding-right: 0.75rem;
      width: 100%; }
  .navbar__item--btn {
    padding: 1.125rem 0; }
    .navbar__item--btn + .navbar__item--btn {
      border-top: 0;
      padding-top: 0; }
  .js-nav-open {
    overflow: hidden; }
    .js-nav-open .navbar:after {
      opacity: 1;
      transition: opacity .25s;
      visibility: visible;
      z-index: 998; }
    .js-nav-open .navbar__menu {
      right: 0;
      transition: right .3s ease;
      visibility: visible; } }

/**
 * Site Footer
 */
.site-footer {
  border-top: 1px solid #e1e4e9;
  padding-bottom: 1.5em;
  padding-top: 1.5em;
  text-align: center; }
  .site-footer .btn {
    padding: 0.3em 0.75rem; }

.site-footer__menu,
.site-footer__social {
  margin-bottom: 1.5rem; }
  .site-footer__menu li,
  .site-footer__social li {
    font-size: 0.875rem;
    margin-bottom: 0.375rem; }

.site-footer__copyright {
  font-size: 0.8125em;
  width: 100%; }

@media (min-width: 481px) {
  .site-footer {
    text-align: left; }
  .site-footer__nav {
    align-items: flex-start;
    display: flex; }
  .site-footer__menu {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    margin-bottom: 0.75rem; }
    .site-footer__menu li {
      border-right: 1px solid #e1e4e9;
      margin-right: 0.75rem;
      padding-right: 0.75rem; }
      .site-footer__menu li:last-child {
        border: 0;
        padding: 0; }
  .site-footer__social {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    margin-bottom: 0.75rem;
    margin-left: auto; }
    .site-footer__social li {
      margin-left: 0.75rem; }
    .site-footer__social:first-child {
      margin-left: 0; }
      .site-footer__social:first-child li {
        margin-left: 0;
        margin-right: 0.75rem; } }

/**
 * Posts and Plain Pages
 */
.post,
.page {
  padding-bottom: 3.75rem;
  padding-top: 3.75rem; }

.post__image,
.post__header,
.page__header {
  margin: 0 0 1.5rem; }

.post__title,
.page__title {
  margin-top: 0; }

.post__meta,
.post__footer {
  color: #8594a5;
  font-size: 0.875rem; }

.post__meta {
  margin-bottom: 0.75rem; }

.post__footer {
  margin-top: 2.25rem; }
  .post__footer span {
    display: inline-block;
    margin-right: 0.5rem; }
    .post__footer span:before {
      content: "\0023"; }

/**
 * Content Sections
 */
.section {
  margin-bottom: 3.75rem; }
  .section:first-child {
    padding-top: 3.75rem; }
  .section:last-child {
    margin-bottom: 0;
    padding-bottom: 3.75em; }
  .section .container + .container {
    margin-top: 2.25rem; }

.bg-pink,
.bg-purple,
.has-bg {
  padding-bottom: 3.75em;
  padding-top: 3.75em; }

.bg-pink {
  background-color: #b55a6f; }

.bg-purple {
  background-color: #5e0c80; }

.section__media,
.section__body {
  position: relative; }

.section__actions a:not(.btn) {
  font-weight: 700; }

.hero .cell,
.section--features .cell {
  max-width: 740px; }
  .hero .cell:only-child,
  .section--features .cell:only-child {
    flex: 0 0 100%; }

.hero:first-child:not(.section--padding) {
  margin-bottom: 2.25rem;
  padding-bottom: 0; }

.section--features .flex {
  margin-bottom: 3.75rem; }

.section--team .cell,
.section--posts .cell {
  margin-bottom: 1.5rem;
  max-width: 460px; }

.section--team .card__media {
  margin-top: auto;
  padding-top: 100%;
  position: relative; }
  .section--team .card__media img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; }

.section--cta .bg-blue,
.section--cta .bg-gray {
  border-radius: 3px; }

@media (min-width: 801px) {
  .section__media--right {
    order: 1; } }

@media (max-width: 800px) {
  .section__media {
    margin-bottom: 1.5rem; }
  .section--team .flex,
  .section--posts .flex {
    justify-content: center; } }
