
/* Feature dark background overrides */
.holi-section--dark .holi-feature__title {
  color: var(--white) !important;
}
.holi-section--dark .holi-feature__body {
  color: rgba(255,255,255,0.72) !important;
}

/*
Theme Name:   Astra Child — Holi Cosmetics
Template:     astra
Version:      5.0.0
Description:  Mediterranean Luxury Editorial
*/

/* ═══════════════════════════════════════════════════════
   TOKENS
═══════════════════════════════════════════════════════ */
:root {
  --green:        #2f4b33;
  --green-deep:   #1e3121;
  --green-light:  #c5d9c1;
  --bronze:       #c88f5d;
  --bronze-light: #f5ddc8;
  --sand:         #faf8f2;
  --sand-dark:    #f0ebe0;
  --ink:          #1a2b1c;
  --ink-soft:     #3d4f3f;
  --rule:         #d8d0c4;
  --white:        #ffffff;

  --serif: "Cormorant Garamond", Georgia, serif;
  --sans:  "Plus Jakarta Sans", system-ui, sans-serif;

  --ease:      240ms cubic-bezier(.25,0,.1,1);
  --ease-slow: 500ms cubic-bezier(.25,0,.1,1);
  --max:       1200px;
}

/* ═══════════════════════════════════════════════════════
   BASE — minimal, non-destructive
═══════════════════════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-font-smoothing: antialiased; }

body { font-family: var(--sans) !important; color: var(--ink); }

img { max-width: 100%; }

a { transition: color var(--ease); }

/* Headings — only on holi-* contexts, NOT global WC */
.holi-hero h1, .holi-hero h2,
.holi-section h2, .holi-feature h2,
.holi-newsletter h2, .holi-page-hero h1,
.holi-cta-strip h2 {
  font-family: var(--serif) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  line-height: 1.1 !important;
}

/* ── Strip Astra's page constraints ─────────────────────── */

/* Hide duplicate page title (we have holi-page-hero) */
.page .entry-header,
.page .ast-page-builder-template .entry-header { display: none !important; }

/* Remove entry-content padding/max-width on our content pages */
.page #primary,
.page #main,
.page .ast-article-single { max-width: 100% !important; padding: 0 !important; }

.page .entry-content,
.page .entry-content.clear {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* WooCommerce pages: restore sane padding inside entry-content */
.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-account .entry-content {
  padding: 2rem clamp(1.5rem,4vw,3rem) !important;
  max-width: var(--max) !important;
  margin: 0 auto !important;
}

/* Shop page: no entry-content padding (we use holi-shop-hero) */
.woocommerce.archive .entry-content { padding: 0 !important; max-width: 100% !important; }

/* Breadcrumbs + WP chrome */
.woocommerce-breadcrumb,
.ast-breadcrumbs-wrapper,
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering { display: none !important; }

/* ═══════════════════════════════════════════════════════
   HEADER — custom holi-header (header.php in child theme)
═══════════════════════════════════════════════════════ */

/* Suppress Astra's own header output */
#ast-desktop-header,
#ast-mobile-header .ast-main-header-wrap,
.ast-mobile-menu-trigger-wrap,
.ast-site-header-wrap .site-header-primary-section-left,
.ast-site-header-wrap .site-header-primary-section-right { display: none !important; }

/* Our header */
.holi-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 1000;
  background: rgba(250,248,242,.96);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--rule);
}
.holi-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: var(--max);
  margin: 0 auto;
  padding: 0 clamp(1.5rem,4vw,3rem);
  height: 64px;
}

/* Brand */
.holi-header__logo-link {
  display: flex; align-items: center; gap: 10px; text-decoration: none;
}
.holi-header__logo-link .custom-logo { height: 40px; width: auto; display: block; }
.holi-header__site-name { display: none; }

/* Desktop nav */
.holi-header__nav { display: flex; align-items: center; }
.holi-header__nav .holi-nav-list {
  display: flex; align-items: center; gap: 2.25rem;
  list-style: none; margin: 0; padding: 0;
}
.holi-header__nav .holi-nav-list .menu-item > a {
  font-family: var(--sans); font-size: 0.72rem; font-weight: 400;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--ink-soft); text-decoration: none;
  transition: color var(--ease);
}
.holi-header__nav .holi-nav-list .menu-item > a:hover,
.holi-header__nav .holi-nav-list .current-menu-item > a { color: var(--green); }

/* Right zone */
.holi-header__right { display: flex; align-items: center; gap: 1.25rem; }

/* Cart icon — always visible */
.holi-cart-icon {
  position: relative; display: flex; align-items: center;
  color: var(--ink); text-decoration: none; transition: color var(--ease);
}
.holi-cart-icon:hover { color: var(--green); }
.holi-cart-count {
  position: absolute; top: -8px; right: -10px;
  background: var(--rule); color: var(--ink-soft);
  border-radius: 50%; font-family: var(--sans); font-size: 0.55rem; font-weight: 600;
  width: 18px; height: 18px;
  display: flex; align-items: center; justify-content: center; line-height: 1;
  transition: background var(--ease), color var(--ease);
}
.holi-cart-count.has-items { background: var(--green); color: var(--white); }

/* Hamburger — hidden on desktop */
.holi-menu-toggle {
  display: none; flex-direction: column; justify-content: center;
  align-items: center; gap: 5px;
  width: 36px; height: 36px; background: none; border: none; cursor: pointer; padding: 0;
}
.holi-menu-toggle__bar {
  display: block; width: 22px; height: 1.5px; background: var(--ink);
  transition: transform 0.3s, opacity 0.3s;
}

/* Body offset for fixed header */
body { padding-top: 64px !important; }
.holi-hero { margin-top: -64px !important; }

/* ═══════════════════════════════════════════════════════
   MOBILE OVERLAY
═══════════════════════════════════════════════════════ */
.holi-mobile-overlay {
  position: fixed; inset: 0; z-index: 9999;
  background: var(--green-deep);
  display: flex; flex-direction: column;
  opacity: 0; transform: translateX(100%); pointer-events: none;
  transition: opacity 0.35s var(--ease), transform 0.35s var(--ease);
}
.holi-mobile-overlay.is-open {
  opacity: 1; transform: translateX(0); pointer-events: all;
}
.holi-mobile-overlay__inner {
  display: flex; flex-direction: column; height: 100%;
  padding: 1.5rem 2rem 2.5rem;
}
.holi-mobile-close {
  align-self: flex-end; background: none; border: none;
  color: rgba(255,255,255,.45); cursor: pointer; padding: 4px;
  margin-bottom: 3rem; transition: color var(--ease);
}
.holi-mobile-close:hover { color: var(--white); }
.holi-mobile-overlay .holi-mobile-nav-list {
  list-style: none; margin: 0; padding: 0; flex: 1;
}
.holi-mobile-overlay .holi-mobile-nav-list .menu-item {
  border-top: 1px solid rgba(255,255,255,.08);
}
.holi-mobile-overlay .holi-mobile-nav-list .menu-item:last-child {
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.holi-mobile-overlay .holi-mobile-nav-list .menu-item > a {
  font-family: var(--serif);
  font-size: clamp(2.4rem,8vw,3.5rem);
  font-style: italic; font-weight: 400;
  color: rgba(255,255,255,.85); text-decoration: none;
  display: block; padding: 0.3rem 0; line-height: 1.2;
  transition: color var(--ease);
}
.holi-mobile-overlay .holi-mobile-nav-list .menu-item > a:hover,
.holi-mobile-overlay .holi-mobile-nav-list .current-menu-item > a { color: var(--bronze); }
.holi-mobile-overlay__footer {
  display: flex; align-items: center; justify-content: space-between;
  font-family: var(--sans); font-size: 0.62rem;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: rgba(255,255,255,.22); padding-top: 2rem;
}
.holi-mobile-cart-link {
  color: rgba(255,255,255,.55); text-decoration: none;
  display: flex; align-items: center; gap: 8px;
  transition: color var(--ease);
}
.holi-mobile-cart-link:hover { color: var(--white); }
.holi-mobile-cart-link .holi-cart-count {
  position: static; top: auto; right: auto;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .holi-header__nav { display: none; }
  .holi-menu-toggle { display: flex; }
  body { padding-top: 58px !important; }
  .holi-header__inner { height: 58px; }
  .holi-hero { margin-top: -58px !important; }
}

/* ═══════════════════════════════════════════════════════
   BUTTONS — only holi custom classes + WC add-to-cart
═══════════════════════════════════════════════════════ */
.btn-filled {
  font-family: var(--sans) !important;
  font-size: 0.72rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  background: var(--green) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 28px !important;
  height: 46px !important;
  line-height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  cursor: pointer !important;
  transition: background var(--ease) !important;
  text-decoration: none !important;
}
.btn-filled:hover { background: var(--green-deep) !important; color: var(--white) !important; }

.btn-outlined {
  font-family: var(--sans);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  background: transparent;
  color: var(--green);
  border: 1px solid var(--green);
  border-radius: 0;
  padding: 0 28px;
  height: 46px;
  line-height: 46px;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  transition: background var(--ease), color var(--ease);
  text-decoration: none;
}
.btn-outlined:hover { background: var(--green); color: var(--white); }

.btn-ghost {
  font-family: var(--sans);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  background: transparent;
  color: var(--white);
  border: 1px solid rgba(255,255,255,.45);
  border-radius: 0;
  padding: 0 28px;
  height: 46px;
  line-height: 46px;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  transition: border-color var(--ease), background var(--ease);
  text-decoration: none;
}
.btn-ghost:hover { border-color: var(--white); background: rgba(255,255,255,.08); color: var(--white); }

/* WooCommerce global buttons — style without breaking */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button {
  font-family: var(--sans) !important;
  font-size: 0.72rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  background: var(--green) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 12px 24px !important;
  height: auto !important;
  line-height: 1.4 !important;
  transition: background var(--ease) !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce #respond input#submit:hover {
  background: var(--green-deep) !important;
  color: var(--white) !important;
}

/* ═══════════════════════════════════════════════════════
   HERO — full-screen cover
═══════════════════════════════════════════════════════ */
.holi-hero {
  position: relative !important;
  width: 100% !important;
  min-height: 100svh !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  background: var(--green-deep) !important;
  padding: 0 !important;
}
.holi-hero::before { display: none !important; }

.holi-hero__image-wrap {
  position: absolute !important;
  inset: 0 !important;
  min-height: unset !important;
}
.holi-hero__image-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 20% !important;
  filter: brightness(.88) !important;
}
.holi-hero__image-wrap::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(to right, rgba(12,20,14,.82) 0%, rgba(12,20,14,.55) 55%, rgba(12,20,14,.1) 100%) !important;
}

