/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}
/* HTML5 display-role reset for older browsers */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}body{line-height:1;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}table{border-collapse:collapse;border-spacing:0;}

/* CONTENTS 

utility classes 
color and font variables 
document 
text and spacing 
text links 
image links 
cta button links 
lists 
quotes 
responsive video wrapper 
noscript message

general page layouts 
skip link 
promo bar
header
 header logo
 nav mobile / hamburger
 nav desktop
 navigation images 
 search bar
 commerce7 nav links
footer
 social links
tfe agegate

commerce7
  commerce7-collection
  commerce7-product-not-found-collection
  commerce7-collection-custom
  commerce7-product
  commerce7-cart
  commerce7-checkout
  commerce7-wine-club-checkout
  commerce7-login-signup
  commerce7-account
  commerce7-footer-subscribe

algolia search

page section template
 page section template hero
 page section template cards
 page-section-image-text
 page-section-media
 page-section-custom
info page template

algolia collection
  wine varietals

page-specific styles
 404 page 
 about-us page
 about-us page / tasting room section
 
 cheese-board page
   & wine-clubs/wine-club-cheese-board
 collection/brands
 contact
 corporate-gifting
 customer-service
 email-sign-up page
 environmentally-responsible-wines page
 faq / frequently asked questions
 holiday-gift-guide page
 homepage / frontpage
 merchandise
 recipe/wine-cocktails
 recipe/wine-mocktails
  recipe/wine-cocktails/recipe-page
  recipe/wine-mocktails/recipe-page
 region
  region/individual-regions
 shipping-info page
 tasting-room pages
 terms page
 virtual-experiences page
 wine-clubs page
  & individual /club/ pages
 wine-club-hub page
  & individual wine-club-hub shipment pages
 winemakers
  & individual winemaker pages

CONTENTS */

/* utility classes */
.nowrap{white-space:nowrap;}
.hidden{display:none;}
.screen-reader-only{clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;position:absolute !important;}
.clearfix::after{content:'';display:table;clear:both;}
.uppercase{text-transform:uppercase;}
.bold{font-weight:bold;}
.center-align{text-align:center;}.left-align{text-align:left;}.right-align{text-align:right;}
.clear-left{clear:left;}.clear-right{clear:right;}.clear-both{clear:both;}
.widget {list-style-type:none;margin:0;padding:0;}

/* color and font variables */
:root {
  /* main colors */
  --white: #fff;
  --dark-gray: #333;
  --highlight: #5e672e;
  --highlight-bright: #587910;
  --highlight-shadow: rgba(88, 121, 16, .3);
  --light-gray-v1: #f7f7f7;
  --light-gray-v2: #f1f1f1;
  --mid-gray: #c7c7c7;
  --blue: #031945;
  --error-red: #8f1616;
  --corporate-cream: #f7f4eb;
  --corporate-gold: #937130;
  /* wine types */
  --red-wines: #571319;
  --white-wines: #f3e9dd;
  --rose-wines: #f2e2de;
  --sparkling-wines: #ebe9e7;
  --dessert-wines: #8a0c18;
  /* fonts */
  --body-font: "Open Sans", sans-serif;
  --display-font: "Times New Roman", Times, serif;

  /* commerce7 reset */
  /* --c7-page-width: 1300px; */
  /* --c7-page-width-checkout: 1500px; */
  /* --c7-font-family: inherit, sans-serif; */
  /* --c7-body-text-color: #232324; */
  /* --c7-alt-text-color: #50505a; */
  --c7-font-size: .875rem;
  --c7-font-size-sub: .75rem;
  /* --c7-heading-font-family: inherit, sans-serif; */
  --c7-heading-text-color: var(--dark-gray);
  /* --c7-heading-font-weight: bold; */
  /* --c7-primary-color: #3860d6; */
  /* --c7-primary-color-text: #3251ae; */
  /* --c7-primary-color-dark: #264bba; */
  /* --c7-primary-color-focus: rgba(56, 96, 214, 0.25); */
  --c7-link-color: var(--highlight-bright);
  /* --c7-bg: #fff; */
  /* --c7-bg-alt: #f7f8fa; */
  /* --c7-border-color: #e3e3e8; */
  /* --c7-border-radius: 4px; */
  /* --c7-loading-bg: rgba(255, 255, 255, 0.5); */
  /* --c7-modal-border-radius: 8px; */
  /* --c7-modal-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1); */
  /* --c7-overlay-bg: rgba(0, 0, 0, 0.1); */
  /* --c7-progress-bar: var(--c7-primary-color); */
  /* --c7-pill-bg: #f3f6ff; */
  /* --c7-pill-text-color: var(--c7-primary-color-text); */
  /* --c7-field-bg: #fff; */
  --c7-field-border-radius: 0;
  --c7-field-border-color: var(--mid-gray);
  /* --c7-field-focus-color: rgba(0, 0, 0, 0.07); */
  --c7-field-focus-border-color: var(--dark-gray);
  --c7-field-option-selected-color: var(--highlight-bright);
  --c7-field-option-focus-color: var(--highlight-shadow);
  /* --c7-field-placeholder: #b2b2b8; */
  /* --c7-field-dropdown-shadow: 2px 2px 10px 0 rgb(0 0 0 / 8%); */
  /* --c7-primary-button-bg: var(--c7-primary-color); */
  --c7-primary-button-bg-hover: var(--white);
  /* --c7-primary-button-text-color: #fff; */
  --c7-alt-button-bg: var(--white);
  --c7-alt-button-bg-hover: var(--dark-gray); 
  --c7-alt-button-text-color: var(--dark-gray);
  --c7-button-border-radius: 0;
  /* --c7-info-bg: #f1f1f4; */
  /* --c7-error: #ca0505; */
  /* --c7-error-bg: #ffebeb; */
  /* --c7-warning: #fba213; */
  /* --c7-warning-bg: #fff6e5; */
  /* --c7-success: #016047; */
  /* --c7-success-bg: #e8fcf7; */
  /* --c7-header-text-color: #232324; */
  /* --c7-notification: #ca0505; */
  --c7-cart-count-bg: var(--highlight-bright);
  --c7-cart-count-bg-focus: var(--highlight-shadow);
  /* --c7-cart-count-text-color: #fff; */
  /* --c7-side-cart-shadow: 0 0 15px 5px rgb(0 0 0 / 10%); */
  /* --c7-dropdown-border-radius: 8px; */
  /* --c7-dropdown-shadow: 0 1px 7px 0 rgb(0 0 0 / 15%); */
  /* --c7-dropdown-hover: #e6e8ed; */
  /* --c7-block-bg: var(--c7-bg); */
  /* --c7-block-border-color: var(--c7-border-color); */
  /* --c7-block-border-radius: var(--c7-border-radius); */
  /* --c7-block-shadow: 0 1px 3px 0 rgba(222, 222, 227, 0.3); */

}

/* document */
body {
  font-family: "Open Sans", sans-serif;
  font-family: var(--body-font);
  background-color: #fff;
  background-color: var(--white);
  color: #333;
  color: var(--dark-gray);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
body strong {
  font-weight: 600;
}
body div, header, nav, main, footer {
  box-sizing: border-box;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
img {
  max-width: 100%;
}
.site-wrapper {
  overflow: hidden;
}
/* add padding to sides of forms */
.profile #c7-content > section {
  padding: 0 1em;
}

/* text and spacing */
h1, h2, h3, h4, h5, p, ul, ol, dl {
  margin-bottom: 16px;
  margin-bottom: 1rem;
}
li, dt, dd {
  margin-bottom: 8px;
  margin-bottom: 0.5rem;
}
em {
  font-style: italic;
}
h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child,
p:last-child, ul:last-child, ol:last-child, dl:last-child,
li:last-child, dt:last-child, dd:last-child {
  margin-bottom: 0;
}
h1, h2, h3, h5,
.head-one, .head-two, .head-three, .head-five {
  font-family: 'Times New Roman', serif;
  font-family: var(--display-font);
  letter-spacing: 0.1em;
  line-height: 1.2;
}
h1, h2, h3,
.head-one, .head-two, .head-three {
  text-transform: uppercase;
}
h4, h5, .head-four, .head-five {
  letter-spacing: 0.1em;
  font-weight: 700;
}
.head-four, .head-six,
.tfelegal h2 {
  font-family: var(--body-font);
  font-weight: bold;
  text-transform: none;
  letter-spacing: 0.02em;
}
.head-four, .head-five, .head-six {
  text-transform: none;
}
h1, h2, h3, h4, h5,
.head-one .head-two, .head-three, .head-four, .head-five {
  margin-top: 1em;
}
h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child,
.head-one:first-child, .head-two:first-child, .head-three:first-child, .head-four:first-child, .head-five:first-child {
  margin-top: 0;
}
h1, .head-one {
  font-size: 36px;
  font-size: 2.25rem;
} 
h2, .head-two {
  font-size: 30px;
  font-size: 1.875rem;
}
h3, .head-three {
  font-size: 24px;
  font-size: 1.5rem;
}
h4, .head-four {
  font-size: 18px;
  font-size: 1.125rem;
}
h5, .head-five {
  font-size: 22px;
  font-size: 1.375rem;
  font-style: italic;
}
h6, .head-six,
.tfelegal h2 {
  font-size: 16px;
  font-size: 1rem;
  margin: 2em 0 0.5em;
}
h1 .lower-head, h2 .lower-head, h3 .lower-head, h4 .lower-head, h5 .lower-head,
.head-one .head-two .lower-head, .head-three .lower-head, .head-four .lower-head, .head-five .lower-head {
  text-transform: capitalize;
}
@media only screen and ( max-width: 30em ) {
  h1, .head-one { font-size: 7vw; }
  h2, .head-two { font-size: 6vw; }
  h3, .head-three { font-size: 5.5vw; }
}
@media only screen and ( min-width: 56.25em ) {
  h1:not(.small), .head-one:not(.small) { font-size: 2.8125rem; /* 45px */ } 
}

/* text links */
a, a:visited {
  color: var(--highlight-bright);
  transition: color .15s ease-in-out;
}
a:active, a:focus, a:hover,
a.dark, a.dark:visited {
  color: var(--dark-gray);
  transition: color .15s ease-in-out;
}
a.dark:active, a.dark:focus, a.dark:hover {
  color: var(--highlight-bright);
}
header a, footer a,
header a:visited, footer a:visited {
  color: var(--dark-gray);
  text-decoration: none;
}
header a:active,
header a:focus,
header a:hover,
footer a:active,
footer a:focus,
footer a:hover {
  color: var(--highlight-bright);
  text-decoration: underline;
}

/* image links */
a.image-link {
  transition: top .3s ease-in-out;
}
a.image-link:active,
a.image-link:focus,
a.image-link:hover {
  transition: top .3s ease-in-out;
  opacity: .85;
  transform: scale(1.025);
  text-decoration: none;
}

/* cta button links */
.cta,
.text-cta,
.tfe-enter,
.c7-btn,
.ais-search-results .c7-btn,
.c7-btn-small,
.c7-btn-alt,
.c7-btn-alt-small {
  display: inline-block;
  font-size: 12px;
  font-size: .75rem;
  padding: 1em 1.5em;
  min-height: 2.875rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: all .3s ease-in-out;
  letter-spacing: 0.125em;
}
.cta.large,
.text-cta.large {
  font-size: 1rem;
}
.text-cta {
  padding: 0;
  min-height: auto;
  text-decoration: underline;
}
a.cta,
button.cta,
.tfe-enter,
.c7-btn, .c7-btn:visited,
.ais-search-results .c7-btn,
.ais-search-results .c7-btn:visited,
.c7-btn-small, .c7-btn-small:visited {
  color: var(--white);
  background-color: var(--dark-gray);
  border: 1px solid var(--dark-gray);
  transition: all .5s ease-in-out;
}
.cta.reverse,
.white-text .cta,
.green-bg .cta,
.black-bg .cta,
.c7-btn.c7-btn--alt,
.c7-btn.c7-btn--alt--small {
  color: var(--dark-gray);
  background-color: var(--white);  
  border: 1px solid var(--dark-gray);
  transition: all .5s ease-in-out;
}
.cta.reverse:active, .cta.reverse:focus, .cta.reverse:hover,
.white-text .cta:active, .white-text .cta:focus, .white-text .cta:hover,
.green-bg .cta:active, .green-bg .cta:focus, .green-bg .cta:hover,
.c7-btn.c7-btn--alt:active, .c7-btn.c7-btn--alt:focus, .c7-btn.c7-btn--alt:hover, 
.c7-btn.c7-btn--alt--small:active, .c7-btn.c7-btn--alt--small:focus, .c7-btn.c7-btn--alt--small:hover  {
  color: var(--white);
  background-color: var(--dark-gray);
  border: 1px solid var(--white);
  transition: all .5s ease-in-out;
}
.tfe-enter:active, .tfe-enter:focus, .tfe-enter:hover,
.cta:active, .cta:focus, .cta:hover,
.c7-btn:active, .c7-btn:focus, .c7-btn:hover,
.ais-search-results .c7-btn:active, .ais-search-results .c7-btn:focus, .ais-search-results .c7-btn:hover,
.c7-btn-small:active, .c7-btn-small:focus, .c7-btn-small:hover {
  color: var(--dark-gray);
  background-color: var(--white);  
  border: 1px solid var(--dark-gray);
  transition: all .5s ease-in-out;
}
.cta.highlight {
  background-color: var(--highlight);
  color: var(--white);
  border: 1px solid var(--highlight);
  transition: all .5s ease-in-out;
}
.cta.highlight.reverse {
  background-color: var(--white);
  color: var(--highlight-bright);
  border: 1px solid var(--white);
  transition: all .5s ease-in-out;
}
.cta.highlight:active,
.cta.highlight:focus,
.cta.highlight:hover {
  background-color: var(--white);
  color: var(--highlight-bright);
  border: 1px solid var(--highlight);
  transition: all .5s ease-in-out;
}
.cta.highlight.reverse:active,
.cta.highlight.reverse:focus,
.cta.highlight.reverse:hover {
  background-color: var(--highlight);
  color: var(--white);
  border: 1px solid var(--white);
  transition: all .5s ease-in-out;
}

/* lists */
ol, ul {
  list-style: none;
}
ul.bullet li {
  margin-left: 1.25em;
}
ol.number li,
ol.lowercase li,
ol.uppercase li,
ol[type='a'] li,
ol[type='A'] li {
  margin-left: 1.5em;
}
ul.bullet li {
  list-style: disc;
}
ol.number {
  list-style: decimal;
}
ol.lowercase,
ol[type='a'] {
  list-style: lower-alpha;
}
ol.uppercase,
ol[type='A'] {
  list-style: upper-alpha;
}

/* quotes */
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

/* responsive video wrapper */
.video-wrapper {
	position: relative;
  padding-bottom: 56.25%;
  /* padding-bottom: calc((100% + 26px)*.565); */

}
.video-wrapper div,
.video-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/* highlight box */
.highlight-box {
  padding: 1em;
  border: 1px solid var(--highlight-bright);
  margin-bottom: 1em;
}
.highlight-box > h1, 
.highlight-box > h2, 
.highlight-box > h3, 
.highlight-box > h4, 
.highlight-box > h5, 
.highlight-box > h6 {
  color: var(--highlight-bright);
}
@media only screen and ( min-width: 56.25em ) {
  .highlight-box {
    padding: 2em;
    margin-bottom: 2em;
  }
}


/* noscript message */
.noscript-message {
  margin: 0 auto;
  max-width: 44em;
  padding: 1em 1em 2em;
  text-align: center;
}
.noscript-message h2 {
  color: var(--highlight-bright);
}
@media only screen and ( min-width: 56.25em ) {
  .noscript-message {
    padding: 1em 2em 3em;
  }
}

/* general page layouts */
main {
  /* for background darkening when nav open */
  position: relative;
}
.content {
  margin: 0 auto;
  padding: 2em 1em;
  max-width: 100em;
}
@media only screen and (min-width: 56.25em){
  .content {
    padding: 4em 2em;
  }
}
.full-width .content,
.wide .content {
  width: 100%;
  padding: 0;
}
.full-width .content {
  max-width: 100%;
}
.wide .content {
  max-width: 96em;
}
.narrow-width .content {
  max-width: 56.25em;
}
.no-padding .content {
  padding-top: 0;
  padding-bottom: 0;
}
.no-padding-top .content {
  padding-top: 0;
}
.no-padding-btm .content {
  padding-bottom: 0;
}
.reduce-padding .content {
  padding-top: 1em;
  padding-bottom: 1em;
}
.reduce-padding-top .content {
  padding-top: 1em;
}
.reduce-padding-btm .content {
  padding-bottom: 1em;
}
@media only screen and (min-width: 56.25em){
  .reduce-padding .content {
    padding-top: 2em;
    padding-bottom: 2em;
  }
  .reduce-padding-top .content {
    padding-top: 2em;
  }
  .reduce-padding-btm .content {
    padding-bottom: 2em;
  }
}
.reduce-padding + .reduce-padding-top .content,
.reduce-padding-btm + .reduce-padding-top .content {
  padding-top: 0;
}

/* skip link  */
.skip-to-main {
  text-align: center;
}
.skip-to-main a:focus {
  margin-top: 1em;
  -webkit-transition: margin .2s ease-in;
  transition: margin .2s ease-in;
}
.skip-to-main a {
  position: absolute;
  left: 1em;
  z-index: 20;
  text-align: center;
  display: inline-block;
  padding: 1em;
  margin-top: -4em;
  cursor: pointer;
  background: #fff;
  -webkit-transition: margin .2s ease-in-out;
  transition: margin .2s ease-in-out;
}

/* promo bar */
.promo-bar {
  position: relative;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .125em;
  line-height: 1.25;
  background-color: var(--dark-gray);
  color: var(--white);
}
.promo-control {
  display: flex;
  align-items: center;
  position: relative;
  background: none;
  border: none;
  color: inherit;
  padding: .5em 1em;
  transition: all .3s ease-in-out;
}
.promo-bar .prev-promo {
  margin-left: .5em;
}
.promo-bar .next-promo {
  margin-right: .5em;
}
.promo-bar .prev-promo:before,
.promo-bar .next-promo:after {
  font-family:'FontAwesome';
  font-size: 2em;
}
.promo-bar .prev-promo:before {
  content: '\f104';
}
.promo-bar .next-promo:after {
  content: '\f105';
}
.promo-bar.active .promo-control {
  cursor: pointer;
}
.promo-bar.active .promo-control:active,
.promo-bar.active .promo-control:focus,
.promo-bar.active .promo-control:hover {
  transform: scale(1.2);
}
.promo-list {
  max-width: 50.25em;
  margin: 0 1em;
  position: relative;
  display: flex;
  width: calc(100% - 6em);
  align-items: center;
  scroll-snap-type: x mandatory;
  /* remove visible scrollbar */
  overflow: auto;
  -ms-overflow-style: none; /* IE 11 */
  scrollbar-width: none; /* Firefox */
}
.promo-list::-webkit-scrollbar {
  display: none; /* webkit: Chrome */
}
.promo-bar .promo-list li {
  flex: 1 0 100%;
  display: flex;
  justify-content: center;
  padding: 1em 0;
  margin-bottom: 0;
  scroll-snap-align: start;
}
.promo-bar p {
  font-size: .875em;
}
.promo-bar strong {
  font-weight: bold;
}
.promo-bar a,
.promo-bar a:visited {
  color: inherit;
  text-decoration: underline;
  transform: all .2s ease;
}
.promo-bar a:active,
.promo-bar a:focus,
.promo-bar a:hover {
  color: inherit;
  opacity: .8;
}
.promo-bar.promo-green-bg  {
  background-color: var(--highlight);
}
.promo-bar.promo-light-gray-bg {
  background-color: var(--light-gray-v1);
  color: var(--dark-gray);
}
.promo-dollar-sign {
  white-space: nowrap;
  position: relative;
  display: inline-block;
  width: .857em;
  height: 1em;
  top: .15em;
  background-image: url(/wp-content/themes/osws-2022/assets/images/core/icons/promo-dollar-sign-white.svg);
  background-repeat: no-repeat;
}
.promo-light-gray-bg .promo-dollar-sign {
  background-image: url(/wp-content/themes/osws-2022/assets/images/core/icons/promo-dollar-sign-gray.svg);
}
@media only screen and (min-width: 56.25em) {
  .promo-bar {
    padding: 0 1em;
  }
}


/* header */
.header-content-wrap {
  position: relative;
  z-index: 4;
}
.site-header .content {
  position: relative;
  height: 10em;
  max-width: 100%;
  padding: 0;
  background-color: var(--white);
}
.site-nav {
  max-width: 100em;
  margin: 0 auto;
  padding: 1em;
  letter-spacing: .05em;
  height: 8em;
}
@media only screen and ( min-width: 37.5em ) { /* 600px */
  .site-header .content {
    height: 11em;
  }
  .site-nav {
    padding: 1.5em 1em;
  }
}
@media only screen and ( min-width: 46.875em ) {
  .site-header .content {
    height: 9.5em;
  }
  .site-nav {
    height: 2em;
  }
}
@media only screen and ( min-width: 56.25em ) { /* 900px */
  .header-content-wrap {
    height: 12em;
    background-color: var(--white);
  }
  .site-header .content {
    height: 6.25em;
  }
  .site-nav {
    width: 100%;
    padding: 2.75em 2em;
  }
}
@media only screen and ( min-width: 65em ) { /* 1200px */
  .header-content-wrap {
    height: 8.5em;
  }
  .site-header .content {
    height: 7em;
  }
}

/* header logo */
.header-logo-wrap,
.header-logo-wrap a,
.header-logo-wrap img {
  width: 9em;
  height: 2em;
  margin: .125em auto 0;
}
.header-logo-wrap a {
  display: inline-block;
}
@media only screen and ( min-width: 37.5em ) {
  .header-logo-wrap,
  .header-logo-wrap a,
  .header-logo-wrap img {
    width: 12em;
    height: 3em;
    margin: -.125em auto 0;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .header-logo-wrap {
    margin: 0;
  }
}

/* nav mobile / hamburger */
main:after, 
footer:after{
  content: '';
  display: block;
  position: fixed;
  top: 0; bottom: 0; left: 0; right: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-color: rgba(0,0,0,0);
  visibility: hidden;
  transition: all 1s ease;
}
.nav-open main:after,
.nav-open footer:after,
.menu-open main:after,
.menu-open footer:after {
  background-color: rgba(0,0,0,0.4);
  visibility: visible;
}
#nav-toggle,
.no-js .nav-chk-label   {
  position: absolute;
  top: 1.125em;
  left: 0.6667em;
  z-index: 5;
  color: var(--dark);
  font-size: 1.5em;
  background: 0 0;
  border: none;
  padding: 0;
  cursor: pointer;
}
#nav-toggle:before,
.no-js .nav-chk-label:before {
  content: "\f0c9";  
  display: inline-block;
  font-family: "Font Awesome 6 Pro";
  font-style: normal;
  font-weight: 900;
  font-size: 1em;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.header-logo,
.header-search{
  position: relative;
  z-index: 4;
}
.commerce7-nav {
  position: relative;
  z-index: 5;
}
.menu-header-wrapper {
  position: absolute;
  top: -100vh;
  top: calc(8em - 100vh);
  left: 0;
  z-index: -1;
  min-width: 100%;
  overflow-y: hidden;
  height: auto;
  min-height: 100vh;
  min-height: calc(100vh - 8em);
  background-color: var(--white);
  -webkit-transition: top .3s ease-in-out;
  transition: top .3s ease-in-out;
}
.promo-bar + .content .menu-header-wrapper {
  max-height: calc(100vh - 11em);
}
.menu-open .menu-header-wrapper,
.no-js #nav-chk:checked ~ .menu-header-wrapper {
  top: 7em;
}
@media only screen and ( max-width: 23.375em ) { /* 375px */
  .menu-open .menu-header-wrapper,
  .no-js #nav-chk:checked ~ .menu-header-wrapper {
    top: 9.25em;
  }
}
.menu-open .menu-header-wrapper,
.no-js #nav-chk:checked ~ .menu-header-wrapper {
  top: 9.25em;
}
@media only screen and ( min-width: 37.5em ) { /* 600px */
  .menu-open .menu-header-wrapper,
  .no-js #nav-chk:checked ~ .menu-header-wrapper {
    top: 9.5em;
  }
}
@media only screen and ( min-width: 46.875em ) {
  .menu-open .menu-header-wrapper,
  .no-js #nav-chk:checked ~ .menu-header-wrapper {
    top: 8em;
  }
}
.menu-open #nav-toggle:before,
.no-js #nav-chk:checked ~ .nav-chk-label:before {
  content: "\f00d";
}
.social-icons {
  margin-bottom: .5em;
}
.menu li + li {
  margin-top: .125em;
}
.no-js #nav-toggle,
#nav-chk {
  display: none;
}
.no-js .nav-chk-label {
  display: block;
}
.menu-header-menu-container {
  position: relative;
}
.site-nav ul.menu,
.sub-menu-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--white); 
  transition: left .3s ease-in-out;
  width: 100vw;
  height: auto;
  min-height: calc(100vh - 7em);
  overflow-y: visible;
  overflow-x: hidden;
  padding: 1em 0;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 2;
}
.site-nav .sub-menu-wrapper {
  left: 100vw;
  z-index: 1;
}
.site-nav .sub-menu-wrapper.open-sub-menu {
  left: 0;
}
.sub-menu-wrapper.open-sub-menu li:not(.back-link):not(.sub-menu-head) a {
  padding-left: 1rem;
  padding-right: 1rem;
}
@media only screen and ( min-width: 37.5em ) {
  #nav-toggle, 
  .no-js .nav-chk-label {
    top: 1.375em;
  }
}
.site-nav .menu > .menu-item-has-children,
.sub-menu-head {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 24px;
  font-size: 1.5rem;
}
.site-nav ul.menu li {
  margin-bottom: 0
}
.site-nav ul.menu li a {
  position: relative;
  display: inline-block;
  line-height: 1;
  padding: .6666em .6666em;
  width: 95%;
  width: calc(100% - 1.333em);
}
.site-nav ul.menu li a:active,
.site-nav ul.menu li a:focus,
.site-nav ul.menu li a:hover {
  background-color: var(--light-gray-v1);
}
.site-nav .menu-item-has-children > a:after {
  position: absolute;
  content: '\003E';
  top: .5em;
  right: .6666em;
}
.site-nav ul.menu li.back-link a {
  padding-left: 2em;
  font-size: 16px;
  font-size: 1rem;
  cursor: pointer;
}
.site-nav .back-link a:before {
  position: absolute;
  content: '\003C';
  top: .6666em;
  left: 1em;
}
ul.sub-menu {
  text-transform: none;
  position: relative;
}

