/** Shopify CDN: Minification failed

Line 591:0 Unexpected "}"

**/
/* wba-tokens.css (merged in WBA #81) */
/* Wear by Anaya brand guideline v1 — single source for colour, type, spacing and shape.
   See brand-guideline-wear-by-anaya.md. Custom code uses these variables, not raw values. */
:root {
  --wba-wine: #72383d;
  --wba-wine-dark: #4a2327;
  --wba-ink: #322d29;
  --wba-muted: #6b635b;
  --wba-line: #e6ded6;
  --wba-line-strong: #d1c7bd;
  --wba-ivory: #f6f2ee;
  --wba-white: #ffffff;
  --wba-gold: #b8862e;
  --wba-error: #c41e3a;
  --wba-error-bg: #f8e9e9;
  --wba-success: #2f5d4a;
  --wba-success-bg: #eef5ef;
  --wba-warning: #b45309;

  --wba-font: 'Plus Jakarta Sans', ui-sans-serif, system-ui, sans-serif;
  --wba-text-xs: 0.75rem;
  --wba-text-sm: 0.8125rem;
  --wba-text-base: 0.875rem;
  --wba-text-md: 1rem;
  --wba-text-lg: 1.25rem;
  --wba-text-xl: 1.5rem;
  --wba-text-2xl: 2rem;
  --wba-text-3xl: 2.5rem;

  --wba-space-1: 4px;
  --wba-space-2: 8px;
  --wba-space-3: 12px;
  --wba-space-4: 16px;
  --wba-space-5: 24px;
  --wba-space-6: 32px;
  --wba-space-7: 48px;
  --wba-space-8: 64px;

  --wba-radius: 8px;
  --wba-radius-round: 50%;
  --wba-control-height: 48px;

  /* legacy names now follow the guideline */
  --anaya-card-title-font: var(--wba-font);
  --anaya-button-radius: var(--wba-radius);
  --anaya-guide-radius: var(--wba-radius);
  --anaya-guide-radius-sm: var(--wba-radius);
}

/* Accessibility: visible keyboard focus everywhere */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--wba-wine);
  outline-offset: 2px;
}

/* Gap rule: where a flex/grid gap sets the spacing, children carry no outer margin */
body.template-product .product-details .group-block-content > *,
body.template-product .product-details .product-form-buttons > *,
body.template-product .anaya-pdp-trust > *,
body.template-product .anaya-pdp-trust__grid > *,
body.template-product .anaya-pdp-custom > *,
body.template-product .anaya-pdp-made > * { margin-block: 0 !important; }
body.template-product .anaya-pdp-made p { margin: 0 0 var(--wba-space-1) !important; }

/* Product page: standard control height and button stacking */
body.template-product .product-details button[name="add"],
body.template-product .anaya-pdp-trust__wa { min-height: var(--wba-control-height); }
body.template-product .product-details .product-form-buttons { gap: var(--wba-space-3) !important; }
body.template-product .product-details .product-form-buttons > *:empty,
body.template-product .product-details .product-form-buttons > :not(.anaya-pdp-trust):not(:has(*)):not(button):not(input) { display: none !important; }
/* express checkout is hidden on purpose (it would skip paid extras), so hide its empty wrapper too */
body.template-product .product-details .accelerated-checkout-block { display: none !important; }
body.template-product .product-details .anaya-pdp-trust { margin-top: 0 !important; gap: var(--wba-space-4) !important; }
body.template-product .anaya-pdp-trust__grid { display: flex !important; flex-wrap: wrap; gap: var(--wba-space-2) var(--wba-space-5) !important; }
body.template-product .anaya-pdp-made { margin-bottom: var(--wba-space-3) !important; }

/* Care instructions trigger: looks like an accordion row, opens a side panel */
body.template-product .product-details .anaya-pdp-care-row { width: 100%; }
body.template-product .product-details .anaya-pdp-care-row .popup-link__button {
  display: flex; justify-content: space-between; align-items: center; width: 100%;
  padding: var(--wba-space-4) 0; border-bottom: 1px solid var(--wba-line);
  font-size: var(--wba-text-md); color: var(--wba-ink); text-decoration: none;
}
body.template-product .product-details .anaya-pdp-care-row .popup-link__button::after { content: '\203A'; font-size: 1.25rem; line-height: 1; }

/* Home + footer gap fixes: the gap sets the spacing, no extra margins */
.anaya-edhero__actions,
.product-carousel__view-all,
.product-carousel__price,
.anaya-footer__accordion-title { margin: 0 !important; }
.anaya-footer__col { margin-inline: 0 !important; }

/* One typeface: product card titles were falling back to a serif */
.anaya-card-title__text, .product-carousel__name { font-family: var(--wba-font) !important; }

/* More gap fixes */
.facets__filters-wrapper { margin-inline-start: 0 !important; }
body.template-product variant-option legend, body.template-product .variant-option > legend { margin: 0 !important; }
.cart-page__title, .cart-page__items { margin-block: 0 !important; }
.cart-page { padding-block-start: var(--wba-space-7); }
/* Designers A–Z: readable counts */
.designers-directory__count, .designers-directory__styles { font-size: var(--wba-text-xs) !important; color: var(--wba-muted) !important; }
.anaya-contact__submit { margin-block: 0 !important; }

/* Phone fixes */
.anaya-header__announce-item { font-size: var(--wba-text-xs) !important; }
slideshow-arrows .slideshow-control, .slideshow-control { border-radius: var(--wba-radius-round) !important; }
.variant-option > legend, fieldset.variant-option legend { margin: 0 !important; }

/* Info list (Description, Shipping & returns, Care): one clean list, one divider style */
body.template-product .product-details .accordion details,
body.template-product .product-details .anaya-pdp-care-drawer { border: 0 !important; border-top: 1px solid var(--wba-line) !important; margin: 0 !important; }
body.template-product .product-details .anaya-pdp-care-drawer { border-bottom: 1px solid var(--wba-line) !important; }
body.template-product .product-details .accordion { border: 0 !important; }
body.template-product .product-details .accordion summary,
body.template-product .product-details .anaya-pdp-care-drawer .popup-link__button {
  min-height: 52px; padding: var(--wba-space-4) 0 !important; margin: 0 !important;
  font-size: var(--wba-text-md) !important; font-weight: 500; color: var(--wba-ink) !important; text-decoration: none !important;
  display: flex !important; align-items: center; justify-content: space-between; width: 100%;
}
body.template-product .product-details .accordion .details-content,
body.template-product .product-details .accordion details > :not(summary) { padding: 0 0 var(--wba-space-4) !important; color: var(--wba-ink); font-size: var(--wba-text-base); line-height: 1.6; }
body.template-product .product-details .anaya-pdp-care-drawer .popup-link__button > svg,
body.template-product .product-details .anaya-pdp-care-drawer .popup-link__button .icon { display: none !important; }
body.template-product .product-details .anaya-pdp-care-drawer .popup-link__button::after { content: '\203A'; font-size: 1.4rem; line-height: 1; color: var(--wba-ink); }
/* Trust lines: ink text, wine icons, links underlined */
body.template-product .anaya-pdp-trust__grid li { color: var(--wba-ink) !important; font-size: var(--wba-text-sm) !important; }
body.template-product .anaya-pdp-trust__grid svg { stroke: var(--wba-wine) !important; }

/* Info list v2: the gallery script moves Care into .anaya-pdp-info-stack; join it to the list */
body.template-product .product-details .group-block-content > :empty { display: none !important; }
body.template-product .product-details .accordion details.details,
body.template-product .product-details .accordion > details.details.details:first-of-type,
html body.template-product .product-details .accordion details,
body.template-product .product-details .anaya-pdp-info-stack .anaya-pdp-info-drawer {
  border-style: solid !important; border-width: 1px 0 0 0 !important; border-color: var(--wba-line) !important;
}
body.template-product .product-details .anaya-pdp-info-stack .anaya-pdp-info-drawer:last-child { border-bottom-width: 1px !important; }

/* Product page columns: gallery ~60%, details ~40% (min 440px) */
@media screen and (min-width: 990px) {
  body.template-product .product-information__grid.product-information--media-left { grid-template-columns: minmax(0, 1.45fr) minmax(440px, 1fr) !important; }
}
body.template-product .product-details .accordion--dividers accordion-custom:first-child .details { border-block-start: 1px solid var(--wba-line) !important; }
html body.template-product .product-details .accordion--dividers accordion-custom:first-child .details { border-block-start: 1px solid var(--wba-line) !important; }

/* Product cards: brand is a small eyebrow, the product name reads as the title, price below
   (html body :is(...) beats the collection/search rules in anaya-collection.css) */
html body :is(product-card, .product-card) .anaya-card-title__vendor,
.anaya-card-title__vendor {
  display: block;
  margin: 0 0 var(--wba-space-1) !important;
  font: 600 var(--wba-text-xs)/1.3 var(--wba-font) !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--wba-muted) !important;
}
html body :is(product-card, .product-card) .anaya-card-title .anaya-card-title__text,
.anaya-card-title__text {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font: 500 var(--wba-text-md)/1.35 var(--wba-font) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: var(--wba-ink) !important;
}
html body :is(product-card, .product-card) .price {
  font: 600 var(--wba-text-md)/1.3 var(--wba-font) !important;
  letter-spacing: 0 !important;
  color: var(--wba-ink) !important;
}

