/* Import Fonts */
@font-face {
  font-family: "Sweet Sans Bold";
  src: url("/wp-content/fonts/SweetSans-Bold.woff") format("woff");
}

@font-face {
  font-family: "Sweet Sans Light";
  src: url("/wp-content/fonts/SweetSans-Light.woff") format("woff");
}

:root {
  --rust: #c6a66d;
  --ink: #434343;
  --ink70: #434343ad;
  --chestnut: #7a6f63;
  --canvas: #f2ede7;
  --linen: #cec8bc;
  --linen70: #cec8bcad;
  --linen90: #cec8bce0;
  --fontLight: "Sweet Sans Light", Helvetica, sans-serif;
  --fontBold: "Sweet Sans Bold", Helvetica, sans-serif;
  --tracking: 0.2em;
  --pFont: 18px;
}

/*=============================
        Typography
==============================*/
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
div,
span {
  font-family: var(--fontLight) !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--ink) !important;
}

p {
  font-family: var(--fontLight) !important;
  color: var(--ink) !important;
}

h2 {
  font-family: var(--fontBold) !important;
  color: var(--ink) !important;
}

h2.woocommerce-loop-product__title,
.related-products h2,
.related.products h2 {
  background: transparent !important;
}

.italic {
  font-style: italic;
}

/*===============================
      Utility / Layout Classes
================================*/
.ar-page-section {
  width: 100vw;
  padding: 40px 80px;
  background: #fff;
}

@media (max-width: 800px) {
  .ar-page-section {
    padding: 40px 20px;
  }
}

.ar-page-section > div {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.site-content > .col-full {
  background: var(--canvas) !important;
}

/*================================
        Custom Header Styles
================================*/
/*Top Bar*/
#masthead .col-full:before {
  height: 26px !important;
  background-color: var(--chestnut);
  background-image: none !important;
  position: relative !important;
  margin-bottom: 40px;
}

header#masthead,
header#masthead .col-full,
header#masthead .s-top-bar {
  background-color: var(--ink);
}

#masthead input[type="search"] {
  background: var(--ink);
}

#masthead input[type="search"]::placeholder {
  color: var(--canvas);
}

a.cart-contents span,
a.cart-contents span.count {
  color: var(--canvas);
  opacity: 1 !important;
}

li.woocommerce-mini-cart-item.mini_cart_item {
  color: var(--ink);
}

/* Menu Styles */
#menu-main-menu {
  background: var(--ink);
}

#menu-main-menu li a {
  color: var(--canvas);
  padding: 0 3vw;
  transition: 0.3s all ease-in-out;
  font-family: var(--fontLight) !important;
  letter-spacing: var(--tracking);
}

#menu-main-menu li a:hover,
#menu-main-menu li a:focus {
  color: var(--rust);
  transition: 0.3s all ease-in-out;
}

#menu-main-menu li a:before {
  content: " ";
}

#menu-main-menu ul.sub-menu li a {
  color: var(--ink);
  padding: 5px;
  text-align: center;
}

.site-branding {
  margin: auto;
}

.woocommerce-active .site-header .main-navigation,
.site-header .main-navigation {
  margin: 40px 0;
}

.woocommerce-active .site-header .col-full:after,
.site-header .col-full:after {
  display: none !important;
}

.site-branding a:focus {
  outline: none !important;
}

@media (max-width: 800px) {
  #menu-main-menu li a {
    padding: 0 1vw;
  }

  .site-branding {
    margin-bottom: 20px !important;
  }

  .site-header {
    padding-bottom: 0 !important;
  }
}

.header-widget-region {
  display: none;
}

/*===================================
        HOMEPAGE STYLES
====================================*/
.home #primary,
.page-template-page-about #primary {
  float: none;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 1200px;
  padding: 0 60px;
}

.home #content .col-full,
.page-template-page-about #content .col-full,
.page-template-page-faq #content .col-full,
.page-template-page-policies #content .col-full {
  margin: 0;
  padding: 0;
  width: 100vw;
}

.ar-page-section.ar-slider {
  background: var(--ink);
  background: linear-gradient(
    180deg,
    var(--ink) 0%,
    var(--ink) 50%,
    #fff 50%,
    #fff 100%
  );
}

.ar-slider div {
  display: grid;
  grid-template-rows: 600px;
}

img.slide {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.ar-description div {
  padding: 0 20px;
}

.ar-page-section.ar-description div {
  max-width: 900px;
}

.ar-page-section p {
  font-size: var(--pFont);
}

.ar-description p {
  text-align: center;
  font-size: var(--pFont);
}

/* Products Section */

.ar-featured-products {
  background-color: var(--canvas);
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 200px;
}

.ar-featured-products h2 {
  text-align: center;
  margin: 40px 0 80px 0;
  text-transform: uppercase;
  letter-spacing: var(--tracking);
  font-size: 24px;
}

.ar-featured-products > div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  grid-gap: 20px;
}

.ar-product-card {
  display: grid;
  place-items: center;
}

.ar-product-card .overlay p {
  margin: 0;
  text-align: center;
}

.ar-product-card img,
.ar-product-card .overlay {
  grid-row: 1;
  grid-column: 1;
}

.ar-product-card .overlay {
  opacity: 0;
  z-index: -2;
  background-color: var(--linen90);
  place-self: stretch;
  transition: 0.2s all ease-in-out;
  display: grid;
  place-content: stretch;
  height: 100%;
  padding: 20px;
}