/* mobile no-js reset */
.no-js .site-nav .menu-header-wrapper {
  overflow-y: scroll;
}
.no-js .site-nav ul {
  position: static;
  min-height: unset;
}
.no-js .site-nav ul.sub-menu {
  margin-top: .5em;
  padding-top: 0;
  padding-left: 1em;
}
.no-js .back-link, 
.no-js .sub-menu-head {
  display: none;
}
.no-js .site-nav .menu-item-has-children > a:after,
.no-js .site-nav .back-link a:before {
  content: none;
}

/* nav desktop */
/* remove this section to make nav hamburger only */
@media only screen and ( min-width: 56.25em ) {
  #nav-toggle,
  .nav-chk-label,
  .no-js .nav-chk-label,
  .back-link, 
  .sub-menu-head {
    display: none;
  }
  .header-bg-block {
    height: 9em;
  }
  .menu-header-menu-container {
    position: static;
  }
  .site-nav .menu-item-has-children > a:after,
  .site-nav .back-link a:before {
    content: none;
  }
  .site-nav .menu-header-wrapper,
  .promo-bar + .content .menu-header-wrapper {
    max-height: unset;
    min-height: unset;
    min-width: unset;
  }
  .site-header .content {
    display: flex;
    justify-content: space-between;
  }
  .site-nav {
    position: static;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    column-gap: 2em;
    row-gap: 1em;
  }
  .site-nav .menu-header-wrapper,
  .site-nav .menu-header-menu-container,
  .site-nav .menu {
    display: flex;
    align-items: center;
  }
  .site-nav .header-logo {
    order: 1;
  }
  .site-nav .menu-header-wrapper {
    order: 3;
  }
  .site-nav .header-search {
    order: 4;
  }
  .site-nav .menu-header-wrapper {
    position: static;
    width: calc(100% - 14em);
    z-index: initial;
    padding: 0;
    overflow-x: visible;
    background-color: transparent;
    border-bottom: 0;
  }
  .site-nav ul.menu {
    position: static;
    width: auto;
    min-height: unset;
    overflow: hidden;
    padding: 1.5em 0 0;
    background-color: transparent;
  }
  .site-nav .menu-header-wrapper ul.menu,
  .site-nav .menu > .menu-item-has-children, 
  .sub-menu-head {
    font-size: 16px;
    font-size: 1rem;
  }
  .site-nav .menu-header-wrapper ul,
  .site-nav .sub-menu-wrapper {
    min-height: unset;
    margin: 0;
    padding: 0;
    left: 0;
    z-index: initial;
  }
  .site-nav .menu li {
    margin: 0;
    padding: 0;
  }
  .site-nav .menu-header-wrapper ul li a {
    width: auto;
    padding: 0;
  }
  .site-nav .menu > li.menu-item-has-children > a {
    padding: .875em 1.875em 1.375em;
  }
  .site-nav .menu > .menu-item-has-children {
    transition: color .3s ease-in-out;
  }
  .site-nav ul.menu, .sub-menu-wrapper {
    font-size: 16px;
    font-size: 1rem;
  }
  .site-nav .menu > .menu-item-has-children > .sub-menu-wrapper {
    width: 100vw;
    top: -6.5em;
    max-height: 6.5em;
    z-index: -1;
    background-color: var(--light-gray-v1);
    transition: all .5s ease-in-out;
  }
  .site-nav .menu > .menu-item-has-children > .sub-menu-wrapper > .sub-menu {
    max-width: 52em;
    margin: 0 auto;
    padding: 2em;
    min-height: 26.5em;
  }
  .site-nav .menu .sub-menu-wrapper .sub-menu {
    opacity: 0;
    transition: opacity .3s ease-out;
  }
  .site-nav .menu > .menu-item-has-children:hover,
  .site-nav .menu > .menu-item-has-children:focus-within,
  .site-nav .menu > .menu-item-has-children.dropdown  {
    background-color: var(--light-gray-v1);
  }
  .site-nav .menu > .menu-item-has-children:hover > .sub-menu-wrapper,
  .site-nav .menu > .menu-item-has-children:focus-within > .sub-menu-wrapper,
  .site-nav .menu > .menu-item-has-children.dropdown > .sub-menu-wrapper,
  .site-nav .menu > .menu-item-has-children > .sub-menu-wrapper:hover {
    top: 6.25em;
    max-height: unset;
    transition: all .75s ease-out; 
  }
  .site-nav .menu > .menu-item-has-children.about-us-menu:hover > .sub-menu-wrapper,
  .site-nav .menu > .menu-item-has-children.about-us-menu:focus-within > .sub-menu-wrapper,
  .site-nav .menu > .menu-item-has-children.about-us-menu.dropdown > .sub-menu-wrapper:hover {
    min-height: 22em;
    transition: all .75s ease-in; 
  }
  .site-nav .menu .menu-item-has-children:hover .sub-menu-wrapper .sub-menu,
  .site-nav .menu .menu-item-has-children:focus-within .sub-menu-wrapper .sub-menu,
  .site-nav .menu .menu-item-has-children.dropdown .sub-menu-wrapper .sub-menu {
    opacity: 1;
    transition: opacity .3s ease-in; 
  }
  .site-nav .sub-menu .menu-item-has-children > a {
    position: relative;
  }  
  .site-nav .menu > li.menu-item-has-children > a {
    padding: 1em 1.25em 1.5em;
  }
  .site-nav .sub-menu .menu-item-has-children > a:after {
    position: absolute;
    display: inline-block;
    content: url(/wp-content/themes/osws-2022/assets/images/core/icons/caret.png);
    top: 0;
    right: -1.5em;
    transition: transform .5s ease-in-out;
  }
  .site-nav .sub-menu .menu-item-has-children .sub-menu-wrapper {
    position: static;
    max-height: 0;
    padding-left: 1em;
    background-color: transparent;
    transition: max-height .75s ease-in-out;
  }
  .site-nav .sub-menu .menu-item-has-children:hover .sub-menu-wrapper,
  .site-nav .sub-menu .menu-item-has-children:focus-within .sub-menu-wrapper {
    max-height: 20em;
    transition: max-height .75s ease-in-out;
  }
  .site-nav .sub-menu .menu-item-has-children:hover > a:after,
  .site-nav .sub-menu .menu-item-has-children:focus-within > a:after {
    transform: rotate(-180deg);
  }
}
@media only screen and ( min-width: 65em ) {
  .header-content-wrap .content {
    padding-top: 1.5em;
    height: 7.5em;
  }
  .menu-header-wrapper {
    padding: 1.5em 2em 0;
  }
  .site-nav {
    column-gap: 1.5em;
    justify-content: space-between;
    padding: 1em 2em 0;
    height: 5em
  }
  .site-nav .menu-header-wrapper {
    width: auto;
    padding: 1em 0 0;
  }
  .site-nav ul.menu {
    padding: 0;
  }
  .site-nav .menu > .menu-item-has-children > .sub-menu-wrapper {
    top: -6em;
    z-index: -1;
    max-height: 6em;
  }
  .site-nav .menu > li.menu-item-has-children > a {
    padding: .875em 1.125em 2.125em;
  }
  .site-nav .menu > .menu-item-has-children:hover > .sub-menu-wrapper,
  .site-nav .menu > .menu-item-has-children:focus-within > .sub-menu-wrapper,
  .site-nav .menu > .menu-item-has-children.dropdown > .sub-menu-wrapper,
  .site-nav .menu > .menu-item-has-children.dropdown > .sub-menu-wrapper:hover {
    top: 7em;
  }
}
@media only screen and ( min-width: 75em ) { 
  .site-nav .menu > li.menu-item-has-children > a {
    padding: .875em 2em 2.125em;
  }
}
@media only screen and ( min-width: 90em ) {
  .site-nav {
    column-gap: 2em;
  }
  header .menu li {
    margin: 0 1em;
  }
}

/* navigation images */
ul.sub-menu > .nav-image-link {
  margin-top: .5em;
}
ul.sub-menu > .nav-image-link ~ .nav-image-link {
  margin-top: 0;
}
ul li.nav-image-link a {
  padding: .5em 1em;
}
.nav-image-link img {
  width: 12.5em;
  height: 8.25em;
  object-fit: cover;
}
.nav-image-link ~ .nav-image-link img {
  display: none;
}
.nav-image-link p {
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: .5em
}
.nav-image-link ~ .nav-image-link p {
  margin-bottom: 0;
}
@media only screen and ( min-width: 37.5em ) {
  ul.sub-menu li {
    max-width: 45%;
    max-width: calc(50% - 1em);
  }
  .sub-menu .nav-image-link {
    position: absolute;
    left: 55%;
    left: calc(50% + 1em);
    top: 1.875em;
  }
  ul.sub-menu > .nav-image-link {
    margin-top: 0;
  }
  .nav-image-link a {
    font-size: 1rem;
  }
  .nav-image-link ~ .nav-image-link {
    top: 11.25em;
  }   
  .nav-image-link ~ .nav-image-link a {
    font-size: 1rem;
  }
  .nav-image-link ~ .nav-image-link ~ .nav-image-link {
    top: 13.125em;
  }    
  .nav-image-link ~ .nav-image-link ~ .nav-image-link ~ .nav-image-link {
    top: 15em;
  } 
}
@media only screen and ( min-width: 56.25em ) {
  ul.sub-menu > .nav-image-link ~ .nav-image-link img {
    display: inline;
  }
  ul.sub-menu li {
    max-width: 40%;
    max-width: calc(40% - 1.667em);
  }
  ul.sub-menu li.nav-image-link {
    max-width: 27.5%;
    max-width: calc(30% - 1.667em);
    position: absolute;
    left: unset;
  }
  .sub-menu .nav-image-link a {
    transition: transform .3s ease-in-out;
  }
  .sub-menu .nav-image-link a:active,
  .sub-menu .nav-image-link a:focus,
  .sub-menu .nav-image-link a:hover {
    transform: scale(1.02);
    transition: transform .3s ease-in-out;
  }
  .nav-image-link-mobile {
    display: none;
  }
  .nav-image-link,
  .nav-image-link ~ .nav-image-link ~ .nav-image-link {
    right: 30%;
    right: calc( 27.5% + 3em) ;
  }
  .nav-image-link,
  .nav-image-link ~ .nav-image-link {
    top: 1.875em;
  }
  .nav-image-link ~ .nav-image-link ~ .nav-image-link,
  .nav-image-link ~ .nav-image-link ~ .nav-image-link ~ .nav-image-link {
    top: 13.125em;
  }
  .nav-image-link ~ .nav-image-link,
  .nav-image-link ~ .nav-image-link ~ .nav-image-link ~ .nav-image-link {
    right: 2em;
  } 
  ul.sub-menu > .nav-image-link ~ .nav-image-link p {
    margin-bottom: 0.5em;
  }
}

/* search bar */
.header-search {
  position: absolute;
  top: 4.25em;
  right: 1em;
  width: calc(100% - 2em);
}
.aa-Autocomplete {
  height: 3em;
}
.header-search form {
  background-color: var(--white);
  border: 1px solid var(--mid-gray);
  border-radius: 0;
  font-size: 1rem;
  height: 2.563em;
  position: relative;
  width: 100%;
}
.header-search form:focus-visible,
.header-search form:focus-within {
  border: 1px solid var(--dark-gray);
  box-shadow: none;
  outline: none;
}
.header-search .aa-InputWrapperSuffix,
.header-search .aa-InputWrapperPrefix {
  z-index: 10;
}
.header-search input,
.header-search button {
  height: var(--aa-search-input-height);
  cursor: pointer;
}
.header-search button {
  padding-left: .75em;
}
.header-search .aa-SubmitIcon {
  display: block;
  color: var(--dark-gray);
  transition: all .3s ease-in-out;
}
.header-search .aa-SubmitIcon:active,
.header-search .aa-SubmitButton:focus .aa-SubmitIcon,
.header-search .aa-SubmitIcon:hover {
  color: var(--highlight-bright);
  transform: scale(1.1);
  transition: all .3s ease-in-out;
}
.aa-DetachedSearchButtonPlaceholder {
  color: var(--mid-gray);
}
.header-search input:focus {
  outline: none;
}
.header-search input.aa-Input {
  font-size: 1rem !important;
  font-weight: 300 !important;
  width: 100%;
}
.header-search input[type="text"],
.header-search input[type="text"]:focus,
.header-search input[type="text"]:not(:placeholder-shown) {
  font-size: 1rem;
  width: calc(100% - 3.75em);
  position: absolute;
  top: 0;
  left: 0;
  padding: .5em 1em .5em 2.75em;
  background-color: transparent;
  border-radius: 0;
  letter-spacing: .1em;
  transition: top .5s ease-in-out;
}
.header-search input[type="text"]:placeholder-shown:not(:focus) {
  width: calc(50% + 1em);
  padding-left: calc(50% - 2em);
}
.header-search {
  top: 6.75em;
}
@media only screen and ( min-width: 37.5em ) {
  .aa-Autocomplete {
    height: 4.25em;
  }
}
@media only screen and ( min-width: 46.875em ) {
  .header-search {
    top: 5.25em;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .header-search {
    position: static;
    width: unset;
    flex: 1;
    z-index: -2;
  }
  .aa-Autocomplete {
    height: 4.5em;
  }
}
@media only screen and ( min-width: 65em ) {
  .header-search {
    flex: 1 0;
    max-width: 30em;
    z-index: initial;
    height: 2.75em
  }
  .aa-Autocomplete {
    height: 4.75em;
  }
}

/* Search results */
.aa-Panel {
  border-radius: 0 !important;
  border: none !important;
  box-shadow: 0 .25em .25em rgba(0, 0, 0, 0.25) !important;
  font-size: 1rem !important;
  font-weight: 300 !important;
  margin: 0 !important;
  padding: 1.5em 0 !important;
  max-width: 41.25em !important;
  z-index: 3;
}
.aa-Panel--scrollable {
  padding: .625em 2.25em !important;
  height: 90vh;
  max-height: 43.75em;
}
.aa-Source {
  max-width: 22.5em !important;
  min-width: 18.75em !important;
}
[data-autocomplete-source-id="C7 Product Feed"]::before {
  border-top: 1px solid #D9D9D9;
  content: "";
  display: block;
  height: 1px;
  padding-top: 1.875em;
  width: 100%;
}
.aa-ItemIcon,
.aa-ItemActions {
  display: none !important;
}
.aa-Item {
  margin-bottom: 0 !important;
  min-height: unset !important;
  line-height: 2.25em !important;
  padding: 0 !important;
}
[data-autocomplete-source-id="querySuggestionsPlugin"] .aa-ItemContentTitle {
  padding: .5em 0 !important;
}
[data-autocomplete-source-id="C7 Product Feed"] .aa-Item {
  margin-bottom: 1em !important;
  padding: 1em 0 !important;
}
[data-autocomplete-source-id="searchable_posts"] .suggestion-post-title,
[data-autocomplete-source-id="C7 Product Feed"] .suggestion-post-title {
  line-height: 1.25;
  margin-bottom: 1em;
}
.aa-Item .suggestion-link {
  color: var(--dark-gray);
  display: flex;
  flex-direction: row;
  text-decoration: none;
}
[data-autocomplete-source-id="C7 Product Feed"] .aa-Item .suggestion-link {
  column-gap: 1.25em;
  display: inline-grid;
  grid-template-columns: 3.75em 9.6875em;
  text-decoration: none;
}
.aa-Item .suggestion-link:hover {
  background: none;
}
.aa-Item .suggestion-link .suggestion-post-thumbnail-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  max-height: 9.375em;
  width: 3.75em;
}
.aa-Item .suggestion-link .suggestion-post-thumbnail {
  height: 100%;
  object-fit: contain;
  object-position: center;
  width: 100%;
}
.aa-Item .suggestion-link .suggestion-post-attributes {
  display: flex;
  flex-direction: column;
}
.aa-Item .suggestion-link .suggestion-post-title + span {
  font-weight: 700;
}
.aa-SourceHeader {
  margin-bottom: 16px !important;
}
.aa-SourceFooter {
  margin: 1.5em 0;
  text-align: center;
}
@media only screen and ( min-width: 42.5em ) {
  .aa-PanelLayout.aa-Panel--scrollable {
    display: flex;
    flex-direction: row;
  }
  [data-autocomplete-source-id="C7 Product Feed"] {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
  }
  [data-autocomplete-source-id="C7 Product Feed"]::before {
    border-left: 1px solid #D9D9D9;
    border-top: none;
    height: 100%;
    width: 1px;
    padding-top: 0;
  }
}
@media only screen and ( min-width: 65em ) {
  .aa-Panel {
    left: unset !important;
    max-width: 41.25em !important;
  }
}
@media only screen and ( min-width: 75em ) {
  .aa-Panel {
    left: unset !important;
    min-width: 22.625em !important;
    height: auto;
    width: max-content !important;
  }
  [data-autocomplete-source-id="querySuggestionsPlugin"],
  [data-autocomplete-source-id="C7 Product Feed"] .aa-SourceFooter {
    flex: 1;
  }
  [data-autocomplete-source-id="searchable_posts"] .aa-List {
    margin-right: 1.625em;
  }
  [data-autocomplete-source-id="C7 Product Feed"] .aa-List {
    margin-left: 1.625em;
  }
}
body:has(.aa-Panel) {
  position: relative;
}
body:has(.aa-Panel) .site-main::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgb(71 71 71 / .8);
  z-index: 1;
}

/* commerce7 nav links */
.commerce7-nav {
  position: absolute;
  left: 1em;
  top: 4em;
  width: 90%;
  width: calc(100% - 2em);
}
#custom-c7-nav-inner,
#c7-cart > a {
  position: relative;
  font-size: .75em;
}
.c7-user-nav__account > a,
.c7-user-nav__cart > button {
  padding: 10px 0;
}
.commerce7-nav #c7-cart {
  position: absolute;
  top: -2.75em;
  right: 0;
}
#c7-account .c7-user-nav__account__name:hover > svg,
#c7-cart button:hover .c7-user-nav__cart__title > svg {
  stroke: var(--highlight-bright);
}
.c7-user-nav__account__login {
  display: block;
}
.c7-user-nav__account__name svg,
.c7-user-nav__account:hover .c7-user-nav__account__dropdown, 
.c7-user-nav__account:focus .c7-user-nav__account__dropdown, 
.c7-user-nav__account:active .c7-user-nav__account__dropdown, 
.c7-user-nav__account:focus-within .c7-user-nav__account__dropdown {
  opacity: 0;
  visibility: hidden;
  display: none;
}
.c7-user-nav__account__dropdown {
  font-size: 1rem;
}
.c7-user-nav__account__dropdown__header a span {
  font-size: .75em;
  padding-top: 7px;
}
.c7-user-nav__account__dropdown ul {
  font-size: .875rem;
}
.c7-user-nav__account__dropdown ul li {
  margin-bottom: 0;
}
@media only screen and ( min-width: 46.875em ) {
  .commerce7-nav {
    top: 1.8em;
    left: unset;
    right: 0.75em;
    max-width: 30%;
    max-width: calc(50% - 8em);
  }
  #custom-c7-nav-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    min-height: 3em;
  }
  .commerce7-nav #c7-cart {
    position: relative;
    top: unset;
  }
  #c7-account {
    padding-top: 4px;
  }
  .c7-user-nav__account__name svg,
  .c7-user-nav__account:hover .c7-user-nav__account__dropdown, 
  .c7-user-nav__account:focus .c7-user-nav__account__dropdown, 
  .c7-user-nav__account:active .c7-user-nav__account__dropdown, 
  .c7-user-nav__account:focus-within .c7-user-nav__account__dropdown {
    opacity: 1;
    visibility: visible;
    display: block;
  }
  .c7-user-nav__account__name svg {
    display: inline-block;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .commerce7-nav-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 3em;
  }
  .commerce7-nav {
    position: static;
    margin: 0 auto;
    width: 100vw;
    max-width: 100em;
    padding: .875em 2em;
    display: flex;
    justify-content: flex-end;
  }
  #custom-c7-nav-inner {
    display: flex;
    align-items: center;
  }
  /* .commerce7-nav #c7-cart, 
  .commerce7-nav #c7-cart a { */
  .commerce7-nav #c7-cart {
    position: static;
    display: inline-block;
    width: auto;
    /* padding: 0; */
  }
}
@media only screen and ( min-width: 75em ) {
  .commerce7-nav {
    z-index: initial;
  }
}


