/*
 * Granny's Rituals brand layer
 * 70% modern ecommerce / 30% heritage beauty
 */

:root {
  --gr-cream: #F6EFE1;
  --gr-white: #FFFFFF;
  --gr-olive: #3D4530;
  --gr-espresso: #2A211A;
  --gr-gold: #B88A3E;
  --gr-caramel: #A46A34;
  --gr-sand: #D8C6A6;
  --gr-heading-font: "Cormorant Garamond", Georgia, serif;
  --gr-body-font: "Inter", Arial, sans-serif;
  --gr-card-radius: 18px;
  --gr-button-radius: 12px;
  --gr-shadow-sm: 0 10px 28px rgba(42, 33, 26, .08);
  --gr-shadow-md: 0 18px 46px rgba(42, 33, 26, .12);
}

html body.grannys-rituals-site {
  background: var(--gr-cream);
  color: var(--gr-espresso);
  font-family: var(--gr-body-font);
  -webkit-font-smoothing: antialiased;
}

body.grannys-rituals-site p,
body.grannys-rituals-site li,
body.grannys-rituals-site input,
body.grannys-rituals-site select,
body.grannys-rituals-site textarea,
body.grannys-rituals-site button,
body.grannys-rituals-site .price,
body.grannys-rituals-site .woocommerce-Price-amount {
  font-family: var(--gr-body-font);
}

body.grannys-rituals-site h1,
body.grannys-rituals-site h2,
body.grannys-rituals-site h3,
body.grannys-rituals-site h4,
body.grannys-rituals-site h5,
body.grannys-rituals-site h6,
body.grannys-rituals-site .title,
body.grannys-rituals-site .widget-title {
  color: var(--gr-espresso);
  font-family: var(--gr-heading-font);
  letter-spacing: -.01em;
}

body.grannys-rituals-site a {
  color: var(--gr-olive);
}

body.grannys-rituals-site a:hover,
body.grannys-rituals-site a:focus {
  color: var(--gr-caramel);
}

body.grannys-rituals-site :focus-visible {
  outline: 3px solid rgba(184, 138, 62, .42);
  outline-offset: 3px;
}

/* Announcement and brand masthead */
body.grannys-rituals-site .thebluenila-delivery-banner {
  background: var(--gr-olive) !important;
  border-bottom: 1px solid rgba(246, 239, 225, .22) !important;
  color: var(--gr-cream) !important;
  font-family: var(--gr-body-font);
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  min-height: 42px !important;
  padding: 10px 18px !important;
}

body.grannys-rituals-site .thebluenila-delivery-banner__text {
  color: var(--gr-cream) !important;
}

.gr-brand-header {
  background: rgba(255, 255, 255, .97);
  border-bottom: 1px solid var(--gr-sand);
  position: relative;
  z-index: 60;
}

.gr-brand-header__inner {
  align-items: center;
  display: flex;
  gap: 28px;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1240px;
  min-height: 82px;
  padding: 8px 24px;
}

.gr-brand-header__identity {
  align-items: center;
  color: var(--gr-espresso) !important;
  display: inline-flex;
  flex: 0 1 auto;
  gap: 14px;
  min-width: 0;
  text-decoration: none !important;
}

.gr-brand-header__logo {
  background: var(--gr-white);
  border: 1px solid var(--gr-sand);
  border-radius: 50%;
  display: block;
  flex: 0 0 60px;
  height: 60px;
  object-fit: contain;
  padding: 3px;
  width: 60px;
}

.gr-brand-header__copy {
  display: grid;
  line-height: 1;
}

.gr-brand-header__name {
  color: var(--gr-espresso);
  font-family: var(--gr-heading-font);
  font-size: clamp(24px, 2.4vw, 32px);
  font-weight: 700;
  letter-spacing: .025em;
  white-space: nowrap;
}

.gr-brand-header__tagline {
  color: var(--gr-caramel);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
  margin-top: 6px;
}

.gr-brand-header__nav {
  align-items: center;
  display: flex;
  gap: clamp(14px, 2.2vw, 30px);
}

.gr-brand-header__nav a {
  color: var(--gr-olive) !important;
  font-family: var(--gr-body-font);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .045em;
  position: relative;
  text-decoration: none !important;
  text-transform: uppercase;
}

.gr-brand-header__nav a:not(.gr-brand-header__shop)::after {
  background: var(--gr-gold);
  bottom: -7px;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .2s ease;
  width: 100%;
}

.gr-brand-header__nav a:hover::after,
.gr-brand-header__nav a:focus::after {
  transform: scaleX(1);
}

/* Product search */
body.grannys-rituals-site .thebluenila-header-search {
  background: var(--gr-cream) !important;
  border-bottom: 1px solid var(--gr-sand) !important;
  padding: 14px 18px !important;
}

