:is(body.template-cart, body.template-search, body.template-404, body.template-blog, body.template-article, body.template-list-collections, body.template-page:has(.main-page-title)) .content-for-layout {
  color: #4d4d4d;
  font: 400 18px/28.8px 'Vollkorn', Georgia, serif;

  & .page-width { max-width: 1180px; padding-inline: 30px; }
  & .page-width--narrow { max-width: 760px; }
  & [class*="section-"][class*="-padding"] { padding-top: 60px; padding-bottom: 60px; }

  & h1,
  & .h0,
  & .h2,
  & .title,
  & .title--primary,
  & .main-page-title,
  & .article-template__title,
  & .template-search__header h1,
  & .template-404 .title {
    margin: 0 0 20px;
    font: 500 36px/39.6px 'Cabin', sans-serif;
    letter-spacing: .72px;
    color: #4d4d4d;
    text-transform: none;
    text-align: center;
  }
  & h2 { margin: 0 0 20px; font: 500 28px/30.8px 'Cabin', sans-serif; letter-spacing: .56px; color: #4d4d4d; }
  & h3, & h4 { margin: 0 0 15px; font: 500 24px/26.4px 'Cabin', sans-serif; letter-spacing: .48px; color: #4d4d4d; }

  & p, & li, & .rte { font-family: 'Vollkorn', Georgia, serif; color: #4d4d4d; }
  & .rte p { margin: 0 0 15px; }
  & .rte ul, & .rte ol { margin-left: 35px; }
  & a { color: #1a1a1a; text-decoration: none; }
  & .rte a { text-decoration: underline; }

  & .button,
  & input[type="submit"],
  & button[type="submit"] {
    min-height: 44px;
    padding: 10px 30px;
    border: 2px solid transparent;
    border-radius: 0;
    background: #4d4d4d;
    color: #fff;
    font: 700 14px/20px 'Cabin', sans-serif;
    letter-spacing: 2.8px;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: none;
    transition: all .2s ease-in-out;
  }
  & .button:hover,
  & input[type="submit"]:hover,
  & button[type="submit"]:hover { background: #666; color: #fff; }
  & .button--secondary { background: transparent; color: #4d4d4d; border-color: #4d4d4d; }
  & .button--secondary:hover { background: #4d4d4d; color: #fff; }
  & .button--tertiary { min-height: 0; padding: 0; border: 0; background: none; color: #4d4d4d; font: 400 14px/20px 'Vollkorn', Georgia, serif; letter-spacing: 0; text-transform: none; text-decoration: underline; }

  & input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
  & textarea,
  & select {
    min-height: 44px;
    padding: 10px 15px;
    border: 1px solid #ddd;
    border-radius: 0;
    background: transparent;
    color: #4d4d4d;
    font: 400 16px/25.6px 'Vollkorn', Georgia, serif;
    box-shadow: none;
  }
  & label,
  & .field__label,
  & .form__label { color: #4d4d4d; font-family: 'Cabin', sans-serif; }

  & .card,
  & .card__inner,
  & .card__content,
  & .card__media { background: transparent; box-shadow: none; border: 0; border-radius: 0; }
  & .card__media { background: transparent; }
  & .card__information { text-align: center; }
  & .card__heading,
  & .card__heading a {
    margin: 0 0 6px;
    font: 600 18px/19.8px 'Cabin', sans-serif;
    letter-spacing: .36px;
    color: #4d4d4d;
    text-transform: none;
    text-decoration: none;
  }
  & .article-card-wrapper .card__heading,
  & .article-card-wrapper .card__heading a { font: 500 24px/26.4px 'Cabin', sans-serif; letter-spacing: .48px; }
  & .price,
  & .price-item { font-family: 'Cabin', sans-serif; color: #4d4d4d; }

  & .cart-item__name,
  & .cart-item__name a { font: 500 18px/24px 'Cabin', sans-serif; letter-spacing: .36px; color: #4d4d4d; text-decoration: none; text-transform: none; }
  & .is-empty { text-align: center; padding-top: 90px; padding-bottom: 90px; }
  & .cart__empty-text { margin: 0 0 30px; font: 500 24px/33.3px 'Cabin', sans-serif; letter-spacing: .48px; color: #4d4d4d; text-align: center; }
  & .template-search--empty .template-search__results { text-align: center; padding-top: 60px; padding-bottom: 60px; }
  & .template-404 { text-align: center; padding-top: 90px; padding-bottom: 90px; }
  & .template-404 p { margin: 0 0 30px; }

  & .article-template__content { max-width: 760px; margin: 0 auto; font: 400 18px/28.8px 'Vollkorn', Georgia, serif; }
}

@media screen and (min-width: 480px) {
  :is(body.template-cart, body.template-search, body.template-404, body.template-blog, body.template-article, body.template-list-collections, body.template-page:has(.main-page-title)) .content-for-layout .page-width { padding-inline: 30px; }
}

@media screen and (max-width: 479px) {
  :is(body.template-cart, body.template-search, body.template-404, body.template-blog, body.template-article, body.template-list-collections, body.template-page:has(.main-page-title)) .content-for-layout .page-width { padding-inline: 15px; }
}

@media screen and (max-width: 767px) {
  :is(body.template-cart, body.template-search, body.template-404, body.template-blog, body.template-article, body.template-list-collections, body.template-page:has(.main-page-title)) .content-for-layout {
    & p, & li, & .rte, & .article-template__content { font-size: 16px; line-height: 25.6px; }
    & h1, & .h0, & .h2, & .title, & .title--primary, & .main-page-title, & .article-template__title, & .template-search__header h1, & .template-404 .title { font-size: 28px; line-height: 30.8px; letter-spacing: .56px; }
    & h2 { font-size: 24px; line-height: 26.4px; }
  }
}

@media screen and (min-width: 768px) {
  :is(body.template-cart, body.template-search, body.template-404, body.template-blog, body.template-article, body.template-list-collections, body.template-page:has(.main-page-title)) .content-for-layout [class*="section-"][class*="-padding"] { padding-top: 90px; padding-bottom: 90px; }
}
