body {
  font-family: aktiv-grotesk-extended, sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.4;
  color: #111111;
  background-color: #f7f7f7;
  -webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
}

a {
  text-decoration: none;
  color: #111111;
}

ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

strong {
  font-weight: normal !important;
}

label,
input,
span {
  background: none;
}

:focus {
  outline: 0;
}


/* Site header messages */

.woocommerce-message,
.woocommerce-error,
.woocommerce-notice,
.woocommerce-info,
.flash-message {
  line-height: 1;
  font-size: 1rem;
  color: #111111;
  background-color: rgba(237, 201, 182, .2);
}


.flash-message .button {
  margin-left: 1rem;
}

p.cart-empty.woocommerce-info,
.woocommerce-order .woocommerce-notice {
  margin: 0;
  padding: 1rem;
  margin-bottom: 2rem;
  text-align: center;
}


/* Menu */


.menu .menu-item a,
.footer-menu .menu-item a,
.cart-menu-item a,
.credit a {
  transition: ease .4s;
}

.menu .menu-item a,
.menu:hover .menu-item a,
.footer-menu .menu-item a,
.footer-menu:hover .menu-item a,
.cart-menu-item a,
.credit a {
  opacity: .5;
}

.menu .menu-item.current-menu-item a,
.menu .menu-item:hover a,
.footer-menu .menu-item.current-menu-item a,
.footer-menu .menu-item:hover a,
.cart-menu-item:hover a,
.credit a:hover {
  opacity: 1;
}

.menu .menu-item,
.cart-menu-item {
  padding-left: 1.5rem;
}


/* Index */

.intro-hero {
  height: 75vh;
}

.shop-button {
  width: 10rem !important;
}

.about-image {
  height: 30rem;
}

.about {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 2rem;
}


/* Entries styles */

.terms p,
.terms li {
  font-family: aktiv-grotesk, sans-serif;
  max-width: 40rem;
  opacity: .5;
}

.terms li {
  list-style: circle;
  margin-left: 2rem;
  padding-bottom: .5rem;
}


/* Products grid */

ul.products {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-row-gap: 3rem;
  grid-column-gap: 2rem;
  margin: 0;
}

.products .product-thumbnail {
  position: relative;
  padding-top: calc((4 / 3) * 100%);
}