body.grannys-rituals-site .thebluenila-header-search__form {
  max-width: 820px;
}

body.grannys-rituals-site .thebluenila-header-search__input {
  background: var(--gr-white) !important;
  border: 1px solid var(--gr-sand) !important;
  border-radius: var(--gr-button-radius) !important;
  color: var(--gr-espresso) !important;
  font-family: var(--gr-body-font);
}

body.grannys-rituals-site .thebluenila-header-search__input:focus {
  border-color: var(--gr-olive) !important;
  box-shadow: 0 0 0 3px rgba(61, 69, 48, .12) !important;
}

body.grannys-rituals-site .thebluenila-header-search__input::placeholder {
  color: rgba(42, 33, 26, .52) !important;
}

body.grannys-rituals-site .thebluenila-header-search__button {
  background: var(--gr-olive) !important;
  border: 1px solid var(--gr-olive) !important;
  border-radius: var(--gr-button-radius) !important;
  color: var(--gr-white) !important;
}

body.grannys-rituals-site .thebluenila-header-search__button:hover,
body.grannys-rituals-site .thebluenila-header-search__button:focus {
  background: var(--gr-espresso) !important;
  border-color: var(--gr-espresso) !important;
}

body.grannys-rituals-site .thebluenila-header-search__suggestions {
  border: 1px solid var(--gr-sand) !important;
  border-radius: 14px !important;
  box-shadow: var(--gr-shadow-md) !important;
}

body.grannys-rituals-site .thebluenila-search-suggestion {
  border-bottom-color: rgba(216, 198, 166, .65) !important;
  color: var(--gr-espresso) !important;
}

body.grannys-rituals-site .thebluenila-search-suggestion:hover,
body.grannys-rituals-site .thebluenila-search-suggestion:focus {
  background: var(--gr-cream) !important;
  color: var(--gr-olive) !important;
}

body.grannys-rituals-site .thebluenila-search-suggestion__title,
body.grannys-rituals-site .thebluenila-search-suggestion__price ins {
  color: var(--gr-olive) !important;
}

/* Static homepage hero replaces the legacy Revolution Slider. */
body.home sr7-module[data-alias="slider-1"],
body.front-page sr7-module[data-alias="slider-1"],
body.home #SR7_1_1,
body.front-page #SR7_1_1 {
  display: none !important;
}

.gr-home-hero {
  background: var(--gr-cream);
  border-bottom: 1px solid var(--gr-sand);
  min-height: clamp(580px, 58vw, 760px);
  overflow: hidden;
  position: relative;
}

.gr-home-hero__image {
  height: 100%;
  inset: 0;
  object-fit: cover;
  object-position: 58% center;
  position: absolute;
  width: 100%;
}

.gr-home-hero__shade {
  background: linear-gradient(90deg, rgba(246, 239, 225, .98) 0%, rgba(246, 239, 225, .93) 30%, rgba(246, 239, 225, .54) 48%, rgba(246, 239, 225, .02) 70%);
  inset: 0;
  position: absolute;
}

.gr-home-hero__inner {
  align-items: center;
  display: flex;
  margin: 0 auto;
  max-width: 1240px;
  min-height: inherit;
  padding: 64px 24px;
  position: relative;
  z-index: 2;
}

.gr-home-hero__content {
  max-width: 760px;
}

.gr-home-hero__eyebrow {
  align-items: center;
  color: var(--gr-caramel);
  display: flex;
  font-size: 12px;
  font-weight: 800;
  gap: 10px;
  letter-spacing: .14em;
  margin-bottom: 20px;
}

.gr-home-hero__eyebrow::before {
  background: var(--gr-gold);
  content: "";
  height: 2px;
  width: 42px;
}

.gr-home-hero h1 {
  color: var(--gr-espresso) !important;
  font-family: var(--gr-heading-font) !important;
  font-size: clamp(18px, 5.2vw, 42px);
  font-weight: 600;
  letter-spacing: -.045em;
  line-height: 1.05;
  margin: 0 0 24px;
  max-width: none;
  text-wrap: nowrap;
  white-space: nowrap;
}

.gr-home-hero__content > p {
  color: #5f564d;
  font-size: clamp(16px, 1.5vw, 19px);
  line-height: 1.75;
  margin: 0 0 30px;
  max-width: 540px;
}

.gr-home-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.gr-home-hero__primary,
.gr-home-hero__secondary {
  align-items: center;
  border-radius: var(--gr-button-radius);
  display: inline-flex;
  font-family: var(--gr-body-font);
  font-size: 13px;
  font-weight: 800;
  justify-content: center;
  letter-spacing: .06em;
  min-height: 52px;
  padding: 0 24px;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}

.gr-home-hero__primary {
  background: var(--gr-olive);
  border: 1px solid var(--gr-olive);
  color: var(--gr-white) !important;
}