.holi-hero__copy {
  position: relative !important;
  z-index: 2 !important;
  padding: clamp(6rem,10vw,8rem) clamp(1.5rem,5vw,6rem) !important;
  width: 100% !important;
  max-width: min(900px, 80vw) !important;
}

.holi-hero__chip {
  font-family: var(--sans) !important;
  font-size: 0.62rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--bronze) !important;
  display: block !important;
  margin-bottom: 1.25rem !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  width: auto !important;
}
.holi-hero__chip::before { display: none !important; }

.holi-hero__headline {
  font-family: var(--serif) !important;
  font-size: clamp(2.5rem,5.8vw,6.5rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--white) !important;
  line-height: .97 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 1.5rem !important;
  }
.holi-hero__headline em { color: var(--bronze) !important; font-style: italic !important; }

.holi-hero__lede {
  font-family: var(--sans) !important;
  font-size: 0.9rem !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,.7) !important;
  line-height: 1.8 !important;
  max-width: 480px !important;
  margin: 0 0 1.25rem !important;
}

.holi-hero__actions {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.holi-hero__product-card {
  position: absolute !important;
  bottom: clamp(1.5rem,4vw,3rem) !important;
  right: clamp(1.5rem,4vw,3rem) !important;
  z-index: 3 !important;
  background: rgba(250,248,242,.12) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 0 !important;
  padding: 18px 22px !important;
  min-width: 160px !important;
}
.holi-hero__product-card__name {
  font-family: var(--serif) !important;
  font-size: 1.15rem !important;
  font-style: italic !important;
  color: var(--white) !important;
  display: block !important;
}
.holi-hero__product-card__desc {
  font-family: var(--sans) !important;
  font-size: 0.6rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.55) !important;
  display: block !important;
  margin-top: 4px !important;
}
.holi-hero__product-card__price {
  font-family: var(--sans) !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  color: var(--bronze) !important;
  display: block !important;
  margin-top: 10px !important;
}

/* ═══════════════════════════════════════════════════════
   TRUST STRIP
═══════════════════════════════════════════════════════ */
.holi-badges, .holi-chips-row {
  background: var(--white) !important;
  border-bottom: 1px solid var(--rule) !important;
  border-top: none !important;
  padding: 14px clamp(1.5rem,4vw,3rem) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
}

.holi-badge, .holi-chip {
  font-family: var(--sans) !important;
  font-size: 0.62rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ink-soft) !important;
  padding: 2px 20px !important;
  border: none !important;
  background: none !important;
  border-radius: 0 !important;
  position: relative !important;
}
.holi-badge + .holi-badge::before,
.holi-chip + .holi-chip::before {
  content: '·' !important;
  position: absolute !important;
  left: 0 !important;
  color: var(--rule) !important;
}

/* ═══════════════════════════════════════════════════════
   SECTIONS
═══════════════════════════════════════════════════════ */
.holi-section { padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,4rem); }
.holi-section--white   { background: var(--white); }
.holi-section--sand,
.holi-section--surface,
.holi-section--cream   { background: var(--sand); }
.holi-section--dark    { background: var(--green-deep); }

.holi-eyebrow, .holi-section__eyebrow {
  font-family: var(--sans) !important;
  font-size: 0.6rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--bronze) !important;
  display: block !important;
  margin-bottom: 1.25rem !important;
}

.holi-section__title, .holi-title {
  font-family: var(--serif) !important;
  font-size: clamp(2rem,4.5vw,4rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--ink) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.01em !important;
  margin-bottom: 1rem !important;
}

.holi-section__body, .holi-body {
  font-family: var(--sans) !important;
  font-size: 0.95rem !important;
  line-height: 1.85 !important;
  color: var(--ink-soft) !important;
}

.holi-section-header {
  text-align: center;
  max-width: 580px;
  margin: 0 auto 3.5rem;
}

/* ═══════════════════════════════════════════════════════
   PRODUCT CARDS — WooCommerce
═══════════════════════════════════════════════════════ */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 2px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.woocommerce ul.products.columns-1 { grid-template-columns: 1fr !important; }
.woocommerce ul.products.columns-2 { grid-template-columns: repeat(2,1fr) !important; }
.woocommerce ul.products.columns-4 { grid-template-columns: repeat(4,1fr) !important; }

.woocommerce ul.products li.product {
  background: var(--sand) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border: none !important;
  overflow: hidden !important;
  position: relative !important;
  margin: 0 !important;
  float: none !important;
  width: auto !important;
}

.woocommerce ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 3/4 !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 0 !important;
  transition: transform var(--ease-slow) !important;
  margin: 0 !important;
}
.woocommerce ul.products li.product:hover img { transform: scale(1.04) !important; }

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--serif) !important;
  font-size: 1.3rem !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--ink) !important;
  padding: 14px 16px 2px !important;
  margin: 0 !important;
}

.woocommerce ul.products li.product .price {
  font-family: var(--sans) !important;
  font-size: 0.78rem !important;
  font-weight: 400 !important;
  color: var(--ink-soft) !important;
  padding: 0 16px 16px !important;
  display: block !important;
  margin: 0 !important;
}

/* Add to cart button on product card */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button {
  display: block !important;
  position: static !important;
  transform: none !important;
  opacity: 0 !important;
  margin: 0 16px 16px !important;
  width: calc(100% - 32px) !important;
  text-align: center !important;
  padding: 10px 16px !important;
  transition: opacity var(--ease) !important;
}
.woocommerce ul.products li.product:hover .button { opacity: 1 !important; }

.woocommerce ul.products li.product .onsale {
  background: var(--bronze) !important;
  color: var(--white) !important;
  border-radius: 0 !important;
  font-family: var(--sans) !important;
  font-size: 0.6rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 4px 10px !important;
  min-height: unset !important;
  line-height: 1.4 !important;
}

/* ═══════════════════════════════════════════════════════
   FEATURE (2-col)
═══════════════════════════════════════════════════════ */
.holi-feature {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
}
.holi-feature--reverse .holi-feature__media { order: -1; }

