/*!
Author: Wineworks
Author URI: http://wineworks.co
Description: Custom integration by Wine Works to be used with Commerce7 & WordPress
*/
:root {
  --green: #7a8b5b;
  --black: #333333;
  --white: #ffffff;
  --c7-bg: #F8F6ED !important;
  --c7-font-size: 15px;
  --c7-primary-button-text-color: #000;
  --c7-primary-button-bg: var(--gold);
  --c7-primary-button-bg-hover: var(--black);
  --c7-alt-button-bg-hover: var(--black);
  --c7-button-border-radius: 0;
  --c7-font-size-sub: 13px;
  --c7-link-color: var(--green);
  --c7-heading-text-color: var(--black);
  --c7-font-family: "Merriweather", serif !important;
  --c7-heading-font-family: "Nexa", sans-serif !important;
  --c7-header-text-color: var(--white) ;
  --c7-cart-count-bg: var(--green);
  --c7-cart-count-text-color: var(--white);
  --c7-bg-alt:#fcfbf8;
  --c7-field-option-selected-color: var(--green);
  --c7-field-option-focus-color: var(--green);
  --c7-block-border-color: #dedcd3;
  --c7-body-text-color: #000;
  --c7-field-bg: #f8f6ee;
  --c7-heading-font-weight: 400;
  --c7-info-bg: #fcfbf8;
  --c7-border-color: #7c7660;
}

/* WP/C7 customization starts here
-------------------------------------------------------------- */
.c7-pagination {
  font-family: var(--c7-font-family);
}

@media screen and (max-width: 1024px) {
  .body-border {
    border: none;
  }
}

/* Safari mobile fix */
.c7-checkout-mobile__summary-toggle {
  color: #000;
}

.c7-form select, .c7-order-item select {
  color: #000;
}

.c7-side-cart, .c7-side-cart__summary-container {
  background: #fff;
}

.primary-navigation-wrapper {
  font-family: var(--c7-heading-font-family);
}

.footer-nav {
  font-family: var(--c7-heading-font-family);
}

.c7-checkout__main {
  background: #fff;
}

.c7-checkout__summary-container {
  background: #f9f6ee;
}

.c7-breadcrumbs li.c7-active {
  background: #f9f6ee;
}

.c7-tab {
  border: 1px solid #dbd7ce;
}

.c7-checkout__content {
  overflow: visible;
}

.c7-checkout__background {
  background: #f9f6ee;
}

@media screen and (max-width: 1024px) {
  .c7-account-dashboard .c7-wrapper {
    padding: 0;
  }
}

.c7-pagination__pages a:hover {
  background: transparent !important;
  border: 1px solid var(--green);
}
.c7-pagination__pages a.c7-active {
  background: transparent;
  border: 1px solid var(--green);
  color: var(--green);
}

.page-id-5857 .entry-content {
  width: inherit;
}

#c7-content, .c7-content, .c7-checkout {
  font-family: var(--c7-font-family);
}

body {
  font-family: var(--c7-font-family);
}

#c7-content h1, #c7-content .h1 {
  font-size: clamp(1.6875rem, 1.4519rem + 0.7538vw, 2.3rem);
}
#c7-content h2, #c7-content .h2 {
  font-size: clamp(1.5rem, 1.3558rem + 0.4615vw, 1.875rem);
}
#c7-content h3, #c7-content .h3 {
  font-size: clamp(1.375rem, 1.2788rem + 0.3077vw, 1.625rem);
}
#c7-content h4, #c7-content .h4 {
  font-size: clamp(1.125rem, 1.0769rem + 0.1538vw, 1.25rem);
}
#c7-content h5, #c7-content .h5, #c7-content h6, #c7-content .h6 {
  font-size: clamp(1rem, 0.9519rem + 0.1538vw, 1.125rem);
}

.page-template-page-no-header .entry-content {
  width: 100%;
}