.gr-home-hero__primary:hover,
.gr-home-hero__primary:focus {
  background: var(--gr-espresso);
  border-color: var(--gr-espresso);
  color: var(--gr-white) !important;
  transform: translateY(-2px);
}

.gr-home-hero__secondary {
  background: rgba(246, 239, 225, .7);
  border: 1px solid var(--gr-gold);
  color: var(--gr-olive) !important;
}

.gr-home-hero__secondary:hover,
.gr-home-hero__secondary:focus {
  background: var(--gr-gold);
  color: var(--gr-espresso) !important;
  transform: translateY(-2px);
}

.gr-home-hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  list-style: none;
  margin: 30px 0 0;
  padding: 0;
}

.gr-home-hero__trust li {
  color: var(--gr-olive);
  font-size: 12px;
  font-weight: 700;
  padding-left: 18px;
  position: relative;
}

.gr-home-hero__trust li::before {
  color: var(--gr-gold);
  content: "✦";
  left: 0;
  position: absolute;
}

/* Conversion components */
body.grannys-rituals-site .button,
body.grannys-rituals-site button,
body.grannys-rituals-site input[type="submit"],
body.grannys-rituals-site .woocommerce a.button,
body.grannys-rituals-site .woocommerce button.button,
body.grannys-rituals-site .woocommerce input.button,
body.grannys-rituals-site .woocommerce #respond input#submit {
  border-radius: var(--gr-button-radius);
  font-family: var(--gr-body-font);
  font-weight: 700;
}

body.grannys-rituals-site .woocommerce a.button.alt,
body.grannys-rituals-site .woocommerce button.button.alt,
body.grannys-rituals-site .woocommerce input.button.alt,
body.grannys-rituals-site .product-block.grid.add-cart-below .metas .add-cart > .button,
body.grannys-rituals-site .product-block.grid.add-cart-below .metas .add-cart > .added_to_cart,
body.grannys-rituals-site .wpcu-theme_1 .wpcu-button,
body.grannys-rituals-site .wpcu-theme_3 .wpcu-button,
body.grannys-rituals-site .woocommerce div.product form.cart .button.single_add_to_cart_button,
body.grannys-rituals-site .add-to-cart-bottom-wrapper .cart button.single_add_to_cart_button {
  background: var(--gr-olive) !important;
  border-color: var(--gr-olive) !important;
  color: var(--gr-white) !important;
}

body.grannys-rituals-site .woocommerce a.button.alt:hover,
body.grannys-rituals-site .woocommerce button.button.alt:hover,
body.grannys-rituals-site .woocommerce input.button.alt:hover,
body.grannys-rituals-site .product-block.grid.add-cart-below .metas .add-cart > .button:hover,
body.grannys-rituals-site .product-block.grid.add-cart-below .metas .add-cart > .added_to_cart:hover,
body.grannys-rituals-site .wpcu-theme_1 .wpcu-button:hover,
body.grannys-rituals-site .wpcu-theme_3 .wpcu-button:hover,
body.grannys-rituals-site .woocommerce div.product form.cart .button.single_add_to_cart_button:hover,
body.grannys-rituals-site .add-to-cart-bottom-wrapper .cart button.single_add_to_cart_button:hover {
  background: var(--gr-espresso) !important;
  border-color: var(--gr-espresso) !important;
  color: var(--gr-white) !important;
}

body.grannys-rituals-site .thebluenila-howto-button {
  background: transparent !important;
  border: 1px solid var(--gr-gold) !important;
  color: var(--gr-olive) !important;
}

body.grannys-rituals-site .thebluenila-howto-button:hover,
body.grannys-rituals-site .thebluenila-howto-button:focus {
  background: var(--gr-gold) !important;
  border-color: var(--gr-gold) !important;
  color: var(--gr-espresso) !important;
}

/* Homepage and product grids */
body.grannys-rituals-site.home #main-container,
body.grannys-rituals-site.front-page #main-container,
body.grannys-rituals-site .bluenila-products-wrap,
body.grannys-rituals-site .widget-products {
  background-color: var(--gr-cream);
}