/* Footer: brand block (logo, text, contact) on the left; the four link columns (Shop, Help, Policies, Legal) grouped
   on the right with a smaller gap between them, so the big space sits between the two blocks. Phones: stacked accordions. */
html body .anaya-footer__nav-group { width: 100%; }
@media (min-width: 750px) {
  html body .anaya-footer__columns.anaya-container {
    display: flex !important;
    flex-direction: row;
    justify-content: space-between !important;
    align-items: flex-start;
    gap: 48px;
  }
  html body .anaya-footer__columns .anaya-footer__col { margin: 0 !important; max-width: none; }
  html body .anaya-footer__columns .anaya-footer__col--brand { flex: 0 1 320px; max-width: 352px; }
  /* tablets: the four columns as a 2 x 2 block so they fit */
  html body .anaya-footer__nav-group {
    display: grid;
    grid-template-columns: repeat(2, auto);
    flex: 0 0 auto;
    width: auto;
    gap: 24px 48px;
    margin-left: auto;
  }
  html body .anaya-footer__nav-group .anaya-footer__col--nav { flex: 0 0 auto; }
}
@media (min-width: 990px) {
  html body .anaya-footer__nav-group { display: flex; gap: 48px; }
}

/* Side panels on phones: 16px side padding (was 24px) so content has more room */
@media (max-width: 749px) {
  .anaya-drawer__head { padding-inline: var(--wba-space-4) !important; }
  .anaya-drawer__body { padding-inline: var(--wba-space-4) !important; }
}


/* ---- Product cards (homepage rows, carousels, collections, "You may also like") ----
   Text sits flush with the photo. Brand and name read as one group (2px apart); the price sits further below.
   "html body" and doubled classes: anaya-design.css has more specific !important rules for card text. */
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) {
  --wba-card-brand-size: 0.6875rem;   /* 11px */
  --wba-card-name-size: 0.9375rem;    /* 15px */
  --wba-card-price-size: 0.9375rem;
  --wba-card-photo-gap: var(--wba-space-3);
  --wba-card-price-gap: var(--wba-space-3);
}
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) :is(.product-card__content, .group-block-content):has(> .anaya-card-title-link) { row-gap: 0 !important; }
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .product-card__content:has(> .anaya-card-title-link) > .card-gallery { margin-bottom: var(--wba-card-photo-gap) !important; }
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .group-block.anaya-card-meta.anaya-card-meta {
  padding-inline: 0 !important;
  padding-top: var(--wba-card-photo-gap) !important;
}
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .anaya-card-title__vendor.anaya-card-title__vendor {
  display: block;
  margin: 0 !important;
  font-size: var(--wba-card-brand-size) !important;
  line-height: 1.2 !important;
}
/* brand and name 2px apart: the gap sets it (anaya-design.css gave 3.2px plus a 2px margin) */
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .anaya-card-title.anaya-card-title { gap: 2px !important; row-gap: 2px !important; }
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .anaya-card-title__text.anaya-card-title__text {
  margin: 0 !important;
  font-size: var(--wba-card-name-size) !important;
  line-height: 1.25 !important;
}
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) product-price.text-block.text-block {
  padding-inline: 0 !important;
  padding-top: 0 !important;
  margin: var(--wba-card-price-gap) 0 0 !important;
}
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) product-price .price.price,
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) product-price.text-block.text-block {
  font-size: var(--wba-card-price-size) !important;
  line-height: 1.3 !important;
}
@media (max-width: 749px) {
  html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) {
    --wba-card-brand-size: 0.625rem;  /* 10px */
    --wba-card-name-size: 0.8125rem;  /* 13px */
    --wba-card-price-size: 0.8125rem;
    --wba-card-photo-gap: 10px;
    --wba-card-price-gap: 10px;
  }
  /* wishlist heart on card photos: smaller on phones */
  html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .anaya-wishlist-btn.anaya-wishlist-btn {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    top: 6px !important;
    right: 6px !important;
  }
  html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .anaya-wishlist-btn .anaya-wishlist-btn__icon,
  html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .anaya-wishlist-btn svg {
    width: 16px !important;
    height: 16px !important;
  }
}

/* New Arrivals carousel cards (custom section): same layout as the other product cards */
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .product-carousel__link.product-carousel__link {
  display: flex !important;
  flex-direction: column !important;
  padding: var(--wba-card-photo-gap) 0 0 !important;
  gap: 0 !important;
}
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .product-carousel__price.product-carousel__price {
  margin: var(--wba-card-price-gap) 0 0 !important;
  padding: 0 !important;
  font-size: var(--wba-card-price-size) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}
html body :is(product-card, .product-card, .product-grid__card, .product-carousel__card) .product-carousel__price.product-carousel__price > span { font: inherit !important; }

/* Zoom cursor only on the main product photos, not on product cards ("You may also like") */
html body.template-product :is(product-card, .product-card, .product-grid__card) :is(.product-media-container, .product-media-container--image, .product-media, img, slideshow-slide, .card-gallery) {
  cursor: pointer !important;
}

/* ---- Section titles: one style for every product section on home and product pages ---- */
html body :is(.featured-collections__title.featured-collections__title, .anaya-designers__title.anaya-designers__title, .product-carousel__title.product-carousel__title),
html body .shopify-section[id*="__pl_"] .text-block :is(h2, h3),
html body .shopify-section[id*="product_recommendations"] .text-block :is(h2, h3) {
  font-family: var(--wba-font) !important;
  font-size: 1.75rem !important;      /* 28px */
  font-weight: 600 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  margin: 0 !important;
}
@media (max-width: 749px) {
  html body :is(.featured-collections__title.featured-collections__title, .anaya-designers__title.anaya-designers__title, .product-carousel__title.product-carousel__title),
  html body .shopify-section[id*="__pl_"] .text-block :is(h2, h3),
  html body .shopify-section[id*="product_recommendations"] .text-block :is(h2, h3) {
    font-size: 1.375rem !important;   /* 22px */
  }
}

/* Desktop: product rows show 4 per row like the collection grids (wba-4-per-row): homepage product lists
   and "You may also like". Other lists (category tiles) keep the 3-column rule in anaya-sections.css. */
