/*!
Theme Name: Spectra Template Child
Author: Wineworks
Author URI: http://wineworks.co
GitHub Theme URI: https://github.com/wineworks/wp-spectratheme
Description: Custom child theme developed by Wine Works to be used with Commerce7 & WordPress
Template: wp-spectratheme
Version: 1.1.2.13
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: Spectra Child
*/
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Karla:ital,wght@0,200..800;1,200..800&family=Pacifico&family=Petit+Formal+Script&display=swap");
body {
  font-family: "Karla", sans-serif;
  background: #fff;
}
body.font-karla {
  font-family: "Karla", sans-serif;
}
body.font-karla p {
  font-family: "Karla", sans-serif;
  font-size: 16px;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Cormorant Garamond", serif;
  font-weight: normal;
  margin: 0;
}
.font-karla h1,
.font-karla h2,
.font-karla h3,
.font-karla h4,
.font-karla h5,
.font-karla h6 {
  font-family: "Karla", sans-serif;
  line-height: 1.5;
}

h1 {
  font-size: 2.5em;
  font-family: "Petit Formal Script", cursive;
  line-height: 1.3;
  margin-bottom: 0.75em;
}
@media screen and (max-width: 580px) {
  h1 {
    font-size: 2.3em;
  }
}

h2 {
  font-size: 2.2em;
  line-height: 1.3333333333;
  margin-bottom: 0.5em;
}

h3 {
  font-size: 2em;
  line-height: 1;
  margin-bottom: 0.75em;
}

h4 {
  font-size: 1.7em;
  line-height: 1.1428571429;
  margin-bottom: 0.75em;
}

h5 {
  font-size: 1.3em;
  line-height: 1.3333333333;
  margin-bottom: 0.5em;
}

h6 {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 0.5em;
}

.inpage-menu {
  list-style-type: none;
  padding-left: 0px;
  font-family: "Karla", sans-serif;
}
.inpage-menu li a {
  color: #fff;
  font-size: 28px;
  line-height: 48px;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-decoration: none;
}

.c7t-content {
  max-width: 1000px;
}

.no-padding-top {
  padding-top: 0 !important;
}

.no-padding-bottom {
  padding-bottom: 0 !important;
}

.small-padding-top {
  padding-top: 1rem !important;
}

.small-padding-bottom {
  padding-bottom: 1rem !important;
}

.large-padding-top {
  padding-top: 5rem !important;
}

.large-padding-bottom {
  padding-bottom: 5rem !important;
}

.black-background {
  background: #161616;
}

:root {
  --c7-font-family: $body-font-family;
  --c7-header-text-color: #000;
  --c7-primary-color: var(--black);
  --c7-primary-button-text-color: var(--black);
  --c7-primary-button-bg: transparent;
  --c7-alt-button-bg: #000;
  --c7-alt-button-text-color: #FFF;
}

.button {
  background: var(--black);
  font-family: "Karla", sans-serif;
  color: #fff;
}
.button:hover {
  background: var(--turquoise);
  color: #fff;
}

.c7-btn {
  background: transparent;
  border: 1px solid var(--black);
  color: var(--black);
  padding-left: 35px;
  padding-right: 35px;
}
.c7-btn--primary:not([disabled]):active, .c7-btn--primary:not([disabled]):focus, .c7-btn--primary:not([disabled]):hover {
  background: var(--black);
  color: var(--white);
  text-decoration: none !important;
}
.c7-btn--alt, .c7-btn--alt--small {
  background: var(--c7-alt-button-bg);
  color: var(--c7-alt-button-text-color);
}
.c7-btn--alt:not([disabled]):active, .c7-btn--alt:not([disabled]):focus, .c7-btn--alt:not([disabled]):hover {
  background: var(--white);
  color: var(--black);
}