.products .product-thumbnail a img {
  position: absolute;
  object-fit: cover;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.product-info .woocommerce-loop-product__title,
.product-info .price {
  font-size: .875rem;
  margin: 0;
}

.price {
  opacity: .6;
}

p.price {
  font-family: aktiv-grotesk-extended, sans-serif;
}

.price del {
  opacity: .4;
}

.price ins {
  text-decoration: none;
}

.onsale {
  position: absolute;
  top: 0;
  z-index: 999;
  background-color: #EDC9B6;
  line-height: 1;
  text-align: center;
  width: 100%;
  padding: .75rem 0;
}


.woocommerce-Price-currencySymbol::before {
  content: " ";
}


/* Single product */

.single-product .product-full .product {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 2rem;
}

.single-product .product-summary  {
  max-width: 30rem;
}

.single-product .product-summary .entry-title {
  margin: 0;
  line-height: 1.1;
}

.single-product .product-summary .price {
  margin: 0;
  padding-top: 1em;
}

.single-product .product-image a,
.single-product .product-image img {
  display: block;
}

.product-information .entry-title {
  font-size: 2rem;
}

.product-information .price {
  font-size: 1.25rem;
}

.product-image-wrapper {
  max-width: 500px;
}

.single-product .product-image {
  position: relative;
  padding-top: calc((4 / 3) * 100%);
}

.single-product .product-image img {
  position: absolute;
  object-fit: cover;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.woocommerce-product-gallery__wrapper {
  margin: 0;
}



.single-product .woocommerce-product-details__short-description {
  font-family: aktiv-grotesk, sans-serif;
  opacity: .5;
}

.stock {
  opacity: .5;
  font-family: aktiv-grotesk, sans-serif;
  margin: 0;
}



/* Related products */

.related-products .product {
  padding: 0;
}


/* Messages */

.woocommerce-message a {
  opacity: .5;
  transition: ease .4s;
}

.woocommerce-message a:hover {
  opacity: 1;
}



/* Input styles */

.input-text {
  margin: 0;
  padding: 0;
  line-height: 1;
  height: 3rem;
  border: none;
  border-top: 1px solid #111111;
  border-bottom: 1px solid #111111;
  width: 100%;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.quantity input,
.action-bar input {
 text-align: center;
}



/* Page layout */

.page-content,
.product-full,
.site-header,
ul.products,
.site-footer {
  padding: 0 5rem;

}



/* Button styles */

#content .button {
  cursor: pointer;
  padding: 1rem 2rem;
  line-height: 1;
  border: none;
  width: 100%;
  background-color: #EDC9B6;
  font-family: aktiv-grotesk, sans-serif !important;
  transition: ease .4s;
}

form.cart {
  margin-top: 1rem;
}

.variations_form {
  display: grid;
  grid-gap: 2rem;
}

.variations_button,
.simple_cart {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 2rem;
}

.button:disabled {
  opacity: .2;
  color: #111111;
}

.variations .value {
  margin-top: 2rem;
}



/* Product variation styles */

.variations {
  width: 100%;
}

.variations .label,
.variations .reset_variations {
  display: none;
}

.variations .value {
  position: relative;
  display: block;
  cursor: pointer;
  padding: 0;
}

.variations select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  height: 3rem;
  border: none;
  border-radius: 0;
  border-top: solid 1px #111111;
  border-bottom: solid 1px #111111;
  padding: 0;
  display: block;
  min-width: 100%;
  background: none;
  cursor: pointer;
}

.value::after {
  position: absolute;
  top: 0;
  right: 0;
  content: "+";
  line-height: 1;
  padding: 1rem 0;
  pointer-events: none;
}

.variations_form .stock {
  padding-bottom: 1rem;
}




/* Shop Cart and Checkout */

thead th {
  border-bottom: solid 1px #CCC;
}

th,
td {
  padding: 1rem;
}

.cart-item td {
  border-bottom: solid 1px #CCC;
  font-family: aktiv-grotesk, sans-serif;
}

th {
  text-align: left;
  font-weight: 400;
  vertical-align: top;
}

.product-thumbnail a {
  display: block;
}

.product-name {
  padding-left: 2rem;
}


th.product-quantity,
td.product-quantity {
  padding: 1rem 0;
  width: 3rem;
}

td.product-thumbnail {
  width: 150px;
}

td.product-remove {
  width: 1rem;
}

.cart .ar {
  position: relative;
  padding-top: calc((4 / 3) * 100%);
}

.cart .ar img {
  display: block;
  position: absolute;
  object-fit: cover;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.cart-total-header {
  border-bottom: solid 1px #CCC;
}


.variation {
  margin: 0;
}

.variation dd,
.variation p {
  margin: 0;
}

.variation dt {
  margin-top: 1rem
}

.variation p {
  opacity: .5;
}



/* Cart Total Styles */

.cart-collaterals td {
  text-align: right;
}

.woocommerce-shipping-calculator,
.woocommerce-shipping-destination {
  display: none;
}

.order-total {
  background-color: rgba(237, 201, 182, .2);
}

.checkout-button {
  display: block;
  text-align: center;
}


/* Checkout page styles */


.checkout-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 4rem;
  padding-top: 1rem;
  background: none !important;
}

.checkout-wrapper .woocommerce-checkout label {
  font-family: aktiv-grotesk, sans-serif;
  font-size: .875rem;
  opacity: .5;
  color: #111111;
}

.checkout-wrapper label .optional {
  font-family: aktiv-grotesk, sans-serif;
  font-size: .875rem;
  color: #111111;
}

.checkout-wrapper span,
.checkout-wrapper td,
.checkout-wrapper th,
.checkout-wrapper p {
  font-size: 1rem;
}

.checkout-wrapper .woocommerce-billing-fields h3 {
  margin-bottom: 2rem;
}

.checkout-wrapper input {
  margin-top: .5rem;
  height: 2rem;
  border-top: none;
}

.checkout-wrapper .form-row {
  margin-top: 0;
  margin-bottom: 1.5rem;
}

abbr[title] {
  text-decoration: none !important;
}


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

.checkbox * {
  margin: 0 !important;
  height: auto !important;
}

.input-checkbox {
  margin-right: 1rem !important;
}

small * {
  font-size: inherit !important;
}



/* Order overview */

.showcoupon {
  opacity: .5;
  transition: ease .4s;
  font-size: 1rem;
}

.showcoupon:hover {
  opacity: 1;
}

.checkout-wrapper .shop_table {
  border-spacing: 0;
  width: 100%;
}


.checkout-wrapper .select2-selection {
  border: none;
  border-bottom: 1px solid #111;
  border-radius: 0;
  height: 2rem;
  margin-top: .5rem;
  background: none;
}

.select2-selection__arrow {
  top: .25rem !important;
  height: 2rem !important;
}

#select2-billing_country-container {
  padding: 0;
}