body.grannys-rituals-site .product-block.grid,
body.grannys-rituals-site .wpcu-product__content,
body.grannys-rituals-site ul.products li.product .product-block {
  background: var(--gr-white);
  border: 1px solid var(--gr-sand);
  border-radius: var(--gr-card-radius);
  box-shadow: 0 8px 24px rgba(42, 33, 26, .05);
  overflow: hidden;
  padding: 12px;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.grannys-rituals-site .product-block.grid:hover,
body.grannys-rituals-site .wpcu-product__content:hover,
body.grannys-rituals-site ul.products li.product .product-block:hover {
  border-color: var(--gr-gold);
  box-shadow: var(--gr-shadow-sm);
  transform: translateY(-3px);
}

body.grannys-rituals-site .product-block.grid .block-image,
body.grannys-rituals-site .product-block.grid figure.image,
body.grannys-rituals-site .wpcu-product__img {
  background: #fbf8f2 !important;
  border-radius: 12px;
  overflow: hidden;
}

body.grannys-rituals-site .product-block.grid .name,
body.grannys-rituals-site .product-block.grid .name a,
body.grannys-rituals-site ul.products li.product .woocommerce-loop-product__title {
  color: var(--gr-espresso) !important;
  font-family: var(--gr-body-font);
  font-weight: 700;
}

body.grannys-rituals-site .product-block.grid .price,
body.grannys-rituals-site .product-block.grid .price ins,
body.grannys-rituals-site .product-block.grid .price .woocommerce-Price-amount,
body.grannys-rituals-site ul.products li.product .price {
  color: var(--gr-olive) !important;
  font-weight: 800;
}

/* The original homepage campaign banner and blue marquee are legacy Elementor content. */
body.grannys-rituals-site.home .elementor-element.elementor-element-f37c42b,
body.grannys-rituals-site.front-page .elementor-element.elementor-element-f37c42b {
  display: none !important;
}

/* Keep the existing social destinations while removing their Blue Nila styling. */
body.grannys-rituals-site .social-line a {
  background: rgba(255, 255, 255, .86) !important;
  border-color: var(--gr-sand) !important;
  color: var(--gr-olive) !important;
  box-shadow: 0 7px 18px rgba(42, 33, 26, .07);
}

body.grannys-rituals-site .social-line a:hover,
body.grannys-rituals-site .social-line a:focus {
  background: var(--gr-olive) !important;
  border-color: var(--gr-olive) !important;
  color: var(--gr-cream) !important;
}

/* The category plugin prints its old palette inline and loads its CSS in the footer. */
body.grannys-rituals-site.home .bluenila-category-filter,
body.grannys-rituals-site.front-page .bluenila-category-filter {
  --bluenila-ink: var(--gr-espresso) !important;
  --bluenila-muted: #73695e !important;
  --bluenila-blue: var(--gr-olive) !important;
  --bluenila-blue-dark: var(--gr-espresso) !important;
  --bluenila-blue-soft: #fbf8f2 !important;
  --bluenila-border: var(--gr-sand) !important;
  --bluenila-surface: var(--gr-white) !important;
  --bluenila-button-bg: var(--gr-white) !important;
  --bluenila-button-active-bg: var(--gr-olive) !important;
  --bluenila-active-text: var(--gr-cream) !important;
  --bluenila-shadow: 0 12px 30px rgba(42, 33, 26, .09) !important;
}

body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-buttons,
body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-buttons {
  gap: 10px !important;
  margin-bottom: 24px !important;
  padding: 6px 0 10px !important;
}

body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-button,
body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-button:nth-child(n),
body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-button,
body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-button:nth-child(n) {
  background: var(--gr-white) !important;
  border: 1px solid var(--gr-sand) !important;
  border-radius: 999px !important;
  box-shadow: 0 5px 14px rgba(42, 33, 26, .05) !important;
  color: var(--gr-olive) !important;
  font-family: var(--gr-body-font) !important;
  font-size: 13px !important;
  height: 48px !important;
  letter-spacing: .035em !important;
  min-width: max-content !important;
  padding: 0 21px !important;
  text-transform: uppercase !important;
  transform: none !important;
}

body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-button:hover,
body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-button:focus-visible,
body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-button:hover,
body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-button:focus-visible {
  background: #f3ead9 !important;
  border-color: var(--gr-gold) !important;
  color: var(--gr-espresso) !important;
  transform: translateY(-1px) !important;
}

body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-button.is-active,
body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-button.is-active {
  background: var(--gr-olive) !important;
  border-color: var(--gr-olive) !important;
  color: var(--gr-cream) !important;
}

body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-buttons::-webkit-scrollbar-track,
body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-buttons::-webkit-scrollbar-track {
  background: #eee3d0 !important;
}

body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-buttons::-webkit-scrollbar-thumb,
body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-buttons::-webkit-scrollbar-thumb {
  background: var(--gr-gold) !important;
}

body.grannys-rituals-site .onsale,
body.grannys-rituals-site .sale-perc,
body.grannys-rituals-site .label-sale,
body.grannys-rituals-site .thebluenila-sv-sale {
  background: var(--gr-caramel) !important;
  border-color: var(--gr-caramel) !important;
  color: var(--gr-white) !important;
}

body.grannys-rituals-site .nav-tabs > li.active > a,
body.grannys-rituals-site .nav-tabs > li > a:hover,
body.grannys-rituals-site .product-filter-tabs a.active,
body.grannys-rituals-site .isotope-filter li.active a {
  color: var(--gr-olive) !important;
}

/* Product details */
body.grannys-rituals-site .thebluenila-sv-product {
  --bn-ink: var(--gr-espresso);
  --bn-brand: var(--gr-olive);
  --bn-muted: #73695e;
  --bn-soft: #fbf8f2;
  --bn-line: var(--gr-sand);
}

body.grannys-rituals-site.single-product #main-container,
body.grannys-rituals-site.single-product #main-content,
body.grannys-rituals-site.single-product .main-content {
  background: var(--gr-cream);
}

body.grannys-rituals-site.single-product .thebluenila-sv-main-image,
body.grannys-rituals-site.single-product .goal-woocommerce-product-gallery-wrapper {
  background: var(--gr-white);
  border: 1px solid var(--gr-sand);
  box-shadow: var(--gr-shadow-sm);
}

body.grannys-rituals-site.single-product .thebluenila-sv-summary h1.product_title,
body.grannys-rituals-site.single-product .summary h1.product_title {
  color: var(--gr-espresso) !important;
  font-family: var(--gr-heading-font) !important;
  font-weight: 700 !important;
  letter-spacing: -.025em !important;
}

body.grannys-rituals-site.single-product .thebluenila-sv-current-price,
body.grannys-rituals-site.single-product .thebluenila-sv-current-price .price,
body.grannys-rituals-site.single-product .summary .price,
body.grannys-rituals-site.single-product .summary .price ins {
  color: var(--gr-olive) !important;
}

body.grannys-rituals-site.single-product .thebluenila-sv-benefits li::before {
  background: var(--gr-olive);
}

body.grannys-rituals-site.single-product .thebluenila-variation-offers__title {
  color: var(--gr-espresso) !important;
}

body.grannys-rituals-site.single-product .thebluenila-variation-offer {
  background: var(--gr-white) !important;
  border-color: var(--gr-sand) !important;
  border-radius: 14px !important;
}

body.grannys-rituals-site.single-product .thebluenila-variation-offer.is-selected,
body.grannys-rituals-site.single-product .thebluenila-variation-offer:hover {
  border-color: var(--gr-olive) !important;
  box-shadow: 0 0 0 2px rgba(61, 69, 48, .12) !important;
}

body.grannys-rituals-site.single-product .goal-wc-tabs,
body.grannys-rituals-site.single-product .woocommerce-tabs,
body.grannys-rituals-site.single-product .thebluenila-instagram-carousel {
  background: var(--gr-white);
  border: 1px solid var(--gr-sand);
  border-radius: var(--gr-card-radius);
}

/* Cart, checkout, account and policies */
body.grannys-rituals-site.woocommerce-cart #main-container,
body.grannys-rituals-site.woocommerce-checkout #main-container,
body.grannys-rituals-site.woocommerce-account #main-container,
body.grannys-rituals-site.search #main-container,
body.grannys-rituals-site.archive #main-container {
  background: var(--gr-cream);
}