.holi-feature__media {
  aspect-ratio: 4/5;
  overflow: hidden;
  background: var(--sand-dark);
}
.holi-feature__media img { width: 100%; height: 100%; object-fit: cover; }

/* Second image: 70% height of feature section, desktop only */
@media (min-width: 769px) {
  .holi-feature__media--70 {
    aspect-ratio: unset !important;
    height: 70% !important;
    align-self: center !important;
  }
  .holi-feature:has(.holi-feature__media--70) {
    align-items: center !important;
    min-height: 520px !important;
  }
  .holi-feature__media--70 img {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
  }
}

.holi-feature__copy {
  padding: clamp(3rem,6vw,6rem) clamp(2rem,5vw,5rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: var(--sand);
}

.holi-feature__title {
  font-family: var(--serif) !important;
  font-size: clamp(1.8rem,3.5vw,3.5rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--ink) !important;
  line-height: 1.1 !important;
  margin: 0 0 1.25rem !important;
}

.holi-feature__body {
  font-family: var(--sans);
  font-size: 0.93rem;
  line-height: 1.85;
  color: var(--ink-soft);
  margin: 0 0 2rem;
  max-width: 400px;
}

/* ═══════════════════════════════════════════════════════
   STAT CARDS
═══════════════════════════════════════════════════════ */
.holi-stat-cards {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 1px;
  background: var(--rule);
  border: 1px solid var(--rule);
  max-width: var(--max);
  margin: 0 auto;
}

.holi-stat-card {
  background: var(--white);
  padding: clamp(2rem,4vw,3.5rem) clamp(1.5rem,3vw,2.5rem);
  text-align: center;
}

.holi-stat-card__number {
  font-family: var(--serif);
  font-size: clamp(3rem,5vw,5rem);
  font-style: italic;
  color: var(--green);
  line-height: 1;
  display: block;
  margin-bottom: 10px;
}

.holi-stat-card__label {
  font-family: var(--sans);
  font-size: 0.62rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

/* ═══════════════════════════════════════════════════════
   FAQ
═══════════════════════════════════════════════════════ */
.holi-faq { max-width: 660px; margin: 0 auto; }
.holi-faq details { border-bottom: 1px solid var(--rule); }
.holi-faq summary {
  font-family: var(--sans) !important;
  font-size: 0.9rem !important;
  font-weight: 400 !important;
  color: var(--ink) !important;
  padding: 1.2rem 0 !important;
  cursor: pointer !important;
  list-style: none !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 1rem !important;
}
.holi-faq summary::-webkit-details-marker { display: none !important; }
.holi-faq summary:hover { color: var(--bronze) !important; }
.holi-faq summary::after {
  content: '+';
  font-family: var(--sans);
  font-size: 1.1rem;
  font-weight: 200;
  color: var(--ink-soft);
  flex-shrink: 0;
}
.holi-faq details[open] summary::after { content: '−'; color: var(--bronze); }
.holi-faq details p {
  font-family: var(--sans) !important;
  font-size: 0.88rem !important;
  line-height: 1.85 !important;
  color: var(--ink-soft) !important;
  padding-bottom: 1.25rem !important;
}

/* ═══════════════════════════════════════════════════════
   NEWSLETTER
═══════════════════════════════════════════════════════ */
.holi-newsletter {
  background: var(--green-deep) !important;
  padding: clamp(4.5rem,8vw,7rem) clamp(1.5rem,5vw,4rem) !important;
}
.holi-newsletter__inner {
  max-width: var(--max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: center;
}
@media (max-width: 768px) {
  .holi-newsletter__inner {
    grid-template-columns: 1fr;
    gap: 2rem;
    text-align: center;
  }
}

.holi-newsletter__title {
  font-family: var(--serif) !important;
  font-size: clamp(2.25rem,5vw,4.5rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--white) !important;
  line-height: 1.05 !important;
  margin: 0 0 0.75rem !important;
  text-align: left !important;
}
@media (max-width: 768px) {
  .holi-newsletter__title { text-align: center !important; }
}

.holi-newsletter__sub {
  font-family: var(--sans) !important;
  font-size: 0.85rem !important;
  color: rgba(197,217,193,.7) !important;
  margin: 0 !important;
  line-height: 1.7 !important;
  text-align: left !important;
}
@media (max-width: 768px) {
  .holi-newsletter__sub { text-align: center !important; }
}

.holi-newsletter__form {
  display: flex !important;
  max-width: 460px !important;
  margin: 0 !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  background: none !important;
  gap: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
@media (max-width: 768px) {
  .holi-newsletter__form { margin: 0 auto !important; max-width: 100% !important; }
}

.holi-newsletter__input {
  flex: 1 !important;
  min-width: 0 !important;
  height: 52px !important;
  padding: 0 18px !important;
  border: none !important;
  background: transparent !important;
  color: var(--white) !important;
  font-family: var(--sans) !important;
  font-size: 0.875rem !important;
  outline: none !important;
}
.holi-newsletter__input::placeholder { color: rgba(255,255,255,.35) !important; }

.holi-newsletter__btn {
  height: 52px !important;
  padding: 0 22px !important;
  background: var(--bronze) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: var(--sans) !important;
  font-size: 0.62rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
    flex-shrink: 0 !important;
  line-height: 52px !important;
  display: inline-block !important;
}
.holi-newsletter__btn:hover { background: #b07a4a !important; color: var(--white) !important; }

/* ═══════════════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════════════ */
#colophon, .ast-footer-area, .ast-footer-widgets-area {
  background: var(--green-deep) !important;
  border-top: none !important;
}
.ast-footer-widgets-area {
  padding: clamp(3rem,5vw,5rem) clamp(1.5rem,5vw,4rem) !important;
}
.ast-footer-widgets-area .ast-footer-widget-area {
  display: grid !important;
  grid-template-columns: 2fr 1fr 1fr 1fr !important;
  gap: 3rem !important;
  max-width: var(--max) !important;
  margin: 0 auto !important;
}
.footer-widget-area .widget-title {
  font-family: var(--sans) !important;
  font-size: 0.58rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.4) !important;
  margin-bottom: 1.25rem !important;
}
.footer-widget-area .widget ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.footer-widget-area .widget ul li { margin-bottom: 0.6rem !important; }
.footer-widget-area .widget ul li a {
  font-family: var(--sans) !important;
  font-size: 0.82rem !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,.55) !important;
  transition: color var(--ease) !important;
}
.footer-widget-area .widget ul li a:hover { color: var(--white) !important; }
.ast-small-footer {
  background: var(--green-deep) !important;
  border-top: 1px solid rgba(255,255,255,.07) !important;
}
.ast-small-footer .ast-footer-copyright {
  font-family: var(--sans) !important;
  font-size: 0.68rem !important;
  color: rgba(255,255,255,.3) !important;
}
/* Hide "Powered by Astra" link */
.ast-small-footer .ast-footer-copyright a[href*="wpastra"],
.ast-small-footer .powered-by,
.ast-small-footer .ast-footer-copyright > span:last-child:not(:first-child) {
  display: none !important;
}
/* Hide the separator pipe before "Powered by" */
.ast-small-footer .ast-footer-copyright .ast-divider-pipe { display: none !important; }

/* ═══════════════════════════════════════════════════════
   SINGLE PRODUCT — custom template layout
═══════════════════════════════════════════════════════ */
.holi-product-wrap {
  max-width: var(--max);
  margin: 0 auto;
  padding: clamp(2rem,4vw,4rem) clamp(1.5rem,5vw,4rem);
}
.holi-product-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2rem,4vw,4rem);
  align-items: start;
  margin-bottom: 4rem;
}
.holi-product-gallery {
  position: sticky;
  top: 90px;
}
.holi-product-gallery img {
  width: 100%;
  display: block;
  border-radius: 0;
  box-shadow: none;
}
.holi-product-summary {
  display: flex;
  flex-direction: column;
}
.holi-product-name-svg {
  width: clamp(140px,60%,260px);
  height: auto;
  display: block;
  margin-bottom: 0.5rem;
}
.holi-product-price {
  margin-bottom: 1.5rem;
}
.holi-product-price p.price,
.holi-product-price span.price {
  font-family: var(--sans) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  color: var(--ink) !important;
}
.holi-product-desc {
  font-family: var(--sans);
  font-size: 0.93rem;
  line-height: 1.85;
  color: var(--ink-soft);
  padding-top: 1.25rem;
  border-top: 1px solid var(--rule);
  margin-bottom: 1.5rem;
}
.holi-product-meta {
  margin-top: 1rem;
  font-family: var(--sans);
  font-size: 0.75rem;
  color: var(--ink-soft);
}
@media (max-width: 768px) {
  .holi-product-layout {
    grid-template-columns: 1fr;
  }
  .holi-product-gallery {
    position: static;
  }
}