/* footer */
footer {
  /* for background darkening when nav open */
  position: relative;
}
.site-footer {
  background-color: var(--light-gray-v1);
}
.site-footer .content {
  max-width: 100em;
  margin: 0 auto;
  padding: 2em 1em;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  column-gap: 2em;
}
/* footer subscribe: see commerce7-footer-subscribe section below */
.footer-logo,
.footer-nav,
.social-icon-wrapper,
.site-footer .government-notice,
.site-footer .copyright-notice {
  width: 100%;
  order: 2;
}
.footer-logo,
.social-icon-wrapper {
  order: 1;
}
.footer-logo-wrap {
  width: 60%;
  min-width: 12.25em;
  margin: 0 auto 2em;
}
.footer-nav {
  text-transform: uppercase;
  letter-spacing: .05em;
  padding-left: 1em;
  padding-right: 1em;
}
.menu-footer-featured-menu-container {
  margin-bottom: 2em;
}
.footer-nav li {
  margin-bottom: 1rem;
}
.site-footer .government-notice p,
.site-footer .copyright-notice p {
  text-align: center;
  font-size: .75em;
  max-width: 80%;
  margin-left: auto;
  margin-right: auto;
}
.site-footer .social-icon-wrapper,
.site-footer .government-notice p {
  margin-bottom: 16px;
  margin-bottom: 1rem;
}
.site-footer .copyright-notice {
  text-transform: uppercase;
}
/* social links */
.social-icons {
  margin-bottom: 2em;
  text-align: center;
}
.social-icons li {
  display: inline-block;
}
.social-icons li + li {
  margin-left: 1em;
}
a.social-icon {
  display: inline-block;
  text-decoration: none;
  color: var(--dark-gray);
  transition: top .4s ease-in-out;
}
.social-icon::before {
  display: inline-block;
  font-family: "Font Awesome 6 Brands";
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  font-weight: 400;
  font-size: 1.75em;
  line-height: 1;
  padding-top: .2em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: all .3s ease-in-out;
}
.social-contact::before {
  font-family: "Font Awesome 6 Pro";
  content: "\f0e0";
}
.social-facebook::before {
  content: "\f09a";
}
.social-instagram::before {
  content: "\f16d";
}
.social-pinterest::before {
  content: "\f0d2";
}
.social-spotify::before {
  content: "\f1bc";
}
.social-twitter::before {
  content: "\f099";
}
.social-youtube::before {
  content: "\f167";
}
.social-icon:active,
.social-icon:focus,
.social-icon:hover {
  color: var(--highlight-bright);
  transform: scale(1.1);
  transition: all .3s ease-in-out;
}
a.social-icon.highlight {
  color: var(--highlight-bright);
}
.social-icon.highlight:active,
.social-icon.highlight:focus,
.social-icon.highlight:hover {
  color: var(--dark-gray);
}
@media only screen and ( min-width: 37.5em ) {
  .site-footer .content {
    padding: 2em;
  }
  .footer-logo-wrap {
    width: 40%;
  }
  .footer-nav {
    display: flex;
    flex-wrap: wrap;
    column-gap: 2em;
    margin-bottom: 2em;
  }
  .footer-nav > div {
    flex-basis: calc(50% - 1em);
    display: flex;
    justify-content: center;
  }
  .menu-footer-menu-container {
    order: 1;
  }
  .menu-footer-featured-menu-container {
    order: 3;
    margin-bottom: 0;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .footer-logo,
  .footer-nav,
  .social-icon-wrapper,
  .site-footer .government-notice,
  .site-footer .copyright-notice {
    order: 1;
  }
  .footer-commerce7-subscribe {
    margin-bottom: 3rem;
  }
  .site-footer .government-notice p,
  .site-footer .copyright-notice p {
    max-width: 75%;
  }
  .footer-logo {
    width: calc(33% - 2em);
    max-width: 16em;
    margin-left: auto;
  }
  .footer-nav {
    width: calc(67% - 2em);
    max-width: 40em;
    margin-right: auto;
    margin-bottom: 1em;
    padding: 0;
  }
}

/* tfe agegate */
.pum-open .agegate-open #pum-456 {
  display: none !important;
}
.pum-open #pum-456 {
  z-index: 1500;
}
.tfe-agegate {
  display: flex;
  align-items: center;
  z-index: 1600;
  background: rgba( 0, 0, 0, .6 );
}
.tfe-agegate-dialog {
  font-size: 1rem;
  box-shadow: 0 0 1.875em 0 rgb(2 2 2);
}
.tfe-agegate-image {
  width: 75%;
}
.tfe-agegate p {
  font-size: 1.25em;
  line-height: 1.4;
}
@media only screen and (min-width: 40em) {
  .tfe-agegate-image {
    width: 50%;
  }
}


/* commerce7 */
h1.c7-h1,
h2.c7-h2,
.c7-account__header .c7-wrapper p:first-of-type,
.c7-account-dashboard__columns h2, 
.c7-account-dashboard__columns .c7-account-block__title {
  font-family: 'Times New Roman', serif;
  font-family: var(--display-font);;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .1em;
}
h1.c7-h1,
.c7-account__header .c7-wrapper p:first-of-type,
.c7-error-page .c7-h1 {
  font-size: 36px;
  font-size: 2.25rem;
}
h2.c7-h2 {
  font-size: 30px;
  font-size: 1.875rem;
}
@media only screen and ( max-width: 30em ) {
  h1.c7-h1,
  .c7-account__header .c7-wrapper p:first-of-type { 
    font-size: 7vw; 
  }
  h2.c7-h2 { 
    font-size: 6vw; 
  }
}
.c7-content {
  padding: 0;
}
.c7-wrapper {
  padding: 0 1em;
}
@media ( min-width: 56.25em ) {
  .c7-wrapper {
    padding: 0 2em;
  }
}
.c7-content h1, 
.c7-content h2, 
.c7-content h3, 
.c7-content h4, 
.c7-content h5, 
.c7-content h6, 
.c7-content ul, 
.c7-content ol, 
.c7-content p, 
.c7-content .c7-title {
  margin-top: 0;
}
.c7-form select, 
.c7-form input[type='text'], 
.c7-form input[type='email'], 
.c7-form input[type='tel'], 
.c7-form input[type='password'], 
.c7-form input[type='username'], 
.c7-form .c7-input-sudo,
.c7-form .label + .c7-form__group {
  margin-top: 0;
}
.c7-form input:active:not([disabled]), 
.c7-form input:focus:not([disabled]), 
.c7-form select:active:not([disabled]), 
.c7-form select:focus:not([disabled]), 
.c7-form textarea:active:not([disabled]), 
.c7-form textarea:focus:not([disabled]), 
.c7-order-item input:active:not([disabled]), 
.c7-order-item input:focus:not([disabled]), 
.c7-order-item select:active:not([disabled]), 
.c7-order-item select:focus:not([disabled]), 
.c7-order-item textarea:active:not([disabled]), 
.c7-order-item textarea:focus:not([disabled]) {
  box-shadow: 0 0 0 3px var(--c7-field-focus-color);
  border-color: var(--c7-field-focus-border-color);
}
.c7-form label {
  font-family: var(--body-font);
}
.c7-form label:not(.c7-radio, .c7-checkbox, .duet-date__mobile-heading), 
.c7-label, 
.c7-checkbox__label,
.c7-form legend {
  font-size: .875rem;
}
.c7-form select,
.c7-order-item select,
.c7-checkout-mobile__summary-toggle {
  color: var(--dark-gray);
}
.c7-form__group div label.c7-small {
  font-size: var(--c7-font-size-sub);
}
.c7-checkbox__control, .c7-radio__control {
  margin: 2px 10px 0 0;
}
.c7-loading--block .c7-spinner {
  height: unset;
  max-height: 125px;
}
#c7-modal-title,
 .c7-form .c7-h1,
 .c7-modal .c7-btn--primary,
 .c7-modal .c7-btn--alt,
 .c7-account-details__header .c7-btn {
  text-transform: uppercase;
}

/* commerce7-collection */
.c7-collection #c7-content .products-list > h1 {
  text-align: left;
  margin-bottom: 32px;
  margin-bottom: 2rem;
}
.c7-collection #c7-content .products-list > h1,
.c7-collection #c7-content .products-list > .c7-product-collection__content {
  max-width: 52.25rem;
}
.c7-product-collection {
  max-width: 96em;
  min-height: 27.375em;
}
.c7-product-collection__content,
.c7-product-allocation__content, 
.c7-personalization__content {
  margin-bottom: 0;
}
.c7-product-collection__product-list {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  column-gap: 1em;
  row-gap: 3em;
  width: 100%;
}
.c7-product-collection__product-list, 
.c7-product-allocation__product-list {
  margin: 3rem 0 2rem;
}
@media (min-width: 37.25em) {
  .c7-product-collection__product-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .c7-product-collection__product-list, 
  .c7-product-allocation__product-list {
    margin-top: 4rem;
  }
}
@media (min-width: 50em) {
  .c7-product-collection__product-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 72em) {
  .c7-product-collection__product-list {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 85em) {
  .c7-product-collection__product-list {
    grid-template-columns: repeat(5, 1fr);
  }
}  
@media (min-width: 98em) {
  .c7-product-collection__product-list {
    grid-template-columns: repeat(6, 1fr);
  }
}

/*  commerce7-product-not-found-collection */
.c7-product-display-page .c7-content {
  margin: 0 auto;
  padding: 2em 1em;
  max-width: 100em;
}
.c7-product-display-page .c7-content h1 {
  margin-bottom: 2rem
}
.c7-error-page__recommendations {
  margin: 0;
}
.c7-error-page__recommendations > .c7-h2 {
  display: none;
}
@media only screen and (min-width: 37.25em) {

}
@media only screen and (min-width: 56.25em) {
  .c7-product-display-page .c7-content {
    padding: 4em 2em;
  }
  .c7-product-display-page .c7-content h1 {
    font-size: 2.8125rem;
    max-width: 52.25rem;
  }
}
@media only screen and (max-width: 30em) {
  .c7-product-display-page .c7-content h1 {
    font-size: 7vw;
  }
}  

/* .ais-Hits-item .product-flex, */
.c7-product-collection .product {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
}
.c7-product-collection .info {
  position: relative;
  max-width: 18em;
  margin: 0 auto;
}
.c7-product-collection .image {
  min-height: 20.375em;
  width: 100%;
}
.c7-product-collection .product .badge,
.ais-Hits-item .score {
  position: absolute;
  top: 0;
  right: 1em;
  width: 3.75em;
  height: 3.75em;
}
.c7-product-collection .product .badge img,
.ais-Hits-item .score img {
  width: 100%;
  height: auto;
}
.c7-product-collection .product .image a {
  display: block;
}
.c7-product-collection .product .image img {
  width: auto;
  height: 20.375em;
  transition: transform .3s ease-in-out;
  object-fit: cover;
}
.c7-product-collection .product .image a:active img,
.c7-product-collection .product .image a:focus img,
.c7-product-collection .product .image a:hover img {
  transform: scale(1.03);
  transition: transform .3s ease-in-out;
}
.collection-merchandise .c7-product-collection .product .image img {
  object-fit: contain;
}
.c7-product-collection .product .title {
  font-family: var(--body-font);
  text-transform: initial;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-bottom: .5em;
  padding: 0 .5em;
}
.c7-product-collection .product .title a {
  text-decoration: none;
  color: var(--dark-gray);
}
.c7-product-collection .product .title a:active,
.c7-product-collection .product .title a:focus,
.c7-product-collection .product .title a:hover {
  color: var(--highlight-bright);
}
.c7-product-collection .product .price,
.recipe-c7-link .c7-product__add-to-cart__price {
  margin: 0;
}
.c7-product-collection .c7-product__add-to-cart__form,
.recipe-c7-link .c7-product__add-to-cart__form {
  justify-content: center;
}
.product .c7-product__add-to-cart__price,
.ais-Hits-item .c7-product__variant__price,
.recipe-c7-link .c7-product__add-to-cart__price {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  margin: 0 0 .75em;
  font-weight: 700;
}
.product .c7-product__add-to-cart__price .c7-product__add-to-cart__price__variant,
.recipe-c7-link .c7-product__add-to-cart__price .c7-product__add-to-cart__price__variant {
  margin: .125em 0 0;
}
.product .c7-price--original,
.product .c7-product__add-to-cart__price__variant,
.ais-Hits-item .c7-product__variant__price .c7-product__variant__price__compare,
.recipe-c7-link .c7-price--original,
.recipe-c7-link .c7-product__add-to-cart__price .c7-product__add-to-cart__price__variant {
  font-weight: 400;
}
.c7-product__variant__add-to-cart input[type='text'] {
  box-sizing: border-box;
  border: 1px solid var(--dark-gray);
  -webkit-border-radius: 0px;
  font-size: 1em;
  height: 2.375em;
  padding: 0;
}
.c7-btn.viewdetails {
  margin: 0 auto;
}
@media screen and ( min-width: 37.25em ) {
  .c7-product-collection__product-list .product .sold-out {
    /* position: absolute;
    bottom: -2em; */
    width: 100%;
    padding: 0.5em 0.5em 1.5em;
  }
}
@media screen and ( min-width: 48em ) {
  .c7-product__variant__add-to-cart {
    justify-content: center;
  }
}

/* commerce7-collection-custom */
.page-template-commerce7-collection-custom .products-list > h1,
.page-template-commerce7-collection-custom .products-list > .c7-product-collection__content {
  display: none;
}

/* commerce7-product */
.product {
  position: relative;
}
.product-image {
  position: relative;
  text-align: center;
  margin-bottom: 1.5em;
  max-width: 24.25em;
  margin: 0 auto 1.5em;
}
.product-image > img {
  height: 30em;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  overflow: hidden;
}
.c7-product-detail__photo__thumbs {
  display: flex;
  display: flex;
  justify-content: center;
  gap: 1em;
  margin-top: 1em;
}
.c7-product-detail__photo__thumbs a {
  display: flex;
  align-items: center;
  flex: 1 1 7em;
  max-height: 7em;
  max-width: 7em;
  cursor: pointer;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border: solid 1px var(--mid-gray);
  transition: all .3s ease-in-out;
}
.c7-product-detail__photo__thumbs a:active,
.c7-product-detail__photo__thumbs a:focus,
.c7-product-detail__photo__thumbs a:hover {
  border-color: var(--dark-gray);
  transform: scale(1.05);
}
.c7-product-detail__photo__thumbs a img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.product-image > .badge {
  position: absolute;
  top: 1em;
  right: 10%;
  z-index: -1;
  width: 5em;
  height: auto;
}
#c7-content .product-text,
#c7-content .product-text .title {
  text-align: left;
}
#c7-content .product-text .title {
  margin-bottom: .75em;
}
.product-text .description {
  margin: .75em 0 2em;
}
.product-text .price, 
.product-text .c7-product__variant__add-to-cart, 
.product-text .c7-product__variant__price__title {
  display: block;
}
.c7-product-display-page section:not(.c7-error-page) .c7-product__add-to-cart__price {
  font-size: 1.4rem;
  flex-wrap: wrap;
  row-gap: 0;;
}
.c7-product-display-page section:not(.c7-error-page) .c7-product__add-to-cart__price > span {
  flex: 1 0 100%;
  margin-left: 0;
}
.c7-product-display-page section:not(.c7-error-page) .c7-product__add-to-cart__price .c7-product__add-to-cart__price__variant::before {
  display: none;
}
.c7-product__add-to-cart__form__quantity .c7-form__field input[type='text'] {
  margin-top: 0;
}
.product-text .price {
  margin-left: 0;
  margin-bottom: 1.5em;
}
.product-text .c7-product__variant__price__title {
  margin-bottom: 1em;
}
.c7-product-display-page section:not(.c7-error-page) .product-text .c7-product__variant__price__title {
  margin-bottom: 0;
}
.product-text .c7-product__variant__price__title:before {
  display: none; 
}
.details-accordion {
  margin-top: 3em;
}
input.details-checkbox {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.tabs {
  overflow: hidden;
  margin-top: 2rem
}
.detail-group {
  position: relative;
  width: 100%;
  color: #616a6a;
  overflow: hidden;
  margin-bottom: 1em;
}
.detail-label {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  padding: .8em;
  background: var(--light-gray-v1);
  border: 1px solid var(--light-gray-v1);
  font-family: var(--display-font);
  font-size: 1.25em;
  cursor: pointer;
  text-transform: uppercase;
  color: var(--dark-gray)
}
.detail-group input[type=checkbox]:focus + .detail-label,
.detail-label:hover {
  background: var(--light-gray-v2);
  border-color: var(--light-gray-v2);
}
.detail-group input[type=checkbox]:focus + .detail-label {
  border-color: var(--dark-gray);
}
.detail-label::after {
  content: url(/wp-content/themes/osws-2022/assets/images/core/icons/caret.png);
  width: 1em;
  height: 1em;
  margin-top: .2em;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-transition: all .35s;
  transition: all .35s;
}
.detail-label:hover::after {
  transform: scale(1.2);
}
.detail-content {
  max-height: 0;
  overflow: auto;
  padding: 0 1em;
  color: var(--dark-gray);
  background: var(--white);
  -webkit-transition: all .35s;
  transition: all .35s;
  overflow-y: hidden;
}
.detail-content > div:first-of-type {
  margin-top: 1.5em;
}
.detail-content > div:last-of-type {
  margin-bottom: .5em;
}
.detail-group input[type=checkbox]:checked + .detail-label::after {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.detail-group input[type=checkbox]:checked~.detail-content {
  height: auto;
  max-height: none;
  padding: 0 1em;
  transition: all .35s ease-out;
}
.detail-content h3 {
  font-family: var(--body-font);
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  text-transform: none;
  letter-spacing: 0.02em;
  margin-bottom: 0.5em;
}
.detail-wine-facts .detail-content > div {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  column-gap: 1em;
}
.detail-wine-facts .detail-content > div + div {
  margin-top: 1em;
}
.detail-wine-facts h3,
.detail-wine-facts p {
  display: inline;
  margin-bottom: 0;
}
.detail-wine-facts h3 {
  flex: 0 1 8em;
} 
.detail-wine-facts p {
  flex: 1 1 8em;
} 
.detail-more-about .detail-content > div + div {
  margin-top: 1.5em;
}
.c7-product .product-reviews {
  padding-top: 3em;
  max-width: 71.5em;
}
@media only screen and ( min-width: 37.5em) {
  .c7-product .header-wrapper {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    column-gap: 2em;
    margin-bottom: 3em;
  }
  .product-image {
    flex: 0 0 calc(40% - 1em);
    margin: 0;
  }
  .product-text {
    flex: 0 0 calc(60% - 1em);
    max-width: 48em;
  }
  #c7-content .product-text .title {
    margin-bottom: .5em;
  }
  .c7-product > div:not(.header-wrapper) {
    width: 100%;
  }
}
@media screen and (min-width: 48em) {
  .c7-product.content {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .c7-product .product-reviews {
    border-top: 1px solid var(--mid-gray);
  }
}
@media only screen and ( min-width: 56.25em) {
  .c7-product .header-wrapper {
    column-gap: 3em;
    margin-bottom: 4em;
  }
  .product-image {
    flex: 0 0 calc(40% - 1.5em);
  }
  .product-text {
    flex: 0 0 calc(60% - 1.5em);
  }
}
@media only screen and ( min-width: 75em) {
  .c7-product .header-wrapper {
    column-gap: 4em;
  }
  .product-image {
    flex: 0 0 calc(40% - 2em);
  }
  .product-text {
    flex: 0 0 calc(60% - 2em);
  }
}


/* make all links except the cta buttons underlined */
#c7-content a:not(.c7-btn, .c7-btn-alt-small, .c7-btn-small) {
  text-decoration: underline;
}
/* add exception for product titles on merch page */
#c7-content h2.title a {
  text-decoration: none;
}
.c7-account-menu a {
  color: var(--highlight-bright);
}
.c7-account-menu a:hover {
  color: var(--dark-gray);
}
.c7-account-row>div {
  color: var(--dark-gray);
}

/* commerce7-cart */
@media screen and (max-width: 580px) {
  .c7-cart__wrapper .c7-cart-items__image {
    display: none;
  }
  .c7-cart__wrapper .c7-cart-items__price {
    width: unset;
  }
}
.cart #c7-content {
  padding: 1em 1em 3em;
}
.c7-cart__wrapper {
  margin: 0 auto;
  max-width: unset;
}
.c7-cart, #c7-cart {
  font-size: 16px;
  font-size: 1rem;
}
.c7-cart {
  padding: 2em 0;
  min-height: calc(100vh - 4em);
}
#c7-cart .c7-cart__close {
  top: .75em
}
.c7-cart-summary,
.c7-cart-items > div,
.c7-cart__summary__message {
  font-size: 12px;
  font-size: .75rem;
}
#c7-cart {
  padding: 0;
}
.c7-cart h1 {
  margin-top: 0;
  padding-right: 3em;
}
.c7-order-items,
.c7-order-items .c7-link,
.c7-order-summary,
.c7-order-summary .c7-link,
.c7-order-item select,
.c7-form--coupon-code-container input[type='text'] {
  font-size: 14px;
  font-size: .875rem;
}
.c7-order-item select,
.c7-form--coupon-code-container input[type='text'] {
  padding-top: 10px;
  padding-bottom: 10px;
}
.c7-cart-items,
.c7-cart__summary {
  max-width: 100%;
  margin: 0 auto;
}
.c7-cart-items > div,
.c7-cart__summary__message {
  margin-bottom: 1.5em;
}
.c7-cart__summary__message {
  padding: 0;
}
.c7-cart__summary__message a {
  margin-bottom: 0;
}
.c7-cart__promo__summary {
  max-width: 100%;
  margin-bottom: 1.5em;
}
.c7-cart__summary__message > div:not(.c7-cart__promo__summary) h4 {
  letter-spacing: 0.01em;
  margin-bottom: .25em;
}
.c7-cart-items > div {
  flex-wrap: nowrap;
  column-gap: 1.3333em;
}
.c7-cart-items__quantity {
  padding: 0;
}
.c7-cart-items__quantity input[type='text'] {
  padding: 0;
  box-sizing: border-box;
  max-width: unset;
}
.c7-cart .c7-btn-alt-small,
.c7-cart-items__quantity form button {
  border: 1px solid var(--dark-gray);
  box-sizing: border-box;
  padding: 0.75em 0.6em;
  font-size: .875em;
  min-width: 100%;
}
.c7-cart .c7-btn-alt-small:active, .c7-cart .c7-btn-alt-small:focus, .c7-cart .c7-btn-alt-small:hover, 
.c7-cart-items__quantity form button:active, .c7-cart-items__quantity form button:focus, .c7-cart-items__quantity form button:hover {
  border: 1px solid var(--mid-gray);
}
.c7-cart-items__image,
.c7-cart-items__title {
  padding-right: 0;
}
.c7-cart-items__title {
  width: 55%;
  letter-spacing: 0.02em;
}
.c7-cart .c7-cart-items__title a {
  color: var(--highlight-bright);
  text-decoration: underline;
  padding: 0 !important;
}
.c7-cart .c7-cart-items__title a:active,
.c7-cart .c7-cart-items__title a:focus,
.c7-cart .c7-cart-items__title a:hover {
  color: var(--dark-gray);
}
.c7-cart-items__title__variant {
  margin-top: .25rem;
}
.c7-cart-summary {
  text-transform: uppercase;
}
.c7-cart-summary__total {
  border-top: 1px solid var(--mid-gray);
  font-weight: bold;
}
.c7-cart-summary__total div:last-child {
  margin-bottom: 0.2em;
}
.c7-cart__carrot h4 {
  letter-spacing: 0em;
  margin-bottom: .5em;
}
.c7-cart__carrot {
  color: var(--white);
  max-width: 100%;
  margin: 1rem auto;
}
.c7-cart__carrot a {
  color: var(--white);
}
.c7-cart__carrot a:hover {
  color: var(--mid-gray);
}
.c7-message--empty-cart {
  max-width: 100%;
}
.c7-cart__close {
  border-radius: 50%;
  position: absolute !important;
  display: inline-block;
  line-height: 0em;
  top: 1em;
  right: 1em;
  width: 1.25em !important;
  height: 1.25em !important;
  line-height: 1.25em !important;
  padding: 1em !important;
}
.c7-cart__summary__message {
  padding: 0.5rem 0rem;
}
#c7-side-cart .c7-cart-items {
  width: 100%;
  max-width: 100%;
}
.c7-cart__buttons {
  max-width: 100%;
  margin: auto;
  text-align: center;
}
.c7-cart__buttons a {
  padding: 1em 1.5em;
  vertical-align: middle;
  margin: 0;
}
#c7-cart .c7-cart__buttons .c7-btn-alt, 
#c7-cart .c7-cart__buttons .c7-btn, 
.c7-cart__buttons a  {
  box-sizing:border-box;
  width: 100%;
  max-width: 100%;
  padding: 1em 1.5em;
  margin: 1em auto;
}
.c7-order-summary__buttons {
  display: flex;
  margin-top: 20px;
}
.c7-order-summary__buttons {
  display: flex;
  margin-top: 20px;
}
.c7-order-item__image {
  margin-top: 6px;
}
.c7-checkout__content .c7-tabs[aria-label="Delivery Type"] {
  display: none;
}
.c7-checkout__content .c7-notice--secure {
  margin-bottom: 1em
}
.c7-form--coupon-code-container .c7-link {
  cursor: default;
  pointer-events: none;
  color: var(--dark-gray);
}
.c7-form--coupon-code-container .c7-link svg {
  display: none;
}
.c7-form--coupon-code-container .c7-form {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.c7-checkout .c7-form--coupon-code-container .c7-form > div {
  margin-top: 0;
}
@media screen and (min-width: 1001px) {
  .c7-checkout:not(.c7-checkout--club) .c7-callout {
    padding: 25px 20px 25px 45px;
  }
}  
@media screen and (max-width: 480px) {
  .c7-order-item__image {
    flex: 0 1 60px;
  }
}
@media screen and (max-width: 22.5em) {
  .c7-cart-items > div {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 1em;
  }
  .c7-cart-items__title {
    margin-right: auto ;
    width: calc(80% - 1em);
  }
  .c7-cart-items__price {
    margin-left: auto;
  }
  .c7-cart-items__quantity form button,
  .c7-cart .c7-btn-alt-small {
    font-size: .75em;
  }
}
@media screen and (min-width: 32em) {
  .c7-cart-items__image {
    display: block;
    width: 20%;
  }
  .c7-cart__buttons {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    column-gap: 2em;
  }
  #c7-cart .c7-cart__buttons .c7-btn-alt, #c7-cart .c7-cart__buttons .c7-btn, .c7-cart__buttons a {
    max-width: calc(50% - 1em);
  }
}
@media screen and (min-width: 37.25em) {
  .c7-cart-summary,
  .c7-cart-items > div,
  .c7-cart__summary__message {
    font-size: 14px;
    font-size: .875rem;
  }
  .c7-cart .c7-btn-alt-small,
  .c7-cart-items__quantity form button {
    font-size: 12px;
    font-size: .75em;
  }
  .c7-cart-items__image {
    width: 30%;
  }
}
@media only screen and (min-width: 56.25em) {
  .cart #c7-content {
    padding: 1em 2em 3em;
    max-width: 60.25em;
    margin: 0 auto;
  }
  .cart  #c7-content .c7-cart-summary,
  .cart  #c7-content .c7-cart-items > div,
  .cart  #c7-content .c7-cart__summary__message {
    font-size: 16px;
    font-size: 1rem;
  }
  .c7-cart__buttons {
    max-width: 100%;
    display: flex;
    flex-direction: row;
    margin: auto;
    text-align: center;
    align-items: center;
    justify-content: center;;
  }
  .c7-cart__buttons .c7-btn-alt, 
  .c7-cart__buttons a  {
    box-sizing:border-box;
    padding: 1em 2em;
    width: auto;
    white-space: nowrap;
  }
  #c7-cart .c7-cart__close {
    right: 2.25em
  }
}