@media screen and (min-width: 990px) {
  html body .ui-test-product-list .resource-list.resource-list--grid,
  html body [id*='product_recommendations'] .resource-list.resource-list--grid {
    --resource-list-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  /* anaya-product.css sets "You may also like" to 3 columns directly on product and cart pages */
  html body:is(.template-product, .template-cart) .product-recommendations .resource-list.resource-list--grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Phones: the homepage hero shows the main photo; the two side photos fade in over it in turn (see "Hero on phones" at the end).
   Homepage product rows load 8 (two rows of 4 on desktop) but phones keep 6 (three rows of 2). */
@media screen and (max-width: 749px) {
  html body .ui-test-product-list .resource-list__item:nth-child(n + 7) { display: none !important; }
  html body .anaya-edhero .anaya-edhero__stack { display: none !important; }
  html body .anaya-edhero .anaya-edhero__grid { grid-template-rows: minmax(0, 1fr) !important; }
}

/* Homepage section headings: one size, colour and spacing everywhere (28/22px title in ink, 24px above
   and below, no description line). Alignment follows the section's layout: product rows are left-aligned
   with "View all" on the right; centred layouts (Shop by category circles, Designers grid) get a centred
   heading (.wba-home-head--center and the rule below). */
html body .wba-home-head,
html body .product-carousel__header.product-carousel__header,
html body .featured-collections__header.featured-collections__header {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: var(--wba-space-4);
  margin: 0 0 var(--wba-space-5) !important;
  text-align: left !important;
}
html body .product-carousel__intro { flex: 1 1 auto; align-items: flex-start !important; max-width: none !important; margin: 0 !important; text-align: left !important; }
html body .wba-home-head__title,
html body .product-carousel__title.product-carousel__title,
html body .featured-collections__title.featured-collections__title {
  margin: 0 !important;
  color: var(--wba-ink) !important;
  text-align: left !important;
}
html body .wba-home-head__title {
  font: 600 28px/1.15 var(--wba-font);
  letter-spacing: -0.01em;
}
html body .product-carousel__description,
html body .featured-collections__description { display: none !important; }
html body .wba-home-head__link,
html body .product-carousel__view-all.product-carousel__view-all {
  display: inline-flex !important;
  align-items: center;
  flex: none;
  min-height: 44px;
  margin: -6px 0 !important; /* 44px target without making the 32px title row taller */
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  color: var(--wba-wine) !important;
  font: 600 13px/1 var(--wba-font) !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}
html body .product-carousel.product-carousel {
  padding-block: var(--wba-space-5) var(--wba-space-7) !important;
  background: none !important;
}
html body .featured-collections.featured-collections { padding-top: var(--wba-space-5) !important; }
@media (hover: hover) {
  html body .wba-home-head__link:hover,
  html body .product-carousel__view-all:hover { text-decoration: underline !important; }
}
@media screen and (max-width: 749px) {
  html body .wba-home-head__title { font-size: 22px; }
}

/* Centred headings: Designers grid and Shop by category */
html body .wba-home-head.wba-home-head--center,
html body .featured-collections__header.featured-collections__header { justify-content: center !important; text-align: center !important; }
html body .wba-home-head--center .wba-home-head__title,
html body .featured-collections__title.featured-collections__title { text-align: center !important; }

/* Homepage designers: brand tiles (name + style count), 8px gap, partner brands marked with a wine dot */
.wba-dgrid { padding-block: var(--wba-space-5) var(--wba-space-7); }
.wba-dgrid__more { display: flex; justify-content: center; margin-top: var(--wba-space-4); }
.wba-dgrid__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--wba-space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}
html body .wba-dgrid__item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--wba-space-1);
  height: 100%;
  min-height: 72px;
  padding: var(--wba-space-3) var(--wba-space-4);
  border: 1px solid transparent;
  border-radius: var(--wba-radius);
  background: var(--wba-ivory);
  color: var(--wba-ink);
  text-decoration: none;
}
.wba-dgrid__name {
  display: flex;
  align-items: center;
  gap: var(--wba-space-2);
  font: 600 15px/1.25 var(--wba-font);
}
.wba-dgrid__mark {
  flex: none;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--wba-wine);
}
.wba-dgrid__count {
  color: var(--wba-muted);
  font: 400 12px/1.2 var(--wba-font);
}
html body .wba-dgrid__item:focus-visible { outline: 2px solid var(--wba-wine); outline-offset: 2px; }
@media (hover: hover) {
  html body .wba-dgrid__item:hover { border-color: var(--wba-wine); background: var(--wba-white, #fff); }
  html body .wba-dgrid__item:hover .wba-dgrid__name { color: var(--wba-wine); }
}
@media screen and (max-width: 749px) {
  .wba-dgrid__list > li:nth-child(n + 13) { display: none; }
  html body .wba-dgrid__item { min-height: 64px; padding: var(--wba-space-3); }
  .wba-dgrid__name { font-size: 14px; }
}
@media screen and (min-width: 750px) {
  .wba-dgrid__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media screen and (min-width: 990px) {
  .wba-dgrid__list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* Homepage: stitching in three steps (ivory cards with a wine number) */
.wba-steps { padding-block: var(--wba-space-5) var(--wba-space-7); }
.wba-steps__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--wba-space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}
.wba-steps__item {
  display: flex;
  align-items: center;
  gap: var(--wba-space-3);
  padding: var(--wba-space-3) var(--wba-space-4);
  border-radius: var(--wba-radius);
  background: var(--wba-ivory);
}
.wba-steps__num {
  display: inline-grid;
  flex: none;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--wba-wine);
  color: var(--wba-white, #fff);
  font: 600 14px/1 var(--wba-font);
}
.wba-steps__copy { display: grid; gap: 2px; }
.wba-steps__title { color: var(--wba-ink); font: 600 15px/1.3 var(--wba-font); }
.wba-steps__text { color: var(--wba-muted); font: 400 13px/1.4 var(--wba-font); }
.wba-steps__more { display: flex; justify-content: center; margin-top: var(--wba-space-4); }
@media screen and (min-width: 750px) {
  .wba-steps__list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--wba-space-4); }
  .wba-steps__item { padding: var(--wba-space-5); }
}

/* Homepage: text block for search at the end of the page (smaller, left-aligned) */
.wba-seo { padding-block: var(--wba-space-5) var(--wba-space-7); border-top: 1px solid var(--wba-line); }
html body .wba-seo__title {
  margin: 0 0 var(--wba-space-3);
  color: var(--wba-ink);
  font: 600 18px/1.3 var(--wba-font);
  text-align: left;
}
html body .wba-seo__text p {
  margin: 0;
  color: var(--wba-muted);
  font: 400 14px/1.7 var(--wba-font);
}
html body .wba-seo__text p + p { margin-top: var(--wba-space-2); }
html body .wba-seo__text a { color: var(--wba-ink); text-decoration: underline; text-underline-offset: 2px; }
@media (hover: hover) {
  html body .wba-seo__text a:hover { color: var(--wba-wine); }
}
@media screen and (max-width: 749px) {
  html body .wba-seo__title { font-size: 16px; }
  html body .wba-seo__text p { font-size: 13px; }
}

/* Contact form: every field the same white background and border (the message box was ivory) */
html body .anaya-contact__input.anaya-contact__input {
  background: var(--wba-white, #fff) !important;
  border: 1px solid var(--wba-line-strong, #d1c7bd) !important;
}
/* focus style: see "Form fields" at the end */


/* Bag sidebar (#54): the summary sat inside the content's 24px side padding and added its own 24px,
   so totals and buttons were indented 48px on tablet/desktop. Same 24px as the header and items now;
   bottom space equals the side space. Phones were already 16px all round. */
@media screen and (min-width: 750px) {
  html body #anaya-cart-drawer .cart-drawer__summary {
    padding: 24px 0 !important;
  }
}


/* #56 phone pass: promise strip above the footer. Phones: three columns, wine icon over a short title
   (like the homepage trust strip); the longer text stays on tablet/desktop. */
@media screen and (max-width: 749px) {
  html body .anaya-promise-bar { padding-block: var(--wba-space-4) !important; }
  html body .anaya-promise-bar .anaya-promise-bar__inner { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: var(--wba-space-2) !important; }
  html body .anaya-promise-bar .anaya-promise-bar__item { flex-direction: column; align-items: center; text-align: center; gap: var(--wba-space-2); }
  html body .anaya-promise-bar .anaya-promise-bar__icon { color: var(--wba-wine); margin: 0; }
  html body .anaya-promise-bar .anaya-promise-bar__icon .anaya-icon { width: 20px; height: 20px; }
  html body .anaya-promise-bar .anaya-promise-bar__title { margin: 0; font-size: 11px; font-weight: 500; letter-spacing: 0; text-transform: none; }
  html body .anaya-promise-bar .anaya-promise-bar__text { display: none; }
}

/* #56 Designers A–Z: title like the collection pages, 8px search box, 44px letter links.
   (A sticky letter row doesn't work: .page-wrapper has overflow hidden/auto while the window scrolls.) */
html body .designers-directory .designers-directory__header { flex-direction: column; align-items: flex-start; gap: var(--wba-space-1); }
html body .designers-directory .designers-directory__title {
  font: 600 28px/1.2 var(--wba-font) !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--wba-ink) !important;
}
html body .designers-directory .designers-directory__count,
html body .designers-directory .designers-directory__styles {
  font: 400 13px/1.4 var(--wba-font) !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--wba-muted) !important;
}
html body .designers-directory .designers-directory__search-input { border-radius: var(--wba-radius) !important; }
html body .designers-directory .designers-directory__jump { gap: 0 !important; padding-block: 0 !important; background: var(--wba-white, #fff); }
html body .designers-directory .designers-directory__jump-link {
  display: inline-flex !important; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 !important; flex: 0 0 auto;
}
html body .designers-directory .designers-directory__letter { font: 600 22px/1.2 var(--wba-font) !important; letter-spacing: 0 !important; }
html body .designers-directory .designers-directory__group { scroll-margin-top: 160px; }

/* #56 Search results: title like the collection pages, result count, 48px search box, less space above the products */
html body .search-page__header .text-block h3 { font: 600 28px/1.2 var(--wba-font) !important; letter-spacing: 0 !important; margin: 0 !important; }
html body .search-page__header .wba-search-count { margin: var(--wba-space-1) 0 0; font: 400 13px/1.4 var(--wba-font); color: var(--wba-muted); }
html body .search-page__header search-page-input-component { margin: var(--wba-space-4) 0 0 !important; }
html body .search-page__header .search-page-input { height: 48px !important; padding-block: 0 !important; }
html body results-list.product-grid-container:has(.facets-toggle) .facets-toggle__button { min-height: 44px; }
/* The count is under the title; Horizon's "N items" next to Sort would repeat it (same as collection pages) */
html body:has(.search-page__header) .facets--horizontal .products-count-wrapper { display: none !important; }
html body:has(.search-page__header) .facets--horizontal .sorting-filter { margin-inline-start: auto !important; }
@media screen and (max-width: 749px) {
  html body:has(.search-page__header) results-list.product-grid-container { padding-top: var(--wba-space-4) !important; }
}


/* #57 Search boxes: one clear button. Browsers add their own "x" to type="search" fields; the theme has its own. */
html body input[type="search"]::-webkit-search-cancel-button,
html body input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; appearance: none; display: none; }

/* Search panel styles live in assets/anaya-search-overlay.css (25 Oct) */
}

/* #58 Filter panel (phone drawer): plain close icon (no shadow or border); no extra lines on the sides
   (grey left border, scrollbar) or above the buttons (last group's line + the button bar's line) */
html body .facets-block-wrapper .theme-drawer__dialog { border-left: 0 !important; }
html body .facets-block-wrapper .theme-drawer__close-button {
  box-shadow: none !important; border: 0 !important; background: transparent !important;
}
html body .facets-drawer__filters { scrollbar-width: none; }
html body .facets-drawer__filters::-webkit-scrollbar { display: none; }
html body .facets-drawer__filters .facets__filters-wrapper > .facets__item:last-child .facets__panel { border-bottom: 0 !important; }

/* #59 Bag photos on iPhone: the 3:4 photo frame is a flex box sized only by aspect-ratio, so Safari let the
   image keep its own size (250x375) inside an 88x117 frame and showed a zoomed-in corner. Pin the image to the frame. */
html body .cart-items__media-container { display: block !important; position: relative; overflow: hidden; }
html body .cart-items__media-container .cart-items__media-image {
  position: absolute; inset: 0; width: 100% !important; height: 100% !important;
  min-width: 0; min-height: 0; max-width: none; aspect-ratio: auto; object-fit: cover; object-position: center;
}