/* Keep old selector block for any leftover WC styles */
.woocommerce.single-product div.product {
  max-width: var(--max) !important;
  margin: 0 auto !important;
  padding: clamp(3rem,5vw,5rem) clamp(1.5rem,5vw,4rem) !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: clamp(2rem,4vw,4rem) !important;
  align-items: flex-start !important;
}

/* Gallery — left col */
.woocommerce.single-product div.product .woocommerce-product-gallery {
  flex: 0 0 48% !important;
  width: 48% !important;
  max-width: 48% !important;
  float: none !important;
  position: sticky !important;
  top: 90px !important;
}
.woocommerce.single-product div.product .woocommerce-product-gallery img {
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  display: block !important;
}

/* Summary — right col */
.woocommerce.single-product div.product .summary {
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: none !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
}

/* SVG "Animæ" — top of summary */
.woocommerce.single-product .holi-product-name-svg {
  display: block !important;
  width: clamp(140px,55%,260px) !important;
  height: auto !important;
  margin: 0 0 0.5rem !important;
  order: 0 !important;
}

/* H1 title hidden — SVG is the title */
.woocommerce.single-product .product_title {
  display: none !important;
}

/* Price */
.woocommerce.single-product p.price,
.woocommerce.single-product span.price {
  font-family: var(--sans) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  color: var(--ink) !important;
  margin: 0 0 1.5rem !important;
}

/* Short description */
.woocommerce.single-product .woocommerce-product-details__short-description {
  font-family: var(--sans) !important;
  font-size: 0.93rem !important;
  line-height: 1.85 !important;
  color: var(--ink-soft) !important;
  margin: 0 0 1.5rem !important;
  padding-top: 1.25rem !important;
  border-top: 1px solid var(--rule) !important;
}

/* Mobile — stacked full width */
@media (max-width: 768px) {
  .woocommerce.single-product div.product {
    flex-direction: column !important;
    flex-wrap: wrap !important;
  }
  .woocommerce.single-product div.product .woocommerce-product-gallery,
  .woocommerce.single-product div.product .summary {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    position: static !important;
  }
}

.single-product p.price, .single-product span.price {
  font-family: var(--sans) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  color: var(--ink) !important;
}

.variations label {
  font-family: var(--sans) !important;
  font-size: 0.62rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ink-soft) !important;
}
.variations select {
  font-family: var(--sans) !important;
  font-size: 0.85rem !important;
  color: var(--ink) !important;
  border: 1px solid var(--rule) !important;
  border-radius: 0 !important;
  background: var(--white) !important;
  padding: 10px 14px !important;
}
.variations select:focus { border-color: var(--green) !important; outline: none !important; }

/* Tabs */
.woocommerce-tabs ul.tabs {
  border-bottom: 1px solid var(--rule) !important;
  background: none !important;
  padding: 0 !important;
}
.woocommerce-tabs ul.tabs::before { display: none !important; }
.woocommerce-tabs ul.tabs li {
  background: none !important; border: none !important;
  border-radius: 0 !important;
}
.woocommerce-tabs ul.tabs li a {
  font-family: var(--sans) !important;
  font-size: 0.68rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ink-soft) !important;
  border-bottom: 1px solid transparent !important;
  margin-bottom: -1px !important;
}
.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs li a:hover {
  color: var(--ink) !important;
  border-bottom-color: var(--ink) !important;
  background: none !important;
}
.woocommerce-tabs .panel { border: none !important; }

/* ═══════════════════════════════════════════════════════
   CART & CHECKOUT — work with WC defaults
═══════════════════════════════════════════════════════ */
.woocommerce table.shop_table {
  border: 1px solid var(--rule) !important;
  border-radius: 0 !important;
}
.woocommerce table.shop_table th {
  font-family: var(--sans) !important;
  font-size: 0.62rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  background: var(--sand) !important;
  color: var(--ink-soft) !important;
}
.woocommerce table.shop_table td {
  font-family: var(--sans) !important;
  font-size: 0.9rem !important;
  vertical-align: middle !important;
}

.woocommerce form .form-row label {
  font-family: var(--sans) !important;
  font-size: 0.65rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--ink-soft) !important;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
  border: 1px solid var(--rule) !important;
  border-radius: 0 !important;
  font-family: var(--sans) !important;
  font-size: 0.9rem !important;
  color: var(--ink) !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: none !important;
}

/* ═══════════════════════════════════════════════════════
   INNER PAGES
═══════════════════════════════════════════════════════ */
.holi-page-hero {
  background: var(--sand);
  padding: clamp(5rem,10vw,9rem) clamp(1.5rem,5vw,4rem) clamp(3rem,5vw,4rem);
  border-bottom: 1px solid var(--rule);
}
.holi-page-hero__inner { max-width: var(--max); margin: 0 auto; }
.holi-page-title {
  font-family: var(--serif) !important;
  font-size: clamp(3rem,7vw,6.5rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--ink) !important;
  line-height: 1.0 !important;
  letter-spacing: -0.02em !important;
  margin-top: 0.75rem !important;
}
.holi-page-hero__date {
  font-family: var(--sans);
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  color: var(--ink-soft);
  margin-top: 1rem;
}

.holi-page-section { padding: clamp(4rem,8vw,6.5rem) clamp(1.5rem,5vw,4rem); }
.holi-page-section--white { background: var(--white); }
.holi-page-section--cream { background: var(--sand); }
.holi-page-section--dark  { background: var(--green-deep); }

.holi-section-heading {
  font-family: var(--serif) !important;
  font-size: clamp(1.8rem,4vw,3.5rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--ink) !important;
  line-height: 1.1 !important;
  margin-bottom: 1.25rem !important;
}

.holi-page-section p {
  font-family: var(--sans);
  font-size: 0.95rem;
  line-height: 1.9;
  color: var(--ink-soft);
  margin-bottom: 1.25rem;
  max-width: 580px;
}

.holi-page-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(3rem,6vw,6rem);
  align-items: center;
  max-width: var(--max);
  margin: 0 auto;
}

.holi-pillars, .holi-values {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(220px,1fr));
  gap: 1px;
  background: var(--rule);
  margin-top: 2.5rem;
}
.holi-pillar, .holi-value {
  background: var(--white);
  padding: 1.75rem 2rem;
}
.holi-pillar h3, .holi-value h3 {
  font-family: var(--sans) !important;
  font-size: 0.65rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ink) !important;
  margin-bottom: 0.6rem !important;
  font-style: normal !important;
}
.holi-pillar p, .holi-value p {
  font-family: var(--sans) !important;
  font-size: 0.88rem !important;
  line-height: 1.8 !important;
  color: var(--ink-soft) !important;
  margin: 0 !important;
  max-width: none !important;
}
.holi-value__number {
  font-family: var(--serif);
  font-size: 2.5rem;
  font-style: italic;
  color: var(--bronze);
  display: block;
  margin-bottom: 0.6rem;
  line-height: 1;
}

.holi-cta-strip {
  background: var(--green-deep);
  padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,4rem);
  text-align: center;
}
.holi-cta-strip__title {
  font-family: var(--serif) !important;
  font-size: clamp(2rem,4.5vw,4.5rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--white) !important;
  margin-bottom: 1rem !important;
}
.holi-cta-strip__sub { font-family: var(--sans); font-size: 0.88rem; color: rgba(197,217,193,.7); margin-bottom: 2.5rem; }

.holi-btn {
  display: inline-flex; align-items: center;
  font-family: var(--sans); font-size: 0.68rem; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase;
  background: transparent; color: var(--white);
  border: 1px solid rgba(255,255,255,.4);
  border-radius: 0; padding: 0 28px; height: 46px;
  text-decoration: none;
  transition: border-color var(--ease), background var(--ease);
}
.holi-btn:hover { border-color: var(--white); background: rgba(255,255,255,.08); color: var(--white); }