.header {
  top: calc(var(--promo-bar-height, 0px) + 10px);
  margin: 0 0 2rem;
}
@media only screen and (min-width: 64.0625em) {
  .header {
    margin: 1rem 0 8rem;
  }
}
.header .c7t-template-width {
  max-width: 1600px;
}
.header .logo-light {
  display: none;
}
.header .logo-dark {
  display: block;
}
.header--hero {
  position: absolute;
}
.header--hero .logo-light {
  display: block;
}
.header--hero .logo-dark {
  display: none;
}
.header--hero .header__navigation-toggle span {
  background: #fff;
}
.header--hero .header__navigation-toggle span:before, .header--hero .header__navigation-toggle span:after {
  background: #fff;
}
.header__navigation-toggle span {
  width: 35px;
  height: 2px;
  background: #000;
}
.header__navigation-toggle span:before, .header__navigation-toggle span:after {
  height: 2px;
  background: #000;
}
.header__navigation-toggle span:before {
  top: -8px;
}
.header__navigation-toggle span:after {
  bottom: -8px;
}
@media only screen and (min-width: 64.0625em) {
  .header__navigation-toggle {
    transform: translateY(4px);
    display: flex;
  }
}
@media screen and (max-width: 64em) {
  .header__navigation__menu {
    top: 10px;
  }
}
@media only screen and (min-width: 64.0625em) {
  .header__navigation__menu .menu-header-container {
    transition: visibility 200ms ease-out, transform 200ms ease-out;
    padding: 3rem 1rem 1rem;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translateX(100%);
    height: 100%;
    width: 100%;
    overflow: scroll;
    z-index: 10;
    pointer-events: none;
    visibility: hidden;
  }
}
.header__navigation__menu .menu-header-container ul {
  position: relative;
  text-align: center;
  top: 25%;
}
@media only screen and (min-width: 64.0625em) {
  .header__navigation__menu .menu-header-container ul {
    flex-direction: column;
  }
}

@media only screen and (min-width: 64.0625em) {
  .mobile-nav-active .header__navigation__menu .menu-header-container {
    transform: translateX(0);
    transition: visibility 200ms ease-out, transform 200ms ease-out;
    pointer-events: all;
    visibility: visible;
  }
}

.show-mobile-nav .header__navigation-toggle span, .show-mobile-nav .header--hero__navigation-toggle span {
  background: none;
}
.show-mobile-nav .header__navigation-toggle span:before, .show-mobile-nav .header__navigation-toggle span:after, .show-mobile-nav .header--hero__navigation-toggle span:before, .show-mobile-nav .header--hero__navigation-toggle span:after {
  background: #818181;
}
.show-mobile-nav .header__navigation-toggle span:before:hover, .show-mobile-nav .header__navigation-toggle span:before:focus, .show-mobile-nav .header__navigation-toggle span:before:active, .show-mobile-nav .header__navigation-toggle span:after:hover, .show-mobile-nav .header__navigation-toggle span:after:focus, .show-mobile-nav .header__navigation-toggle span:after:active, .show-mobile-nav .header--hero__navigation-toggle span:before:hover, .show-mobile-nav .header--hero__navigation-toggle span:before:focus, .show-mobile-nav .header--hero__navigation-toggle span:before:active, .show-mobile-nav .header--hero__navigation-toggle span:after:hover, .show-mobile-nav .header--hero__navigation-toggle span:after:focus, .show-mobile-nav .header--hero__navigation-toggle span:after:active {
  background: #FFF;
}
.show-mobile-nav .menu-header-container {
  background: rgba(0, 0, 0, 0.97);
}
.show-mobile-nav .menu-header-container a {
  padding: 8px;
  text-decoration: none;
  font-size: 36px;
  color: #818181;
  display: block;
  transition: 0.3s;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.show-mobile-nav .menu-header-container a:hover, .show-mobile-nav .menu-header-container a:focus, .show-mobile-nav .menu-header-container a:active {
  color: #FFF;
}

@media only screen and (min-width: 64.0625em) {
  .scrolled .header {
    position: absolute;
  }
}

.admin-bar .header {
  top: 40px;
}

.c7-tools {
  background: rgba(0, 0, 0, 0);
  max-width: 1600px;
}
@media screen and (min-width: 64.0625em) {
  .c7-tools {
    top: -24px;
  }
}

#c7-account .c7-user-nav__account__login {
  color: var(--c7-header-text-color);
}
@media screen and (min-width: 64.0625em) {
  #c7-account .c7-user-nav__account__login {
    color: var(--c7-header-text-color);
  }
}

#c7-cart .c7-user-nav__cart__title svg {
  stroke: var(--c7-header-text-color);
}
@media screen and (min-width: 64.0625em) {
  #c7-cart .c7-user-nav__cart__title svg {
    stroke: var(--c7-header-text-color);
  }
}