#c7-usertools {
  display: flex;
  align-items: center;
  padding: 0.25rem 1rem;
}
@media screen and (max-width: 620px) {
  #c7-usertools header.sticky + #c7-cart {
    position: fixed;
  }
}
#c7-usertools .c7-user-nav__account > a, #c7-usertools .c7-user-nav__cart > button {
  font-family: var(--c7-heading-font-family);
  font-weight: 600;
}
@media screen and (max-width: 1024px) {
  #c7-usertools .c7-user-nav__account > a, #c7-usertools .c7-user-nav__cart > button {
    color: #000;
  }
}
@media screen and (max-width: 620px) {
  #c7-usertools .c7-user-nav__account > a, #c7-usertools .c7-user-nav__cart > button {
    padding: 0;
  }
}
@media screen and (max-width: 1024px) {
  #c7-usertools .c7-user-nav__account__name svg {
    stroke: #000;
  }
}
@media screen and (max-width: 1024px) {
  #c7-usertools .c7-user-nav__cart__title svg {
    stroke: #000;
  }
}
#c7-usertools .c7-user-nav__cart {
  text-align: left;
}
#c7-usertools .c7-user-nav__account__dropdown {
  text-align: left;
}

.c7-btn {
  background: transparent;
  border: 2px solid var(--green);
  color: var(--green);
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 8px 17px;
  font-size: 1.1em;
  font-weight: 600;
  font-family: var(--c7-heading-font-family);
}
.c7-btn:hover, .c7-btn:active, .c7-btn:focus {
  border-color: var(--black);
  opacity: 1;
  color: var(--white);
}

.c7-btn--primary:not([disabled]):active, .c7-btn--primary:not([disabled]):focus, .c7-btn--primary:not([disabled]):hover {
  border-color: var(--black);
  opacity: 1;
  color: var(--white);
}
.c7-btn--alt:not([disabled]):active, .c7-btn--alt:not([disabled]):focus, .c7-btn--alt:not([disabled]):hover {
  border-color: var(--black);
  opacity: 1;
  color: var(--white);
}

.c7-btn--primary--small, .c7-btn--alt--small {
  font-size: var(--c7-font-size-sub);
  min-height: 36px;
  padding: 8px 10px;
  text-transform: uppercase !important;
}

#c7-cart .c7-order-summary__buttons .button, #c7-cart .c7-order-summary__buttons .c7-btn {
  padding: 11px 17px;
}

.c7-subscribe .c7-btn {
  background: transparent;
  border: 2px solid var(--green);
  color: var(--green);
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 8px 17px;
  font-size: 1.1em;
  font-weight: 600;
  font-family: var(--c7-heading-font-family);
}
.c7-subscribe .c7-btn:hover {
  border-color: var(--black);
  opacity: 1;
  color: var(--white);
}

.c7-order-summary__buttons a {
  letter-spacing: 0;
  font-size: 1em;
}

.c7-account-dashboard__block__header__actions .button, .c7-account-dashboard__block__header__actions .c7-btn {
  padding: 12px 10px;
  font-size: 14px;
}

.c7-account-block__actions .c7-link {
  font-family: var(--c7-heading-font-family);
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 500;
}

@media screen and (max-width: 540px) {
  .c7-filters {
    display: inline-block;
    text-align: center;
    width: 100%;
  }
}
.c7-filters .c7-form label {
  font-family: var(--c7-heading-font-family);
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 14px;
  font-weight: 600;
}
.c7-filters .c7-form select {
  border: 1px solid #000;
}
.c7-filters .c7-form__field {
  max-width: 300px;
}
@media screen and (max-width: 540px) {
  .c7-filters .c7-form__field {
    margin: 1em auto;
  }
}