.holi-contact-label {
  font-family: var(--sans); font-size: 0.6rem; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase; color: var(--bronze);
  display: block; margin-bottom: 0.25rem;
}
.holi-contact-item { margin-bottom: 1.5rem; }
.holi-contact-item a { font-size: 0.95rem; color: var(--ink); }
.holi-contact-item a:hover { color: var(--bronze); }

/* WPForms */
.wpforms-form .wpforms-field-label {
  font-family: var(--sans) !important; font-size: 0.65rem !important;
  font-weight: 500 !important; letter-spacing: 0.1em !important;
  text-transform: uppercase !important; color: var(--ink-soft) !important;
}
.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form textarea {
  border: 1px solid var(--rule) !important;
  border-radius: 0 !important;
  font-family: var(--sans) !important;
  font-size: 0.9rem !important;
  color: var(--ink) !important;
}
.wpforms-form input:focus, .wpforms-form textarea:focus {
  border-color: var(--green) !important; outline: none !important; box-shadow: none !important;
}
.wpforms-form .wpforms-submit {
  border-radius: 0 !important; font-family: var(--sans) !important;
  font-size: 0.68rem !important; font-weight: 500 !important;
  letter-spacing: 0.12em !important; text-transform: uppercase !important;
}

/* Legal */
.holi-legal-section { padding: clamp(3rem,6vw,5rem) clamp(1.5rem,5vw,4rem); background: var(--white); }
.holi-legal-body { max-width: 700px; margin: 0 auto; }
.holi-legal-body h2 {
  font-family: var(--sans) !important; font-size: 1rem !important;
  font-weight: 600 !important; font-style: normal !important;
  color: var(--ink) !important; margin-bottom: 0.75rem !important;
}
.holi-legal-body p, .holi-legal-body li {
  font-family: var(--sans); font-size: 0.9rem; line-height: 1.9; color: var(--ink-soft);
}
.holi-legal-body a { color: var(--bronze); text-decoration: underline; }
.holi-table { width: 100%; border-collapse: collapse; font-size: 0.85rem; }
.holi-table th { font-family: var(--sans); font-size: 0.62rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; padding: 0.75rem 1rem; border-bottom: 2px solid var(--rule); text-align: left; }
.holi-table td { padding: 0.75rem 1rem; border-bottom: 1px solid var(--rule); color: var(--ink-soft); }

/* WC misc */
.woocommerce-message, .woocommerce-info { border-top-color: var(--green) !important; border-radius: 0 !important; font-family: var(--sans) !important; }
.woocommerce-ordering select { font-family: var(--sans) !important; font-size: 0.78rem !important; border: 1px solid var(--rule) !important; border-radius: 0 !important; }
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover { background: var(--green) !important; color: var(--white) !important; border-radius: 0 !important; }

/* ═══════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
  .woocommerce ul.products { grid-template-columns: repeat(2,1fr) !important; }
  .ast-footer-widgets-area .ast-footer-widget-area { grid-template-columns: 1fr 1fr !important; }
}

@media (max-width: 768px) {

  /* Hero — full screen, copy bottom */
  .holi-hero { min-height: 100svh !important; }
  .holi-hero__product-card { display: none !important; }
  .holi-hero__copy { padding: 0 1.5rem 3rem !important; max-width: 100% !important; }
  .holi-hero__headline { font-size: clamp(2.6rem,11vw,4rem) !important; margin-bottom: 1.1rem !important; }
  .holi-hero__lede { font-size: 0.82rem !important; max-width: 100% !important; }
  .holi-hero__actions { gap: 8px !important; }
  .holi-hero__actions .btn-filled,
  .holi-hero__actions .btn-ghost { flex: 1 !important; justify-content: center !important; height: 44px !important; line-height: 44px !important; font-size: 0.62rem !important; padding: 0 16px !important; }

  /* Trust strip — horizontal scroll */
  .holi-badges, .holi-chips-row {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    justify-content: flex-start !important;
    padding: 12px 1.5rem !important;
    scrollbar-width: none !important;
  }
  .holi-badges::-webkit-scrollbar { display: none !important; }
  .holi-badge, .holi-chip { flex-shrink: 0 !important; white-space: nowrap !important; font-size: 0.58rem !important; }

  /* Feature — stack */
  .holi-feature { grid-template-columns: 1fr !important; }
  .holi-feature--reverse .holi-feature__media { order: 0 !important; }
  .holi-feature__media { aspect-ratio: 4/3 !important; }
  .holi-feature__copy { padding: 2.5rem 1.5rem !important; }
  .holi-feature__title { font-size: clamp(1.8rem,8vw,2.75rem) !important; }

  /* Products — horizontal scroll carousel */
  .holi-section .woocommerce ul.products,
  .woocommerce ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 2px !important;
    padding-bottom: 8px !important;
    scrollbar-width: none !important;
    grid-template-columns: unset !important;
    margin: 0 !important;
  }
  .holi-section .woocommerce ul.products::-webkit-scrollbar,
  .woocommerce ul.products::-webkit-scrollbar { display: none !important; }
  .woocommerce ul.products li.product {
    flex: 0 0 68vw !important;
    max-width: 280px !important;
    min-width: 220px !important;
    width: auto !important;
  }
  /* Always show button on mobile */
  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product a.button {
    opacity: 1 !important;
    margin: 0 12px 12px !important;
    width: calc(100% - 24px) !important;
  }

  /* Stats — horizontal layout */
  .holi-stat-cards { grid-template-columns: 1fr !important; }
  .holi-stat-card {
    display: flex !important;
    align-items: center !important;
    gap: 1.5rem !important;
    text-align: left !important;
    padding: 2rem 1.5rem !important;
  }
  .holi-stat-card__number { font-size: 3.5rem !important; min-width: 90px !important; margin-bottom: 0 !important; }

  /* Sections */
  .holi-section { padding: 3.5rem 1.5rem !important; }
  .holi-section__title { font-size: clamp(1.8rem,8vw,2.75rem) !important; }
  .holi-section-header { margin-bottom: 2rem !important; }

  /* Newsletter */
  .holi-newsletter { padding: 3.5rem 1.5rem !important; }
  .holi-newsletter__title { font-size: clamp(2rem,9vw,3rem) !important; }
  .holi-newsletter__form {
    flex-direction: column !important;
    border: none !important;
    gap: 8px !important;
    max-width: 100% !important;
  }
  .holi-newsletter__input {
    border: 1px solid rgba(255,255,255,.2) !important;
    text-align: center !important;
    height: 48px !important;
    width: 100% !important;
  }
  .holi-newsletter__btn {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    height: 48px !important;
    line-height: 48px !important;
  }

  /* Mobile nav — premium overlay */
  #ast-hf-mobile-menu {
    background: var(--green-deep) !important;
    padding: 1.5rem 0 2rem !important;
  }
  #ast-hf-mobile-menu .menu-item a {
    font-family: var(--serif) !important;
    font-size: 1.8rem !important;
    font-style: italic !important;
    font-weight: 400 !important;
    color: var(--white) !important;
    padding: 0.5rem 1.5rem !important;
    display: block !important;
    line-height: 1.3 !important;
  }
  #ast-hf-mobile-menu .menu-item a:hover,
  #ast-hf-mobile-menu .current-menu-item a { color: var(--bronze) !important; }

  /* Inner pages */
  .holi-page-hero { padding: 4.5rem 1.5rem 2.5rem !important; }
  .holi-page-title { font-size: clamp(2.25rem,10vw,3.5rem) !important; }
  .holi-page-grid { grid-template-columns: 1fr !important; }
  .holi-pillars, .holi-values { grid-template-columns: 1fr !important; }
  .holi-page-section { padding: 3rem 1.5rem !important; }

  /* Footer */
  .ast-footer-widgets-area .ast-footer-widget-area { grid-template-columns: 1fr 1fr !important; gap: 2rem !important; }
}