/* #60 Cart page title: same size as other page titles (28px), 24px space before the items, count bubble centred */
html body .cart-page .cart-page__title { margin-bottom: var(--wba-space-5, 24px) !important; }
html body .cart-page .cart-title h1 {
  display: flex; align-items: center; gap: var(--wba-space-2);
  font: 600 28px/1.2 var(--wba-font) !important; letter-spacing: 0; margin: 0;
}
/* Cart page rows (user: "spacing is too much"): like the bag. No cell padding, 4px between name/variant/price,
   12px above the quantity, 16px above and below each divider (was 8.8px cell padding + 8px gaps + 24px padding + 24px margin) */
html body .cart-page .cart-items__table-row { row-gap: var(--wba-space-1) !important; padding: var(--wba-space-4) 0 !important; margin: 0 !important; }
html body .cart-page .cart-items__table-row:first-child { padding-top: 0 !important; }
html body .cart-page .cart-items__table-row > td { padding: 0 !important; }
html body .cart-page .cart-items__table-row > .cart-items__quantity { margin-top: var(--wba-space-2) !important; }
/* Cart page summary: nothing sits above the total any more (no note/discount), so no top line */
html body .cart-page .cart-summary__inner .cart-totals { border-block-start: 0 !important; padding-block-start: 0 !important; }
/* #61 Cart page summary box: ends 24px under the buttons instead of stretching to the height of the item list */
html body .cart-page .cart-summary { display: block !important; grid-template-rows: none !important; align-self: start !important; height: auto !important; } /* it is a subgrid spanning every row (grid-row 1 / -1) */


/* Form fields (WBA #68 / Airah #8, user 23 Oct): one field style on the contact page and the password page.
   Focus: no ring outside the field and no background change (user, 24 Oct); only the border takes the accent colour. */
html body .anaya-contact__input.anaya-contact__input:focus,
html body .anaya-contact__input.anaya-contact__input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border-color: var(--wba-wine) !important;
}
/* Password popup: same field as the contact page (was a grey border, 10px corners, 14px text; 16px also stops iPhones zooming in) */
html body .anaya-password-dialog__input.anaya-password-dialog__input {
  background: var(--wba-white, #fff) !important;
  border: 1px solid var(--wba-line-strong) !important;
  border-radius: var(--wba-radius) !important;
  font-size: 16px !important;
  color: var(--wba-ink);
  box-shadow: none !important;
}
html body .anaya-password-dialog__input.anaya-password-dialog__input:focus,
html body .anaya-password-dialog__input.anaya-password-dialog__input:focus-visible {
  outline: none !important;
  border-color: var(--wba-wine) !important;
}
/* "Notify me" on the password page: the email box is a field like the contact page's, the button sits beside it (below on phones) */
html body .anaya-cs__field.anaya-cs__field {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  gap: var(--wba-space-2, 8px) !important;
}
html body .anaya-cs__input.anaya-cs__input {
  background: var(--wba-white, #fff) !important;
  border: 1px solid var(--wba-line-strong) !important;
  border-radius: var(--wba-radius) !important;
  font-size: 16px !important;
  color: var(--wba-ink);
  min-height: 52px;
  box-shadow: none !important;
}
html body .anaya-cs__input.anaya-cs__input:focus,
html body .anaya-cs__input.anaya-cs__input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border-color: var(--wba-wine) !important;
}
html body .anaya-cs__submit.anaya-cs__submit {
  min-height: 52px;
}
/* Password popup field fills the popup's width, like the Enter button (Airah's sat at 215 of 338px) */
html body .anaya-pw-field.anaya-pw-field {
  display: block;
  position: relative;
  width: 100%;
}
html body .anaya-password-dialog__input.anaya-password-dialog__input {
  width: 100% !important;
  box-sizing: border-box;
}


/* Footer headings on phones: 15px like body headings, not page-title size; rows stay 48px for tapping */
@media screen and (max-width: 749px) {
  html body footer .menu__heading,
  html body footer .menu__heading span,
  html body .anaya-footer__accordion-title {
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
  }

  html body footer summary.menu__heading {
    min-height: 48px;
    padding-block: 12px !important;
    align-items: center;
  }

  html body footer .text-block h2,
  html body footer .text-block h3 {
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin-bottom: 8px !important;
  }
}


/* No sample products: an empty cart has nothing to base suggestions on, and Shopify then fills the row with placeholder T-shirts */
html body.template-cart:has(.cart-page--empty) [id*="product_recommendations"],
html body [id*="product_recommendations"]:has(.card-gallery__placeholder) {
  display: none !important;
}

/* Empty cart page: title, sign-in line and button centred (user, 24 Oct) */
html body .cart-page--empty {
  flex-direction: column !important;
  align-items: center !important;
  text-align: center;
}
html body .cart-page--empty > .cart-page__title,
html body .cart-page--empty > .cart-page__items {
  align-self: center !important;
}
html body .cart-page--empty .cart-title,
html body .cart-page--empty .cart-title h1 {
  justify-content: center;
  text-align: center !important;
}
html body .cart-page--empty .cart-items__wrapper {
  flex-direction: column !important;
  align-items: center !important;
}


/* New requests A–C (user, 24 Oct) */
/* A. Category bar (desktop): a line grows in from the left on hover and slides away to the right;
   the current page keeps its line. Same 2px line as the current-page mark. */
@media screen and (min-width: 990px) {
  html body .wba-dnav__link::after {
    content: '';
    position: absolute;
    inset: auto 0 10px 0;
    height: 2px;
    background: var(--wba-wine);
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform 0.35s ease;
  }
  html body .wba-dnav__link[aria-current="page"]::after { transform: scaleX(1); }
  html body .wba-dnav__link:focus-visible::after { transform: scaleX(1); transform-origin: left center; }
}
@media (hover: hover) and (min-width: 990px) {
  html body .wba-dnav__link:hover::after { transform: scaleX(1); transform-origin: left center; }
}
@media (prefers-reduced-motion: reduce) {
  html body .wba-dnav__link::after { transition: none; }
}

/* B. Announcement bar: one message at a time, ‹ › beside the text in the centre (not at the screen edges);
   messages slide top to bottom (the old marquee is gone) */
html body .anaya-header .wba-announce {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 360px) 44px;
  align-items: stretch;
  justify-content: center !important;
  padding-inline: var(--wba-space-2);
  white-space: normal;
}
html body .anaya-header .wba-announce__viewport {
  grid-column: 2;
  display: grid;
  overflow: hidden;
}
html body .anaya-header .wba-announce__msg {
  grid-area: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding-block: 4px;
  text-align: center;
  line-height: 1.35;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.5s ease, opacity 0.5s ease;
}
html body .anaya-header .wba-announce__msg.is-active {
  opacity: 1;
  pointer-events: auto;
  transform: none;
  transition: transform 0.5s ease, opacity 0.5s ease;
}
html body .anaya-header .wba-announce__msg a { color: inherit; text-decoration: none; }
html body .anaya-header .wba-announce__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  cursor: pointer;
}
html body .anaya-header .wba-announce__btn:last-child { grid-column: 3; }
html body .anaya-header .wba-announce__btn:focus-visible { outline: 2px solid currentColor; outline-offset: -4px; }
@media (hover: hover) {
  html body .anaya-header .wba-announce__btn:hover { opacity: 0.6; }
}
@media screen and (max-width: 749px) {
  html body .anaya-header .wba-announce { min-height: 40px; }
}
@media (prefers-reduced-motion: reduce) {
  html body .anaya-header .wba-announce__msg,
  html body .anaya-header .wba-announce__msg.is-active { transition: none; }
}

/* C. Product page: Body height field, like the search page input; focus like the contact fields (border colour only) */
html body .anaya-pdp-custom__section.anaya-pdp-custom__height {
  display: grid;
  gap: var(--wba-space-2);
  padding: var(--wba-space-3) 0 0;
  border: 0;
}
html body .anaya-pdp-custom__height .anaya-pdp-custom__heading { margin: 0; }
html body .anaya-pdp-custom__height-input.anaya-pdp-custom__height-input {
  width: 100%;
  box-sizing: border-box;
  height: 48px;
  margin: 0;
  padding: 0 var(--wba-space-4);
  background: #fff !important;
  border: 1px solid #dfdfdf !important;
  border-radius: var(--wba-radius) !important;
  box-shadow: none !important;
  color: var(--wba-ink);
  font: 400 14px/1.4 var(--wba-font);
}
html body .anaya-pdp-custom__height-input::placeholder { color: rgba(51, 51, 51, 0.8); }
html body .anaya-pdp-custom__height-input.anaya-pdp-custom__height-input:focus,
html body .anaya-pdp-custom__height-input.anaya-pdp-custom__height-input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border-color: var(--wba-wine) !important;
}
@media screen and (max-width: 749px) {
  html body .anaya-pdp-custom__height-input.anaya-pdp-custom__height-input { font-size: 16px; }
}


/* Hero on phones (user, 24 Oct): the three photos take turns in the same frame with a slow cross-fade (no sliding):
   main photo, then side photo 1, then side photo 2, 6 s each, 1.2 s fades. Text and buttons stay put.
   No animation for reduced motion (main photo only). Desktop keeps the three-photo layout. */
