body {
  background-color: #fffcef !important;
  background-image: linear-gradient(235deg, #f3cb1b 0%, #eb1e8f 100%) !important;
  color: #491566;
}

.wp-site-blocks,
.wp-site-blocks > main,
footer.wp-block-template-part {
  background-color: transparent !important;
  background-image: none !important;
  color: #491566;
}

header.wp-block-template-part,
.jnb-site-header {
  background: transparent !important;
  color: #491566;
}

header.wp-block-template-part {
  border-bottom: 1px solid rgba(73, 21, 102, 0.25);
  box-shadow: 0 3px 14px rgba(73, 21, 102, 0.14);
  position: relative;
  z-index: 20;
}

.jnb-site-header {
  box-sizing: border-box;
  gap: clamp(12px, 2vw, 24px);
}

.jnb-site-header .wp-block-navigation__container {
  column-gap: 1rem;
  row-gap: 0.5rem;
}

.jnb-site-header .wp-block-navigation-item__content,
.jnb-site-header .wp-block-navigation__responsive-container-open,
.jnb-site-header .wp-block-navigation__responsive-container-close,
.jnb-site-header .jnb-header-actions a,
.jnb-site-header .jnb-header-actions button {
  color: #491566 !important;
}

.jnb-site-header .wp-block-navigation__responsive-container-open svg,
.jnb-site-header .wp-block-navigation__responsive-container-close svg,
.jnb-site-header .jnb-header-actions svg {
  fill: currentColor;
}

.jnb-header-actions {
  gap: 10px;
}

.jnb-header-actions .wp-block-search {
  width: 42px !important;
}

.jnb-header-actions .wp-block-search__inside-wrapper {
  width: 42px !important;
  min-width: 42px !important;
  padding: 0;
  border: 0;
}

.jnb-header-actions .wp-block-search__input {
  display: none;
}

.jnb-header-actions .wp-block-search__button,
.jnb-header-actions .wc-block-customer-account a,
.jnb-header-actions .wc-block-mini-cart__button {
  display: flex;
  width: 42px;
  height: 42px;
  min-width: 42px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(73, 21, 102, 0.38);
  border-radius: 9px;
  background: rgba(255, 252, 239, 0.78);
}

.jnb-header-actions .wp-block-social-links {
  margin-top: 0;
  margin-bottom: 0;
}

.wp-element-button,
.wp-block-button__link,
button[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.wc-block-components-button {
  background-color: #491566;
  color: #fffcef;
  border-color: #491566;
}

.wp-block-button.is-style-outline > .wp-block-button__link {
  background-color: transparent;
  color: #491566;
  border-color: #491566;
}

@media (max-width: 900px) {
  .jnb-site-header {
    gap: 10px;
  }

  .jnb-site-header .wp-block-navigation__container {
    column-gap: 0.75rem;
  }

  .jnb-header-actions > .wp-block-social-links {
    display: none;
  }
}

body header.wp-block-template-part,
body header.wp-block-template-part > .jnb-site-header {
  background: transparent !important;
  color: #491566 !important;
}

body header.wp-block-template-part .wp-block-navigation-item__content,
body header.wp-block-template-part .wp-block-navigation__responsive-container-open,
body header.wp-block-template-part .wp-block-navigation__responsive-container-close,
body header.wp-block-template-part .jnb-header-actions a,
body header.wp-block-template-part .jnb-header-actions button {
  color: #491566 !important;
}

body header.wp-block-template-part .jnb-header-actions .wp-block-search__button,
body header.wp-block-template-part .jnb-header-actions .wc-block-customer-account a,
body header.wp-block-template-part .jnb-header-actions .wc-block-mini-cart__button {
  background: rgba(255, 252, 239, 0.78) !important;
  border-color: rgba(73, 21, 102, 0.38) !important;
}

/* Uniform site typography */
body,
button,
input,
select,
textarea,
.wp-site-blocks,
.wp-site-blocks h1,
.wp-site-blocks h2,
.wp-site-blocks h3,
.wp-site-blocks h4,
.wp-site-blocks h5,
.wp-site-blocks h6,
.wp-site-blocks p,
.wp-site-blocks li,
.wp-site-blocks a,
.wp-site-blocks label,
.wp-site-blocks blockquote,
.wp-site-blocks figcaption,
.woocommerce,
.woocommerce-page,
.woocommerce input,
.woocommerce select,
.woocommerce textarea,
.woocommerce button,
.wc-block-components-button,
.wc-block-components-form,
.wc-block-components-text-input {
  font-family: "Bricolage Grotesque", sans-serif !important;
}


/* Match the homepage hero headline size to production */
.home.page-id-200 .wp-block-post-content > h1.wp-block-heading.has-text-align-center {
  font-size: 26px !important;
}


/* Clear, page-based product navigation */
.woocommerce nav.woocommerce-pagination {
  margin: 48px 0 20px !important;
  text-align: center;
}
.woocommerce nav.woocommerce-pagination::before {
  content: "Browse product pages";
  display: block;
  margin-bottom: 14px;
  color: #491566;
  font-weight: 600;
}
.woocommerce nav.woocommerce-pagination ul {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  border: 0 !important;
}
.woocommerce nav.woocommerce-pagination ul li {
  border: 0 !important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 8px 12px !important;
  border: 2px solid #491566;
  border-radius: 10px;
  background: #fffcef !important;
  color: #491566 !important;
  font-weight: 600;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus {
  background: #491566 !important;
  color: #fffcef !important;
}

/* Comfortable tablet catalog grid */
@media (max-width: 900px) {
  body.woocommerce-shop ul.products,
  body.post-type-archive-product ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px 20px !important;
  }
  body.woocommerce-shop ul.products::before,
  body.woocommerce-shop ul.products::after,
  body.post-type-archive-product ul.products::before,
  body.post-type-archive-product ul.products::after {
    display: none !important;
  }
  body.woocommerce-shop ul.products li.product,
  body.post-type-archive-product ul.products li.product {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    min-width: 0;
  }
}

/* Phone navigation and readable catalog */
@media (max-width: 600px) {
  body.woocommerce-shop ul.products,
  body.post-type-archive-product ul.products {
    grid-template-columns: 1fr !important;
    max-width: 360px;
    margin-right: auto !important;
    margin-left: auto !important;
  }
  body.woocommerce-shop main.wp-block-group > .wp-block-group.is-nowrap {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px 12px !important;
  }
  body.woocommerce-shop main.wp-block-group > .wp-block-group.is-nowrap > h6 {
    flex-basis: 100%;
    text-align: center;
    margin-bottom: 2px;
  }
  body.woocommerce-shop main.wp-block-group > .wp-block-group.is-nowrap > p {
    margin: 0;
  }
  .wp-block-navigation__responsive-container.is-menu-open {
    background: linear-gradient(235deg, #f3cb1b 0%, #eb1e8f 100%) !important;
    color: #491566 !important;
    padding: 32px 24px !important;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    align-items: stretch !important;
    gap: 12px !important;
    width: 100%;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    display: block;
    min-height: 44px;
    padding: 11px 18px !important;
    border: 2px solid #491566;
    border-radius: 10px;
    background: #fffcef;
    color: #491566 !important;
    text-align: center;
    font-weight: 600;
  }
}

@media (max-width: 600px) {
  body.woocommerce-shop main.wp-block-group > .wp-block-group.is-nowrap > p {
    font-size: 0 !important;
    line-height: 0;
  }
  body.woocommerce-shop main.wp-block-group > .wp-block-group.is-nowrap > p a {
    display: inline-block;
    margin: 3px;
    padding: 9px 11px;
    border: 2px solid #491566;
    border-radius: 10px;
    background: #fffcef;
    color: #491566 !important;
    font-size: 14px;
    line-height: 1.2;
    text-decoration: none;
  }
}

@media (max-width: 600px) {
  body.woocommerce-shop main.wp-block-group > .wp-block-group.is-nowrap a[data-id="20"]::before {
    content: "R";
  }
}


/* WooCommerce block catalog grid */
@media (max-width: 900px) {
  body.woocommerce-shop ul.wc-block-product-template,
  body.post-type-archive-product ul.wc-block-product-template {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px 20px !important;
  }
  body.woocommerce-shop ul.wc-block-product-template > li.wc-block-product,
  body.post-type-archive-product ul.wc-block-product-template > li.wc-block-product {
    width: 100% !important;
    min-width: 0;
    margin: 0 !important;
  }
}
@media (max-width: 600px) {
  body.woocommerce-shop ul.wc-block-product-template,
  body.post-type-archive-product ul.wc-block-product-template {
    grid-template-columns: 1fr !important;
    max-width: 360px;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}

/* WooCommerce block page navigation */
nav.wp-block-query-pagination {
  margin: 48px 0 20px !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 10px !important;
}
nav.wp-block-query-pagination::before {
  content: "Browse product pages";
  flex-basis: 100%;
  margin-bottom: 4px;
  color: #491566;
  font-weight: 600;
  text-align: center;
}
nav.wp-block-query-pagination .wp-block-query-pagination-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}
nav.wp-block-query-pagination a.page-numbers,
nav.wp-block-query-pagination span.page-numbers,
nav.wp-block-query-pagination .wp-block-query-pagination-previous,
nav.wp-block-query-pagination .wp-block-query-pagination-next {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 8px 12px !important;
  border: 2px solid #491566;
  border-radius: 10px;
  background: #fffcef !important;
  color: #491566 !important;
  font-weight: 600;
  text-decoration: none;
}
nav.wp-block-query-pagination span.page-numbers.current,
nav.wp-block-query-pagination a.page-numbers:hover,
nav.wp-block-query-pagination a.page-numbers:focus {
  background: #491566 !important;
  color: #fffcef !important;
}


/* Keep product actions readable on every screen */
body.woocommerce-shop .wc-block-components-product-button__button,
body.post-type-archive-product .wc-block-components-product-button__button {
  background: #491566 !important;
  color: #fffcef !important;
  border: 2px solid #491566 !important;
}
body.woocommerce-shop .wc-block-components-product-button__button *,
body.post-type-archive-product .wc-block-components-product-button__button * {
  color: #fffcef !important;
}
body.woocommerce-shop .wc-block-components-product-button__button:hover,
body.woocommerce-shop .wc-block-components-product-button__button:focus,
body.post-type-archive-product .wc-block-components-product-button__button:hover,
body.post-type-archive-product .wc-block-components-product-button__button:focus {
  background: #fffcef !important;
  color: #491566 !important;
}
body.woocommerce-shop .wc-block-components-product-button__button:hover *,
body.woocommerce-shop .wc-block-components-product-button__button:focus *,
body.post-type-archive-product .wc-block-components-product-button__button:hover *,
body.post-type-archive-product .wc-block-components-product-button__button:focus * {
  color: #491566 !important;
}