@media (max-width: 480px) {
  .holi-hero__headline { font-size: 2.6rem !important; }
  .ast-footer-widgets-area .ast-footer-widget-area { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }

/* ═══════════════════════════════════════════════════════
   CART ICON — header (desktop + mobile)
═══════════════════════════════════════════════════════ */
.ast-header-woo-cart,
.ast-header-woo-cart .astra-cart-drawer-trigger,
.ast-site-header-wrap .ast-header-woo-cart {
  display: flex !important;
  align-items: center !important;
  cursor: pointer !important;
}

/* Icon itself */
.ast-header-woo-cart .astra-cart-drawer-trigger svg,
.ast-header-woo-cart .astra-cart-drawer-trigger .ast-icon,
.ast-site-header-wrap .ast-cart-menu-wrap .astra-cart-drawer-trigger,
.ast-site-header-wrap .woocommerce-cart-link {
  color: var(--ink) !important;
  fill: var(--ink) !important;
}

/* Cart count badge */
.ast-header-woo-cart .count,
.ast-header-woo-cart .ast-cart-item-count,
.ast-cart-menu-wrap .count,
.woocommerce-cart-link .count {
  background: var(--green) !important;
  color: var(--white) !important;
  border-radius: 50% !important;
  font-family: var(--sans) !important;
  font-size: 0.6rem !important;
  font-weight: 600 !important;
  min-width: 18px !important;
  height: 18px !important;
  line-height: 18px !important;
  text-align: center !important;
  padding: 0 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Astra drawer cart panel */
.astra-cart-drawer {
  font-family: var(--sans) !important;
}
.astra-cart-drawer .widget_shopping_cart_content .cart_list li a:not(.remove) {
  font-family: var(--serif) !important;
  font-size: 1rem !important;
  font-style: italic !important;
  color: var(--ink) !important;
}
.astra-cart-drawer .woocommerce-Price-amount {
  font-family: var(--sans) !important;
  color: var(--ink-soft) !important;
}
.astra-cart-drawer .woocommerce-mini-cart__buttons .checkout {
  background: var(--green) !important;
  border-radius: 0 !important;
  font-family: var(--sans) !important;
  font-size: 0.68rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* Mobile header cart icon position */
.ast-header-break-point .ast-header-woo-cart {
  display: flex !important;
  align-items: center !important;
  order: 2 !important;
}
.ast-header-break-point .ast-mobile-menu-trigger-wrap {
  order: 3 !important;
}
.ast-header-break-point .site-branding {
  order: 1 !important;
}
/* ═══════════════════════════════════════════════════════
   MOBILE MENU — full-screen luxury overlay
═══════════════════════════════════════════════════════ */

/* Force the Astra mobile popup to be full-screen */
.ast-mobile-popup,
.ast-mobile-popup-inner,
#ast-hf-mobile-menu {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  background: var(--green-deep) !important;
  z-index: 9999 !important;
  overflow-y: auto !important;
  padding: 5rem 2.5rem 3rem !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  box-shadow: none !important;
  border: none !important;
}

/* Menu items — large editorial serif */
.ast-mobile-popup .ast-nav-menu .menu-item > a,
.ast-mobile-popup-inner .ast-nav-menu .menu-item > a,
#ast-hf-mobile-menu .ast-nav-menu .menu-item > a,
#ast-hf-mobile-menu .menu-item > a {
  font-family: var(--serif) !important;
  font-size: clamp(2.8rem, 9vw, 4.5rem) !important;
  font-style: italic !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,.85) !important;
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
  padding: 0.25rem 0 !important;
  display: block !important;
  background: none !important;
  border-bottom: none !important;
  transition: color var(--ease) !important;
}
.ast-mobile-popup .ast-nav-menu .menu-item > a:hover,
.ast-mobile-popup-inner .ast-nav-menu .menu-item > a:hover,
#ast-hf-mobile-menu .menu-item > a:hover,
#ast-hf-mobile-menu .current-menu-item > a {
  color: var(--bronze) !important;
  background: none !important;
}

/* Divider line between items */
.ast-mobile-popup .ast-nav-menu .menu-item,
.ast-mobile-popup-inner .ast-nav-menu .menu-item,
#ast-hf-mobile-menu .ast-nav-menu .menu-item {
  border-top: 1px solid rgba(255,255,255,.07) !important;
  padding: 0 !important;
  margin: 0 !important;
}
.ast-mobile-popup .ast-nav-menu .menu-item:last-child,
#ast-hf-mobile-menu .ast-nav-menu .menu-item:last-child {
  border-bottom: 1px solid rgba(255,255,255,.07) !important;
}

/* Branding footnote at bottom */
.ast-mobile-popup::after,
#ast-hf-mobile-menu::after {
  content: 'Holi Cosmetics · Puglia, Italy' !important;
  font-family: var(--sans) !important;
  font-size: 0.6rem !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.2) !important;
  position: absolute !important;
  bottom: 2rem !important;
  left: 2.5rem !important;
}

/* Close button / hamburger — make it white on dark bg */
.ast-mobile-popup .menu-toggle,
.ast-mobile-popup-inner .menu-toggle,
body.ast-header-break-point .ast-mobile-menu-open .menu-toggle,
.ast-header-break-point .main-header-bar-toggle .menu-toggle,
.astra-hfb-header .ast-mobile-menu-trigger,
.ast-hfb-mobile-header .ast-mobile-menu-trigger-wrap button,
.ast-header-break-point .ast-mobile-menu-trigger-wrap button {
  color: var(--white) !important;
}

/* ═══════════════════════════════════════════════════════
   SHOP — editorial single-product layout
═══════════════════════════════════════════════════════ */

/* When only 1 product — transform to editorial */
.woocommerce-page .holi-shop-editorial {
  display: block;
}
.woocommerce ul.products.holi-solo {
  display: block !important;
  grid-template-columns: unset !important;
}

/* Product image — gallery hero */
.woocommerce ul.products.holi-solo li.product {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 !important;
  background: var(--sand) !important;
  min-height: 80vh !important;
  width: 100% !important;
  max-width: var(--max) !important;
  margin: 0 auto !important;
}

.woocommerce ul.products.holi-solo li.product a img {
  aspect-ratio: unset !important;
  height: 100% !important;
  min-height: 60vh !important;
  object-position: center 20% !important;
}

.woocommerce ul.products.holi-solo li.product .woocommerce-loop-product__link {
  display: block !important;
  overflow: hidden !important;
}