@media screen and (max-width: 540px) {
  .c7-product-collection, .c7-product-allocation {
    text-align: center;
  }
}
.c7-product-collection .c7-product, .c7-product-allocation .c7-product {
  position: relative;
  flex-direction: column;
}
.c7-product-collection .c7-product .c7-product__details, .c7-product-allocation .c7-product .c7-product__details {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.c7-product-collection .c7-product .c7-product__details .c7-form, .c7-product-allocation .c7-product .c7-product__details .c7-form {
  margin-top: auto;
}
.c7-product-collection .c7-h1, .c7-product-allocation .c7-h1 {
  color: var(--black);
  font-family: var(--c7-heading-font-family);
  text-align: center;
}
.c7-product-collection__product-list, .c7-product-allocation__product-list {
  grid-template-columns: 1fr;
}
@media screen and (min-width: 420px) {
  .c7-product-collection__product-list, .c7-product-allocation__product-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 769px) {
  .c7-product-collection__product-list, .c7-product-allocation__product-list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (min-width: 960px) {
  .c7-product-collection__product-list, .c7-product-allocation__product-list {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.c7-product-collection .c7-product__title, .c7-product-allocation .c7-product__title {
  text-align: center;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 1px;
  line-height: 1.2;
}
.c7-product-collection .c7-product__teaser, .c7-product-allocation .c7-product__teaser {
  display: none;
}
.c7-product-collection .c7-product__image, .c7-product-allocation .c7-product__image {
  text-align: center;
  margin: 0 0 1rem;
}
.c7-product-collection .c7-product__add-to-cart__form, .c7-product-allocation .c7-product__add-to-cart__form {
  justify-content: center;
  align-items: center;
}
.c7-product-collection .c7-product__add-to-cart__form input, .c7-product-allocation .c7-product__add-to-cart__form input {
  border: 1px solid var(--green);
  height: 48px;
  border-radius: 0;
}
.c7-product-collection .c7-product__add-to-cart__price, .c7-product-allocation .c7-product__add-to-cart__price {
  font-size: 20px;
  font-weight: 600;
  margin-right: 20px;
  font-family: var(--c7-font-family);
  text-align: center;
}

.c7-product__add-to-cart__price__variant {
  display: none;
}

.c7-product-collection .c7-product__add-to-cart__price, .c7-product-allocation .c7-product__add-to-cart__price {
  color: var(--c7-heading-text-color);
  font-family: var(--c7-heading-font-family);
  font-weight: 600;
  letter-spacing: 1px;
  font-size: 1rem;
}

.c7-badge {
  position: absolute;
  top: 2em;
  right: 0;
  font-family: var(--c7-heading-font-family);
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  padding: 7px;
  text-transform: uppercase;
  width: 80px;
  text-align: center;
  font-weight: 600;
  line-height: 1.2em;
  letter-spacing: 1px;
  font-size: 11px;
}
.c7-badge--limited-availability {
  width: 104px;
}

.c7-product__add-to-cart__price {
  font-size: 1.5rem;
  font-family: var(--c7-heading-font-family);
  font-weight: 600;
  letter-spacing: 1px;
}

.c7-product-detail {
  max-width: 65em;
  margin: 0 auto;
}
.c7-product-detail .c7-product h1, .c7-product-detail .c7-product h2, .c7-product-detail .c7-product h3 {
  color: var(--black);
}
.c7-product-detail .c7-product h1 {
  text-align: center;
}
@media screen and (min-width: 640px) {
  .c7-product-detail .c7-product h1 {
    text-align: left;
  }
}
.c7-product-detail .c7-product h2 {
  font-size: 1.875rem;
  margin-bottom: 0.5em;
}
.c7-product-detail .c7-product h3 {
  font-size: 1.125rem;
  margin-bottom: 0.5em;
}
.c7-product-detail .c7-product .c7-product__image {
  text-align: center;
}
.c7-product-detail .c7-product .wine-specs-wrapper {
  margin-top: 2em;
  display: none;
}
@media screen and (min-width: 640px) {
  .c7-product-detail .c7-product .wine-specs-wrapper {
    display: block;
  }
}
.c7-product-detail .c7-product__image {
  position: relative;
}
.c7-product-detail .c7-product__image .c7-badge {
  right: 1rem;
}
.c7-product-detail .c7-product__image img {
  max-height: 25rem;
}
.c7-product-detail .c7-product__info .wine-specs-wrapper {
  display: block;
}
.c7-product-detail .c7-product__info .wine-specs-wrapper h3 {
  text-align: center;
}
@media screen and (min-width: 640px) {
  .c7-product-detail .c7-product__info .wine-specs-wrapper {
    display: none;
  }
}
.c7-product-detail .c7-product .c7-product__specs {
  margin: 0 auto;
  max-width: none;
}
.c7-product-detail .c7-product .c7-product__add-to-cart__form {
  justify-content: center;
}
@media screen and (min-width: 640px) {
  .c7-product-detail .c7-product .c7-product__add-to-cart__form {
    justify-content: flex-start;
  }
}
.c7-product-detail .c7-product__add-to-cart__price {
  font-size: 1.5rem;
  font-family: var(--c7-heading-font-family);
  font-weight: 600;
  letter-spacing: 1px;
  text-align: center;
  margin: 10px 0;
}
@media screen and (min-width: 640px) {
  .c7-product-detail .c7-product__add-to-cart__price {
    text-align: left;
    margin: 20px 0;
  }
}
.c7-product-detail .c7-product__content {
  margin-bottom: 2.5rem;
}
.c7-product-detail .c7-product__spec {
  display: flex;
  font-family: var(--c7-heading-font-family);
}
.c7-product-detail .c7-product__spec div {
  width: 50%;
  font-weight: 500;
  text-align: left;
}
.c7-product-detail .c7-product__spec div:first-child {
  margin-right: 0.75rem;
  text-align: right;
  font-weight: 500;
}
.c7-product-detail .c7-product__info {
  display: block;
}

.c7-checkout {
  background: #fff;
}
.c7-checkout .c7-form label:not(.c7-radio, .c7-checkbox, .duet-date__mobile-heading), .c7-checkout .c7-label, .c7-checkout .c7-form legend {
  display: block;
  font-size: 15px;
  text-align: left;
  padding-bottom: 5px;
  font-family: var(--c7-heading-font-family);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.c7-checkout .c7-form input[type=text], .c7-checkout .c7-form input[type=email], .c7-checkout .c7-form input[type=number], .c7-checkout .c7-form input[type=tel], .c7-checkout .c7-form input[type=username], .c7-checkout .c7-form input[type=password], .c7-checkout .c7-form textarea, .c7-checkout .c7-form--stripe, .c7-checkout .c7-order-item input, .c7-checkout .c7-form select, .c7-checkout .c7-order-item select {
  font-family: var(--c7-heading-font-family);
  background: #fff;
  font-weight: 500;
  letter-spacing: 0;
}
.c7-checkout .c7-callout {
  background: var(--c7-bg-alt);
}

.c7-divider span {
  background: #fff;
}

.wine-club .c7-btn {
  text-align: center;
  vertical-align: top;
  background: none;
  color: #67764a;
  border: 2px solid #67764a;
  position: relative;
  font-size: 14px;
  font-weight: 900 !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  line-height: 1.4em;
  padding: 14px 22px 12px 22px;
  text-decoration: none;
  width: auto;
  height: auto;
  font-family: "nexa", sans-serif;
  transition: all 0.3s ease 0s;
  display: block;
  width: 100%;
  letter-spacing: 4px;
}
.wine-club .c7-btn:hover {
  background: #67764a;
  color: #fff;
}
.wine-club div.fancy-select div.trigger {
  padding: 12px 40px 11px 22px;
  margin-right: 1rem;
  letter-spacing: 1px;
}
.wine-club div.fancy-select ul.options {
  padding-left: 0;
  width: calc(100% - 1rem);
}
.wine-club div.fancy-select ul.options li {
  padding: 12px 20px;
  font-family: "nexa", sans-serif;
  font-weight: 500;
}

.club-selector-wrapper {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: row;
}
.club-selector-wrapper .c7-selectboxWrap {
  width: calc(100% - 145px - 1rem);
}
.club-selector-wrapper .c7-button {
  width: 145px;
  padding: 14px 13px 12px;
}