/* commerce7-checkout */
.c7-checkout-template__logo {
  margin: 1em auto;
  padding: 0;
}
.c7-checkout__main {
  width: 100%;
  max-width: 96em;
}
.c7-checkout__main h1 {
  font-family: var(--display-font);
  text-align: center;
}
.c7-checkout__main h4 {
  font-family: var(--body-font);
}
.c7-checkout__main--wide {
  width: 100%;
  max-width: 96em;
}
@media only screen and (min-width: 62em){
  .c7-checkout__main {
    width: 100%;
    max-width: 96em;
  }
  .c7-checkout__main--wide {
    width: 100%;
    max-width: 96em;
  }
}
.c7-checkout .c7-form > div {
  margin-top: 1.5rem;
}
.c7-message--checkout-legal {
  text-align: left;
  margin-bottom: 1em;
}
@media screen and (min-width: 46rem) {
  .c7-form__group input + button {
    margin-top: 0.875em;
  }
}

/* commerce7-wine-club-checkout */
#c7-content .c7-checkout__header .c7-breadcrumbs .c7-active a {
  text-decoration: none;
}
.c7-notice.c7-notice--delivery-shipping,
.c7-notice.c7-notice--delivery-pickup {
  font-size: .875rem;
  margin-bottom: 2em;
}
.c7-checkout-summary {
  padding: .5em 1em 2em;
  width: auto;
  border-bottom: 0;
}
.c7-checkout-summary.c7-visible > * {
  max-width: 36rem;
  margin-left: auto;
  margin-right: auto;
}
.c7-checkout__main {
  padding: 1.5em 1em;
  width: 100%;
  max-width: 96em;
}
.c7-checkout__main .c7-checkout__content {
  padding-left: 0;
  padding-right: 0;
}
.c7-checkout-breadcrumbs {
  margin-bottom: 1.5em;
}
.c7-checkout-breadcrumbs div {
  font-size: 0.875rem;
  color: var(--dark-gray);
}
.c7-checkout-breadcrumbs div.active {
  font-weight: 600;
}
.c7-checkout-breadcrumbs div::after {
  content: '\00a0\00a0\003E\00a0\00a0';
}
.c7-message--club-note {
  text-align: left;
  margin-bottom: 2.5em;
}
.c7-account__dashboard__message {
  padding: 0 1rem 1rem;
  text-align: center;
}
.c7-form label, .c7-form .label {
  letter-spacing: .05em;
}
.c7-checkout__content__buttons {
  display: block;
  text-align: left !important;
  margin-top: 2.5em;
}
.c7-checkout__content__buttons button {
  margin-bottom: 1em;
}
.c7-checkout__content__buttons a {
  display: block;
}
.c7-checkout__content__buttons a::before {
  content: '\003C\00A0';
}
.c7-checkout__content__title__pickup { 
  display: none; 
}
.c7-checkout__footer ul {
  margin-top: 1rem;
}
div.c7-message--error {
  background-color: var(--error-red);
}
.c7-message--error {
  color: var(--error-red);
}
.c7-receipt__header > .c7-btn {
  position: static;
  display: block;
  max-width: 13em;
  margin: 1.5rem auto 0;
}
@media screen and (min-width: 25em) {
  .c7-checkout-summary {
    padding: .5em 1em 2em;
  }
}
@media screen and (min-width: 30em) {
  .c7-checkout__content__title {
    column-gap: 2em;
  }
  .c7-checkout__content__title a {
    min-width: 16em;
  }
}
@media (min-width: 62em) {
  .c7-checkout__main {
    padding: 3em;
    width: 100%;
    max-width: 96em;
    margin-right: auto;
    min-height: calc(100vh - 6em);
  }
  .c7-checkout__header__logo {
    padding: 0;
  }
  .c7-checkout__header__logo img {
    max-width: 100%;
  }
}

/* commerce7-login-signup */
.c7-content.c7-account-login {
  padding: 0 1em 2em;
}
#c7-emailPreferences-subscribe-help {
  margin-top: 4px;
}
.c7-logout-message {
  margin-bottom: 2em;
}
@media only screen and (min-width: 56.25em){
  .c7-content.c7-account-login {
    padding: 0 0 3em;
  }
  .c7-logout-message {
    margin-bottom: 3em;
  }
}
.c7-content.c7-account-login .c7-content.c7-account-login {
  padding: 0;
}

/* commerce7-account */
#c7-content .c7-account {
  padding-bottom: 2em;
}
@media ( min-width: 56.25em ) {
  #c7-content .c7-account {
    padding-bottom: 3em;
  }
}
.c7-account__menu {
  box-shadow: none;
  margin: 10px auto 30px;
}
#c7-content .c7-account__menu ul {
  display: flex;
  justify-content: center;
  column-gap: 2em;
  flex-wrap: wrap;
}
#c7-content .c7-account__menu li {
  margin-bottom: 0;
}
#c7-content .c7-account__menu a {
  margin: 0;
  text-decoration: none;
}
#c7-content .c7-account__menu .c7-active a {
  pointer-events: none;
  color: var(--dark-gray);
  border-bottom-color: var(--dark-gray);
}
#c7-content .c7-account__menu li:not(.c7-active) a:active,
#c7-content .c7-account__menu li:not(.c7-active) a:focus,
#c7-content .c7-account__menu li:not(.c7-active) a:hover {
  color: var(--highlight-bright)
}
.c7-account-details__header .c7-btn {
  text-transform: uppercase;
}
.c7-account-club,
.c7-account-club-shipments .c7-notice--empty {
  margin-bottom: 0;
}
.c7-account-club-shipments .c7-notice--empty,
.c7-notice--empty .c7-btn {
  margin-top: 2em;
}
.c7-form--card-number .c7-card-type,
.c7-form--card-number .c7-card-type--default {
  top: 2.3125rem;
}
@media screen and (max-width: 480px) {
  .c7-account__menu ul {
    font-size: var(--c7-font-size);
  }
}
@media screen and (max-width: 768px) {
  .c7-account__menu {
    margin-bottom: 20px;
  }
  #c7-content .c7-account__menu ul {
    text-align: center;
  }
  #c7-content .c7-account__menu li {
    flex: 0 0 100%;
  }
  #c7-content .c7-account__menu a {
    display: inline-block;
    border-bottom: none;
    text-decoration: underline;
    color: var(--highlight-bright);
    padding: 14px 12px 12px;
  }
  #c7-content .c7-account__menu .c7-active a {
    text-decoration: none;
  }
  #c7-content .c7-account__menu .c7-active a,
  #c7-content .c7-account__menu li:not(.c7-active) a:active,
  #c7-content .c7-account__menu li:not(.c7-active) a:focus,
  #c7-content .c7-account__menu li:not(.c7-active) a:hover {
    color: var(--dark-gray)
  }
}

/* commerce7-footer-subscribe */
.footer-commerce7-subscribe {
  width: 100%;
  border-bottom: 1px solid var(--mid-gray);
  margin-bottom: 2rem;
}
.footer-commerce7-subscribe {
  text-align: center;
}
.footer-commerce7-subscribe p.description,
.footer-commerce7-subscribe .c7-subscribe__success-message {
  margin-bottom: 2rem;
}
.footer-commerce7-subscribe .c7-subscribe__success-message .c7-h3 {
  margin-top: -.5em
}
.footer-commerce7-subscribe .c7-form {
  margin: 0 auto 2rem;
  position: relative;
}
.footer-commerce7-subscribe .c7-form__group {
  flex-wrap: wrap;
}
.footer-commerce7-subscribe .c7-form__field,
.footer-commerce7-subscribe .c7-btn {
  flex: 1 0 100%;
}
.footer-commerce7-subscribe .c7-form__group .c7-form__field + .c7-btn {
  margin: 0;
}
.footer-commerce7-subscribe .c7-form label {
  position: absolute;
  padding: 1.25em 0;
  left: 1.5em;
}
.footer-commerce7-subscribe .c7-form label,
.footer-commerce7-subscribe .c7-form .c7-message--error {
  text-transform: uppercase;
  font-size: .75em;
}
.footer-commerce7-subscribe .c7-form label,
.footer-commerce7-subscribe .c7-form input[type='email'] {
  margin: 0;
}
.footer-commerce7-subscribe .c7-form input[type='email'] {
  padding-left: 5em;
}
.footer-commerce7-subscribe .c7-form .c7-error {
  margin-bottom: .5rem;
}
.footer-commerce7-subscribe .c7-form .c7-error label {
  border-color: #930;
}
.footer-commerce7-subscribe .c7-btn {
  width: 100%;
  line-height: 1.5;
}

/* algolia search */

/* algolia search reset */
@media only screen and ( max-width: 1000px ) {
  #ais-facets {
    display: unset;
  }
}
#ais-facets {
  display: none;
}

/* algolia search styles */
.ais-search-results button {
  background-color: transparent;
  border-width: 0;
  cursor: pointer;
  font-family: Open Sans, "sans-serif";
  font-size: 1rem;
}
.ais-search-results {
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  max-width: 100em;
  padding: 1rem;
  position: relative;
}
.ais-search-results,
.ais-search-results *,
.ais-search-results :after,
.ais-search-results :before {
  box-sizing: border-box;
}
.ais-search-results #ais-facets {
  background-color: var(--white);
  left: 0;
  padding: 1em;
  position: absolute;
  top: 4.5rem;
  width: 100%;
  z-index: 3;
  box-shadow: 0 12px 12px rgb(0 0 0 / 30%);
}
.ais-search-results #ais-main {
  padding: 2em 0;
}
.ais-search-results .algolia-search-box-wrapper,
.ais-search-results-sidebar .ais-RangeInput-form {
  display: none;
}
@media ( min-width: 56.25em ) {
  .ais-search-results {
    flex-direction: row;
    flex-wrap: wrap;
    padding: 2em;
  }
  .ais-search-results .ais-search-results-header {
    width: 100%;
  }
  .ais-search-results #ais-facets {
    display: block;
    border-right: 1px solid var(--mid-gray);
    padding: 0 2em 0 0;
    position: relative;
    top: auto;
    width: 18.5em;
    z-index: 0;
    box-shadow: none;
  }
  .ais-search-results #ais-main {
    padding: 0 0 0 2em;
    width: calc(100% - 18.5em);
  }
  .ais-search-results-sidebar .ais-RangeInput-form {
    display: block;
  }
}