body.grannys-rituals-site .woocommerce form .form-row input.input-text,
body.grannys-rituals-site .woocommerce form .form-row textarea,
body.grannys-rituals-site .woocommerce form .form-row select,
body.grannys-rituals-site .select2-container--default .select2-selection--single,
body.grannys-rituals-site input[type="text"],
body.grannys-rituals-site input[type="email"],
body.grannys-rituals-site input[type="tel"],
body.grannys-rituals-site input[type="password"],
body.grannys-rituals-site textarea,
body.grannys-rituals-site select {
  background: var(--gr-white);
  border-color: var(--gr-sand) !important;
  border-radius: 10px;
  color: var(--gr-espresso);
}

body.grannys-rituals-site .woocommerce form .form-row input.input-text:focus,
body.grannys-rituals-site .woocommerce form .form-row textarea:focus,
body.grannys-rituals-site input:focus,
body.grannys-rituals-site textarea:focus,
body.grannys-rituals-site select:focus {
  border-color: var(--gr-olive) !important;
  box-shadow: 0 0 0 3px rgba(61, 69, 48, .1);
  outline: 0;
}

body.grannys-rituals-site .woocommerce table.shop_table,
body.grannys-rituals-site .cart_totals,
body.grannys-rituals-site #order_review,
body.grannys-rituals-site .woocommerce-checkout-review-order,
body.grannys-rituals-site .woocommerce-form-login,
body.grannys-rituals-site .woocommerce-MyAccount-content {
  background: var(--gr-white);
  border-color: var(--gr-sand) !important;
  border-radius: var(--gr-card-radius);
}

body.grannys-rituals-site #payment,
body.grannys-rituals-site .woocommerce-checkout #payment {
  background: #fbf8f2;
  border: 1px solid var(--gr-sand);
  border-radius: 14px;
}

body.grannys-rituals-site .woocommerce-info,
body.grannys-rituals-site .woocommerce-message {
  background: var(--gr-white);
  border-top-color: var(--gr-gold);
  color: var(--gr-espresso);
}