.header--hero #c7-account .c7-user-nav__account__login {
  color: #FFF;
}
.header--hero #c7-cart .c7-user-nav__cart__title svg {
  stroke: #FFF;
}
@media screen and (min-width: 64.0625em) {
  .header--hero .c7-user-nav__account a.c7-user-nav__account__name {
    color: #FFF;
  }
  .header--hero .c7-user-nav__account a.c7-user-nav__account__name svg {
    stroke: #FFF;
  }
}

.show-mobile-nav #c7-account .c7-user-nav__account__login {
  color: #818181;
}
.show-mobile-nav #c7-account .c7-user-nav__account__login:hover, .show-mobile-nav #c7-account .c7-user-nav__account__login:focus, .show-mobile-nav #c7-account .c7-user-nav__account__login:active {
  color: #FFF;
}
.show-mobile-nav #c7-cart .c7-user-nav__cart__title svg {
  stroke: #818181;
}
.show-mobile-nav #c7-cart .c7-user-nav__cart__title svg:hover, .show-mobile-nav #c7-cart .c7-user-nav__cart__title svg:focus, .show-mobile-nav #c7-cart .c7-user-nav__cart__title svg:active {
  stroke: #FFF;
}

.footer {
  background-color: #0a0a0a;
  color: #888686;
  padding: 7rem 1rem 2rem;
  text-align: center;
  font-size: 14px;
  line-height: 1.3em;
}
.footer .c7t-template-width {
  max-width: 1600px;
  width: 95%;
}
.footer h2 {
  font-family: "Karla", sans-serif;
  color: #888686;
  font-size: 20px;
  text-transform: uppercase;
  text-align: center;
  position: relative;
  margin-bottom: 1.75em;
}
.footer h2:after {
  content: "";
  background-color: #575757;
  position: absolute;
  left: 50%;
  bottom: -20px;
  margin-left: -25px;
  height: 3px;
  width: 50px;
}
.footer p {
  font-family: "Karla", sans-serif;
  color: #888686;
  font-size: 14px;
}
.footer a:hover, .footer a:focus, .footer a:active {
  color: #fff;
  text-decoration: none;
}
.footer__container {
  display: flex;
  flex-direction: column;
  gap: 3em;
  margin-bottom: 3em;
}
@media only screen and (min-width: 768px) {
  .footer__container {
    flex-direction: row;
  }
}
.footer__left {
  flex: 1;
}
.footer__address {
  flex: 1;
}
.footer__address__phone {
  padding-right: 8px;
}
.footer__address__phone:after {
  display: none;
}
.footer__right {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 52px;
}
.footer__menu ul li {
  display: block;
}
.footer__menu ul li a {
  display: block;
  padding: 0;
  font-size: 14px;
}
.footer__menu ul li a:hover, .footer__menu ul li a:focus, .footer__menu ul li a:active {
  color: #fff;
  text-decoration: none;
}
.footer .c7-form {
  max-width: 350px;
  width: 100%;
  margin: auto;
}
.footer .c7-form__buttons {
  justify-content: center;
}
.footer .c7-form__buttons .c7-btn {
  background: #fff;
  font-size: 16px;
  border-radius: 3px;
  height: 3em;
  line-height: 3em;
  padding: 0 1.5em;
  border: solid 1px #000;
}
.footer .c7-form__buttons .c7-btn span {
  color: #000 !important;
}
.footer .c7-custom-form .c7-form__buttons {
  margin: 16px 0 0;
}

@media only screen and (min-width: 64.0625em) {
  .footer--1 .footer__menu {
    float: none;
    width: 100%;
    text-align: center;
  }
}
@media only screen and (min-width: 64.0625em) {
  .footer--1 .footer__address {
    float: none;
    width: 100%;
    text-align: center;
  }
}
@media only screen and (min-width: 64.0625em) {
  .footer--1 .footer__social-media {
    float: none;
    width: 100%;
    justify-content: center;
  }
}
.footer--1 .footer__copyright, .footer--1 .footer__optional-text {
  float: none;
  width: 100%;
  text-align: center;
  font-size: 14px;
  margin-bottom: 0;
}

.footer * {
  color: #888686;
  fill: #888686;
}

