/* ========================================
   GLOBAL TOKENS / SCROLLBAR
   Font @import lives in Webflow site head — not repeated here.
======================================== */

:root {
  --carrick-charcoal: #341f24;
  --carrick-gold: #ab8d3f;
  --carrick-cream: #e7e2d6;
  --carrick-cream-light: #f7f4ec;
  --carrick-grey: #6a5e4d;
  --c7-cart-count-bg: #ab8d3f;
  --c7-cart-count-bg-focus: rgba(171, 141, 63, 0.35);
  --c7-cart-count-text-color: #ffffff;
}

/* C7 V2 account/profile — brand tokens (overridden per-route in sitewide.css) */
body:has(#c7-content .c7-account),
body:has(#c7-content .c7-account-details--saved),
body:has(.c7-account__menu),
body:has(#c7-content.c7-account-login) {
  --carrick-site-header-offset: 120px;
  --carrick-site-header-offset-md: 80px;
  --carrick-site-header-offset-sm: 64px;
  --c7-page-width: 1440px;
  --c7-bg: var(--carrick-cream);
  --c7-bg-alt: var(--carrick-cream);
  --c7-body-text-color: var(--carrick-charcoal);
  --c7-alt-text-color: rgba(52, 31, 36, 0.72);
  --c7-font-family: 'Albert Sans', Arial, sans-serif;
  --c7-font-size: 16px;
  --c7-font-size-sub: 14px;
  --c7-heading-font-family: 'Antic Didone', Georgia, serif;
  --c7-heading-text-color: var(--carrick-charcoal);
  --c7-heading-font-weight: 400;
  --c7-primary-color: var(--carrick-gold);
  --c7-primary-color-text: var(--carrick-charcoal);
  --c7-primary-color-dark: var(--carrick-charcoal);
  --c7-primary-color-focus: rgba(171, 141, 63, 0.25);
  --c7-link-color: var(--carrick-charcoal);
  --c7-border-color: rgba(52, 31, 36, 0.2);
  --c7-border-radius: 0;
  --c7-pill-bg: rgba(52, 31, 36, 0.08);
  --c7-pill-text-color: var(--carrick-charcoal);
  --c7-field-bg: transparent;
  --c7-field-border-radius: 0;
  --c7-field-border-color: var(--carrick-gold);
  --c7-field-focus-color: rgba(52, 31, 36, 0.08);
  --c7-field-option-selected-color: var(--carrick-gold);
  --c7-field-option-focus-color: rgba(171, 141, 63, 0.25);
  --c7-primary-button-bg: var(--carrick-gold);
  --c7-primary-button-bg-hover: var(--carrick-charcoal);
  --c7-primary-button-text-color: #ffffff;
  --c7-alt-button-bg: transparent;
  --c7-alt-button-bg-hover: var(--carrick-gold);
  --c7-alt-button-text-color: var(--carrick-gold);
  --c7-button-border-radius: 0;
  --c7-block-bg: transparent;
  --c7-block-border-color: rgba(106, 94, 77, 0.72);
  --c7-block-border-radius: 0;
  --c7-block-shadow: none;
}

::-webkit-scrollbar {
  width: 12px;
}

::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 999px;
}

::-webkit-scrollbar-thumb {
  background: rgba(171, 141, 63, 0.6);
  border-radius: 999px;
}

/* ========================================
   WEBFLOW BUTTON VARIANT FIXES
   Keep global because these affect normal site sections.
======================================== */

.button[data-wf--button--variant='gold-solid'] {
  background-color: var(--carrick-gold) !important;
  border-color: var(--carrick-gold) !important;
}

.button[data-wf--button--variant='solid'] {
  background-color: #2e2e2e !important;
  border-color: #2e2e2e !important;
}

.button[data-wf--button--variant='gold-solid'] .link-sm,
.button[data-wf--button--variant='solid'] .link-sm {
  color: #ffffff !important;
}

.event-cta-group .button[data-wf-button-variant='gold-solid'],
.event-cta-group .button[data-wf--button--variant='gold-solid'] {
  background-color: var(--carrick-gold) !important;
  color: #ffffff !important;
  border: 1px solid var(--carrick-gold) !important;
}

.event-cta-group .button[data-wf-button-variant='gold-solid'] *,
.event-cta-group .button[data-wf--button--variant='gold-solid'] * {
  color: #ffffff !important;
}

.event-cta-group .button[data-wf-button-variant='outline'],
.event-cta-group .button[data-wf--button--variant='outline'] {
  background-color: transparent !important;
  color: var(--carrick-charcoal) !important;
  border: 1px solid var(--carrick-charcoal) !important;
}

.event-cta-group .button[data-wf-button-variant='outline'] *,
.event-cta-group .button[data-wf--button--variant='outline'] * {
  color: var(--carrick-charcoal) !important;
}

.event-cta-group .button[data-wf-button-variant='solid'],
.event-cta-group .button[data-wf--button--variant='solid'] {
  background-color: #2e2e2e !important;
  color: #ffffff !important;
  border: 1px solid #2e2e2e !important;
}

.event-cta-group .button[data-wf-button-variant='solid'] *,
.event-cta-group .button[data-wf--button--variant='solid'] * {
  color: #ffffff !important;
}

.event-cta-group .button[data-wf-button-variant='gold-outline'],
.event-cta-group .button[data-wf--button--variant='gold-outline'] {
  background-color: transparent !important;
  color: var(--carrick-gold) !important;
  border: 1px solid var(--carrick-gold) !important;
}

.event-cta-group .button[data-wf-button-variant='gold-outline'] *,
.event-cta-group .button[data-wf--button--variant='gold-outline'] * {
  color: var(--carrick-gold) !important;
}

.event-cta-group .button[data-wf-button-variant='gold-solid']:hover,
.event-cta-group .button[data-wf--button--variant='gold-solid']:hover {
  background-color: transparent !important;
  color: var(--carrick-charcoal) !important;
  border-color: var(--carrick-charcoal) !important;
}

.event-cta-group .button[data-wf-button-variant='gold-solid']:hover *,
.event-cta-group .button[data-wf--button--variant='gold-solid']:hover * {
  color: var(--carrick-charcoal) !important;
}

.event-cta-group .button[data-wf-button-variant='outline']:hover,
.event-cta-group .button[data-wf--button--variant='outline']:hover {
  background-color: var(--carrick-charcoal) !important;
  color: #ffffff !important;
  border-color: var(--carrick-charcoal) !important;
}

.event-cta-group .button[data-wf-button-variant='outline']:hover *,
.event-cta-group .button[data-wf--button--variant='outline']:hover * {
  color: #ffffff !important;
}

.event-cta-group .button[data-wf-button-variant='solid']:hover,
.event-cta-group .button[data-wf--button--variant='solid']:hover {
  background-color: transparent !important;
  color: #2e2e2e !important;
  border-color: #2e2e2e !important;
}

.event-cta-group .button[data-wf-button-variant='solid']:hover *,
.event-cta-group .button[data-wf--button--variant='solid']:hover * {
  color: #2e2e2e !important;
}

.event-cta-group .button[data-wf-button-variant='gold-outline']:hover,
.event-cta-group .button[data-wf--button--variant='gold-outline']:hover {
  background-color: var(--carrick-gold) !important;
  color: #ffffff !important;
  border-color: var(--carrick-gold) !important;
}

.event-cta-group .button[data-wf-button-variant='gold-outline']:hover *,
.event-cta-group .button[data-wf--button--variant='gold-outline']:hover * {
  color: #ffffff !important;
}

/* ========================================
   COMMERCE7 BUY WIDGETS
   Product detail, related products, shop cards.
======================================== */

.product-detail-add-to-cart,
.related-product-add-to-cart,
.shop-product-add-to-cart,
.product-detail-add-to-cart .c7-buy-product,
.related-product-add-to-cart .c7-buy-product,
.shop-product-add-to-cart .c7-buy-product,
.product-detail-add-to-cart .c7-buy-variant,
.related-product-add-to-cart .c7-buy-variant,
.shop-product-add-to-cart .c7-buy-variant,
.product-detail-add-to-cart form.c7-product__variant,
.related-product-add-to-cart form.c7-product__variant,
.shop-product-add-to-cart form.c7-product__variant {
  width: 100% !important;
}

.product-detail-add-to-cart .c7-product__variant,
.related-product-add-to-cart .c7-product__variant,
.shop-product-add-to-cart .c7-product__variant {
  width: 100% !important;
  font-family: inherit !important;
}

.product-detail-add-to-cart .c7-product__variant__add-to-cart,
.related-product-add-to-cart .c7-product__variant__add-to-cart,
.shop-product-add-to-cart .c7-product__variant__add-to-cart {
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.75rem !important;
}

.product-detail-add-to-cart .c7-quantity-counter,
.related-product-add-to-cart .c7-quantity-counter,
.shop-product-add-to-cart .c7-quantity-counter {
  width: 100% !important;
  align-self: stretch !important;
  display: grid !important;
  grid-template-columns: 3rem minmax(0, 1fr) 3rem !important;
  align-items: stretch !important;
  border: 1px solid var(--carrick-grey) !important;
  background-color: transparent !important;
  box-sizing: border-box !important;
}

.product-detail-add-to-cart .c7-quantity-counter label,
.related-product-add-to-cart .c7-quantity-counter label,
.shop-product-add-to-cart .c7-quantity-counter label,
.product-detail-add-to-cart .c7-quantity-counter__value,
.related-product-add-to-cart .c7-quantity-counter__value,
.shop-product-add-to-cart .c7-quantity-counter__value {
  width: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
}

.product-detail-add-to-cart .c7-quantity-counter input[name='quantity'],
.related-product-add-to-cart .c7-quantity-counter input[name='quantity'],
.shop-product-add-to-cart .c7-quantity-counter input[name='quantity'] {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0.75rem 1rem !important;
  box-sizing: border-box !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  box-shadow: none !important;
  color: var(--carrick-charcoal) !important;
  font-family: inherit !important;
  font-size: 0.875rem !important;
  line-height: 1.5 !important;
  text-align: center !important;
}

.product-detail-add-to-cart .c7-quantity-button,
.related-product-add-to-cart .c7-quantity-button,
.shop-product-add-to-cart .c7-quantity-button {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  color: var(--carrick-charcoal) !important;
  font-family: inherit !important;
  font-size: 1.25rem !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

.product-detail-add-to-cart .c7-quantity-button:hover,
.related-product-add-to-cart .c7-quantity-button:hover,
.shop-product-add-to-cart .c7-quantity-button:hover {
  background-color: rgba(106, 94, 77, 0.08) !important;
}

.product-detail-add-to-cart .c7-quantity-button:focus-visible,
.related-product-add-to-cart .c7-quantity-button:focus-visible,
.shop-product-add-to-cart .c7-quantity-button:focus-visible {
  outline: 1px solid var(--carrick-charcoal) !important;
  outline-offset: -2px !important;
}

.product-detail-add-to-cart .c7-product__variant__add-to-cart .c7-button,
.related-product-add-to-cart .c7-product__variant__add-to-cart .c7-button,
.shop-product-add-to-cart .c7-product__variant__add-to-cart .c7-button {
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0.75rem 3rem !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid var(--carrick-charcoal) !important;
  border-radius: 0 !important;
  background-color: var(--carrick-charcoal) !important;
  box-shadow: none !important;
  color: #ffffff !important;
  font-family: 'Albert Sans', Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.product-detail-add-to-cart .c7-product__variant__add-to-cart .c7-button *,
.related-product-add-to-cart .c7-product__variant__add-to-cart .c7-button *,
.shop-product-add-to-cart .c7-product__variant__add-to-cart .c7-button * {
  color: #ffffff !important;
}

/* ========================================
   COMMERCE7 V2 BUY WIDGETS
   V2 uses c7-product__add-to-cart__* and c7-btn--primary.
======================================== */

.product-detail-add-to-cart,
.related-product-add-to-cart,
.shop-product-add-to-cart {
  --c7-font-family: 'Albert Sans', Arial, sans-serif;
  --c7-font-size: 16px;
  --c7-primary-button-bg: var(--carrick-charcoal);
  --c7-primary-button-bg-hover: #2a181c;
  --c7-primary-button-text-color: #ffffff;
  --c7-button-border-radius: 0;
  --c7-field-border-radius: 0;
  --c7-field-border-color: var(--carrick-grey);
}

.product-detail-add-to-cart .c7-product__add-to-cart,
.related-product-add-to-cart .c7-product__add-to-cart,
.shop-product-add-to-cart .c7-product__add-to-cart {
  width: 100% !important;
  margin: 0 !important;
}

.product-detail-add-to-cart .c7-product__add-to-cart__price,
.related-product-add-to-cart .c7-product__add-to-cart__price,
.shop-product-add-to-cart .c7-product__add-to-cart__price {
  width: 100% !important;
  margin: 0.75rem 0 0 !important;
  color: var(--carrick-charcoal) !important;
  font-family: 'Albert Sans', Arial, sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

.product-detail-add-to-cart .c7-product__add-to-cart__price__variant,
.related-product-add-to-cart .c7-product__add-to-cart__price__variant,
.shop-product-add-to-cart .c7-product__add-to-cart__price__variant {
  display: none !important;
}

.product-detail-add-to-cart .c7-product__add-to-cart__form,
.related-product-add-to-cart .c7-product__add-to-cart__form,
.shop-product-add-to-cart .c7-product__add-to-cart__form {
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.75rem !important;
  margin: 0.75rem 0 0 !important;
}

.product-detail-add-to-cart .c7-product__add-to-cart__form__quantity,
.related-product-add-to-cart .c7-product__add-to-cart__form__quantity,
.shop-product-add-to-cart .c7-product__add-to-cart__form__quantity {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.product-detail-add-to-cart .c7-product__add-to-cart__form__quantity .c7-form__field,
.related-product-add-to-cart .c7-product__add-to-cart__form__quantity .c7-form__field,
.shop-product-add-to-cart .c7-product__add-to-cart__form__quantity .c7-form__field {
  width: 100% !important;
  margin: 0 !important;
}

.product-detail-add-to-cart .c7-product__add-to-cart__form__quantity label,
.related-product-add-to-cart .c7-product__add-to-cart__form__quantity label,
.shop-product-add-to-cart .c7-product__add-to-cart__form__quantity label {
  width: 100% !important;
  margin: 0 !important;
}

.product-detail-add-to-cart .c7-product__add-to-cart__form__quantity input[name='quantity'],
.related-product-add-to-cart .c7-product__add-to-cart__form__quantity input[name='quantity'],
.shop-product-add-to-cart .c7-product__add-to-cart__form__quantity input[name='quantity'] {
  max-width: none !important;
}

.product-detail-add-to-cart .c7-product__add-to-cart__form .c7-btn--primary,
.related-product-add-to-cart .c7-product__add-to-cart__form .c7-btn--primary,
.shop-product-add-to-cart .c7-product__add-to-cart__form .c7-btn--primary {
  width: 100% !important;
  min-height: auto !important;
  margin: 0 !important;
  padding: 0.75rem 3rem !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid var(--carrick-charcoal) !important;
  border-radius: 0 !important;
  background-color: var(--carrick-charcoal) !important;
  box-shadow: none !important;
  color: #ffffff !important;
  font-family: 'Albert Sans', Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.product-detail-add-to-cart .c7-product__add-to-cart__form .c7-btn--primary:hover,
.related-product-add-to-cart .c7-product__add-to-cart__form .c7-btn--primary:hover,
.shop-product-add-to-cart .c7-product__add-to-cart__form .c7-btn--primary:hover {
  background-color: #2a181c !important;
  border-color: #2a181c !important;
  color: #ffffff !important;
}

.product-detail-add-to-cart .c7-product__login-message .c7-btn--primary,
.related-product-add-to-cart .c7-product__login-message .c7-btn--primary,
.shop-product-add-to-cart .c7-product__login-message .c7-btn--primary {
  width: 100% !important;
  border-radius: 0 !important;
  text-transform: uppercase !important;
}

/* ========================================
   C7 CHECKOUT / ACCOUNT CHECKBOX WIDTH FIX
   Keeps Webflow .checkbox from breaking C7 labels.
======================================== */

.c7-checkout label.checkbox,
.c7-account label.checkbox,
.c7-form label.checkbox {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  max-height: none !important;
  border: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
}

.c7-checkout label.checkbox input,
.c7-account label.checkbox input,
.c7-form label.checkbox input {
  flex: 0 0 auto !important;
  width: auto !important;
}

/* ========================================
   BUY WIDGET — price and quantity
   V2 renders the price as bold 18px with 12px above it; the
   previous shop showed a regular-weight 22.4px price with 8px
   below. Match those metrics so the price reads as a price
   rather than bold body text.

   Font and colour stay Albert Sans / charcoal: V1 rendered these
   in Arial #333 only because nothing styled them, and the rest of
   the card is already brand type.
  ======================================== */

.product-detail-add-to-cart .c7-product__add-to-cart__price,
.related-product-add-to-cart .c7-product__add-to-cart__price,
.shop-product-add-to-cart .c7-product__add-to-cart__price,
.product-detail-add-to-cart .c7-product__variant__price,
.related-product-add-to-cart .c7-product__variant__price,
.shop-product-add-to-cart .c7-product__variant__price {
  margin: 0 0 8px !important;
  color: var(--carrick-charcoal, #341f24) !important;
  font-family: 'Albert Sans', Arial, sans-serif !important;
  font-size: 22.4px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

/* The quantity field fell back to the browser default sans-serif. */
.product-detail-add-to-cart .c7-product__add-to-cart__form__quantity,
.related-product-add-to-cart .c7-product__add-to-cart__form__quantity,
.shop-product-add-to-cart .c7-product__add-to-cart__form__quantity,
.product-detail-add-to-cart .c7-product__add-to-cart__form__quantity input,
.related-product-add-to-cart .c7-product__add-to-cart__form__quantity input,
.shop-product-add-to-cart .c7-product__add-to-cart__form__quantity input {
  font-family: 'Albert Sans', Arial, sans-serif !important;
  font-size: 14px !important;
}

/* ========================================
   C7 CLUB ROUTE
   /club renders C7's club list into #c7-content. The token block
   above is scoped to the account and checkout routes, so club pages
   got none of it and fell back to C7's defaults -- most visibly
   #3860d6 blue join buttons with a 4px radius.
  ======================================== */

body:has(#c7-content .c7-club-list),
body:has(#c7-content .c7-club) {
  --c7-font-family: 'Albert Sans', Arial, sans-serif;
  --c7-font-size: 16px;
  --c7-heading-font-family: 'Antic Didone', Georgia, serif;
  --c7-heading-font-weight: 400;
  --c7-heading-text-color: var(--carrick-charcoal);
  --c7-body-text-color: var(--carrick-charcoal);
  --c7-primary-color: var(--carrick-charcoal);
  --c7-link-color: var(--carrick-charcoal);
  --c7-border-color: rgba(52, 31, 36, 0.2);
  --c7-border-radius: 0;
  --c7-button-border-radius: 0;
  --c7-primary-button-bg: var(--carrick-charcoal);
  --c7-primary-button-text-color: #ffffff;
}

body:has(#c7-content .c7-club-list) #c7-content .c7-h1,
body:has(#c7-content .c7-club-list) #c7-content .c7-club__details .c7-h2 {
  color: var(--carrick-charcoal) !important;
  font-family: 'Antic Didone', Georgia, serif !important;
  font-weight: 400 !important;
}

body:has(#c7-content .c7-club-list) #c7-content .c7-btn--primary {
  padding: 0.85rem 1.75rem !important;
  border: 1px solid var(--carrick-charcoal) !important;
  border-radius: 0 !important;
  background-color: var(--carrick-charcoal) !important;
  color: #ffffff !important;
  font-family: 'Albert Sans', Arial, sans-serif !important;
  font-size: 14px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  transition: background-color 0.2s ease, color 0.2s ease !important;
}

body:has(#c7-content .c7-club-list) #c7-content .c7-btn--primary:hover,
body:has(#c7-content .c7-club-list) #c7-content .c7-btn--primary:focus-visible {
  background-color: transparent !important;
  color: var(--carrick-charcoal) !important;
}

body:has(#c7-content .c7-club-list) #c7-content .c7-btn span {
  color: inherit !important;
}