body.grannys-rituals-site .woocommerce-info::before,
body.grannys-rituals-site .woocommerce-message::before {
  color: var(--gr-gold);
}

body.grannys-rituals-site.thebluenila-policy-page #main-container,
body.grannys-rituals-site.thebluenila-policy-page .main-content {
  background: var(--gr-cream) !important;
}

body.grannys-rituals-site.thebluenila-policy-page #goal-breadscrumb {
  display: none !important;
}

body.grannys-rituals-site.thebluenila-policy-page .entry-content,
body.grannys-rituals-site.thebluenila-policy-page .page-content {
  background: var(--gr-white) !important;
  border-color: var(--gr-sand) !important;
  box-shadow: var(--gr-shadow-sm) !important;
  color: var(--gr-espresso) !important;
  font-family: var(--gr-body-font) !important;
}

body.grannys-rituals-site.thebluenila-policy-page .entry-content h1,
body.grannys-rituals-site.thebluenila-policy-page .entry-content h2,
body.grannys-rituals-site.thebluenila-policy-page .entry-content h3,
body.grannys-rituals-site.thebluenila-policy-page .page-content h1,
body.grannys-rituals-site.thebluenila-policy-page .page-content h2,
body.grannys-rituals-site.thebluenila-policy-page .page-content h3 {
  color: var(--gr-espresso) !important;
  font-family: var(--gr-heading-font) !important;
}

/* Shared footer */
body.home .thebluenila-global-footer[data-bluenila-global-footer="true"]:not([data-grannys-rituals-footer="true"]),
body.front-page .thebluenila-global-footer[data-bluenila-global-footer="true"]:not([data-grannys-rituals-footer="true"]) {
  display: none !important;
}

/* The original homepage footer is stored as two standalone Elementor HTML widgets. */
body.home .elementor-widget-html > .elementor-widget-container > .bn-footer-top,
body.home .elementor-widget-html > .elementor-widget-container > .bn-footer-main,
body.front-page .elementor-widget-html > .elementor-widget-container > .bn-footer-top,
body.front-page .elementor-widget-html > .elementor-widget-container > .bn-footer-main {
  display: none !important;
}

body.grannys-rituals-site .gr-global-footer .bn-footer-top {
  background: var(--gr-cream);
  border-top: 1px solid var(--gr-sand);
}

body.grannys-rituals-site .gr-global-footer .bn-country-card,
body.grannys-rituals-site .gr-global-footer .bn-feature-card {
  background: var(--gr-white);
  border-color: var(--gr-sand);
  box-shadow: 0 8px 24px rgba(42, 33, 26, .05);
}

body.grannys-rituals-site .gr-global-footer .bn-feature-icon {
  background: linear-gradient(145deg, var(--gr-olive), var(--gr-gold)) !important;
  border-color: var(--gr-gold) !important;
  color: var(--gr-white) !important;
}

body.grannys-rituals-site .gr-global-footer .bn-feature-icon svg {
  color: var(--gr-white) !important;
  fill: none !important;
  opacity: 1 !important;
  stroke: var(--gr-white) !important;
  visibility: visible !important;
}

body.grannys-rituals-site .gr-global-footer .bn-feature-text h4 {
  color: var(--gr-espresso) !important;
  font-family: var(--gr-body-font);
}

body.grannys-rituals-site .gr-global-footer .bn-feature-text p {
  color: #73695e;
}

body.grannys-rituals-site .gr-global-footer .bn-footer-main {
  background: radial-gradient(circle at 85% 0, rgba(184, 138, 62, .17), transparent 30%), var(--gr-olive);
  color: var(--gr-cream);
}

body.grannys-rituals-site .gr-global-footer .bn-footer-main-inner {
  gap: 38px;
  grid-template-columns: 1.25fr 1fr .8fr 1.25fr;
}

.bn-footer-brand__identity {
  align-items: center;
  color: var(--gr-white) !important;
  display: flex;
  gap: 13px;
  text-decoration: none !important;
}

.bn-footer-brand__identity img {
  background: var(--gr-white);
  border: 1px solid rgba(246, 239, 225, .28);
  border-radius: 50%;
  height: 68px;
  object-fit: contain;
  width: 68px;
}

.bn-footer-brand__identity span {
  display: grid;
}

.bn-footer-brand__identity strong {
  color: var(--gr-white);
  font-family: var(--gr-heading-font);
  font-size: 23px;
  letter-spacing: .03em;
}

.bn-footer-brand__identity small {
  color: var(--gr-sand);
  font-size: 11px;
  letter-spacing: .06em;
  margin-top: 5px;
}

.bn-footer-brand > p {
  color: rgba(246, 239, 225, .8);
  font-size: 13px;
  line-height: 1.7;
  margin: 20px 0 0;
}