@media ( min-width: 93.75em ) {
  .ais-search-results #ais-facets {
    width: 20%
  }
  .ais-search-results #ais-main {
    width: 80%;
  }
}
.ais-search-results-header {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
}
@media only screen and ( min-width: 56.25em ) {
  .ais-search-results-header {
    margin-bottom: 2rem;
  }
}
.ais-search-results-header .ais-search-results-title .wine-results-title {
  font-size: 1.375rem;
  letter-spacing: .025em;
  margin-bottom: .5rem;
}
.ais-search-results-header .ais-search-results-title .wine-results-title span {
  display: block;
  font-family: Open Sans, "sans-serif";
  font-weight: 600;
  text-transform: capitalize;
}
.ais-search-results-header .ais-Stats {
  font-size: 1rem;
  position: relative;
  top: auto;
}
.ais-search-results-header .ais-facets {
  display: none;
}
@media ( min-width: 56.25em ) {
  .ais-search-results-header .ais-facets {
    align-items: center;
    display: flex;
  }
  .ais-search-results-header .ais-facets label {
    font-family: Times New Roman, Times, serif;
    font-size: .875rem;
    margin-right: 1rem;
    text-transform: uppercase;
  }
  .ais-search-results-header .ais-facets select {
    width: 12rem;
  }
}
.ais-search-results-header .ais-toggle-filters {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  padding: 0 0 0 1em;
}
.ais-search-results-header .ais-toggle-filters .button-icon,
.ais-search-results-header .ais-toggle-filters .button-icon svg,
.ais-search-results-header .ais-toggle-filters .button-label {
  pointer-events: none;
}
.ais-search-results-header .ais-toggle-filters .button-label {
  line-height: 1.25;
  color: var(--dark-gray);
}
.ais-search-results-header .ais-toggle-filters .button-icon {
  margin-left: auto;
}
#clear-refinements {
  display: none;
  position: absolute;
  right: 7em;
}
.ais-ClearRefinements .ais-ClearRefinements-button {
  content: "Clear";
  color: var(--dark-gray);
  text-decoration: underline;
}
.ais-ClearRefinements .ais-ClearRefinements-button--disabled {
  color: var(--mid-gray);
  pointer-events: none;
  text-decoration: none;
}
.ais-ClearRefinements .ais-ClearRefinements-button--disabled:hover {
  color: var(--mid-gray);
  background: var(--white);
}
.ais-ClearRefinements .ais-ClearRefinements-button:not(.ais-ClearRefinements-button--disabled):active,
.ais-ClearRefinements .ais-ClearRefinements-button:not(.ais-ClearRefinements-button--disabled):focus,
.ais-ClearRefinements .ais-ClearRefinements-button:not(.ais-ClearRefinements-button--disabled):hover {
  color: var(--highlight-bright);
}
.ais-search-results-header .ais-toggle-filters[aria-expanded=true] {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  flex: 1 1 0%;
  justify-content: space-between;
  padding-left: 0;
}
.ais-search-results-header .ais-toggle-filters[aria-expanded=true] .button-label {
  font-family: var(--display-font);
  font-size: 1.375rem;
  letter-spacing: .025em;
  line-height: 1.5;
  text-transform: uppercase;
}
.ais-search-results-header .ais-toggle-filters .icon-close,
.ais-search-results-header .ais-toggle-filters[aria-expanded=true] .icon-filter {
  display: none;
}
.ais-search-results-header .ais-toggle-filters[aria-expanded=false] .icon-filter {
  display: inline-block;
}
.ais-search-results-header .ais-toggle-filters[aria-expanded=true] .button-icon {
  position: relative;
}
.ais-search-results-header .ais-toggle-filters[aria-expanded=true] .button-icon:before {
  content: "Apply";
  font-weight: 500;
  padding: .5em 1em;
  background: var(--light-gray-v2);
  color: var(--dark-gray);
  border: 1px solid var(--light-gray-v2);
  transition: border .3s ease-in-out;
  border-radius: 25%/50%; 
}
.ais-search-results-header .ais-toggle-filters[aria-expanded=true]:active .button-icon:before,
.ais-search-results-header .ais-toggle-filters[aria-expanded=true]:hover .button-icon:before {
  border-color: var(--dark-gray);
}
.ais-search-results-header .ais-toggle-filters[aria-expanded=true] + #clear-refinements {
  display: flex;
}
.mobile-footer-buttons {
  margin-bottom: 1em;
  text-align: right;
}
.mobile-footer-buttons .ais-ClearRefinements-button {
  margin-right: -0.375em;
}
@media ( min-width: 56.25em ) {
  .ais-search-results-header {
    flex-wrap: wrap;
  }
  .ais-search-results-header .ais-toggle-filters,
  .ais-search-results-header .ais-toggle-filters[aria-expanded=true] {
    display: none;
  }
  #clear-refinements {
    display: block;
    position: static;
    width: 100%;
  }
  .ais-ClearRefinements .ais-ClearRefinements-button {
    display: inline-block;
    font-size: 12px;
    font-size: .75rem;
    margin-top: 2em;
    padding: 1em 1.5em;
    text-decoration: none;
    text-transform: uppercase;
    transition: all .3s ease-in-out;
    letter-spacing: 0.125em;
    color: var(--mid-gray);
    border: 1px solid var(--mid-gray);
  }
  #clear-refinements-footer .ais-ClearRefinements-button {
    margin-top: 0;
  }
  .ais-ClearRefinements .ais-ClearRefinements-button:not(.ais-ClearRefinements-button--disabled) {
    color: var(--dark-gray);
    border: 1px solid var(--dark-gray);
  }
  .ais-ClearRefinements .ais-ClearRefinements-button:not(.ais-ClearRefinements-button--disabled):active,
  .ais-ClearRefinements .ais-ClearRefinements-button:not(.ais-ClearRefinements-button--disabled):focus,
  .ais-ClearRefinements .ais-ClearRefinements-button:not(.ais-ClearRefinements-button--disabled):hover {
    color: var(--white);
    background-color: var(--dark-gray);
    border: 1px solid var(--dark-gray);
  }
  .mobile-footer-buttons {
    display: none;
  }
}
.ais-RangeSlider {
  margin-bottom: 4rem;
  margin-left: 1rem;
  width: 75%;
}
.ais-RangeSlider .rheostat {
  height: 1rem;
  margin-bottom: 2.5rem;
  margin-top: 2.5rem;
  overflow: visible;
  position: relative;
}
.ais-RangeSlider .rheostat-background {
  display: none;
}
.ais-RangeSlider .rheostat-handle {
  margin-left: -.75rem;
  top: 50%;
  transform: translateY(-50%);
}
.ais-RangeSlider .rheostat-progress {
  --tw-bg-opacity: 1;
  background-color: var(--mid-gray);
  height: .0625rem;
  position: absolute;
  top: 50%;
}
.rheostat-handle {
  --tw-border-opacity: 1;
  --tw-bg-opacity: 1;
  background-color: var(--white);
  border-color: var(--mid-gray);
  border-radius: 9999px;
  border-style: solid;
  border-width: 1px;
  cursor: grab;
  height: 1.25rem;
  position: relative;
  width: 1.25rem;
  z-index: 1;
}
.rheostat-marker {
  background-color: #aaa;
  height: .75rem;
  margin-left: -.0625rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: .0625rem;
}
.rheostat-marker--large {
  height: .5rem;
}
.rheostat-value {
  display: none;
}
.rheostat-tooltip {
  font-size: .875rem;
  left: 50%;
  margin-top: .25rem;
  position: absolute;
  text-align: center;
  top: 100%;
  transform: translateX(-50%);
}
.ais-Hits-list {
  display: grid;
  grid-template-columns: 1fr;
  margin: 0;
  column-gap: 1em;
  row-gap: 3em;
}
.ais-Hits-list .ais-Hits-item {
  width: 100%;
  max-width: 18em;
  margin: 0 auto;
}
@media ( min-width: 37.5em ) {
  .ais-Hits-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media ( min-width: 50em ) {
  .ais-Hits-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media ( min-width: 56.25em ) {
  .ais-Hits-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media ( min-width: 72em ) {
  .ais-Hits-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media ( min-width: 85em ) {
  .ais-Hits-list {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media ( min-width: 98em ) {
  .ais-Hits-list {
    grid-template-columns: repeat(5, 1fr);
  }
}
.ais-Hits-item article {
  height: 100%;
  position: relative;
}
.ais-Hits-item .product-flex {
  height: 100%;
  display: flex;
  flex-direction: column;
  text-align: center;
}
.ais-Hits-item .ais-hits--thumbnail {
  float: none;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  height: 20.375em;
  margin: 0 0 .5em;
}
.ais-Hits-item .ais-hits--thumbnail img {
  height: 20.375em;
  width: auto !important;
  transition: transform .3s ease-in-out;
  object-fit: cover;
}
.ais-Hits-item .ais-hits--thumbnail a:active img,
.ais-Hits-item .ais-hits--thumbnail a:focus img,
.ais-Hits-item .ais-hits--thumbnail a:hover img {
  transform: scale(1.03);
  transition: transform .3s ease-in-out;
}
.ais-Hits-item .product_name {
  margin-bottom: auto;
  padding: 0 .5em;
}
.ais-Hits-item a.product_name {
  text-decoration: none;
  transition: color .3s ease-in-out;
}
.ais-Hits-item .product_price {
  font-weight: 700;
  margin: .5em auto .75em;
}
.ais-search-results-pagination {
  margin-top: 2em;
  text-align: center;
}
.ais-search-results-pagination li {
  margin-left: .5rem;
  margin-right: .5rem;
}
.ais-search-results-pagination a,
.ais-search-results-pagination a:visited {
  color: var(--dark-gray);
}
.ais-search-results-pagination li.ais-Pagination-item--selected {
  --tw-bg-opacity: 1;
  background-color: var(--dark-gray);
  border-radius: 9999px;
  height: 2rem;
  width: 2rem;
}
.ais-search-results-pagination li.ais-Pagination-item--selected a,
.ais-search-results-pagination li.ais-Pagination-item--selected a:visited {
  color: var(--white);
}
.ais-filter-group:not(:last-child) {
  --tw-border-opacity: 1;
  border-bottom-width: 1px;
  border-color: var(--mid-gray);
  border-style: solid;
  margin-bottom: 2rem;
}
@media only screen and ( min-width: 56.25em ) {
  .ais-filter-group-mobile-only {
    display: none;
  }
}
.ais-filter-group .widgettitle {
  display: flex;
  font-size: 1.25em;
  justify-content: space-between;
  margin-bottom: .8em;
  text-transform: capitalize;
}
.ais-filter-group .widgettitle button {
  display: none;
}
@media only screen and ( min-width: 56.25em ) {
  .ais-filter-group .widgettitle button {
    display: block;
    height: 1rem;
    margin-right: .5rem;
    padding: 0;
    position: relative;
    width: 1rem;
  }
  .ais-filter-group .widgettitle button:after,
  .ais-filter-group .widgettitle button:before {
    --tw-bg-opacity: 1;
    background-color: var(--mid-gray);
    content: "";
    height: .125rem;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform-origin: top;
    transition-duration: .15s;
    transition-property: transform;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    width: 1rem;
  }
  .ais-filter-group .widgettitle button:before {
    left: .125rem;
    transform: translate(-50%) rotate(-45deg);
  }
  .ais-filter-group .widgettitle button:after {
    right: .125rem;
    transform: translate(50%) rotate(45deg);
  }
  .ais-filter-group .widgettitle button[aria-expanded=false]:after,
  .ais-filter-group .widgettitle button[aria-expanded=false]:before {
    transform-origin: bottom;
  }
  .ais-filter-group .widgettitle button[aria-expanded=false]:before {
    transform: translate(-50%) rotate(45deg);
  }
  .ais-filter-group .widgettitle button[aria-expanded=false]:after {
    transform: translate(50%) rotate(-45deg);
  }
}
.ais-filter-group .ais-RefinementList {
  display: flex;
  flex-direction: column;
}
.ais-filter-group .ais-RefinementList-searchBox {
  order: 10;
}
.ais-filter-group .ais-RefinementList-showMore,
.ais-filter-group .ais-HierarchicalMenu-showMore {
  background-color: transparent;
  color: var(--dark-gray);
  margin-bottom: 1rem;
  margin-top: 1rem;
  padding: 0;
  text-align: left;
  text-decoration-line: underline;
}
.ais-filter-group .ais-RefinementList-showMore:focus,
.ais-filter-group .ais-RefinementList-showMore:hover,
.ais-filter-group .ais-HierarchicalMenu-showMore:focus,
.ais-filter-group .ais-HierarchicalMenu-showMore:hover {
  background-color: transparent;
  color: var(--highlight-bright);
  text-decoration-line: none;
}
.ais-filter-group .ais-RefinementList-showMore--disabled {
  display: none;
}
.ais-SearchBox-form {
  margin-top: 1rem;
  position: relative;
}
.ais-SearchBox-form .ais-SearchBox-input {
  border: 1px solid var(--mid-gray);
  font-size: 1rem;
  line-height: 1.625;
  padding: .25rem .25rem .25rem 2.5rem;
  width: 83.333333%;
  -webkit-appearance: none; /* remove extra magnifying glass icon on iOS devices */
  -moz-appearance: none;
  appearance: none;
}
.ais-SearchBox-form .ais-SearchBox-input:focus-within {
  border-color: var(--dark-gray);
}
.ais-SearchBox-form .ais-SearchBox-submit {
  bottom: 0;
  left: 0;
  position: absolute;
  top: 0;
}
.ais-SearchBox-form .ais-SearchBox-submit svg {
  height: 1rem;
  width: 1rem;
}
.ais-RefinementList-list {
  margin-bottom: 0;
}
.ais-RefinementList-label,
.ais-HierarchicalMenu-label {
  align-items: flex-start;
  display: flex;
}
.ais-RefinementList-checkbox, 
.ais-HierarchicalMenu-label input[type="checkbox"] {
  --tw-border-opacity: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-color: var(--mid-gray);
  border-style: solid;
  border-width: 1px;
  height: 1.25rem;
  margin-left: 0;
  margin-right: .5rem;
  margin-top: .25rem;
  min-width: 1.25rem;
  position: relative;
  width: 1.25rem;
}
.ais-RefinementList-checkbox:before, 
.ais-HierarchicalMenu-label input[type="checkbox"]:before {
  box-shadow: inset 1rem 1rem var(--error-red);
  content: "";
  display: block;
  height: .75rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: scale(0) translate(-50%, -50%);
  width: .75rem;
}
.ais-RefinementList-checkbox:checked:before, 
.ais-HierarchicalMenu-label input[type="checkbox"]:checked:before {
  transform: scale(1) translate(-50%, -50%);
}
.ais-HierarchicalMenu-label input + span {
  text-transform: capitalize;
}
.ais-HierarchicalMenu-item--selected .ais-HierarchicalMenu-label {
  font-weight: 400;
}
.ais-RangeInput-input {
  text-align: center;
}
.ais-RangeInput-input,
.ais-SortBy-select {
  --tw-border-opacity: 1;
  border-color: var(--mid-gray);
  border-style: solid;
  border-width: 1px;
  line-height: 1.625;
  padding: .25rem;
}
#price-input .ais-RangeInput-submit {
  color: var(--dark-gray);
}
.ais-SortBy-select {
  font-family: var(--body-font);
  width: 75%;
}

/* page section template */
.page-section-header {
  text-align: center;
  max-width: 56.25em;
  margin: 0 auto 1em;
}
.full .page-section-header,
.wide .page-section-header {
  padding: 0 1em;
}
.page-section-custom .page-section-header .head-two {
  max-width: 56.25em;
  margin-bottom: 1em;
}
.white-text {
  color: var(--white);
}
.black-text {
  color: var(--dark-gray);
}
.green-text {
  color: var(--highlight-bright);
}
@media only screen and ( min-width: 56.25em ) {
  .full .page-section-header,
  .wide .page-section-header {
    padding: 0 2em;
  }
}

/* page section template hero */
.page-section-hero {
  position: relative;
  display: flex;
  justify-content: center;
  margin-top: .25em;
}
.page-section-hero .content {
  display: flex;
  flex-wrap: wrap;
}
.page-section-hero.text-over-image,
.hero-image,
.hero-image img {
  min-height: 22em;
}
.hero-text-wrap {
  display: flex;
  max-width: 100em;
  margin: 0 auto;
}
.page-section-hero.text-over-image .content {
  display: block;
}
.page-content.narrow-width .hero-text-wrap,
.center .hero-text-wrap,
.center-left .hero-text-wrap { 
  justify-content: center;
}
.text-only.left .content {
  justify-content: flex-start;
}
.text-only.right .content { 
  justify-content: flex-end;
}
.text-only.left .hero-text-wrap,
.text-only.right .hero-text-wrap { 
  margin: 0;
}
.right .hero-text-wrap { 
  justify-content: flex-end;
}
.hero-flex-wrap {
  max-width: 56.25em;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: center;
  text-align: left;
  padding: 2em 1em;
  width: 100%;
  gap: 1em 2em;
}
.text-over-image .hero-flex-wrap {
  position: absolute;
  height: 100%;
}
.center .hero-flex-wrap {
  text-align: center;
}
.right .hero-flex-wrap {
  text-align: right;
}
.top .hero-flex-wrap {
  align-content: flex-start;
}
.bottom .hero-flex-wrap {
  align-content: flex-end;
}
.page-section-hero.light-gray-bg .content {
  background-color: var(--light-gray-v1);
}
.page-section-hero.black-bg .content {
  background-color: var(--dark-gray);
}
.page-section-hero.green-bg .content {
  background-color: var(--highlight);
}
.hero-flex-wrap > * {
  flex: 100%;
}
.page-section-hero .head-one,
.page-section-hero .head-two {
    margin-bottom: 0;
}
.page-section-hero .cta {
  margin-top: 1em;
}
.page-section-hero.light-font .head-one,
.page-section-hero.light-font .head-two {
  font-weight: 100;
}
.page-section-hero.bold-font .head-one,
.page-section-hero.bold-font .head-two {
  font-weight: 600;
}
.hero-image {
  display: flex;
  flex-direction: column;
}
.hero-image img {
  object-fit: cover;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.hero-image-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.hero-image-link img {
  transition: all .4s ease-out;
}
.hero-image-link:hover img {
  transform: scale(1.01);
  transition: all .4s ease-out;
}
.text-over-image .hero-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.hero-link .cta + .cta {
  margin-left: 2em;
}
.hero-link + .hero-post-link-content {
  margin-top: 1.5em;
}
.hero-post-link-content a {
  color: inherit;
}
@media only screen and ( min-width: 56.25em ) {
  .page-section-hero .content {
    flex-wrap: nowrap;
  }
  .half-split .hero-text-wrap,
  .half-split .hero-image {
    flex: 50%;
  }
  .third-split .hero-text-wrap {
    flex: 33%
  }
  .third-split .hero-image {
    flex: 67%;
  }
  .hero-flex-wrap {
    padding: 2em;
  }
}

/* page section template cards */
.page-section-cards {
  text-align: center;
}
.page-section-cards:nth-of-type(odd) {
  background-color: var(--light-gray-v2);
}

/* card widths */
.page-section-cards .head-two {
  margin-bottom: 1em;
}
.page-section-cards .cards {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2em;
  row-gap: 3em;
  justify-content: center;
}
.page-section-cards .cards .card {
  flex: 0 1 100%;
}
.card,
.card-text {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.card-img {
  margin: 0 auto 1em;
}
.card-img-link img {
  transition: all .4s ease-out;
}
.card-img-link:hover img {
  transform: scale(1.015);
  opacity: .9;
  transition: all .4s ease-out;
}
.card-img img.circle {
  border-radius: 50%; 
}
.card-details {
  max-width: 36em;
  margin: 0 auto;
}
.card-text {
  justify-content: space-between;
}
.icon-left .card {
  display: flex;
  flex-direction: row;
  gap: 1em;
  align-items: center;
}
.icon-left .card-img {
  flex: 0 0 25%;
  max-width: 8em;
}
.icon-left .card-img img {
  margin-bottom: 0;
}
.icon-left .card-text {
  text-align: left;
  justify-content: flex-start;
}
.icon-left .card-text .card-details {
  margin: 0;
}
.icon-left .card-img img,
.icon-top .card-img img {
  width: 5.25em;
  height: auto;
}
.card .cta {
  margin-top: 16px;
  margin-top: 1rem;
}
@media only screen and ( min-width: 37.5em ) {
  .page-section-cards.col-3 .cards .card,
  .page-section-cards.col-4 .cards .card {
    flex-basis: calc(50% - 1em);
  }
}
@media only screen and ( min-width: 56.25em ) {
  .page-section-cards.col-2 .cards .card {
    flex-basis: calc(50% - 1em);
  }
  .page-section-cards.col-3 .cards .card {
    flex-basis: calc(33.33% - 1.333em);;
  }
  .page-section-cards.col-4 .cards .card {
    flex-basis: calc(25% - 1.5em);;
  }
}
@media only screen and ( min-width: 75em ) {
  .page-section-cards .cards,
  .page-section-cards.col-3 .cards {
    gap: 4em;
  }
  .page-section-cards.col-2 .cards .card {
    flex-basis: calc(50% - 2em);
  }
  .page-section-cards.col-3 .cards .card {
    flex-basis: calc(33.33% - 2.667em);;
  }
  .page-section-cards.col-4 .cards .card {
    flex-basis: calc(25% - 3em);;
  }
}


/* page-section-image-text */
.page-section-image-text .image-text-rows,
.page-section-image-text .image-text-row,
.page-section-image-text .image-text-img,
.page-section-image-text .image-text-txt {
  display: flex;
  flex-wrap: wrap;
}
.page-section-image-text .image-text-row {
  width: 100%;
}
.page-section-image-text .image-text-img img {
  min-height: 18.5em;
  object-fit: cover;
  overflow: hidden;
}
.page-section-image-text .image-text-img-link {
  display: flex;
  justify-content: center;
  align-items: center;
}
.page-section-image-text .image-text-img img,
.page-section-image-text .image-text-img-link,
.page-section-image-text .image-text-img-link img {
  width: 100%;
  height: 100%;
}
.page-section-image-text .image-text-img-link img {
  transition: all .4s ease-out;
}
.page-section-image-text .image-text-img-link:hover img {
  transform: scale(1.01);
  transition: all .4s ease-out;
}
.page-section-image-text .image-text-txt {
  width: 100%;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 2em 1em 2.5em;
}
.page-section-image-text .image-text-content {
  max-width: 36em;
  margin: 0 auto;
}
.page-section-image-text .image-text-row + .image-text-row {
  margin-top: 2em;
}
.image-text-row.white-bg {
  background-color: var(--white);
}
.image-text-row.light-gray-bg {
  background-color: var(--light-gray-v1);
}
.image-text-row.black-bg {
  background-color: var(--dark-gray);
}
.image-text-row.green-bg {
  background-color: var(--highlight);
}
.image-text-row.white-bg .image-text-row {
  background-color: var(--white);
}
.image-text-row.white-text .image-text-row {
  color: var(--light-gray-v1);
}
.image-text-row.black-text .image-text-row {
  color: var(--dark-gray);
}
.image-text-row.green-text .image-text-row {
  color: var(--highlight-bright);
}
.page-section-image-text .head-five {
  text-transform: initial;
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: .5em;
}
.page-section-image-text .head-two {
  margin-bottom: .25em;
}
.page-section-image-text .page-section-custom-content + .page-section-link,
.page-section-image-text .page-section-link + .page-section-custom-content {
  margin-top: 1em;
}
@media only screen and ( min-width: 56.25em ) {
  .page-section-image-text .image-text-row {
    flex-wrap: nowrap;
  }
  .page-section-image-text .image-text-row + .image-text-row {
    margin-top: 4em;
  }
  .image-text-row:nth-of-type(odd), 
  .image-text-row.image-right{
    flex-direction: row-reverse;
  }
  .image-text-row:nth-of-type(even), 
  .image-text-row.image-left{
    flex-direction: row;
  }
  .image-text-row .image-text-img,
  .image-text-row .image-text-txt {
    flex: 50%;
  }
  .image-text-row .image-text-txt {
    padding: 2em 2em 2.5em;
  }
}


/* page-section-media */
.media-row {
  display: flex;
  gap: 1em;
}
.media-row + .media-row {
  margin-top: 1em;
}
.media-row.media-full-width > * {
  width: 100%;
}
.media-row.media-half-split > * {
  width: 50%;
}
.media-row.media-two-thirds-split > div:first-child,
.media-row.media-one-third-split > div:last-child {
  width: 66.667%;
}
.media-row.media-one-third-split > div:first-child,
.media-row.media-two-thirds-split > div:last-child {
  width: 33.333%;
}
.media-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media only screen and ( min-width: 56.25em ) {
  .media-row {
    gap: 2em;
  }
  .media-row + .media-row {
    margin-top: 2em;
  }
}

/* 
.media-two-thirds-split
.media-one-third-split 
*/


/* page-section-custom */
.custom-content-hero .content {
  padding: 1em;
}
@media only screen and ( min-width: 56.25em ) {
  .custom-content-hero .content {
    padding: 2em 2em 0;
  }
}
/* info page template */
.info-head {
  margin: 1em auto 0;
  max-width: 96em;
  background-color: var(--light-gray-v1);
}
.info-head .content {
  max-width: 56.25em;
  margin: 0 auto;
  padding: 2em 1em;
}
.info-page-content .tfelegal > h1:first-of-type {
  display: none;
}
.info-head .jump-links a {
  white-space: nowrap;
}
.info-page-section {
  position: relative;
  padding-left: 4.25em;
}
.info-page-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 2.8125em;
  height: auto;
}
@media only screen and ( min-width: 56.25em ) {
  .info-head .content {
    padding: 3em 2em;
  }
  .info-page-content > .content {
    padding: 3em 2em 4em;
  }
}


/* algolia collection */
.varietal-hero .red-wines {
  background: var(--red-wines);
  color: var(--white);
}
.varietal-hero .white-wines {
  background: var(--white-wines);
}
.varietal-hero .rose-wines {
  background: var(--rose-wines);
}
.varietal-hero .sparkling-wines {
  background: var(--sparkling-wines);
}
.varietal-hero .sweet-and-dessert-wines {
  background: var(--dessert-wines);
  color: var(--white);
}
/* wine varietals */
.page-section.varietal-hero h1 {
  padding: 1.5rem 1rem;
  margin: 0 -1rem 2rem -1rem;
}
.page-section.varietal-hero .page-section-custom-content .text-cta {
  margin-top: 1rem;
}

@media only screen and ( min-width: 56.25em ) {
  .page-section.varietal-hero h1 {
    padding: 2rem;
    margin-left: -2rem;
    margin-right: -2rem;
  }
  .page-section.varietal-hero .content {
    padding: 1em 2em;
  }
}
@media only screen and ( min-width: 75em ) {
  .page-section.varietal-hero .content {
    padding: 0 2em 1em;
  }
}

/* wine-types  */
.page-section-varietals:nth-of-type(odd) {
  background-color: var(--white);
}
.page-section-varietals h2 {
  margin-bottom: 1em;
}
.page-section-varietals .cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20em, 1fr));
  row-gap: 2em;
}
.page-section-varietals .card {
  border: 1px solid var(--mid-gray);
  box-shadow: .1875em .1875em .3125em var(--mid-gray);
}
.card-varietal .description,
.card-varietal .pairing-icons,
.card-varietal .varietal-link {
  padding: 0 1em;
}
.card-varietal .head-four {
  text-transform: uppercase;
  padding: 1em ;
}
.red-wines .card-varietal .head-four {
  background: var(--red-wines);
  color: var(--white);
}
.white-wines .card-varietal .head-four {
  background: var(--white-wines);
}
.rose-wines .card-varietal .head-four {
  background: var(--rose-wines);
}
.sparkling-wines .card-varietal .head-four {
  background: var(--sparkling-wines);
}
.sweet-and-dessert-wines .card-varietal .head-four {
  background: var(--dessert-wines);
  color: var(--white);
}
.card-varietal .description,
.card-varietal .pairing-icons {
  text-align: left;
}
.card-varietal .description {
  margin-bottom: auto;
}
.card-varietal .pairing-icons {
  margin-top: 1em;
}
.pairing-icons img {
  width: 3em;
  height: auto;
  display: inline-block;
}
.pairing-icons img +img {
  margin-left: .5em;
}
.card-varietal .varietal-link {
  margin: 1.5em 0 2em;
}
.card-varietal .varietal-link a {
  text-decoration: underline;
}
@media only screen and ( max-width: 24em ) {
  .page-section-varietals .cards {
    grid-template-columns: repeat(100%, minmax(auto, 1fr));
  }
}
@media only screen and ( min-width: 56.25em ) {
  .page-section-varietals h2 {
    margin-bottom: 1.5em;
  }
}
@media only screen and ( min-width: 75em ) {
  .page-section-varietals h2 {
    margin-bottom: 2em;
  }
  .page-section-varietals.col-3 .cards {
    gap: 3em;
  }
  .card-varietal .head-four {
    margin-bottom: 2rem;
  }
  .card-varietal .description, 
  .card-varietal .pairing-icons, 
  .card-varietal .varietal-link {
    padding: 0 2em;
  }
  .card-varietal .pairing-icons {
    margin-top: 1.5em;
  }
  .pairing-icons img {
    width: 4em;
  }
  .card-varietal .varietal-link {
    margin: 2em 0 2.5em;
  }
}
@media only screen and ( min-width: 80em ) {
  .page-section-varietals .cards {
    grid-template-columns: repeat(auto-fit, minmax(22em, 1fr));
  }
}
/* wine varietals */
.varietal-header {
  display: flex;
  flex-wrap: wrap;
  gap: 2em;
}
.varietal-pairings {
  border: 1px solid var(--mid-gray);
  padding: 1em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  column-gap: 1.5em;
  row-gap: .5em;
}
.varietal-pairings h3 {
  text-transform: none;
  margin-bottom: 0;
  letter-spacing: 0.05em;
}
.varietal-pairings .pairing-icons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media only screen and ( min-width: 37.5em ) {
  .varietal-header {
    display: flex;
    gap: 1.5em;
    justify-content: space-between;
    align-items: center;
  }
  .varietal-description {
    flex: 0 1 calc(65% - 1.5em);
  }
  .varietal-pairings {
    flex: 0 1 35%;
    margin-top: 0;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .varietal-header {
    gap: 3em;
  }
  .varietal-description {
    flex: 0 1 calc(55% - 3em);
  }
  .varietal-pairings {
    flex: 0 1 45%;
    flex-wrap: nowrap;
    max-width: 32em;
  }
}


/* *** */
/* PAGE-SPECIFIC STYLES */
/* *** */


/* 404 page */
.page-not-found-wrap {
  background: url("/wp-content/themes/osws-2022/assets/images/pages/404-not-found/background.png") repeat scroll 130% 70% rgba(0, 0, 0, 0);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  height: 60vh;
  width: 100%;
  margin: 2em auto 1em;
}
.page-not-found-box {
  width: 100%;
  padding-top: 3vh;
  padding-bottom: 30vh;
  padding-left: 3vh;
  padding-right: 3vh;
}
.page-not-found-text {
  margin-bottom: 1.5em;
}
.page-not-found .cta {
  width: 20em;
  display: block;
  margin-top: 1em;
  text-align: center;
}
.page-not-found-email-box {
  width: 100%;
  padding: 1em;
  text-align: center;
}
@media only screen and (min-width: 56.25em) {
  .page-not-found-wrap {
    height: 70vh;
  }
  .page-not-found-box {
    padding-top: 6vh;
    padding-bottom: 20vh;
    padding-left: 6vh;
    padding-right: 3vh;
    width: 40%;
  }
  .page-not-found-email-box {
    padding: 2em;
  }
}
@media only screen and (min-width: 75em) {
  .page-not-found-wrap {
    height: 60vh;
  }
}
@media only screen and (min-width: 96em) {
  .page-not-found .cta {
    display: inline-block;
  }
  .page-not-found .cta + .cta {
    margin-left: 1em;
  }
}
/* about-us page */
.about-us .page-section-hero,
.about-us .hero-image  {
  max-height: 28em;
}
.about-us h1.head-primary {
  max-width: 12em;
}
.about-us .page-section-hero .hero-flex-wrap,
.about-us .about-intro .content {
  max-width: 52em;
}
.about-us .about-intro .content {
  text-align: center;
}
.about-us .about-intro .cta {
  margin: 1em auto;
}
.about-us .tasting-rooms {
  background-color: var(--light-gray-v1);
}
.tasting-rooms .page-section-header {
  max-width: 25em;
  margin: 0 auto 2em;
}
.tasting-rooms .head-two {
  text-align: center;
}
.tasting-room-cards-wrap {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2em;
  flex-shrink: 1;
}
.tasting-room-card {
  display: flex;
  flex-direction: column;
  flex: 0 1 24em;
}
.tasting-room-card-head {
  position: relative;
  margin-bottom: 1em;
}
.tasting-room-card-head a, 
.tasting-room-card-title {
  display: flex;
  align-items: center;
  justify-content: center;
}
.tasting-room-card-head a img {
  transition: opacity .2s ease-in-out;
}
.tasting-room-card-head a:active img,
.tasting-room-card-head a:focus img,
.tasting-room-card-head a:hover img {
  opacity: .85;
}
.tasting-room-card-title {
  position: absolute;
  width: 100%;
  display: flex;
  z-index: 1;
}
.tasting-room-card-title h3 {
  font-family: var(--body-font);
  text-align: center;
  font-size: 1.5em;
  padding: .5em 0;
  font-weight: 600;
  letter-spacing: .05em;
  color: var(--dark-gray);
  background: rgba(255,255,255,.75);
  text-transform: uppercase;
}
.tasting-room-card-head a:active h3,
.tasting-room-card-head a:focus h3,
.tasting-room-card-head a:hover h3 {
  color: var(--highlight);
}
@media only screen and (max-width: 25em) {
  .tasting-room-card-title h3 {
    font-size: 6vw;
  }
}
.tasting-room-card-footer {
  display: flex;
  align-items: center;
  margin-top: auto;
}
.price {
  display: inline-block;
  margin-left: 1.5em;
  margin-bottom: .25em;
}
.price .price-dollar,
.price .price-empty {
  display: none;
  width: 1.375em;
  height: auto;
}
.price.price-1 .price-dollar:nth-of-type(n + 4),
.price.price-2 .price-dollar:nth-of-type(n + 3),
.price.price-3 .price-dollar:nth-of-type(n + 2),
.price.price-4 .price-dollar:nth-of-type(n + 1),
.price.price-1 .price-empty:nth-of-type(n + 5),
.price.price-2 .price-empty:nth-of-type(n + 6),
.price.price-3 .price-empty:nth-of-type(n + 7) {
  display: inline;
}

@media only screen and (min-width: 56.25em) {
  .tasting-rooms .page-section-header {
    max-width: 100%;
    padding: 2em 0 1em;
  }
  .tasting-rooms .head-secondary {
    font-size: 32px;
    font-size: 2rem;
  }
  .tasting-room-cards-wrap {
    gap: 4em;
    padding-bottom: 3em;
  }
  .about-us .tasting-rooms {
    margin-bottom: 3em;
  }
}
/* /about-us page & tasting room section */
.page-content section.tasting-intro {
  padding: 1em 0 0;
}
.tasting-intro .head-two {
  text-align: center;
  padding: 0 1em .5em;
}
.tasting-intro-text .head-two {
  text-align: center;;
  padding: 0 1em;
  margin: 0;
}
.tasting-room-nav ul,
.tasting-room-nav li {
  box-sizing: border-box;
}
.tasting-room-nav ul {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}
.tr-logo-link,
.tr-logo-link a,
.tr-logo-link img {
  height: 5em;
}
.tr-logo-link {
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.tr-logo-link a,
.tr-logo-link img {
  transition: top .3s ease-in-out;
}
.tr-logo-link a {
  display: block;
  width: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
}
.tr-logo-link img {
  width: auto;
}
.tr-logo-wrap {
  position: relative;
}
.tr-logo-link .tr-logo-gray {
  position: absolute;
  left: 0;
  top: 0;
}
.tr-logo-link.current-page,
.tr-logo-link a:active,
.tr-logo-link a:hover,
.tr-logo-link a:focus {
  background-color: var(--light-gray-v1);
}
.tr-logo-color, 
.tr-logo-link.current-page .tr-logo-gray,
.tr-logo-link a:active .tr-logo-gray,
.tr-logo-link a:hover .tr-logo-gray,
.tr-logo-link a:focus .tr-logo-gray {
  opacity: 0;
}
.tr-logo-link.current-page .tr-logo-color,
.tr-logo-link a:active .tr-logo-color,
.tr-logo-link a:hover .tr-logo-color,
.tr-logo-link a:focus .tr-logo-color {
  opacity: 1;
}
.tasting-room-nav ul {
  flex-wrap: wrap;
  position: relative;
  padding-left: 40%;
}
.tr-logo-link {
  order: 2;
  width: 50%;
}
.tr-logo-link img {
  object-fit: contain;
}
.tr-logo-link.current-page {
  order: 1;
  width: 40%;
  position: absolute;
  left: 0;
  right: 0;
  padding: 1em;
}
.tr-logo-link.current-page,
.tr-logo-link.current-page a,
.tr-logo-link.current-page img {
  height: 10em;
}
@media only screen and (min-width: 56.25em) {
  .tr-logo-link.current-page {
    order: unset;
    width: auto;
    position: static;
    padding: 1em;
  }
  .tr-logo-link.current-page,
  .tr-logo-link.current-page a,
  .tr-logo-link.current-page img {
    height: 5em;
  }
  .tasting-room-nav ul {
    max-width: 100em;
    margin: 0 auto;
    padding: 0 2em;
  }
  .tr-logo-link {
    flex: 1;
    order: unset;
    text-align: center;
  }
}
@media only screen and (min-width: 75em){
  .tr-logo-link,
  .tr-logo-link a,
  .tr-logo-link img,
  .tr-logo-link.current-page,
  .tr-logo-link.current-page a,
  .tr-logo-link.current-page img {
    height: 7.5em;
  }
}

/* cheeseboard page */
.cheese-board-text,
.cheese-board-links {
  text-align: center;
}
.cheese-board-video {
  margin: 2em auto;
}
.cheese-board-links {
  margin: 0 auto 2em;
}
.cheese-board-links a.cta {
  margin: 0 .5em;
}
.cheese-board-links a.cta + a.cta {
  margin-top: 1em;
}

/* collection/brands */
.collection-head-text-wrap {
  max-width: 52.25em;
}
.content.brand-archive {
  padding-top: 0;
}
.square-archive-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1em;
  max-width: 100em;
}
.square-archive-card {
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}
.square-archive-card > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.square-archive-card-link {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  height: 100%;
  width: 100%;
  background-color: rgba( 0, 0, 0, .5 );
  display: flex;
  justify-content: center;
  align-items: center;
}
.square-archive-card-link,
.square-archive-card-link:visited,
.square-archive-card-link img {
  transition: all .3s ease-in-out;
}
.square-archive-card-link:active,
.square-archive-card-link:focus,
.square-archive-card-link:hover {
  background-color: rgba( 0, 0, 0, .65 );
  transition: all .3s ease-in-out;
}
.square-archive-card-link:active img,
.square-archive-card-link:focus img,
.square-archive-card-link:hover img {
  transform: scale(1.05);
}
@media only screen and ( max-width: 18.75em ) {
  .square-archive-cards {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media only screen and ( min-width: 37.25em ) {
  .square-archive-cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and ( min-width: 56.25em ) {
  .square-archive-cards {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5em;
  }
}
@media only screen and ( min-width: 75em ) {
  .square-archive-cards {
    grid-template-columns: repeat(5, 1fr);
    gap: 2em;
  }
}


/* collection/brands/brand-page */
.collection-brand #c7-content section > h1 {
  display: none;
}
.collection-brand-hero-image {
  display: flex;
  position: relative;
  width: 100%;
}
.collection-brand-hero-bg {
  width: 100%;
  height: 100%;
  min-height: 10em;
  object-fit: cover;
  aspect-ratio: 1380 / 375;
}
.collection-brand-hero-logo-wrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  height: 100%;
  display: flex;
  align-items: center;
  width: 100%;
  background: linear-gradient(
    to right,
    rgba( 0, 0, 0, .5 ) 12em,
    rgba( 0, 0, 0, 0 ) 24em
  );
}
.collection-brand-hero-logo {
  max-height: 100%;
  width: auto;
}
.collection-brand-hero {
  padding-bottom: 0;
}
.collection-brand-hero .collection-head-text-wrap {
  padding: 1.5em 1em 0;
}
.collection-brand-hero + .collection-brand.content {
  padding-top: 0;
  padding-bottom: 0;
}
.collection-brand .c7-product-collection .products-list > h1,
.collection-brand .c7-product-collection .products-list > .c7-product-collection__content {
  display: none;
}
.collection-brand .c7-product-collection__product-list {
  margin-bottom: 0;
}
.collection-brand .c7-collection-filters {
  display: none;
}
.single-brand .page-section + .page-section .content {
  padding-top: 1em
}
@media only screen and ( min-width: 37.5em ) {
  .collection-brand-hero-logo-wrap {
    background: linear-gradient(
      to right,
      rgba( 0, 0, 0, .5 ) 30%,
      rgba( 0, 0, 0, 0 ) 60%
    );
  }
}
@media only screen and ( min-width: 56.25em ) {
  .collection-brand-hero .collection-head-text-wrap {
    padding: 3em 2em 0;
    margin-bottom: 0;
  }
  .single-brand .page-section + .page-section .content {
    padding-top: 2em
  }
}

/* contact */
.email-icon,
.phone-icon {
  display: flex;
  align-items: center;
}
.email-icon:before,
.phone-icon:before {
  display: inline-block;
  flex-shrink: 0;
  content: "";
  background-size: 2em 2em;
  background-repeat: no-repeat;
  width: 2em;
  height: 2em;
  margin-right: 1em;
  filter: invert(37%) sepia(60%) saturate(350%) hue-rotate(29deg) brightness(90%) contrast(94%);
}
.email-icon:before {
  background-image: url(/wp-content/themes/osws-2022/assets/images/core/icons/email_icon.svg);
}
.phone-icon:before {
  background-image: url(/wp-content/themes/osws-2022/assets/images/core/icons/phone_icon.svg);
}
.email-icon {
  margin-bottom: 1em;
}
@media only screen and ( max-width: 22em ) {
  .email-icon,
  .phone-icon {
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
  }
  .email-icon:before,
  .phone-icon:before {
    width: 100%;
    margin: 1em 0 .5em;
    position: relative;
    left: calc(50% - 1em)
  }
}


/* corporate-gifting */
.corporate-gifting .page-section-hero .lower-head {
  display: block;
}
.corporate-gifting .page-section-hero .hero-post-link-content a {
  text-decoration: none;
}
.corporate-gifting .page-section-hero .hero-post-link-content a:active,
.corporate-gifting .page-section-hero .hero-post-link-content a:focus,
.corporate-gifting .page-section-hero .hero-post-link-content a:hover {
  color: var(--mid-gray);
}
.corp-gift-works .content {
  background-color: var(--corporate-cream);
  max-width: 96em;
}
.corp-gift-works .head-two {
  margin-bottom: 1.5em;
}
.corp-gift-works .cards {
  padding-top: 5em;
  row-gap: 7em;
}
.corp-gift-works .head-three {
  position: relative;
  width: 100%;
  text-transform: capitalize;
}
.corp-gift-works .head-three:before {
  content: "0";
  position: absolute;
  top: -3em;
  left: calc(50% - 1em);
  width: 2em;
  height: 2em;
  color: var(--white);
  background-color: var(--corporate-gold);
  border-radius: 50%;
  font-style: italic;
  padding-top: .375em;
}
.corp-gift-works .card:nth-of-type(1) .head-three:before {
  content: "1";
}
.corp-gift-works .card:nth-of-type(2) .head-three:before {
  content: "2";
}
.corp-gift-works .card:nth-of-type(3) .head-three:before {
  content: "3";
}
.corp-gift-works .card:nth-of-type(4) .head-three:before {
  content: "4";
}
.page-section-cards.corp-gift-sets {
  background-color: var(--white);
}
.corp-gift-sets .card {
  background-color: var(--corporate-cream);
  padding: 2em;
}
.corp-gift-sets .card .head-three {
  color: var(--corporate-gold);
  text-transform: capitalize;
}
.corp-gift-footer .content {
  max-width: 96em;
  padding-left: 2em;
  padding-right: 2em;
  text-align: center;
  background-color: var(--dark-gray);
  color: var(--white);
}
@media only screen and ( min-width: 37.5em ) {
  .corp-gift-footer .content {
    padding-left: 4em;
    padding-right: 4em;
  }
}

/* customer-service page */
.cr-update-notice .content {
  padding-bottom: 0;
}
.cr-update-notice .highlight-box {
  margin: 0;
}
.page-section-cards.icon-link-cards {
  background-color: var(--white);
}
.icon-link-cards .card {
  background-color: var(--light-gray-v1);
  padding: 1em;
}
.icon-link-cards .card .card-img {
  width: 4.375em;
  height: auto;
  margin: 0 auto;
}
.icon-link-cards .head-three {
  font-size: 20px;
  font-size: 1.25rem;
}
.icon-link-cards .head-three a {
  color: var(--dark-gray);
}
.icon-link-cards .head-three a:active,
.icon-link-cards .head-three a:focus,
.icon-link-cards .head-three a:hover {
  color: var(--highlight);
}
.cr-links-section li {
  margin-bottom: 1em;
}
.cr-links-section ul {
  margin-bottom: 4em;
}
.cr-links-section ul:last-of-type {
  margin-bottom: 0;
}
@media only screen and ( min-width: 56.25em ) {
  .icon-link-cards .card {
    padding: 1.5em 2em 2em;
  }
}


/* email-sign-up page */
.sign-up-content-upper .content {
  padding-top: 2.5em;
  padding-bottom: .5em;
}
.sign-up-content-lower .content {
  padding-top: 2em;
  padding-bottom: 2em;
}
.c7-form-wrapper {
  margin: 0em 1em;
}
.sign-up-form-elements .c7-form h3 {  
  display: none;
}
.sign-up-form-elements .c7-checkout__content__account {
  text-align: center;
  display: block;
}
.sign-up-form-elements .c7-btn {
  margin-left: auto;
  margin-right: auto;
}
.email-sign-up-title {
  text-align: center;
}
.email-sign-up-head {
  color: var(--highlight);
  font-family: var(--body-font);
  font-size: 1.25em;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 0em;
}
.sign-up-shop {
  margin: 0em auto;
  max-width: 5em;
}
.sign-up-cta {
  cursor: pointer;
}
.sign-up-benefits {
  margin-bottom: 0.5em;
  max-width: 96em;
  margin: 0 auto;
}
.sign-up-benefits-list {
  display: grid;
  grid-auto-flow: column;
  gap: 1rem;
  max-width: 100%;
  text-align: center;
  margin: 0em auto;
  justify-content: center;
}
.sign-up-benefits-item {
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  max-width: 13em;
  min-width: 9em;
  margin: 0em auto;
}
.email-sign-up-divider-box {
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 50em){
  .sign-up-benefits-item {
    max-width: 9em;
  }
}
@media only screen and (max-width: 37.5em){
  .sign-up-benefits-list {
    display: grid;
    grid-auto-flow: row; 
  }
  .email-sign-up-divider {
    border-bottom: 1px solid var(--mid-gray);
    max-width: 3.125em;
    width: 100%;
    margin-bottom: 1em;
  }
}
@media only screen and (min-width: 37.5em){
  .email-sign-up-divider {
    border-right: 1px solid var(--mid-gray);
    max-height: 4.4em;
    margin-left: 1em;
    margin-right: 1em;
  }
}


/* old email-sign-up page */
.email-sign-up h1 {
  text-align: center;
  width: 100%;
}
.email-sign-up-img,
.email-sign-up-txt {
  max-width: 36rem;
  margin: 0 auto 2em;
}
@media only screen and ( min-width: 75em) {
  .email-sign-up .site-main .content {
    display: flex;
    align-items: center;
    column-gap: 4em;
    flex-wrap: wrap;
    justify-content: center;
  }
  .email-sign-up-img,
  .email-sign-up-txt {
    margin: 2em auto 4em;
  }
}

/* environmentally-responsible-wines page */
.env-resp-commitments .head-two {
  max-width: 24em;
  margin-left: auto;
  margin-right: auto;
}
.env-resp-commitments .head-three {
  color: var(--highlight-bright);
  font: var(--body-font);
  font-size: 1.5em;
  font-weight: 600;
  letter-spacing: .05em;
  margin-bottom: 0;
}
.page-section-custom.certifications {
  border-top: 1em solid var(--light-gray-v1);
  text-align: center;
}
.page-section-custom.certifications.awards {
  border-top: none;
  padding-top: 0;
}
.page-section-custom.certifications .certifications-group {
  display: flex;
  gap: .75em;
  justify-content: center;
  align-items: center;
  margin: 1.5em 0 0;
} 
.page-section-custom.certifications .certifications-group a {
  width: 30%;
  width: calc(33% - 0.5em);
  flex: 1 0 calc(33% - 0.5em);
  max-width: 6.125em;
}
.page-section-custom.certifications .certifications-group:last-of-type {
  gap: .25em
}
.page-section-custom.certifications .certifications-group:last-of-type a {
  max-width: 9.5em;
}
.page-section-custom.taste {
  text-align: center;
  background-color: var(--light-gray-v1);
  margin-bottom: 2em;
}
.page-section-custom.taste .cta {
  display: inline-block;
  margin: 2em 1em 0;
}
@media only screen and (min-width: 22.5em){
  .page-section-custom.taste .cta {
    min-width: 24em; /* font @ 75% */
  }
}
@media only screen and (min-width: 56.25em){
  .page-section-custom.certifications .certifications-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.5em;
  }
  .page-section-custom.taste {
    padding: 1em 2em;
    margin-bottom: 3em;
  }
}
@media only screen and (min-width: 75em){
  .page-section-custom.certifications .certifications-wrap {
    gap: 2em;
  }
  .page-section-custom.certifications .certifications-group {
    gap: 1em;
  }
  .page-section-custom.certifications .certifications-group:last-of-type {
    gap: .5em;
  }
}



/* faq / frequently asked questions */
.faq .info-page-section h2 {
  padding-top: .5em;
}
.faq .info-page-section:nth-of-type(n + 2) {
  margin-top: 3em;
}
@media only screen and ( min-width: 56.25em ) {
  .faq .info-page-section h2 {
    padding-top: .325em;
  }
}


/* holiday-gift-guide page */
.holiday-gift-guide .page-section-cards {
  background-color: var(--white);
}
.holiday-gift-guide .main .content {
  padding-top: 0;
}
.holiday-gift-guide section + section .content {
  padding-top: 0;
}
.holiday-gift-guide .card-img img {
  width: 100%;
}
.holiday-gift-guide .content a.cta {
  background-color: #881616;
  color: #fff;
  border: 1px solid #881616;
}
.holiday-gift-guide .content a.cta + a.cta {
  margin-top: 1em;
}
.holiday-gift-guide .content a.cta:active,
.holiday-gift-guide .content a.cta:focus,
.holiday-gift-guide .content a.cta:hover {
  background-color: #fff;
  color: #881616;
}
.hgg-reverse .content {
  background-color: #881616;
  background-image: url(/wp-content/uploads/2021/11/hgg-hero-bg.png);
  color: var(--white);
  margin-bottom: 2em;
  max-width: 96em;
}
.holiday-gift-guide .hgg-reverse .content a.cta {
  background-color: #fff;
  color: #881616;
  border: 1px solid #fff;
}
.holiday-gift-guide .hgg-reverse .content a.cta:active,
.holiday-gift-guide .hgg-reverse .content a.cta:focus,
.holiday-gift-guide .hgg-reverse .content a.cta:hover {
  background-color: #881616;
  color: #fff;
}
@media only screen and ( min-width:37.5em ) {
  .holiday-gift-guide .content a.cta + a.cta {
    margin-top: 0;
    margin-left: 1em;
  }
}
.hgg-hero .content {
  padding: 0 0 1em;
}
.hgg-hero-wrap {
  background-color: #881616;
  background-image: url(/wp-content/uploads/2021/11/hgg-hero-bg.png);
  position: relative;
  text-align: center;
  color: var(--white);
}
.hgg-hero-wrap-overlay {
  background: linear-gradient(transparent 70%, #fff 70%);
}
.hgg-hero h1 { 
  padding: 1em 1em .5em;
  margin-bottom: 0;
}
.hgg-hero-text {
  max-width: 42em;
  margin: 0 auto;
  padding: 0 1em 1.5em;
}
.hgg-hero-image {
  width: 90%;
  width: calc(100% - 2rem);
  margin: 0 auto;
}
.hgg-hero-wide {
  display: none;
}
.hgg-hero-subhead {
  position: absolute;
  bottom: 30%;
  width: 100%;
}
.hgg-hero-subhead h2 {
  color: #795E17;
  font-style: italic;
  text-transform: none;
  letter-spacing: .05em;
  font-weight: bolder;
  padding: .5em;
  background: rgba(255,255,255,.75);
  width: 70%;
  width: calc(100% - 2em);
  max-width: 9em;
  margin: 0 auto;
}
.hgg-hero-ctas {
  margin: 1em auto 2em;
  width: 90%;
  width: calc(100% - 2rem);
}
.hgg-hero a.cta {
  display: block;
}
@media only screen and (min-width:37.5em) {
  .hgg-hero .content {
    padding: 0 0 2em;
  }
  .hgg-hero-image {
    max-height: 50vh;
    overflow-y: hidden;
  }
  .hgg-inner-content h2 {
    width: 60%;
  }
  .hgg-hero a.cta {
    display: inline-block;
    width: calc(50% - .5em);
  }
  .hgg-hero-inner-wrap {
    position: absolute;
    bottom: 30%;
    width: 100%;
  }
  .hgg-hero-wrap-overlay {
    background: linear-gradient(transparent 80%, #fff 80%);
  }
  .hgg-hero-image {
    max-height: initial;
    width: 95%;
    width: calc(100% - 2rem);
  }
  .hgg-hero-wide {
    display: block;
  }
  .hgg-hero-mob {
    display: none;
  }
  .hgg-hero-inner-wrap {
    position: absolute;
    bottom: 1em;
    width: 100%;
  }
  .hgg-hero-inner-content {
    width: 70%;
    width: calc(100% - 8rem);
    max-width: 32em;
    margin: 0 auto;
    padding: 1em;
    background: rgba(255,255,255,.75);
  }
  .hgg-hero-subhead {
    position: static;
  }
  .hgg-hero-subhead h2 {
    background: transparent;
  }
  .hgg-hero-inner-content h2 {
    padding: 0;
    background: none;
    width: 100%;
    font-size: 2em;
  }
  .hgg-hero-ctas {
    margin-bottom: .25em;
  }
  .hgg-hero a.cta {
    width: auto;
  }
}
@media only screen and (min-width: 56.25em) {
  .hgg-hero .content {
    padding: 0 2em 3em;
  }
  .hgg-hero-inner-wrap {
    bottom: 20%;
  }
  .hgg-hero-wrap-overlay {
    background: linear-gradient(transparent 80%, #fff 80%);
  }
  .hgg-hero-image {
    width: calc(100% - 4rem);
  }
  .hgg-hero h1 { 
    font-size: 2.5em;
  }
}

.holiday-gift-guide section.hgg-gift-ideas .content {
  padding: 2em 1em;
  margin-bottom: 2em;
  background-color: transparent;
}
.hgg-gift-ideas .card-img img {
  border: .125em solid var(--white); 
  max-width: 17.25em;
}
.holiday-gift-guide .spice-up h2 {
  color: #881616;
  margin-bottom: 1em;
}
@media only screen and (min-width: 56.25em) { 
  .holiday-gift-guide section.hgg-gift-ideas .content {
    padding: 2em 2em 2.5em;
  }
  .holiday-gift-guide .spice-up h2 {
    margin-bottom: 1.5em;
  }
}

.hgg-deadlines {
  margin-bottom: 2em;
  text-align: center;
}
.hgg-deadlines-intro {
  background-color: #881616;
  background-image: url(/wp-content/uploads/2021/11/hgg-hero-bg.png);
  color: #fff;
  padding: 1.25em 1em 1.5em;
  margin-bottom: 2em;
}
.hgg-deadlines .deadlines dl {
  line-height: 1.4;
}
.hgg-deadlines .deadlines-section {
  margin-bottom: 2em;
}
.hgg-deadlines .second-deadlines-section h3 {
  display: inline-block;
  margin: 0 auto 0.65em;
  padding-top: 1em;
  border-top: 1px solid;
}
.hgg-shipping-deadlines-text {
  margin: 0 auto;
  max-width: 56.25em;
}
@media only screen and (min-width: 44em) { 
  .hgg-deadlines .deadlines-section {
    float: left;
    width: 31%;
  }
  .hgg-deadlines .second-deadlines-section {
    margin-left: 2.5%;
    padding-left: 2.5%;
    border-left: 1px solid;
  }
  .hgg-deadlines .second-deadlines-section h3 {
    padding-top: 0;
    border-top: 0;
  }
}



/* homepage / frontpage */
.home .page-section-cards {
  background-color: var(--white);
}
.home .page-section-cards .content {
  padding-top: 0;
}
.homepage-handpicked .c7-personalization > div > h2 {
  text-align: center;
  padding: 0 1em;
}
.homepage-handpicked .content {
  padding: 3em 0 2em;
  max-width: 96em;
}
.homepage-handpicked .c7-personalization,
.homepage-handpicked .c7-personalization__content {
  margin-bottom: 0;
}
.homepage-handpicked .c7-product-collection .products-list > h1 {
  display: none;
}
.homepage-handpicked .c7-product-collection {
  padding-top: 2em;
}
.homepage-handpicked .c7-product-collection .c7-product-collection__product-list {
  display: flex;
  padding: 0 1em 2em;
  margin-bottom: 0;
  overflow-x: auto;
  justify-content: initial;
  flex-wrap: nowrap;
}
.homepage-handpicked .c7-product-collection .product {
  flex: 1 0 13em;
}
@media only screen and ( min-width: 37.5em ) {
  .homepage-handpicked .c7-product-collection {
    padding-top: 3em;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .homepage-handpicked .c7-personalization > div > h2 {
    padding: 0 2em;
  }
}
.home .page-section-image-text .content {
  padding-top: 0;
}

/* homepage social section */
.page-section-social .content {
  padding-top: 0;
}
.page-section-social .page-section-header {
  margin-bottom: 2em;
}
.page-section-social .page-section-header .head-two{
  margin-bottom: .25em;
}
/* reset social plugin built-in css */
.page-section-social #sb_instagram.sbi_col_1 #sbi_images .sbi_item, 
.page-section-social #sb_instagram.sbi_col_1.sbi_disable_mobile #sbi_images .sbi_item {
  width: auto;
}
@media only screen and (max-width: 800px) {
  .page-section-social #sb_instagram.sbi_tab_col_1 #sbi_images .sbi_item {
    width: auto;
  }
}
/* end reset */
.page-section-social #sbi_images {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}
.page-section-social #sbi_images .sbi_item {
  flex: calc(50% - .5em);
}
@media only screen and ( max-width: 23.375em ) {
  .page-section-social #sbi_images .sbi_item {
    flex: 100%;
  }
}
@media only screen and ( min-width: 37.5em ) {
  .page-section-social #sbi_images .sbi_item {
    flex: calc(33.33% - .667em);
  }
}
@media only screen and ( min-width: 75em ) {
  .page-section-social #sbi_images .sbi_item {
    flex: calc(16.666% - .83335em);
  }
}

/* merchandise */
.page-template-commerce7-collection-merchandise-detail .collection-head .content {
  padding-bottom: 0;
}
.merchandise-selector {
  justify-content: center;
  margin-bottom: .5em;
  margin-top: 2em;
  max-width: 96em;
}
.merchandise-nav > * {
  flex-basis: 100%;
}
.merchandise-nav {
  display: grid;
  grid-auto-flow: row;
  grid-auto-columns: 1fr;
  gap: 1rem;
  max-width: 100%;
  font: var(--body-font);
  font-size: 1.125em;
  text-transform:uppercase;
  letter-spacing: 0.125em;
}
.merchandise-nav a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 4em;
  padding: 1em;
  color: var(--white);
  font: var(--body-font);
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
  text-decoration: none;
  border-style: solid;
  border-width: .125em;
  border-color:var(--blue);
  background-color: var(--blue);
  transition: all .3s ease-in-out;
}
.merchandise-nav a:visited {
  transition: all .3s ease-in-out;
}
.merchandise-nav a:active,
.merchandise-nav a:focus,
.merchandise-nav a:hover {
  color: var(--blue);
  background-color: var(--white);
  border-style: solid;
  border-width: .125em;
  border-color:var(--blue);
}
@media (min-width: 56.25em) {
  .merchandise-nav {
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
  }
}
@media (min-width: 75em) {
  .merchandise-nav a {
    height: 6em;
  }
}
@media only screen and (min-width: 26em) {
  .merchandise-nav {
    grid-template-columns: repeat(2,1fr);
  }
}
.merchandise-back {
  margin-bottom: 2em;
}

 /* /wine-cocktail-mocktail-recipes */
.recipe-cta-extra-space {
  margin-bottom: 2em;
}

/* /recipe/wine-cocktails  */
/* /recipe/wine-mocktails  */
/* /recipe/food  */

/* recipe sidebar navigation */
.recipes-nav {
  display: flex;
  flex-wrap: wrap;
  row-gap: 2em;
  color: var(--dark-gray);
  font-weight:700;
  font-size: 1em;
  text-decoration: none;
  margin-bottom: 2em;
  text-align: center;
}
.recipes-nav .recipes-cat-col {
  width: 100%;
}
.recipes-nav a {
  color: var(--dark-gray);
  font: var(--body-font);
  font-size: 1.125em;
  font-weight:200;
  text-decoration: none;
}
.recipes-nav a:visited {
  transition: all .3s ease-in-out;
}
.recipes-nav a:active,
.recipes-nav a:focus,
.recipes-nav a:hover {
  color: var(--highlight-bright);
  text-decoration: underline;
}
.recipes-nav a.active {
  color: var(--highlight-bright);
  font-weight: 600;
  pointer-events: none;
  text-decoration: none;
}
@media only screen and (min-width: 40em) {
  .recipes-nav:not(.recipes-nav-cocktails) {
    display: flex;
    justify-content: center;
    column-gap: 4em;
    text-align: left;
  }
  .recipes-nav .recipes-cat-col {
    width: auto;
  }
  .recipes-nav .recipes-cat-col:first-child {
    min-width: 4em;
  }
  .recipes-nav .recipes-cat-col:not(:first-child) {
    min-width: 11em;
  }
}
@media only screen and (min-width: 56.25em) {
  .recipes-nav-cocktails {
    text-align: left;
  }
}

/* recipe links */
.recipe-product-link {
  display: block;
  color: var(--dark-gray);
  text-transform: uppercase;
  font: var(--body-font);
  font-size: 1em;
  margin-top: 1.5em;
}
.recipe-product-link,
.recipe-product-link:visited {
  transition: all .3s ease-in-out;
  color: var(--dark-gray);
}
.recipe-product-link:active,
.recipe-product-link:focus,
.recipe-product-link:hover {
  color: var(--highlight-bright);
}
.recipe-back {
  margin-top: 4em;
}
.recipe-back-link {
  display: block;
  color: var(--dark-gray);
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  font: var(--body-font);
  font-size: 1em;
}
.recipe-back-link-footer {
  margin-bottom: 3rem;
}
.recipe-back-link,
.recipe-back-link:visited {
  transition: all .3s ease-in-out;
  color: var(--dark-gray);
}
.recipe-back-link:active,
.recipe-back-link:focus,
.recipe-back-link:hover {
  color: var(--highlight-bright);
  text-decoration: underline;
}

/* check this */
.c7-buy-variant {
  text-align: center;
}

/* recipe pagination */
.recipes-pagination {
  text-align: center;
  font-size: 1.0625rem;
  box-sizing: border-box;
}
.recipes-pagination a {
  color: var(--dark-gray);
  margin-left: .5em;
  margin-right: .5em;
}
.page-numbers.current {
  color: var(--white);
  text-decoration: underline;
  background-color: var(--dark-gray);
  padding: .375em .75em;
  border-radius: 625em;
  height: 2rem;
  width: 2rem;
  font-weight:700;
}
.next.page-numbers {
  color: var(--dark-gray);
  text-decoration: none;
}
.prev.page-numbers {
  color: var(--dark-gray);
  text-decoration: none;
}
.recipes-load-more { 
  display: none;
  margin: 2em auto;
  text-align: center;
}

/* recipe hero */
.recipes-hero,
.cocktail-link,
.no-alcohol-link,
.recipe-wine-cocktail-link {
  position: relative;
  background-image: url(/wp-content/uploads/2022/11/cocktails-mocktails-hero-scaled.jpg);
  min-height: 16em;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  max-width: 96em;
  margin: 0 auto;
}
.recipes-hero-wrap {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  max-width: 96em;
}
.recipes-hero.cocktail-hero {
  background-image: url(/wp-content/uploads/2021/11/mocktail-hero.jpg);
}
.recipes-hero.food-hero {
  background-image: url(/wp-content/uploads/2024/10/OS_food_recipes_header.jpg);
}
.mocktails-hero .recipes-hero-wrap {
  top: 25%;
}
.recipes-hero-overlay {
  text-align: center;
  width: 90%;
  max-width: 25em;
  margin: 10% auto;
  background: rgba(255,255,255,.85);
  padding: 1em;
}
.basic-page-content > .content .recipes-hero h1 {
  margin-bottom: .25em;
}
.recipes-hero-text { 
  color: #fff;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  max-width: 14em;
}
@media only screen and (max-width: 57.5em) {
  .page-section-hero.recipes-hero,
  .page-section-hero.recipes-hero .hero-image,
  .page-section-hero.recipes-hero .hero-image img,
  .page-section-hero.cocktail-type-hero, 
  .page-section-hero.cocktail-type-hero .hero-image,
  .page-section-hero.cocktail-type-hero .hero-image img {
    min-height: 13em;
    max-height: 13em;
  }
}

/* recipe card */
.page-section-recipes #recipe-title {
  margin-bottom: 1em;;
}
.recipes-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: start;
  row-gap: 3em;
  margin-bottom: 2em;
}
.recipe-card {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  max-width: 30em;
  background: #fff;
}
.recipe-card-img {
  max-width: 100%;
  margin-bottom: 1em;
}
.recipe-card-text {
  text-align: left;
}
.recipe-card-text h3 {
  text-transform: uppercase;
  font-size: 1.5em;
  margin: 0 auto .5em;
  font-size: 1.5em;
}
.recipe-card .card-link {
  margin-top: 1.5em;
}
@media screen and (min-width: 30em) {
  .recipes-cards {
    row-gap: 2em;
  }
  .recipe-card {
    padding: 1em;
    border: 1px solid #C4C4C4;
  }
}
@media screen and (min-width: 37.5em) {
  .recipe-card {
    display: flex;
    flex-direction: row;
    flex-grow: 1;
    max-width: 100%;
    gap: 1em;
  }  
  .recipe-card-img,
  .recipe-card-text {
    width: calc(50% - .5em);
  }
  .recipe-card-img {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 56.25em) {
  .page-section-recipes #recipe-title {
    margin-bottom: 2em;;
  }
  .recipes-wrapper {
    display: flex;
    gap: 2em;
  }
  .recipes-nav {
    flex: 0 0 14em;
    flex-wrap: wrap;
    justify-content: left;
    align-content: start;
  }
  .recipes-cat-col {
    flex: 0 1 100%;
  }
}
@media screen and (min-width: 70em) {
  .recipes-nav {
    flex: 0 0 16em;
  }
  .recipe-card {
    gap: 2em;
    padding: 2em;
  }
  .recipe-card-img {
    width: calc(45% - 1em);
  }
  .recipe-card-text {
    width: calc(55% - 1em);
  }
}
@media screen and (min-width: 90em) {
  .recipes-nav {
    flex: 0 0 20em;
  }
  .recipe-card-img {
    width: calc(40% - 1em);
  }
  .recipe-card-text {
    width: calc(60% - 1em);
  }
}

