.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header {
    color: inherit;
}

.main-navigation {
    z-index: 100;
    padding: 0;
    clear: both;
    display: none;
}

/* Override GeneratePress link color */
.inside-article a,
.paging-navigation a,
.comments-area a,
.page-header a {
    color: inherit;
}

/* STart Two Line Text */
.one-line {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.two-line {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.three-line {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* End Two Line Text */

/* Fix: Force horizontal scroll on mobile */
@media (max-width: 767px) {
    .mobile-scroll-table {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important; /* This enables the scroll */
        -webkit-overflow-scrolling: touch; /* Smooth scroll for iOS */
    }

    /* Target the table inside the container to force width */
    .mobile-scroll-table table {
        min-width: 700px !important; /* Adjust this based on your columns */
        width: 100%;
        border-collapse: collapse;
    }
}

.main-navigation.is_stuck,
.main-navigation.is_stuck ul ul{
    background-color: #fff;
}

.inside-wc-product-image {
    position: relative;
    display: inline-block;
    width: 100%;
	object-fit: cover;
}

.woocommerce ul.products li.product a img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 0 1em;
    box-shadow: none;
    height: 250px;
	object-fit: cover;
}

a.wc-block-components-product-name {
    color: wheat;
    font-size: 16px !important;
}

@media (max-width: 768px) {
    .main-navigation.has-branding .inside-navigation.grid-container {
        padding: 0px;
        background: white;
    }
}


.message__logo-container {
    color: #E5CFBD !important;
}

span.tag--xsmall {
    color: #E5CFBD !important;
}

.woocommerce div.product form.cart .variations select {
    -webkit-background-size: 16px;
    background-position: calc(100% - 12px) 50%;
    color: #757575;
    border: 1px solid #787878;
}

/* Event Display Event Page by Protik */

.entry-content .eaw-block h3 {
    background: none;
    clear: none;
    margin-bottom: 0;
    margin-top: 0;
    font-weight: 400;
    font-size: 36px !important;
    line-height: 1.5em;
}

.entry-content .eaw-block .eaw-time {
    color: #bbb;
    font-size: 26px !important;
}


.entry-content .eaw-block .eaw-summary {
    font-size: 21px;
    line-height: 47px !important;
}



.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header {
    color: inherit;
}

.main-navigation {
    z-index: 100;
    padding: 0;
    clear: both;
    display: none;
}

/* Override GeneratePress link color */
.inside-article a,
.paging-navigation a,
.comments-area a,
.page-header a {
    color: inherit;
}

/* STart Two Line Text */
.one-line {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.two-line {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.three-line {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* End Two Line Text */

/* Fix: Force horizontal scroll on mobile */
@media (max-width: 767px) {
    .mobile-scroll-table {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important; /* This enables the scroll */
        -webkit-overflow-scrolling: touch; /* Smooth scroll for iOS */
    }

    /* Target the table inside the container to force width */
    .mobile-scroll-table table {
        min-width: 700px !important; /* Adjust this based on your columns */
        width: 100%;
        border-collapse: collapse;
    }
}

.main-navigation.is_stuck,
.main-navigation.is_stuck ul ul{
    background-color: #fff;
}

.inside-wc-product-image {
    position: relative;
    display: inline-block;
    width: 100%;
	object-fit: cover;
}

.woocommerce ul.products li.product a img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 0 1em;
    box-shadow: none;
    height: 250px;
	object-fit: cover;
}

a.wc-block-components-product-name {
    color: wheat;
    font-size: 16px !important;
}

@media (max-width: 768px) {
    .main-navigation.has-branding .inside-navigation.grid-container {
        padding: 0px;
        background: white;
    }
}


.message__logo-container {
    color: #E5CFBD !important;
}

span.tag--xsmall {
    color: #E5CFBD !important;
}

.woocommerce div.product form.cart .variations select {
    -webkit-background-size: 16px;
    background-position: calc(100% - 12px) 50%;
    color: #757575;
    border: 1px solid #787878;
}

/* Event Display Event Page by Protik */

.entry-content .eaw-block h3 {
    background: none;
    clear: none;
    margin-bottom: 0;
    margin-top: 0;
    font-weight: 400;
    font-size: 36px !important;
    line-height: 1.5em;
}

.entry-content .eaw-block .eaw-time {
    color: #bbb;
    font-size: 26px !important;
}


.entry-content .eaw-block .eaw-summary {
    font-size: 21px;
    line-height: 47px !important;
}



/* ===== Whiskey EDU site container — one container for header, body and footer.
   Change ONLY these values to resize the whole site. Content width = container minus 2x gutter. ===== */
:root{
  --wedu-container: 1400px;  /* desktop frame  -> content 1296px */
  --wedu-gutter: 72px;
}
@media (max-width:1024px){ :root{ --wedu-gutter: 44px; } }  /* tablet  -> content 746px at 834px */
@media (max-width:767px){  :root{ --wedu-gutter: 20px; } }  /* mobile  -> content 350px at 390px */
/* ===== end Whiskey EDU site container ===== */



/* ===== Whiskey EDU global container alignment
   GeneratePress' own content container follows the same two variables the new
   header, body and footer use, so every page lines up on one column. ===== */
.grid-container:not(.inside-add-to-cart-panel) {
  max-width: var(--wedu-container);
  padding-left: var(--wedu-gutter);
  padding-right: var(--wedu-gutter);
}
/* the gutter comes from the container now, so drop the doubled inner padding */
.one-container .site-content { padding-left: 0; padding-right: 0; }
/* full-width pages are built from full-bleed sections that carry their own
   container, so the site wrapper must not add a second gutter */
.full-width-content .site.grid-container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
/* ===== end Whiskey EDU global container alignment ===== */

/* ===== Whiskey EDU cart panel — applied site-wide. ===== */

/* backdrop */
.wc-block-components-drawer__screen-overlay {
  background-color: rgba(4,8,14,.74);
  backdrop-filter: blur(6px);
}

/* the panel itself */
.wc-block-mini-cart__drawer {
  border-left: 1px solid rgba(231,143,52,.22);
  box-shadow: -40px 0 90px -40px rgba(0,0,0,.9);
}
.wc-block-mini-cart__drawer .wp-block-woocommerce-mini-cart-contents {
  position: relative;
  background-color: #0A111B !important;
  color: #C3BCB1;
  font-family: 'Barlow Semi Condensed', sans-serif;
}
/* candlelight falling from the top edge */
.wc-block-mini-cart__drawer .wp-block-woocommerce-mini-cart-contents::before {
  content: "";
  position: absolute; top: 0; left: 0; right: 0; height: 180px;
  background: linear-gradient(180deg, rgba(231,143,52,.10), rgba(231,143,52,0));
  pointer-events: none;
}
.wc-block-mini-cart__drawer .wp-block-woocommerce-mini-cart-contents > * {
  position: relative;
}

/* close button — pinned inside the panel's own top-right corner so it can never
   be clipped by the panel edge, and tinted so it reads against dark content */
.wc-block-components-drawer__close-wrapper {
  position: relative;
  height: 76px;
  padding: 0;
  margin: 0;
  z-index: 6;
}
.wc-block-components-drawer__close.wc-block-components-button,
.wc-block-components-drawer__close.wc-block-components-button.contained {
  box-sizing: border-box !important;
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  left: auto !important;
  bottom: auto !important;
  width: 44px !important;
  height: 44px !important;
  min-height: 0 !important;
  min-width: 0 !important;
  max-height: none;
  padding: 0 !important;
  margin: 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(231,143,52,.16) !important;
  border: 1px solid rgba(231,143,52,.5) !important;
  border-radius: 999px;
  color: #F5B87A !important;
  box-shadow: 0 8px 22px -12px rgba(0,0,0,.9);
  z-index: 6;
  transition: background-color .22s ease, border-color .22s ease, color .22s ease, transform .3s ease;
}
.wc-block-components-drawer__close svg {
  width: 20px; height: 20px; min-width: 0; min-height: 0; fill: currentColor;
}
.wc-block-components-drawer__close.wc-block-components-button:hover,
.wc-block-components-drawer__close.wc-block-components-button:focus,
.wc-block-components-drawer__close.contained:hover,
.wc-block-components-drawer__close.contained:focus {
  background-color: rgba(231,143,52,.32) !important;
  border-color: #E78F34 !important;
  color: #FFF3E2 !important;
  transform: rotate(90deg);
}
.wc-block-components-drawer__close.wc-block-components-button:active {
  transform: rotate(90deg) scale(.94);
}

/* title — sits under the close button, never beside it */
.wc-block-mini-cart__title {
  display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap;
  margin: 0;
  padding: 0 24px 18px;
  border-bottom: 1px solid rgba(231,143,52,.18);
  font-family: 'Playfair Display', serif; font-weight: 500;
  font-size: 30px; line-height: 1.15; color: #F7F1E6;
}
.wp-block-woocommerce-mini-cart-title-items-counter-block {
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 13px; letter-spacing: .16em; text-transform: uppercase; color: #E78F34;
}

/* empty state */
.wc-block-mini-cart__empty-cart-wrapper {
  padding: 52px 24px; text-align: center;
}
.wc-block-mini-cart__empty-cart-wrapper p {
  color: #C3BCB1; font-size: 16.5px; line-height: 1.7;
}
.wc-block-mini-cart__empty-cart-wrapper strong {
  color: #EFE8DC; font-weight: 600;
}

/* product rows */
.wc-block-mini-cart__items { padding: 0 24px; }
.wc-block-mini-cart-items tr { border-bottom: 1px solid rgba(231,143,52,.12); }
.wc-block-mini-cart-items td { padding: 16px 0; }
.wc-block-mini-cart-items a { color: #EFE8DC; text-decoration: none; }
.wc-block-mini-cart-items a:hover { color: #E78F34; }
.wc-block-components-formatted-money-amount,
.wc-block-formatted-money-amount { color: #E78F34; }

/* footer + subtotal */
.wc-block-mini-cart__footer {
  padding: 22px 24px 26px;
  border-top: 1px solid rgba(231,143,52,.18);
  background-image: linear-gradient(180deg,#0C1522,#080E17);
}
.wc-block-mini-cart__footer-subtotal {
  display: flex; align-items: baseline; justify-content: space-between;
  padding-bottom: 16px; margin-bottom: 18px;
  border-bottom: 1px solid rgba(231,143,52,.18);
}
.wc-block-components-totals-item__label {
  color: #9BA6B4; font-size: 13px; letter-spacing: .18em; text-transform: uppercase;
}
.wc-block-mini-cart__footer-subtotal .wc-block-components-totals-item__value {
  font-family: 'Playfair Display', serif; font-size: 24px; color: #E78F34;
}
.wc-block-mini-cart__footer-actions {
  display: flex; flex-direction: column; gap: 10px;
}

/* buttons — the same two shapes used everywhere else on the site */
.wc-block-mini-cart__footer-checkout,
.wc-block-mini-cart__empty-cart-wrapper .wp-block-button a {
  display: flex; align-items: center; justify-content: center;
  width: 100%; padding: 12px 28px; border: 0; border-radius: 999px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 13px; line-height: 1.25; font-weight: 600; letter-spacing: .06em;
  color: #1A1206 !important; text-decoration: none;
  background-color: transparent;
  background-image: linear-gradient(135deg,#F0B968,#E9A24B 55%,#C97E2A);
  box-shadow: 0 16px 34px -18px rgba(231,143,52,.85);
  transition: transform .22s ease, box-shadow .22s ease, background-image .22s ease;
}
.wc-block-mini-cart__footer-checkout:hover,
.wc-block-mini-cart__footer-checkout:focus,
.wc-block-mini-cart__empty-cart-wrapper .wp-block-button a:hover,
.wc-block-mini-cart__empty-cart-wrapper .wp-block-button a:focus {
  background-image: linear-gradient(135deg,#F5B87A,#F0B968 55%,#E9A24B);
  transform: translateY(-2px);
  box-shadow: 0 22px 46px -16px rgba(231,143,52,.95);
}
.wc-block-mini-cart__footer-checkout:active,
.wc-block-mini-cart__empty-cart-wrapper .wp-block-button a:active {
  transform: translateY(0);
}

.wc-block-mini-cart__footer-cart {
  display: flex; align-items: center; justify-content: center;
  width: 100%; padding: 13px 32px; border-radius: 999px;
  background: transparent;
  border: 1px solid rgba(231,143,52,.45);
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 14px; letter-spacing: .14em; text-transform: uppercase;
  color: #EFE8DC !important; text-decoration: none; box-shadow: none;
  transition: background-color .22s ease, border-color .22s ease, color .22s ease, transform .22s ease;
}
.wc-block-mini-cart__footer-cart:hover,
.wc-block-mini-cart__footer-cart:focus {
  background-color: rgba(231,143,52,.22);
  border-color: #E78F34;
  color: #F5B87A !important;
  transform: translateY(-2px);
}
.wc-block-mini-cart__footer-cart:active { transform: translateY(0); }

/* the admin bar is fixed over the top of the viewport, so the full-screen
   mobile menu has to start below it for logged-in users */
.admin-bar .gb-menu-container--toggled { top: 46px; }
@media screen and (min-width: 783px) {
  .admin-bar .gb-menu-container--toggled { top: 32px; }
}

/* ===== end Whiskey EDU cart panel ===== */

/* ===== Whiskey EDU shop &amp; blog grids =====
   WooCommerce builds the product loop itself, so its cards are dressed here to
   match the Candlelit Cask cards used everywhere else. ===== */

/* ---------- product grid ---------- */
.woocommerce ul.products {
  margin: 0;
  padding: 0;
}
.woocommerce ul.products li.product,
#wc-column-container ul.products li.product {
  display: flex;
  flex-direction: column;
  background-color: rgba(255,255,255,.025);
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
  overflow: hidden;
  transition: border-color .22s ease, background-color .22s ease, transform .22s ease;
}
.woocommerce ul.products li.product:hover,
#wc-column-container ul.products li.product:hover {
  border-color: rgba(231,143,52,.5);
  background-color: rgba(255,255,255,.04);
  transform: translateY(-3px);
}
.woocommerce ul.products li.product .wc-product-image,
.woocommerce ul.products li.product img {
  border-radius: 0;
  margin: 0;
}
.woocommerce ul.products li.product .wc-product-image {
  border-bottom: 1px solid rgba(231,143,52,.16);
}
.woocommerce ul.products li.product .woocommerce-loop-product__link {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Playfair Display', serif;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.3;
  color: #FBF6EE;
  padding: 22px 24px 0;
  margin: 0;
}
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price .amount,
.woocommerce ul.products li.product .price bdi {
  font-family: 'Playfair Display', serif;
  font-size: 24px;
  line-height: 1.1;
  color: #F0B968;
}
.woocommerce ul.products li.product .price {
  display: block;
  padding: 0 24px;
  margin: 0;
}
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price del bdi {
  color: #6E7A89;
  font-size: 18px;
}
.woocommerce ul.products li.product .woocommerce-loop-product__link + * {
  margin-top: auto;
}

/* add-to-cart / select-options button — the site's primary pill */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.add_to_cart_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 18px 24px 24px;
  padding: 13px 26px;
  border: 0;
  border-radius: 999px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #1A1206 !important;
  background-color: transparent;
  background-image: linear-gradient(135deg,#F0B968,#E9A24B 55%,#C97E2A);
  box-shadow: 0 14px 30px -16px rgba(231,143,52,.85);
  transition: transform .22s ease, box-shadow .22s ease, background-image .22s ease;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .button:focus,
.woocommerce ul.products li.product a.add_to_cart_button:hover,
.woocommerce ul.products li.product a.add_to_cart_button:focus {
  background-image: linear-gradient(135deg,#F5B87A,#F0B968 55%,#E9A24B);
  transform: translateY(-2px);
  box-shadow: 0 20px 40px -16px rgba(231,143,52,.95);
}
.woocommerce ul.products li.product .button:active,
.woocommerce ul.products li.product a.add_to_cart_button:active { transform: translateY(0); }

/* sale flash */
.woocommerce ul.products li.product .onsale {
  background-image: linear-gradient(135deg,#F0B968,#C97E2A);
  color: #1A1206;
  border-radius: 999px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
  padding: 6px 16px;
  border: 0;
}

/* result count / ordering row */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering select {
  font-family: 'Barlow Semi Condensed', sans-serif;
  color: #9BA6B4;
}
.woocommerce .woocommerce-ordering select {
  background-color: #0D1725;
  border: 1px solid rgba(231,143,52,.28);
  border-radius: 999px;
  padding: 10px 18px;
  color: #EFE8DC;
}

/* archive pagination in the site's palette */
.blog .paging-navigation .page-numbers,
.archive .paging-navigation .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 14px;
  border: 1px solid rgba(231,143,52,.28);
  border-radius: 999px;
  background: transparent;
  color: #CFC7BB;
  font-family: 'Barlow Semi Condensed', sans-serif;
  transition: background-color .22s ease, border-color .22s ease, color .22s ease;
}
.blog .paging-navigation .page-numbers:hover,
.archive .paging-navigation .page-numbers:hover {
  background-color: rgba(231,143,52,.16);
  border-color: #E78F34;
  color: #F5B87A;
}
.blog .paging-navigation .page-numbers.current,
.archive .paging-navigation .page-numbers.current {
  background-image: linear-gradient(135deg,#F0B968,#C97E2A);
  border-color: transparent;
  color: #1A1206;
}


/* ---------- archive layout ---------- */
/* On the blog index and the shop the new full-bleed sections carry their own
   container, so the site wrapper must not add a second gutter. */
.blog .site.grid-container,
.post-type-archive-product .site.grid-container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
/* …which means the WooCommerce product area needs the shared container back */
.post-type-archive-product .woocommerce-products-header,
.post-type-archive-product .wc-columns-container,
.post-type-archive-product nav.woocommerce-pagination,
.post-type-archive-product .woocommerce-result-count,
.post-type-archive-product .woocommerce-ordering {
  width: 100%;
  max-width: var(--wedu-container);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--wedu-gutter);
  padding-right: var(--wedu-gutter);
}
/* ===== end Whiskey EDU shop &amp; blog grids ===== */

/* ===== Whiskey EDU cart, checkout & account =====
   WooCommerce renders these screens itself, so its markup is dressed here to
   match the Candlelit Cask system used by the GenerateBlocks sections. ===== */

.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce {
  font-family: 'Barlow Semi Condensed', sans-serif;
  color: #DED6C9;
}

/* ---------- shared surfaces ---------- */
.woocommerce-cart .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-checkout-payment,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register,
.woocommerce-cart .cart-collaterals .cross-sells {
  background-color: rgba(255,255,255,.025);
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
  padding: 30px 32px;
}

/* ---------- headings inside Woo ---------- */
.woocommerce-cart .woocommerce h2,
.woocommerce-checkout .woocommerce h2,
.woocommerce-checkout .woocommerce h3,
.woocommerce-account .woocommerce h2,
.woocommerce-account .woocommerce h3,
.woocommerce-cart .cart_totals h2 {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  color: #FBF6EE;
  line-height: 1.2;
  margin: 0 0 20px;
}
.woocommerce-cart .woocommerce h2,
.woocommerce-checkout .woocommerce h3,
.woocommerce-account .woocommerce h2 { font-size: 26px; }
.woocommerce-checkout #order_review_heading { font-size: 26px; margin-top: 0; }

/* ---------- tables ---------- */
.woocommerce table.shop_table {
  width: 100%;
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
  border-collapse: separate;
  border-spacing: 0;
  background-color: rgba(255,255,255,.02);
  margin: 0 0 28px;
}
.woocommerce table.shop_table th {
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #9BA6B4;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(231,143,52,.2);
  text-align: left;
}
.woocommerce table.shop_table td {
  padding: 20px;
  border-top: 1px solid rgba(231,143,52,.12);
  color: #DED6C9;
  vertical-align: middle;
}
.woocommerce table.shop_table tbody tr:first-child td { border-top: 0; }
.woocommerce table.shop_table a { color: #EFE8DC; text-decoration: none; }
.woocommerce table.shop_table a:hover { color: #F5B87A; }
.woocommerce table.shop_table .product-name a {
  font-family: 'Playfair Display', serif;
  font-size: 17.5px;
  line-height: 1.35;
  color: #FBF6EE;
}
/* Column widths — under `table-layout: auto` a stated width is only a hint, so
   the browser handed all the slack to the remove column (270px of empty space)
   and starved the product name (105px), wrapping the title over three lines.
   Fixed layout makes the stated widths authoritative; the name takes the rest. */
.woocommerce-cart form.woocommerce-cart-form table.shop_table { table-layout: fixed; }
.woocommerce table.shop_table th.product-remove,
.woocommerce table.shop_table td.product-remove {
  width: 48px;
  padding-left: 12px;
  padding-right: 0;
  text-align: center;
}
.woocommerce table.shop_table th.product-thumbnail,
.woocommerce table.shop_table td.product-thumbnail {
  width: 104px;
  padding-left: 12px;
  padding-right: 8px;
}
.woocommerce table.shop_table th.product-name,
.woocommerce table.shop_table td.product-name { padding-left: 12px; padding-right: 12px; }
.woocommerce table.shop_table th.product-price,
.woocommerce table.shop_table td.product-price { width: 88px; padding-left: 8px; padding-right: 8px; }
.woocommerce table.shop_table th.product-quantity,
.woocommerce table.shop_table td.product-quantity { width: 168px; padding-left: 12px; padding-right: 12px; }
.woocommerce table.shop_table th.product-subtotal,
.woocommerce table.shop_table td.product-subtotal { width: 108px; padding-left: 8px; text-align: right; }
.woocommerce table.shop_table .product-name a { display: inline-block; text-wrap: pretty; }

/* WooCommerce and the theme both cap images at max-width:100%, which squeezes
   the thumbnail into a narrow cell — the cap is lifted below. */
.woocommerce table.shop_table td.product-thumbnail img {
  display: block;
  width: 84px !important;
  height: 84px !important; /* an !important height:auto elsewhere wins otherwise */
  max-width: none;
  object-fit: cover;
  border-radius: 4px;
  border: 1px solid rgba(231,143,52,.2);
}
.woocommerce table.shop_table .amount,
.woocommerce table.shop_table bdi,
.woocommerce .price .amount {
  font-family: 'Playfair Display', serif;
  color: #F0B968;
}
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table tfoot td {
  border-top: 1px solid rgba(231,143,52,.2);
  background-color: rgba(231,143,52,.05);
}
.woocommerce table.shop_table .order-total .amount { font-size: 22px; }

/* remove-from-cart × — GP Premium forces background/border/colour with
   !important, so these three declarations have to answer in kind. */
.woocommerce a.remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  line-height: 1;
  font-size: 18px;
  font-weight: 400;
  border-radius: 999px;
  background-color: rgba(231,143,52,.14) !important;
  background-image: none !important;
  border: 1px solid rgba(231,143,52,.45) !important;
  color: #F5B87A !important;
  transition: background-color .22s ease, border-color .22s ease, color .22s ease;
}
.woocommerce a.remove:hover {
  background-color: rgba(231,143,52,.34) !important;
  border-color: #E78F34 !important;
  color: #FBF6EE !important;
  opacity: 1;
}

/* quantity stepper — GeneratePress renders it as −  input  + */
.woocommerce .quantity,
.woocommerce div.quantity.buttons-added {
  display: inline-flex;
  align-items: center;
}
.woocommerce form .quantity.buttons-added .qty,
.woocommerce .quantity:not(.buttons-added) .qty {
  height: 46px;
  min-height: 46px; /* GeneratePress sets min-height:50px on the stepper */
  width: 54px;
  max-width: 54px;
  padding: 0 6px;
  text-align: center;
  background-color: rgba(255,255,255,.05);
  border: 1px solid rgba(231,143,52,.3);
  color: #FBF6EE;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 16px;
}
.woocommerce .quantity:not(.buttons-added) .qty { width: 88px; max-width: 88px; border-radius: 999px; }
.woocommerce form .quantity.buttons-added .qty { border-radius: 0; border-left: 0; border-right: 0; }
.woocommerce form .quantity.buttons-added .minus,
.woocommerce form .quantity.buttons-added .plus {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 46px;
  min-height: 46px;
  background-color: rgba(255,255,255,.03);
  border: 1px solid rgba(231,143,52,.3);
  color: #F0B968;
  font-size: 19px;
  text-decoration: none;
  transition: background-color .22s ease, color .22s ease;
}
.woocommerce form .quantity.buttons-added .minus { border-radius: 999px 0 0 999px; }
.woocommerce form .quantity.buttons-added .plus  { border-radius: 0 999px 999px 0; }
.woocommerce form .quantity.buttons-added .minus:hover,
.woocommerce form .quantity.buttons-added .plus:hover {
  background-color: rgba(231,143,52,.2);
  color: #F5B87A;
}
.woocommerce form .quantity.buttons-added .qty:focus { border-color: rgba(231,143,52,.3); }

/* ---------- form fields ---------- */
.woocommerce form .form-row { margin: 0 0 20px; padding: 0; }
.woocommerce form .form-row label,
.woocommerce-account label,
.woocommerce-checkout label {
  display: block;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 14px;
  letter-spacing: .06em;
  color: #B9B2A7;
  margin-bottom: 8px;
}
.woocommerce form .form-row label .required { color: #E78F34; border: 0; text-decoration: none; }

.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="number"],
.woocommerce input[type="search"],
.woocommerce textarea,
.woocommerce select,
.woocommerce .input-text {
  width: 100%;
  box-sizing: border-box;
  padding: 13px 16px;
  background-color: rgba(255,255,255,.04);
  border: 1px solid rgba(231,143,52,.28);
  border-radius: 4px;
  color: #FBF6EE;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 16px;
  line-height: 1.4;
  transition: border-color .22s ease, background-color .22s ease, box-shadow .22s ease;
}
.woocommerce input::placeholder,
.woocommerce textarea::placeholder { color: #6E7A89; }
.woocommerce input[type="text"]:focus,
.woocommerce input[type="email"]:focus,
.woocommerce input[type="tel"]:focus,
.woocommerce input[type="password"]:focus,
.woocommerce input[type="number"]:focus,
.woocommerce textarea:focus,
.woocommerce select:focus,
.woocommerce .input-text:focus {
  outline: 0;
  border-color: #E78F34;
  background-color: rgba(255,255,255,.07);
  box-shadow: 0 0 0 3px rgba(231,143,52,.18);
}
.woocommerce textarea { min-height: 130px; resize: vertical; }

/* checkboxes */
.woocommerce input[type="checkbox"],
.woocommerce input[type="radio"] {
  accent-color: #E78F34;
  width: 17px;
  height: 17px;
  vertical-align: -3px;
  margin-right: 8px;
}

/* ---------- native select ---------- */
.woocommerce select,
.woocommerce-page select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: 44px;
  background-image:
    linear-gradient(45deg, transparent 50%, #E78F34 50%),
    linear-gradient(135deg, #E78F34 50%, transparent 50%);
  background-position: calc(100% - 22px) calc(50% + 2px), calc(100% - 16px) calc(50% + 2px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  cursor: pointer;
}
/* the popup list drawn by the OS */
.woocommerce select option,
.woocommerce-page select option {
  background-color: #0D1725;
  color: #EFE8DC;
}

/* ---------- select2 / selectWoo dropdowns ----------
   The dropdown panel is appended to <body>, so it is styled globally. */
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
  height: auto;
  min-height: 50px;
  padding: 6px 10px;
  background-color: rgba(255,255,255,.04);
  border: 1px solid rgba(231,143,52,.28);
  border-radius: 4px;
  transition: border-color .22s ease, background-color .22s ease, box-shadow .22s ease;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #FBF6EE;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 16px;
  line-height: 36px;
  padding-left: 6px;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder { color: #6E7A89; }
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 48px;
  right: 12px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #E78F34 transparent transparent transparent;
  border-width: 6px 5px 0 5px;
  margin-left: -5px;
}
.select2-container--default.select2-container--open .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--single {
  border-color: #E78F34;
  background-color: rgba(255,255,255,.07);
  box-shadow: 0 0 0 3px rgba(231,143,52,.18);
}
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #E78F34 transparent;
  border-width: 0 5px 6px 5px;
}

/* the popup panel.
   woocommerce.css carries `:where(.woocommerce) .select2-container .select2-dropdown`.
   :where() weighs nothing, so that reads as two classes and outranks a bare
   .select2-dropdown — which is how the panel stayed white. Matching it here. */
.select2-dropdown,
.select2-container .select2-dropdown {
  background-color: #0D1725;
  border: 1px solid rgba(231,143,52,.4);
  border-radius: 4px;
  box-shadow: 0 26px 60px -28px rgba(0,0,0,.95);
  overflow: hidden;
}
.select2-container--default .select2-search--dropdown { padding: 10px; }
.select2-container--default .select2-search--dropdown .select2-search__field {
  background-color: rgba(255,255,255,.05);
  border: 1px solid rgba(231,143,52,.3);
  border-radius: 4px;
  color: #FBF6EE;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 15px;
  padding: 10px 12px;
}
.select2-container--default .select2-search--dropdown .select2-search__field:focus {
  outline: 0;
  border-color: #E78F34;
}
.select2-container--default .select2-results > .select2-results__options {
  max-height: 260px;
  scrollbar-color: rgba(231,143,52,.5) transparent;
}
.select2-container--default .select2-results__option {
  padding: 11px 16px;
  color: #CFC7BB;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 15.5px;
  background-color: transparent;
}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected],
.select2-container--default .select2-results__option--highlighted {
  background-color: rgba(231,143,52,.2);
  color: #F5B87A;
}
.select2-container--default .select2-results__option[aria-selected="true"],
.select2-container--default .select2-results__option[data-selected="true"] {
  background-color: rgba(231,143,52,.32);
  color: #FBF6EE;
}
.select2-container--default .select2-results__message { color: #8E97A3; }

/* ---------- buttons ---------- */
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce #respond input#submit,
.woocommerce .checkout-button,
.woocommerce #place_order {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 24px;
  border: 0;
  border-radius: 999px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: #1A1206 !important;
  background-color: transparent;
  background-image: linear-gradient(135deg,#EFB775,#E09A46 55%,#C4802F);
  box-shadow: 0 8px 20px -12px rgba(231,143,52,.7);
  transition: transform .2s ease, box-shadow .2s ease, background-image .2s ease;
  text-decoration: none;
}
.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button:hover,
.woocommerce .checkout-button:hover,
.woocommerce #place_order:hover {
  background-image: linear-gradient(135deg,#F5B87A,#EFB775 55%,#E09A46);
  transform: translateY(-1px);
  box-shadow: 0 14px 28px -14px rgba(231,143,52,.85);
}
.woocommerce .button:active,
.woocommerce #place_order:active { transform: translateY(0); }
.woocommerce .button:disabled,
.woocommerce .button.disabled {
  opacity: .5;
  transform: none;
  box-shadow: none;
  cursor: not-allowed;
}
/* secondary / outline buttons */
.woocommerce button.button[name="update_cart"],
.woocommerce .woocommerce-form-coupon .button,
.woocommerce .cart .coupon .button {
  background-image: none;
  background-color: transparent;
  border: 1px solid rgba(231,143,52,.45);
  color: #EFE8DC !important;
  box-shadow: none;
}
.woocommerce button.button[name="update_cart"]:hover,
.woocommerce .woocommerce-form-coupon .button:hover,
.woocommerce .cart .coupon .button:hover {
  background-image: none;
  background-color: rgba(231,143,52,.22);
  border-color: #E78F34;
  color: #F5B87A !important;
  box-shadow: none;
}
/* core woocommerce.css sizes this one at 1.25em/1em through a (0,3,1) selector,
   which on mobile inherits an 18px base and balloons to 22.5px. Place Order is
   worse: GeneratePress pins it at 150% through a two-ID selector. */
.woocommerce .checkout-button,
.woocommerce #place_order,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
  width: 100%;
  max-width: 100%;
  font-size: 14px;
  line-height: 1.3;
  padding: 14px 28px;
  white-space: normal;
}

/* ---------- cart specifics ---------- */
/* The cell keeps its table-cell role — giving it `display:flex` drops it out of
   the table model, so its colspan="6" collapses to the first column's width and
   the rule above the coupon only draws part way across. */
.woocommerce table.cart td.actions {
  display: table-cell;
  width: 100%;
  padding: 20px;
  vertical-align: middle;
}
.woocommerce .cart .coupon { display: flex; flex-wrap: nowrap; gap: 10px; align-items: center; }
.woocommerce .cart .coupon .button { white-space: nowrap; flex: 0 0 auto; }
/* quantities and coupons both save themselves now */
.woocommerce table.cart td.actions button[name="update_cart"],
.woocommerce table.cart td.actions input[name="update_cart"] { display: none !important; }
/* coupon in flight */
.woocommerce .cart .coupon.is-busy { opacity: .6; pointer-events: none; }
/* WooCommerce sizes these through selectors that include the theme's #content
   wrapper, so the overrides have to carry the same ID to outrank them. */
.woocommerce #content table.cart td.actions .coupon .input-text,
.woocommerce table.cart td.actions .coupon .input-text,
.woocommerce-page #content table.cart td.actions .coupon .input-text,
.woocommerce-page table.cart td.actions .coupon .input-text {
  width: auto;
  min-width: 230px;
  margin: 0;
  float: none;
  padding: 13px 20px;
  border-radius: 999px;
}
.woocommerce #content table.cart td.actions .coupon .button,
.woocommerce table.cart td.actions .coupon .button,
.woocommerce-page #content table.cart td.actions .coupon .button,
.woocommerce-page table.cart td.actions .coupon .button { width: auto; float: none; }
.woocommerce .cart-collaterals { margin-top: 8px; }
/* The totals table is laid out with flex rather than table cells: a table row
   set to `block` inside a `table` collapses to one column's width, which is
   what squashed the shipping options. */
.woocommerce .cart_totals table.shop_table,
.woocommerce .cart_totals table.shop_table tbody {
  display: block;
  width: 100%;
  background: transparent;
  border: 0;
  margin-bottom: 20px;
}
.woocommerce .cart_totals table.shop_table tbody { margin-bottom: 0; }
.woocommerce .cart_totals table.shop_table tr {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  padding: 16px 0;
  border-top: 1px solid rgba(231,143,52,.14);
}
.woocommerce .cart_totals table.shop_table tr:first-child { border-top: 0; padding-top: 0; }
.woocommerce .cart_totals table.shop_table th,
.woocommerce .cart_totals table.shop_table td {
  display: block;
  padding: 0;
  border: 0;
  background: transparent;
}
.woocommerce .cart_totals table.shop_table th { flex: 0 0 auto; text-align: left; }
.woocommerce .cart_totals table.shop_table td { flex: 1 1 auto; text-align: right; }
.woocommerce .cart_totals tfoot th, .woocommerce .cart_totals tfoot td { background: transparent; }
.woocommerce .shipping-calculator-button { color: #E78F34; text-decoration: none; }
.woocommerce .shipping-calculator-button:hover { color: #F5B87A; }

/* shipping row — the options need the full width of the totals box, not a
   narrow right-hand column shared with the "Shipping to …" line */
.woocommerce .cart_totals table.shop_table tr.woocommerce-shipping-totals {
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
}
.woocommerce .cart_totals table.shop_table tr.woocommerce-shipping-totals th,
.woocommerce .cart_totals table.shop_table tr.woocommerce-shipping-totals td {
  width: 100%;
  text-align: left;
}
.woocommerce ul#shipping_method { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.woocommerce ul#shipping_method li {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin: 0;
  color: #DED6C9;
  text-align: left;
}
.woocommerce ul#shipping_method li input[type="radio"] { flex: 0 0 auto; margin: 0; }
.woocommerce ul#shipping_method li label { display: inline; margin: 0; color: #DED6C9; font-size: 16px; letter-spacing: 0; }
.woocommerce ul#shipping_method .amount { font-family: 'Playfair Display', serif; color: #F0B968; }
.woocommerce .woocommerce-shipping-destination {
  display: block;
  margin: 12px 0 0;
  color: #9BA6B4;
  font-size: 14.5px;
  text-align: left;
}
.woocommerce-cart .wc-empty-cart-message,
.woocommerce .cart-empty {
  font-family: 'Playfair Display', serif;
  font-size: 24px;
  color: #FBF6EE;
  text-align: center;
}
.woocommerce .return-to-shop { text-align: center; margin-top: 22px; }

/* ---------- checkout specifics ---------- */
.woocommerce-checkout .col2-set { display: grid; grid-template-columns: 1fr; gap: 0; }
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 { width: 100%; float: none; }
.woocommerce-checkout #customer_details {
  background-color: rgba(255,255,255,.025);
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
  padding: 30px 32px;
  margin-bottom: 30px;
}
.woocommerce-checkout .woocommerce-checkout-review-order { margin-top: 0; }
.woocommerce-checkout #payment { background: transparent; border-radius: 0; }
.woocommerce-checkout #payment ul.payment_methods {
  border-bottom: 1px solid rgba(231,143,52,.16);
  padding: 0 0 18px;
  margin: 0 0 18px;
  list-style: none;
}
.woocommerce-checkout #payment ul.payment_methods li {
  padding: 12px 0;
  color: #DED6C9;
}
.woocommerce-checkout #payment ul.payment_methods li label { display: inline; font-size: 16px; color: #EFE8DC; letter-spacing: 0; }
/* GeneratePress hides the native radio and draws its own tick on the label */
.woocommerce-checkout #payment .payment_methods > .wc_payment_method > label {
  display: block;
  padding: 16px 18px;
  background-color: rgba(255,255,255,.04);
  border: 1px solid rgba(231,143,52,.2);
  border-radius: 4px;
  color: #EFE8DC;
  transition: background-color .22s ease, border-color .22s ease;
}
.woocommerce-checkout #payment .payment_methods > .wc_payment_method > label:hover {
  background-color: rgba(231,143,52,.1);
  border-color: rgba(231,143,52,.4);
}
.woocommerce-checkout #payment .payment_methods > .wc_payment_method > label::before { color: #E78F34; }
.woocommerce-checkout #payment .payment_methods li.wc_payment_method > input[type="radio"]:first-child:checked + label {
  background-color: rgba(231,143,52,.16);
  border-color: #E78F34;
  color: #FBF6EE;
}
.woocommerce-checkout #payment div.payment_box {
  background-color: rgba(231,143,52,.08);
  border: 1px solid rgba(231,143,52,.2);
  border-radius: 4px;
  color: #B9B2A7;
  font-size: 15px;
  padding: 16px 18px;
  margin: 12px 0 0;
}
.woocommerce-checkout #payment div.payment_box::before { display: none; }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { margin-bottom: 18px; }
.woocommerce-checkout .woocommerce-privacy-policy-text p,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper p { color: #9BA6B4; font-size: 15px; }
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .woocommerce-form-login-toggle { margin-bottom: 24px; }

/* ---------- my account ---------- */
.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
  display: grid;
  grid-template-columns: 268px minmax(0,1fr);
  gap: 36px;
  align-items: start;
}
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content { width: auto; float: none; }
/* the content is emitted before the navigation, so place both explicitly */
.woocommerce-account .woocommerce-MyAccount-navigation { grid-column: 1; grid-row: 1; }
.woocommerce-account .woocommerce-MyAccount-content { grid-column: 2; grid-row: 1; }
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  margin: 0; padding: 0; list-style: none;
  display: flex; flex-direction: column; gap: 8px;
  border-top: 0; /* GeneratePress draws a light rule here */
}
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; }
/* GeneratePress appends a chevron glyph to the active item */
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a::after { display: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 13px 20px;
  border: 1px solid rgba(231,143,52,.2);
  border-radius: 999px;
  color: #CFC7BB;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 15px;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color .22s ease, border-color .22s ease, color .22s ease;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  background-color: rgba(231,143,52,.16);
  border-color: #E78F34;
  color: #F5B87A;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background-image: linear-gradient(135deg,#F0B968,#C97E2A);
  border-color: transparent;
  color: #1A1206;
  font-weight: 600;
}
.woocommerce-account .woocommerce-MyAccount-content p { color: #C6BFB4; }
.woocommerce-account .woocommerce-MyAccount-content a:not(.button) { color: #E78F34; text-decoration: none; }
.woocommerce-account .woocommerce-MyAccount-content a:not(.button):hover { color: #F5B87A; }
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register { max-width: 520px; margin: 0 auto; }
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; }
.woocommerce-account .woocommerce-form-login .lost_password a { color: #E78F34; text-decoration: none; }
.woocommerce-account .woocommerce-Address { margin-bottom: 24px; }
.woocommerce-account .woocommerce-Address address {
  background-color: rgba(255,255,255,.025);
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
  padding: 20px 22px;
  color: #CFC7BB;
  font-style: normal;
  line-height: 1.8;
}

/* ---------- specificity: WooCommerce's own field and panel rules ----------
   core woocommerce.css uses `.woocommerce form .form-row .input-text` (0,3,0)
   and `.woocommerce form.login` (0,2,1), both of which outrank the generic
   field rules above, so the contested declarations are restated here. */
.woocommerce form .form-row .input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea,
.woocommerce form.login .input-text,
.woocommerce form.register .input-text,
.woocommerce .woocommerce-form .input-text,
.woocommerce-page form .form-row .input-text {
  background-color: rgba(255,255,255,.04);
  border: 1px solid rgba(231,143,52,.28);
  border-radius: 4px;
  color: #FBF6EE;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 16px;
  padding: 13px 16px;
}
.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form.login .input-text:focus,
.woocommerce form.register .input-text:focus,
.woocommerce .woocommerce-form .input-text:focus {
  outline: 0;
  border-color: #E78F34;
  background-color: rgba(255,255,255,.07);
  box-shadow: 0 0 0 3px rgba(231,143,52,.18);
}
.woocommerce form .form-row .input-text::placeholder { color: #6E7A89; }
.woocommerce form.login,
.woocommerce form.register {
  background-color: rgba(255,255,255,.025);
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
  padding: 30px 32px;
}

/* ---------- notices ---------- */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  background-color: rgba(255,255,255,.03);
  border: 1px solid rgba(231,143,52,.3);
  border-left: 3px solid #E78F34;
  border-radius: 4px;
  color: #EFE8DC;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 16px;
  padding: 16px 20px;
  margin: 0 0 26px;
  list-style: none;
}
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before { display: none; }
.woocommerce .woocommerce-error { border-left-color: #D4623A; border-color: rgba(212,98,58,.45); }
/* The "View cart" button in a notice inherited the theme's dark fill on the
   notice's dark ground, so it read as an empty box. It is an outline button. */
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-message a.button,
.woocommerce .woocommerce-info a.button,
.woocommerce-notices-wrapper .woocommerce-message a.button,
.woocommerce-notices-wrapper .woocommerce-info a.button {
  margin-left: auto;
  padding: 11px 24px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  line-height: 1.2;
  background: transparent;
  background-color: transparent;
  background-image: none;
  /* the site-wide button rule pins dark text with !important for amber fills */
  color: #F0B968 !important;
  border: 1px solid rgba(231,143,52,.55);
  border-radius: 999px;
  text-decoration: none;
  box-shadow: none;
  transition: background-color .22s ease, color .22s ease, border-color .22s ease;
}

/* loading overlay */
.woocommerce .blockUI.blockOverlay { background-color: #0A111B !important; opacity: .7 !important; }

/* ---------- responsive ---------- */
@media (max-width: 1024px) {
  .woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) { grid-template-columns: 1fr; gap: 26px; }
  .woocommerce-account .woocommerce-MyAccount-navigation { grid-column: 1; grid-row: 1; }
  .woocommerce-account .woocommerce-MyAccount-content { grid-column: 1; grid-row: 2; }
  .woocommerce-account .woocommerce-MyAccount-navigation ul { flex-direction: row; flex-wrap: wrap; }
  .woocommerce-cart .cart_totals,
  .woocommerce-checkout #customer_details,
  .woocommerce-checkout #order_review,
  .woocommerce-account .woocommerce-MyAccount-content { padding: 24px 22px; }
}
/* 768px, not 767px: WooCommerce's own woocommerce-smallscreen.css switches the
   cart table at max-width:768px, so the card layout has to start at the same
   point or 768px lands between the two and the columns overflow. */
@media (max-width: 768px) {
  /* Scoped to the items table — the totals table is also .shop_table and must
     not be turned into stacked cards. */
  .woocommerce-cart form.woocommerce-cart-form table.shop_table thead { display: none; }
  .woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr {
    display: block;
    border: 1px solid rgba(231,143,52,.18);
    border-radius: 4px;
    margin-bottom: 16px;
    padding: 8px 4px;
  }
  .woocommerce-cart form.woocommerce-cart-form table.shop_table tbody td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    border-top: 0;
    padding: 10px 16px;
    text-align: right;
  }
  .woocommerce-cart form.woocommerce-cart-form table.shop_table tbody td::before {
    content: attr(data-title);
    font-size: 12px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #8E97A3;
  }
  .woocommerce-cart form.woocommerce-cart-form table.shop_table tbody td.product-remove::before,
  .woocommerce-cart form.woocommerce-cart-form table.shop_table tbody td.product-thumbnail::before { content: none; }
  /* the desktop column widths must not survive into the stacked card layout */
  .woocommerce-cart form.woocommerce-cart-form table.shop_table tbody td { width: auto; padding-left: 16px; padding-right: 16px; }
  .woocommerce-cart form.woocommerce-cart-form table.shop_table tbody td.product-remove { justify-content: flex-end; text-align: right; }
  /* WooCommerce hides the thumbnail on small screens with an !important rule;
     the card reads better with the bottle visible, so it has to answer in kind */
  .woocommerce-cart form.woocommerce-cart-form table.shop_table tbody td.product-thumbnail {
    display: flex !important;
    justify-content: center;
    width: auto;
    padding-top: 14px;
    padding-bottom: 6px;
  }
  .woocommerce table.shop_table td.product-thumbnail img { width: 104px !important; height: 104px !important; }

  /* totals table: label on its own line, figure beneath, everything left aligned */
  .woocommerce .cart_totals table.shop_table tr {
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
  }
  .woocommerce .cart_totals table.shop_table th,
  .woocommerce .cart_totals table.shop_table td { width: 100%; text-align: left; }
  .woocommerce .cart_totals table.shop_table td::before { content: none; }
  .woocommerce .cart .actions { flex-direction: column; align-items: stretch; }
  /* the actions cell is a plain block on small screens — a column flex box that
     is allowed to wrap turns the field and button into two half-width columns */
  .woocommerce table.cart td.actions,
  .woocommerce-page table.cart td.actions {
    display: block !important;
    padding: 18px 16px;
  }
  .woocommerce table.cart td.actions .coupon,
  .woocommerce-page table.cart td.actions .coupon {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 10px;
    width: 100%;
    padding: 0;
    margin: 0;
  }
  .woocommerce #content table.cart td.actions .coupon .input-text,
  .woocommerce table.cart td.actions .coupon .input-text,
  .woocommerce-page #content table.cart td.actions .coupon .input-text,
  .woocommerce-page table.cart td.actions .coupon .input-text {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    text-align: center;
  }
  .woocommerce #content table.cart td.actions .coupon .button,
  .woocommerce table.cart td.actions .coupon .button,
  .woocommerce-page #content table.cart td.actions .coupon .button,
  .woocommerce-page table.cart td.actions .coupon .button,
  .woocommerce #content table.cart td.actions .button,
  .woocommerce table.cart td.actions .button {
    width: 100%;
    float: none;
    white-space: nowrap;
  }
}
/* ---------- mini-cart drawer ----------
   The filled-contents block is height:100% but sits below a 76px close bar, so
   it overflows the drawer by exactly that much and buries the checkout button.
   Making the column a real flex stack pins the footer and scrolls the items. */
.wc-block-mini-cart__drawer .wc-block-components-drawer__content,
.wc-block-mini-cart__drawer .wc-block-mini-cart__template-part,
.wc-block-mini-cart__drawer .wp-block-woocommerce-mini-cart-contents {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}
.wc-block-mini-cart__drawer .wc-block-components-drawer__close-wrapper { flex: 0 0 auto; }
.wc-block-mini-cart__drawer .wp-block-woocommerce-filled-mini-cart-contents-block,
.wc-block-mini-cart__drawer .wp-block-woocommerce-empty-mini-cart-contents-block {
  flex: 1 1 auto;
  min-height: 0;
  height: auto;
}
.wc-block-mini-cart__drawer .wc-block-mini-cart__title { flex: 0 0 auto; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__items {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.wc-block-mini-cart__drawer .wc-block-mini-cart__products-table { margin-bottom: 0; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer {
  flex: 0 0 auto;
  padding-bottom: calc(22px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid rgba(231,143,52,.16);
  background-color: rgba(255,255,255,.02);
}
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  height: auto;
}
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wc-block-components-button {
  min-height: 0;
  padding: 12px 24px;
  font-size: 13px;
  letter-spacing: .13em;
}
/* short viewports: let the whole drawer scroll rather than clip the footer */
@media (max-height: 560px) {
  .wc-block-mini-cart__drawer .wc-block-mini-cart__items { overflow-y: auto; }
  .wc-block-mini-cart__drawer .wc-block-mini-cart__footer { padding-top: 14px; padding-bottom: 14px; }
  .wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wc-block-components-button { padding: 10px 20px; }
}

/* ---------- cart page: products beside the totals ---------- */
.woocommerce-cart .woocommerce:has(.cart-collaterals) {
  display: grid;
  grid-template-columns: minmax(0,1fr) 360px;
  column-gap: 32px;
  row-gap: 24px;
  align-items: start;
}
.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-cart .woocommerce > form.woocommerce-cart-form { grid-column: 1; grid-row: 2; margin: 0; }
.woocommerce-cart .woocommerce > .cart-collaterals {
  grid-column: 2;
  grid-row: 2;
  width: auto;
  float: none;
  margin: 0;
  position: sticky;
  top: 24px;
}
.woocommerce-cart .cart-collaterals .cart_totals { width: auto; float: none; margin: 0; }
.woocommerce-cart .cart-collaterals::after { content: none; }
/* the table no longer needs to reserve room for a right-hand totals box */
.woocommerce-cart table.shop_table { margin-bottom: 0; }

@media (max-width: 1024px) {
  .woocommerce-cart .woocommerce:has(.cart-collaterals) { grid-template-columns: minmax(0,1fr); }
  .woocommerce-cart .woocommerce > form.woocommerce-cart-form { grid-column: 1; grid-row: 2; }
  .woocommerce-cart .woocommerce > .cart-collaterals { grid-column: 1; grid-row: 3; position: static; }
}

/* ---------- quantity auto-update feedback ---------- */
@keyframes wedu-spin { to { transform: rotate(360deg); } }

/* totals panel: dim it and float a spinner while the new figures are fetched */
.woocommerce .cart_totals.cart-updating { position: relative; }
.woocommerce .cart_totals.cart-updating > * { opacity: .35; transition: opacity .15s ease; }
.woocommerce .cart_totals.cart-updating::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 34px;
  height: 34px;
  margin: -17px 0 0 -17px;
  border: 2px solid rgba(231,143,52,.25);
  border-top-color: #E78F34;
  border-radius: 999px;
  animation: wedu-spin .7s linear infinite;
  pointer-events: none;
  z-index: 3;
}

/* the line total is replaced by a small spinner so the row reads as "working" */
.woocommerce .product-subtotal.is-loading { position: relative; color: transparent !important; }
.woocommerce .product-subtotal.is-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 18px;
  height: 18px;
  margin-top: -9px;
  border: 2px solid rgba(231,143,52,.25);
  border-top-color: #E78F34;
  border-radius: 999px;
  animation: wedu-spin .7s linear infinite;
}
.woocommerce tr.row-updating .quantity { opacity: .7; }
.woocommerce .quantity.is-busy .qty { opacity: .55; }

/* the manual button is redundant once quantities save themselves */
.woocommerce table.cart td.actions button[name="update_cart"] { display: none; }

@media (prefers-reduced-motion: reduce) {
  .woocommerce .cart_totals.cart-updating::after,
  .woocommerce .product-subtotal.is-loading::after { animation-duration: 2s; }
}

/* ---------- breadcrumbs ----------
   The shop hero already carries one, so the theme's copy is hidden there only —
   single product pages keep theirs, dressed to match. */
.post-type-archive-product nav.woocommerce-breadcrumb,
.post-type-archive-product .woocommerce-breadcrumb { display: none; }

.single-product nav.woocommerce-breadcrumb,
.single-product .woocommerce-breadcrumb {
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 14px;
  letter-spacing: .06em;
  color: #8E97A3;
  margin: 0 0 22px;
}
.single-product .woocommerce-breadcrumb a { color: #CFC7BB; text-decoration: none; }
.single-product .woocommerce-breadcrumb a:hover { color: #F5B87A; }

/* ---------- product-card buttons: smaller, centred, less glare ---------- */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.add_to_cart_button {
  align-self: center;
  width: auto;
  margin: 16px 24px 24px;
  padding: 10px 22px;
  font-size: 12.5px;
  letter-spacing: .13em;
  background-image: linear-gradient(135deg,#EFB775,#E09A46 55%,#C4802F);
  box-shadow: 0 8px 20px -12px rgba(231,143,52,.7);
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.add_to_cart_button:hover {
  background-image: linear-gradient(135deg,#F5B87A,#EFB775 55%,#E09A46);
  transform: translateY(-1px);
  box-shadow: 0 14px 28px -14px rgba(231,143,52,.85);
}
/* single product add-to-cart */
.woocommerce div.product form.cart .single_add_to_cart_button {
  padding: 12px 28px;
  font-size: 13.5px;
  letter-spacing: .13em;
}


/* select2 appends the open panel straight to <body>, where the full-width
   rule for form fields would stretch it across the viewport. */
body > .select2-container,
body > .select2-container--open {
  width: auto !important;
  max-width: none;
}

/* ===== end Whiskey EDU cart, checkout & account ===== */

/* ===== Whiskey EDU knowledge articles =====
   The article body is written with core blocks so it stays natural to edit;
   everything it needs visually comes from this one place. ===== */

/* Single posts are built from full-bleed sections that carry the shared
   container themselves, so the theme wrapper must not add a second gutter. */
.single-post .site.grid-container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

#wedu-article {
  font-family: 'Barlow Semi Condensed', sans-serif;
  color: #C6BFB4;
  font-size: 17.5px;
  line-height: 1.85;
}

/* ---------- headings ---------- */
#wedu-article h2,
#wedu-article h3,
#wedu-article h4 {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  color: #FBF6EE;
  text-wrap: balance;
  scroll-margin-top: 96px; /* the header is sticky */
}
#wedu-article h2 {
  font-size: 32px;
  line-height: 1.2;
  margin: 52px 0 18px;
  padding-top: 26px;
  border-top: 1px solid rgba(231,143,52,.16);
}
#wedu-article h2:first-child,
#wedu-article .wedu-toc + h2 { margin-top: 0; padding-top: 0; border-top: 0; }
#wedu-article h3 {
  font-size: 23px;
  line-height: 1.28;
  color: #F0B968;
  margin: 36px 0 12px;
}
#wedu-article h4 {
  font-size: 19px;
  line-height: 1.35;
  margin: 28px 0 10px;
}

/* ---------- prose ---------- */
#wedu-article p {
  margin: 0 0 20px;
  text-wrap: pretty;
}
#wedu-article > p:first-of-type {
  font-size: 19px;
  color: #DED6C9;
}
#wedu-article strong,
#wedu-article b { color: #EFE8DC; font-weight: 600; }
#wedu-article em, #wedu-article i { color: #DED6C9; }
#wedu-article a {
  color: #E78F34;
  text-decoration: none;
  border-bottom: 1px solid rgba(231,143,52,.4);
  transition: color .2s ease, border-color .2s ease;
}
#wedu-article a:hover,
#wedu-article a:focus { color: #F5B87A; border-bottom-color: #F5B87A; }

/* ---------- lists ---------- */
#wedu-article ul,
#wedu-article ol { margin: 0 0 22px; padding-left: 0; list-style: none; }
#wedu-article li { position: relative; padding-left: 26px; margin-bottom: 10px; }
#wedu-article ul > li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: .72em;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background-image: linear-gradient(135deg,#F0B968,#C97E2A);
}
#wedu-article ol { counter-reset: wedu-ol; }
#wedu-article ol > li { counter-increment: wedu-ol; }
#wedu-article ol > li::before {
  content: counter(wedu-ol) ".";
  position: absolute;
  left: 0;
  top: 0;
  color: #E78F34;
  font-family: 'Playfair Display', serif;
  font-size: 16px;
}
#wedu-article li > ul,
#wedu-article li > ol { margin: 10px 0 0; }

/* ---------- media ---------- */
#wedu-article figure,
#wedu-article .wp-block-image { margin: 32px 0; }
#wedu-article img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 4px;
  border: 1px solid rgba(231,143,52,.18);
}
#wedu-article figcaption {
  margin-top: 10px;
  font-size: 14.5px;
  color: #8E97A3;
  text-align: center;
}

/* ---------- quote ---------- */
#wedu-article blockquote {
  margin: 32px 0;
  padding: 4px 0 4px 24px;
  border-left: 3px solid #E78F34;
  font-family: 'Playfair Display', serif;
  font-size: 21px;
  line-height: 1.55;
  color: #EFE8DC;
}
#wedu-article blockquote p:last-child { margin-bottom: 0; }