body.grannys-rituals-site .gr-global-footer .bn-footer-col h3 {
  color: var(--gr-white) !important;
  font-family: var(--gr-heading-font);
  font-size: 22px;
  font-weight: 600;
}

body.grannys-rituals-site .gr-global-footer .bn-footer-icon {
  background: rgba(246, 239, 225, .08);
  border-color: rgba(216, 198, 166, .25);
  color: var(--gr-gold);
}

body.grannys-rituals-site .gr-global-footer .bn-footer-contact,
body.grannys-rituals-site .gr-global-footer .bn-footer-contact span,
body.grannys-rituals-site .gr-global-footer .bn-footer-links a,
body.grannys-rituals-site .gr-global-footer .bn-footer-mission {
  color: rgba(246, 239, 225, .84) !important;
}

body.grannys-rituals-site .gr-global-footer .bn-footer-links a:hover,
body.grannys-rituals-site .gr-global-footer .bn-footer-contact:hover {
  color: var(--gr-white) !important;
}

body.grannys-rituals-site .gr-global-footer .bn-footer-links a::before {
  color: var(--gr-gold);
}

body.grannys-rituals-site .gr-global-footer .bn-footer-bottom {
  border-top-color: rgba(216, 198, 166, .2);
}

body.grannys-rituals-site .gr-global-footer .bn-footer-bottom p {
  color: rgba(246, 239, 225, .68) !important;
}

/* Cart drawer and mobile navigation */
body.grannys-rituals-site .xoo-wsc-container,
body.grannys-rituals-site .xoo-wsc-body,
body.grannys-rituals-site .xoo-wsc-footer {
  background: var(--gr-white);
  color: var(--gr-espresso);
}

body.grannys-rituals-site .xoo-wsc-ft-btn-checkout,
body.grannys-rituals-site .xoo-wsc-ft-btn-continue,
body.grannys-rituals-site .xoo-wsc-ft-btn-cart {
  background: var(--gr-olive) !important;
  border-color: var(--gr-olive) !important;
  color: var(--gr-white) !important;
}

body.grannys-rituals-site .xoo-wsc-basket {
  background: var(--gr-cream) !important;
  border: 1px solid var(--gr-sand) !important;
  box-shadow: 0 10px 28px rgba(42, 33, 26, .18) !important;
  color: var(--gr-olive) !important;
}

body.grannys-rituals-site .xoo-wsc-basket .xoo-wsc-bki {
  color: var(--gr-olive) !important;
}

body.grannys-rituals-site .xoo-wsc-items-count,
body.grannys-rituals-site .xoo-wsch-items-count {
  background: var(--gr-gold) !important;
  color: var(--gr-espresso) !important;
}

body.grannys-rituals-site .mobile-footer,
body.grannys-rituals-site .footer-mobile,
body.grannys-rituals-site .goal-footer-mobile,
body.grannys-rituals-site .goal-mobile-menu {
  background: var(--gr-white);
  border-color: var(--gr-sand);
}

body.grannys-rituals-site .goal-footer-mobile {
  display: none !important;
}