@media screen and (max-width: 749px) and (prefers-reduced-motion: no-preference) {
  html body .anaya-edhero .anaya-edhero__stack {
    display: block !important;
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
  }
  html body .anaya-edhero .anaya-edhero__stack .anaya-edhero__panel {
    position: absolute;
    inset: 0;
    opacity: 0;
    animation: wba-hero-fade-a 18s linear infinite;
  }
  html body .anaya-edhero .anaya-edhero__stack .anaya-edhero__panel + .anaya-edhero__panel { animation-name: wba-hero-fade-b; }
  html body .anaya-edhero .anaya-edhero__stack .anaya-edhero__image { object-position: center 20%; }
  html body .anaya-edhero .anaya-edhero__stack .anaya-edhero__shade--secondary {
    background:
      linear-gradient(to top, rgb(12 8 6 / 0.82) 0%, rgb(12 8 6 / 0.42) 38%, transparent 66%),
      linear-gradient(to right, rgb(12 8 6 / 0.4) 0%, transparent 48%);
  }
}
@keyframes wba-hero-fade-a { 0%, 30% { opacity: 0; } 36.7%, 70% { opacity: 1; } 70.1%, 100% { opacity: 0; } }
@keyframes wba-hero-fade-b { 0%, 63.3% { opacity: 0; } 70%, 93.3% { opacity: 1; } 100% { opacity: 0; } }


/* No bottom bar on phones (user, 24 Oct). The wishlist heart moves into the phone header (heart + bag on the right,
   menu + search on the left); the country / currency picker moves into the menu ("Ship to"), Account stays in the menu.
   --wba-bar-height 0 drops every offset that made room for the bar (page bottom, sticky Add to bag, WhatsApp bubble). */
.wba-mmenu__region { display: none; }
@media screen and (max-width: 749px) {
  html:root { --wba-bar-height: 0px; } /* html:root beats the :root in wba-mobile-nav.css, which loads after this file */
  html body .wba-bottom-bar { display: none !important; }
  html body .anaya-header .anaya-header__icon-btn.anaya-header__wishlist-link { display: inline-flex; }
  html body .anaya-header .anaya-header__region { display: none !important; }
  html body .wba-mmenu__region {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--wba-space-3);
    margin-top: var(--wba-space-4);
    padding-top: var(--wba-space-4);
    border-top: 1px solid var(--wba-on-wine-line, rgba(255, 255, 255, 0.16));
  }
  html body .wba-mmenu__region-label { font: 600 12px/1.2 var(--wba-font); letter-spacing: 0.08em; text-transform: uppercase; opacity: 0.78; }
  /* The menu row sits low in the panel, so its picker opens upwards (it ran off the bottom of the screen) */
  html body .wba-mmenu__region .anaya-loc { position: relative; }
  html body .wba-mmenu__region .anaya-loc__panel { top: auto !important; bottom: calc(100% + var(--wba-space-2)) !important; }
}


/* Bag lines (page + side bag): one tidy text style for the details, nothing under 12px (user, 24 Oct) */
html body .cart-items__table-row .cart-items__variants.cart-items__variants,
html body .cart-items__table-row .cart-items__properties.cart-items__properties,
html body .cart-items__table-row .cart-items__properties dt,
html body .cart-items__table-row .cart-items__properties dd,
html body .cart-items__table-row .cart-items__variants dd { font-size: 13px; line-height: 1.5; color: var(--wba-muted); }
html body .cart-items__table-row .cart-items__properties.cart-items__properties { display: grid; gap: 2px; margin: var(--wba-space-1) 0 0; }
html body .cart-items__table-row .cart-items__property { display: flex; flex-wrap: wrap; gap: 4px; }
html body .wba-cart-measure.wba-cart-measure { margin-top: var(--wba-space-2); padding: var(--wba-space-2) var(--wba-space-3); font-size: 13px; line-height: 1.5; }
html body .wba-cart-measure .wba-cart-measure__title { font-size: 13px; font-weight: 600; }
html body .wba-cart-measure .wba-cart-measure__agreed { margin: 2px 0 0; font-size: 12px; line-height: 1.45; color: var(--wba-muted); }
html body .wba-cart-measure .wba-cart-measure__actions { gap: var(--wba-space-4); margin-top: 2px; }
html body .wba-cart-measure .wba-cart-measure__actions button { min-height: 28px; font-size: 12px; }
html body .wba-cart-measure .wba-cart-measure__list dt, html body .wba-cart-measure .wba-cart-measure__list dd { font-size: 13px; }
html body .wba-cart-extras .wba-cart-extras__title.wba-cart-extras__title { font-size: 12px; letter-spacing: 0.06em; }
html body .wba-cart-extras .wba-cart-extras__name, html body .wba-cart-extras .wba-cart-extras__price { font-size: 13px; line-height: 1.5; }
/* Weights in the bag (user, 24 Oct): name 500, price 600, labels 500, details 400; option values in sentence case */
html body .cart-items__table-row .cart-items__title.cart-items__title { font-size: 15px !important; font-weight: 500 !important; line-height: 1.35; }
html body .cart-items__table-row .cart-items__price text-component { font-size: 15px !important; font-weight: 600 !important; }
html body .cart-items__table-row .wba-cart-vendor.wba-cart-vendor { font-size: 12px; line-height: 1.4; }
html body .wba-cart-measure .wba-cart-measure__title,
html body .wba-cart-measure .wba-cart-measure__actions button,
html body .wba-cart-extras .wba-cart-extras__title.wba-cart-extras__title { font-weight: 500; }
html body .cart-items__table-row .cart-items__variants dd { display: inline-block; text-transform: lowercase; }
html body .cart-items__table-row .cart-items__variants dd::first-letter { text-transform: uppercase; }
/* Measurements v2 (24 Oct): popup ticks, bag summary */
.anaya-measure__checks { display: grid; gap: var(--wba-space-2); margin-top: var(--wba-space-4); padding-top: var(--wba-space-4); border-top: 1px solid var(--wba-line); }
.anaya-measure__check { display: flex; gap: var(--wba-space-3); align-items: flex-start; font-size: var(--wba-text-sm); line-height: 1.45; color: var(--wba-ink); cursor: pointer; }
.anaya-measure__check input { width: 18px; height: 18px; margin: 2px 0 0; flex-shrink: 0; accent-color: var(--wba-wine); }
.anaya-measure__check a { color: inherit; text-decoration: underline; }
.anaya-measure__checks .anaya-measure__hint { margin: 0 0 0 30px; }
.anaya-measure__agree { margin-top: var(--wba-space-2); font-weight: 500; }
.wba-cart-measure { margin-top: var(--wba-space-2); padding: var(--wba-space-2) var(--wba-space-3); border: 1px solid var(--wba-line); border-radius: var(--wba-radius); font-size: var(--wba-text-sm); }
.wba-cart-measure__title { margin: 0; color: var(--wba-ink); font-weight: 500; }
.wba-cart-measure__actions { display: flex; gap: var(--wba-space-4); margin-top: var(--wba-space-1); }
.wba-cart-measure__actions button { min-height: 32px; font-size: var(--wba-text-xs); font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; text-decoration: underline; text-underline-offset: 3px; color: var(--wba-ink); cursor: pointer; }
.wba-cart-measure__list { display: grid; gap: 2px; margin: var(--wba-space-2) 0 0; }
.wba-cart-measure__list[hidden] { display: none; }
.wba-cart-measure__list div { display: flex; gap: 6px; }
.wba-cart-measure__list dt { color: var(--wba-muted); }
.wba-cart-measure__list dd { margin: 0; color: var(--wba-ink); }