/* ---------- table ---------- */
#wedu-article .wp-block-table { overflow-x: auto; }
#wedu-article table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
  font-size: 16px;
}
#wedu-article th,
#wedu-article td { padding: 12px 16px; border-top: 1px solid rgba(231,143,52,.12); text-align: left; }
#wedu-article thead th {
  border-top: 0;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 13px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #9BA6B4 !important;
}

#wedu-article hr,
#wedu-article .wp-block-separator {
  border: 0;
  height: 1px;
  background-image: linear-gradient(90deg, rgba(231,143,52,.4), rgba(231,143,52,0));
  margin: 40px 0;
}

/* ---------- on this page ---------- */
.wedu-toc {
  margin: 0 0 40px;
  padding: 24px 26px;
  background-color: rgba(255,255,255,.025);
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
}
.wedu-toc__title {
  font-family: 'Barlow Semi Condensed', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: #E78F34 !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  border: 0 !important;
}
.wedu-toc__list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
  counter-reset: wedu-toc;
  columns: 2;
  column-gap: 28px;
}
.wedu-toc__list li {
  counter-increment: wedu-toc;
  position: relative;
  padding-left: 26px !important;
  margin-bottom: 8px !important;
  break-inside: avoid;
}
.wedu-toc__list li::before {
  content: counter(wedu-toc, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 1px;
  font-size: 12px;
  letter-spacing: .06em;
  color: #6E7A89;
  background: none !important;
  width: auto !important;
  height: auto !important;
  border-radius: 0 !important;
}
.wedu-toc__list a {
  color: #CFC7BB !important;
  font-size: 15.5px;
  line-height: 1.5;
  text-decoration: none;
  border-bottom: 0 !important;
  transition: color .2s ease;
}
.wedu-toc__list a:hover,
.wedu-toc__list a:focus { color: #F5B87A !important; }

/* ---------- responsive ---------- */
@media (max-width: 1024px) {
  #wedu-article { font-size: 17px; }
  #wedu-article h2 { font-size: 28px; margin-top: 44px; }
  #wedu-article h3 { font-size: 21px; }
}
@media (max-width: 767px) {
  #wedu-article { font-size: 16.5px; line-height: 1.8; }
  #wedu-article > p:first-of-type { font-size: 17.5px; }
  #wedu-article h2 { font-size: 25px; margin-top: 38px; padding-top: 22px; }
  #wedu-article h3 { font-size: 20px; margin-top: 28px; }
  #wedu-article h4 { font-size: 18px; }
  .wedu-toc { padding: 20px 20px; margin-bottom: 32px; }
  .wedu-toc__list { columns: 1; }
}
/* ===== end Whiskey EDU knowledge articles ===== */

/* ===== Whiskey EDU single product =====
   WooCommerce ships this page light-on-white, so most of what follows is
   re-dressing its own markup for the dark palette. ===== */

/* ---------- the horizontal scrollbar ----------
   WooCommerce's variation reset alert carries .screen-reader-text but only the
   clip rule, so it still occupies ~1100px and stretches the document. */
.woocommerce .screen-reader-text,
.woocommerce .reset_variations_alert,
.single-product .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* ---------- layout ---------- */
.single-product div.product {
  font-family: 'Barlow Semi Condensed', sans-serif;
  color: #C6BFB4;
}
.single-product div.product .woocommerce-product-gallery { margin-bottom: 40px; }
.single-product div.product .woocommerce-product-gallery img {
  border-radius: 4px;
  border: 1px solid rgba(231,143,52,.18);
}
.single-product div.product .summary { margin-bottom: 40px; }

/* ---------- title, price, short description ---------- */
.single-product h1.product_title,
.single-product div.product h1.product_title.entry-title {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  font-size: 42px;
  line-height: 1.12;
  color: #FBF6EE;
  margin: 0 0 14px;
  text-wrap: balance;
}
.single-product div.product p.price,
.single-product div.product span.price,
.single-product div.product p.price .amount,
.single-product div.product p.price bdi,
.single-product div.product p.price ins,
.woocommerce div.product p.price {
  font-family: 'Playfair Display', serif;
  font-size: 28px;
  line-height: 1.2;
  color: #F0B968;
  margin: 0 0 18px;
  text-decoration: none;
}
.single-product div.product p.price del,
.single-product div.product p.price del bdi { color: #6E7A89; font-size: 21px; }

.single-product .woocommerce-product-details__short-description {
  color: #C6BFB4;
  font-size: 16.5px;
  line-height: 1.8;
  margin-bottom: 22px;
}
.single-product .woocommerce-product-details__short-description p { margin: 0 0 12px; color: #C6BFB4; }
.single-product .woocommerce-product-details__short-description strong { color: #EFE8DC; }

/* ---------- variation picker ---------- */
.single-product .variations { width: 100%; margin: 0 0 18px; border: 0; }
.single-product .variations tr { display: flex; flex-direction: column; gap: 8px; margin-bottom: 16px; }
.single-product .variations th,
.single-product .variations td { display: block; width: 100%; padding: 0; border: 0; text-align: left; }
.single-product .variations th.label label,
.single-product .variations label {
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #9BA6B4;
  margin: 0;
}
/* The theme's own snippet pins this at #757575 on a transparent field.
   Note the native control is only what a visitor sees before selectWoo takes
   over (see whiskyedu-variation-select.php) — it has to look right on its own. */
.woocommerce div.product form.cart .variations select,
.single-product .variations select,
.single-product div.product form.cart .variations select {
  width: 100%;
  box-sizing: border-box;
  padding: 13px 44px 13px 16px;
  background-color: rgba(255,255,255,.05);
  border: 1px solid rgba(231,143,52,.3);
  border-radius: 4px;
  color: #FBF6EE;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 16px;
  line-height: 1.4;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  /* tells the browser to draw its own popup chrome dark rather than light */
  color-scheme: dark;
  background-image:
    linear-gradient(45deg, transparent 50%, #E78F34 50%),
    linear-gradient(135deg, #E78F34 50%, transparent 50%);
  background-position: calc(100% - 22px) calc(50% + 2px), calc(100% - 16px) calc(50% + 2px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  transition: border-color .22s ease, background-color .22s ease, box-shadow .22s ease;
}
.woocommerce div.product form.cart .variations select:focus,
.single-product .variations select:focus {
  outline: 0;
  border-color: #E78F34 !important;
  background-color: rgba(255,255,255,.08) !important;
  box-shadow: 0 0 0 3px rgba(231,143,52,.18);
}
.woocommerce div.product form.cart .variations select option,
.single-product .variations select option {
  background-color: #0D1725;
  color: #EFE8DC;
}
.woocommerce div.product form.cart .variations select option:checked,
.single-product .variations select option:checked,
.single-product .variations select option:hover {
  background-color: #E78F34;
  color: #14202F;
}

/* ---------- the selectWoo version of the same picker ----------
   The panel itself is themed globally with the rest of the site's select2
   dropdowns; these rules only fit the control into the variations table. */
.single-product .variations .select2-container,
.woocommerce div.product form.cart .variations .select2-container {
  width: 100% !important;
  display: block;
}
.single-product .variations .select2-container--default .select2-selection--single {
  min-height: 50px;
  padding: 6px 10px;
}
.single-product .variations .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 36px;
  font-size: 16px;
}
/* selectWoo copies the native control's classes onto its own; the arrow is
   drawn by select2 so the gradient triangles must not come with it. */
.single-product .variations .select2-container .select2-selection {
  background-image: none;
  appearance: auto;
}

/* WooCommerce puts min-width:75% on the variation select. select2 hides the
   real control with width:1px, but a min-width outranks that whatever the
   !important flags say, so the hidden select kept stretching the document. */
.woocommerce div.product form.cart .variations select.select2-hidden-accessible,
.single-product .variations select.select2-hidden-accessible {
  min-width: 0 !important;
  width: 1px !important;
  padding: 0 !important;
  border: 0 !important;
}

/* The shared select2 dressing adds its own row padding; inside the variations
   table that stacks with WooCommerce's and the control grows to 66px. */
.single-product .variations .select2-container--default .select2-selection--single .select2-selection__rendered {
  padding: 0 22px 0 6px;
}
.single-product .reset_variations {
  display: inline-block;
  margin-top: 8px;
  font-size: 14px;
  color: #E78F34;
  text-decoration: none;
}
.single-product .reset_variations:hover { color: #F5B87A; }
.single-product .single_variation_wrap .woocommerce-variation-price { margin-bottom: 14px; }

/* ---------- add to cart row ---------- */
.single-product div.product form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-bottom: 24px; }
.single-product div.product form.cart .variations,
.single-product div.product form.cart .single_variation_wrap { flex: 1 1 100%; }
.single-product div.product form.cart .quantity { margin: 0; }

/* ---------- product meta ---------- */
.single-product .product_meta {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(231,143,52,.16);
  font-size: 14.5px;
  color: #8E97A3;
}
.single-product .product_meta > span { display: block; margin-bottom: 6px; }
.single-product .product_meta a { color: #CFC7BB; text-decoration: none; }
.single-product .product_meta a:hover { color: #F5B87A; }

/* ---------- tabs ----------
   WooCommerce paints the selected tab solid white through `ul.tabs li.active`,
   which outranks a plain `li` rule — that is what hid the ivory label against
   an ivory background. The active state is rebuilt on the li itself. */
.woocommerce div.product .woocommerce-tabs { margin-top: 16px; }
.woocommerce div.product .woocommerce-tabs ul.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 30px;
  padding: 0;
  list-style: none;
  border-bottom: 1px solid rgba(231,143,52,.24);
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after { display: none; }

.woocommerce div.product .woocommerce-tabs ul.tabs li,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  margin: 0;
  padding: 0;
  background: transparent;
  background-color: transparent;
  border: 0;
  border-radius: 5px 5px 0 0;
  box-shadow: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; content: none !important; }

.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  display: block;
  padding: 14px 24px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 13.5px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #AEB8C6 !important;
  text-decoration: none;
  text-shadow: none;
  background-color: transparent;
  border-radius: 5px 5px 0 0;
  border-bottom: 2px solid transparent;
  transition: color .22s ease, border-color .22s ease, background-color .22s ease;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
  color: #F0B968 !important;
  background-color: rgba(231,143,52,.07);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li[aria-selected="true"] a {
  color: #F3C07E !important;
  background-color: rgba(231,143,52,.13);
  border-bottom-color: #E78F34;
}

/* ---------- tab panels: same reading treatment as the articles ---------- */
.woocommerce div.product .woocommerce-Tabs-panel {
  max-width: 820px;
  font-size: 16.5px;
  line-height: 1.85;
  color: #C6BFB4;
}
.woocommerce div.product .woocommerce-Tabs-panel > h2 {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  font-size: 30px;
  line-height: 1.2;
  color: #FBF6EE;
  margin: 0 0 18px;
}
.woocommerce div.product .woocommerce-Tabs-panel h3 {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 1.28;
  color: #F0B968;
  margin: 34px 0 12px;
}
.woocommerce div.product .woocommerce-Tabs-panel h4 {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  font-size: 19.5px;
  line-height: 1.35;
  color: #FBF6EE;
  margin: 26px 0 10px;
}
.woocommerce div.product .woocommerce-Tabs-panel p { margin: 0 0 18px; text-wrap: pretty; }
.woocommerce div.product .woocommerce-Tabs-panel strong { color: #EFE8DC; font-weight: 600; }
.woocommerce div.product .woocommerce-Tabs-panel a {
  color: #E78F34;
  text-decoration: none;
  border-bottom: 1px solid rgba(231,143,52,.4);
}
.woocommerce div.product .woocommerce-Tabs-panel a:hover { color: #F5B87A; border-bottom-color: #F5B87A; }
.woocommerce div.product .woocommerce-Tabs-panel ul,
.woocommerce div.product .woocommerce-Tabs-panel ol { margin: 0 0 20px; padding-left: 22px; }
.woocommerce div.product .woocommerce-Tabs-panel li { margin-bottom: 8px; }

/* attributes table on the Additional information tab */
.woocommerce div.product .shop_attributes {
  width: 100%;
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
  border-collapse: separate;
  border-spacing: 0;
}
.woocommerce div.product .shop_attributes th,
.woocommerce div.product .shop_attributes td {
  padding: 13px 18px;
  border-top: 1px solid rgba(231,143,52,.12);
  text-align: left;
  font-style: normal;
}
.woocommerce div.product .shop_attributes tr:first-child th,
.woocommerce div.product .shop_attributes tr:first-child td { border-top: 0; }
.woocommerce div.product .shop_attributes th {
  font-size: 13px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #9BA6B4;
  font-weight: 600;
}
.woocommerce div.product .shop_attributes td { color: #DED6C9; }
.woocommerce div.product .shop_attributes td p { margin: 0; }

/* reviews — these headings sit inside #reviews, so the panel's own > h2 rule
   never reaches them */
.woocommerce #reviews h2,
.woocommerce #reviews #comments > h2 {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  font-size: 30px;
  line-height: 1.2;
  color: #FBF6EE;
  margin: 0 0 18px;
}
.woocommerce #reviews #reply-title,
.woocommerce #reviews h3 {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  font-size: 23px;
  line-height: 1.25;
  color: #FBF6EE;
  margin: 0 0 14px;
}
.woocommerce #reviews .woocommerce-noreviews { color: #9BA6B4; }
.woocommerce #review_form_wrapper { margin-top: 26px; }
.woocommerce #reviews .comment-form-rating label,
.woocommerce #reviews label { color: #B9B2A7; }
.woocommerce #reviews p.stars a { color: #E78F34; }
.woocommerce #reviews p.stars a:hover { color: #F5B87A; }
.woocommerce #reviews .comment-form-cookies-consent label { display: inline; font-size: 15px; }
.woocommerce #reviews .comment-notes,
.woocommerce #reviews .comment-form p.form-submit { color: #9BA6B4; }
.woocommerce #reviews ol.commentlist li .comment-text {
  background-color: rgba(255,255,255,.025);
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 4px;
  padding: 20px 22px;
  color: #C6BFB4;
}
.woocommerce #reviews ol.commentlist li .comment-text .meta { color: #9BA6B4; }

/* ---------- related products ---------- */
.woocommerce div.product .related.products,
.woocommerce div.product .upsells.products {
  margin-top: 56px;
  padding-top: 40px;
  border-top: 1px solid rgba(231,143,52,.16);
}
.woocommerce div.product .related.products > h2,
.woocommerce div.product .upsells.products > h2 {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  font-size: 30px;
  line-height: 1.2;
  color: #FBF6EE;
  margin: 0 0 26px;
}

/* ---------- responsive ---------- */
@media (max-width: 1024px) {
  .single-product h1.product_title,
  .single-product div.product h1.product_title.entry-title { font-size: 34px; }
  .single-product div.product p.price { font-size: 25px; }
  .woocommerce div.product .woocommerce-Tabs-panel > h2,
  .woocommerce div.product .related.products > h2 { font-size: 26px; }
  .woocommerce div.product .woocommerce-Tabs-panel h3 { font-size: 22px; }
}

@media (max-width: 768px) {
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary {
    width: 100% !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .single-product div.product .woocommerce-product-gallery { margin-bottom: 26px; }

  .single-product h1.product_title,
  .single-product div.product h1.product_title.entry-title { font-size: 27px; line-height: 1.18; }
  .single-product div.product p.price { font-size: 23px; }

  /* GP Premium's woocommerce-mobile stylesheet turns the strip into a column at
     this width. That is the better layout on a 375px screen — a horizontal
     scroller would hide "Reviews" with no affordance — so the tabs are dressed
     as a stacked list here, with the active marker moved to the left edge. */
  .woocommerce div.product .woocommerce-tabs ul.tabs {
    gap: 0;
    margin-bottom: 22px;
    border-top: 1px solid rgba(231,143,52,.24);
    border-bottom: 1px solid rgba(231,143,52,.24);
  }
  .woocommerce div.product .woocommerce-tabs ul.tabs li,
  .woocommerce div.product .woocommerce-tabs ul.tabs li.active { width: 100%; border-radius: 0; }
  /* the active branch of the base rule is one class heavier, so it has to be
     named here too or the selected tab keeps its desktop treatment. */
  .woocommerce div.product .woocommerce-tabs ul.tabs li a,
  .woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    padding: 14px 16px;
    font-size: 12.5px;
    letter-spacing: .1em;
    text-align: left;
    border-radius: 0;
    border-bottom: 1px solid rgba(231,143,52,.14);
    border-left: 3px solid transparent;
  }
  .woocommerce div.product .woocommerce-tabs ul.tabs li:last-child a,
  .woocommerce div.product .woocommerce-tabs ul.tabs li:last-child.active a { border-bottom: 0; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    border-left-color: #E78F34;
    border-bottom-color: rgba(231,143,52,.14);
  }

  .woocommerce div.product .woocommerce-Tabs-panel { font-size: 16px; }
  .woocommerce div.product .woocommerce-Tabs-panel > h2 { font-size: 24px; }
  .woocommerce div.product .woocommerce-Tabs-panel h3 { font-size: 20px; margin-top: 28px; }
  .woocommerce div.product .woocommerce-Tabs-panel h4 { font-size: 18px; margin-top: 22px; }

  .single-product div.product form.cart { gap: 10px; }
  .single-product div.product form.cart .quantity,
  .single-product div.product form.cart .single_add_to_cart_button { flex: 0 0 auto; }

  .woocommerce div.product .related.products { margin-top: 40px; padding-top: 30px; }
  .woocommerce div.product .related.products > h2 { font-size: 23px; }

  .single-product .shop_attributes th,
  .single-product .shop_attributes td { padding: 11px 14px; font-size: 15px; }
}
/* ===== end Whiskey EDU single product ===== */



/* ===== Whiskey EDU product card images =====
   Each product photo has its own aspect ratio, and the theme leaves image
   height on auto, so the cards in a row start their text at different heights.
   A fixed band with object-fit keeps every card aligned. ===== */

/* The product archive was carrying two gutters — 30px from the theme's content
   wrapper and 20px from the WooCommerce column container — which shrank the
   cards. The column container is the one that matches the rest of the site. */
.post-type-archive-product .site-content,
.tax-product_cat .site-content,
.tax-product_tag .site-content {
  padding-left: 0;
  padding-right: 0;
}

.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img,
.woocommerce ul.products li.product .wc-product-image img,
#wc-column-container ul.products li.product img,
.woocommerce ul.products li.product:hover a img {
  display: block;
  width: 100% !important;
  height: 260px !important;
  max-width: none;
  object-fit: cover;
  object-position: center;
  margin: 0 !important;
  border-radius: 4px 4px 0 0;
}

/* the zoom on hover stays, it just works inside a fixed frame now */
.woocommerce ul.products li.product .wc-product-image,
.woocommerce ul.products li.product > a:first-of-type,
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
  display: block;
  overflow: hidden;
  border-radius: 4px 4px 0 0;
}

/* Product names run to one, two or three lines. Reserving three keeps every
   card the same height without truncating a name the shopper needs to read. */
@media (min-width: 768px) {
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product h2.woocommerce-loop-product__title {
    min-height: 3.9em;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    text-align: center;
    -webkit-line-clamp: none;
    overflow: visible;
  }
}

@media (max-width: 1024px) {
  .woocommerce ul.products li.product a img,
  .woocommerce ul.products li.product img,
  #wc-column-container ul.products li.product img { height: 230px !important; }
}

@media (max-width: 767px) {
  .woocommerce ul.products li.product a img,
  .woocommerce ul.products li.product img,
  #wc-column-container ul.products li.product img { height: 240px !important; }
}
/* ===== end Whiskey EDU product card images ===== */

/* ===== Whiskey EDU add to cart =====
   Adding to the cart no longer reloads the page, so the button itself has to
   report what happened. Same three states everywhere: idle, working, added.
   ===== */

@keyframes wedu-spin { to { transform: rotate(360deg); } }

@keyframes wedu-pop {
  0%   { transform: scale(1); }
  40%  { transform: scale(1.04); }
  100% { transform: scale(1); }
}

@keyframes wedu-notice-in {
  from { opacity: 0; transform: translateY(-8px); }
  to   { opacity: 1; transform: none; }
}

/* ---------- working ---------- */
.woocommerce div.product form.cart .single_add_to_cart_button.wedu-loading,
.woocommerce ul.products li.product a.button.loading,
.woocommerce a.button.loading {
  position: relative;
  color: transparent !important;
  pointer-events: none;
  opacity: 1;
}
.woocommerce div.product form.cart .single_add_to_cart_button.wedu-loading::after,
.woocommerce ul.products li.product a.button.loading::after,
.woocommerce a.button.loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 17px;
  height: 17px;
  margin: -9px 0 0 -9px;
  box-sizing: border-box;
  border: 2px solid rgba(20,32,47,.3);
  border-top-color: #14202F;
  border-radius: 50%;
  animation: wedu-spin .62s linear infinite;
  font-size: 0;
}

/* ---------- added ---------- */
.woocommerce div.product form.cart .single_add_to_cart_button.wedu-added {
  animation: wedu-pop .34s ease;
}
.woocommerce div.product form.cart .single_add_to_cart_button.wedu-added::before {
  content: "\2713";
  margin-right: 9px;
  font-weight: 700;
}
.woocommerce ul.products li.product a.button.added::after,
.woocommerce a.button.added::after {
  content: "\2713";
  margin-left: 8px;
  font-family: inherit;
  font-weight: 700;
  vertical-align: baseline;
}

/* the "View cart" link WooCommerce drops in beside a card button */
.woocommerce ul.products li.product a.added_to_cart,
.woocommerce a.added_to_cart.wc-forward {
  display: inline-block;
  margin-top: 10px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #F0B968;
  text-decoration: none;
  border-bottom: 1px solid rgba(231,143,52,.4);
  transition: color .2s ease, border-color .2s ease;
}
.woocommerce ul.products li.product a.added_to_cart:hover,
.woocommerce a.added_to_cart.wc-forward:hover {
  color: #F5B87A;
  border-bottom-color: #F5B87A;
}

/* the message that replaces the old page reload */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error {
  animation: wedu-notice-in .34s ease both;
}

/* the quantity field should not jump while the row is working */
.woocommerce div.product form.cart .quantity input.qty { transition: opacity .2s ease; }
.woocommerce div.product form.cart.wedu-busy .quantity input.qty { opacity: .55; }

/* ---------- GP Premium's sticky "added to cart" panel ----------
   It slides down on every add — much more visible now that nothing reloads —
   and it ships cream with near-black text. */
#wc-sticky-cart-panel.add-to-cart-panel,
#wc-sticky-cart-panel {
  background-color: #0F1B2B;
  border-bottom: 1px solid rgba(231,143,52,.32);
  box-shadow: 0 18px 44px -30px rgba(0,0,0,.95);
  color: #C6BFB4;
  font-family: 'Barlow Semi Condensed', sans-serif;
}
#wc-sticky-cart-panel .inside-add-to-cart-panel {
  padding-top: 14px;
  padding-bottom: 14px;
}
#wc-sticky-cart-panel .continue-shopping,
#wc-sticky-cart-panel .continue-shopping-link,
#wc-sticky-cart-panel .continue-shopping-text,
#wc-sticky-cart-panel .cart-info,
#wc-sticky-cart-panel .woocommerce-Price-amount,
#wc-sticky-cart-panel bdi,
#wc-sticky-cart-panel .woocommerce-Price-currencySymbol {
  color: #C6BFB4;
  text-decoration: none;
}
#wc-sticky-cart-panel .item-added {
  color: #FBF6EE;
  font-size: 16px;
  letter-spacing: .01em;
}
#wc-sticky-cart-panel .cart-data,
#wc-sticky-cart-panel .cart-data .woocommerce-Price-amount,
#wc-sticky-cart-panel .cart-data bdi {
  color: #9BA6B4;
  font-size: 14.5px;
}
#wc-sticky-cart-panel .continue-shopping-link:hover,
#wc-sticky-cart-panel .continue-shopping-link:hover .continue-shopping-text,
#wc-sticky-cart-panel .continue-shopping:hover { color: #F0B968; }
#wc-sticky-cart-panel .gp-icon svg { fill: currentColor; }
#wc-sticky-cart-panel .checkout .button {
  padding: 11px 26px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .13em;
  text-transform: uppercase;
  border-radius: 999px;
}