/* Solo product — details column */
.woocommerce ul.products.holi-solo li.product .holi-solo-body {
  padding: clamp(3rem,6vw,6rem) clamp(2.5rem,5vw,5rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.woocommerce ul.products.holi-solo li.product .woocommerce-loop-product__title {
  font-size: clamp(2rem,4vw,4rem) !important;
  padding: 0 0 0.5rem !important;
}

.woocommerce ul.products.holi-solo li.product .price {
  font-size: 1rem !important;
  padding: 0 !important;
  margin-bottom: 1.5rem !important;
  display: block !important;
  border-bottom: 1px solid var(--rule) !important;
  padding-bottom: 1.5rem !important;
}

/* Mobile — stack */
@media (max-width: 768px) {
  .woocommerce ul.products.holi-solo li.product {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }
  .woocommerce ul.products.holi-solo li.product a img {
    min-height: 50vw !important;
    aspect-ratio: 4/3 !important;
    height: auto !important;
  }
  .woocommerce ul.products.holi-solo li.product .holi-solo-body {
    padding: 2rem 1.5rem !important;
  }
}

/* ═══════════════════════════════════════════════════════
   SHOP — editorial intro
═══════════════════════════════════════════════════════ */
.holi-shop-hero {
  text-align: center;
  padding: clamp(5rem,10vw,8rem) clamp(1.5rem,5vw,4rem) clamp(3rem,5vw,4rem);
  background: var(--sand);
  border-bottom: 1px solid var(--rule);
}

.holi-shop-title {
  font-family: var(--serif) !important;
  font-size: clamp(3.5rem,8vw,7rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--ink) !important;
  line-height: .95 !important;
  letter-spacing: -0.02em !important;
  margin: 0.75rem 0 1.25rem !important;
}
.holi-shop-title em { color: var(--bronze) !important; }

.holi-shop-subtitle {
  font-family: var(--sans);
  font-size: 0.88rem;
  color: var(--ink-soft);
  line-height: 1.8;
}

/* Solo product editorial body */
.holi-solo-desc {
  font-family: var(--sans) !important;
  font-size: 0.9rem !important;
  line-height: 1.85 !important;
  color: var(--ink-soft) !important;
  margin: 0 0 1.5rem !important;
}

.holi-solo-features {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 2rem !important;
}
.holi-solo-features li {
  font-family: var(--sans) !important;
  font-size: 0.78rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  color: var(--ink-soft) !important;
  padding: 0.5rem 0 !important;
  border-bottom: 1px solid var(--rule) !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
}
.holi-solo-features li::before {
  content: '' !important;
  width: 4px !important;
  height: 4px !important;
  border-radius: 50% !important;
  background: var(--bronze) !important;
  flex-shrink: 0 !important;
}

/* Make add-to-cart button visible always on solo */
.woocommerce ul.products.holi-solo li.product .button,
.woocommerce ul.products.holi-solo li.product a.button {
  opacity: 1 !important;
  position: static !important;
  transform: none !important;
  width: 100% !important;
  margin: 0 !important;
  display: block !important;
  text-align: center !important;
}

/* ═══════════════════════════════════════════════════════
   COMPLIANZ COOKIE BANNER
═══════════════════════════════════════════════════════ */

/* CSS variable overrides */
.cmplz-cookiebanner,
.cmplz-cookiebanner * {
  --cmplz-primary:            #2f4b33;
  --cmplz-primary-bg:         #2f4b33;
  --cmplz-secondary:          #c88f5d;
  --cmplz-btn-primary-color:  #ffffff;
  --cmplz-btn-secondary-color:#1a2b1c;
  --cmplz-text:               #3d4f3f;
  --cmplz-bg:                 #faf8f2;
  --cmplz-border-radius:      0px;
  font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
}

/* Banner wrapper */
.cmplz-cookiebanner {
  background: var(--white, #fff) !important;
  border: 1px solid #d8d0c4 !important;
  border-radius: 0 !important;
  box-shadow: 0 8px 40px rgba(26,43,28,.12) !important;
  font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
}

/* Heading */
.cmplz-cookiebanner .cmplz-header,
.cmplz-cookiebanner .cmplz-title {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-style: italic !important;
  font-weight: 400 !important;
  color: #1a2b1c !important;
  font-size: 1.4rem !important;
}

/* Body text */
.cmplz-cookiebanner .cmplz-body,
.cmplz-cookiebanner p,
.cmplz-cookiebanner .cmplz-message {
  font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
  font-size: 0.82rem !important;
  line-height: 1.75 !important;
  color: #3d4f3f !important;
}

/* Links */
.cmplz-cookiebanner a {
  color: #c88f5d !important;
  text-decoration: underline !important;
}
.cmplz-cookiebanner a:hover { color: #2f4b33 !important; }

/* All buttons base */
.cmplz-cookiebanner .cmplz-btn,
.cmplz-cookiebanner button {
  font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
  font-size: 0.65rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 10px 22px !important;
  height: auto !important;
  line-height: 1.4 !important;
  cursor: pointer !important;
  transition: background 240ms ease, color 240ms ease, border-color 240ms ease !important;
}

/* Accept / primary button */
.cmplz-cookiebanner .cmplz-accept,
.cmplz-cookiebanner .cmplz-btn-accept,
.cmplz-cookiebanner [class*="accept"] {
  background: #2f4b33 !important;
  color: #ffffff !important;
  border: 1px solid #2f4b33 !important;
}
.cmplz-cookiebanner .cmplz-accept:hover,
.cmplz-cookiebanner .cmplz-btn-accept:hover {
  background: #1e3121 !important;
  border-color: #1e3121 !important;
}

/* Deny / secondary button */
.cmplz-cookiebanner .cmplz-deny,
.cmplz-cookiebanner .cmplz-btn-deny,
.cmplz-cookiebanner [class*="deny"] {
  background: transparent !important;
  color: #2f4b33 !important;
  border: 1px solid #d8d0c4 !important;
}
.cmplz-cookiebanner .cmplz-deny:hover,
.cmplz-cookiebanner .cmplz-btn-deny:hover {
  border-color: #2f4b33 !important;
}

/* Manage preferences / settings link */
.cmplz-cookiebanner .cmplz-manage-preferences,
.cmplz-cookiebanner .cmplz-btn-manage {
  background: transparent !important;
  color: #3d4f3f !important;
  border: 1px solid transparent !important;
  text-decoration: underline !important;
  font-size: 0.62rem !important;
}

/* Category toggles */
.cmplz-cookiebanner .cmplz-category-header { color: #1a2b1c !important; font-weight: 500 !important; }
.cmplz-cookiebanner input[type="checkbox"]:checked + label,
.cmplz-cookiebanner .cmplz-toggle-checkbox:checked + .cmplz-toggle-label {
  background: #2f4b33 !important;
}
.cmplz-cookiebanner .cmplz-toggle-label { border-color: #d8d0c4 !important; }

/* Close / X button */
.cmplz-cookiebanner .cmplz-close {
  color: #3d4f3f !important;
  background: none !important;
  border: none !important;
}
.cmplz-cookiebanner .cmplz-close:hover { color: #1a2b1c !important; }

/* Complianz preferences dialog */
.cmplz-manage-consent-container,
.cmplz-manage-consent-container * { font-family: "Plus Jakarta Sans", system-ui, sans-serif !important; }
.cmplz-manage-consent-container .cmplz-header { color: #1a2b1c !important; }
.cmplz-manage-consent-container .cmplz-accept { background: #2f4b33 !important; color: #fff !important; border-radius: 0 !important; }

/* ═══════════════════════════════════════════════════════
   FIXES: feature copy height + newsletter + about us
═══════════════════════════════════════════════════════ */

/* Feature copy matches image height when image is 70% */
@media (min-width: 769px) {
  .holi-feature:has(.holi-feature__media--70) .holi-feature__copy {
    justify-content: center !important;
    height: 70% !important;
    align-self: center !important;
  }
}

/* Page hero compact variant (About Us) */
.holi-page-hero--compact {
  padding: clamp(3.5rem,6vw,5rem) clamp(1.5rem,5vw,4rem) !important;
  min-height: auto !important;
  background: var(--sand) !important;
}
.holi-page-hero--compact .holi-page-title {
  font-size: clamp(2.2rem,5vw,4rem) !important;
}

/* About Us: balanced grid */
.holi-page-grid--balanced {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: clamp(2rem,5vw,5rem) !important;
  align-items: center !important;
  max-width: var(--max) !important;
  margin: 0 auto !important;
  padding: clamp(3rem,6vw,5rem) clamp(1.5rem,5vw,4rem) !important;
}
@media (max-width: 768px) {
  .holi-page-grid--balanced { grid-template-columns: 1fr !important; }
}

/* Values row */
.holi-values-wrap {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 1px;
  background: var(--rule);
  border: 1px solid var(--rule);
  max-width: var(--max);
  margin: 0 auto;
}
.holi-value {
  background: var(--sand);
  padding: clamp(2rem,4vw,3rem) clamp(1.5rem,3vw,2rem);
  text-align: center;
}
.holi-value__number {
  display: block;
  font-family: var(--serif);
  font-size: clamp(3rem,5vw,5rem);
  font-style: italic;
  color: var(--bronze);
  line-height: 1;
  margin-bottom: 0.5rem;
}
.holi-value h3 {
  font-family: var(--sans) !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ink) !important;
  margin: 0 0 0.75rem !important;
}
.holi-value p {
  font-family: var(--sans);
  font-size: 0.82rem;
  color: var(--ink-soft);
  line-height: 1.75;
  margin: 0;
}
@media (max-width: 600px) {
  .holi-values-wrap { grid-template-columns: 1fr !important; }
}

/* Certifications row */
.holi-certs {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: clamp(1.5rem,4vw,3rem);
  max-width: var(--max);
  margin: 0 auto;
  padding: clamp(2rem,4vw,3rem) clamp(1.5rem,5vw,4rem);
}
.holi-cert {
  border-top: 2px solid var(--green);
  padding-top: 1.25rem;
}
.holi-cert h3 {
  font-family: var(--sans) !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--ink) !important;
  margin: 0 0 0.6rem !important;
}
.holi-cert p {
  font-family: var(--sans);
  font-size: 0.82rem;
  color: var(--ink-soft);
  line-height: 1.75;
  margin: 0;
}
@media (max-width: 600px) {
  .holi-certs { grid-template-columns: 1fr !important; }
}

/* Back to top */
.ast-scroll-to-top {
  background: var(--green) !important;
  color: var(--white) !important;
  border-color: var(--green) !important;
}
.ast-scroll-to-top:hover {
  background: var(--green-deep) !important;
  border-color: var(--green-deep) !important;
}

/* ═══════════════════════════════════════════════════════
   LANGUAGE SWITCHER
═══════════════════════════════════════════════════════ */
.holi-lang-switcher { display: flex; align-items: center; }

/* TranslatePress outputs a <ul> with <li> items */
.holi-lang-switcher .trp-language-switcher,
.holi-lang-switcher ul {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
}
.holi-lang-switcher li {
  margin: 0 !important;
  padding: 0 !important;
}
.holi-lang-switcher li + li::before {
  content: '·';
  color: rgba(255,255,255,.3);
  padding: 0 4px;
  font-size: 0.65rem;
}
.holi-lang-switcher a,
.holi-lang-switcher span {
  font-family: var(--sans) !important;
  font-size: 0.65rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.5) !important;
  text-decoration: none !important;
  transition: color .2s !important;
  padding: 0 2px !important;
  background: none !important;
}
.holi-lang-switcher .trp-ls-shortcode-current-language,
.holi-lang-switcher .current-language-switcher a,
.holi-lang-switcher li.current-language a {
  color: var(--white) !important;
}
.holi-lang-switcher a:hover { color: var(--white) !important; }

/* Hide flag images if any */
.holi-lang-switcher img { display: none !important; }

/* Mobile overlay version */
.holi-lang-switcher--mobile {
  margin-top: 1rem;
  justify-content: center;
}
.holi-lang-switcher--mobile a,
.holi-lang-switcher--mobile span {
  font-size: 0.75rem !important;
  color: rgba(197,217,193,.5) !important;
}
.holi-lang-switcher--mobile .trp-ls-shortcode-current-language a,
.holi-lang-switcher--mobile li.current-language a {
  color: rgba(197,217,193,.9) !important;
}

/* ═══════════════════════════════════════════════════════
   SHOP — Editorial list layout
═══════════════════════════════════════════════════════ */
.holi-shop-list {
  list-style: none !important;
  margin: 0 auto !important;
  padding: clamp(3rem,5vw,5rem) clamp(1.5rem,5vw,4rem) !important;
  max-width: var(--max) !important;
}
.holi-shop-item {
  border-bottom: 1px solid var(--rule);
}
.holi-shop-item:first-child { border-top: 1px solid var(--rule); }
.holi-shop-item__link {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 2rem !important;
  padding: 2rem 0 !important;
  text-decoration: none !important;
  transition: opacity .2s !important;
}
.holi-shop-item__link:hover { opacity: .6 !important; }
.holi-shop-item__left {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.holi-shop-item__num {
  font-family: var(--sans);
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: .14em;
  color: var(--bronze);
  flex-shrink: 0;
  width: 2rem;
}
.holi-shop-item__name {
  font-family: var(--serif) !important;
  font-size: clamp(1.4rem,2.5vw,2rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--ink) !important;
  margin: 0 0 0.3rem !important;
  line-height: 1.1 !important;
}
.holi-shop-item__excerpt {
  font-family: var(--sans);
  font-size: 0.82rem;
  color: var(--ink-soft);
  margin: 0;
  line-height: 1.5;
}
.holi-shop-item__right {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-shrink: 0;
}
.holi-shop-item__price {
  font-family: var(--sans) !important;
  font-size: 0.9rem !important;
  color: var(--ink) !important;
}
.holi-shop-item__arrow {
  font-size: 1.2rem;
  color: var(--bronze);
  transition: transform .2s;
}
.holi-shop-item__link:hover .holi-shop-item__arrow { transform: translateX(4px); }

@media (max-width: 600px) {
  .holi-shop-item__excerpt { display: none; }
  .holi-shop-item__link { padding: 1.5rem 0; }
}

/* ═══════════════════════════════════════════════════════
   SINGLE PRODUCT — content typography
═══════════════════════════════════════════════════════ */
.holi-product-content {
  font-family: var(--sans);
  font-size: 0.9rem;
  line-height: 1.9;
  color: var(--ink-soft);
  padding-top: 1.25rem;
  border-top: 1px solid var(--rule);
  margin-bottom: 2rem;
}
.holi-product-content p {
  margin: 0 0 1rem;
}
.holi-product-content p:last-child { margin-bottom: 0; }

/* Shop item thumbnail */
.holi-shop-item__thumb {
  width: 80px;
  height: 80px;
  flex-shrink: 0;
  overflow: hidden;
  background: var(--sand);
}
.holi-shop-item__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .4s ease;
}
.holi-shop-item__link:hover .holi-shop-item__thumb img {
  transform: scale(1.05);
}
@media (max-width: 600px) {
  .holi-shop-item__thumb { width: 60px; height: 60px; }
}

/* Remove express payment buttons (Stripe, PayPal) from product page */
.single-product #wc-stripe-payment-request-wrapper,
.single-product #wc-stripe-product-button-container,
.single-product .wc-stripe-payment-request-button,
.single-product .wcpay-payment-request-wrapper,
.single-product .ppcp-button-product,
.single-product .ppc-button-wrapper,
.single-product #paypal-button-container,
.single-product .woocommerce-PaymentBox,
.single-product .ast-single-product-payments,
.single-product #payment { display: none !important; }

.holi-hero__para {
  font-family: var(--sans) !important;
  font-size: 0.88rem !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,.6) !important;
  line-height: 1.85 !important;
  max-width: 480px !important;
  margin: 0 0 0 !important;
}
.holi-hero__para + .holi-hero__para {
  margin-top: 1rem !important;
}
.holi-hero__para:last-of-type {
  margin-bottom: 2rem !important;
}
.holi-feature__body strong {
  color: #fff !important;
  font-weight: 400 !important;
}

/* About Us — hero fixes */
.holi-page-hero {
  background: #f0ede6 !important;
}
.holi-page-title {
  color: #3d5240 !important;
}
.holi-page-hero .holi-eyebrow {
  color: #7a9a7e !important;
}
.holi-page-hero__lede {
  font-family: var(--sans) !important;
  font-size: clamp(1rem, 2vw, 1.4rem) !important;
  color: #5a7a5e !important;
  line-height: 1.7 !important;
  margin-top: 1.5rem !important;
  max-width: 560px !important;
}

/* MEDITERRANEAN/ESSENTIALITY/INNOVATION — half size */
.holi-value__number {
  font-size: clamp(1.2rem, 2vw, 2rem) !important;
}

/* ═══════════════════════════════════════════════════════
   ABOUT US — editorial full-bleed hero
═══════════════════════════════════════════════════════ */
.holi-about-hero {
  position: relative;
  width: 100%;
  min-height: 85vh;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: var(--green-deep);
  margin-top: -64px;
}
.holi-about-hero__image-wrap {
  position: absolute;
  inset: 0;
}
.holi-about-hero__image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
  filter: brightness(.75);
}
.holi-about-hero__image-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(12,20,14,.92) 0%,
    rgba(12,20,14,.4) 45%,
    rgba(12,20,14,.15) 100%
  );
}
.holi-about-hero__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: var(--max);
  margin: 0 auto;
  padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,5rem);
}
.holi-about-hero__copy {
  max-width: 680px;
}
.holi-eyebrow--light {
  color: var(--bronze) !important;
  margin-bottom: 1.5rem;
  display: block;
}
.holi-about-hero__title {
  font-family: var(--serif) !important;
  font-size: clamp(2.8rem,6.5vw,7.5rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--white) !important;
  line-height: 1.0 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 2rem !important;
}
.holi-about-hero__title em {
  color: var(--bronze) !important;
}
.holi-about-hero__rule {
  width: 48px;
  height: 1px;
  background: var(--bronze);
  margin-bottom: 1.5rem;
  opacity: .7;
}
.holi-about-hero__lede {
  font-family: var(--sans);
  font-size: clamp(0.95rem, 1.5vw, 1.15rem);
  font-weight: 300;
  color: rgba(255,255,255,.8);
  line-height: 1.75;
  margin: 0 0 0.75rem;
  max-width: 480px;
}
.holi-about-hero__sub {
  font-family: var(--sans);
  font-size: 0.68rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.35);
  margin: 0;
}
@media (max-width: 768px) {
  .holi-about-hero { min-height: 75vh; margin-top: -58px; }
  .holi-about-hero__title { font-size: clamp(2.2rem,10vw,3.5rem) !important; }
}