/* Product page extras, tighter (user, 24 Oct): ticks 36px apart, Edit + Remove in one row, same size */
html body.template-product .anaya-pdp-custom .anaya-pdp-custom__check.anaya-pdp-custom__check { min-height: 36px !important; padding: 4px 0 !important; align-items: center !important; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions.anaya-pdp-custom__stitch-actions { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; gap: var(--wba-space-2); }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-btn.anaya-pdp-custom__stitch-btn,
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-remove.anaya-pdp-custom__stitch-remove { display: inline-flex; align-items: center; justify-content: center; gap: 6px; width: auto !important; min-width: 0; height: 36px !important; min-height: 36px !important; margin: 0; padding: 0 var(--wba-space-3) !important; border: 1px solid var(--wba-ink); border-radius: var(--wba-radius); background: transparent; color: var(--wba-ink); font-size: 13px; font-weight: 500; letter-spacing: 0; text-transform: none; text-decoration: none; white-space: nowrap; cursor: pointer; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-remove[hidden] { display: none; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-btn-icon { width: 16px; height: 16px; }
@media (max-width: 749px) { html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-btn.anaya-pdp-custom__stitch-btn, html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-remove.anaya-pdp-custom__stitch-remove { flex: 1 1 0; width: auto !important; } }
/* one look for both buttons; desktop: same width too */
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-btn.anaya-pdp-custom__stitch-btn, html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-remove.anaya-pdp-custom__stitch-remove { min-width: 96px; background: transparent !important; border-color: var(--wba-ink) !important; color: var(--wba-ink) !important; font-size: 13px !important; font-weight: 500 !important; }
/* Edit + Remove: two equal columns (one when Remove is hidden) */
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions.anaya-pdp-custom__stitch-actions { display: grid !important; grid-template-columns: 1fr 1fr; gap: var(--wba-space-2); }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions.anaya-pdp-custom__stitch-actions:has(> .anaya-pdp-custom__stitch-remove[hidden]) { grid-template-columns: 1fr; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-btn.anaya-pdp-custom__stitch-btn, html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-remove.anaya-pdp-custom__stitch-remove { width: 100% !important; flex: none; grid-column: auto !important; grid-row: auto !important; justify-self: stretch !important; }
/* "Want it stitched?" box, upgraded (user, 24 Oct: "too simple, upgrade the style and colours"): ivory card, icon in a circle,
   brand-colour heading, buttons on their own row (Edit filled, Remove outlined, same size); icon fills in once saved */
html body .anaya-pdp-custom .anaya-pdp-custom__stitch.anaya-pdp-custom__stitch { display: grid !important; grid-template-columns: 40px 1fr !important; gap: 2px var(--wba-space-3) !important; align-items: center !important; padding: var(--wba-space-4) !important; background: var(--wba-ivory) !important; border: 1px solid var(--wba-line) !important; border-radius: var(--wba-radius) !important; }
html body.template-product .anaya-pdp-custom .anaya-pdp-custom__stitch > .anaya-pdp-custom__stitch-icon.anaya-pdp-custom__stitch-icon { display: block !important; grid-column: 1 !important; grid-row: 1 !important; width: 40px !important; height: 40px !important; padding: 10px; box-sizing: border-box; border-radius: 50%; background: #fff; stroke: var(--wba-wine) !important; fill: none; transition: background 0.2s, stroke 0.2s; }
html body.template-product .anaya-pdp-custom .anaya-pdp-custom__stitch.is-saved > .anaya-pdp-custom__stitch-icon.anaya-pdp-custom__stitch-icon { background: var(--wba-wine) !important; stroke: #fff !important; }
html body.template-product .anaya-pdp-custom .anaya-pdp-custom__stitch .anaya-pdp-custom__stitch-text.anaya-pdp-custom__stitch-text { grid-column: 2 !important; grid-row: 1 !important; min-width: 0; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch .anaya-pdp-custom__heading.anaya-pdp-custom__heading { margin: 0 0 2px !important; color: var(--wba-wine) !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch .anaya-pdp-custom__stitch-sub.anaya-pdp-custom__stitch-sub { margin: 0 !important; color: var(--wba-ink) !important; font-size: 14px !important; line-height: 1.45 !important; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch .anaya-pdp-custom__stitch-actions.anaya-pdp-custom__stitch-actions { grid-column: 1 / -1 !important; grid-row: 2; margin-top: var(--wba-space-3) !important; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-btn.anaya-pdp-custom__stitch-btn { background: var(--wba-wine) !important; border-color: var(--wba-wine) !important; color: #fff !important; height: 40px !important; min-height: 40px !important; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-btn.anaya-pdp-custom__stitch-btn svg { stroke: currentColor; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-remove.anaya-pdp-custom__stitch-remove { background: #fff !important; border-color: var(--wba-ink) !important; color: var(--wba-ink) !important; height: 40px !important; min-height: 40px !important; }
html body .anaya-pdp-custom .anaya-pdp-custom__stitch-actions .anaya-pdp-custom__stitch-btn.anaya-pdp-custom__stitch-btn:hover { filter: brightness(1.1); }

/* Measurements popup v3 (user, 24 Oct): "Before you save" notes, ticks like the Additionals ticks, no click outline */
.anaya-measure__before { margin-top: var(--wba-space-4); padding: var(--wba-space-3) var(--wba-space-4); background: var(--wba-ivory); border-radius: var(--wba-radius); }
.anaya-measure__before .anaya-measure__group { margin: 0 0 var(--wba-space-2); }
.anaya-measure__notes { margin: 0; padding-left: 18px; display: grid; gap: 4px; font-size: 13px; line-height: 1.5; color: var(--wba-ink); }
html body .anaya-measure .anaya-measure__check input[type="checkbox"] { appearance: none; width: 18px; height: 18px; flex: 0 0 18px; margin: 2px 0 0; border: 1.5px solid var(--wba-muted) !important; border-radius: min(var(--wba-radius), 4px) !important; background-color: #fff !important; cursor: pointer; }
html body .anaya-measure .anaya-measure__check input[type="checkbox"]:checked { border-color: var(--wba-wine) !important; background-color: var(--wba-wine) !important; }
html body button:focus:not(:focus-visible), html body a:focus:not(:focus-visible), html body summary:focus:not(:focus-visible) { outline: none !important; box-shadow: none !important; }
html body .anaya-pdp-custom__stitch-btn:focus-within:not(:has(:focus-visible)), html body .anaya-pdp-custom__stitch-btn:focus:not(:focus-visible) { outline: none !important; }

/* wba-mobile-nav.css */
/* Header, menu and phone bottom bar. One look on every screen: light announcement strip, wine bar
   with white logo and icons (search is the icon button), wine menu panel. Phones add a bottom bar;
   desktop adds a category row under the bar.
   "html body" beats the !important rules in anaya-layout.css. */
:root {
  --wba-on-wine: #ffffff;
  --wba-on-wine-muted: rgba(255, 255, 255, 0.78);
  --wba-on-wine-line: rgba(255, 255, 255, 0.16);
}
.wba-bottom-bar,
.wba-dnav { display: none; }

/* Announcement strip: light with dark text, above the wine bar */
html body .anaya-header .anaya-header__announce {
  background: var(--wba-ivory) !important;
  border-bottom: 1px solid var(--wba-line);
}
html body .anaya-header .anaya-header__announce,
html body .anaya-header .anaya-header__announce a,
html body .anaya-header .anaya-header__announce-item { color: var(--wba-ink) !important; }
html body .anaya-header .anaya-header__announce-dot { color: var(--wba-muted) !important; }

/* Header bar (all widths) */
html body .anaya-header .anaya-header__main {
  background: var(--wba-wine) !important;
  border-bottom: 0 !important;
}
html body .anaya-header .anaya-header__icon-btn,
html body .anaya-header .anaya-loc__trigger,
html body .anaya-header .anaya-header__account a,
html body .anaya-header .anaya-header__account button {
  min-width: 44px !important;
  min-height: 44px !important;
  color: var(--wba-on-wine) !important;
}
html body .anaya-header .anaya-header__icon-btn { width: 44px !important; height: 44px !important; }
/* only the button on the bar is white; its dropdown panel keeps dark text */
html body .anaya-header .anaya-loc__trigger,
html body .anaya-header .anaya-loc__trigger * { color: var(--wba-on-wine) !important; }
html body .anaya-header .anaya-header__logo .anaya-header__logo-dark { display: none !important; }
html body .anaya-header .anaya-header__logo .anaya-header__logo-light { display: block !important; }
html body .anaya-header .anaya-header__cart-count,
html body .anaya-header .anaya-header__wishlist-count {
  background: var(--wba-white) !important;
  color: var(--wba-wine) !important;
}

/* Menu panel (all widths): wine, logo, three shortcut tiles, category rows */
html body #anaya-menu-drawer .anaya-drawer__panel,
html body #anaya-menu-drawer .anaya-drawer__head,
html body #anaya-menu-drawer .anaya-drawer__body,
html body #anaya-menu-drawer .anaya-menu {
  background: var(--wba-wine) !important;
  color: var(--wba-on-wine) !important;
}
html body #anaya-menu-drawer .anaya-drawer__head {
  min-height: 56px;
  padding: 0 var(--wba-space-2) 0 var(--wba-space-4) !important;
  border-bottom: 1px solid var(--wba-on-wine-line) !important;
}
html body #anaya-menu-drawer .anaya-drawer__title {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
html body .wba-mmenu__logo .anaya-header__logo-dark { display: none !important; }
html body .wba-mmenu__logo .anaya-header__logo-light { display: block !important; }
html body .wba-mmenu__logo img {
  display: block;
  max-height: 40px;
  width: auto;
}
html body #anaya-menu-drawer .anaya-drawer__close {
  width: 44px !important;
  height: 44px !important;
  color: var(--wba-on-wine) !important;
}
html body #anaya-menu-drawer .anaya-drawer__body { padding: var(--wba-space-4) !important; }
html body #anaya-menu-drawer .anaya-menu__nav > .anaya-menu__link,
html body #anaya-menu-drawer .anaya-menu__extras > .anaya-menu__link,
html body #anaya-menu-drawer .anaya-menu__item > summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid var(--wba-on-wine-line) !important;
  color: var(--wba-on-wine) !important;
  font: 600 13px/1.3 var(--wba-font) !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}
html body #anaya-menu-drawer .anaya-menu__item { border: 0 !important; margin: 0 !important; }
html body #anaya-menu-drawer .anaya-menu__chevron {
  width: 16px;
  height: 16px;
  color: var(--wba-on-wine) !important;
}
html body #anaya-menu-drawer .anaya-menu__panel a {
  display: flex !important;
  align-items: center !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 0 0 var(--wba-space-3) !important;
  color: var(--wba-on-wine-muted) !important;
  font: 400 var(--wba-text-base)/1.3 var(--wba-font) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
}
html body #anaya-menu-drawer .anaya-menu__account { display: none !important; }
html body #anaya-menu-drawer :is(a, button, summary):focus-visible {
  outline: 2px solid var(--wba-on-wine) !important;
  outline-offset: 2px;
}

/* Phones */
@media screen and (max-width: 749px) {
  :root {
    --wba-bar-height: 56px;
    --wba-bar-space: calc(var(--wba-bar-height) + env(safe-area-inset-bottom, 0px));
  }
  html body .anaya-header .anaya-header__main-inner {
    min-height: 56px !important;
    padding-block: 0 !important;
  }
  html body .anaya-header .anaya-header__logo img { max-height: 40px !important; }

  /* Bottom bar */
  .wba-bottom-bar {
    display: block;
    position: fixed;
    inset: auto 0 0 0;
    z-index: 4000;
    padding-bottom: env(safe-area-inset-bottom, 0px);
    background: var(--wba-wine);
  }
  .wba-bottom-bar__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* Home, Designers, Wishlist, Account (Shop removed 22 Oct; the menu is in the header) */
    margin: 0;
    padding: 0;
    list-style: none;
  }
  html body .wba-bottom-bar__item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--wba-space-1);
    width: 100%;
    height: var(--wba-bar-height);
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    color: var(--wba-on-wine-muted);
    font: 600 11px/1 var(--wba-font);
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
  }
  html body .wba-bottom-bar__item svg { width: 22px; height: 22px; }
  html body .wba-bottom-bar__item[aria-current="page"],
  html body .wba-bottom-bar__item.is-active { color: var(--wba-on-wine); }
  .wba-bottom-bar__item[aria-current="page"]::before,
  .wba-bottom-bar__item.is-active::before {
    content: '';
    position: absolute;
    inset: 0 30% auto 30%;
    height: 2px;
    background: var(--wba-on-wine);
  }
  html body .wba-bottom-bar__item:focus-visible {
    outline: 2px solid var(--wba-on-wine);
    outline-offset: -4px;
  }
  .wba-bottom-bar__count {
    position: absolute;
    top: 6px;
    left: calc(50% + 6px);
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 999px;
    background: var(--wba-white);
    color: var(--wba-wine);
    font: 600 10px/16px var(--wba-font);
    letter-spacing: 0;
    text-align: center;
  }
  .wba-bottom-bar__count[hidden] { display: none; }

  /* Room for the bar: page end, WhatsApp button and the sticky add-to-bag bar sit above it */
  html body { padding-bottom: var(--wba-bar-space) !important; }
  html body .anaya-wa-float { bottom: calc(var(--wba-bar-space) + var(--wba-space-3)) !important; }
  html body .sticky-add-to-cart__bar { bottom: var(--wba-bar-space) !important; }

  /* Menu fills the screen */
  html body #anaya-menu-drawer .anaya-drawer__panel {
    width: 100% !important;
    max-width: none !important;
  }
}

/* Tablet and desktop: menu as a side panel */
@media screen and (min-width: 750px) {
  html body #anaya-menu-drawer .anaya-drawer__panel { width: min(400px, 100%) !important; }
}

/* Desktop: category row under the bar */
@media screen and (min-width: 990px) {
  .wba-dnav {
    display: block;
    background: var(--wba-ivory);
    border-bottom: 1px solid var(--wba-line);
  }
  .wba-dnav__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 var(--wba-space-5);
    margin: 0;
    padding: 0 var(--wba-space-6);
    list-style: none;
  }
  html body .wba-dnav__link {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: var(--wba-ink);
    font: 600 var(--wba-text-xs)/1 var(--wba-font);
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
  }
  .wba-dnav__link[aria-current="page"]::after {
    content: '';
    position: absolute;
    inset: auto 0 10px 0;
    height: 2px;
    background: var(--wba-wine);
  }
  html body .wba-dnav__link:focus-visible { outline: 2px solid var(--wba-wine); outline-offset: 2px; }
}
@media (hover: hover) and (min-width: 990px) {
  html body .wba-dnav__link:hover { color: var(--wba-wine); }
}