@media (max-width: 768px) {
  #wc-sticky-cart-panel .inside-add-to-cart-panel { padding-top: 11px; padding-bottom: 11px; }
  #wc-sticky-cart-panel .item-added { font-size: 14.5px; }
  #wc-sticky-cart-panel .cart-data { font-size: 13px; }
  #wc-sticky-cart-panel .checkout .button { padding: 10px 18px; font-size: 12px; letter-spacing: .1em; }
}

/* ---------- the notice button in every state ----------
   GeneratePress carries `div.woocommerce-message a.button:hover { padding: 0 }`,
   which is one element heavier than the resting rule above — that is why the
   pill collapsed the moment the pointer touched it. Every property the theme
   sets on hover/focus/active has to be named back here. */
.woocommerce .woocommerce-message .button:hover,
.woocommerce .woocommerce-message .button:focus,
.woocommerce .woocommerce-message .button:active,
.woocommerce .woocommerce-info .button:hover,
.woocommerce .woocommerce-info .button:focus,
.woocommerce .woocommerce-info .button:active,
.woocommerce .woocommerce-error .button:hover,
.woocommerce .woocommerce-error .button:focus,
.woocommerce .woocommerce-error .button:active,
.woocommerce .woocommerce-message a.button:hover,
.woocommerce .woocommerce-message a.button:focus,
.woocommerce-notices-wrapper .woocommerce-message a.button:hover,
.woocommerce-notices-wrapper .woocommerce-message a.button:focus {
  padding: 11px 24px;
  border-radius: 999px;
  background-color: #E78F34;
  background-image: linear-gradient(135deg, #F5B87A, #EFB775 55%, #E09A46);
  border: 1px solid #E78F34;
  color: #14202F !important;
  text-decoration: none;
}

/* ---------- the sticky panel's own button ----------
   Left to the theme it falls back to the global palette — a yellow fill with
   red text — which is nothing like the rest of the site. */
#wc-sticky-cart-panel .checkout .button,
#wc-sticky-cart-panel .button,
#wc-sticky-cart-panel button.button,
#wc-sticky-cart-panel a.button,
#wc-sticky-cart-panel .button:focus,
#wc-sticky-cart-panel .button:active {
  background-color: #E78F34;
  background-image: linear-gradient(135deg, #EFB775, #E09A46 55%, #C4802F);
  border: 0;
  color: #1A1206 !important;
  white-space: nowrap;
}
#wc-sticky-cart-panel .button:hover,
#wc-sticky-cart-panel a.button:hover,
#wc-sticky-cart-panel button.button:hover {
  background-color: #F0B968;
  background-image: linear-gradient(135deg, #F5B87A, #EFB775 55%, #E09A46);
  color: #1A1206 !important;
}

/* ---------- the sticky panel on a phone ----------
   At 375px it stood 144px tall: the price broke over three lines and the
   button over two. */
@media (max-width: 768px) {
  #wc-sticky-cart-panel .inside-add-to-cart-panel {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  #wc-sticky-cart-panel .product-image { flex: 0 0 auto; line-height: 0; }
  #wc-sticky-cart-panel .product-image img {
    width: 44px;
    height: 44px;
    object-fit: cover;
    border-radius: 4px;
  }
  #wc-sticky-cart-panel .product-title {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 14px;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  #wc-sticky-cart-panel .product-price,
  #wc-sticky-cart-panel .product-price .woocommerce-Price-amount,
  #wc-sticky-cart-panel .product-price bdi {
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 13px;
  }
  #wc-sticky-cart-panel .checkout,
  #wc-sticky-cart-panel .go-to-variables,
  #wc-sticky-cart-panel .button { flex: 0 0 auto; }
  #wc-sticky-cart-panel .button {
    padding: 11px 16px;
    font-size: 11.5px;
    letter-spacing: .09em;
    line-height: 1.1;
  }
}