.ar-product-card > .overlay > a > h4 {
  font-size: 1.2em;
  color: var(--ink);
  text-align: center;
}

.ar-product-card a {
  place-self: center;
}

.ar-product-card:hover .overlay,
.ar-product-card:focus .overlay {
  opacity: 1;
  z-index: 1;
}

.woocommerce-mini-cart-item span.quantity {
  color: var(--ink) !important;
}

/*==================================
          Shop Styles
=================================*/
/* hide separator from sidebar widgets */
.widget:before {
  display: none !important;
}

/* Remove border between widgets */
.widget,
.widget > * {
  border: none !important;
}

/* remove border on shop top bar */
.storefront-sorting {
  border: none !important;
}

/* remove 'tape' from top of products */
ul.products li.product a:first-child::before {
  display: none !important;
}

input.search-field {
  padding-right: 2.6em;
}

.widget_search form::before,
.widget_product_search form::before {
  display: none !important;
}

.widget_search form::after,
.widget_product_search form::after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  line-height: inherit;
  vertical-align: baseline;
  content: "\f002";
  position: absolute;
  top: 1em;
  right: 1em;
  line-height: 1;
}

.widget_price_filter .ui-slider-horizontal {
  height: 2px !important;
}

.widget_price_filter .ui-slider .ui-slider-range,
.widget_price_filter .ui-slider .ui-slider-handle {
  background-color: var(--chestnut) !important;
}

.widget_price_filter .ui-slider .ui-slider-handle {
  margin-top: -6px !important;
}

/*=================================
      Custom Footer Styles 
===================================*/

.site-footer {
  background: var(--canvas);
  background: linear-gradient(
    180deg,
    var(--canvas) 0%,
    var(--canvas) 50%,
    #fff 50%,
    #fff 100%
  );
}

.site-footer .col-full::after {
  display: none;
}

.site-footer .col-full {
  background: var(--linen) !important;
  max-width: 1200px !important;
}

.menu-footer-menu-container {
  background: var(--ink);
}

ul#menu-footer-menu {
  display: flex;
  justify-content: center;
  list-style-type: none;
  font-family: var(--fontBold);
  letter-spacing: var(--tracking);
  text-transform: uppercase;
  font-size: 12px;
  margin-left: 0;
}

#menu-footer-menu li {
  flex: 0 1;
  padding: 10px 2vw;
}

#menu-footer-menu li a {
  color: var(--canvas);
  text-decoration: none;
}

.ar-footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 2fr;
  padding: 60px;
}

.ar-footer-appointments {
  text-align: right;
}

.ar-footer-grid p {
  font-size: 11px;
  margin-bottom: 0;
  font-family: var(--fontBold) !important;
  text-transform: uppercase;
  letter-spacing: var(--tracking);
}

.ar-footer-grid div {
  align-self: center;
}

.ar-footer-logo {
  place-self: center;
}

.ar-footer-logo img {
  max-width: 100px;
}

.ar-footer-social {
  display: flex;
  justify-content: space-around;
  padding: 10px;
}

.ar-footer-social i {
  color: var(--ink);
  font-size: 1.5em;
  margin-top: 20px;
}

.ar-footer-social a:first-child i {
  margin-top: 22px;
}

@media (max-width: 800px) {
  .ar-footer-grid {
    grid-template-columns: 1fr;
  }

  .ar-footer-grid > div {
    text-align: center;
    margin-bottom: 20px;
  }
}

@media (max-width: 900px) {
  .storefront-sorting {
    display: block !important;
  }

  .ar-products-sort {
    margin-bottom: 20px;
  }

  .widget_price_filter {
    padding-left: 0 !important;
    margin: 40px 0 !important;
  }
}

p.stock {
  display: none !important;
}

ul.flex-direction-nav {
  position: absolute;
  top: 30%;
  z-index: 99999;
  width: 100%;
  left: 0;
  margin: 0;
  padding: 0px;
  list-style: none;
}

li.flex-nav-prev {
  float: left;
}
li.flex-nav-next {
  float: right;
}
a.flex-next {
  visibility: hidden;
}
a.flex-prev {
  visibility: hidden;
}

a.flex-next::after {
  visibility: visible;
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  margin-right: 10px;
  font-size: 20px;
  font-weight: bold;
}
a.flex-prev::before {
  visibility: visible;
  content: "\f053";
  font-family: "Font Awesome 5 Free";
  margin-left: 10px;
  font-size: 20px;
  font-weight: bold;
}
ul.flex-direction-nav li a {
  color: #ccc;
}
ul.flex-direction-nav li a:hover {
  text-decoration: none;
}

#payment .payment_methods li img {
  max-height: unset !important;
}

h3#ship-to-different-address {
  font-weight: bold !important;
  text-decoration: underline !important;
}

img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}

.product-category.product img {
  margin-left: auto;
  margin-right: auto;
}

/*================================
    Mobile Header / Front Page
=================================*/
@media (max-width: 800px) {
  div.site-branding {
    margin-bottom: 0 !important;
  }

  header .col-full {
    padding-bottom: 0 !important;
  }
}

input#woocommerce-product-search-field-1 {
  color: var(--ink) !important;
}

.storefront-handheld-footer-bar form.woocommerce-product-search > input {
  color: var(--ink) !important;
}