.c7t-banner.hero-banner.c7t-banner--image-uncropped .c7t-template-width img {
  height: 100vh !important;
  object-fit: cover;
}
@media screen and (max-width: 580px) {
  .c7t-banner--image-uncropped img {
    height: 400px !important;
    object-fit: cover;
  }
}
.c7t-banner.c7t-banner--veil .c7t-banner__image:before {
  background-color: rgba(0, 0, 0, 0.1);
}
.c7t-banner .c7t-template-width .c7t-banner__content {
  text-shadow: none;
}
.c7t-banner__content {
  font-family: "PT Serif", serif;
  margin: 2em auto;
  max-width: 650px;
  text-align: center;
  width: 85%;
  padding: 0;
}
.c7t-banner__content p {
  font-size: 1.2em;
  color: #fff;
  font-family: "Cormorant Garamond", serif;
  font-size: 28px;
  line-height: 1.5em;
}
@media screen and (max-width: 767px) {
  .c7t-banner__content p {
    font-size: 21px;
  }
}
.c7t-banner__next-section {
  border: none;
  bottom: 20px;
}
@media only screen and (min-width: 40.0625em) {
  .c7t-banner__next-section {
    bottom: 20px;
  }
}
@media only screen and (min-width: 64.0625em) {
  .c7t-banner__next-section {
    bottom: 20px;
  }
}

.c7t-slider--uncropped {
  height: 100vh !important;
}
.c7t-slider__slide {
  height: 100vh;
}
.c7t-slider__slide .c7t-template-width {
  height: 100vh;
}
.c7t-slider__slide .c7t-template-width .c7t-slider__slide-content {
  text-shadow: none;
}
.c7t-slider__slide--uncropped .c7t-template-width {
  height: 100vh !important;
}
.c7t-slider__slide--uncropped.c7t-slider__slide--veil .c7t-slider__slide-image:before {
  background-color: rgba(0, 0, 0, 0.1);
}
.c7t-slider__slide--uncropped .c7t-slider__slide-image {
  height: 100%;
}
.c7t-slider__slide--uncropped .c7t-slider__slide-image picture, .c7t-slider__slide--uncropped .c7t-slider__slide-image img {
  height: 100% !important;
  object-fit: cover;
}
.c7t-slider__slide-content {
  font-family: "PT Serif", serif;
  margin: 2em auto;
  max-width: 650px;
  text-align: center;
  width: 85%;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .c7t-slider__slide-content {
    top: 0;
  }
}
.c7t-slider__slide-content p {
  font-size: 1.2em;
  color: #fff;
  font-family: "Cormorant Garamond", serif;
  font-size: 28px;
  line-height: 1.5em;
}
@media screen and (max-width: 767px) {
  .c7t-slider__slide-content p {
    font-size: 21px;
  }
}

.commerce7-v2 .c7t-slider__slide-content .button, .commerce7-v2 .c7t-slider__slide-content-color--light .button {
  background: transparent;
  color: #fff;
  box-shadow: none;
  text-transform: uppercase;
  font-size: 20px;
  font-weight: 400;
}

.back-next-buttons {
  display: flex;
  justify-content: space-between;
  padding: 24px;
}
.back-next-buttons--dark-bg {
  background: #000;
}
.back-next-buttons--dark-bg .back-link a, .back-next-buttons--dark-bg .next-link a {
  color: #888686;
}
.back-next-buttons--dark-bg .back-link a:hover, .back-next-buttons--dark-bg .back-link a:focus, .back-next-buttons--dark-bg .back-link a:active, .back-next-buttons--dark-bg .next-link a:hover, .back-next-buttons--dark-bg .next-link a:focus, .back-next-buttons--dark-bg .next-link a:active {
  color: #fff;
}

.c7t-text-block--reverse {
  background-color: #161616;
}
.c7t-text-block p {
  font-family: "Cormorant Garamond", serif;
  font-size: 19px;
}

.c7-product__allocation-request {
  margin-top: 16px;
  margin-bottom: 16px;
  max-width: fit-content;
}
.c7-product__login-message {
  margin-top: 16px;
}
.font-karla .c7-product p {
  font-family: "Karla", sans-serif;
  line-height: 1.5;
  font-size: 15px;
}

@media screen and (min-width: 54rem) {
  .c7t-products--2up .c7-product {
    flex-direction: row-reverse;
  }
}
.c7t-products--2up .c7-product__details {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.c7-product-detail p {
  font-family: "Karla", sans-serif;
  line-height: 1.5;
  font-size: 15px;
}