/* The thumbnail is the first thing that can go — the title and the price are
   what a shopper is checking at this point. A 375px phone still fits both. */
@media (max-width: 420px) {
  #wc-sticky-cart-panel .inside-add-to-cart-panel { gap: 10px; }
  #wc-sticky-cart-panel .product-image { display: none; }
  #wc-sticky-cart-panel .product-title { font-size: 13.5px; }
  /* every pixel taken back here goes to the title, which is the part that gets
     cut first when a product carries a price range. */
  #wc-sticky-cart-panel .product-price,
  #wc-sticky-cart-panel .product-price .woocommerce-Price-amount,
  #wc-sticky-cart-panel .product-price bdi { font-size: 12px; }
  #wc-sticky-cart-panel .button { padding: 11px 12px; font-size: 11px; letter-spacing: .06em; }
}

@media (max-width: 340px) {
  #wc-sticky-cart-panel .product-price { display: none; }
}
/* ===== end Whiskey EDU add to cart ===== */

/* ===== Whiskey EDU button scale =====
   One size for every button on the site — roughly 40px tall. The page buttons
   carry these values in their own block settings so they stay editable; these
   rules cover the WooCommerce Mini-Cart, whose buttons have no block settings
   of their own and were still arriving at 57px. ===== */
.wc-block-mini-cart__footer .wc-block-components-button,
.wc-block-components-button.wc-block-mini-cart__footer-cart {
  padding: 12px 28px;
  font-size: 13px;
  line-height: 1.25;
  min-height: 0;
}
/* the drawer's close control is an icon, not a label — leave its box alone */
.wc-block-components-button.wc-block-components-drawer__close { padding: 0; }
/* ===== end Whiskey EDU button scale ===== */