/* recipe description */
.recipe-description {
  margin-bottom: 2em;
  text-align: left;
}

/* cocktail links */
.cocktail-link,
.recipe-wine-cocktail-link,
.no-alcohol-link {
  background-image: url(/wp-content/uploads/2021/11/cocktail-mocktail-link.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin: 0 auto 2em ;
}
.cocktail-link-text {
  position: absolute;
  top: 10%;
  width: 100%;
  padding: 1em;
  color: var(--dark-gray);
  text-align: center;
}
.cocktail-link .cta {
  color: var(--dark-gray);
  background-color: var(--light-gray-v1);
  text-decoration: none;
}
.cocktail-link .cta:active,
.cocktail-link .cta:focus,
.cocktail-link .cta:hover {
  color: var(--light-gray-v1);
  background-color: var(--dark-gray);
  border: 1px solid var(--dark-gray);
}
.mocktail-link {
  background-image: url(/wp-content/uploads/2022/11/cocktails-mocktails-bottom-scaled.jpg);
}
.mocktails-hero .recipes-hero-wrap {
  top: 25%;
}
.no-alcohol-link {
  background-image: url(/wp-content/uploads/2021/11/mocktail-nonalcoholic-link.jpg);
}
.no-alcohol-link .cocktail-link-text {
  top: 20%;
  color: var(--dark-gray);
}
.no-alcohol-link .cocktail-link-text h2 {
  max-width: 12em;
  margin-left: auto;
  margin-right: auto;
}
.recipe-wine-cocktail-link {
	background-image: url(/wp-content/uploads/2022/03/winecocktails_recipe_banner.jpg);
}
.recipe-wine-cocktail-link .cocktail-link-text {
  top: 10%;
  color: #333;
}
.recipe-wine-cocktail-link .cocktail-link-text h2 {
  max-width: 16em;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 30em) {
  .cocktail-link-text {
    top: 25%;
  }
}
@media only screen and (min-width: 56.25em) {
  .recipes-hero {
    min-height: 19.75em;
  }
  .mocktails-hero .recipes-hero-wrap {
    top: 35%;
  }
}
@media only screen and (max-width: 67em) {
  .recipe-wine-cocktail-link .cocktail-link-text h2 {
    max-width: 12em;
  }
  .recipe-wine-cocktail-link .cocktail-link-text {
    top: 4%;
  }
}

/* /recipes/wine-cocktails/recipe-page  */
/* /recipes/wine-mocktails/recipe-page */
/* /recipes/food/recipe-page */
.single-recipe .content {
  max-width: 75em;
}
.single-recipe .recipe-main {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4em;
}
.single-recipe .recipe-details {
  max-width: 37.25em;
}
.single-recipe .recipe-details h2 {
  font-size: 1.25em;
}
@media only screen and (min-width: 56.25em) {
  .single-recipe .recipe-details h2 {
    font-size: 1.5em;
  }
}
.single-recipe .recipe-details li,
.single-recipe .recipe-details p {
  font-size: .875em;
}
.single-recipe .recipe-details ul li {
  margin-left: 1.25em;
  list-style: disc;
}
.single-recipe .recipe-details ol li {
  margin-left: 1.25em;
  list-style: decimal;
}
.recipe-c7-link {
  text-align: center;
  flex-grow: 1;
}
.recipe-c7-link .card-img-center img {
  max-height: 25em;
  width: auto;
}
.recipe-c7-link h3 {
  text-transform: capitalize;
  font: var(--body-font);
  letter-spacing: 0.02em;
  font-size: 1.25em;
  font-weight: 500;
  margin: 0 auto .5em;
  max-width: 18em;
}

/* region - main region page */
.region-main-hero.text-over-image {
  min-height: unset;
  height: 15em;
}
.region-main-hero.text-over-image .hero-image,
.region-main-hero.text-over-image .hero-image img {
  object-position: right;
  min-height: unset;
  height: 15em;
}
.region-main-cards .content {
  padding: 2em 0;
}
.region-main-cards .card img {
  margin-bottom: 0;
}
.region-main-cards .card-text {
  padding: 0 1em;
}
.region-main-cards .card-details {
  margin-bottom: 1em;
}
@media only screen and ( min-width: 37.5em ) {
  .region-main-cards .content {
    padding: 2em 1em;
  }
  .region-main-cards .card-text {
    padding: 0;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .region-main-cards .content {
    padding: 4em 2em;
  }
  .region-main-hero.text-over-image,
  .region-main-hero.text-over-image .hero-image,
  .region-main-hero.text-over-image .hero-image img {
      height: 17.5em;
  }
}

/* region/individual-regions */
.region-header-nav.page-section-hero.text-over-image {
  overflow: hidden;
}
.region-header-nav.page-section-hero.text-over-image,
.region-header-nav .hero-image,
.region-header-nav .content .hero-image img {
  min-height: unset;
  height: 14em;
}
.region-header-nav.text-over-image .hero-flex-wrap {
  padding: 0 1em;
}
.region-header-nav h2 {
  margin-bottom: 0;
  font-size: 1.25rem;
}
.region-header-nav .region-list li {
  text-transform: uppercase;
}
.region-header-nav .region-list li a {
  color: var(--white);
  transition: all .3s ease-in-out;
}
.region-header-nav .region-list li a:active,
.region-header-nav .region-list li a:focus,
.region-header-nav .region-list li a:hover {
  color: var(--mid-gray);
  transition: all .3s ease-in-out;
}
.region-header-nav .hero-image {
  object-position: 85%;
  height: 150%;
  width: auto;
}
.region-hero .hero-image {
  object-fit: contain;
}
.region-featured-wineries .head-two {
  text-transform: none;
  font-size: 1.25rem;
  letter-spacing: .05em;
  margin-bottom: 1.5em;
}
.region-featured-wineries.page-section-cards {
  background-color: var(--white);
}
.region-featured-wineries.page-section-cards .content {
  padding-top: 0;
}
.region-featured-wineries .cards,
.region-featured-wineries .image-text-rows {
  padding-bottom: 3em;
  border-bottom: 1px solid var(--mid-gray);
}
.region-featured-wineries .region-winery-logo {
  max-width: 60%;
  margin-bottom: 0;
}
.region-featured-wineries .card-details {
  margin-bottom: auto;
}
@media only screen and ( min-width: 56.25em ) {
  .region-header-nav.page-section-hero.text-over-image {
    margin-bottom: 2em;
  }
  .region-header-nav .region-list li {
    display: inline-block;
    padding: 0 1em 0 1.25em;
  }
  .region-header-nav .region-list li + li {
    border-left: 1px solid var(--white);
  }
  .region-header-nav.page-section-hero.text-over-image,
  .region-header-nav .hero-image {
    height: 10em;
  }
  .region-header-nav .hero-image {
    object-position: right;
    width: 100%;
    height: auto;
  }
  .region-featured-wineries .head-two {
    font-size: 1.5rem;
    margin-bottom: 2em;
  }
  .region-featured-wineries .cards,
  .region-featured-wineries .image-text-rows {
    padding-bottom: 4em;
  }
  .region-featured-wineries .content {
    padding-bottom: 2em;
  }
}

/* shipping-info page */
.shipping-info h2 {
  margin-top: 3em;
}
.shipping-info h2:first-of-type {
  margin-top: 0;
}
.shipping-info .tab2 {
  width: 100%; 
  max-width: 1100em;
  margin-left: auto;
  margin-right: auto;
}
.shipping-info thead tr,
.shipping-info tbody tr:nth-of-type(even) { 
  background-color: var(--light-gray-v1); 
}
.shipping-info table {
  line-height: 1.4;
  margin: 1em 0;
  outline: 1px solid var(--dark-gray); 
}
.shipping-info .tab2 th { 
  font-weight: bold; 
  color: var(--highlight)
}
.shipping-info table td, 
.shipping-info table th { 
  padding: .75em; 
  border: 1px solid var(--light-gray-v2); 
  text-align: center;
}
.shipping-info table th { 
  border-top: 0;
}
.shipping-info table tr:last-of-type td {
  border-bottom: 0;
}
.shipping-info table th:first-of-type,
.shipping-info table td:first-of-type {
  border-left: 0;
}
.shipping-info table th:last-of-type,
.shipping-info table td:last-of-type {
  border-right: 0;
}
.shipping-info table.shipping td {
  padding: .625em 1.5em;
}
.ship-to-state tbody tr:nth-of-type(even) td {
  text-align: left;
}
.ship-to-state table {
  outline: 0;
}
.ship-to-state table th,
.ship-to-state table td {
  background-color: var(--white); 
  border: 0;
  text-align: left;
  padding: .75em 1em;
}
.ship-to-state table th,
.ship-to-state table tr:nth-of-type(odd) td {
  background-color: var(--light-gray-v1); 
  font-weight: bold;
  color: var(--highlight);
}
.ship-to-state table td.state-list {
  column-count: 2;
  white-space: nowrap;
}
h2#contact-us {
  margin-top: 2.25em;
}
@media only screen and (min-width: 46.875em) {
  .shipping-info table {
    margin: 2em 0 3em;
  }
  .ship-to-state {
    display: flex;
    column-gap: 1em;
  }
  .ship-to-state table {
    flex-basis: calc(50% - .5em);
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 56.25em ) {
  .ship-to-state {
    column-gap: 2em;
  }
  .ship-to-state table {
    flex-basis: calc(50% - 1em);
  }
}
@media only screen and (max-width: 46.875em) {
  .shipping-info table.tab2, 
  .shipping-info .tab2 thead, 
  .shipping-info .tab2 tbody, 
  .shipping-info .tab2 th, 
  .shipping-info .tab2 td, 
  .shipping-info .tab2 tr { 
    display: block; 
  }
  .shipping-info .tab2 td, 
  .shipping-info .tab2 th { 
    text-align: left;
  }
  .shipping-info .tab2 thead tr { 
    position: absolute;
    top: -9999px;
    left: -9999px;
  }
  .shipping-info .tab2 tr:nth-of-type(odd) {
    background: var(--white);
  }
  .shipping-info .tab2 td { 
    border: none;
    border-bottom: 1px solid var(--light-gray-v1); 
    position: relative;
    padding-left: 50%; 
  }
  .shipping-info .tab2 td:before { 
    position: absolute;
    top: 0.75em;
    left: 0.75em;
    width: 45%; 
    padding-right: .625em; 
  }
  .shipping-info .tab2 td:nth-of-type(1) { 
    padding-left: 0; 
    font-weight: bold; 
    text-align: center;
    background: var(--light-gray-v1); 
    color: var(--highlight); 
    border-color: var(--light-gray-v1);
  }
  .shipping-info .tab2.transit-times td:nth-of-type(2):before { content: "Carrier"; }
  .shipping-info .tab2.transit-times td:nth-of-type(3):before { content: "Processing Time"; }
  .shipping-info .tab2.transit-times td:nth-of-type(4):before { content: "Transit Time"; }

  .shipping-info .tab2.holiday-shipping td:nth-of-type(2):before { content: "Ground"; }
  .shipping-info .tab2.holiday-shipping td:nth-of-type(3):before { content: "Two-Day Air"; }
  .shipping-info .tab2.holiday-shipping td:nth-of-type(4):before { content: "Next-Day Air"; }
}



/* tasting-room pages */
.tasting-intro-main {
  background-color: var(--light-gray-v1);
  padding: 2em 1em;
  text-align: center;
}
.tasting-intro-text,
.tasting-intro-images,
.tasting-details-img,
.tasting-details-text,
.tasting-wine-club {
  max-width: 40em;
  margin: 0 auto;
}
.tasting-intro-text .head-primary {
  padding: 0;
  margin-bottom: 0;
}
.tasting-intro-text hr {
  height: 2px;
  width: 50%;
  background-color: var(--highlight);
  border: 0 none;
  margin: 1.5em auto;
}
.tasting-intro-text .head-history {
  color: var(--highlight);
  font-family: var(--body-font);
  font-size: 1.25em;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 1em;
}
.tasting-intro-images {
  margin-top: 2em;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 1em;
}
.tasting-intro-images img,
.tasting-details-img img {
  display: block;
  width: 100%;
}
.tasting-intro-images .large-image {
  flex-basis: 100%;
}
.tasting-intro-images .small-image {
  flex-basis: calc(50% - .5em);
}
.tasting-details-img {
  margin-bottom: 1em;
}
.tasting-details-text,
.tasting-wine-clubs {
  text-align: center;
}
a.tel-link {
  font-weight: bold;
  text-decoration: none;
}
.tel-link:active,
.tel-link:focus,
.tel-link:hover {
  text-decoration: underline;
}
.tasting-details-text .cta {
  display: inline-block;
  margin-bottom: 2em;
}
.tasting-visit + .tasting-wine-clubs {
  border-top: 1em solid var(--light-gray-v1);
}
.tasting-wine-club-icon {
  margin-bottom: 1em;
}
.tasting-wine-clubs .head-primary {
  margin-bottom: 1em;
}
.tasting-wine-clubs-wrap {
  padding-bottom: 2em;
}
.tasting-wine-club {
  max-width: 36em;
}
.tasting-wine-club p strong {
  font-weight: 600;
}
.tasting-wine-club ul {
  list-style: disc inside;
  margin-bottom: 1.5em;
}
.tasting-wine-club  + .tasting-wine-club  {
  margin-top: 3em;
}
section.tasting-rooms-back-links {
  background-color: var(--light-gray-v1);
  padding: 2em 1em;
  text-align: center;
  margin-bottom: 2em;
}
.tasting-rooms-back-links .back-link {
  display: block;
}
.tasting-rooms-back-links .back-link + .back-link {
  margin-top: 1em;
}
.tasting-rooms-back-links .back-link a {
  text-transform: uppercase;
  text-decoration: none;
  position: relative;
  font-weight: 600;
}
.tasting-rooms-back-links .back-link a:active,
.tasting-rooms-back-links .back-link a:focus,
.tasting-rooms-back-links .back-link a:hover {
  text-decoration: underline;
}
a.arrow:before {
  position: absolute;
  font-family:'FontAwesome';
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  font-weight: 400;
  left: -1em;
}
a.left-arrow:before {
  content: '\f104';
}
a.up-arrow:before {
  content: '\f106';
  left: -1.25em;
}
a.down-arrow:before {
  left: unset;
  right: -1.25em;
  content: '\f105';
}
a.right-arrow:before {
  left: unset;
  right: -1em;
  content: '\f107';
}
@media only screen and (min-width: 56.25em) {
  .tasting-intro-main .content,
  .tasting-visit .content,
  .tasting-wine-clubs-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2em;
    padding: 2em;
    max-width: 88em;
  }
  .tasting-intro-text,
  .tasting-intro-images,
  .tasting-details-img,
  .tasting-details-text,
  .tasting-wine-club {
    width: 50%;
  }
  .tasting-intro-text,
  .tasting-details-text,
  .tasting-wine-club {
    padding: 0 1em;
  }
  .tasting-intro-text .head-two {
    font-size: 32px;
    font-size: 2rem;
  }
  .tasting-intro-images {
    margin-top: 0;
  }
  .tasting-details-text .cta {
    margin-bottom: 4em;
  }
  .tasting-details-text .head-secondary {
    font-size: 24px;
    font-size: 1.5rem;
  }
  .tasting-wine-clubs-wrap {
    padding: 2em 0;
    justify-content: center;
    align-items: stretch;
    gap: 0;
    margin: 0 auto;
  }
  .tasting-wine-club {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 0 2em;
    margin: 0
  }
  .tasting-wine-club + .tasting-wine-club  {
    margin-top: 0;
    border-left: 2px solid var(--highlight-bright);
  }
  section.tasting-rooms-back-links {
    margin-bottom: 2.5em;
  }
  .tasting-rooms-back-links .back-link {
    display: inline-block;
  }
  .tasting-rooms-back-links .back-link + .back-link {
    margin-top: 0;
    margin-left: 4em;
  }
}
@media only screen and (min-width: 75em){
  .tasting-intro-text,
  .tasting-details-text {
    padding: 0 5%;
  }
  .tasting-wine-club {
    padding: 0 5%;
  }
}


/* terms page */
.tfelegal-terms > h2:first-of-type {
  margin-top: 0;
  font-family: var(--display-font);
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: normal;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-transform: uppercase;
}


/* virtual-experiences page */
.virtual-experiences .site-main .content {
  max-width: 75em;
}
.virtual-intro {
  text-align: center;
}
.virtual-img {
  margin-bottom: 2rem;
  max-width: 100%;
}
.virtual-intro h1 {
  margin: 1.5em 0;
  text-align: center;
}
.virtual-card,
.virtual-outro {
  clear: both;
}
.virtual-card {
  margin-top: 2rem;
}
.virtual-card-intro {
  text-align: center;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  padding-top: 1.25rem;
}
.virtual-card-intro p.topline {
  margin-bottom: .5rem;
  font-style: italic;
}
.virtual-card-intro p.subhead {
  margin-bottom: 1.5em;
}
.virtual-card-img {
  padding: 1.25rem 0;
  text-align: center;
  max-width: 20rem;
  margin: 0 auto;
}
.virtual-card-img img {
  max-width: 100%;
}
.virtual-card-text .description p {
  margin-bottom: 1em;
}
.virtual-card-text .included ul {
  padding-inline-start: 1.5rem;
  margin-left: 0;
}
.virtual-card-text .included li {
  margin-bottom: 0;
}
.virtual-card-text .included li+li,
.virtual-card-text .included li>ul {
  margin-top: .5rem;
}
.virtual-card-text .pricing p+p {
  margin-top: 0
}
.virtual-card-text .pricing p {
  margin-bottom: .5rem;
}
.virtual-card-text .pricing .pricing-note {
  font-style: italic;
}
.virtual-outro {
  text-align: center;
  margin-top: 2rem;
  border-top: 1px solid black;
  padding-top: 2rem;
}
a.underline {
  text-decoration: underline;
}
@media only screen and (min-width:56.25em) {
  .virtual-experiences .site-main .content {
    margin-bottom: 2em;
  }
  .virtual-text,
  .virtual-card-text {
    width: 65%;
    text-align: left
  }
  .virtual-img,
  .virtual-card-img {
    display: block;
    float: right;
    width: 30%
  }
  .virtual-card-img img {
    max-width: 100%
  }
  .virtual-card-text {
    padding: 1.25rem 0
  }
  .virtual-card-flex {
    display: flex;
    justify-content: space-between;
    align-items: center
  }
  .virtual-card:nth-of-type(even) .virtual-card-flex {
    flex-direction: row-reverse
  }
}



/* .wine-clubs page */
.page-section-hero.wine-clubs-hero .hero-flex-wrap {
  text-align: center;
}
.page-section-hero.wine-clubs-hero .content {
  background-color: #F2EDE9;
}
.wine-clubs-benefits .card {
  border: 1px solid var(--mid-gray);
  padding: 2em 2em 3em;
  box-shadow: .25em .25em .25em var(--light-gray-v2);
}
.wine-clubs-benefits .card .card-img {
  width: 5em;
  height: auto;
  margin: .5em auto 1em;
}
.wine-clubs-benefits .card ul li:before {
  content: '\2022';
  margin-right: .5em;
}
.wine-clubs-explore .content {
  padding: 2em 0;
}
.wine-clubs-explore .page-section-header {
  margin-bottom: 3em;
  padding: 0 1em;
}
#explore-wine-clubs {
  scroll-margin: 1.5em;
}
.wine-clubs-explore .image-text-img {
  position: relative;
}
.wine-clubs-explore .image-text-img:before {
  position: absolute;
  top: 1em;
  right: 1em;
  background-size: auto 4.25em;
  background-repeat: no-repeat;
  background-position-x: right;
  width: 4.25em;
  height: 4.25em;
  content: '';
}
.wine-clubs-explore .winemakers-selections .image-text-img:before {
  background-image: url(/wp-content/uploads/2022/11/wine_clubs-winesmakers_selections-icon.png);
} 
.wine-clubs-explore .quintessential-wines .image-text-img:before {
  background-image: url(/wp-content/uploads/2022/11/wine_clubs-quintessential_wines-icon.png);
} 
.wine-clubs-explore .everyday-wines .image-text-img:before {
  background-image: url(/wp-content/uploads/2022/11/wine_clubs-everyday_wines-icon.png);
} 
.wine-clubs-explore .exploration-series-wines .image-text-img:before {
  background-image: url(/wp-content/uploads/2022/11/wine_clubs-explorers_club-icon.png);
} 
.wine-clubs-explore .alcohol-free-wines-and-mixers .image-text-img:before {
  background-image: url(/wp-content/uploads/2022/11/wine_clubs-alcohol_free-icon.png);
} 
.wine-clubs-explore .image-text-img img {
  min-height: unset;
}