/* Header icons: one size at every width (24px drawn in a 44px button), 4px between buttons */
html body .anaya-header .anaya-header__main .anaya-header__icon-btn svg {
  width: 24px !important;
  height: 24px !important;
}
html body .anaya-header .anaya-header__left,
html body .anaya-header .anaya-header__right { gap: var(--wba-space-1) !important; }
html body .anaya-header .anaya-loc__trigger { font-size: 14px !important; }

/* Tablet and desktop: header. Announcement 31px, wine bar 72px with a 52px logo,
   category row 45px. Once scrolled the announcement slides away and the bar drops to 60px with a 40px logo
   (wba-header.js sets .wba-hdr-compact); the space under the header keeps its full height,
   so the page never jumps. */
@media screen and (min-width: 750px) {
  html body .anaya-header .anaya-header__announce,
  html body .anaya-header .anaya-header__announce-track {
    min-height: 30px !important;
    padding-block: 0 !important;
  }
  html body .anaya-header .anaya-header__announce { max-height: 31px; font-size: 12px !important; }
  html body .anaya-header .anaya-header__main-inner {
    min-height: 72px !important;
    padding-block: 0 !important;
  }
  html body .anaya-header .anaya-header__logo img,
  html body .anaya-header .anaya-header__logo-img { max-height: 52px !important; }

  html body .anaya-header .anaya-header__announce,
  html body .anaya-header .anaya-header__main-inner,
  html body .anaya-header .anaya-header__logo img {
    transition: max-height 200ms var(--anaya-ease, ease), min-height 200ms var(--anaya-ease, ease);
  }
  html.wba-hdr-compact body #header-group { min-height: var(--wba-hdr-full, var(--anaya-header-height)) !important; }
  html.wba-hdr-compact body .anaya-header .anaya-header__announce {
    max-height: 0;
    min-height: 0 !important;
    border-bottom-width: 0;
  }
  html.wba-hdr-compact body .anaya-header .anaya-header__main-inner { min-height: 60px !important; }
  html.wba-hdr-compact body .anaya-header .anaya-header__logo img { max-height: 40px !important; }
}
@media (prefers-reduced-motion: reduce) {
  html body .anaya-header .anaya-header__announce,
  html body .anaya-header .anaya-header__main-inner,
  html body .anaya-header .anaya-header__logo img { transition: none !important; }
}

/* Measurements popup tidy (user, 24 Oct): one weight for every tick label, 12px between tick and text, hint lines up
   with the label text, no divider inside "Before you save", text areas grow to 160px at most (240px elsewhere) */
html body .anaya-measure .anaya-measure__check { gap: 12px; }
html body .anaya-measure .anaya-measure__check, html body .anaya-measure .anaya-measure__check span { font-weight: 400 !important; color: inherit; }
html body .anaya-measure .anaya-measure__check + .anaya-measure__hint { padding-left: 30px !important; }
html body .anaya-measure .anaya-measure__before .anaya-measure__group { border-top: 0 !important; padding-top: 0 !important; }
html body .anaya-measure textarea { max-height: 160px; overflow-y: auto; }
html body textarea { max-height: 240px; overflow-y: auto; }