/* ===== Whiskey EDU order received =====
   The purchase thank-you screen. WooCommerce prints the order summary, the
   line-item table and the address blocks; the confirmation heading and the
   next-steps panel come from two Block Elements, so both stay editable. ===== */

.woocommerce-order { max-width: 900px; margin-left: auto; margin-right: auto; }

/* the plain "Your order has been received" line — the Block Element above it
   already says this properly, so it is reduced to a quiet confirmation */
.wedu-thankyou .woocommerce-notice--success,
.woocommerce-order .woocommerce-thankyou-order-received {
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 16px;
  color: #9BA6B4;
  text-align: center;
  margin: 0 0 26px;
}

/* ---------- the order summary strip ---------- */
.woocommerce-order ul.woocommerce-order-overview {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 1px;
  margin: 0 0 46px;
  padding: 0;
  list-style: none;
  background-color: rgba(231,143,52,.18);
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 6px;
  overflow: hidden;
}
/* the theme's clearfix pseudo-elements become grid cells here, which is what
   left an empty box at the start of the strip */
.woocommerce-order ul.woocommerce-order-overview::before,
.woocommerce-order ul.woocommerce-order-overview::after {
  display: none !important;
  content: none !important;
}
.woocommerce-order ul.woocommerce-order-overview li {
  margin: 0;
  padding: 18px 20px;
  border: 0;
  background-color: #0F1B2B;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #8E97A3;
  float: none;
}
.woocommerce-order ul.woocommerce-order-overview li strong {
  display: block;
  margin-top: 7px;
  font-family: 'Playfair Display', serif;
  font-size: 20px;
  letter-spacing: 0;
  text-transform: none;
  color: #FBF6EE;
}
.woocommerce-order ul.woocommerce-order-overview li.woocommerce-order-overview__total strong,
.woocommerce-order ul.woocommerce-order-overview li strong .amount { color: #F0B968; }

/* ---------- section headings ---------- */
.woocommerce-order-details__title,
.woocommerce-column__title,
.woocommerce-order h2 {
  font-family: 'Playfair Display', serif;
  font-weight: 400;
  font-size: 26px;
  line-height: 1.2;
  color: #FBF6EE;
  margin: 0 0 18px;
}

/* ---------- the line items ---------- */
.woocommerce-order table.woocommerce-table--order-details {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 6px;
  overflow: hidden;
  margin-bottom: 46px;
  font-family: 'Barlow Semi Condensed', sans-serif;
}
.woocommerce-order table.woocommerce-table--order-details thead th {
  padding: 15px 20px;
  background-color: rgba(255,255,255,.03);
  border: 0;
  border-bottom: 1px solid rgba(231,143,52,.18);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #9BA6B4;
  text-align: left;
}
.woocommerce-order table.woocommerce-table--order-details thead th:last-child,
.woocommerce-order table.woocommerce-table--order-details td:last-child,
.woocommerce-order table.woocommerce-table--order-details tfoot th { text-align: right; }
.woocommerce-order table.woocommerce-table--order-details tbody td {
  padding: 17px 20px;
  border: 0;
  border-top: 1px solid rgba(231,143,52,.1);
  font-size: 16px;
  color: #DED6C9;
  vertical-align: top;
}
.woocommerce-order table.woocommerce-table--order-details tbody tr:first-child td { border-top: 0; }
.woocommerce-order table.woocommerce-table--order-details td.woocommerce-table__product-name a {
  color: #FBF6EE;
  text-decoration: none;
  border-bottom: 1px solid rgba(231,143,52,.35);
}
.woocommerce-order table.woocommerce-table--order-details td.woocommerce-table__product-name a:hover { color: #F5B87A; }
.woocommerce-order table.woocommerce-table--order-details .product-quantity {
  display: block;
  margin-top: 5px;
  font-size: 14px;
  color: #8E97A3;
}
.woocommerce-order table.woocommerce-table--order-details .wc-item-meta,
.woocommerce-order table.woocommerce-table--order-details .wc-item-meta li {
  margin: 6px 0 0;
  padding: 0;
  list-style: none;
  font-size: 14.5px;
  color: #9BA6B4;
}
.woocommerce-order table.woocommerce-table--order-details .wc-item-meta strong { color: #C6BFB4; font-weight: 600; }
.woocommerce-order table.woocommerce-table--order-details .amount,
.woocommerce-order table.woocommerce-table--order-details bdi { color: #F0B968; }

.woocommerce-order table.woocommerce-table--order-details tfoot th,
.woocommerce-order table.woocommerce-table--order-details tfoot td {
  padding: 14px 20px;
  border: 0;
  border-top: 1px solid rgba(231,143,52,.14);
  background-color: rgba(255,255,255,.02);
  font-size: 15px;
  color: #C6BFB4;
}
.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child td {
  font-size: 19px;
  color: #FBF6EE;
  border-top: 1px solid rgba(231,143,52,.3);
}
.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child .amount { color: #F0B968; }

/* ---------- addresses ---------- */
.woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 22px;
  margin: 0;
}
.woocommerce-order .woocommerce-customer-details .woocommerce-column {
  width: auto;
  float: none;
  padding: 26px 26px 28px;
  background-color: rgba(255,255,255,.025);
  border: 1px solid rgba(231,143,52,.18);
  border-radius: 6px;
}
.woocommerce-order .woocommerce-customer-details address {
  border: 0;
  padding: 0;
  border-radius: 0;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-style: normal;
  font-size: 16px;
  line-height: 1.75;
  color: #C6BFB4;
}
.woocommerce-order .woocommerce-customer-details .woocommerce-customer-details--phone,
.woocommerce-order .woocommerce-customer-details .woocommerce-customer-details--email {
  margin: 10px 0 0;
  padding-left: 0;
  color: #9BA6B4;
}
.woocommerce-order .woocommerce-customer-details a { color: #F0B968; text-decoration: none; }

/* the downloads table, when an order carries one */
.woocommerce-order .woocommerce-table--order-downloads { margin-bottom: 40px; }

@media (max-width: 767px) {
  .woocommerce-order ul.woocommerce-order-overview { grid-template-columns: 1fr 1fr; }
  .woocommerce-order table.woocommerce-table--order-details thead th,
  .woocommerce-order table.woocommerce-table--order-details tbody td,
  .woocommerce-order table.woocommerce-table--order-details tfoot th,
  .woocommerce-order table.woocommerce-table--order-details tfoot td { padding: 13px 14px; font-size: 15px; }
  .woocommerce-order h2,
  .woocommerce-order-details__title,
  .woocommerce-column__title { font-size: 22px; }
}
/* ===== end Whiskey EDU order received ===== */

/* ===== Whiskey EDU forms (Forminator) =====
   Forminator ships its own light theme — cream fields, black borders, a grey
   submit button — which is why every form read as a foreign object on this
   site. This dresses it in the same palette as the rest of the pages, and
   covers the contact form as well as the newsletter signup. ===== */

.forminator-ui.forminator-custom-form,
.forminator-ui.forminator-custom-form * { font-family: 'Barlow Semi Condensed', sans-serif; }

.forminator-ui.forminator-custom-form .forminator-row { margin-bottom: 18px; }

/* ---------- labels ---------- */
.forminator-ui.forminator-custom-form .forminator-label,
.forminator-ui.forminator-custom-form label.forminator-label {
  display: block;
  margin-bottom: 8px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #9BA6B4 !important;
}
.forminator-ui.forminator-custom-form .forminator-required,
.forminator-ui.forminator-custom-form .forminator-label .forminator-required { color: #E78F34; }

/* ---------- fields ---------- */
.forminator-ui.forminator-custom-form input.forminator-input,
.forminator-ui.forminator-custom-form textarea.forminator-textarea,
.forminator-ui.forminator-custom-form select.forminator-select2,
.forminator-ui.forminator-custom-form .forminator-input,
.forminator-ui.forminator-custom-form .forminator-textarea {
  width: 100%;
  box-sizing: border-box;
  min-height: 50px;
  padding: 13px 16px;
  /* Forminator writes a per-form stylesheet whose selector carries the form's
     element id, so no class-based rule can outrank it. These four properties
     are the ones that carry the light theme. */
  background-color: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(231,143,52,.28) !important;
  border-radius: 4px;
  color: #FBF6EE !important;
  font-size: 16px;
  line-height: 1.45;
  box-shadow: none;
  transition: border-color .22s ease, background-color .22s ease, box-shadow .22s ease;
}
.forminator-ui.forminator-custom-form textarea.forminator-textarea { min-height: 150px; resize: vertical; }

.forminator-ui.forminator-custom-form input.forminator-input:focus,
.forminator-ui.forminator-custom-form textarea.forminator-textarea:focus,
.forminator-ui.forminator-custom-form .forminator-input:focus {
  outline: 0;
  border-color: #E78F34 !important;
  background-color: rgba(255,255,255,.08) !important;
  box-shadow: 0 0 0 3px rgba(231,143,52,.18);
}
.forminator-ui.forminator-custom-form input.forminator-input::placeholder,
.forminator-ui.forminator-custom-form textarea.forminator-textarea::placeholder { color: #6E7A89; }

/* the phone field's country dropdown sits inside the input */
.forminator-ui.forminator-custom-form .forminator-field-phone .iti__flag-container,
.forminator-ui.forminator-custom-form .iti__country-list {
  background-color: #0D1725;
  color: #EFE8DC;
}

/* ---------- consent / checkboxes ---------- */
.forminator-ui.forminator-custom-form .forminator-checkbox,
.forminator-ui.forminator-custom-form .forminator-consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 15.5px;
  line-height: 1.6;
  color: #C6BFB4;
}
.forminator-ui.forminator-custom-form .forminator-checkbox input[type="checkbox"],
.forminator-ui.forminator-custom-form .forminator-consent input[type="checkbox"] {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  accent-color: #E78F34;
}
.forminator-ui.forminator-custom-form .forminator-checkbox a,
.forminator-ui.forminator-custom-form .forminator-consent a {
  color: #F0B968;
  text-decoration: none;
  border-bottom: 1px solid rgba(231,143,52,.4);
}
.forminator-ui.forminator-custom-form .forminator-checkbox a:hover { color: #F5B87A; }

/* ---------- submit ---------- */
/* Forminator's own button rule carries [data-design="default"], which outweighs
   a plain class selector — the attribute has to be named here too. */
.forminator-ui.forminator-custom-form[data-design="default"] button.forminator-button-submit,
.forminator-ui.forminator-custom-form[data-design="default"] .forminator-button.forminator-button-submit,
.forminator-ui.forminator-custom-form button.forminator-button-submit,
.forminator-ui.forminator-custom-form .forminator-button.forminator-button-submit {
  padding: 12px 28px;
  border: 0;
  border-radius: 999px;
  background-color: #E78F34;
  background-image: linear-gradient(135deg,#F0B968,#C97E2A);
  color: #1A1206;
  font-size: 13.5px;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  box-shadow: 0 12px 26px -14px rgba(231,143,52,.85);
  transition: transform .22s ease, box-shadow .22s ease, background-image .22s ease;
}
.forminator-ui.forminator-custom-form[data-design="default"] button.forminator-button-submit:hover,
.forminator-ui.forminator-custom-form[data-design="default"] button.forminator-button-submit:focus,
.forminator-ui.forminator-custom-form button.forminator-button-submit:hover,
.forminator-ui.forminator-custom-form button.forminator-button-submit:focus {
  background-image: linear-gradient(135deg,#F5B87A,#F0B968 55%,#E9A24B);
  color: #1A1206;
  transform: translateY(-2px);
  box-shadow: 0 18px 34px -16px rgba(231,143,52,.95);
}

/* ---------- validation and responses ---------- */
.forminator-ui .forminator-error-message,
.forminator-ui.forminator-custom-form .forminator-error-message {
  margin-top: 7px;
  font-size: 14.5px;
  color: #F0A38A !important;
  background: transparent !important;
  border: 0;
  padding: 0;
}
.forminator-ui.forminator-custom-form .forminator-input.forminator-has_error,
.forminator-ui.forminator-custom-form .forminator-has_error input.forminator-input { border-color: #D4623A; }

.forminator-response-message,
.forminator-ui .forminator-response-message {
  padding: 16px 20px;
  margin: 0 0 20px;
  background-color: rgba(255,255,255,.03);
  border: 1px solid rgba(231,143,52,.3);
  border-left: 3px solid #E78F34;
  border-radius: 4px;
  color: #EFE8DC;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 16px;
}
.forminator-response-message.forminator-error,
.forminator-ui .forminator-response-message.forminator-error {
  border-color: rgba(212,98,58,.45);
  border-left-color: #D4623A;
}
.forminator-response-message p { margin: 0; color: inherit; }

/* the description text under a field */
.forminator-ui.forminator-custom-form .forminator-description {
  margin-top: 7px;
  font-size: 14.5px;
  color: #8E97A3;
}

@media (max-width: 767px) {
  .forminator-ui.forminator-custom-form input.forminator-input,
  .forminator-ui.forminator-custom-form textarea.forminator-textarea { font-size: 16px; }
  .forminator-ui.forminator-custom-form button.forminator-button-submit { width: 100%; }
}
/* ===== end Whiskey EDU forms ===== */

/* ===== Whiskey EDU header furniture =====
   The header is GenerateBlocks. These rules cover what a block cannot express:
   the search field that slides out beside its icon, the burger, the mobile
   menu, and the WooCommerce Mini-Cart button that opens the slide-in cart.
   ===== */

/* GeneratePress prints its own header markup; the block header replaces it */
.site-header > .inside-header,
.main-navigation:not(.wedu-mobile-menu) { display: none; }
/* GeneratePress also prints a separate mobile header; the block header covers both */
#mobile-header,
.mobile-header-navigation,
.site-header .mobile-bar-items { display: none !important; }

/* ---------- search that slides out beside the icon ---------- */
[data-wedu-search-wrap] { position: relative; }

.wedu-inline-search {
  display: flex;
  align-items: center;
  overflow: hidden;
  width: 0;
  opacity: 0;
  margin-right: 0;
  transition: width .3s cubic-bezier(.4, 0, .2, 1), opacity .22s ease, margin-right .3s ease;
}
[data-wedu-search-wrap].is-open .wedu-inline-search {
  width: 260px;
  opacity: 1;
  margin-right: 8px;
}
@media (max-width: 1024px) {
  [data-wedu-search-wrap].is-open .wedu-inline-search { width: 190px; }
}

.wedu-inline-search .wedu-search-input {
  width: 100%;
  min-width: 0;
  height: 30px;
  padding: 0 14px;
  background-color: rgba(255,255,255,.06);
  border: 1px solid rgba(231,143,52,.32);
  border-radius: 999px;
  color: #FBF6EE;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 14px;
  line-height: 1.2;
}
.wedu-inline-search .wedu-search-input:focus {
  outline: 0;
  border-color: #E78F34;
  background-color: rgba(255,255,255,.1);
}
.wedu-inline-search .wedu-search-input::placeholder { color: #6E7A89; }

/* ---------- burger ---------- */
[data-wedu-burger] span {
  display: block;
  height: 1.6px;
  width: 100%;
  background-color: #E78F34;
  transition: transform .22s ease, opacity .22s ease;
}
[data-wedu-burger].is-open span:nth-child(1) { transform: translateY(6.6px) rotate(45deg); }
[data-wedu-burger].is-open span:nth-child(2) { opacity: 0; }
[data-wedu-burger].is-open span:nth-child(3) { transform: translateY(-6.6px) rotate(-45deg); }

/* ---------- the cart button in the header ----------
   WooCommerce's Mini-Cart block supplies the button and the slide-in panel.
   It is dressed here to match the circular icon the design calls for. */
[data-wedu-cart] .wp-block-woocommerce-mini-cart,
[data-wedu-cart] .wc-block-mini-cart { margin: 0; line-height: 0; }

[data-wedu-cart] .wc-block-mini-cart__button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 50%;
  color: #E78F34;
  cursor: pointer;
}
[data-wedu-cart] .wc-block-mini-cart__button:hover { color: #F5B87A; background: transparent; }
[data-wedu-cart] .wc-block-mini-cart__amount,
[data-wedu-cart] .wc-block-mini-cart__quantity-badge + .wc-block-mini-cart__amount { display: none; }
[data-wedu-cart] .wc-block-mini-cart__icon { width: 20px; height: 20px; }

/* the count bubble — solid brand amber on the header's own dark ring */
[data-wedu-cart] .wc-block-mini-cart__badge,
.wedu-cart-count {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  box-sizing: border-box;
  /* WooCommerce writes the badge colours as an inline style from the block's
     own attributes, which no stylesheet rule can outrank without this. */
  background: #E78F34 !important;
  color: #0A111B !important;
  border: 2px solid #0B1420;
  border-radius: 999px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 11px;
  font-weight: 700;
  line-height: 14px;
  text-align: center;
}

/* ---------- mobile menu ---------- */
.wedu-mobile-menu {
  background-color: #0B1420;
  border-bottom: 1px solid rgba(231,143,52,.24);
  padding: 18px var(--wedu-gutter) 26px;
  animation: wedu-drop .26s ease both;
}
.wedu-mobile-menu[hidden] { display: none; }
@keyframes wedu-drop { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }

.wedu-mobile-search { display: flex; gap: 8px; margin-bottom: 18px; }
.wedu-mobile-search input {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 46px;
  padding: 11px 16px;
  background-color: rgba(255,255,255,.05);
  border: 1px solid rgba(231,143,52,.3);
  border-radius: 999px;
  color: #FBF6EE;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 16px;
}
.wedu-mobile-search input:focus { outline: 0; border-color: #E78F34; }
.wedu-mobile-search input::placeholder { color: #6E7A89; }
.wedu-mobile-search button {
  flex: 0 0 auto;
  padding: 11px 18px;
  border: 0;
  border-radius: 999px;
  background-image: linear-gradient(135deg, #F0B968, #C97E2A);
  color: #1A1206;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  cursor: pointer;
  transition: filter .2s ease;
}
.wedu-mobile-search button:hover { filter: brightness(1.08); }

.wedu-mobile-list { margin: 0; padding: 0; list-style: none; }
.wedu-mobile-list li { margin: 0; }
.wedu-mobile-list a {
  display: block;
  padding: 15px 2px;
  border-bottom: 1px solid rgba(231,143,52,.14);
  color: #C6BFB4;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 17px;
  text-decoration: none;
  transition: color .2s ease, padding-left .2s ease;
}
.wedu-mobile-list a:hover,
.wedu-mobile-list a:focus { color: #E78F34; padding-left: 8px; }
.wedu-mobile-list a[aria-current="page"] { color: #EFE8DC; border-bottom-color: rgba(231,143,52,.5); }

.wedu-mobile-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.wedu-mobile-primary,
.wedu-mobile-ghost {
  flex: 1 1 auto;
  text-align: center;
  padding: 12px 20px;
  border-radius: 999px;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color .22s ease, background-image .22s ease, color .22s ease, border-color .22s ease;
}
.wedu-mobile-primary { background-image: linear-gradient(135deg, #F0B968, #C97E2A); color: #1A1206; }
.wedu-mobile-ghost { border: 1px solid rgba(231,143,52,.55); color: #F0B968; }
/* both buttons land on the same hover so the pair reads as one control */
.wedu-mobile-primary:hover,
.wedu-mobile-primary:focus,
.wedu-mobile-ghost:hover,
.wedu-mobile-ghost:focus {
  background-image: linear-gradient(135deg, #F5B87A, #F0B968 55%, #E9A24B);
  background-color: #F0B968;
  border-color: #F0B968;
  color: #1A1206;
}

.wedu-mobile-contact {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 22px;
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid rgba(231,143,52,.14);
}
.wedu-mobile-contact a { color: #9BA6B4; font-family: 'Barlow Semi Condensed', sans-serif; font-size: 15.5px; text-decoration: none; }
.wedu-mobile-contact a:hover { color: #E78F34; }

@media (min-width: 1025px) { .wedu-mobile-menu { display: none !important; } }

/* ---------- social icons ----------
   The circles carry real Facebook and Instagram marks now; the SVGs inherit
   currentColor so one colour rule drives both the icon and its hover. */
[aria-label="Whisky EDU on Facebook"] svg,
[aria-label="Whisky EDU on Instagram"] svg {
  display: block;
  flex: 0 0 auto;
}
/* contact marks in the footer and the mobile menu */
.wedu-ci { flex: 0 0 auto; margin-right: 8px; vertical-align: -1px; }
.wedu-mobile-contact a,
.gb-text .wedu-ci { display: inline-flex; align-items: center; }
.wedu-mobile-contact a { display: inline-flex; align-items: center; }
/* wedu social icons */
/* ===== end Whiskey EDU header furniture ===== */