.wine-clubs-explore .image-text-txt {
  text-align: left;
}
.wine-clubs-explore .image-text-txt .head-two,
.wine-club-description .head-two {
  text-transform: none;
  color: var(--highlight-bright);
  margin-bottom: .75em;
  letter-spacing: 0.02em;
}
.wine-clubs-explore .image-text-txt ul li:before,
.wine-club-info ul li:before {
  content: '\2022';
  margin-right: .5em;
}
.wine-clubs-explore .image-text-txt .cta {
  margin-top: 1em;
}
@media only screen and (min-width: 37.5em) {
  .wine-clubs-explore .image-text-img:before {
    top: 2em;
    right: 2em;
    background-size: auto 6.5em;
    width: 6.5em;
    height: 6.5em;
  }
}
@media only screen and (min-width: 56.25em) {
  .page-section-hero.wine-clubs-hero .hero-flex-wrap {
    text-align: left;
  }
  .wine-clubs-explore .content {
    padding: 4em 2em;
  }
  .wine-clubs-explore .page-section-header {
    padding: 0;
  }
  .wine-clubs-benefits .page-section-header {
    margin-bottom: 3em;
  }
  .wine-clubs-explore .image-text-row:nth-of-type(odd) {
    flex-direction: row;
  }
  .wine-clubs-explore .image-text-row:nth-of-type(even) {
    flex-direction: row-reverse;
  }
}