@media (max-width: 991px) {
  .gr-brand-header__inner {
    min-height: 76px;
    padding: 10px 18px;
  }

  .gr-brand-header__logo {
    flex-basis: 56px;
    height: 56px;
    width: 56px;
  }

  .gr-brand-header__name {
    font-size: 25px;
  }

  .gr-home-hero {
    min-height: 620px;
  }

  .gr-home-hero__image {
    object-position: 64% center;
  }

  .gr-home-hero__shade {
    background: linear-gradient(90deg, rgba(246, 239, 225, .98) 0%, rgba(246, 239, 225, .92) 45%, rgba(246, 239, 225, .28) 78%);
  }

  body.grannys-rituals-site .gr-global-footer .bn-footer-main-inner {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 600px) {
  body.grannys-rituals-site .gr-global-footer .bn-footer-bottom {
    padding: 18px 78px 18px 20px;
    text-align: left;
  }

  body.grannys-rituals-site .thebluenila-delivery-banner {
    font-size: 10px !important;
    letter-spacing: .1em !important;
    min-height: 38px !important;
    padding: 9px 10px !important;
  }

  .gr-brand-header__inner {
    gap: 8px;
    justify-content: center;
    min-height: 70px;
    padding: 8px 12px;
  }

  .gr-brand-header__identity {
    gap: 9px;
  }

  .gr-brand-header__logo {
    flex-basis: 50px;
    height: 50px;
    width: 50px;
  }

  .gr-brand-header__name {
    font-size: 21px;
  }

  .gr-brand-header__tagline {
    font-size: 9px;
    letter-spacing: .045em;
    margin-top: 5px;
  }

  .gr-brand-header__nav {
    display: none;
  }

  body.grannys-rituals-site .thebluenila-header-search {
    padding: 10px 12px !important;
  }

  .gr-home-hero {
    min-height: 0;
  }

  .gr-home-hero__image {
    height: clamp(285px, 84vw, 315px);
    object-position: 65% center;
    top: 0;
  }

  .gr-home-hero__shade {
    background: linear-gradient(180deg, rgba(246, 239, 225, .02) 0%, rgba(246, 239, 225, .12) 34%, var(--gr-cream) 52%, var(--gr-cream) 100%);
  }

  .gr-home-hero__inner {
    align-items: flex-end;
    min-height: 0;
    padding: clamp(250px, 74vw, 285px) 20px 32px;
  }

  .gr-home-hero__content {
    max-width: 100%;
  }

  .gr-home-hero__eyebrow {
    font-size: 9px;
    letter-spacing: .1em;
    margin-bottom: 15px;
  }

  .gr-home-hero h1 {
    font-size: clamp(18px, 5.2vw, 31px);
    line-height: 1.05;
    margin-bottom: 18px;
  }

  .gr-home-hero__content > p {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 22px;
  }

  .gr-home-hero__actions {
    display: flex;
  }

  .gr-home-hero__primary,
  .gr-home-hero__secondary {
    font-size: 11px;
    min-height: 48px;
    padding: 0 18px;
  }

  .gr-home-hero__trust {
    gap: 8px 14px;
    margin-top: 20px;
  }

  .gr-home-hero__trust li {
    font-size: 10px;
  }

  body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-buttons,
  body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-buttons {
    gap: 9px !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    padding: 6px 2px 10px !important;
  }

  body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-button,
  body.grannys-rituals-site.home .bluenila-category-filter .bluenila-filter-button:nth-child(n),
  body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-button,
  body.grannys-rituals-site.front-page .bluenila-category-filter .bluenila-filter-button:nth-child(n) {
    font-size: 11px !important;
    height: 44px !important;
    padding: 0 17px !important;
  }

  body.grannys-rituals-site .product-block.grid,
  body.grannys-rituals-site .wpcu-product__content,
  body.grannys-rituals-site ul.products li.product .product-block {
    border-radius: 14px;
    padding: 8px;
  }

  body.grannys-rituals-site .gr-global-footer .bn-footer-main-inner {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gr-brand-header__nav a::after,
  body.grannys-rituals-site .product-block.grid,
  body.grannys-rituals-site .wpcu-product__content {
    transition: none;
  }
}

/* Recent-purchase popup: keep the third-party widget inside the Granny palette. */
body.grannys-rituals-site .goal-salespopup-wrapper {
  background: linear-gradient(145deg, #fff 0%, var(--gr-cream) 100%) !important;
  border: 1px solid var(--gr-sand) !important;
  border-radius: 16px !important;
  box-shadow: 0 16px 40px rgba(42, 33, 26, .16) !important;
  color: var(--gr-espresso) !important;
  max-width: min(440px, calc(100vw - 24px));
  overflow: visible;
}

body.grannys-rituals-site .goal-salespopup-wrapper .inner {
  align-items: center;
  gap: 12px;
  padding: 12px !important;
}

body.grannys-rituals-site .goal-salespopup-wrapper .thumb {
  background: #fff;
  border: 1px solid var(--gr-sand);
  border-radius: 12px;
  flex: 0 0 76px;
  margin: 0 !important;
  overflow: hidden;
}

body.grannys-rituals-site .goal-salespopup-wrapper .thumb img {
  aspect-ratio: 1;
  display: block;
  object-fit: cover;
}

body.grannys-rituals-site .goal-salespopup-wrapper .inner-right {
  color: var(--gr-espresso);
  font-family: var(--gr-font-sans);
  font-size: 14px;
  line-height: 1.45;
}

body.grannys-rituals-site .goal-salespopup-wrapper h4.product-name,
body.grannys-rituals-site .goal-salespopup-wrapper h4.product-name a {
  color: var(--gr-olive) !important;
  font-family: var(--gr-font-serif);
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.15;
}

body.grannys-rituals-site .goal-salespopup-wrapper small {
  color: var(--gr-caramel);
  display: block;
  font-size: 12px;
  font-weight: 600;
  margin-top: 4px;
}

body.grannys-rituals-site .goal-salespopup-wrapper .inner .close {
  background: var(--gr-olive) !important;
  border: 2px solid var(--gr-gold) !important;
  box-shadow: 0 4px 14px rgba(42, 33, 26, .2);
  color: #fff !important;
}

body.grannys-rituals-site .goal-salespopup-wrapper .inner .close:hover {
  background: var(--gr-espresso) !important;
  border-color: var(--gr-gold) !important;
}

@media (max-width: 767px) {
  body.grannys-rituals-site .goal-salespopup-wrapper {
    bottom: 14px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
  }
}