/* Phone menu: the last link's line already separates "Ship to" (user, 24 Oct) */
html body .wba-mmenu__region { border-top: 0 !important; }
/* Country picker opens straight on the list; picking a country applies it (user, 24 Oct) */
html body .anaya-loc__panel .anaya-loc__label, html body .anaya-loc__panel [data-anaya-loc-country-toggle],
html body .anaya-loc__panel .anaya-loc__currency-note, html body .anaya-loc__panel .anaya-loc__save { display: none !important; }
html body .anaya-loc__panel .anaya-loc__dropdown { position: static !important; inset: auto !important; margin: 0 !important; box-shadow: none !important; border: 0 !important; padding: 0 !important; width: auto !important; transform: none !important; max-height: none !important; }
html body .anaya-loc__panel .anaya-loc__list { max-height: min(360px, 55vh) !important; }
html body .anaya-loc__panel .anaya-loc__panel-head { display: none !important; }
html body .anaya-loc__panel .anaya-loc__form { padding: 8px !important; gap: 8px !important; }
html body .anaya-loc__panel .anaya-loc__search { margin: 0 0 4px !important; }
html body .anaya-loc__panel .anaya-loc__list { padding: 0 !important; }
html body .anaya-loc__panel .anaya-loc__option { padding: 8px !important; font-size: 13px !important; }
html body .anaya-loc__panel .anaya-loc__option-currency { font-size: 12px !important; }
html body .anaya-loc__panel .anaya-loc__option .anaya-loc__flag { width: 18px !important; height: 18px !important; }
html body .anaya-loc__panel .anaya-loc__search { padding: 6px 10px !important; }
html body .anaya-loc__panel .anaya-loc__search-input { font-size: 13px !important; }
/* Phone menu: currency + arrow take the menu's text colour (they were ink on the wine menu) */
html body .wba-mmenu__region .anaya-region, html body .wba-mmenu__region .anaya-loc__trigger, html body .wba-mmenu__region .anaya-loc__trigger-text,
html body .wba-mmenu__region .anaya-loc__chevron { color: inherit !important; opacity: 1 !important; }
html body .wba-mmenu__region .anaya-loc__panel { color: var(--wba-ink, #322d29); }
/* Measurements popup: the header scrolls with the content, Cancel / Save stay at the bottom (user, 24 Oct) */
html body .anaya-measure .anaya-measure__body { overflow: visible !important; flex: 0 0 auto !important; }
html body .anaya-measure .anaya-measure__head { position: static !important; }
html body .anaya-measure .anaya-measure__foot { position: sticky; bottom: 0; z-index: 2; }

/* Product photo counter (user, 25 Oct) */
html body .anaya-pdp-gallery .anaya-pdp-gallery__counter { position: absolute; left: 12px; bottom: 12px; z-index: 2; margin: 0; padding: 4px 8px; border-radius: var(--wba-radius, 8px); background: rgb(255 255 255 / .88); color: var(--wba-ink, #322d29); font-size: 12px; line-height: 16px; font-weight: 500; font-variant-numeric: tabular-nums; pointer-events: none; }
html body .anaya-pdp-gallery .anaya-pdp-gallery__counter[hidden] { display: none; }
/* Contact page: the footer's 1440px frame (user, 26 Oct; was 1050px + padding) */
html body .anaya-contact .anaya-contact__inner { max-width: 1440px; margin-inline: auto; } /* footer frame (1440px incl. 40px sides) */
/* Header country dropdown: narrower (user, 25 Oct) */
html body .anaya-region--header .anaya-loc__panel:not(.anaya-loc__panel--mobile-modal) { width: 264px !important; }

/* Footer bottom row: company name and number wrap only between their parts (user, 25 Oct) */
html body .anaya-footer__copyright .anaya-footer__nowrap { white-space: nowrap; }
/* Home: stitching steps and the "Pakistani designer wear" text sit in the footer's 1440px frame, like the promise bar
   and the footer (user, 25 Oct: "max width" = the footer's width) */
html body .wba-steps.anaya-container,
html body .wba-seo.anaya-container { max-width: var(--anaya-footer-max-width, 90rem); }

/* Menu button: two bars; "Menu" next to them on desktop (user, 25 Oct) */
html body .anaya-header__menu-label { display: none; }
@media screen and (min-width: 990px) {
  html body .anaya-header .anaya-header__icon-btn.anaya-header__menu-btn { width: auto !important; gap: 8px; padding-inline: 10px 4px; }
  html body .anaya-header__menu-btn .anaya-header__menu-label { display: inline; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; line-height: 1; }
}

/* Product photos: logo mark while loading, fade-in when ready, cards rise in on scroll (user, 25 Oct) */
html body .product-media-container,
html body .product-carousel__media { background-color: var(--wba-ivory, #f3efea); isolation: isolate; }
/* Loading mark: the store's logo in the middle of the photo box (user, 25 Oct; Airah swaps in the lotus in airah-skin.css) */
html.wba-reveal :is(.product-media-container, .product-carousel__media)::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  width: 36%;
  max-width: 128px;
  aspect-ratio: 398 / 168;
  transform: translate(-50%, -50%);
  background: var(--wba-ink);
  opacity: 0.24;
  -webkit-mask: url(anaya-logo.svg) center / contain no-repeat;
  mask: url(anaya-logo.svg) center / contain no-repeat;
  animation: wba-mark-pulse 1.8s ease-in-out infinite;
  pointer-events: none;
}
html.wba-reveal :is(.product-media-container, .product-carousel__media).is-loaded::before { content: none; }
html.wba-reveal img.wba-fade { opacity: 0; transition: opacity 0.45s ease; }
html.wba-reveal img.wba-fade.is-loaded { opacity: 1; }
html.wba-reveal .wba-rise { opacity: 0; transform: translateY(12px); transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1); }
html.wba-reveal .wba-rise.is-in { opacity: 1; transform: none; }
@keyframes wba-mark-pulse { 50% { opacity: 0.1; } }
@media (prefers-reduced-motion: reduce) {
  html.wba-reveal :is(.product-media-container, .product-carousel__media)::before { animation: none; }
  html.wba-reveal .wba-rise { transform: none; }
}

/* Shop by category: photos stay round on phones (user, 25 Oct). The frame had no fixed height there, so a tall
   photo stretched it into an oval; the photo is now square and the frame clips it. */
html body.template-index .featured-collections__media.featured-collections__media { overflow: hidden !important; }
html body.template-index .featured-collections__image.featured-collections__image { aspect-ratio: 1 / 1; height: auto !important; object-position: 50% 15% !important; }

/* Home hero buttons: theme radius and padding like the other buttons (user, 25 Oct) */
html body .anaya-edhero__cta.anaya-edhero__cta { border-radius: var(--wba-radius, 8px) !important; padding: 12px 20px !important; }

/* Phones and touch screens: every text field, dropdown and text box at 16px or more, so iPhones don't zoom in when a field is tapped (user 26 Oct) */
@media screen and (max-width: 989px), (pointer: coarse) {
  html body input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="range"]):not([type="submit"]):not([type="button"]),
  html body select,
  html body textarea { font-size: max(16px, 1em) !important; }
}
/* iPhone zoom rule ends */


/* Homepage: one gap between sections (user 26 Oct, same as Airah): every section 32px top + bottom (24px on phones),
   so neighbours sit 64px apart (48px on phones). The trust strip stays on the hero; the circles after it get the full
   64px (48px) above, measured from the strip's edge line. The SEO block's top divider line also sits 64px (48px) below the section above. */
html body.template-index main .product-carousel.product-carousel,
html body.template-index main .featured-collections.featured-collections,
html body.template-index main .wba-steps.wba-steps,
html body.template-index main .wba-seo.wba-seo { padding-top: 24px !important; padding-bottom: 24px !important; }
html body.template-index main .shopify-section:has(.wba-trust) + .shopify-section .featured-collections.featured-collections { padding-top: 48px !important; }
html body.template-index main .wba-seo.wba-seo { margin-top: 16px; }
@media screen and (min-width: 750px) {
  html body.template-index main .product-carousel.product-carousel,
  html body.template-index main .featured-collections.featured-collections,
  html body.template-index main .wba-steps.wba-steps,
  html body.template-index main .wba-seo.wba-seo { padding-top: 32px !important; padding-bottom: 32px !important; }
  html body.template-index main .shopify-section:has(.wba-trust) + .shopify-section .featured-collections.featured-collections { padding-top: 64px !important; }
  html body.template-index main .wba-seo.wba-seo { margin-top: 24px; }
}


/* Accordions open smoothly everywhere (user 26 Oct: jitter on FAQ and footer accordions). Horizon's CSS-only height
   animation needs interpolate-size and focus and jumps on iPhone; here the content simply shows when open, and the
   height animation is done once, measured, in anaya-layout.js ("Smooth accordions"). */
accordion-custom details::details-content,
accordion-custom details .details-content { transition: none !important; }
accordion-custom details[open]::details-content,
accordion-custom details[open] .details-content { block-size: auto !important; opacity: 1 !important; }
accordion-custom details.is-animating { overflow: hidden; }


/* Phone menu: the Log In line only on phones; desktop has Sign in in the header (user 28 Oct) */
@media screen and (min-width: 990px) { #anaya-menu-drawer .anaya-menu__link--phone { display: none !important; } }

/* Phone menu: sub-links line up with their heading, no extra indent (user 29 Oct) */
#anaya-menu-drawer .anaya-menu__sub { padding-left: 0; }
html body #anaya-menu-drawer .anaya-menu__panel .anaya-menu__sub a { padding-left: 0 !important; }

/* Text fields: no focus ring, the field's own border darkens instead (user 29 Oct: no extra border on focus). Buttons, links and tick boxes keep their ring. */
html body :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]), textarea, select):is(:focus, :focus-visible) { outline: none !important; box-shadow: none !important; border-color: var(--wba-ink, #322d29) !important; }


/* Footer addresses (user, 30 Oct): pin lines up with the label */
html body .anaya-footer__contact-row--address { align-items: flex-start; }
html body .anaya-footer__contact-row--address .anaya-footer__contact-icon { margin-top: 6px; }


/* Star rating (snippets/anaya-rating.liquid, Judge.me review fields): only shown once a product has reviews */
.anaya-rating {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  color: var(--wba-muted);
  font: 400 12px/16px var(--wba-font);
  text-decoration: none;
}
.anaya-rating__stars {
  flex: none;
  width: 70px;
  height: 14px;
  background: linear-gradient(90deg, var(--wba-wine) var(--anaya-rating), var(--wba-line) 0);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.9 6.6 7.1.6-5.4 4.7 1.6 7L12 17.3l-6.2 3.6 1.6-7L2 9.2l7.1-.6z'/%3E%3C/svg%3E") 0 0 / 14px 14px repeat-x;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.9 6.6 7.1.6-5.4 4.7 1.6 7L12 17.3l-6.2 3.6 1.6-7L2 9.2l7.1-.6z'/%3E%3C/svg%3E") 0 0 / 14px 14px repeat-x;
}
.anaya-pdp-heading .anaya-rating { margin-top: 8px; font-size: 13px; }
@media (hover: hover) {
  a.anaya-rating:hover .anaya-rating__text { color: var(--wba-ink); text-decoration: underline; }
}

/* Link rows: product page "Explore" + collection "Related" (1 Nov 2026): plain text links, no boxes */
.anaya-links { display: flex; flex-wrap: wrap; align-items: center; gap: 0 16px; font-size: 14px; line-height: 1.4; color: var(--wba-ink, #322d29); }
.anaya-links__title { color: var(--wba-muted, #6b635b); }
.anaya-links__item { display: inline-flex; align-items: center; min-height: 44px; color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.anaya-links--collection { max-width: 1440px; margin: 48px auto 0; padding: 0 40px; }
@media (max-width: 989px) {
  .anaya-links--collection { margin-top: 32px; padding: 0 20px; }
}
/* end link rows */