/* .wine-clubs pages contact section */
/* on both general and individual wine clubs pages */
.club-contact {
  background: var(--dark-gray);
  color: var(--white);
  margin-bottom: 2em;
}
.club-contact .content {
  padding: 3em 1em;
  text-align: center;
}
.club-contact .content h2.head-four {
  font-size: 1.25em;
  margin-bottom: .5em;
  text-transform: uppercase;
}
.club-contact-details div {
  margin-top: 1.5em;
}
.club-contact-details a,
.club-contact-details a:visited {
  color: var(--white);
}
.club-contact-details a:active,
.club-contact-details a:focus,
.club-contact-details a:hover {
  color: var(--mid-gray);
}
.club-contact-details-phone:before,
.club-contact-details-email:before {
  content: "";
  width: 100%;
  height: 2.5em;
  margin-bottom: .5em;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
}
.club-contact-details-phone:before {
  background-image: url("/wp-content/themes/osws-2022/assets/images/core/icons/phone_icon_white.png");
}
.club-contact-details-email:before {
  background-image: url("/wp-content/themes/osws-2022/assets/images/core/icons/email_icon_white.png");
}
@media only screen and (min-width: 56.25em) {
  .club-contact .content {
    padding: 4em 2em;
    text-align: center;
  }
}

/* .wine-clubs individual pages */
.wine-club-hero.text-over-image {
  min-height: 18.75em;
}
.wine-club-hero.text-over-image .hero-image,
.wine-club-hero.text-over-image .hero-image img {
  width: 100%;
  height: 100%;
}
.wine-club-hero.text-over-image .hero-image img {
  object-position: 10%;
}
.wine-club-hero .hero-text-wrap {
  position: absolute;
  width: 100%;
  max-width: 96em;
  height: 100%;
  background-color: rgba( 0, 0, 0, .45 );
}
.wine-club-hero .hero-text {
  max-width: 56.25em;
  margin: 0 auto;
}
.wine-club-hero-icon {
  width: 4.625em;
  height: auto;
}
.wine-club-hero h1 {
  margin-top: .125em;
}
.wine-club-description .cta {
  margin-top: 1.5em;
}
.wine-club-description + .wine-club-info .content {
  padding-top: 0;
}
.wine-club-info .page-section-custom-content {
  font-size: 1.25em;
}
.wine-club-info .image-text-row {
  flex-direction: column-reverse;
}
.wine-club-benefits .content {
  padding: 1em;
}
.wine-club-links .content {
  padding: 2em 1em 3em;
}
.wine-club-links .cta {
  margin-bottom: 1.5em;
}
@media only screen and ( min-width: 37.5em ) {
  .wine-club-hero.text-over-image .hero-image {
    object-position: left;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .wine-club-info .image-text-row:nth-of-type(odd), 
  .wine-club-info .image-text-row.image-right{
    flex-direction: row-reverse;
  }
  .wine-club-info .image-text-row:nth-of-type(even), 
  .wine-club-info .image-text-row.image-left{
    flex-direction: row;
  }
  .wine-club-benefits .content {
    padding: 0 2em 1em;
  }
}


/* wine-club-hub page */
.wine-club-hub .wine-club-picker .intro {
  max-width: 36em;
  margin: 0 auto 2em;
  text-align: center;
}
@media only screen and (min-width: 56.25em) {
  .wine-club-hub .wine-club-picker .intro {
    margin-bottom: 4em;
  }
}
.wine-club-hub .wine-clubs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1em;
}
.wine-club-hub .wine-clubs .wine-club {
  font-size: 1.25em;
  max-width: 36em;
}
.wine-club-hub .wine-clubs .wine-club a {
  display: flex;
  position: relative;
}
.wine-club-hub .wine-clubs .wine-club a  {
  transition: all .3s ease-in-out;
}
.wine-club-hub .wine-clubs .wine-club a:active ,
.wine-club-hub .wine-clubs .wine-club a:focus ,
.wine-club-hub .wine-clubs .wine-club a:hover  {
  transform: scale(1.015);
}
.wine-club-hub .wine-clubs .wine-club a h2 {
  position: absolute;
  color: var(--white);
  text-decoration: none;
  top: 40%;
  width: 100%;
  margin: 0;
  padding: 1rem 2rem;
  text-align: center;
}
@media only screen and ( min-width: 56.25em ) {
  .wine-club-hub .wine-clubs {
    gap: 2em;
  }
  .wine-club-hub .wine-clubs .wine-club {
    flex-basis: calc(50% - 1em);
  }
  .wine-club-hub .wine-clubs .wine-club a h2 {
    font-size: 2.6vw;
  }
}
@media only screen and ( min-width: 75em ) {
  .wine-club-hub .wine-clubs .wine-club {
    flex-basis: calc(33% - 1.33em);
  }
  .wine-club-hub .wine-clubs .wine-club a h2 {
    font-size: 1.8vw;
  }
}


/* wine-club-hub shipment pages */
.page-section-hero.text-over-image.shipment-hero,
.page-section-hero.text-over-image.shipment-hero .hero-image,
.page-section-hero.text-over-image.shipment-hero .hero-image img {
  min-height: 15em;
  /* height: 15em; */
}
.shipment-hero .hero-flex-wrap {
  width: 100%;
  max-width: 96em;
  background-color: rgba( 0, 0, 0, .4 );
}
.shipment-hero .hero-flex-wrap h2 {
  font-weight: 600;
  margin-top: 0;
}
.shipment-intro .content {
  text-align: center;
  max-width: 56.25em;
}
.shipment-products .content {
  text-align: center;
  background: no-repeat #e8e1d7 url("/wp-content/themes/osws-2022/assets/images/pages/club-shipments/shipment-product-bg-sm.jpg"); 
  background-size: cover;
  max-width: 96em;
  padding-left: 0;
  padding-right: 0;
  overflow: hidden;
}
@media only screen and ( min-width: 37.5em ) {
  .shipment-products .content {
    background-image: url(/wp-content/themes/osws-2022/assets/images/pages/club-shipments/shipment-product-bg-md.jpg); 
  }
}
@media only screen and ( min-width: 56.25em ) {
  .shipment-products .content {
    background-image: url(/wp-content/themes/osws-2022/assets/images/pages/club-shipments/shipment-product-bg-lg.jpg); 
  }
}
.shipment-products .content > h2 {
  margin-bottom: 2rem;
}
.shipment-products .product-wrapper {
  position: relative;
}
.shipment-products .carousel-slider {
  display: flex;
  justify-content: start;
  margin: 0 2em;
  row-gap: 2em;
  transition: transform .75s ease-in-out;
}
.no-js .shipment-products .carousel-slider {
  overflow-x: scroll;
}
.shipment-products .carousel-slide {
  flex: 1 0 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.shipment-products .carousel-slide > * {
  max-width: 20rem;
  padding: 0 1rem;
}
.shipment-products .product-image {
  margin-bottom: 1em;
}
.shipment-products .product-image img {
  height: 23em;
  width: auto;
  transition: transform .3s ease-in-out;
}
.shipment-products .product-image a:active img,
.shipment-products .product-image a:focus img,
.shipment-products .product-image a:hover img {
  transform: scale(1.03);
  transition: transform .3s ease-in-out;
}
.shipment-products .product-description {
  margin: 1em auto auto;
}
.shipment-products .product-link {
  margin-top: 1em; 
}
.product-wrapper .carousel-navigation {
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 10em;
  width: 100%;
  padding: 1em;
}
.product-wrapper .carousel-navigation .carousel-control {
  position: relative;
  z-index: 1;
  height: 3.5em;
  width: 2.5em;
  background-color: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  transition: color .3s ease-in-out;
}
.product-wrapper .carousel-navigation .carousel-control i,
.no-js .carousel-navigation.carousel-navigation-fallback .carousel-control:before {
  color: var(--highlight-bright);
  font-size: 3em;
  transition: color .3s ease-in-out;
}
.product-collections .carousel-navigation.active button {
  cursor: pointer;
  pointer-events: initial;
  color: var(--highlight-bright);
}
.no-js .product-collections .carousel-navigation,
.carousel-navigation.carousel-navigation-fallback {
  display: none;
}
.no-js .carousel-navigation.carousel-navigation-fallback {
  display: flex;
}
.no-js .carousel-navigation.carousel-navigation-fallback .carousel-control {
  pointer-events: none;
  cursor: default;
}
.no-js .carousel-navigation.carousel-navigation-fallback .carousel-control:before {
  font-weight: 100;
}
.no-js .carousel-navigation.carousel-navigation-fallback .carousel-control.carousel-prev:before  {
  content: '\003C';
}
.no-js .carousel-navigation.carousel-navigation-fallback .carousel-control.carousel-next:before  {
  content: '\003E';
}
.shipment-info + .shipment-back-link .content {
  padding-top: 0;
}
.shipment-info .content {
  display: flex;
  flex-wrap: wrap;
}
.shipment-info .content > h2 {
  flex: 1 0 100%;
  order: 1;
}
.shipment-info .info-content {
  order: 3;
  flex: 1 0 100%;
}
.shipment-info .info-content > * {
  max-width: 56.25rem;
}
.shipment-info .info-image {
  order: 2;
  flex: 1 0 100%;
  max-width: 28em;
  margin-bottom: 1em;
} 
.shipment-info .info-image img {
  width: 100%;
  height: auto;
}
.shipment-info .info-image a img:active,
.shipment-info .info-image a img:focus,
.shipment-info .info-image a img:hover {
  transition: all .3s ease-in-out;
  opacity: .85;
  transform: scale(1.025);
} 
.shipment-extra > .page-section:first-of-type .content {
  padding-top: 0;
}
.shipment-extra > .page-section:last-of-type .content {
  padding-bottom: 0;
}

@media only screen and ( min-width: 37.5em ) {
  .shipment-products .carousel-slide {
    flex: 1 0 calc(50%);
  }
  .shipment-products .carousel-slide > * {
    padding: 0 1.5rem;
  }
  .shipment-info .content {
    gap: 1em 2em;
  }
  .shipment-info .content > h2,
  .shipment-info .info-content,
  .shipment-info .info-image {
    order: unset;
  }
  .shipment-info .info-content {
    flex: 1 0 calc(66.667% - 1em);
  }
  .shipment-info .info-image {
    flex: 1 0 calc(33.333% - 1em);
    max-width: unset;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .shipment-products .carousel-slide {
    flex: 1 0 calc(33%);
  }
  .shipment-products .carousel-slide > * {
    padding: 0 2rem;
  }
  .shipment-info .content {
    column-gap: 4em;
  }
  .shipment-info .info-content {
    flex: 1 0 calc(66.667% - 2em);
  }
  .shipment-info .info-image {
    flex: 1 0 calc(33.333% - 2em);
  }
}
@media only screen and ( min-width: 75em ) { 
  .shipment-products .carousel-slide {
    flex: 1 0 calc(25%);
  }
  .no-js .carousel-navigation.carousel-navigation-fallback {
    display: none;
  }
}

/* winemakers */
.winemakers-nav-intro {
  display: block;
  margin-bottom: .5em;
}
.winemakers-nav-list li .divider {
  display: none;
}
.winemakers-region .content {
  padding-top: 0;
  scroll-margin: 1em;
}
.winemaker-cards {
  text-align: center;
}
.square-archive-card a,
.square-archive-card a:visited {
  color: var(--white);
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-content: flex-end;
  flex-wrap: wrap;
  margin-bottom: 1em;
}
.winemaker-cards a {
  background-color: rgba( 0, 0, 0, .4 );
}
.winemaker-cards a:active,
.winemaker-cards a:focus,
.winemaker-cards a:hover {
  background-color: rgba( 0, 0, 0, .5 );
}
.square-archive-card a > * {
  width: 90%;
  width: calc( 100% - 1rem );
  padding: 0 .5rem;
  transition: all .3s ease-in-out;
}
.square-archive-card a:active > *,
.square-archive-card a:focus > *,
.square-archive-card a:hover > * {
  transform: scale(1.05);
  transition: all .3s ease-in-out;
}
.square-archive-card h3 {
  font-family: var(--body-font);
  font-size: 4vw;
  margin-bottom: .25rem
}
.square-archive-card p {
  font-size: 4vw;
}
.square-archive-card a > *:last-child {
  margin-bottom: 1rem
}
.square-archive-card h3 {
    font-family: var(--body-font);
    margin-bottom: 0.25rem;
}
.square-archive-card a > * {
    width: 90%;
    width: calc( 100% - 2rem );
    padding: 0 1rem;
    transition: transform .3s ease-in-out;
}
.wine-club-banner {
  margin: 2em auto;
}
.wine-club-banner.text-over-image .hero-image {
  object-position: left;
} 
.wine-club-banner .hero-flex-wrap {
  max-width: 40em;
  text-align: left;
}
@media only screen and (max-width: 18.75em) {
  .square-archive-card h3 {
    font-size: 8vw;
  }
  .square-archive-card p {
    font-size: 6vw;
  }
}
@media only screen and ( min-width: 22.5em ) {
  .square-archive-card p {
    font-size: 3vw;
  }
}
@media only screen and ( min-width: 37.5em ) {
  .winemakers-nav-list,
  .winemakers-nav-list li {
    display: inline-block;
    margin-bottom: 0;
  }
  .winemakers-nav-intro {
    display: inline;
    margin-bottom: 0;
    margin-right: .75em;
  }
  .winemakers-nav-list li .divider {
    display: inline;
    margin-left: .75em;
    margin-right: .5em;
  }
  .square-archive-card h3 {
    font-size: 3vw;
  }
  .square-archive-card p {
    font-size: 2.5vw;
  }
}
@media only screen and ( min-width: 46.875em ) {
  .square-archive-card h3 {
    font-size: 2.75vw;
  }
  .square-archive-card p {
    font-size: 2.25vw;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .content.winemakers-region {
    scroll-margin: 2em;
  }
  .square-archive-card h3 {
    font-size: 2vw;
  }
  .square-archive-card p {
    font-size: 1.75vw;
  }
  .wine-club-banner {
    margin: 2em auto 3em;
  }
  .wine-club-banner.text-over-image .hero-image {
    object-position: 80%;
  } 
}
@media only screen and (min-width: 75em) {
  .square-archive-card h3 {
    font-size: 1.6vw;
  }
  .square-archive-card p {
    font-size: 1.4vw;
  }
}
@media only screen and (min-width: 93.75em) {
  .square-archive-card h3 {
    font-size: 24px;
    font-size: 1.5rem;
  }
  .square-archive-card p {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
/* individual winemaker pages */
.single-winemaker .site-main > section .content {
  max-width: 75em;
}
.winemaker-title {
  margin-bottom: 2em;
}
.winemaker-title h1 {
  margin-bottom: .75rem;
}
.winemaker-title .winery-name {
  text-transform: none;
}
.winemaker-image {
  margin-bottom: 2em;
}
.winemaker-text .cta {
  margin-top: 1.5em;
}
.single-winemaker .winemaker-bio + .page-section .content {
  padding-top: 0;
}
.single-winemaker .page-section + .page-section .content {
  padding-top: 1em;
}
@media only screen and ( min-width: 37.5em ) {
  .winemaker-description {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    column-gap: 2em;
  }
  .winemaker-image {
    width: 32%;
  }
  .winemaker-text { 
    width: calc(68% - 2em);
    max-width: 42em;
  }
}
@media only screen and ( min-width: 56.25em ) {
  .winemaker-description {
    column-gap: 4em;
  }
  .single-winemaker .page-section + .page-section .content {
    padding-top: 2em;
  }
}