.select2-dropdown {
  border: none;
  border-radius: 0;
  border-bottom: 1px solid #111111;
  background-color: #f7f7f7;
  font-size: 1rem;
}

.select2-results__option--highlighted {
  background-color: #EDC9B6 !important;
  color: #111111 !important;
}

.select2-results__option[data-selected=true] {
  background-color: rgba(237, 201, 182, .2) !important;
  color: #111111 !important;
}

.checkout-wrapper .product-name {
  padding: 1rem;
}

.checkout-wrapper .shop_table tfoot td,
.checkout-wrapper .product-total {
  text-align: right;
}

.checkout-wrapper *:not(.button):not(.order-total):not(.order_details tfoot tr:last-of-type th):not(.order_details tfoot tr:last-of-type td) {
  background: none !important;
}


button#place_order {
  margin-top: 1rem;
}


/* Payment styles */

.checkout-wrapper .woocommerce-checkout-payment p {
  font-size: .875rem;
  opacity: .5;
  font-family: aktiv-grotesk, sans-serif;
  padding-top: .5rem;
  padding-bottom: 1rem;
}

.checkout-wrapper fieldset {
  border: none;
  margin: 0;
  padding: 0;
}

.payment_method_stripe {
  padding-top: 1rem;
}

.wc-stripe-elements-field {
  padding: 1rem !important;
}

.payment_method_stripe label {
  display: flex;
  align-items: center;
}

.payment_method_stripe label img {
  padding-left: 1rem !important;
}



/* Thank you page styles */

.woocommerce-order li {
  font-size: 1rem;
}

.woocommerce-order h2 {
  margin: 0;
  padding-bottom: 1rem;
}

.woocommerce-order-wrapper strong {
  opacity: .5 !important;
}


.order_details tfoot tr:last-of-type th,
.order_details tfoot tr:last-of-type td {
  background-color: rgba(237, 201, 182, .2) !important;
}

small.shipped_via {
  display: none;
}




/* Order confirmation page styles */

address {
  font-style: normal;
}

/* Footer */

.footer-menu .menu-item {
  padding-left: 0rem;
  padding-right: 1.5rem;
}




/* Media queries */
@media (min-width: 700px) {
  .action-bar {
    display: flex;
  }

  .button, input {
    font-size: 1rem;
  }



  /* Coupon spacing */

  .action-bar input {
    margin-right: 1rem;
  }

  .action-bar .apply {
    margin: 0 1rem !important;
  }

  .action-bar .update {
    margin-left: 1rem !important;
  }

  .cart_totals {
    max-width: 40rem;
    min-width: 34rem;
    font-size: 1rem;
  }

}




@media (max-width: 1000px) {

  .page-content,
  .product-full,
  .site-header,
  ul.products,
  .site-footer {
    padding: 0 3rem;
  }

  ul.products {
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 1rem;
  }



@media (max-width: 700px) {

  .page-content,
  .product-full,
  .site-header,
  ul.products,
  .site-footer {
    padding: 0 1rem;
  }

  .menu .menu-item,
  .cart-menu-item {
    padding-left: 1rem;
  }

  .footer-menu .menu-item {
    padding-right: 1rem;
  }

  .about {
    grid-template-columns: 1fr;
  }

  .single-product .product-full .product {
    grid-template-columns: 1fr;
    grid-row-gap: 3rem;
  }

  .single-product .product-image-wrapper,
  .single .product-summary {
    max-width: 100%;
  }

  th,
  td {
    padding: 1rem .5rem;
    font-size: .875rem;
  }

  th.product-thumbnail,
  td.product-thumbnail {
    display: none;
  }

  .product-name {
    padding-left: .5rem;
  }

  .action-bar * {
    margin-bottom: 1rem !important;
  }

  .button {
    font-size: .875rem;
  }

  .variations_button,
  .simple_cart {
    grid-column-gap: 1rem;
  }

  .product-information .entry-title {
    font-size: 1.5rem;
  }

  .product-information .price {
    font-size: 1.25rem;
  }

  .checkout-wrapper {
    grid-template-columns: 1fr;
  }



}



@media (max-width: 480px) {

  #category-menu .menu-item {
    padding: 0;
    text-align: left;
  }

}
