/** Shopify CDN: Minification failed

Line 8578:0 Unexpected "<"
Line 8583:35 Unexpected "{"
Line 8583:47 Expected ":"
Line 8583:56 Unexpected "<"
Line 8584:9 Expected identifier but found "%"
Line 8584:48 Unexpected "<"
Line 8584:75 Unexpected "{"
Line 8584:87 Expected ":"
Line 8584:102 Unexpected "<"
Line 8584:109 Expected identifier but found "%"
... and 51 more hidden warnings

**/
/* =========================================================
   Ashmira Botanica — Dark Editorial Restyle Layer
   Fixed: removed broad title/heading wildcard conflicts and softened page hero titles
   File: assets/ashmira-dark-restyle.css
   Consolidated replacement
   ========================================================= */

/* =========================================================
   01. Design Tokens
   ========================================================= */

:root {
  --ab-bg: #202526;
  --ab-bg-deep: #171b1c;
  --ab-bg-soft: #252b2c;

  --ab-cream: #f4eee4;
  --ab-cream-soft: #f4f1ea;
  --ab-cream-light: #f7f5ef;

  --ab-black: #111111;
  --ab-text-dark: #171717;
  --ab-muted: #c9c0b5;
  --ab-muted-dark: #8f8980;
  --ab-brown-grey: #5e574f;

  --ab-line: rgba(244, 238, 228, 0.16);
  --ab-line-dark: rgba(23, 23, 23, 0.18);

  --ab-page-width: 1180px;
  --ab-wide-width: 1360px;
  --ab-product-width: 1240px;
  --ab-gutter: clamp(18px, 4vw, 56px);
}

/* =========================================================
   02. Global Width / Base Structure
   ========================================================= */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

body {
  background: var(--ab-bg);
  color: var(--ab-cream);
}

main,
#MainContent,
.shopify-section {
  width: 100%;
  max-width: none;
  background: var(--ab-bg);
}

.shopify-section {
  margin: 0;
}

#MainContent,
.shopify-section,
.page-width,
.container,
.content-container,
.section,
.section-template,
.grid,
.grid__item,
.card,
.card__content,
.card__information,
.image-with-text__grid,
.image-with-text__content,
.multicolumn-list,
.multicolumn-card,
.rich-text__blocks,
.banner__box {
  min-width: 0;
}

.page-width,
.container,
.content-container,
.page-width-desktop {
  width: min(100% - calc(var(--ab-gutter) * 2), var(--ab-page-width));
  max-width: var(--ab-page-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}

.image-with-text .page-width,
.multicolumn .page-width,
.blog .page-width,
.main-blog .page-width,
.article-template .page-width,
.footer .page-width,
.site-footer .page-width,
.footer__content-top,
.footer__content-bottom,
.ab-editorial-grid__inner,
.ab-founder__inner,
.ab-newsletter__inner {
  width: min(100% - calc(var(--ab-gutter) * 2), var(--ab-wide-width));
  max-width: var(--ab-wide-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}

.rich-text__wrapper,
.rich-text__blocks,
.ab-intro__inner,
.ab-section-intro,
.section-header {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.ab-full-bleed,
.banner,
.image-banner,
.hero,
.ab-hero,
.slideshow,
.video-section {
  width: 100%;
  max-width: none;
}

.banner .page-width,
.image-banner .page-width,
.hero .page-width,
.ab-hero .page-width,
.slideshow .page-width,
.video-section .page-width {
  width: 100%;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.banner__content,
.hero__content,
.ab-hero__content,
.slideshow__text-wrapper {
  width: min(100% - calc(var(--ab-gutter) * 2), var(--ab-wide-width));
  max-width: var(--ab-wide-width);
  margin-left: auto;
  margin-right: auto;
}

img,
video,
iframe {
  max-width: 100%;
}

.media,
.banner__media,
.image-with-text__media,
.slideshow__media,
.multicolumn-card__image-wrapper {
  overflow: hidden;
}

.media img,
.banner__media img,
.image-with-text__media img,
.slideshow__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.grid,
.product-grid,
.multicolumn-list,
.slider,
.slider--tablet,
.slider--desktop {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.shopify-section,
.section,
.page-width {
  overflow: visible;
}

@media screen and (min-width: 990px) {
  .page-width,
  .container,
  .content-container,
  .page-width-desktop {
    width: 100%;
    max-width: var(--ab-page-width);
    margin-left: auto;
    margin-right: auto;
    padding-left: 48px;
    padding-right: 48px;
  }

  .image-with-text .page-width,
  .multicolumn .page-width,
  .blog .page-width,
  .main-blog .page-width,
  .article-template .page-width,
  .footer .page-width,
  .site-footer .page-width,
  .footer__content-top,
  .footer__content-bottom,
  .ab-editorial-grid__inner,
  .ab-founder__inner,
  .ab-newsletter__inner {
    width: 100%;
    max-width: var(--ab-wide-width);
    padding-left: 56px;
    padding-right: 56px;
  }

  .featured-collection .page-width,
  .collection .page-width,
  .shopify-section:has(.product-grid) .page-width,
  .shopify-section:has(.grid.product-grid) .page-width,
  .shopify-section:has(.product-card-wrapper) .page-width,
  .ab-products__inner,
  .ab-product-showcase__inner,
  .ab-bestsellers__inner {
    width: 100% !important;
    max-width: var(--ab-product-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 56px !important;
    padding-right: 56px !important;
  }
}

@media screen and (min-width: 1400px) {
  .page-width,
  .container,
  .content-container,
  .page-width-desktop,
  .image-with-text .page-width,
  .multicolumn .page-width,
  .blog .page-width,
  .main-blog .page-width,
  .article-template .page-width,
  .footer .page-width,
  .site-footer .page-width,
  .footer__content-top,
  .footer__content-bottom,
  .featured-collection .page-width,
  .collection .page-width,
  .shopify-section:has(.product-grid) .page-width,
  .shopify-section:has(.grid.product-grid) .page-width,
  .shopify-section:has(.product-card-wrapper) .page-width,
  .ab-editorial-grid__inner,
  .ab-founder__inner,
  .ab-newsletter__inner,
  .ab-products__inner,
  .ab-product-showcase__inner,
  .ab-bestsellers__inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* =========================================================
   03. Typography / Buttons
   ========================================================= */

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--ab-cream);
  font-weight: 100;
  letter-spacing: 0.04em;
  overflow-wrap: anywhere;
  word-break: normal;
}

p {
  color: var(--ab-muted);
  line-height: 1.8;
  overflow-wrap: anywhere;
  word-break: normal;
}

a {
  color: inherit;
}

.button,
button,
.shopify-payment-button__button,
.btn {
  border-radius: 999px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-size: 11px;
  padding: 13px 26px;
  border: 1px solid var(--ab-line);
  background: black;
  color: var(--ab-cream);
  transition: all 0.25s ease;
}

.button:hover,
button:hover,
.btn:hover {
  background: var(--ab-cream);
  color: var(--ab-black);
  border-color: var(--ab-cream);
}

/* =========================================================
   04. Header
   ========================================================= */

.header-wrapper,
.site-header,
.shopify-section-header,
header.header {
  background: rgba(32, 37, 38, 0.97) !important;
  color: var(--ab-cream);
  border-bottom: 1px solid rgba(244, 238, 228, 0.08);
}

.header,
.site-header__inner {
  min-height: 58px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.header__heading-logo,
.site-header__logo img,
.header-logo-image {
  max-height: 92px;
  width: auto;
}

.header__menu-item,
.list-menu__item,
.site-nav__link,
.header-link {
  color: var(--ab-cream) !important;
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.header__icon,
.header__icon .icon,
.site-header svg {
  color: var(--ab-cream);
  fill: currentColor;
}

/* =========================================================
   05. Homepage Hero
   ========================================================= */

#shopify-section-template--29757912187217__hero,
.hero-minimal-shell {
  width: 100% !important;
  max-width: none !important;
  background: #202526 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.hero-minimal-shell > .page-width,
#shopify-section-template--29757912187217__hero .page-width {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.hero-minimal {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  min-height: calc(100vh - 132px) !important;
  height: calc(100vh - 132px) !important;
  margin: 0 !important;
  background: #202526 !important;
  overflow: hidden !important;
}

.hero-minimal__media,
.hero-minimal__media.media,
.media-carousel--hero,
.media-carousel__track,
.media-carousel__slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: inherit !important;
  max-width: none !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.hero-minimal__media img,
.media-carousel--hero img,
.media-carousel__slide img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.hero-minimal::before,
.hero-minimal::after,
.hero-minimal__media::before,
.hero-minimal__media::after {
  display: none !important;
}

.hero-minimal__content {
  position: relative !important;
  z-index: 3 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding-left: clamp(34px, 5vw, 72px) !important;
  padding-right: clamp(34px, 5vw, 72px) !important;
  padding-top: 8vh !important;
  color: #202526 !important;
  background: transparent !important;
}

.hero-minimal__copy {
  width: 100% !important;
  max-width: 430px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  background: transparent !important;
}

.hero-minimal__copy .eyebrow {
  display: none !important;
}

.hero-minimal__title {
  color: #202526 !important;
  font-size: clamp(58px, 6vw, 92px) !important;
  line-height: 0.9 !important;
  letter-spacing: -0.055em !important;
  text-transform: none !important;
  font-weight: 100 !important;
  margin: 0 0 24px !important;
  max-width: 430px !important;
}

.hero-minimal__text,
.hero-minimal__text p {
  color: #202526 !important;
  font-size: clamp(17px, 1.4vw, 22px) !important;
  line-height: 1.55 !important;
  letter-spacing: 0.01em !important;
  max-width: 420px !important;
  margin: 0 !important;
}

.hero-minimal__actions {
  display: none !important;
}

/* Fallback banner styling */
.banner,
.hero,
.ab-hero,
.image-banner {
  background: var(--ab-bg);
  min-height: 560px;
}

.banner__media,
.hero__media,
.ab-hero__media {
  min-height: 560px;
}

.banner__box,
.hero__content,
.ab-hero__content {
  background: transparent !important;
  color: var(--ab-bg-deep);
}

/* =========================================================
   06. Intro / General Sections
   ========================================================= */

.rich-text,
.multicolumn,
.image-with-text,
.blog,
.main-blog,
.ab-section {
  padding-top: clamp(42px, 5vw, 82px);
  padding-bottom: clamp(42px, 5vw, 82px);
}

.ab-intro,
.rich-text,
.rich-text__wrapper {
  background: var(--ab-bg);
  color: var(--ab-cream);
}

.rich-text,
.ab-intro {
  padding-top: clamp(52px, 6vw, 86px);
  padding-bottom: clamp(52px, 6vw, 86px);
}

.rich-text__heading,
.ab-intro h2 {
  color: var(--ab-cream);
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  margin-bottom: 24px;
}

.rich-text__text,
.rich-text__text p,
.ab-intro p {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
  color: var(--ab-muted);
  font-size: 14px;
  line-height: 1.9;
}

/* =========================================================
   07. Homepage Product / Tabbed Collection Section
   ========================================================= */

.featured-collection,
.collection,
.ab-products,
.ab-product-showcase,
.ab-bestsellers,
.home-section--featured,
.shopify-section:has(.product-grid),
.shopify-section:has(.grid.product-grid),
.shopify-section:has(.product-card-wrapper) {
  background: var(--ab-cream-soft) !important;
  color: var(--ab-text-dark) !important;

}

.featured-collection .page-width,
.collection .page-width,
.home-section--featured .page-width,
.shopify-section:has(.product-grid) .page-width,
.shopify-section:has(.grid.product-grid) .page-width,
.shopify-section:has(.product-card-wrapper) .page-width,
.ab-products__inner,
.ab-product-showcase__inner,
.ab-bestsellers__inner {
  width: min(100% - 80px, var(--ab-product-width)) !important;
  max-width: var(--ab-product-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Featured product section header */
.home-section--featured .home-section__intro,
.home-section--featured .home-featured-heading {
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 auto 34px !important;
  padding: 0 !important;
  text-align: center !important;
}

.home-section--featured .home-featured-heading__eyebrow,
.home-section--featured .section-intro .eyebrow {
  display: block !important;
  color: #6e675f !important;
  font-size: clamp(22px, 2.6vw, 30px) !important;
  line-height: 1.25 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  font-weight: 100 !important;
  margin: 0 0 16px !important;
}

.home-section--featured .home-featured-heading__title,
.home-section--featured .section-title {
  color: #171717 !important;
  font-size: clamp(24px, 3vw, 42px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  text-transform: none !important;
  font-weight: 100 !important;
  margin: 0 auto 16px !important;
  max-width: 680px !important;
}

.home-section--featured .home-featured-heading__copy,
.home-section--featured .section-copy,
.home-section--featured .home-featured-heading__copy p,
.home-section--featured .section-copy p {
  color: #5e574f !important;
  font-size: 14px !important;
  line-height: 1.8 !important;
  letter-spacing: 0.01em !important;
  max-width: 560px !important;
  margin: 0 auto !important;
}

.home-section--featured .tabbed-section-nav {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 auto 34px !important;
  padding: 0 !important;
}

.home-section--featured .tab-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 9px 18px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(23, 23, 23, 0.18) !important;
  background: transparent !important;
  color: #5e574f !important;
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}

.home-section--featured .tab-button:hover,
.home-section--featured .tab-button.is-active {
  background: #171717 !important;
  color: #f4f1ea !important;
  border-color: #171717 !important;
}

.product-grid,
.grid.product-grid,
.ab-products-grid,
.ab-product-grid,
.ab-bestsellers-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px 34px !important;
  align-items: start !important;
  justify-content: center !important;
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
}

.product-grid .grid__item,
.grid.product-grid .grid__item {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

.product-card-wrapper,
.card-wrapper,
.ab-product-card,
.ab-product,
.product-card {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: center !important;
}

.product-card-wrapper .card,
.card-wrapper .card,
.product-card-wrapper .card__inner,
.card-wrapper .card__inner,
.product-card-wrapper .card__content,
.card-wrapper .card__content,
.product-card-wrapper .card__information,
.card-wrapper .card__information,
.product-card-wrapper .card-information,
.card-wrapper .card-information,
.product-card__content {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Homepage product image background blending */
.home-section--featured,
.home-section--featured .collection-tab-panel,
.home-section--featured .product-grid,
.home-section--featured .product-card,
.home-section--featured .product-card__content,
.home-section--featured .product-card .media,
.home-section--featured .product-card .media--square,
.home-section--featured .product-card a.media {
  background: #f4f1ea !important;
}

.product-card-wrapper .card__inner,
.card-wrapper .card__inner,
.ab-product-card__image,
.ab-product__image,
.ab-product-image,
.home-section--featured .product-card .media {
  max-width: 180px !important;
  margin: 0 auto !important;
  aspect-ratio: 1 / 1.12 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.product-card-wrapper .card__media,
.card-wrapper .card__media,
.product-card-wrapper .media,
.card-wrapper .media,
.ab-product-card__media,
.ab-product__media {
  background: transparent !important;
  border: 0 !important;
  overflow: visible !important;
}

.product-card-wrapper img,
.card-wrapper img,
.product-card-wrapper .card__media img,
.card-wrapper .card__media img,
.ab-product-card img,
.ab-product img,
.home-section--featured .product-card .media img,
.home-section--featured .product-card img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #f4f1ea !important;
  mix-blend-mode: multiply !important;
  transition: transform 0.35s ease;
}

.home-section--featured .product-card img[src*="ashmira-product-scene"] {
  mix-blend-mode: normal !important;
}

.product-card-wrapper:hover img,
.card-wrapper:hover img,
.ab-product-card:hover img,
.ab-product:hover img,
.home-section--featured .product-card:hover img {
  transform: scale(1.035);
}

.product-card-wrapper .card__information,
.card-wrapper .card__information,
.product-card-wrapper .card-information,
.card-wrapper .card-information,
.ab-product-card__content,
.ab-product__content,
.product-card__content {
  text-align: center !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 4px 0 !important;
}

.product-card-wrapper .card__heading,
.product-card-wrapper .card__heading a,
.card-wrapper .card__heading,
.card-wrapper .card__heading a,
.ab-product-card__title,
.ab-product__title,
.ab-product-card a,
.ab-product a,
.product-card__title,
.product-card__title a {
  color: var(--ab-text-dark) !important;
  font-size: 10px !important;
  line-height: 1.45 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  font-weight: 100 !important;
  text-decoration: none !important;
  text-align: center !important;
  display: block !important;
  width: 100% !important;
}

.product-card-wrapper .price,
.card-wrapper .price,
.price,
.price__container,
.price-item,
.card-information .price,
.ab-product-card__price,
.ab-product__price,
.home-section--featured .price {
  color: var(--ab-brown-grey) !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.08em !important;
  margin-top: 5px !important;
  text-align: center !important;
  justify-content: center !important;
}

.price__container,
.price__regular,
.price__sale,
.home-section--featured .price {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.home-section--featured .price__compare {
  opacity: 0.55 !important;
  text-decoration: line-through !important;
}

/* Hide noisy extras, but never hide the custom Shop Now button */
.vendor,
.caption-with-letter-spacing,
.card__badge,
.badge,
.quick-add,
.quick-add__submit,
.product-form,
.card-information .rating,
.rating,
.spr-badge,
.product-card-wrapper .button:not(.ab-product-shop-now),
.card-wrapper .button:not(.ab-product-shop-now),
.product-card-wrapper .card__content .button:not(.ab-product-shop-now),
.card-wrapper .card__content .button:not(.ab-product-shop-now) {
  display: none !important;
}

.product-card-wrapper .media img + img,
.card-wrapper .media img + img,
.card__media img + img {
  display: none !important;
}

.ab-product-shop-now,
.product-card-wrapper .ab-product-shop-now,
.card-wrapper .ab-product-shop-now,
.home-section--featured .ab-product-shop-now {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 14px !important;
  padding: 10px 22px !important;
  min-height: 36px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(23, 23, 23, 0.28) !important;
  background: transparent !important;
  color: #171717 !important;
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.ab-product-shop-now:hover,
.product-card-wrapper .ab-product-shop-now:hover,
.card-wrapper .ab-product-shop-now:hover,
.home-section--featured .ab-product-shop-now:hover {
  background: #171717 !important;
  color: #f4f1ea !important;
  border-color: #171717 !important;
}

/* =========================================================
   08. Image With Text / Editorial Cards
   ========================================================= */

.image-with-text,
.ab-split,
.ab-launch {
  background: var(--ab-bg);
  width: 100%;
  max-width: none;
}

.image-with-text__grid {
  gap: 0;
  background: var(--ab-bg-soft);
  width: 100%;
  max-width: 100%;
  overflow: visible;
}

.image-with-text__media {
  min-height: 460px;
}

.image-with-text__content {
  background: var(--ab-bg-soft);
  color: var(--ab-cream);
  padding: clamp(36px, 5vw, 72px);
  width: 100%;
  max-width: none;
  overflow: visible;
}

.image-with-text__heading {
  color: var(--ab-cream);
  font-size: clamp(22px, 3vw, 42px);
  line-height: 1.05;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.image-with-text__text,
.image-with-text__text p {
  color: var(--ab-muted);
  font-size: 14px;
  line-height: 1.8;
}

@media screen and (min-width: 990px) {
  .image-with-text__grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}

.multicolumn {
  background: var(--ab-bg);
  width: 100%;
  max-width: none;
}

.multicolumn-list {
  gap: 28px;
  width: 100%;
  max-width: 100%;
}

.multicolumn-card,
.ab-card,
.card--editorial {
  background: transparent;
  color: var(--ab-cream);
}

.multicolumn-card__image-wrapper,
.ab-card__image {
  margin: 0 0 24px;
  overflow: hidden;
}

.multicolumn-card__image-wrapper img,
.ab-card__image img {
  aspect-ratio: 1 / 0.78;
  object-fit: cover;
}

.multicolumn-card img,
.ab-card img {
  transition: transform 0.5s ease;
}

.multicolumn-card:hover img,
.ab-card:hover img {
  transform: scale(1.04);
}

.multicolumn-card__info {
  padding: 0;
  text-align: center;
  width: 100%;
  max-width: 100%;
  overflow: visible;
}

.multicolumn-card__info h3,
.ab-card h3 {
  color: var(--ab-cream);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.multicolumn-card__info p,
.ab-card p {
  color: var(--ab-muted);
  font-size: 13px;
  line-height: 1.7;
}

/* =========================================================
   09. Founder Story
   ========================================================= */

.founders-story-section,
.section-shell.founders-story-section,
.founders-story-section.section-shell,
.shopify-section:has(.founders-story-section) {
  width: 100% !important;
  max-width: none !important;
  background: #202526 !important;
  color: #f4eee4 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  padding-bottom: clamp(54px, 7vw, 96px) !important;
  overflow: hidden !important;
}

.founders-story-section .founders-story-width,
.founders-story-section .page-width {
  width: 100% !important;
  max-width: 1360px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-top: clamp(54px, 7vw, 96px) !important;
  padding-left: clamp(24px, 5vw, 72px) !important;
  padding-right: clamp(24px, 5vw, 72px) !important;
}

.founders-story-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr) !important;
  gap: clamp(38px, 6vw, 88px) !important;
  align-items: center !important;
  width: 100% !important;
  max-width: none !important;
  background: #202526 !important;
}

.founders-story-media-wrap,
.founders-story-media {
  width: 100% !important;
  max-width: none !important;
  background: #202526 !important;
}

.founders-story-media {
  min-height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.founders-story-media img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 720px !important;
  object-fit: contain !important;
  object-position: center !important;
  background: transparent !important;
}

.founders-story-copy {
  width: 100% !important;
  max-width: 560px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 !important;
  text-align: left !important;
  background: transparent !important;
}

.founders-story-eyebrow,
.founders-story-copy .eyebrow {
  color: #c8beb2 !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.26em !important;
  text-transform: uppercase !important;
  font-weight: 100 !important;
  margin: 0 0 22px !important;
}

.founders-story-title {
  color: #f4eee4 !important;
  font-size: clamp(42px, 5.6vw, 76px) !important;
  line-height: 0.95 !important;
  letter-spacing: -0.045em !important;
  text-transform: none !important;
  font-weight: 100 !important;
  margin: 0 0 28px !important;
  max-width: 560px !important;
}

.founders-story-text {
  max-width: 520px !important;
}

.founders-story-text,
.founders-story-text p {
  color: #c9c0b5 !important;
  font-size: 14px !important;
  line-height: 1.9 !important;
  letter-spacing: 0.01em !important;
}

.founders-story-text p {
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

.founders-story-actions {
  margin-top: 30px !important;
}

.founders-story-button,
.founders-story-actions .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  color: #f4eee4 !important;
  border: 1px solid rgba(244, 238, 228, 0.32) !important;
  border-radius: 999px !important;
  padding: 12px 28px !important;
  min-height: 40px !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: 0.17em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.founders-story-button:hover,
.founders-story-actions .button:hover {
  background: #f4eee4 !important;
  color: #202526 !important;
  border-color: #f4eee4 !important;
}

/* =========================================================
   10. Promo Pair
   ========================================================= */

.ab-promo-pair {
  width: 100% !important;
  max-width: none !important;
  background: #202526 !important;
  padding-top: clamp(54px, 7vw, 96px) !important;
  padding-bottom: clamp(54px, 7vw, 96px) !important;
  margin: 0 !important;
}

.ab-promo-pair__inner {
  width: 100% !important;
  max-width: 1460px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(24px, 5vw, 72px) !important;
  padding-right: clamp(24px, 5vw, 72px) !important;
}

.ab-promo-pair__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 28px) !important;
  align-items: stretch !important;
}

.ab-promo-pair__panel {
  position: relative !important;
  display: flex !important;
  min-height: clamp(360px, 42vw, 620px) !important;
  overflow: hidden !important;
  text-decoration: none !important;
  color: #f4eee4 !important;
  background: #1d2223 !important;
}

.ab-promo-pair__panel--image img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform 0.65s ease !important;
}

.ab-promo-pair__panel--image:hover img {
  transform: scale(1.035) !important;
}

.ab-promo-pair__panel--image::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(90deg, rgba(18,20,20,0.42) 0%, rgba(18,20,20,0.18) 48%, rgba(18,20,20,0.16) 100%) !important;
  pointer-events: none !important;
}

.ab-promo-pair__overlay {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  min-height: inherit !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  padding: clamp(34px, 5vw, 74px) !important;
}

.ab-promo-pair__overlay h2,
.ab-promo-pair__text-content h2 {
  color: #f4eee4 !important;
  font-size: clamp(24px, 2.8vw, 42px) !important;
  line-height: 1.15 !important;
  letter-spacing: 0.34em !important;
  text-transform: uppercase !important;
  font-weight: 100 !important;
  margin: 0 !important;
}

.ab-promo-pair__overlay p {
  color: #d5cdc1 !important;
  font-size: clamp(11px, 1vw, 15px) !important;
  line-height: 1.5 !important;
  letter-spacing: 0.34em !important;
  text-transform: uppercase !important;
  font-weight: 100 !important;
  margin: 0 !important;
}

.ab-promo-pair__line {
  display: block !important;
  width: 104px !important;
  height: 1px !important;
  background: rgba(244, 238, 228, 0.5) !important;
  margin: 26px 0 !important;
}

.ab-promo-pair__panel--text {
  align-items: center !important;
  justify-content: center !important;
  background: #1d2223 !important;
}

.ab-promo-pair__text-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: clamp(34px, 5vw, 74px) !important;
}

.ab-promo-pair__logo {
  display: block !important;
  width: clamp(58px, 6vw, 92px) !important;
  height: auto !important;
  max-height: 92px !important;
  object-fit: contain !important;
  margin-bottom: 38px !important;
  opacity: 0.82 !important;
  filter: grayscale(1) brightness(1.75) !important;
}

/* =========================================================
   11. Collection List / Editorial Navigation
   ========================================================= */

.collection-list,
.collection-list-wrapper,
.collection-list-section,
.home-section--collections,
.home-section--collection-list,
.shopify-section:has(.collection-list),
.shopify-section:has(.collection-list-wrapper) {
  background: #202526 !important;
  color: #f4eee4 !important;
  padding-top: clamp(54px, 7vw, 96px) !important;
  padding-bottom: clamp(58px, 8vw, 110px) !important;
}

.collection-list-wrapper .page-width,
.collection-list-section .page-width,
.home-section--collections .page-width,
.home-section--collection-list .page-width,
.shopify-section:has(.collection-list) .page-width,
.shopify-section:has(.collection-list-wrapper) .page-width {
  width: 100% !important;
  max-width: 1460px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(24px, 5vw, 72px) !important;
  padding-right: clamp(24px, 5vw, 72px) !important;
}

.collection-list-title,
.collection-list-wrapper .title-wrapper,
.collection-list-wrapper .title-wrapper-with-link {
  display: none !important;
}

.collection-list,
.collection-list.grid,
.collection-list__grid,
.home-collection-list-grid,
.home-section--collection-list .grid,
.home-section--collections .grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(20px, 2vw, 28px) !important;
  align-items: start !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.collection-list .grid__item,
.collection-list__item,
.home-section--collection-list .grid__item,
.home-section--collections .grid__item {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: 0 !important;
}

.collection-card,
.card--collection,
.collection-list .card,
.collection-list__item .card,
.home-section--collection-list .card,
.home-section--collections .card {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: center !important;
  color: #f4eee4 !important;
}

.collection-card .media,
.card--collection .media,
.collection-list .card__media,
.collection-list__item .card__media,
.collection-list__item .media,
.home-section--collection-list .card__media,
.home-section--collection-list .media,
.home-section--collections .card__media,
.home-section--collections .media {
  width: 100% !important;
  aspect-ratio: 1.55 / 1 !important;
  background: transparent !important;
  overflow: hidden !important;
  margin: 0 0 30px !important;
}

.collection-card img,
.card--collection img,
.collection-list .card__media img,
.collection-list__item img,
.home-section--collection-list img,
.home-section--collections img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform 0.55s ease, opacity 0.35s ease !important;
}

.collection-card:hover img,
.card--collection:hover img,
.collection-list__item:hover img,
.home-section--collection-list .grid__item:hover img,
.home-section--collections .grid__item:hover img {
  transform: scale(1.035) !important;
  opacity: 0.94 !important;
}

.collection-card .card__content,
.card--collection .card__content,
.collection-list .card__content,
.collection-list__item .card__content,
.collection-list__item .card__information,
.home-section--collection-list .card__content,
.home-section--collection-list .card__information,
.home-section--collections .card__content,
.home-section--collections .card__information {
  background: transparent !important;
  padding: 0 !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.collection-list .card__heading,
.collection-list .card__heading a,
.collection-list__item .card__heading,
.collection-list__item .card__heading a,
.collection-list__item h3,
.collection-list__item h3 a,
.home-section--collection-list .card__heading,
.home-section--collection-list .card__heading a,
.home-section--collection-list h3,
.home-section--collection-list h3 a,
.home-section--collections .card__heading,
.home-section--collections .card__heading a,
.home-section--collections h3,
.home-section--collections h3 a {
  color: #f4eee4 !important;
  font-size: clamp(17px, 1.55vw, 25px) !important;
  line-height: 1.25 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  font-weight: 100 !important;
  text-align: center !important;
  text-decoration: none !important;
  margin: 0 0 14px !important;
}

.collection-list__item p,
.collection-list .card__caption,
.collection-list .card__description,
.collection-list__item .card__caption,
.collection-list__item .card__description,
.home-section--collection-list p,
.home-section--collection-list .card__caption,
.home-section--collection-list .card__description,
.home-section--collections p,
.home-section--collections .card__caption,
.home-section--collections .card__description {
  color: #d5cdc1 !important;
  font-size: clamp(10px, 0.9vw, 14px) !important;
  line-height: 1.55 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  text-align: center !important;
  margin: 0 auto 20px !important;
  max-width: 420px !important;
}

.collection-list__item .link,
.collection-list__item .button,
.collection-list .card__information .link,
.home-section--collection-list .link,
.home-section--collection-list .button,
.home-section--collections .link,
.home-section--collections .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin-top: 2px !important;
  border: 0 !important;
  background: transparent !important;
  color: #d8d0c4 !important;
  font-size: 0 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.collection-list__item .link::after,
.collection-list__item .button::after,
.collection-list .card__information .link::after,
.home-section--collection-list .link::after,
.home-section--collection-list .button::after,
.home-section--collections .link::after,
.home-section--collections .button::after {
  content: "→" !important;
  display: block !important;
  color: #d8d0c4 !important;
  font-size: 24px !important;
  line-height: 1 !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
  transition: transform 0.25s ease, color 0.25s ease !important;
}

.collection-list__item:hover .link::after,
.collection-list__item:hover .button::after,
.home-section--collection-list .grid__item:hover .link::after,
.home-section--collection-list .grid__item:hover .button::after,
.home-section--collections .grid__item:hover .link::after,
.home-section--collections .grid__item:hover .button::after {
  transform: translateX(5px) !important;
  color: #f4eee4 !important;
}

.collection-list .icon-wrap,
.collection-list .icon-arrow,
.collection-list svg.icon,
.home-section--collection-list .icon-wrap,
.home-section--collection-list .icon-arrow,
.home-section--collections .icon-wrap,
.home-section--collections .icon-arrow {
  display: none !important;
}

/* =========================================================
   12. Brand Proof Stack + Ticker
   ========================================================= */

#shopify-section-template--29757912187217__proof,
.brand-proof-shell {
  background: #202526 !important;
  color: #f4eee4 !important;
  --proof-bg: #202526 !important;
  --proof-text: #f4eee4 !important;
  --proof-muted: #c9c0b5 !important;
  --proof-line: rgba(244, 238, 228, 0.16) !important;
  --proof-button-bg: transparent !important;
  --proof-button-text: #f4eee4 !important;
}

.brand-proof-shell {
  width: 100% !important;
  max-width: none !important;
  padding-top: clamp(56px, 7vw, 96px) !important;
  padding-bottom: clamp(42px, 6vw, 78px) !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.brand-proof-panel {
  width: 100% !important;
  max-width: 1460px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(24px, 5vw, 72px) !important;
  padding-right: clamp(24px, 5vw, 72px) !important;
  background: transparent !important;
}

.brand-proof-group {
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
}

.brand-proof-group + .brand-proof-group {
  margin-top: clamp(46px, 6vw, 76px) !important;
}

.brand-proof-heading {
  color: #f4eee4 !important;
  text-align: center !important;
  font-size: clamp(22px, 2.4vw, 34px) !important;
  line-height: 1.1 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin: 0 0 14px !important;
}

.brand-proof-intro {
  color: #c9c0b5 !important;
  text-align: center !important;
  font-size: 13px !important;
  line-height: 1.8 !important;
  max-width: 620px !important;
  margin: 0 auto clamp(34px, 5vw, 52px) !important;
}

.brand-proof-press-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(20px, 2.2vw, 32px) !important;
  align-items: stretch !important;
  margin: 0 !important;
  padding: 0 !important;
}

.brand-proof-press-card {
  display: flex !important;
  flex-direction: column !important;
  background: transparent !important;
  color: #f4eee4 !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
  min-width: 0 !important;
}

.brand-proof-press-card .media {
  width: 100% !important;
  aspect-ratio: 1.38 / 1 !important;
  margin: 0 0 22px !important;
  background: #1d2223 !important;
  overflow: hidden !important;
}

.brand-proof-press-card .media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform 0.5s ease, opacity 0.3s ease !important;
}

.brand-proof-press-card:hover .media img {
  transform: scale(1.035) !important;
  opacity: 0.94 !important;
}

.brand-proof-press-title {
  color: #f4eee4 !important;
  font-size: clamp(15px, 1.25vw, 20px) !important;
  line-height: 1.25 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin: 0 0 14px !important;
}

.brand-proof-press-text {
  color: #c9c0b5 !important;
  font-size: 12px !important;
  line-height: 1.75 !important;
  letter-spacing: 0.01em !important;
  margin: 0 0 20px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 8 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.brand-proof-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  margin-top: auto !important;
  padding: 10px 22px !important;
  min-height: 36px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(244, 238, 228, 0.28) !important;
  background: transparent !important;
  color: #f4eee4 !important;
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.brand-proof-button:hover {
  background: #f4eee4 !important;
  color: #202526 !important;
  border-color: #f4eee4 !important;
}

.brand-proof-shell .brand-proof-ticker,
.ab-press,
.logo-list,
.brand-proof,
.brand-proof-ticker {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  background: #000000 !important;
  color: #f4eee4 !important;
  overflow: hidden !important;
  border-top: 1px solid rgba(244, 238, 228, 0.08) !important;
  border-bottom: 1px solid rgba(244, 238, 228, 0.08) !important;
}

.brand-proof-ticker-track {
  display: flex !important;
  align-items: center !important;
  gap: clamp(46px, 7vw, 110px) !important;
  width: max-content !important;
  min-width: 100% !important;
  animation: abProofTicker 42s linear infinite !important;
}

.brand-proof-ticker:hover .brand-proof-ticker-track {
  animation-play-state: paused !important;
}

.brand-proof-ticker-item,
.brand-proof-ticker-logo-wrap {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  overflow: visible !important;
}

.brand-proof-ticker-logo {
  display: block !important;
  width: auto !important;
  min-width: 150px !important;
  max-width: 300px !important;
  height: 82px !important;
  max-height: 82px !important;
  object-fit: contain !important;
  object-position: center !important;
  background: transparent !important;
  opacity: 0.78 !important;
  filter: grayscale(1) contrast(0.88) brightness(1.12) !important;
  mix-blend-mode: normal !important;
}

@keyframes abProofTicker {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

/* =========================================================
   13. Testimonials
   ========================================================= */

.ab-testimonials {
  width: 100% !important;
  max-width: none !important;
  background: #f7f5ef !important;
  color: #171717 !important;
  padding-top: clamp(54px, 7vw, 96px) !important;
  padding-bottom: clamp(54px, 7vw, 96px) !important;
}

.ab-testimonials__inner {
  width: 100% !important;
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(24px, 5vw, 64px) !important;
  padding-right: clamp(24px, 5vw, 64px) !important;
}

.ab-testimonials__header {
  position: relative !important;
  text-align: center !important;
  max-width: 820px !important;
  margin: 0 auto 42px !important;
}

.ab-testimonials__eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  color: #171717 !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  letter-spacing: 0.34em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin-bottom: 24px !important;
}

.ab-testimonials__eyebrow span {
  display: block !important;
  width: 54px !important;
  height: 1px !important;
  background: rgba(23, 23, 23, 0.45) !important;
}

.ab-testimonials__title {
  color: #171717 !important;
  font-size: clamp(42px, 6vw, 78px) !important;
  line-height: 0.95 !important;
  letter-spacing: -0.055em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  margin: 0 0 26px !important;
}

.ab-testimonials__copy,
.ab-testimonials__copy p {
  color: #33302c !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
  letter-spacing: 0.02em !important;
  margin: 0 auto !important;
  max-width: 680px !important;
}

.ab-testimonials__arrows {
  position: absolute !important;
  right: -230px !important;
  bottom: 10px !important;
  display: flex !important;
  gap: 18px !important;
}

.ab-testimonials__arrow {
  width: 48px !important;
  height: 48px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  border: 0 !important;
  background: #211b16 !important;
  color: #f7f5ef !important;
  font-size: 28px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.ab-testimonials__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 30px !important;
}

.ab-testimonial-card {
  background: #ffffff !important;
  border: 1px solid rgba(23, 23, 23, 0.08) !important;
  color: #171717 !important;
  padding: 34px 32px 0 !important;
  min-height: 520px !important;
  display: flex !important;
  flex-direction: column !important;
}

.ab-testimonial-card__stars {
  color: #000000 !important;
  font-size: 25px !important;
  letter-spacing: 0.08em !important;
  line-height: 1 !important;
  margin-bottom: 26px !important;
}

.ab-testimonial-card__meta {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
}

.ab-testimonial-card__meta strong {
  color: #171717 !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
}

.ab-testimonial-card__verified {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  color: #171717 !important;
  font-size: 15px !important;
}

.ab-testimonial-card__verified span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 999px !important;
  background: #111111 !important;
  color: #ffffff !important;
  font-size: 11px !important;
}

.ab-testimonial-card__date {
  color: #171717 !important;
  font-size: 15px !important;
  margin-bottom: 22px !important;
}

.ab-testimonial-card__review,
.ab-testimonial-card__review p {
  color: #171717 !important;
  font-size: 19px !important;
  line-height: 1.55 !important;
  margin: 0 0 22px !important;
}

.ab-testimonial-card__image {
  width: 130px !important;
  height: 130px !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  margin-top: auto !important;
  margin-bottom: 28px !important;
  background: #eee !important;
  position: relative !important;
}

.ab-testimonial-card__image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.ab-testimonial-card__image::after {
  content: "▷" !important;
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  font-size: 42px !important;
  text-shadow: 0 2px 18px rgba(0,0,0,0.35) !important;
}

.ab-testimonial-card__product {
  margin-left: -32px !important;
  margin-right: -32px !important;
  padding: 22px 32px !important;
  border-top: 1px solid rgba(23, 23, 23, 0.08) !important;
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  min-height: 96px !important;
}

.ab-testimonial-card__product-image {
  width: 62px !important;
  height: 62px !important;
  flex: 0 0 62px !important;
}

.ab-testimonial-card__product-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.ab-testimonial-card__product-name {
  color: #171717 !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
}

.ab-testimonials__trustbar {
  margin-top: 34px !important;
  background: #ffffff !important;
  border: 1px solid rgba(23, 23, 23, 0.08) !important;
  min-height: 92px !important;
  display: grid !important;
  grid-template-columns: 1.3fr 0.9fr 1fr 1.4fr auto !important;
  align-items: center !important;
  gap: 24px !important;
  padding: 22px 38px !important;
  color: #171717 !important;
}

.ab-testimonials__trustpilot {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 24px !important;
}

.ab-testimonials__trust-star {
  color: #00b67a !important;
  font-size: 32px !important;
}

.ab-testimonials__trust-stars {
  display: flex !important;
  gap: 4px !important;
}

.ab-testimonials__trust-stars span {
  display: inline-flex !important;
  width: 30px !important;
  height: 30px !important;
  align-items: center !important;
  justify-content: center !important;
  background: #00b67a !important;
  color: #ffffff !important;
  font-size: 18px !important;
}

.ab-testimonials__trust-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: 12px 28px !important;
  border-radius: 999px !important;
  border: 1px solid #171717 !important;
  background: transparent !important;
  color: #171717 !important;
  text-decoration: none !important;
  font-size: 14px !important;
}

.ab-testimonials__trust-button:hover {
  background: #171717 !important;
  color: #ffffff !important;
}

/* =========================================================
   14. Custom Newsletter
   ========================================================= */

#shopify-section-template--29757912187217__newsletter,
.newsletter-custom,
.pdf-newsletter-shell {
  width: 100% !important;
  max-width: none !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #171b1c !important;
  color: #f4eee4 !important;
  overflow: hidden !important;
  --newsletter-text: #f4eee4 !important;
  --newsletter-muted: #e0d8cc !important;
  --newsletter-button-bg: #f4eee4 !important;
  --newsletter-button-text: #171b1c !important;
}

.newsletter-custom__bg {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}

.newsletter-custom__bg img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 42% !important;
}

.newsletter-custom__overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: #000000 !important;
  opacity: 0.52 !important;
  pointer-events: none !important;
}

.newsletter-custom .home-section__wrap,
.pdf-newsletter-shell .home-section__wrap {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 1460px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: clamp(58px, 7vw, 98px) clamp(24px, 5vw, 72px) !important;
  background: transparent !important;
}

.pdf-newsletter-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.85fr) minmax(360px, 1.15fr) !important;
  gap: clamp(34px, 7vw, 110px) !important;
  align-items: center !important;
  width: 100% !important;
}

.pdf-newsletter-grid .home-section__intro {
  width: 100% !important;
  max-width: 650px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.newsletter-custom .eyebrow,
.pdf-newsletter-shell .eyebrow {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  color: #e0d8cc !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin: 0 0 18px !important;
  text-align: left !important;
}

.newsletter-custom .eyebrow::before,
.pdf-newsletter-shell .eyebrow::before {
  content: "" !important;
  display: block !important;
  width: 42px !important;
  height: 1px !important;
  background: rgba(244, 238, 228, 0.55) !important;
  flex: 0 0 42px !important;
}

.pdf-newsletter-title,
.newsletter-custom .section-title,
.pdf-newsletter-shell .section-title {
  color: #f4eee4 !important;
  font-size: clamp(38px, 4.2vw, 64px) !important;
  line-height: 1 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  margin: 0 0 22px !important;
  text-align: left !important;
}

.newsletter-custom .section-copy,
.newsletter-custom .section-copy p,
.pdf-newsletter-shell .section-copy,
.pdf-newsletter-shell .section-copy p {
  color: #e0d8cc !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  letter-spacing: 0.01em !important;
  max-width: 680px !important;
  margin: 0 !important;
  text-align: left !important;
}

.pdf-newsletter-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 18px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: 0 !important;
}

.pdf-newsletter-form .field {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.pdf-newsletter-form input[type="email"] {
  width: 100% !important;
  min-height: 58px !important;
  background: rgba(23, 27, 28, 0.78) !important;
  border: 1px solid rgba(244, 238, 228, 0.24) !important;
  border-radius: 0 !important;
  color: #f4eee4 !important;
  padding: 0 22px !important;
  font-size: 15px !important;
  line-height: 1 !important;
  letter-spacing: 0.02em !important;
  box-shadow: none !important;
  outline: none !important;
}

.pdf-newsletter-form input[type="email"]::placeholder {
  color: #c9c0b5 !important;
  opacity: 0.9 !important;
}

.pdf-newsletter-form .pdf-button,
.pdf-newsletter-form .button,
.pdf-newsletter-form button[type="submit"] {
  min-width: 170px !important;
  min-height: 58px !important;
  border-radius: 999px !important;
  border: 1px solid #f4eee4 !important;
  background: #f4eee4 !important;
  color: #171b1c !important;
  padding: 0 34px !important;
  font-size: 0 !important;
  line-height: 1 !important;
  letter-spacing: 0.17em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  box-shadow: none !important;
  transition: all 0.25s ease !important;
}

.pdf-newsletter-form .pdf-button::after {
  content: "Subscribe" !important;
  font-size: 11px !important;
  line-height: 1 !important;
  letter-spacing: 0.17em !important;
  text-transform: uppercase !important;
}

.pdf-newsletter-form .pdf-button:hover,
.pdf-newsletter-form .button:hover,
.pdf-newsletter-form button[type="submit"]:hover {
  background: transparent !important;
  color: #f4eee4 !important;
  border-color: #f4eee4 !important;
}

/* =========================================================
   15. Footer
   ========================================================= */

.footer,
.site-footer,
.footer-shell,
.pdf-footer-shell {
  width: 100%;
  max-width: none;
  background: var(--ab-bg-deep) !important;
  color: var(--ab-muted);
  border-top: 1px solid var(--ab-line);
}

.footer h2,
.footer h3,
.footer-block__heading,
.footer-heading {
  color: var(--ab-cream);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 11px;
}

.footer,
.footer p,
.footer a,
.footer li,
.footer-shell p,
.footer-shell a,
.footer-shell li {
  color: #bdb4aa;
  font-size: 13px;
}

.footer a:hover,
.footer-shell a:hover {
  color: var(--ab-cream);
}

/* =========================================================
   16. Content Pages — Shared Safe Rules
   ========================================================= */

body.template-page,
body.template-page #MainContent {
  background: #202526 !important;
}

body.template-page #shopify-section-footer,
body.template-page .footer-shell,
body.template-page .pdf-footer-shell {
  background: #171b1c !important;
}

/* Generic simple page styling only when page is NOT a bespoke treatment/why page */
#shopify-section-template--29757912285521__main .section-shell:not(:has(.ab-treatments)):not(:has(.ab-why-page)) {
  background: #202526 !important;
  padding-top: clamp(54px, 7vw, 96px) !important;
  padding-bottom: clamp(64px, 8vw, 118px) !important;
  margin: 0 !important;
}

#shopify-section-template--29757912285521__main .section-shell:not(:has(.ab-treatments)):not(:has(.ab-why-page)) > .page-width {
  width: 100% !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(24px, 5vw, 72px) !important;
  padding-right: clamp(24px, 5vw, 72px) !important;
}

#shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)),
#shopify-section-template--29757912285521__main .page-layout:not(:has(.ab-treatments)):not(:has(.ab-why-page)) {
  background: #f4f1ea !important;
  color: #171717 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 auto !important;
  padding: clamp(54px, 7vw, 96px) clamp(28px, 6vw, 96px) !important;
}

#shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)) .section-intro {
  max-width: 820px !important;
  margin: 0 auto clamp(34px, 5vw, 56px) !important;
  text-align: center !important;
}

#shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)) .section-intro .eyebrow {
  color: #6a645d !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin: 0 0 18px !important;
}

#shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)) .section-title {
  color: #171717 !important;
  font-size: clamp(42px, 6vw, 82px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.05em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  max-width: 900px !important;
  margin: 0 auto !important;
}

#shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)) .article-content,
#shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)) .article-content.rte {
  width: 100% !important;
  max-width: 820px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: #fff !important;
  color: #171717 !important;
}

#shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)) .article-content p {
  color: #5e574f !important;
  font-size: clamp(15px, 1.25vw, 18px) !important;
  line-height: 1.9 !important;
  letter-spacing: 0.01em !important;
  margin: 0 auto 22px !important;
  max-width: 820px !important;
}

/* =========================================================
   17. About Our Treatment Page
   ========================================================= */

#shopify-section-template--29757912285521__main .section-shell:has(.ab-treatments) {
  background: #202526 !important;
  padding-top: clamp(42px, 6vw, 74px) !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
}

#shopify-section-template--29757912285521__main .section-shell:has(.ab-treatments) > .page-width {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

#shopify-section-template--29757912285521__main .page-panel:has(.ab-treatments),
#shopify-section-template--29757912285521__main .page-layout:has(.ab-treatments) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

#shopify-section-template--29757912285521__main .page-panel:has(.ab-treatments) > .section-intro {
  display: none !important;
}

#shopify-section-template--29757912285521__main .article-content:has(.ab-treatments),
#shopify-section-template--29757912285521__main .article-content.rte:has(.ab-treatments) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.ab-treatments {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  background: #f4f1ea !important;
  color: #171717 !important;
  overflow: hidden !important;
}

.ab-treatments-heading {
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: clamp(62px, 8vw, 116px) clamp(24px, 5vw, 72px) clamp(44px, 6vw, 82px) !important;
  background: #f4f1ea !important;
  text-align: center !important;
}

.ab-treatments-heading__eyebrow {
  color: #6a645d !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin: 0 0 18px !important;
}

.ab-treatments-heading__title {
  color: #171717 !important;
  font-size: clamp(42px, 6vw, 82px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.05em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  max-width: 940px !important;
  margin: 0 auto !important;
}

.ab-treatments-list {
  width: 100% !important;
  max-width: 1460px !important;
  margin: 0 auto !important;
  padding: 0 clamp(24px, 5vw, 72px) clamp(64px, 8vw, 118px) !important;
  background: #f4f1ea !important;
  display: grid !important;
  gap: clamp(46px, 7vw, 96px) !important;
}

.ab-treatment-row,
.ab-treatment-row.ab-treatment-row--reverse {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: clamp(38px, 6vw, 90px) !important;
  align-items: center !important;
  background: #f4f1ea !important;
  direction: ltr !important;
}

.ab-treatment-row--reverse .ab-treatment-row__media {
  order: 2 !important;
}

.ab-treatment-row--reverse .ab-treatment-row__content {
  order: 1 !important;
}

.ab-treatment-row__media {
  min-height: auto !important;
  height: auto !important;
  aspect-ratio: 1.2 / 1 !important;
  background: #ddd6ca !important;
  overflow: hidden !important;
  position: relative !important;
}

.ab-treatment-row__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  margin: 0 !important;
  float: none !important;
}

.ab-treatment-row__content {
  min-height: auto !important;
  padding: clamp(26px, 4vw, 58px) 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
}

.ab-treatment-row__inner {
  width: 100% !important;
  max-width: 560px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.ab-treatment-row__meta {
  color: #7a7067 !important;
  font-size: 9px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.26em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin: 0 0 14px !important;
}

.ab-treatment-row__title {
  color: #171717 !important;
  font-size: clamp(28px, 3vw, 46px) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.035em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  margin: 0 0 20px !important;
}

.ab-treatment-row__text,
.ab-treatment-row__text p {
  color: #5e574f !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
  letter-spacing: 0.01em !important;
  margin-top: 0 !important;
}

.ab-treatment-row__text p:last-child {
  margin-bottom: 0 !important;
}

.ab-treatment-row__video-badge {
  right: 18px !important;
  bottom: 18px !important;
  min-height: 34px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  background: rgba(23, 27, 28, 0.82) !important;
  color: #f4eee4 !important;
  font-size: 9px !important;
  letter-spacing: 0.14em !important;
}

/* =========================================================
   18. Why Ashmira Botanica Page
   ========================================================= */

#shopify-section-template--29757912285521__main .section-shell:has(.ab-why-page) {
  background: #202526 !important;
  padding-top: clamp(34px, 5vw, 58px) !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
}

#shopify-section-template--29757912285521__main .section-shell:has(.ab-why-page) > .page-width {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

#shopify-section-template--29757912285521__main .page-panel:has(.ab-why-page),
#shopify-section-template--29757912285521__main .page-layout:has(.ab-why-page) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

#shopify-section-template--29757912285521__main .page-panel:has(.ab-why-page) > .section-intro {
  display: none !important;
}

#shopify-section-template--29757912285521__main .article-content:has(.ab-why-page),
#shopify-section-template--29757912285521__main .article-content.rte:has(.ab-why-page) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.ab-why-page,
.ab-why-wrap {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  background: #f4f1ea !important;
  color: #171717 !important;
  font-family: inherit !important;
  overflow: hidden !important;
}

.ab-why-hero {
  position: relative !important;
  width: 100% !important;
  min-height: auto !important;
  max-height: none !important;
  background: #f4f1ea !important;
  overflow: visible !important;
  padding: clamp(46px, 6vw, 76px) clamp(24px, 5vw, 72px) clamp(22px, 4vw, 42px) !important;
  text-align: center !important;
}

.ab-why-hero > img,
.ab-why-hero::after {
  display: none !important;
}

.ab-why-hero-copy {
  position: static !important;
  max-width: 820px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  backdrop-filter: none !important;
  color: #171717 !important;
}

.ab-why-kicker {
  color: #6a645d !important;
  font-family: inherit !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.26em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin: 0 0 14px !important;
}

.ab-why-title {
  color: #171717 !important;
  font-family: inherit !important;
  font-size: clamp(38px, 5vw, 68px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.045em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  max-width: 820px !important;
  margin: 0 auto !important;
}

.ab-why-intro {
  background: #f4f1ea !important;
  padding: 0 clamp(24px, 5vw, 72px) clamp(34px, 5vw, 58px) !important;
  text-align: center !important;
}

.ab-why-intro p {
  color: #5e574f !important;
  font-family: inherit !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  letter-spacing: 0.01em !important;
  max-width: 860px !important;
  margin: 0 auto !important;
}

.ab-why-grid {
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 clamp(24px, 5vw, 72px) clamp(52px, 7vw, 86px) !important;
  background: #f4f1ea !important;
  display: grid !important;
  gap: clamp(28px, 4vw, 46px) !important;
}

.ab-why-row,
.ab-why-row:nth-child(even) {
  display: grid !important;
  grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr) !important;
  gap: clamp(28px, 5vw, 58px) !important;
  align-items: center !important;
  background: #f4f1ea !important;
  direction: ltr !important;
}

.ab-why-row:nth-child(even) .ab-why-media {
  order: 2 !important;
}

.ab-why-row:nth-child(even) .ab-why-content {
  order: 1 !important;
}

.ab-why-media {
  width: 100% !important;
  min-height: 0 !important;
  height: clamp(230px, 24vw, 340px) !important;
  aspect-ratio: auto !important;
  background: #ddd6ca !important;
  overflow: hidden !important;
}

.ab-why-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

.ab-why-content {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  background: transparent !important;
}

.ab-why-content-inner {
  width: 100% !important;
  max-width: 540px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.ab-why-content h2 {
  color: #171717 !important;
  font-family: inherit !important;
  font-size: clamp(24px, 2.5vw, 36px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.03em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  margin: 0 0 14px !important;
}

.ab-why-content p {
  color: #5e574f !important;
  font-family: inherit !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  letter-spacing: 0.01em !important;
  margin: 0 !important;
}

/* =========================================================
   19. Mobile Refinement
   ========================================================= */

@media screen and (max-width: 989px) {
  .hero-minimal {
    min-height: 620px !important;
    height: 620px !important;
  }

  .brand-proof-press-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 34px 24px !important;
  }

  .ab-testimonials__arrows {
    position: static !important;
    justify-content: center !important;
    margin-top: 28px !important;
  }

  .ab-testimonials__grid {
    grid-template-columns: 1fr !important;
    max-width: 640px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .ab-testimonials__trustbar {
    grid-template-columns: 1fr !important;
    text-align: center !important;
    justify-items: center !important;
  }

  .pdf-newsletter-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  .pdf-newsletter-form {
    margin-left: 0 !important;
    max-width: 680px !important;
  }

  .ab-why-grid {
    max-width: 980px !important;
    gap: 38px !important;
  }

  .ab-why-row,
  .ab-why-row:nth-child(even) {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
    gap: 30px !important;
  }

  .ab-why-media {
    height: 250px !important;
  }
}

@media screen and (min-width: 1500px) {
  .founders-story-section .founders-story-width,
  .founders-story-section .page-width,
  .ab-promo-pair__inner,
  .collection-list-wrapper .page-width,
  .collection-list-section .page-width,
  .home-section--collections .page-width,
  .home-section--collection-list .page-width,
  .brand-proof-panel,
  .newsletter-custom .home-section__wrap,
  .pdf-newsletter-shell .home-section__wrap,
  .ab-treatments-list,
  .ab-why-grid {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .brand-proof-ticker-logo {
    min-width: 170px !important;
    max-width: 340px !important;
    height: 200px !important;
    max-height: 200px !important;
  }
}

@media screen and (max-width: 749px) {
  :root {
    --ab-gutter: 20px;
  }

  .page-width,
  .container,
  .content-container,
  .page-width-desktop,
  .image-with-text .page-width,
  .multicolumn .page-width,
  .blog .page-width,
  .main-blog .page-width,
  .article-template .page-width,
  .footer .page-width,
  .site-footer .page-width,
  .footer__content-top,
  .footer__content-bottom {
    width: calc(100% - 40px);
    max-width: none;
  }

  .hero-minimal {
    min-height: 560px !important;
    height: 560px !important;
  }

  .hero-minimal__content {
    align-items: flex-end !important;
    justify-content: flex-start !important;
    padding: 0 24px 54px !important;
  }

  .hero-minimal__copy {
    max-width: 320px !important;
  }

  .hero-minimal__title {
    font-size: 44px !important;
    line-height: 0.94 !important;
    margin-bottom: 18px !important;
  }

  .hero-minimal__text,
  .hero-minimal__text p {
    font-size: 14px !important;
    max-width: 300px !important;
  }

  .rich-text,
  .ab-intro {
    padding-top: 52px;
    padding-bottom: 52px;
  }

  .featured-collection,
  .collection,
  .ab-products,
  .ab-product-showcase,
  .ab-bestsellers,
  .home-section--featured,
  .shopify-section:has(.product-grid),
  .shopify-section:has(.grid.product-grid),
  .shopify-section:has(.product-card-wrapper) {
    padding-top: 38px !important;
    padding-bottom: 48px !important;
  }

  .featured-collection .page-width,
  .collection .page-width,
  .home-section--featured .page-width,
  .shopify-section:has(.product-grid) .page-width,
  .shopify-section:has(.grid.product-grid) .page-width,
  .shopify-section:has(.product-card-wrapper) .page-width,
  .ab-products__inner,
  .ab-product-showcase__inner,
  .ab-bestsellers__inner {
    width: calc(100% - 36px) !important;
    max-width: none !important;
  }

  .product-grid,
  .grid.product-grid,
  .ab-products-grid,
  .ab-product-grid,
  .ab-bestsellers-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px 20px !important;
  }

  .product-card-wrapper .card__inner,
  .card-wrapper .card__inner,
  .ab-product-card__image,
  .ab-product__image,
  .ab-product-image,
  .home-section--featured .product-card .media {
    max-width: 135px !important;
  }

  .product-card-wrapper .card__heading,
  .product-card-wrapper .card__heading a,
  .card-wrapper .card__heading,
  .card-wrapper .card__heading a,
  .ab-product-card__title,
  .ab-product__title,
  .ab-product-card a,
  .ab-product a,
  .product-card__title,
  .product-card__title a {
    font-size: 9px !important;
    letter-spacing: 0.09em !important;
  }

  .home-section--featured .home-section__intro,
  .home-section--featured .home-featured-heading {
    max-width: none !important;
    margin-bottom: 28px !important;
  }

  .home-section--featured .home-featured-heading__title,
  .home-section--featured .section-title {
    font-size: clamp(26px, 8vw, 36px) !important;
  }

  .home-section--featured .home-featured-heading__copy,
  .home-section--featured .section-copy {
    font-size: 13px !important;
    line-height: 1.75 !important;
  }

  .home-section--featured .tabbed-section-nav {
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-bottom: 30px !important;
  }

  .home-section--featured .tab-button {
    font-size: 8px !important;
    padding: 9px 15px !important;
  }

  .image-with-text__grid {
    display: block;
  }

  .image-with-text__media {
    min-height: 360px;
  }

  .image-with-text__content {
    padding: 34px 22px;
  }

  .founders-story-section {
    padding-top: 48px !important;
    padding-bottom: 56px !important;
  }

  .founders-story-section .founders-story-width,
  .founders-story-section .page-width {
    width: calc(100% - 40px) !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .founders-story-grid {
    display: block !important;
  }

  .founders-story-media-wrap {
    margin-bottom: 32px !important;
  }

  .founders-story-media img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }

  .founders-story-copy {
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .founders-story-title {
    font-size: clamp(38px, 12vw, 54px) !important;
    line-height: 0.96 !important;
    margin-bottom: 22px !important;
  }

  .ab-promo-pair {
    padding-top: 42px !important;
    padding-bottom: 48px !important;
  }

  .ab-promo-pair__inner {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .ab-promo-pair__grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .ab-promo-pair__panel {
    min-height: 360px !important;
  }

  .ab-promo-pair__overlay,
  .ab-promo-pair__text-content {
    padding: 34px 26px !important;
  }

  .ab-promo-pair__overlay h2,
  .ab-promo-pair__text-content h2 {
    font-size: 25px !important;
    letter-spacing: 0.24em !important;
  }

  .ab-promo-pair__overlay p {
    font-size: 11px !important;
    letter-spacing: 0.22em !important;
  }

  .ab-promo-pair__logo {
    width: 64px !important;
    max-height: 64px !important;
    margin-bottom: 28px !important;
  }

  .collection-list,
  .collection-list.grid,
  .collection-list__grid,
  .home-collection-list-grid,
  .home-section--collection-list .grid,
  .home-section--collections .grid {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
  }

  .collection-list-wrapper .page-width,
  .collection-list-section .page-width,
  .home-section--collections .page-width,
  .home-section--collection-list .page-width,
  .shopify-section:has(.collection-list) .page-width,
  .shopify-section:has(.collection-list-wrapper) .page-width {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .collection-list .card__heading,
  .collection-list .card__heading a,
  .collection-list__item .card__heading,
  .collection-list__item .card__heading a,
  .collection-list__item h3,
  .collection-list__item h3 a,
  .home-section--collection-list .card__heading,
  .home-section--collection-list .card__heading a,
  .home-section--collection-list h3,
  .home-section--collection-list h3 a,
  .home-section--collections .card__heading,
  .home-section--collections .card__heading a,
  .home-section--collections h3,
  .home-section--collections h3 a {
    font-size: 19px !important;
    letter-spacing: 0.18em !important;
  }

  .brand-proof-shell {
    padding-top: 46px !important;
    padding-bottom: 52px !important;
  }

  .brand-proof-panel {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .brand-proof-press-grid {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }

  .brand-proof-ticker-track {
    gap: 42px !important;
    animation-duration: 34s !important;
  }

  .brand-proof-ticker-logo {
    min-width: 120px !important;
    max-width: 210px !important;
    height: 64px !important;
    max-height: 64px !important;
  }

  .ab-testimonials {
    padding-top: 46px !important;
    padding-bottom: 54px !important;
  }

  .ab-testimonials__inner {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .ab-testimonials__title {
    font-size: clamp(38px, 12vw, 54px) !important;
  }

  .ab-testimonial-card {
    padding: 28px 24px 0 !important;
    min-height: auto !important;
  }

  .ab-testimonial-card__product {
    margin-left: -24px !important;
    margin-right: -24px !important;
    padding: 20px 24px !important;
  }

  .ab-testimonials__trustbar {
    padding: 26px 22px !important;
  }

  .newsletter-custom .home-section__wrap,
  .pdf-newsletter-shell .home-section__wrap {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding: 46px 0 !important;
  }

  .pdf-newsletter-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  .pdf-newsletter-form {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    max-width: none !important;
  }

  .pdf-newsletter-form input[type="email"],
  .pdf-newsletter-form .pdf-button,
  .pdf-newsletter-form .button,
  .pdf-newsletter-form button[type="submit"] {
    width: 100% !important;
    min-height: 54px !important;
  }

  /* Simple pages */
  #shopify-section-template--29757912285521__main .section-shell:not(:has(.ab-treatments)):not(:has(.ab-why-page)) {
    padding-top: 38px !important;
    padding-bottom: 56px !important;
  }

  #shopify-section-template--29757912285521__main .section-shell:not(:has(.ab-treatments)):not(:has(.ab-why-page)) > .page-width {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)),
  #shopify-section-template--29757912285521__main .page-layout:not(:has(.ab-treatments)):not(:has(.ab-why-page)) {
    padding: 42px 24px !important;
  }

  #shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)) .section-title {
    font-size: clamp(38px, 12vw, 56px) !important;
  }

  #shopify-section-template--29757912285521__main .page-panel:not(:has(.ab-treatments)):not(:has(.ab-why-page)) .article-content p {
    font-size: 14px !important;
    line-height: 1.8 !important;
    text-align: left !important;
  }

  /* Treatments mobile */
  #shopify-section-template--29757912285521__main .section-shell:has(.ab-treatments) {
    padding-top: 0 !important;
  }

  .ab-treatments-heading {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding: 48px 0 36px !important;
  }

  .ab-treatments-heading__title {
    font-size: clamp(38px, 12vw, 56px) !important;
  }

  .ab-treatments-list {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding: 0 0 64px !important;
    gap: 48px !important;
  }

  .ab-treatment-row,
  .ab-treatment-row.ab-treatment-row--reverse {
    display: block !important;
  }

  .ab-treatment-row--reverse .ab-treatment-row__media,
  .ab-treatment-row--reverse .ab-treatment-row__content {
    order: initial !important;
  }

  .ab-treatment-row__media {
    aspect-ratio: 1.16 / 1 !important;
    margin-bottom: 24px !important;
  }

  .ab-treatment-row__content {
    padding: 0 !important;
  }

  .ab-treatment-row__title {
    font-size: 30px !important;
  }

  .ab-treatment-row__text,
  .ab-treatment-row__text p {
    font-size: 14px !important;
    line-height: 1.8 !important;
  }

  /* Why page mobile */
  #shopify-section-template--29757912285521__main .section-shell:has(.ab-why-page) {
    padding-top: 0 !important;
  }

  .ab-why-hero {
    width: calc(100% - 36px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 42px 0 26px !important;
  }

  .ab-why-title {
    font-size: clamp(36px, 11vw, 52px) !important;
  }

  .ab-why-intro {
    width: calc(100% - 36px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 0 36px !important;
    text-align: left !important;
  }

  .ab-why-intro p {
    font-size: 14px !important;
    line-height: 1.8 !important;
    text-align: left !important;
  }

  .ab-why-grid {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding: 0 0 54px !important;
    gap: 38px !important;
  }

  .ab-why-row,
  .ab-why-row:nth-child(even) {
    display: block !important;
  }

  .ab-why-row:nth-child(even) .ab-why-media,
  .ab-why-row:nth-child(even) .ab-why-content {
    order: initial !important;
  }

  .ab-why-media {
    height: auto !important;
    aspect-ratio: 1.28 / 1 !important;
    margin-bottom: 20px !important;
  }

  .ab-why-content {
    padding: 0 !important;
  }

  .ab-why-content h2 {
    font-size: 28px !important;
    margin-bottom: 12px !important;
  }

  .ab-why-content p {
    font-size: 14px !important;
    line-height: 1.75 !important;
  }
}
/* =========================================================
   Ashmira Botanica — Homepage Product Image White Background Fix
   Makes white product image backgrounds blend into cream section
   ========================================================= */

.home-section--featured,
.home-section--featured .collection-tab-panel,
.home-section--featured .product-grid,
.home-section--featured .product-card,
.home-section--featured .product-card__content,
.home-section--featured .product-card .media,
.home-section--featured .product-card .media--square,
.home-section--featured .product-card a.media {
  background: #f4f1ea !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* Stop the image wrapper from showing a white/boxed background */
.home-section--featured .product-card .media {
  overflow: visible !important;
}

/* Blend white image backgrounds into the cream section */
.home-section--featured .product-card .media img,
.home-section--featured .product-card img {
  background: #f4f1ea !important;
  mix-blend-mode: multiply !important;
  object-fit: contain !important;
  filter: contrast(0.98) saturate(0.98) !important;
}

/* Avoid applying blend mode to fallback illustration assets */
.home-section--featured .product-card img[src*="ashmira-product-scene"] {
  mix-blend-mode: normal !important;
  filter: none !important;
}
/* Proper right-side promo image support */
.ab-promo-pair__panel--text .ab-promo-pair__image {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  z-index: 0 !important;
}

.ab-promo-pair__panel--text::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(18, 20, 20, 0.42) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.ab-promo-pair__panel--text .ab-promo-pair__text-content {
  position: relative !important;
  z-index: 2 !important;
}
/* =========================================================
   Ashmira Botanica — Brand Proof / Logo Ticker Final Fix
   Keeps logos unchanged and removes hover colour changes
   ========================================================= */

.brand-proof-ticker-item,
.brand-proof-ticker-logo-wrap,
.brand-proof-shell .brand-proof-ticker-item,
.brand-proof-shell .brand-proof-ticker-logo-wrap {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.brand-proof-ticker-logo,
.brand-proof-ticker img,
.brand-proof-ticker-logo-wrap img,
.brand-proof-ticker-item img,
.brand-proof-shell .brand-proof-ticker-logo,
.brand-proof-shell .brand-proof-ticker img,
.brand-proof-shell .brand-proof-ticker-logo-wrap img,
.brand-proof-shell .brand-proof-ticker-item img {
  background: transparent !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
  transition: none !important;
}

/* No visual change on hover */
.brand-proof-ticker-logo:hover,
.brand-proof-ticker img:hover,
.brand-proof-ticker-logo-wrap img:hover,
.brand-proof-ticker-item img:hover,
.brand-proof-shell .brand-proof-ticker-logo:hover,
.brand-proof-shell .brand-proof-ticker img:hover,
.brand-proof-shell .brand-proof-ticker-logo-wrap img:hover,
.brand-proof-shell .brand-proof-ticker-item img:hover {
  background: transparent !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
}
/* =========================================================
   Ashmira Botanica — Our Favourite Ingredients Page
   Matched to About Our Treatment Page Layout
   Targets actual classes: .ab-ingredients-rebuild
   ========================================================= */

/* Page background */
body.template-page,
body.template-page #MainContent {
  background: #202526 !important;
}

/* Remove Shopify default page chrome only when ingredients page exists */
#shopify-section-template--29757912285521__main .section-shell:has(.ab-ingredients-rebuild) {
  background: #202526 !important;
  padding-top: clamp(42px, 6vw, 74px) !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
}

#shopify-section-template--29757912285521__main .section-shell:has(.ab-ingredients-rebuild) > .page-width {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

#shopify-section-template--29757912285521__main .page-panel:has(.ab-ingredients-rebuild),
#shopify-section-template--29757912285521__main .page-layout:has(.ab-ingredients-rebuild) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* Hide duplicate Shopify page title */
#shopify-section-template--29757912285521__main .page-panel:has(.ab-ingredients-rebuild) > .section-intro {
  display: none !important;
}

/* Remove RTE/page editor width limits */
#shopify-section-template--29757912285521__main .article-content:has(.ab-ingredients-rebuild),
#shopify-section-template--29757912285521__main .article-content.rte:has(.ab-ingredients-rebuild),
#shopify-section-template--29757912285521__main .rte:has(.ab-ingredients-rebuild) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

/* Remove divider lines */
#shopify-section-template--29757912285521__main .section-shell:has(.ab-ingredients-rebuild)::before,
#shopify-section-template--29757912285521__main .section-shell:has(.ab-ingredients-rebuild)::after,
#shopify-section-template--29757912285521__main .home-section--divider:has(.ab-ingredients-rebuild)::before,
#shopify-section-template--29757912285521__main .home-section--divider:has(.ab-ingredients-rebuild)::after {
  display: none !important;
}

/* =========================================================
   Full-width page shell — same breakout as Treatments page
   ========================================================= */

.ab-ingredients-rebuild {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 0 !important;
  background: #f5f2ec !important;
  color: #1d1f1d !important;
  overflow: hidden !important;
  font-family: inherit !important;
}

.ab-ingredients-rebuild * {
  box-sizing: border-box !important;
}

.ab-ingredients-rebuild a {
  color: inherit !important;
  text-decoration: none !important;
}

.ab-ingredients-rebuild img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  margin: 0 !important;
  float: none !important;
}

/* Same width rhythm as treatments page */
.ab-ingredients-shell {
  width: min(96vw, 1800px) !important;
  max-width: 1800px !important;
  margin: 0 auto !important;
  padding: 0 0 32px !important;
  background: #f5f2ec !important;
}

/* =========================================================
   Heading area — same as Treatments page
   ========================================================= */

.ingredients-page-title {
  width: min(96vw, 1800px) !important;
  margin: 0 auto !important;
  padding: 48px 24px 40px !important;
  text-align: center !important;
  background: #f5f2ec !important;
}

/* Fix the currently empty H1 */
.ingredients-page-title h1 {
  margin: 0 !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

.ingredients-page-title h1::before {
  content: "Our Favourite Ingredients" !important;
  display: block !important;
  color: #1d1f1d !important;
  font-family: inherit !important;
  font-size: clamp(30px, 5vw, 58px) !important;
  line-height: 0.98 !important;
  font-weight: 500 !important;
  letter-spacing: -0.03em !important;
  text-transform: none !important;
}

/* =========================================================
   Ingredient rows — matched to treatment rows
   ========================================================= */

.ingredient-section {
  padding: 0 !important;
  margin: 0 !important;
  background: #f5f2ec !important;
}

.ingredient-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 0 !important;
  align-items: stretch !important;
  width: 100% !important;
  background: #f5f2ec !important;
}

/* Alternate rows like treatment page */
.ingredient-section:nth-of-type(even) .ingredient-media {
  order: 2 !important;
}

.ingredient-section:nth-of-type(even) .ingredient-copy {
  order: 1 !important;
}

/* Image column */
.ingredient-media,
.ingredient-media--landscape {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 520px !important;
  aspect-ratio: auto !important;
  background: #e2dccf !important;
  overflow: hidden !important;
}

/* Text column */
.ingredient-copy {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 520px !important;
  padding: 56px 64px !important;
  background: #f5f2ec !important;
}

.ingredient-copy-inner {
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 !important;
  text-align: left !important;
}

/* Ingredient title */
.ingredient-kicker {
  margin: 0 0 14px !important;
  color: #1d1f1d !important;
  font-family: inherit !important;
  font-size: clamp(26px, 3vw, 40px) !important;
  line-height: 1.05 !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
  text-transform: none !important;
}

/* Ingredient text */
.ingredient-body {
  color: #4d504b !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
}

.ingredient-body p {
  color: #4d504b !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  margin: 0 0 1em !important;
}

.ingredient-body p:last-child {
  margin-bottom: 0 !important;
}

/* =========================================================
   Responsive behaviour — same as Treatments page
   ========================================================= */

@media screen and (max-width: 1200px) {
  .ab-ingredients-shell,
  .ingredients-page-title {
    width: min(98vw, 100%) !important;
  }

  .ingredient-copy {
    padding: 42px 40px !important;
  }

  .ingredient-copy-inner {
    max-width: 680px !important;
  }
}

@media screen and (max-width: 900px) {
  .ab-ingredients-shell,
  .ingredients-page-title {
    width: 100% !important;
  }

  .ingredient-grid {
    grid-template-columns: 1fr !important;
  }

  .ingredient-section:nth-of-type(even) .ingredient-media,
  .ingredient-section:nth-of-type(even) .ingredient-copy {
    order: initial !important;
  }

  .ingredient-media,
  .ingredient-media--landscape,
  .ingredient-copy {
    min-height: 320px !important;
  }

  .ingredient-copy {
    padding: 32px 22px 36px !important;
  }

  .ingredient-copy-inner {
    max-width: none !important;
  }

  .ingredients-page-title {
    padding: 38px 18px 28px !important;
  }
}

@media screen and (max-width: 640px) {
  .ab-ingredients-rebuild {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .ingredients-page-title {
    padding: 32px 16px 24px !important;
  }

  .ingredient-media,
  .ingredient-media--landscape {
    min-height: 260px !important;
  }

  .ingredient-copy {
    min-height: auto !important;
    padding: 28px 16px 32px !important;
  }

  .ingredient-kicker {
    font-size: clamp(24px, 7vw, 34px) !important;
  }

  .ingredient-body,
  .ingredient-body p {
    font-size: 15px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Clean Beauty Page
   Uses same full-width treatment page language
   ========================================================= */

.ab-clean-beauty-page .ab-clean-promise {
  width: min(96vw, 1800px) !important;
  margin: 0 auto !important;
  padding: clamp(48px, 6vw, 82px) clamp(24px, 5vw, 72px) clamp(72px, 8vw, 118px) !important;
  background: #f5f2ec !important;
  color: #1d1f1d !important;
}

.ab-clean-promise__intro {
  max-width: 920px !important;
  margin: 0 auto clamp(34px, 5vw, 56px) !important;
  text-align: center !important;
}

.ab-clean-promise__eyebrow {
  color: #6b6f68 !important;
  font-size: 12px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  margin-bottom: 12px !important;
}

.ab-clean-promise__intro h2 {
  color: #1d1f1d !important;
  font-size: clamp(30px, 4vw, 54px) !important;
  line-height: 1 !important;
  letter-spacing: -0.035em !important;
  font-weight: 500 !important;
  margin: 0 0 18px !important;
}

.ab-clean-promise__intro p {
  color: #4d504b !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  max-width: 780px !important;
  margin: 0 auto !important;
}

.ab-clean-promise__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 28px) !important;
}

.ab-clean-promise__card {
  background: #eee9df !important;
  border: 1px solid rgba(31, 33, 31, 0.08) !important;
  padding: clamp(24px, 3vw, 36px) !important;
  min-height: 100% !important;
}

.ab-clean-promise__card h3 {
  color: #1d1f1d !important;
  font-size: clamp(22px, 2vw, 32px) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.025em !important;
  font-weight: 500 !important;
  margin: 0 0 14px !important;
}

.ab-clean-promise__card p {
  color: #4d504b !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  margin: 0 !important;
}

@media screen and (max-width: 989px) {
  .ab-clean-promise__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 640px) {
  .ab-clean-beauty-page .ab-clean-promise {
    width: 100% !important;
    padding: 40px 16px 58px !important;
  }

  .ab-clean-promise__grid {
    grid-template-columns: 1fr !important;
  }

  .ab-clean-promise__card {
    padding: 22px !important;
  }

  .ab-clean-promise__intro h2 {
    font-size: clamp(28px, 8vw, 40px) !important;
  }

  .ab-clean-promise__intro p,
  .ab-clean-promise__card p {
    font-size: 14px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Green Credentials Page
   Uses same full-width treatment page language
   ========================================================= */

.ab-green-credentials-page .ab-green-credentials-principles {
  width: min(96vw, 1800px) !important;
  margin: 0 auto !important;
  padding: clamp(48px, 6vw, 82px) clamp(24px, 5vw, 72px) clamp(72px, 8vw, 118px) !important;
  background: #f5f2ec !important;
  color: #1d1f1d !important;
}

.ab-green-credentials-intro {
  max-width: 980px !important;
  margin: 0 auto clamp(34px, 5vw, 56px) !important;
  text-align: center !important;
}

.ab-green-credentials-eyebrow {
  color: #6b6f68 !important;
  font-size: 12px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  margin-bottom: 12px !important;
}

.ab-green-credentials-intro h2 {
  color: #1d1f1d !important;
  font-size: clamp(30px, 4vw, 54px) !important;
  line-height: 1 !important;
  letter-spacing: -0.035em !important;
  font-weight: 500 !important;
  margin: 0 0 18px !important;
}

.ab-green-credentials-intro p {
  color: #4d504b !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  max-width: 820px !important;
  margin: 0 auto !important;
}

.ab-green-credentials-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 28px) !important;
}

.ab-green-credentials-card {
  background: #eee9df !important;
  border: 1px solid rgba(31, 33, 31, 0.08) !important;
  padding: clamp(24px, 3vw, 36px) !important;
  min-height: 100% !important;
}

.ab-green-credentials-card:nth-child(3n) {
  background: #ebe4d9 !important;
}

.ab-green-credentials-card h3 {
  color: #1d1f1d !important;
  font-size: clamp(22px, 2vw, 32px) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.025em !important;
  font-weight: 500 !important;
  margin: 0 0 14px !important;
}

.ab-green-credentials-card p {
  color: #4d504b !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  margin: 0 !important;
}

.ab-green-credentials-card--wide {
  grid-column: 1 / -1 !important;
  text-align: center !important;
}

.ab-green-credentials-card--wide p {
  max-width: 820px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media screen and (max-width: 989px) {
  .ab-green-credentials-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 640px) {
  .ab-green-credentials-page .ab-green-credentials-principles {
    width: 100% !important;
    padding: 40px 16px 58px !important;
  }

  .ab-green-credentials-grid {
    grid-template-columns: 1fr !important;
  }

  .ab-green-credentials-card {
    padding: 22px !important;
  }

  .ab-green-credentials-intro h2 {
    font-size: clamp(28px, 8vw, 40px) !important;
  }

  .ab-green-credentials-intro p,
  .ab-green-credentials-card p {
    font-size: 14px !important;
  }

  .ab-green-credentials-card--wide {
    text-align: left !important;
  }
}
/* =========================================================
   Ashmira Botanica — Hero Carousel Fade Behaviour
   Required for automatic homepage hero slideshow
   ========================================================= */

.media-carousel,
.media-carousel--hero {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}

.media-carousel__track {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
}

.media-carousel__slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 1.1s ease, visibility 1.1s ease !important;
  z-index: 0 !important;
}

.media-carousel__slide.is-active {
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 1 !important;
}

.media-carousel__slide img,
.media-carousel__slide video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
/* =========================================================
   Ashmira Botanica — Five Elements Page
   Uses treatment-page layout with elemental visual panels
   ========================================================= */

.ab-five-elements-page .ab-five-elements-intro {
  width: min(96vw, 1800px) !important;
  margin: 0 auto !important;
  padding: 0 clamp(24px, 5vw, 72px) clamp(58px, 7vw, 96px) !important;
  background: #f5f2ec !important;
  color: #1d1f1d !important;
}

.ab-five-elements-intro__inner {
  max-width: 1180px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

.ab-five-elements-intro__lead {
  color: #4d504b !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  margin: 0 0 10px !important;
}

.ab-five-elements-intro__elements {
  color: #1d1f1d !important;
  font-size: clamp(24px, 3vw, 42px) !important;
  line-height: 1.1 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin: 0 0 28px !important;
}

.ab-five-elements-intro p {
  color: #4d504b !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
}

.ab-five-elements-intro__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 28px) !important;
  margin-top: clamp(34px, 5vw, 56px) !important;
  text-align: left !important;
}

.ab-five-elements-intro__grid article {
  background: #eee9df !important;
  border: 1px solid rgba(31, 33, 31, 0.08) !important;
  padding: clamp(24px, 3vw, 34px) !important;
}

.ab-five-elements-intro__grid h2 {
  color: #1d1f1d !important;
  font-size: clamp(22px, 2vw, 30px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.025em !important;
  margin: 0 0 14px !important;
}

.ab-five-elements-intro__grid p {
  color: #4d504b !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  margin: 0 !important;
}

.ab-five-elements-intro__note {
  max-width: 780px !important;
  margin: clamp(30px, 4vw, 46px) auto 0 !important;
}

.ab-five-elements-intro__note a {
  color: #1d1f1d !important;
  text-decoration: underline !important;
  text-underline-offset: 0.18em !important;
}

/* Element visual panels */
.ab-five-element-visual {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 520px !important;
  background: #e2dccf !important;
  overflow: hidden !important;
}

.ab-five-element-visual__inner {
  width: min(70%, 420px) !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 999px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(244, 241, 234, 0.42) !important;
  background:
    radial-gradient(circle at 50% 45%, rgba(244, 241, 234, 0.22), rgba(244, 241, 234, 0.04) 58%, transparent 70%) !important;
}

.ab-five-element-visual__inner span {
  color: #f5f2ec !important;
  font-size: clamp(34px, 5vw, 72px) !important;
  line-height: 1 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
}

.ab-five-element-row--wood .ab-five-element-visual {
  background: linear-gradient(135deg, #314332, #788260) !important;
}

.ab-five-element-row--fire .ab-five-element-visual {
  background: linear-gradient(135deg, #6f3428, #b66b45) !important;
}

.ab-five-element-row--earth .ab-five-element-visual {
  background: linear-gradient(135deg, #7b6847, #b49c6d) !important;
}

.ab-five-element-row--metal .ab-five-element-visual {
  background: linear-gradient(135deg, #72746d, #b7b5aa) !important;
}

.ab-five-element-row--water .ab-five-element-visual {
  background: linear-gradient(135deg, #253c46, #6f8790) !important;
}

.ab-five-elements-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 22px !important;
  min-height: 40px !important;
  padding: 12px 26px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(31, 33, 31, 0.24) !important;
  background: transparent !important;
  color: #1d1f1d !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
}

.ab-five-elements-button:hover {
  background: #1d1f1d !important;
  color: #f5f2ec !important;
  border-color: #1d1f1d !important;
}

@media screen and (max-width: 989px) {
  .ab-five-elements-intro__grid {
    grid-template-columns: 1fr !important;
  }
}

@media screen and (max-width: 900px) {
  .ab-five-element-visual {
    min-height: 320px !important;
  }

  .ab-five-element-visual__inner {
    width: min(58%, 280px) !important;
  }
}

@media screen and (max-width: 640px) {
  .ab-five-elements-page .ab-five-elements-intro {
    width: 100% !important;
    padding: 0 16px 48px !important;
  }

  .ab-five-elements-intro__elements {
    font-size: 22px !important;
  }

  .ab-five-element-visual {
    min-height: 260px !important;
  }

  .ab-five-element-visual__inner span {
    font-size: 34px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Blog Article Template Styling
   Fixes article header readability and modern hero layout
   ========================================================= */

body.template-article,
body.template-article #MainContent,
body.template-article .site-main {
  background: #202526 !important;
}

/* Main article section wrapper */
body.template-article #shopify-section-template--29757912351057__main,
body.template-article #shopify-section-template--29757912351057__main .section-shell {
  background: #202526 !important;
  margin: 0 !important;
  padding: clamp(42px, 6vw, 74px) 0 0 !important;
}

/* Remove constrained Shopify page width */
body.template-article #shopify-section-template--29757912351057__main .page-width {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Article panel */
body.template-article .article-panel,
body.template-article .article-layout {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #f5f2ec !important;
  color: #1d1f1d !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

/* Header block above hero */
body.template-article .article-panel > .section-intro {
  width: min(96vw, 1480px) !important;
  max-width: 1480px !important;
  margin: 0 auto !important;
  padding: clamp(56px, 7vw, 104px) clamp(24px, 5vw, 72px) clamp(34px, 5vw, 58px) !important;
  background: #f5f2ec !important;
  text-align: center !important;
}

/* Article title */
body.template-article .article-panel .section-title {
  color: #1d1f1d !important;
  font-size: clamp(40px, 5.8vw, 82px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.055em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  max-width: 1120px !important;
  margin: 0 auto clamp(20px, 3vw, 30px) !important;
}

/* Meta row */
body.template-article .article-meta {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  color: #6b6f68 !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
}

body.template-article .article-meta span {
  color: #6b6f68 !important;
}

/* Hero image */
body.template-article .article-panel > .media,
body.template-article .article-panel > .media.media--cinematic {
  width: min(96vw, 1800px) !important;
  max-width: 1800px !important;
  height: clamp(420px, 52vw, 780px) !important;
  margin: 0 auto !important;
  background: #e2dccf !important;
  overflow: hidden !important;
  border: 0 !important;
}

body.template-article .article-panel > .media img,
body.template-article .article-panel > .media.media--cinematic img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
}

/* Main article content */
body.template-article .article-content,
body.template-article .article-content.rte {
  width: min(96vw, 980px) !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: clamp(46px, 6vw, 82px) clamp(24px, 5vw, 72px) clamp(72px, 8vw, 118px) !important;
  background: #f5f2ec !important;
  color: #1d1f1d !important;
}

/* Paragraphs */
body.template-article .article-content p,
body.template-article .article-content.rte p {
  color: #4d504b !important;
  font-size: clamp(15px, 1.08vw, 17px) !important;
  line-height: 1.9 !important;
  letter-spacing: 0.01em !important;
  margin: 0 0 1.45em !important;
}

/* Strong section headings inside article */
body.template-article .article-content strong {
  display: block !important;
  color: #1d1f1d !important;
  font-size: clamp(24px, 2.6vw, 38px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  font-weight: 400 !important;
  margin: clamp(28px, 4vw, 46px) 0 14px !important;
}

/* Don't over-enlarge strong text in the first paragraph */
body.template-article .article-content p:first-child strong {
  margin-top: 0 !important;
}

/* Article links */
body.template-article .article-content a {
  color: #1d1f1d !important;
  text-decoration: underline !important;
  text-underline-offset: 0.18em !important;
}

/* Fix awkward line-break-heavy text from imported source */
body.template-article .article-content br {
  display: none !important;
}

/* Optional bottom callout effect for the final paragraph */
body.template-article .article-content p:last-child {
  background: #eee9df !important;
  border: 1px solid rgba(31, 33, 31, 0.08) !important;
  padding: clamp(24px, 3vw, 38px) !important;
  margin-top: clamp(34px, 5vw, 56px) !important;
}

/* Footer transition */
body.template-article #shopify-section-footer,
body.template-article .footer-shell,
body.template-article .pdf-footer-shell {
  background: #171b1c !important;
}

/* Mobile */
@media screen and (max-width: 749px) {
  body.template-article #shopify-section-template--29757912351057__main,
  body.template-article #shopify-section-template--29757912351057__main .section-shell {
    padding-top: 0 !important;
  }

  body.template-article .article-panel > .section-intro {
    width: calc(100% - 36px) !important;
    padding: 44px 0 30px !important;
  }

  body.template-article .article-panel .section-title {
    font-size: clamp(34px, 11vw, 52px) !important;
    line-height: 1 !important;
  }

  body.template-article .article-meta {
    font-size: 9px !important;
    gap: 10px !important;
  }

  body.template-article .article-panel > .media,
  body.template-article .article-panel > .media.media--cinematic {
    width: 100% !important;
    height: 360px !important;
  }

  body.template-article .article-content,
  body.template-article .article-content.rte {
    width: calc(100% - 36px) !important;
    max-width: none !important;
    padding: 38px 0 58px !important;
  }

  body.template-article .article-content p,
  body.template-article .article-content.rte p {
    font-size: 14px !important;
    line-height: 1.8 !important;
  }

  body.template-article .article-content strong {
    font-size: 26px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Blog Article True Hero Image
   Places featured image behind the article heading
   ========================================================= */

/* Blog article outer */
body.template-article #shopify-section-template--29757912351057__main,
body.template-article #shopify-section-template--29757912351057__main .section-shell {
  background: #202526 !important;
  padding-top: 0 !important;
}

/* Article panel becomes full-width editorial canvas */
body.template-article .article-panel,
body.template-article .article-layout {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #f5f2ec !important;
  overflow: hidden !important;
}

/* Hero image becomes the first visual layer */
body.template-article .article-panel > .media,
body.template-article .article-panel > .media.media--cinematic {
  position: relative !important;
  z-index: 1 !important;
  width: 100vw !important;
  max-width: none !important;
  height: clamp(520px, 62vw, 860px) !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  background: #202526 !important;
  overflow: hidden !important;
}

/* Hero image cover */
body.template-article .article-panel > .media img,
body.template-article .article-panel > .media.media--cinematic img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Add dark/cream gradient over image for readability */
body.template-article .article-panel > .media::after,
body.template-article .article-panel > .media.media--cinematic::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background:
    linear-gradient(
      180deg,
      rgba(32, 37, 38, 0.22) 0%,
      rgba(32, 37, 38, 0.18) 38%,
      rgba(245, 242, 236, 0.82) 78%,
      #f5f2ec 100%
    ) !important;
  pointer-events: none !important;
}

/* Pull the heading up over the lower part of the image */
body.template-article .article-panel > .section-intro {
  position: relative !important;
  z-index: 3 !important;
  width: min(96vw, 1320px) !important;
  max-width: 1320px !important;
  margin: clamp(-220px, -16vw, -140px) auto 0 !important;
  padding: clamp(42px, 6vw, 76px) clamp(24px, 5vw, 72px) clamp(38px, 5vw, 64px) !important;
  background: rgba(245, 242, 236, 0.92) !important;
  backdrop-filter: blur(8px) !important;
  text-align: center !important;
}

/* Article title over hero */
body.template-article .article-panel .section-title {
  color: #1d1f1d !important;
  font-size: clamp(42px, 5.8vw, 86px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.055em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  max-width: 1080px !important;
  margin: 0 auto clamp(20px, 3vw, 30px) !important;
}

/* Article meta */
body.template-article .article-meta {
  color: #6b6f68 !important;
  display: flex !important;
  justify-content: center !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  font-size: 11px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

body.template-article .article-meta span {
  color: #6b6f68 !important;
}

/* Article body starts below the hero/header composition */
body.template-article .article-content,
body.template-article .article-content.rte {
  position: relative !important;
  z-index: 2 !important;
  width: min(96vw, 980px) !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: clamp(46px, 6vw, 82px) clamp(24px, 5vw, 72px) clamp(72px, 8vw, 118px) !important;
  background: #f5f2ec !important;
  color: #1d1f1d !important;
}

/* Mobile */
@media screen and (max-width: 749px) {
  body.template-article .article-panel > .media,
  body.template-article .article-panel > .media.media--cinematic {
    height: 520px !important;
  }

  body.template-article .article-panel > .section-intro {
    width: calc(100% - 36px) !important;
    margin-top: -150px !important;
    padding: 34px 22px 32px !important;
  }

  body.template-article .article-panel .section-title {
    font-size: clamp(34px, 11vw, 52px) !important;
    line-height: 1 !important;
  }

  body.template-article .article-meta {
    font-size: 9px !important;
    gap: 10px !important;
  }

  body.template-article .article-content,
  body.template-article .article-content.rte {
    width: calc(100% - 36px) !important;
    padding: 38px 0 58px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Blog Article Layout Order Fix
   Forces hero image first, then title/body content
   ========================================================= */

/* Make article panel a layout container */
body.template-article .article-panel,
body.template-article .article-layout {
  display: flex !important;
  flex-direction: column !important;
  background: #f5f2ec !important;
}

/* Hero image must appear first */
body.template-article .article-panel > .media,
body.template-article .article-panel > .media.media--cinematic {
  order: 1 !important;
  width: 100vw !important;
  max-width: none !important;
  height: clamp(460px, 56vw, 780px) !important;
  margin: 0 calc(50% - 50vw) !important;
  background: #202526 !important;
}

/* Title/meta block comes after hero */
body.template-article .article-panel > .section-intro {
  order: 2 !important;
  width: min(96vw, 980px) !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: clamp(46px, 6vw, 72px) clamp(24px, 5vw, 72px) clamp(22px, 3vw, 34px) !important;
  background: #f5f2ec !important;
  text-align: left !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

/* Article content comes after title */
body.template-article .article-content,
body.template-article .article-content.rte {
  order: 3 !important;
  width: min(96vw, 980px) !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 0 clamp(24px, 5vw, 72px) clamp(72px, 8vw, 118px) !important;
  background: #f5f2ec !important;
}

/* Keep hero image clean */
body.template-article .article-panel > .media img,
body.template-article .article-panel > .media.media--cinematic img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Remove old hero fade/overlay effects that were causing visual confusion */
body.template-article .article-panel > .media::after,
body.template-article .article-panel > .media.media--cinematic::after {
  display: none !important;
}

/* Title styling */
body.template-article .article-panel .section-title {
  color: #1d1f1d !important;
  font-size: clamp(38px, 5vw, 72px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.05em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  max-width: 920px !important;
  margin: 0 0 22px !important;
  text-align: left !important;
  text-shadow: none !important;
}

/* Meta styling */
body.template-article .article-meta {
  display: flex !important;
  justify-content: flex-start !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  color: #6b6f68 !important;
  font-size: 11px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  margin: 0 !important;
}

body.template-article .article-meta span {
  color: #6b6f68 !important;
}

/* Mobile */
@media screen and (max-width: 749px) {
  body.template-article .article-panel > .media,
  body.template-article .article-panel > .media.media--cinematic {
    height: 360px !important;
  }

  body.template-article .article-panel > .section-intro {
    width: calc(100% - 36px) !important;
    padding: 36px 0 20px !important;
  }

  body.template-article .article-content,
  body.template-article .article-content.rte {
    width: calc(100% - 36px) !important;
    padding: 0 0 58px !important;
  }

  body.template-article .article-panel .section-title {
    font-size: clamp(34px, 11vw, 52px) !important;
  }
}
/* =========================================================
   Ashmira Botanica — Blog Hero Maximum Content Lift
   Raises article title/body further above the fold
   ========================================================= */

body.template-article .article-panel > .media,
body.template-article .article-panel > .media.media--cinematic {
  height: clamp(260px, 28vw, 460px) !important;
}

body.template-article .article-panel > .section-intro {
  margin-top: clamp(-210px, -16vw, -140px) !important;
  padding-top: clamp(28px, 3.5vw, 44px) !important;
  padding-bottom: 18px !important;
  background: #f5f2ec !important;
  box-shadow: 0 -18px 54px rgba(32, 37, 38, 0.12) !important;
}

/* Tighten title so article content appears sooner */
body.template-article .article-panel .section-title {
  font-size: clamp(32px, 4.1vw, 58px) !important;
  line-height: 0.98 !important;
  margin-bottom: 12px !important;
}

body.template-article .article-meta {
  margin-bottom: 0 !important;
}

/* Pull body closer */
body.template-article .article-content,
body.template-article .article-content.rte {
  padding-top: 0 !important;
}

/* Mobile */
@media screen and (max-width: 749px) {
  body.template-article .article-panel > .media,
  body.template-article .article-panel > .media.media--cinematic {
    height: 260px !important;
  }

  body.template-article .article-panel > .section-intro {
    margin-top: -110px !important;
    padding-top: 24px !important;
  }

  body.template-article .article-panel .section-title {
    font-size: clamp(30px, 9vw, 42px) !important;
  }
}
/* =========================================================
   Ashmira Botanica — Blog Category / Journal Page
   Styles /blogs/skincare-insights to match new site design
   ========================================================= */

body.template-blog,
body.template-blog #MainContent,
body.template-blog .site-main {
  background: #202526 !important;
}

/* Main blog section */
body.template-blog #shopify-section-template--29757912318289__main,
body.template-blog #shopify-section-template--29757912318289__main .section-shell {
  background: #202526 !important;
  margin: 0 !important;
  padding: clamp(42px, 6vw, 74px) 0 clamp(64px, 8vw, 118px) !important;
}

/* Remove narrow page-width constraint */
body.template-blog #shopify-section-template--29757912318289__main .page-width {
  width: min(100% - 48px, 1480px) !important;
  max-width: 1480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Page heading */
body.template-blog .section-intro {
  max-width: 920px !important;
  margin: 0 auto clamp(42px, 6vw, 72px) !important;
  padding: clamp(42px, 6vw, 82px) clamp(24px, 5vw, 72px) !important;
  text-align: center !important;
  background: transparent !important;
}

body.template-blog .section-intro .eyebrow {
  color: #c9c0b5 !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.26em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin: 0 0 16px !important;
}

body.template-blog .section-title {
  color: #f4eee4 !important;
  font-size: clamp(42px, 6vw, 82px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.055em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  margin: 0 auto 20px !important;
}

body.template-blog .section-copy {
  color: #c9c0b5 !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  max-width: 720px !important;
  margin: 0 auto !important;
}

/* Blog grid */
body.template-blog .article-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(26px, 3vw, 42px) !important;
  align-items: stretch !important;
  width: 100% !important;
  margin: 0 auto !important;
}

/* Article cards */
body.template-blog .article-card,
body.template-blog .card.article-card {
  background: transparent !important;
  color: #f4eee4 !important;
  border: 0 !important;
  box-shadow: none !important;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
}

/* Article images */
body.template-blog .article-card > .media,
body.template-blog .article-card .media--landscape {
  width: 100% !important;
  aspect-ratio: 1.55 / 1 !important;
  background: #1d2223 !important;
  overflow: hidden !important;
  margin: 0 0 24px !important;
}

body.template-blog .article-card > .media img,
body.template-blog .article-card .media--landscape img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform 0.55s ease, opacity 0.35s ease !important;
}

body.template-blog .article-card:hover .media img {
  transform: scale(1.035) !important;
  opacity: 0.94 !important;
}

/* Article content */
body.template-blog .article-card__content {
  background: transparent !important;
  color: #f4eee4 !important;
  padding: 0 !important;
  text-align: left !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}

/* Article title fix */
body.template-blog .article-card__title,
body.template-blog .article-card__title a {
  color: #f4eee4 !important;
  font-size: clamp(19px, 1.65vw, 28px) !important;
  line-height: 1.15 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  margin: 0 0 14px !important;
}

/* Excerpt */
body.template-blog .article-card .subtle,
body.template-blog .article-card__content .subtle {
  color: #c9c0b5 !important;
  font-size: 13px !important;
  line-height: 1.75 !important;
  letter-spacing: 0.01em !important;
  margin: 0 0 22px !important;
}

/* Read article button */
body.template-blog .article-card .button,
body.template-blog .article-card .button--ghost {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  margin-top: auto !important;
  min-height: 38px !important;
  padding: 11px 24px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(244, 238, 228, 0.28) !important;
  background: transparent !important;
  color: #f4eee4 !important;
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
}

body.template-blog .article-card .button:hover,
body.template-blog .article-card .button--ghost:hover {
  background: #f4eee4 !important;
  color: #202526 !important;
  border-color: #f4eee4 !important;
}

/* Pagination */
body.template-blog .pagination {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 18px !important;
  margin-top: clamp(42px, 6vw, 72px) !important;
  color: #c9c0b5 !important;
}

body.template-blog .pagination .subtle {
  color: #c9c0b5 !important;
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body.template-blog .pagination .button,
body.template-blog .pagination .button--secondary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 38px !important;
  padding: 11px 24px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(244, 238, 228, 0.28) !important;
  background: transparent !important;
  color: #f4eee4 !important;
  font-size: 9px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

body.template-blog .pagination .button:hover,
body.template-blog .pagination .button--secondary:hover {
  background: #f4eee4 !important;
  color: #202526 !important;
}

/* Tablet */
@media screen and (max-width: 989px) {
  body.template-blog .article-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Mobile */
@media screen and (max-width: 749px) {
  body.template-blog #shopify-section-template--29757912318289__main,
  body.template-blog #shopify-section-template--29757912318289__main .section-shell {
    padding-top: 0 !important;
    padding-bottom: 58px !important;
  }

  body.template-blog #shopify-section-template--29757912318289__main .page-width {
    width: calc(100% - 36px) !important;
    max-width: none !important;
  }

  body.template-blog .section-intro {
    padding: 44px 0 34px !important;
    margin-bottom: 0 !important;
  }

  body.template-blog .section-title {
    font-size: clamp(38px, 12vw, 56px) !important;
  }

  body.template-blog .section-copy {
    font-size: 14px !important;
  }

  body.template-blog .article-grid {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
  }

  body.template-blog .article-card__title,
  body.template-blog .article-card__title a {
    font-size: 22px !important;
    letter-spacing: 0.08em !important;
  }

  body.template-blog .pagination {
    flex-direction: column !important;
    gap: 14px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Blog Grid Spacing Fix
   Prevents Read More buttons from being cut off
   ========================================================= */

body.template-blog .article-grid {
  row-gap: clamp(56px, 7vw, 96px) !important;
  column-gap: clamp(28px, 3vw, 44px) !important;
  align-items: start !important;
}

body.template-blog .article-card,
body.template-blog .card.article-card {
  min-height: auto !important;
  height: auto !important;
  overflow: visible !important;
  padding-bottom: 4px !important;
}

body.template-blog .article-card__content {
  min-height: auto !important;
  height: auto !important;
  overflow: visible !important;
  padding-bottom: 6px !important;
}

body.template-blog .article-card .subtle,
body.template-blog .article-card__content .subtle {
  margin-bottom: 24px !important;
}

/* Make sure the button always has breathing room */
body.template-blog .article-card .button,
body.template-blog .article-card .button--ghost {
  margin-top: 6px !important;
  margin-bottom: 2px !important;
  flex-shrink: 0 !important;
}

/* If image/card wrappers are clipping content */
body.template-blog .article-card,
body.template-blog .article-card *,
body.template-blog .article-grid {
  overflow: visible;
}

/* Mobile spacing */
@media screen and (max-width: 749px) {
  body.template-blog .article-grid {
    row-gap: 58px !important;
  }

  body.template-blog .article-card .subtle,
  body.template-blog .article-card__content .subtle {
    margin-bottom: 22px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Store / Collection Page Redesign
   Applies to /collections/all and collection archive pages
   ========================================================= */

body.template-collection,
body.template-collection #MainContent,
body.template-collection .site-main {
  background: #202526 !important;
}

/* Main collection section */
body.template-collection #shopify-section-template--29757912252753__main,
body.template-collection #shopify-section-template--29757912252753__main .section-shell {
  background: #202526 !important;
  margin: 0 !important;
  padding: clamp(42px, 6vw, 74px) 0 clamp(64px, 8vw, 118px) !important;
}

/* Remove narrow/default page container */
body.template-collection #shopify-section-template--29757912252753__main .page-width {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Collection panel */
body.template-collection .collection-panel,
body.template-collection .collection-layout {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #f5f2ec !important;
  color: #1d1f1d !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* Editorial collection heading */
body.template-collection .collection-panel > .section-intro {
  width: min(96vw, 1180px) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: clamp(58px, 8vw, 110px) clamp(24px, 5vw, 72px) clamp(34px, 5vw, 58px) !important;
  background: #f5f2ec !important;
  text-align: center !important;
}

body.template-collection .collection-panel .section-intro .eyebrow {
  color: #6b6f68 !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin: 0 0 16px !important;
}

body.template-collection .collection-panel .section-title {
  color: #1d1f1d !important;
  font-size: clamp(42px, 6vw, 82px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.055em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  margin: 0 auto !important;
}

body.template-collection .collection-panel .section-copy {
  color: #4d504b !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  max-width: 720px !important;
  margin: 18px auto 0 !important;
}

/* Toolbar */
body.template-collection .collection-toolbar {
  width: min(96vw, 1480px) !important;
  max-width: 1480px !important;
  margin: 0 auto clamp(36px, 5vw, 62px) !important;
  padding: 18px clamp(20px, 3vw, 36px) !important;
  background: #eee9df !important;
  border: 1px solid rgba(31, 33, 31, 0.08) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  color: #1d1f1d !important;
}

body.template-collection .collection-toolbar .subtle {
  color: #6b6f68 !important;
  font-size: 11px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

body.template-collection .collection-toolbar form {
  margin: 0 !important;
}

body.template-collection .collection-toolbar select {
  min-height: 42px !important;
  padding: 0 38px 0 16px !important;
  border: 1px solid rgba(31, 33, 31, 0.18) !important;
  border-radius: 999px !important;
  background-color: transparent !important;
  color: #1d1f1d !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

/* Product grid */
body.template-collection .collection-grid--products {
  width: min(96vw, 1480px) !important;
  max-width: 1480px !important;
  margin: 0 auto !important;
  padding: 0 0 clamp(54px, 7vw, 96px) !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(44px, 5vw, 76px) clamp(24px, 3vw, 42px) !important;
  align-items: start !important;
  background: #f5f2ec !important;
}

/* Product cards */
body.template-collection .product-card,
body.template-collection .product-card--minimal {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: center !important;
  overflow: visible !important;
}

/* Product image frame */
body.template-collection .product-card .media,
body.template-collection .product-card .media--square {
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1 / 1.14 !important;
  margin: 0 auto 20px !important;
  background: #f5f2ec !important;
  border: 0 !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}

/* Product images */
body.template-collection .product-card .media img,
body.template-collection .product-card img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #f5f2ec !important;
  mix-blend-mode: multiply !important;
  transition: transform 0.35s ease, opacity 0.25s ease !important;
}

body.template-collection .product-card:hover .media img,
body.template-collection .product-card:hover img {
  transform: scale(1.035) !important;
}

/* Product content */
body.template-collection .product-card__content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: center !important;
  background: transparent !important;
  padding: 0 6px !important;
  min-height: auto !important;
  overflow: visible !important;
}

/* Product title */
body.template-collection .product-card__title {
  margin: 0 0 8px !important;
}

body.template-collection .product-card__title,
body.template-collection .product-card__title a {
  color: #1d1f1d !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
  letter-spacing: 0.11em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  text-align: center !important;
}

/* Price */
body.template-collection .product-card .price {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #5e574f !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.08em !important;
  margin: 0 0 14px !important;
}

/* Shop button */
body.template-collection .product-card .ab-product-shop-now {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: auto !important;
  padding: 10px 22px !important;
  min-height: 36px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(31, 33, 31, 0.26) !important;
  background: transparent !important;
  color: #1d1f1d !important;
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
}

body.template-collection .product-card .ab-product-shop-now:hover {
  background: #1d1f1d !important;
  color: #f5f2ec !important;
  border-color: #1d1f1d !important;
}

/* Pagination */
body.template-collection .pagination {
  width: min(96vw, 1480px) !important;
  margin: 0 auto !important;
  padding: clamp(28px, 4vw, 52px) 0 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  background: #f5f2ec !important;
  color: #6b6f68 !important;
}

body.template-collection .pagination .subtle {
  color: #6b6f68 !important;
  font-size: 11px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

body.template-collection .pagination .button,
body.template-collection .pagination .button--secondary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 38px !important;
  padding: 11px 24px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(31, 33, 31, 0.26) !important;
  background: transparent !important;
  color: #1d1f1d !important;
  font-size: 9px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

body.template-collection .pagination .button:hover,
body.template-collection .pagination .button--secondary:hover {
  background: #1d1f1d !important;
  color: #f5f2ec !important;
}

/* Better product spacing consistency */
body.template-collection .product-card__title,
body.template-collection .product-card .price,
body.template-collection .product-card .ab-product-shop-now {
  flex-shrink: 0 !important;
}

/* Tablet */
@media screen and (max-width: 1100px) {
  body.template-collection .collection-grid--products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 820px) {
  body.template-collection .collection-grid--products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 46px 22px !important;
  }

  body.template-collection .collection-toolbar {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}

/* Mobile */
@media screen and (max-width: 520px) {
  body.template-collection #shopify-section-template--29757912252753__main,
  body.template-collection #shopify-section-template--29757912252753__main .section-shell {
    padding-top: 0 !important;
  }

  body.template-collection .collection-panel > .section-intro {
    width: calc(100% - 36px) !important;
    padding: 44px 0 34px !important;
  }

  body.template-collection .collection-panel .section-title {
    font-size: clamp(38px, 12vw, 56px) !important;
  }

  body.template-collection .collection-toolbar,
  body.template-collection .collection-grid--products,
  body.template-collection .pagination {
    width: calc(100% - 36px) !important;
  }

  body.template-collection .collection-grid--products {
    grid-template-columns: 1fr !important;
    gap: 52px !important;
  }

  body.template-collection .product-card .media,
  body.template-collection .product-card .media--square {
    max-width: 280px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Global Light Background Alignment
   Matches original product image/page background
   ========================================================= */

.home-section--featured,
.home-section--featured .page-width,
.home-section--featured .home-section__wrap,
.home-section--featured .collection-tab-panel,
.home-section--featured .product-grid,
.home-section--featured .product-card,
.home-section--featured .product-card__content,
.home-section--featured .product-card .media,
.home-section--featured .product-card .media--square,
.home-section--featured .product-card a.media,

body.template-collection .collection-panel,
body.template-collection .collection-layout,
body.template-collection .collection-panel > .section-intro,
body.template-collection .collection-toolbar,
body.template-collection .collection-grid--products,
body.template-collection .pagination,
body.template-collection .product-card .media,
body.template-collection .product-card .media--square,

.ab-treatments,
.ab-treatments-heading,
.ab-treatments-list,
.ab-treatment-row,
.ab-treatment-row__content,

.ab-clean-beauty-page .ab-clean-promise,
.ab-green-credentials-page .ab-green-credentials-principles,
.ab-faq-page .ab-faq-content,

body.template-article .article-panel,
body.template-article .article-panel > .section-intro,
body.template-article .article-content,
body.template-article .article-content.rte {
  background: #fff !important;
}

/* Product image backgrounds */
.home-section--featured .product-card .media img,
.home-section--featured .product-card img,
body.template-collection .product-card .media img,
body.template-collection .product-card img {
  background: #fff !important;
}

/* Light cards slightly offset from the page background */
.ab-clean-promise__card,
.ab-green-credentials-card,
.ab-faq-item,
.ab-blog-article-closing__inner {
  background: #eeeeee !important;
}
/* =========================================================
   Ashmira Botanica — Product Detail Page Redesign
   Applies to product pages
   ========================================================= */

body.template-product,
body.template-product #MainContent,
body.template-product .site-main {
  background: #202526 !important;
}

/* Main product section */
body.template-product #shopify-section-template--29757912219985__main,
body.template-product #shopify-section-template--29757912219985__main .section-shell {
  background: #202526 !important;
  margin: 0 !important;
  padding: clamp(42px, 6vw, 74px) 0 clamp(64px, 8vw, 118px) !important;
}

/* Full-width page container */
body.template-product #shopify-section-template--29757912219985__main .page-width {
  width: min(100% - 48px, 1480px) !important;
  max-width: 1480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Main product panel */
body.template-product .product-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr) !important;
  gap: clamp(42px, 6vw, 92px) !important;
  align-items: start !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(36px, 5vw, 72px) !important;
  background: #f7f7f7 !important;
  color: #1d1f1d !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Product image column */
body.template-product .product-gallery {
  width: 100% !important;
  max-width: none !important;
  background: #f7f7f7 !important;
}

body.template-product .product-main-media,
body.template-product .product-gallery .media,
body.template-product .media--portrait.product-main-media {
  width: 100% !important;
  min-height: clamp(520px, 48vw, 780px) !important;
  aspect-ratio: 1 / 1.12 !important;
  background: #f7f7f7 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.template-product .product-main-media img,
body.template-product .product-gallery .media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #f7f7f7 !important;
  mix-blend-mode: multiply !important;
}

/* Product copy panel */
body.template-product .product-copy,
body.template-product .product-panel.product-copy {
  position: sticky !important;
  top: 120px !important;
  background: transparent !important;
  color: #1d1f1d !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: clamp(18px, 2vw, 30px) 0 !important;
}

/* Breadcrumb */
body.template-product .inline-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important;
  color: #6b6f68 !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  margin: 0 0 22px !important;
}

body.template-product .inline-links a {
  color: #6b6f68 !important;
  text-decoration: none !important;
}

body.template-product .inline-links a:hover {
  color: #1d1f1d !important;
}

/* Product title */
body.template-product .product-title {
  color: #1d1f1d !important;
  font-size: clamp(38px, 4.8vw, 74px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.055em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  margin: 0 0 22px !important;
  max-width: 700px !important;
}

/* Price */
body.template-product .product-copy .price,
body.template-product .product-copy .price__current {
  color: #1d1f1d !important;
  font-size: clamp(20px, 2vw, 30px) !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
  font-weight: 400 !important;
  margin: 0 0 24px !important;
}

/* Intro copy */
body.template-product .product-copy .section-copy {
  color: #4d504b !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
  letter-spacing: 0.01em !important;
  max-width: 640px !important;
  margin: 0 0 28px !important;
}

/* Product form */
body.template-product .product-form {
  margin: 0 0 28px !important;
}

body.template-product .quantity-wrap {
  display: grid !important;
  grid-template-columns: minmax(110px, 150px) minmax(180px, 1fr) !important;
  gap: 14px !important;
  align-items: end !important;
  margin: 0 !important;
}

/* Quantity field */
body.template-product .quantity-wrap .field {
  min-width: 0 !important;
  margin: 0 !important;
}

body.template-product .quantity-wrap label {
  display: block !important;
  color: #6b6f68 !important;
  font-size: 10px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
}

body.template-product .quantity-wrap input[type="number"] {
  width: 100% !important;
  min-height: 52px !important;
  padding: 0 14px !important;
  background: transparent !important;
  border: 1px solid rgba(31, 33, 31, 0.24) !important;
  color: #1d1f1d !important;
  font-size: 15px !important;
  border-radius: 0 !important;
}

/* Add to cart button */
body.template-product .product-form .button,
body.template-product .product-form button[type="submit"] {
  width: 100% !important;
  min-height: 52px !important;
  border-radius: 999px !important;
  border: 1px solid #1d1f1d !important;
  background: #1d1f1d !important;
  color: #f7f7f7 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: 0.17em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  padding: 0 28px !important;
  transition: all 0.25s ease !important;
}

body.template-product .product-form .button:hover,
body.template-product .product-form button[type="submit"]:hover {
  background: transparent !important;
  color: #1d1f1d !important;
}

/* Product meta pills */
body.template-product .product-meta-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 0 0 28px !important;
}

body.template-product .product-meta-list span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 30px !important;
  padding: 8px 14px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(31, 33, 31, 0.14) !important;
  color: #5e574f !important;
  font-size: 9px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

/* Accordions */
body.template-product .product-accordion {
  border-top: 1px solid rgba(31, 33, 31, 0.14) !important;
  background: transparent !important;
  color: #1d1f1d !important;
  padding: 0 !important;
}

body.template-product .product-accordion:last-of-type {
  border-bottom: 1px solid rgba(31, 33, 31, 0.14) !important;
}

body.template-product .product-accordion summary {
  cursor: pointer !important;
  list-style: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 20px 0 !important;
  color: #1d1f1d !important;
  font-size: 13px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}

body.template-product .product-accordion summary::-webkit-details-marker {
  display: none !important;
}

body.template-product .product-accordion summary span:last-child {
  color: #6b6f68 !important;
  font-size: 20px !important;
  line-height: 1 !important;
  font-weight: 300 !important;
}

body.template-product .product-accordion[open] summary span:last-child {
  transform: rotate(45deg) !important;
}

body.template-product .product-accordion .subtle {
  color: #4d504b !important;
  font-size: 14px !important;
  line-height: 1.85 !important;
  letter-spacing: 0.01em !important;
  padding: 0 0 24px !important;
  white-space: pre-line !important;
}

/* Recommendations section */
body.template-product #shopify-section-template--29757912219985__recommendations,
body.template-product #shopify-section-template--29757912219985__recommendations .section-shell {
  background: #202526 !important;
  color: #f4eee4 !important;
  padding: clamp(54px, 7vw, 96px) 0 !important;
}

body.template-product #shopify-section-template--29757912219985__recommendations .page-width {
  width: min(100% - 48px, 1480px) !important;
  max-width: 1480px !important;
}

body.template-product #shopify-section-template--29757912219985__recommendations .section-intro {
  text-align: center !important;
  max-width: 780px !important;
  margin: 0 auto 34px !important;
}

body.template-product #shopify-section-template--29757912219985__recommendations .eyebrow {
  color: #c9c0b5 !important;
  font-size: 10px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
}

body.template-product #shopify-section-template--29757912219985__recommendations .section-title {
  color: #f4eee4 !important;
  font-size: clamp(30px, 4vw, 54px) !important;
  line-height: 1 !important;
  letter-spacing: -0.035em !important;
  text-transform: none !important;
}

body.template-product #shopify-section-template--29757912219985__recommendations .empty-state {
  color: #c9c0b5 !important;
  text-align: center !important;
  font-size: 14px !important;
  line-height: 1.8 !important;
}

/* Tablet */
@media screen and (max-width: 989px) {
  body.template-product .product-layout {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  body.template-product .product-copy,
  body.template-product .product-panel.product-copy {
    position: static !important;
    top: auto !important;
  }

  body.template-product .product-main-media,
  body.template-product .product-gallery .media,
  body.template-product .media--portrait.product-main-media {
    min-height: 480px !important;
  }
}

/* Mobile */
@media screen and (max-width: 640px) {
  body.template-product #shopify-section-template--29757912219985__main,
  body.template-product #shopify-section-template--29757912219985__main .section-shell {
    padding-top: 0 !important;
    padding-bottom: 58px !important;
  }

  body.template-product #shopify-section-template--29757912219985__main .page-width {
    width: 100% !important;
  }

  body.template-product .product-layout {
    padding: 0 18px 42px !important;
  }

  body.template-product .product-main-media,
  body.template-product .product-gallery .media,
  body.template-product .media--portrait.product-main-media {
    min-height: 360px !important;
    aspect-ratio: 1 / 1 !important;
  }

  body.template-product .product-title {
    font-size: clamp(34px, 11vw, 50px) !important;
  }

  body.template-product .quantity-wrap {
    grid-template-columns: 1fr !important;
  }

  body.template-product .product-meta-list {
    gap: 8px !important;
  }

  body.template-product .product-accordion summary {
    font-size: 12px !important;
  }
}
/* =========================================================
   Ashmira Botanica - Bespoke Page Responsive Safety Layer
   Applies to:
   - What We Do
   - About Our Skincare
   - About Our Treatment
   - Favourite Ingredients
   ========================================================= */

/* Prevent horizontal overflow on all bespoke pages */
.ab-what-page,
.ab-skincare-page,
.ab-treatment-page,
.ab-ingredients-page {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

.ab-what-page *,
.ab-skincare-page *,
.ab-treatment-page *,
.ab-ingredients-page * {
  box-sizing: border-box;
}

/* Images should never overflow their containers */
.ab-what-page img,
.ab-skincare-page img,
.ab-treatment-page img,
.ab-ingredients-page img {
  max-width: 100%;
}

/* =========================================================
   Large laptop / smaller desktop
   ========================================================= */

@media screen and (max-width: 1399px) {
  .ab-what-hero,
  .ab-skincare-hero,
  .ab-treatment-hero {
    min-height: auto;
  }

  .ab-what-hero__inner,
  .ab-skincare-hero__content,
  .ab-treatment-hero__content {
    max-width: 640px;
  }

  .ab-what-tile--text,
  .ab-skincare-tile--text,
  .ab-treatment-tile--text {
    padding: 52px 42px;
  }

  .ab-ingredients-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .ab-ingredient-card {
    grid-template-columns: 150px minmax(0, 1fr) !important;
  }
}

/* =========================================================
   Tablet landscape / small laptop
   ========================================================= */

@media screen and (max-width: 1099px) {
  .ab-what-hero,
  .ab-skincare-hero,
  .ab-treatment-hero {
    padding-top: 96px;
    padding-bottom: 82px;
  }

  .ab-what-hero h1,
  .ab-skincare-hero h1,
  .ab-treatment-hero h1 {
    font-size: clamp(44px, 7vw, 68px);
  }

  .ab-what-hero__copy,
  .ab-skincare-hero__copy,
  .ab-treatment-hero__copy {
    font-size: 15px;
    line-height: 1.75;
  }

  .ab-what-mosaic,
  .ab-skincare-mosaic,
  .ab-treatment-grid {
    grid-template-columns: 1fr !important;
  }

  .ab-what-tile,
  .ab-skincare-tile,
  .ab-treatment-tile {
    min-height: auto !important;
    border-right: 0 !important;
  }

  .ab-what-tile--image,
  .ab-skincare-tile--image,
  .ab-treatment-tile--image {
    min-height: 420px !important;
  }

  .ab-what-tile--text,
  .ab-skincare-tile--text,
  .ab-treatment-tile--text {
    min-height: auto !important;
    padding: 58px 34px !important;
  }

  .ab-what-tile--text > div,
  .ab-skincare-tile--text > div,
  .ab-treatment-tile--text > div {
    width: min(680px, 100%) !important;
    margin: 0 auto;
  }

  .ab-what-tile h2,
  .ab-skincare-tile h2,
  .ab-treatment-tile h2 {
    font-size: clamp(32px, 5vw, 46px);
  }

  .ab-what-tile p:not(.ab-what-card-eyebrow),
  .ab-skincare-tile p:not(.ab-skincare-card-eyebrow),
  .ab-treatment-card-copy,
  .ab-treatment-tile p:not(.ab-treatment-card-eyebrow) {
    width: 100%;
    max-width: 620px;
    font-size: 15px;
    line-height: 1.75;
  }

  /* Keep image/text pairs in the correct order on stacked layouts */
  .ab-what-tile--botanical-image,
  .ab-skincare-tile--element-image,
  .ab-treatment-tile--five-elements-image {
    order: 1;
  }

  .ab-what-tile--botanical-text,
  .ab-skincare-tile--element-text,
  .ab-treatment-tile--five-elements-text {
    order: 2;
  }

  .ab-what-tile--treatment-image,
  .ab-skincare-tile--formula-image,
  .ab-treatment-tile--pure-alchemy-image {
    order: 3;
  }

  .ab-what-tile--treatment-text,
  .ab-skincare-tile--formula-text,
  .ab-treatment-tile--pure-alchemy-text {
    order: 4;
  }

  .ab-what-tile--sustainability-image,
  .ab-skincare-tile--ritual-image,
  .ab-treatment-tile--exfoliation-image {
    order: 5;
  }

  .ab-what-tile--sustainability-text,
  .ab-skincare-tile--ritual-text,
  .ab-treatment-tile--exfoliation-text {
    order: 6;
  }

  .ab-treatment-tile--inner-zen-image {
    order: 7;
  }

  .ab-treatment-tile--inner-zen-text {
    order: 8;
  }

  .ab-treatment-tile--sonic-energy-image {
    order: 9;
  }

  .ab-treatment-tile--sonic-energy-text {
    order: 10;
  }

  .ab-ingredients-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .ab-ingredient-card {
    grid-template-columns: 155px minmax(0, 1fr) !important;
  }

  .ab-ingredient-card__content {
    min-height: 165px !important;
  }

  .ab-ingredient-card__image img,
  .ab-ingredient-placeholder {
    min-height: 165px !important;
  }
}

/* =========================================================
   Tablet portrait
   ========================================================= */

@media screen and (max-width: 849px) {
  .ab-what-hero,
  .ab-skincare-hero,
  .ab-treatment-hero {
    padding: 88px 26px 72px !important;
    background-position: center !important;
  }

  .ab-what-hero {
    text-align: center;
  }

  .ab-skincare-hero,
  .ab-treatment-hero {
    justify-content: center !important;
    text-align: center;
  }

  .ab-skincare-rule,
  .ab-treatment-rule {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .ab-skincare-mark,
  .ab-treatment-mark {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .ab-what-hero__inner,
  .ab-skincare-hero__content,
  .ab-treatment-hero__content {
    width: min(640px, 100%) !important;
    margin: 0 auto;
  }

  .ab-what-hero__copy,
  .ab-skincare-hero__copy,
  .ab-treatment-hero__copy {
    width: min(600px, 100%) !important;
    margin-left: auto;
    margin-right: auto;
  }

  .ab-what-tile--image,
  .ab-skincare-tile--image,
  .ab-treatment-tile--image {
    min-height: 360px !important;
  }

  .ab-what-tile--text,
  .ab-skincare-tile--text,
  .ab-treatment-tile--text {
    padding: 52px 26px !important;
  }

  .ab-ingredients-inner {
    padding: 58px 20px 76px !important;
  }

  .ab-ingredients-header h1 {
    font-size: clamp(40px, 9vw, 60px) !important;
  }

  .ab-ingredients-intro {
    font-size: 15.5px !important;
    line-height: 1.75 !important;
  }

  .ab-ingredient-card {
    grid-template-columns: 145px minmax(0, 1fr) !important;
  }

  .ab-ingredient-card h2 {
    font-size: 15.5px !important;
    line-height: 1.22 !important;
    letter-spacing: 0.035em !important;
  }

  .ab-ingredient-card p {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }
}

/* =========================================================
   Mobile
   ========================================================= */

@media screen and (max-width: 640px) {
  .ab-what-hero,
  .ab-skincare-hero,
  .ab-treatment-hero {
    padding: 76px 20px 62px !important;
  }

  .ab-what-hero h1,
  .ab-skincare-hero h1,
  .ab-treatment-hero h1 {
    font-size: clamp(38px, 12vw, 54px) !important;
    line-height: 1.05 !important;
    letter-spacing: 0.025em !important;
  }

  .ab-what-eyebrow,
  .ab-skincare-eyebrow,
  .ab-treatment-eyebrow,
  .ab-what-card-eyebrow,
  .ab-skincare-card-eyebrow,
  .ab-treatment-card-eyebrow {
    font-size: 10.5px !important;
    letter-spacing: 0.18em !important;
  }

  .ab-what-hero__copy,
  .ab-skincare-hero__copy,
  .ab-treatment-hero__copy {
    font-size: 14px !important;
    line-height: 1.75 !important;
  }

  .ab-what-tile--image,
  .ab-skincare-tile--image,
  .ab-treatment-tile--image {
    min-height: 300px !important;
  }

  .ab-what-tile--text,
  .ab-skincare-tile--text,
  .ab-treatment-tile--text {
    padding: 44px 20px !important;
  }

  .ab-what-tile h2,
  .ab-skincare-tile h2,
  .ab-treatment-tile h2 {
    font-size: clamp(28px, 8.5vw, 36px) !important;
    line-height: 1.12 !important;
    letter-spacing: 0.025em !important;
  }

  .ab-what-tile p:not(.ab-what-card-eyebrow),
  .ab-skincare-tile p:not(.ab-skincare-card-eyebrow),
  .ab-treatment-card-copy,
  .ab-treatment-tile p:not(.ab-treatment-card-eyebrow) {
    font-size: 14px !important;
    line-height: 1.72 !important;
  }

  .ab-what-card-eyebrow,
  .ab-skincare-card-eyebrow,
  .ab-treatment-card-eyebrow {
    gap: 12px !important;
  }

  .ab-what-card-eyebrow::after,
  .ab-skincare-card-eyebrow::after,
  .ab-treatment-card-eyebrow::after {
    width: 34px !important;
  }

  .ab-what-cta,
  .ab-skincare-cta,
  .ab-treatment-cta {
    padding: 42px 20px 50px !important;
    min-height: auto !important;
  }

  .ab-what-cta h2,
  .ab-skincare-cta h2,
  .ab-treatment-cta h2 {
    font-size: clamp(22px, 7vw, 30px) !important;
    line-height: 1.28 !important;
  }

  .ab-what-button,
  .ab-skincare-button,
  .ab-treatment-button {
    width: 100% !important;
    max-width: 340px !important;
    min-width: 0 !important;
    font-size: 11px !important;
    letter-spacing: 0.16em !important;
  }

  .ab-ingredients-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .ab-ingredient-card {
    grid-template-columns: 140px minmax(0, 1fr) !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .ab-ingredient-card__content {
    min-height: 150px !important;
    padding: 18px 15px !important;
    overflow: visible !important;
  }

  .ab-ingredient-card__image img,
  .ab-ingredient-placeholder {
    min-height: 150px !important;
    height: 100% !important;
  }

  .ab-ingredient-card h2 {
    font-size: 15px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.032em !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .ab-ingredient-card h2 span {
    white-space: nowrap !important;
  }

  .ab-ingredient-card p {
    font-size: 12.75px !important;
    line-height: 1.48 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .ab-ingredients-footer-text {
    font-size: 22px !important;
    line-height: 1.35 !important;
  }
}

/* =========================================================
   Small mobile
   ========================================================= */

@media screen and (max-width: 480px) {
  .ab-what-hero,
  .ab-skincare-hero,
  .ab-treatment-hero {
    padding: 66px 18px 56px !important;
  }

  .ab-what-hero h1,
  .ab-skincare-hero h1,
  .ab-treatment-hero h1 {
    font-size: clamp(34px, 11vw, 46px) !important;
  }

  .ab-what-tile--image,
  .ab-skincare-tile--image,
  .ab-treatment-tile--image {
    min-height: 260px !important;
  }

  .ab-what-tile--text,
  .ab-skincare-tile--text,
  .ab-treatment-tile--text {
    padding: 38px 18px !important;
  }

  .ab-ingredient-card {
    grid-template-columns: 1fr !important;
  }

  .ab-ingredient-card__image img,
  .ab-ingredient-placeholder {
    width: 100% !important;
    height: 220px !important;
    min-height: 220px !important;
  }

  .ab-ingredient-card__content {
    min-height: 0 !important;
    padding: 20px 18px 22px !important;
  }

  .ab-ingredient-card h2 {
    font-size: 16px !important;
    line-height: 1.22 !important;
  }

  .ab-ingredient-card p {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }
}

/* =========================================================
   Very small mobile
   ========================================================= */

@media screen and (max-width: 360px) {
  .ab-ingredients-inner {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .ab-what-hero,
  .ab-skincare-hero,
  .ab-treatment-hero {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .ab-ingredient-card__image img,
  .ab-ingredient-placeholder {
    height: 200px !important;
    min-height: 200px !important;
  }

  .ab-ingredient-card h2 {
    font-size: 14.5px !important;
    letter-spacing: 0.025em !important;
  }

  .ab-ingredient-card p {
    font-size: 12.5px !important;
  }
}

/* =========================================================
   Ashmira Botanica - Collection / Shop Page Dark Restyle
   Targets actual theme classes from /collections/all
   ========================================================= */

body.template-collection,
body.template-collection #MainContent,
body.template-collection main.site-main {
  background: #141616 !important;
  color: #e8e3dc !important;
}

body.template-collection .section-shell {
  background:
    radial-gradient(circle at 50% 0%, rgba(183, 161, 118, 0.045), transparent 34%),
    linear-gradient(180deg, #141616 0%, #1a1d1d 52%, #141616 100%) !important;
  padding: 0 !important;
}

body.template-collection .page-width {
  max-width: 1680px !important;
  width: 100% !important;
  padding-left: clamp(18px, 4vw, 64px) !important;
  padding-right: clamp(18px, 4vw, 64px) !important;
}

body.template-collection .collection-panel,
body.template-collection .collection-layout {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: clamp(54px, 6vw, 96px) 0 clamp(64px, 7vw, 110px) !important;
}

/* Header / intro */

body.template-collection .section-intro {
  text-align: center !important;
  margin: 0 auto clamp(34px, 4vw, 58px) !important;
  max-width: 960px !important;
}

body.template-collection .section-intro .eyebrow {
  margin: 0 0 18px !important;
  color: #b7a176 !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}

body.template-collection .section-intro .eyebrow::after {
  content: "";
  display: block;
  width: 70px;
  height: 1px;
  margin: 18px auto 0;
  background: rgba(183, 161, 118, 0.42);
}

body.template-collection .section-title {
  margin: 0 !important;
  color: #e8e3dc !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 400 !important;
  font-size: clamp(48px, 6vw, 88px) !important;
  line-height: 1.02 !important;
  letter-spacing: 0.045em !important;
}

/* Toolbar */

body.template-collection .collection-toolbar {
  width: min(1480px, 100%) !important;
  margin: 0 auto clamp(28px, 4vw, 48px) !important;
  padding: 18px 22px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  background: #191b1b !important;
  border: 1px solid rgba(232, 227, 220, 0.13) !important;
}

body.template-collection .collection-toolbar .subtle {
  color: rgba(232, 227, 220, 0.72) !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 13px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

body.template-collection .collection-toolbar select {
  min-height: 42px !important;
  padding: 0 42px 0 16px !important;
  background-color: #141616 !important;
  color: #e8e3dc !important;
  border: 1px solid rgba(232, 227, 220, 0.18) !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* Product grid */

body.template-collection .collection-grid--products {
  width: min(1480px, 100%) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 28px) !important;
}

body.template-collection .product-card,
body.template-collection .product-card--minimal {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.035), rgba(255,255,255,0.014)),
    #191b1b !important;
  border: 1px solid rgba(232, 227, 220, 0.13) !important;
  overflow: hidden !important;
  transition: transform .25s ease, border-color .25s ease, background-color .25s ease !important;
}

body.template-collection .product-card:hover,
body.template-collection .product-card--minimal:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(183, 161, 118, 0.34) !important;
  background-color: #1e2121 !important;
}

/* Product image area */

body.template-collection .product-card .media,
body.template-collection .product-card .media--square {
  background: #101111 !important;
  border-bottom: 1px solid rgba(232, 227, 220, 0.1) !important;
  overflow: hidden !important;
}

body.template-collection .product-card .media img,
body.template-collection .product-card--minimal .media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 18px !important;
  filter: brightness(0.88) contrast(0.98) !important;
  transition: transform .35s ease, filter .35s ease !important;
}

body.template-collection .product-card:hover .media img,
body.template-collection .product-card--minimal:hover .media img {
  transform: scale(1.035) !important;
  filter: brightness(1) contrast(1) !important;
}

/* Product content */

body.template-collection .product-card__content {
  padding: 24px 20px 26px !important;
  text-align: center !important;
}

body.template-collection .product-card__title {
  margin: 0 0 14px !important;
}

body.template-collection .product-card__title,
body.template-collection .product-card__title a {
  color: #e8e3dc !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(20px, 1.5vw, 26px) !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
  letter-spacing: 0.025em !important;
  text-decoration: none !important;
}

body.template-collection .product-card__title a:hover {
  color: #b7a176 !important;
}

body.template-collection .price,
body.template-collection .price *,
body.template-collection .price__current {
  color: #b7a176 !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* Shop Now button */

body.template-collection .ab-product-shop-now {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  margin-top: 18px !important;
  padding: 11px 22px !important;
  border: 1px solid rgba(232, 227, 220, 0.48) !important;
  color: #e8e3dc !important;
  background: transparent !important;
  text-decoration: none !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  transition: background .25s ease, color .25s ease, border-color .25s ease !important;
}

body.template-collection .ab-product-shop-now:hover {
  background: #e8e3dc !important;
  color: #141616 !important;
  border-color: #e8e3dc !important;
}

/* Pagination */

body.template-collection .pagination {
  width: min(1480px, 100%) !important;
  margin: clamp(38px, 5vw, 68px) auto 0 !important;
  padding-top: 28px !important;
  border-top: 1px solid rgba(232, 227, 220, 0.12) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
}

body.template-collection .pagination .subtle {
  color: rgba(232, 227, 220, 0.72) !important;
  font-size: 13px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body.template-collection .pagination .button,
body.template-collection .pagination .button--secondary {
  min-height: 42px !important;
  padding: 11px 22px !important;
  border: 1px solid rgba(232, 227, 220, 0.48) !important;
  background: transparent !important;
  color: #e8e3dc !important;
  border-radius: 0 !important;
  font-size: 11px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

body.template-collection .pagination .button:hover,
body.template-collection .pagination .button--secondary:hover {
  background: #e8e3dc !important;
  color: #141616 !important;
  border-color: #e8e3dc !important;
}

/* Mobile / tablet */

@media screen and (max-width: 1199px) {
  body.template-collection .collection-grid--products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 849px) {
  body.template-collection .collection-panel,
  body.template-collection .collection-layout {
    padding-top: 52px !important;
  }

  body.template-collection .collection-grid--products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.template-collection .collection-toolbar {
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: center !important;
  }

  body.template-collection .collection-toolbar form,
  body.template-collection .collection-toolbar select {
    width: 100% !important;
  }
}

@media screen and (max-width: 540px) {
  body.template-collection .page-width {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body.template-collection .collection-grid--products {
    grid-template-columns: 1fr !important;
  }

  body.template-collection .section-title {
    font-size: clamp(38px, 13vw, 56px) !important;
  }

  body.template-collection .product-card__content {
    padding: 22px 18px 24px !important;
  }

  body.template-collection .product-card__title,
  body.template-collection .product-card__title a {
    font-size: 23px !important;
  }
  
}
/* =========================================================
   Ashmira Botanica - Final Homepage Hero Text Readability Fix
   Soft dark text panel, light text, carousel-safe
   ========================================================= */

/* Keep the hero/carousel layout intact */
#shopify-section-template--29757912187217__hero .hero-minimal {
  position: relative !important;
  isolation: isolate !important;
}

/* Keep the carousel media behind the content */
#shopify-section-template--29757912187217__hero .hero-minimal__media {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
}

/* Content layer stays above carousel */
#shopify-section-template--29757912187217__hero .hero-minimal__content {
  position: relative !important;
  z-index: 5 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding-left: clamp(34px, 5vw, 72px) !important;
  padding-right: clamp(34px, 5vw, 72px) !important;
  padding-top: 8vh !important;
  background: transparent !important;
}

/* Softer dark editorial panel */
#shopify-section-template--29757912187217__hero .hero-minimal__copy {
  position: relative !important;
  z-index: 6 !important;
  width: min(100%, 620px) !important;
  max-width: 620px !important;
  margin: 0 !important;

  padding: clamp(1.75rem, 3.4vw, 3.2rem) !important;
  border-radius: 32px !important;

  background:
    linear-gradient(
      135deg,
      rgba(8, 10, 9, 0.76),
      rgba(18, 20, 18, 0.58)
    ) !important;

  border: 1px solid rgba(232, 219, 181, 0.24) !important;

  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;

  backdrop-filter: blur(8px) saturate(115%) !important;
  -webkit-backdrop-filter: blur(8px) saturate(115%) !important;

  text-align: left !important;
}

/* Remove old hidden eyebrow behaviour */
#shopify-section-template--29757912187217__hero .hero-minimal__copy .eyebrow {
  display: block !important;
}

/* Force every piece of hero text to light */
#shopify-section-template--29757912187217__hero .hero-minimal__copy,
#shopify-section-template--29757912187217__hero .hero-minimal__copy *,
#shopify-section-template--29757912187217__hero .hero-minimal__copy .eyebrow,
#shopify-section-template--29757912187217__hero .hero-minimal__title,
#shopify-section-template--29757912187217__hero .hero-minimal__text,
#shopify-section-template--29757912187217__hero .hero-minimal__text p {
  color: #f7f5f1 !important;
  opacity: 1 !important;
  text-shadow: 0 3px 24px rgba(0, 0, 0, 0.58) !important;
}

/* Eyebrow styling */
#shopify-section-template--29757912187217__hero .hero-minimal__copy .eyebrow {
  color: #eadbb5 !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  margin: 0 0 18px !important;
}

/* Main title override */
#shopify-section-template--29757912187217__hero .hero-minimal__title {
  color: #ffffff !important;
  font-size: clamp(48px, 5.3vw, 82px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.045em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  margin: 0 0 22px !important;
  max-width: 520px !important;
}

/* Supporting text override */
#shopify-section-template--29757912187217__hero .hero-minimal__text,
#shopify-section-template--29757912187217__hero .hero-minimal__text p {
  color: #ece8df !important;
  font-size: clamp(16px, 1.3vw, 21px) !important;
  line-height: 1.6 !important;
  letter-spacing: 0.01em !important;
  max-width: 500px !important;
  margin: 0 !important;
}

/* Add a subtle gold accent line */
#shopify-section-template--29757912187217__hero .hero-minimal__copy::before {
  content: "" !important;
  display: block !important;
  width: 76px !important;
  height: 1px !important;
  margin: 0 0 20px !important;
  background: rgba(232, 219, 181, 0.68) !important;
}

/* Add safe image darkening without changing carousel mechanics */
#shopify-section-template--29757912187217__hero .hero-minimal__media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  pointer-events: none !important;
  display: block !important;

  background:
    linear-gradient(
      90deg,
      rgba(5, 7, 6, 0.32) 0%,
      rgba(5, 7, 6, 0.16) 42%,
      rgba(5, 7, 6, 0.03) 100%
    ) !important;
}

/* Keep carousel slides beneath text and overlay */
#shopify-section-template--29757912187217__hero .media-carousel,
#shopify-section-template--29757912187217__hero .media-carousel--hero,
#shopify-section-template--29757912187217__hero .media-carousel__track,
#shopify-section-template--29757912187217__hero .media-carousel__slide {
  z-index: 1 !important;
}

/* Keep active slide visible */
#shopify-section-template--29757912187217__hero .media-carousel__slide.is-active {
  z-index: 2 !important;
}

/* Keep carousel controls clickable */
#shopify-section-template--29757912187217__hero .media-carousel__controls,
#shopify-section-template--29757912187217__hero .media-carousel__button {
  position: relative !important;
  z-index: 8 !important;
}

/* Disable any previous adaptive light-image styling */
#shopify-section-template--29757912187217__hero .hero-minimal.hero-minimal--image-light .hero-minimal__copy,
#shopify-section-template--29757912187217__hero .hero-minimal.hero-minimal--image-dark .hero-minimal__copy {
  background:
    linear-gradient(
      135deg,
      rgba(8, 10, 9, 0.76),
      rgba(18, 20, 18, 0.58)
    ) !important;
}

#shopify-section-template--29757912187217__hero .hero-minimal.hero-minimal--image-light .hero-minimal__copy,
#shopify-section-template--29757912187217__hero .hero-minimal.hero-minimal--image-light .hero-minimal__copy *,
#shopify-section-template--29757912187217__hero .hero-minimal.hero-minimal--image-dark .hero-minimal__copy,
#shopify-section-template--29757912187217__hero .hero-minimal.hero-minimal--image-dark .hero-minimal__copy * {
  color: #f7f5f1 !important;
  text-shadow: 0 3px 24px rgba(0, 0, 0, 0.58) !important;
}

/* Tablet */
@media screen and (max-width: 989px) {
  #shopify-section-template--29757912187217__hero .hero-minimal__content {
    align-items: center !important;
    justify-content: flex-start !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
    padding-top: 6vh !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__copy {
    width: min(100%, 560px) !important;
    max-width: 560px !important;
    padding: 1.65rem !important;
    border-radius: 26px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__title {
    font-size: clamp(42px, 8vw, 68px) !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__text,
  #shopify-section-template--29757912187217__hero .hero-minimal__text p {
    font-size: 16px !important;
  }
}

/* Mobile */
@media screen and (max-width: 749px) {
  #shopify-section-template--29757912187217__hero .hero-minimal__content {
    align-items: flex-end !important;
    justify-content: center !important;
    padding: 0 20px 42px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__copy {
    width: 100% !important;
    max-width: 100% !important;
    padding: 1.35rem !important;
    border-radius: 24px !important;

    background:
      linear-gradient(
        135deg,
        rgba(8, 10, 9, 0.82),
        rgba(18, 20, 18, 0.68)
      ) !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__copy::before {
    width: 58px !important;
    margin-bottom: 15px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__copy .eyebrow {
    font-size: 10px !important;
    margin-bottom: 14px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__title {
    font-size: clamp(36px, 11vw, 50px) !important;
    line-height: 1 !important;
    margin-bottom: 16px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__text,
  #shopify-section-template--29757912187217__hero .hero-minimal__text p {
    font-size: 14px !important;
    line-height: 1.55 !important;
    max-width: 100% !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__media::after {
    background:
      linear-gradient(
        180deg,
        rgba(5, 7, 6, 0.06) 0%,
        rgba(5, 7, 6, 0.24) 48%,
        rgba(5, 7, 6, 0.46) 100%
      ) !important;
  }
}
/* =========================================================
   Ashmira Botanica — Global Homepage Font Override
   Forces the homepage font style across the whole website
   ========================================================= */

:root {
  --ab-site-font: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html,
body,
main,
#MainContent,
.shopify-section,
.section-shell,
.page-width,
.page-panel,
.page-layout,
.rte,
.article-content {
  font-family: var(--ab-site-font) !important;
}

/* All headings */
h1,
h2,
h3,
h4,
h5,
h6,
.section-title,
.section-heading,
.page-title,
.product-title,
.collection-title,
.article-title,
.blog-title,
.card__heading,
.card__heading a,
.product-card__title,
.product-card__title a,
.article-card__title,
.article-card__title a,
.collection-list-card__title,
.brand-proof-heading,
.brand-proof-press-title,
.founders-story-title,
.pdf-newsletter-title,
.ab-testimonials__title,
.ab-treatment-row__title,
.ab-treatments-heading__title,
.ab-why-title,
.ab-why-content h2,
.ingredient-kicker,
.ingredients-page-title h1,
.ingredients-page-title h1::before {
  font-family: var(--ab-site-font) !important;
}

/* All body/site text */
p,
li,
span,
div,
label,
summary,
input,
textarea,
select,
button,
a,
.section-copy,
.subtle,
.eyebrow,
.article-content p,
.article-content li,
.rte p,
.rte li,
.product-copy,
.product-copy p,
.founders-story-text,
.founders-story-text p,
.brand-proof-intro,
.brand-proof-press-text,
.ab-treatment-row__text,
.ab-treatment-row__text p,
.ab-why-intro p,
.ab-why-content p,
.ingredient-body,
.ingredient-body p {
  font-family: var(--ab-site-font) !important;
}

/* Navigation, buttons, product buttons and utilities */
.header-link,
.header-utility-link,
.header-cart-link,
.mobile-nav-link,
.mobile-nav-details summary,
.mobile-drawer-action-link,
.mobile-drawer-cart,
.footer a,
.footer-heading,
.button,
.btn,
.ab-product-shop-now,
.brand-proof-button,
.founders-story-button,
.ab-five-elements-button,
.tab-button,
.pdf-newsletter-form input,
.pdf-newsletter-form button {
  font-family: var(--ab-site-font) !important;
}

/* Override later page-specific serif usage */
body.template-collection .section-title,
body.template-collection .product-card__title,
body.template-collection .product-card__title a,
body.template-blog .section-title,
body.template-blog .article-card__title,
body.template-blog .article-card__title a,
body.template-article .section-title,
body.template-article .article-panel .section-title,
body.template-product .product-title {
  font-family: var(--ab-site-font) !important;
}
/* =========================================================
   Ashmira Botanica — Final Global Bespoke Font Override
   Forces bespoke page heading/body variables to homepage font
   ========================================================= */

:root,
html,
body,
.ab-skincare-page,
.ab-what-page,
.ab-treatment-page,
.ab-ingredients-page,
.ab-ingredients-rebuild,
.ab-clean-beauty-page,
.ab-green-credentials-page,
.ab-five-elements-page,
.ab-why-page,
.ab-why-wrap,
.ab-faq-page,
.ab-treatments {
  --ab-heading: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  --ab-body: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  --ab-site-font: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  --ab-font-main: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  --font-heading: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  --font-body: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

/* Force bespoke page headings to use the homepage heading font */
.ab-skincare-page h1,
.ab-skincare-page h2,
.ab-skincare-page h3,
.ab-skincare-page h4,
.ab-skincare-page h5,
.ab-skincare-page h6,
.ab-what-page h1,
.ab-what-page h2,
.ab-what-page h3,
.ab-what-page h4,
.ab-what-page h5,
.ab-what-page h6,
.ab-treatment-page h1,
.ab-treatment-page h2,
.ab-treatment-page h3,
.ab-treatment-page h4,
.ab-treatment-page h5,
.ab-treatment-page h6,
.ab-ingredients-page h1,
.ab-ingredients-page h2,
.ab-ingredients-page h3,
.ab-ingredients-page h4,
.ab-ingredients-page h5,
.ab-ingredients-page h6,
.ab-ingredients-rebuild h1,
.ab-ingredients-rebuild h2,
.ab-ingredients-rebuild h3,
.ab-ingredients-rebuild h4,
.ab-ingredients-rebuild h5,
.ab-ingredients-rebuild h6,
.ab-clean-beauty-page h1,
.ab-clean-beauty-page h2,
.ab-clean-beauty-page h3,
.ab-clean-beauty-page h4,
.ab-clean-beauty-page h5,
.ab-clean-beauty-page h6,
.ab-green-credentials-page h1,
.ab-green-credentials-page h2,
.ab-green-credentials-page h3,
.ab-green-credentials-page h4,
.ab-green-credentials-page h5,
.ab-green-credentials-page h6,
.ab-five-elements-page h1,
.ab-five-elements-page h2,
.ab-five-elements-page h3,
.ab-five-elements-page h4,
.ab-five-elements-page h5,
.ab-five-elements-page h6,
.ab-why-page h1,
.ab-why-page h2,
.ab-why-page h3,
.ab-why-page h4,
.ab-why-page h5,
.ab-why-page h6,
.ab-why-wrap h1,
.ab-why-wrap h2,
.ab-why-wrap h3,
.ab-why-wrap h4,
.ab-why-wrap h5,
.ab-why-wrap h6,
.ab-faq-page h1,
.ab-faq-page h2,
.ab-faq-page h3,
.ab-faq-page h4,
.ab-faq-page h5,
.ab-faq-page h6,
.ab-treatments h1,
.ab-treatments h2,
.ab-treatments h3,
.ab-treatments h4,
.ab-treatments h5,
.ab-treatments h6 {
  font-family: var(--ab-heading) !important;
}

/* Force bespoke page body copy, buttons and links to use same font too */
.ab-skincare-page,
.ab-skincare-page *,
.ab-what-page,
.ab-what-page *,
.ab-treatment-page,
.ab-treatment-page *,
.ab-ingredients-page,
.ab-ingredients-page *,
.ab-ingredients-rebuild,
.ab-ingredients-rebuild *,
.ab-clean-beauty-page,
.ab-clean-beauty-page *,
.ab-green-credentials-page,
.ab-green-credentials-page *,
.ab-five-elements-page,
.ab-five-elements-page *,
.ab-why-page,
.ab-why-page *,
.ab-why-wrap,
.ab-why-wrap *,
.ab-faq-page,
.ab-faq-page *,
.ab-treatments,
.ab-treatments * {
  font-family: var(--ab-body) !important;
}
/* Re-apply heading font after the universal body override */
.ab-skincare-page h1,
.ab-skincare-page h2,
.ab-skincare-page h3,
.ab-skincare-page h4,
.ab-skincare-page h5,
.ab-skincare-page h6,
.ab-what-page h1,
.ab-what-page h2,
.ab-what-page h3,
.ab-what-page h4,
.ab-what-page h5,
.ab-what-page h6,
.ab-treatment-page h1,
.ab-treatment-page h2,
.ab-treatment-page h3,
.ab-treatment-page h4,
.ab-treatment-page h5,
.ab-treatment-page h6,
.ab-ingredients-page h1,
.ab-ingredients-page h2,
.ab-ingredients-page h3,
.ab-ingredients-page h4,
.ab-ingredients-page h5,
.ab-ingredients-page h6,
.ab-ingredients-rebuild h1,
.ab-ingredients-rebuild h2,
.ab-ingredients-rebuild h3,
.ab-ingredients-rebuild h4,
.ab-ingredients-rebuild h5,
.ab-ingredients-rebuild h6,
.ab-clean-beauty-page h1,
.ab-clean-beauty-page h2,
.ab-clean-beauty-page h3,
.ab-clean-beauty-page h4,
.ab-clean-beauty-page h5,
.ab-clean-beauty-page h6,
.ab-green-credentials-page h1,
.ab-green-credentials-page h2,
.ab-green-credentials-page h3,
.ab-green-credentials-page h4,
.ab-green-credentials-page h5,
.ab-green-credentials-page h6,
.ab-five-elements-page h1,
.ab-five-elements-page h2,
.ab-five-elements-page h3,
.ab-five-elements-page h4,
.ab-five-elements-page h5,
.ab-five-elements-page h6,
.ab-why-page h1,
.ab-why-page h2,
.ab-why-page h3,
.ab-why-page h4,
.ab-why-page h5,
.ab-why-page h6,
.ab-why-wrap h1,
.ab-why-wrap h2,
.ab-why-wrap h3,
.ab-why-wrap h4,
.ab-why-wrap h5,
.ab-why-wrap h6,
.ab-faq-page h1,
.ab-faq-page h2,
.ab-faq-page h3,
.ab-faq-page h4,
.ab-faq-page h5,
.ab-faq-page h6,
.ab-treatments h1,
.ab-treatments h2,
.ab-treatments h3,
.ab-treatments h4,
.ab-treatments h5,
.ab-treatments h6 {
  font-family: var(--ab-heading) !important;
}
.ab-home-text-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 28px;
}

.ab-editorial-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 180px;
  min-height: 44px;
  padding: 12px 28px;
  border: 1px solid rgba(232, 227, 220, 0.55);
  background: transparent;
  color: #e8e3dc;
  text-decoration: none;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  transition: background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease;
}

.ab-editorial-button:hover,
.ab-editorial-button:focus-visible {
  background: #e8e3dc;
  color: #141616;
  border-color: #e8e3dc;
  transform: translateY(-1px);
}
/* =========================================================
   Ashmira Botanica — Homepage Hero Slider Height + Text Box Reduce
   Targets: .hero-minimal / .media-carousel--hero
   ========================================================= */

.template-index .hero-minimal-shell {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.template-index .hero-minimal {
  min-height: clamp(420px, 58vh, 640px) !important;
}

.template-index .hero-minimal__media,
.template-index .hero-minimal .media,
.template-index .hero-minimal .media--cinematic,
.template-index .media-carousel--hero,
.template-index .media-carousel--hero .media-carousel__track,
.template-index .media-carousel--hero .media-carousel__slide {
  min-height: clamp(420px, 58vh, 640px) !important;
  height: clamp(420px, 58vh, 640px) !important;
  max-height: 640px !important;
}

.template-index .media-carousel--hero .media-carousel__slide img,
.template-index .hero-minimal__media img,
.template-index .hero-minimal .media img {
  width: 100% !important;
  height: 100% !important;
  min-height: clamp(420px, 58vh, 640px) !important;
  max-height: 640px !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Reduce the overlay/text box footprint */
.template-index .hero-minimal__content {
  padding: clamp(22px, 3vw, 42px) !important;
}

.template-index .hero-minimal__copy {
  width: min(520px, 92%) !important;
  max-width: 520px !important;
  padding: clamp(24px, 3.2vw, 44px) !important;
  background: rgba(20, 22, 22, 0.72) !important;
  border: 1px solid rgba(232, 227, 220, 0.14) !important;
  backdrop-filter: blur(8px);
}

.template-index .hero-minimal__copy .eyebrow {
  margin-bottom: 12px !important;
  font-size: 11px !important;
  letter-spacing: 0.2em !important;
}

.template-index .hero-minimal__title {
  margin-bottom: 14px !important;
  font-size: clamp(32px, 4.2vw, 58px) !important;
  line-height: 1.05 !important;
  letter-spacing: 0.02em !important;
}

.template-index .hero-minimal__text {
  font-size: clamp(14px, 1.2vw, 17px) !important;
  line-height: 1.65 !important;
  max-width: 440px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Keep hero controls from feeling oversized */
.template-index .media-carousel__controls--overlay {
  bottom: 20px !important;
}

.template-index .media-carousel__button {
  width: 42px !important;
  height: 42px !important;
  font-size: 28px !important;
}

/* Tablet */
@media screen and (max-width: 989px) {
  .template-index .hero-minimal,
  .template-index .hero-minimal__media,
  .template-index .hero-minimal .media,
  .template-index .hero-minimal .media--cinematic,
  .template-index .media-carousel--hero,
  .template-index .media-carousel--hero .media-carousel__track,
  .template-index .media-carousel--hero .media-carousel__slide,
  .template-index .media-carousel--hero .media-carousel__slide img,
  .template-index .hero-minimal__media img,
  .template-index .hero-minimal .media img {
    min-height: 520px !important;
    height: 520px !important;
    max-height: 520px !important;
  }

  .template-index .hero-minimal__copy {
    width: min(500px, 92%) !important;
    padding: 28px 24px !important;
  }

  .template-index .hero-minimal__title {
    font-size: clamp(32px, 7vw, 48px) !important;
  }
}

/* Mobile */
@media screen and (max-width: 640px) {
  .template-index .hero-minimal,
  .template-index .hero-minimal__media,
  .template-index .hero-minimal .media,
  .template-index .hero-minimal .media--cinematic,
  .template-index .media-carousel--hero,
  .template-index .media-carousel--hero .media-carousel__track,
  .template-index .media-carousel--hero .media-carousel__slide,
  .template-index .media-carousel--hero .media-carousel__slide img,
  .template-index .hero-minimal__media img,
  .template-index .hero-minimal .media img {
    min-height: 460px !important;
    height: 460px !important;
    max-height: 460px !important;
  }

  .template-index .hero-minimal__content {
    padding: 18px !important;
  }

  .template-index .hero-minimal__copy {
    width: min(100%, 420px) !important;
    padding: 22px 18px !important;
    background: rgba(20, 22, 22, 0.78) !important;
  }

  .template-index .hero-minimal__copy .eyebrow {
    font-size: 10px !important;
    letter-spacing: 0.16em !important;
  }

  .template-index .hero-minimal__title {
    font-size: clamp(28px, 9vw, 40px) !important;
    line-height: 1.08 !important;
  }

  .template-index .hero-minimal__text {
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  .template-index .media-carousel__controls--overlay {
    bottom: 14px !important;
  }

  .template-index .media-carousel__button {
    width: 36px !important;
    height: 36px !important;
    font-size: 24px !important;
  }
}

/* =========================================================
   Ashmira Botanica — Mobile/Tablet Logo True Centre Fix
   ========================================================= */

@media screen and (max-width: 989px) {
  .site-header .header-inner {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 92px !important;
  }

  .site-header .header-brand {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    justify-content: center !important;
    z-index: 2 !important;
  }

  .site-header .header-logo-link,
  .site-header .header-logo-mark {
    justify-content: center !important;
  }

  .site-header .header-logo-image {
    width: 150px !important;
    max-width: 150px !important;
    height: auto !important;
  }

  .site-header .icon-button.header-toggle {
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 3 !important;
  }

  .site-header .header-actions {
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 3 !important;
  }
}

@media screen and (max-width: 540px) {
  .site-header .header-inner {
    min-height: 88px !important;
  }

  .site-header .header-logo-image {
    width: 142px !important;
    max-width: 142px !important;
  }

  .site-header .header-cart-link {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    font-size: 11px !important;
  }

  .site-header .icon-button.header-toggle {
    width: 44px !important;
    height: 44px !important;
  }
}
/* Mobile/tablet header logo spacing */
@media screen and (max-width: 989px) {
  .site-header .header-inner {
    min-height: 112px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

  .site-header .header-brand {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .site-header .header-logo-image {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }
}

@media screen and (max-width: 540px) {
  .site-header .header-inner {
    min-height: 118px !important;
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }

  .site-header .header-logo-image {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
}
/* =========================================================
   Ashmira Promo Pair — Match Right Side Typography + Alignment
   ========================================================= */

#shopify-section-template--29757912187217__promo .ab-promo-pair__panel {
  position: relative !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

#shopify-section-template--29757912187217__promo .ab-promo-pair__image {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
}

#shopify-section-template--29757912187217__promo .ab-promo-pair__overlay,
#shopify-section-template--29757912187217__promo .ab-promo-pair__text-content {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  height: 100% !important;
  padding: clamp(24px, 4vw, 56px) !important;

  text-align: center !important;
  color: #e8e3dc !important;
  background: rgba(20, 22, 22, 0.28) !important;
}

#shopify-section-template--29757912187217__promo .ab-promo-pair__overlay h2,
#shopify-section-template--29757912187217__promo .ab-promo-pair__text-content h2 {
  margin: 0 !important;
  color: #e8e3dc !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: clamp(26px, 3.2vw, 46px) !important;
  line-height: 1.05 !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-align: center !important;
}

#shopify-section-template--29757912187217__promo .ab-promo-pair__line {
  display: block !important;
  width: 58px !important;
  height: 1px !important;
  margin: 18px auto !important;
  background: rgba(232, 227, 220, 0.72) !important;
}

#shopify-section-template--29757912187217__promo .ab-promo-pair__overlay p,
#shopify-section-template--29757912187217__promo .ab-promo-pair__text-content p {
  margin: 0 !important;
  color: rgba(232, 227, 220, 0.88) !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: clamp(13px, 1.15vw, 16px) !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-align: center !important;
}

#shopify-section-template--29757912187217__promo .ab-promo-pair__panel:hover .ab-promo-pair__image {
  transform: scale(1.035) !important;
}

#shopify-section-template--29757912187217__promo .ab-promo-pair__image {
  transition: transform 0.7s ease !important;
}

@media screen and (max-width: 749px) {
  #shopify-section-template--29757912187217__promo .ab-promo-pair__overlay,
  #shopify-section-template--29757912187217__promo .ab-promo-pair__text-content {
    padding: 24px 18px !important;
  }

  #shopify-section-template--29757912187217__promo .ab-promo-pair__overlay h2,
  #shopify-section-template--29757912187217__promo .ab-promo-pair__text-content h2 {
    font-size: clamp(22px, 7vw, 32px) !important;
    letter-spacing: 0.065em !important;
  }

  #shopify-section-template--29757912187217__promo .ab-promo-pair__overlay p,
  #shopify-section-template--29757912187217__promo .ab-promo-pair__text-content p {
    font-size: 12px !important;
    letter-spacing: 0.1em !important;
  }
}
/* =========================================================
   Ashmira Promo Pair — Subtitle Left Align Inside Each Panel
   ========================================================= */

#shopify-section-template--29757912187217__promo .ab-promo-pair__overlay p,
#shopify-section-template--29757912187217__promo .ab-promo-pair__text-content p {
  width: 100% !important;
  max-width: 320px !important;
  text-align: left !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* =========================================================
   Ashmira Promo Pair — Left Align Subtitle + Dash Together
   ========================================================= */

#shopify-section-template--29757912187217__promo .ab-promo-pair__line {
  width: 58px !important;
  height: 1px !important;
  margin: 18px auto 18px !important;
  background: rgba(232, 227, 220, 0.72) !important;
  align-self: center !important;
  transform: translateX(-131px) !important;
}

#shopify-section-template--29757912187217__promo .ab-promo-pair__overlay p,
#shopify-section-template--29757912187217__promo .ab-promo-pair__text-content p {
  width: 100% !important;
  max-width: 320px !important;
  text-align: left !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* =========================================================
   Homepage — Equal Reduced Spacing Between Promo Pair,
   Collection List, Brand Proof and Founder's Story
   ========================================================= */

#shopify-section-template--29757912187217__promo,
#shopify-section-template--29757912187217__collections,
#shopify-section-template--29757912187217__proof,
#shopify-section-template--29757912187217__founders_story_EwjRqY {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Equal vertical spacing on each section */
#shopify-section-template--29757912187217__promo .section-shell,
#shopify-section-template--29757912187217__promo .ab-promo-pair,
#shopify-section-template--29757912187217__collections .section-shell,
#shopify-section-template--29757912187217__collections .home-section,
#shopify-section-template--29757912187217__proof .section-shell,
#shopify-section-template--29757912187217__proof .home-section,
#shopify-section-template--29757912187217__proof .brand-proof-shell,
#shopify-section-template--29757912187217__founders_story_EwjRqY .section-shell,
#shopify-section-template--29757912187217__founders_story_EwjRqY .founders-story-section {
  padding-top: clamp(24px, 3vw, 44px) !important;
  padding-bottom: clamp(24px, 3vw, 44px) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Remove extra inherited spacing inside these sections */
#shopify-section-template--29757912187217__promo .ab-promo-pair__inner,
#shopify-section-template--29757912187217__collections .home-section__wrap,
#shopify-section-template--29757912187217__collections .collection-list-panel,
#shopify-section-template--29757912187217__proof .home-section__wrap,
#shopify-section-template--29757912187217__proof .brand-proof-panel,
#shopify-section-template--29757912187217__proof .brand-proof-group,
#shopify-section-template--29757912187217__founders_story_EwjRqY .founders-story-width,
#shopify-section-template--29757912187217__founders_story_EwjRqY .founders-story-grid {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Stop adjacent sections adding extra spacing between each other */
#shopify-section-template--29757912187217__promo + #shopify-section-template--29757912187217__collections,
#shopify-section-template--29757912187217__collections + #shopify-section-template--29757912187217__proof,
#shopify-section-template--29757912187217__proof + #shopify-section-template--29757912187217__founders_story_EwjRqY {
  margin-top: 0 !important;
}
/* =========================================================
   Ashmira Testimonials — Move Scroll Buttons Below Cards
   ========================================================= */

#shopify-section-template--29757912187217__ashmira_testimonials_hGEkCX .ab-testimonials__inner {
  position: relative !important;
}

#shopify-section-template--29757912187217__ashmira_testimonials_hGEkCX .ab-testimonials__header {
  position: static !important;
}

#shopify-section-template--29757912187217__ashmira_testimonials_hGEkCX .ab-testimonials__arrows {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;

  width: min(360px, 100%) !important;
  margin: 32px auto 0 !important;
  padding: 0 !important;

  transform: none !important;
  inset: auto !important;
}

#shopify-section-template--29757912187217__ashmira_testimonials_hGEkCX .ab-testimonials__arrow {
  position: static !important;
  transform: none !important;

  width: 46px !important;
  height: 46px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  margin: 0 !important;
  padding: 0 0 4px !important;

  border-radius: 999px !important;
  border: 1px solid rgba(232, 227, 220, 0.38) !important;
  background: rgba(20, 22, 22, 0.52) !important;
  color: #e8e3dc !important;

  font-size: 32px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

#shopify-section-template--29757912187217__ashmira_testimonials_hGEkCX .ab-testimonials__arrow:hover {
  background: #e8e3dc !important;
  color: #141616 !important;
  border-color: #e8e3dc !important;
}

@media screen and (max-width: 749px) {
  #shopify-section-template--29757912187217__ashmira_testimonials_hGEkCX .ab-testimonials__arrows {
    width: min(260px, 100%) !important;
    margin-top: 24px !important;
  }

  #shopify-section-template--29757912187217__ashmira_testimonials_hGEkCX .ab-testimonials__arrow {
    width: 42px !important;
    height: 42px !important;
    font-size: 28px !important;
  }
}
/* =========================================================
   Homepage — Brand Intro Text Width Fix
   ========================================================= */

#shopify-section-template--29757912187217__intro .page-width,
#shopify-section-template--29757912187217__intro .home-section__wrap {
  width: 100% !important;
  max-width: 100% !important;
}

#shopify-section-template--29757912187217__intro .brand-intro-block {
  width: 90% !important;
  max-width: 90% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#shopify-section-template--29757912187217__intro .brand-intro-text,
#shopify-section-template--29757912187217__intro .brand-intro-text p,
#shopify-section-template--29757912187217__intro .section-copy,
#shopify-section-template--29757912187217__intro .section-copy p {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* =========================================================
   What We Do Page — Intro Paragraph Width Only
   ========================================================= */

body.template-page .ab-what-page .ab-what-hero__inner {
  width: min(1100px, 90%) !important;
  max-width: 90% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.template-page .ab-what-page .ab-what-hero h1,
body.template-page .ab-what-page .ab-what-eyebrow,
body.template-page .ab-what-page .ab-what-rule {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.template-page .ab-what-page .ab-what-hero__copy,
body.template-page .ab-what-page .ab-what-hero__copy p {
  width: 100% !important;
  max-width: none !important;
}
/* =========================================================
   Founder's Story — Centre Founder Image on Tablet/Mobile
   ========================================================= */

@media screen and (max-width: 989px) {
  #shopify-section-template--29757912187217__founders_story_EwjRqY .founders-story-media {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  #shopify-section-template--29757912187217__founders_story_EwjRqY .founders-story-media img {
    display: block !important;
    width: min(70%, 520px) !important;
    max-width: 100% !important;
    height: auto !important;

    margin-left: auto !important;
    margin-right: auto !important;

    object-fit: contain !important;
    object-position: center center !important;
  }
}

@media screen and (max-width: 640px) {
  #shopify-section-template--29757912187217__founders_story_EwjRqY .founders-story-media img {
    width: min(82%, 360px) !important;
  }
}
/* =========================================================
   Homepage Hero — Improve Text Legibility on Tablet/Mobile
   ========================================================= */

@media screen and (max-width: 989px) {
  #shopify-section-template--29757912187217__hero .hero-minimal__copy {
    width: min(88vw, 390px) !important;
    max-width: 390px !important;
    padding: 20px 22px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__copy .eyebrow {
    font-size: 10px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.13em !important;
    margin-bottom: 8px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__title {
    font-size: clamp(28px, 5.2vw, 38px) !important;
    line-height: 1.08 !important;
    margin-bottom: 9px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__text {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }
}

@media screen and (max-width: 640px) {
  #shopify-section-template--29757912187217__hero .hero-minimal__copy {
    width: min(88vw, 340px) !important;
    max-width: 340px !important;
    padding: 17px 18px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__copy .eyebrow {
    font-size: 9px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.11em !important;
    margin-bottom: 7px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__title {
    font-size: clamp(24px, 7vw, 31px) !important;
    line-height: 1.1 !important;
    margin-bottom: 8px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__text {
    font-size: 13px !important;
    line-height: 1.45 !important;
  }
}

@media screen and (max-width: 380px) {
  #shopify-section-template--29757912187217__hero .hero-minimal__copy {
    width: min(88vw, 310px) !important;
    max-width: 310px !important;
    padding: 15px 16px !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__title {
    font-size: clamp(22px, 7vw, 28px) !important;
  }

  #shopify-section-template--29757912187217__hero .hero-minimal__text {
    font-size: 12.5px !important;
  }
}
/* =========================================================
   Homepage Hero — Mobile / Tablet Text Size Strong Override
   ========================================================= */

@media screen and (max-width: 989px) {
  body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy > .eyebrow {
    font-size: 11px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.13em !important;
    margin-bottom: 10px !important;
  }

  body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy > .hero-minimal__title {
    font-size: clamp(31px, 5.8vw, 42px) !important;
    line-height: 1.08 !important;
    margin-bottom: 10px !important;
  }

  body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy > .hero-minimal__text {
    font-size: 15px !important;
    line-height: 1.5 !important;
  }
}

@media screen and (max-width: 640px) {
  body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy {
    max-width: 340px !important;
    padding: 18px 18px !important;
  }

  body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy > .eyebrow {
    font-size: 9.5px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.11em !important;
    margin-bottom: 8px !important;
  }

  body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy > .hero-minimal__title {
    font-size: clamp(27px, 7.8vw, 34px) !important;
    line-height: 1.08 !important;
    margin-bottom: 8px !important;
  }

  body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy > .hero-minimal__text {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }
}

@media screen and (max-width: 380px) {
  body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy > .hero-minimal__title {
    font-size: 25px !important;
  }

  body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy > .hero-minimal__text {
    font-size: 13.5px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Controlled Editorial Title Styling
   Replaces the previous broad wildcard title override
   ========================================================= */

body.template-index .hero-minimal__title,
body.template-page .section-intro > .section-title,
body.template-page .page-panel > .section-intro .section-title,
body.template-page .page-layout > .section-intro .section-title,
body.template-blog .section-intro > .section-title,
body.template-collection .collection-panel > .section-intro .section-title,
body.template-collection .collection-layout > .section-intro .section-title,
body.template-article .article-panel > .section-intro .section-title,
body.template-article .article-layout > .section-intro .section-title,
.ab-what-hero h1,
.ab-skincare-hero h1,
.ab-treatment-hero h1,
.ab-gifting-hero h1,
.ab-treatments-heading__title,
.ab-why-title,
.ab-clean-header h1,
.ab-clean-beauty-page .ab-clean-header h1,
.ab-green-header h1,
.ab-green-credentials-page .ab-green-header h1,
.ab-five-elements-header h1,
.ab-five-elements-page .ab-five-elements-header h1,
.ab-ingredients-header h1,
.ingredients-page-title h1,
.ingredients-page-title h1::before {
  text-transform: uppercase !important;
  letter-spacing: 0.035em !important;
  font-weight: 300 !important;
}
/* =========================================================
   Ashmira Botanica — Hero Minimal Title Uppercase Fix
   ========================================================= */

body .hero-minimal__title,
body.template-index #shopify-section-template--29757912187217__hero .hero-minimal__copy > .hero-minimal__title,
body.template-index #shopify-section-template--29757912187217__hero h1.hero-minimal__title {
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-weight: 400 !important;
}
/* =========================================================
   Ashmira Botanica — Safer Title Width Handling
   Keeps long hero titles readable without touching every h1/h2/h3
   ========================================================= */

/* Allow hero/title containers to breathe */
body .hero-minimal__copy,
body.template-page .section-intro,
body.template-page .home-section__intro,
body.template-page .brand-intro-block,
body.template-page .page-panel,
body .ab-what-hero__inner,
body .ab-gifting-hero__content,
body .ab-gifting-section-heading,
body .ab-gifting-contact__content {
  max-width: min(1120px, 92vw) !important;
}

/* Main page/hero titles only */
body.template-index .hero-minimal__title,
body.template-page .section-intro > .section-title,
body.template-page .page-panel > .section-intro .section-title,
body.template-page .page-layout > .section-intro .section-title,
body.template-blog .section-intro > .section-title,
body.template-collection .collection-panel > .section-intro .section-title,
body.template-collection .collection-layout > .section-intro .section-title,
body.template-article .article-panel > .section-intro .section-title,
body.template-article .article-layout > .section-intro .section-title,
body .ab-what-hero h1,
body .ab-skincare-hero h1,
body .ab-treatment-hero h1,
body .ab-gifting-hero h1,
body .ab-why-title,
body .ab-treatments-heading__title,
body .ingredients-page-title h1,
body .ingredients-page-title h1::before {
  max-width: min(920px, 92vw) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  letter-spacing: 0.035em !important;
}

/* Medium/card titles where long words are more likely to wrap badly */
body .collection-list-card__title,
body .brand-proof-press-title,
body .product-card__title,
body .product-card__title a,
body .ab-gifting-benefit h2,
body .ab-gifting-option h2,
body .ab-gifting-step h3,
body .ab-what-tile h2,
body .ab-what-cta h2 {
  max-width: min(860px, 94vw) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  letter-spacing: 0.035em !important;
}

/* Specific fix for Corporate Gifting cards */
body .ab-gifting-benefit h2,
body .ab-gifting-option h2 {
  width: 100% !important;
  max-width: 100% !important;
  letter-spacing: 0.08em !important;
  line-height: 1.35 !important;
}

/* Specific fix for homepage hero inline max-width */
body.template-index .hero-minimal__copy,
body.template-index .hero-minimal__title {
  max-width: min(620px, 92vw) !important;
}

/* Tablet/mobile: reduce tracking slightly so uppercase titles remain readable */
@media screen and (max-width: 989px) {
  body.template-index .hero-minimal__title,
  body.template-page .section-intro > .section-title,
  body.template-page .page-panel > .section-intro .section-title,
  body.template-page .page-layout > .section-intro .section-title,
  body .ab-what-hero h1,
  body .ab-skincare-hero h1,
  body .ab-treatment-hero h1,
  body .ab-gifting-hero h1,
  body .ab-gifting-benefit h2,
  body .ab-gifting-option h2,
  body .ab-what-tile h2 {
    letter-spacing: 0.03em !important;
  }
}

@media screen and (max-width: 640px) {
  body.template-index .hero-minimal__title,
  body.template-page .section-intro > .section-title,
  body.template-page .page-panel > .section-intro .section-title,
  body.template-page .page-layout > .section-intro .section-title,
  body .ab-what-hero h1,
  body .ab-skincare-hero h1,
  body .ab-treatment-hero h1,
  body .ab-gifting-hero h1,
  body .ab-gifting-benefit h2,
  body .ab-gifting-option h2,
  body .ab-what-tile h2 {
    letter-spacing: 0.02em !important;
  }
}
/* =========================================================
   Corporate Gifting — Match Homepage Partner Ticker Styling
   ========================================================= */

body.template-page .ab-gifting-seen {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;

  padding: 24px 0 26px !important;
  margin: 0 auto !important;

  background: #000000 !important;
  color: #e8e3dc !important;

  border-top: 1px solid #343837 !important;
  border-bottom: 1px solid #343837 !important;

  text-align: center !important;
}

body.template-page .ab-gifting-seen > p {
  width: min(980px, calc(100% - 36px)) !important;
  margin: 0 auto 18px !important;

  color: #e8e3dc !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: clamp(22px, 2.4vw, 34px) !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-align: center !important;
}

body.template-page .ab-gifting-seen__logos {
  width: max-content !important;
  max-width: none !important;
  margin: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0 !important;

  animation: abCorporateTickerScroll 34s linear infinite !important;
  will-change: transform !important;
}

body.template-page .ab-gifting-seen:hover .ab-gifting-seen__logos {
  animation-play-state: paused !important;
}

body.template-page .ab-gifting-seen__logo {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 150px !important;
  min-height: 74px !important;

  padding: 0 clamp(28px, 4vw, 64px) !important;
  margin: 0 !important;

  opacity: 1 !important;
  transform: none !important;
}

body.template-page .ab-gifting-seen__logo img {
  display: block !important;
  width: auto !important;
  height: auto !important;

  max-width: 170px !important;
  max-height: 200px !important;

  object-fit: contain !important;
  opacity: 0.82 !important;

  filter: none !important;
  mix-blend-mode: normal !important;

  transition: opacity 0.25s ease, transform 0.25s ease !important;
}

body.template-page .ab-gifting-seen__logo:hover img {
  opacity: 1 !important;
  transform: translateY(-2px) !important;
}

/* Side fade overlays to match homepage ticker */
body.template-page .ab-gifting-seen {
  position: relative !important;
}

body.template-page .ab-gifting-seen::before,
body.template-page .ab-gifting-seen::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 110px !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

body.template-page .ab-gifting-seen::before {
  left: 0 !important;
  background: linear-gradient(90deg, #000000 0%, rgba(0, 0, 0, 0) 100%) !important;
}

body.template-page .ab-gifting-seen::after {
  right: 0 !important;
  background: linear-gradient(270deg, #000000 0%, rgba(0, 0, 0, 0) 100%) !important;
}

/* This scroll works with the existing corporate logo list */
@keyframes abCorporateTickerScroll {
  from {
    transform: translateX(100vw);
  }

  to {
    transform: translateX(-100%);
  }
}

@media screen and (max-width: 989px) {
  body.template-page .ab-gifting-seen {
    padding: 22px 0 24px !important;
  }

  body.template-page .ab-gifting-seen > p {
    font-size: clamp(20px, 5vw, 30px) !important;
    letter-spacing: 0.06em !important;
  }

  body.template-page .ab-gifting-seen__logo {
    padding: 0 34px !important;
    min-width: 132px !important;
    min-height: 64px !important;
  }

  body.template-page .ab-gifting-seen__logo img {
    max-width: 145px !important;
    max-height: 100px !important;
  }
}

@media screen and (max-width: 640px) {
  body.template-page .ab-gifting-seen {
    padding: 18px 0 20px !important;
  }

  body.template-page .ab-gifting-seen > p {
    width: min(100% - 28px, 620px) !important;
    margin-bottom: 14px !important;
    font-size: 20px !important;
    letter-spacing: 0.045em !important;
  }

  body.template-page .ab-gifting-seen::before,
  body.template-page .ab-gifting-seen::after {
    width: 54px !important;
  }

  body.template-page .ab-gifting-seen__logo {
    padding: 0 24px !important;
    min-width: 112px !important;
    min-height: 54px !important;
  }

  body.template-page .ab-gifting-seen__logo img {
    max-width: 124px !important;
    max-height: 100px !important;
  }
}
/* =========================================================
   Footer — Replace Social Text Links With Icons
   ========================================================= */

.footer-nav:has(a[href*="facebook.com"]) ul,
.footer-nav:has(a[href*="instagram.com"]) ul,
.footer-nav:has(a[href*="youtube.com"]) ul {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  padding-left: 0 !important;
  margin-top: 14px !important;
  list-style: none !important;
}

.footer-nav a[href*="facebook.com"],
.footer-nav a[href*="instagram.com"],
.footer-nav a[href*="youtube.com"] {
  width: 42px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  border: 1px solid rgba(232, 227, 220, 0.24) !important;
  border-radius: 999px !important;
  background: rgba(232, 227, 220, 0.04) !important;

  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  text-decoration: none !important;

  transition:
    background 0.25s ease,
    border-color 0.25s ease,
    transform 0.25s ease,
    opacity 0.25s ease !important;
}

.footer-nav a[href*="facebook.com"]::before,
.footer-nav a[href*="instagram.com"]::before,
.footer-nav a[href*="youtube.com"]::before {
  content: "" !important;
  display: block !important;
  width: 19px !important;
  height: 19px !important;
  background: #e8e3dc !important;
  transition: background 0.25s ease !important;
}

/* Facebook icon */
.footer-nav a[href*="facebook.com"]::before {
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22 12.06C22 6.48 17.52 2 11.94 2S2 6.48 2 12.06c0 5.04 3.69 9.22 8.5 9.94v-7.03H7.98v-2.91h2.52V9.84c0-2.49 1.48-3.86 3.74-3.86 1.08 0 2.21.19 2.21.19v2.43H15.2c-1.23 0-1.61.76-1.61 1.54v1.85h2.74l-.44 2.91h-2.3V22c4.81-.72 8.41-4.9 8.41-9.94Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22 12.06C22 6.48 17.52 2 11.94 2S2 6.48 2 12.06c0 5.04 3.69 9.22 8.5 9.94v-7.03H7.98v-2.91h2.52V9.84c0-2.49 1.48-3.86 3.74-3.86 1.08 0 2.21.19 2.21.19v2.43H15.2c-1.23 0-1.61.76-1.61 1.54v1.85h2.74l-.44 2.91h-2.3V22c4.81-.72 8.41-4.9 8.41-9.94Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* Instagram icon */
.footer-nav a[href*="instagram.com"]::before {
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.75 2h8.5A5.76 5.76 0 0 1 22 7.75v8.5A5.76 5.76 0 0 1 16.25 22h-8.5A5.76 5.76 0 0 1 2 16.25v-8.5A5.76 5.76 0 0 1 7.75 2Zm0 2A3.75 3.75 0 0 0 4 7.75v8.5A3.75 3.75 0 0 0 7.75 20h8.5A3.75 3.75 0 0 0 20 16.25v-8.5A3.75 3.75 0 0 0 16.25 4h-8.5ZM12 7.2A4.8 4.8 0 1 1 12 16.8 4.8 4.8 0 0 1 12 7.2Zm0 2A2.8 2.8 0 1 0 12 14.8 2.8 2.8 0 0 0 12 9.2Zm5.25-2.35a1.15 1.15 0 1 1 0 2.3 1.15 1.15 0 0 1 0-2.3Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.75 2h8.5A5.76 5.76 0 0 1 22 7.75v8.5A5.76 5.76 0 0 1 16.25 22h-8.5A5.76 5.76 0 0 1 2 16.25v-8.5A5.76 5.76 0 0 1 7.75 2Zm0 2A3.75 3.75 0 0 0 4 7.75v8.5A3.75 3.75 0 0 0 7.75 20h8.5A3.75 3.75 0 0 0 20 16.25v-8.5A3.75 3.75 0 0 0 16.25 4h-8.5ZM12 7.2A4.8 4.8 0 1 1 12 16.8 4.8 4.8 0 0 1 12 7.2Zm0 2A2.8 2.8 0 1 0 12 14.8 2.8 2.8 0 0 0 12 9.2Zm5.25-2.35a1.15 1.15 0 1 1 0 2.3 1.15 1.15 0 0 1 0-2.3Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* YouTube icon */
.footer-nav a[href*="youtube.com"]::before,
.footer-nav a[href*="youtu.be"]::before {
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.58 7.18a2.75 2.75 0 0 0-1.94-1.95C17.93 4.77 12 4.77 12 4.77s-5.93 0-7.64.46a2.75 2.75 0 0 0-1.94 1.95C1.96 8.9 1.96 12.5 1.96 12.5s0 3.6.46 5.32a2.75 2.75 0 0 0 1.94 1.95c1.71.46 7.64.46 7.64.46s5.93 0 7.64-.46a2.75 2.75 0 0 0 1.94-1.95c.46-1.72.46-5.32.46-5.32s0-3.6-.46-5.32ZM10.01 15.76V9.24l5.24 3.26-5.24 3.26Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.58 7.18a2.75 2.75 0 0 0-1.94-1.95C17.93 4.77 12 4.77 12 4.77s-5.93 0-7.64.46a2.75 2.75 0 0 0-1.94 1.95C1.96 8.9 1.96 12.5 1.96 12.5s0 3.6.46 5.32a2.75 2.75 0 0 0 1.94 1.95c1.71.46 7.64.46 7.64.46s5.93 0 7.64-.46a2.75 2.75 0 0 0 1.94-1.95c.46-1.72.46-5.32.46-5.32s0-3.6-.46-5.32ZM10.01 15.76V9.24l5.24 3.26-5.24 3.26Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.footer-nav a[href*="facebook.com"]:hover,
.footer-nav a[href*="instagram.com"]:hover,
.footer-nav a[href*="youtube.com"]:hover {
  background: #e8e3dc !important;
  border-color: #e8e3dc !important;
  transform: translateY(-2px) !important;
}

.footer-nav a[href*="facebook.com"]:hover::before,
.footer-nav a[href*="instagram.com"]:hover::before,
.footer-nav a[href*="youtube.com"]:hover::before {
  background: #141616 !important;
}
/* =========================================================
   Footer — LinkedIn Social Icon
   ========================================================= */

.footer-nav a[href*="linkedin.com"] {
  width: 42px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  border: 1px solid rgba(232, 227, 220, 0.24) !important;
  border-radius: 999px !important;
  background: rgba(232, 227, 220, 0.04) !important;

  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  text-decoration: none !important;

  transition:
    background 0.25s ease,
    border-color 0.25s ease,
    transform 0.25s ease,
    opacity 0.25s ease !important;
}

.footer-nav a[href*="linkedin.com"]::before {
  content: "" !important;
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  background: #e8e3dc !important;

  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.98 3.5C4.98 4.88 3.86 6 2.5 6S0 4.88 0 3.5 1.12 1 2.5 1s2.48 1.12 2.48 2.5ZM.34 8.04h4.32V23H.34V8.04ZM8.22 8.04h4.14v2.04h.06c.58-1.1 1.99-2.26 4.1-2.26 4.38 0 5.18 2.88 5.18 6.62V23h-4.32v-7.6c0-1.82-.03-4.16-2.54-4.16-2.54 0-2.93 1.98-2.93 4.02V23H8.22V8.04Z'/%3E%3C/svg%3E") center / contain no-repeat !important;

  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.98 3.5C4.98 4.88 3.86 6 2.5 6S0 4.88 0 3.5 1.12 1 2.5 1s2.48 1.12 2.48 2.5ZM.34 8.04h4.32V23H.34V8.04ZM8.22 8.04h4.14v2.04h.06c.58-1.1 1.99-2.26 4.1-2.26 4.38 0 5.18 2.88 5.18 6.62V23h-4.32v-7.6c0-1.82-.03-4.16-2.54-4.16-2.54 0-2.93 1.98-2.93 4.02V23H8.22V8.04Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.footer-nav a[href*="linkedin.com"]:hover {
  background: #e8e3dc !important;
  border-color: #e8e3dc !important;
  transform: translateY(-2px) !important;
}

.footer-nav a[href*="linkedin.com"]:hover::before {
  background: #141616 !important;
}
<section class="section-shell">
  <div class="page-width">
    <div class="collection-panel collection-layout">
      <div class="section-intro">
        <div class="eyebrow">Collection</div>
        <h1 class="section-title">{{ collection.title }}</h1>
        {% if collection.description != blank %}<div class="section-copy">{{ collection.description }}</div>{% endif %}
      </div>

      <div class="collection-toolbar">
        <div class="subtle">{{ collection.products_count }} product{% if collection.products_count != 1 %}s{% endif %}</div>
        <form method="get">
          <label class="visually-hidden" for="SortBy">Sort by</label>
          <select name="sort_by" id="SortBy" onchange="this.form.submit()">
            {% assign sort_by = collection.sort_by | default: collection.default_sort_by %}
            {% for option in collection.sort_options %}
              <option value="{{ option.value | escape }}" {% if option.value == sort_by %}selected{% endif %}>{{ option.name }}</option>
            {% endfor %}
          </select>
        </form>
      </div>

      {% paginate collection.products by section.settings.products_per_page %}
        {% if collection.products_count > 0 %}
          <div class="collection-grid--products">
            {% for product in collection.products %}
              {% render 'product-card', product_card_product: product, show_excerpt: true %}
            {% endfor %}
          </div>
        {% else %}
          <div class="empty-state">No products found in this collection.</div>
        {% endif %}

        {% if paginate.pages > 1 %}
          <nav class="pagination" aria-label="Pagination">
            {% if paginate.previous %}
              <a class="button button--secondary" href="{{ paginate.previous.url }}">Previous</a>
            {% endif %}
            <span class="subtle">Page {{ paginate.current_page }} of {{ paginate.pages }}</span>
            {% if paginate.next %}
              <a class="button button--secondary" href="{{ paginate.next.url }}">Next</a>
            {% endif %}
          </nav>
        {% endif %}
      {% endpaginate %}
    </div>
  </div>
</section>

/* =========================================================
   Collections Listing Page — Ashmira Editorial Restyle
   URL: /collections
   ========================================================= */

body.template-list-collections {
  background:
    radial-gradient(circle at 50% 0%, rgba(183, 161, 118, 0.05), transparent 34%),
    linear-gradient(180deg, #141616 0%, #1a1d1d 48%, #141616 100%) !important;
  color: #e8e3dc !important;
}

body.template-list-collections main.site-main {
  background: transparent !important;
  padding: 0 !important;
}

#collections-listing {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: clamp(64px, 8vw, 120px) clamp(18px, 4vw, 64px) clamp(72px, 8vw, 120px) !important;
  background:
    linear-gradient(rgba(20, 22, 22, 0.78), rgba(20, 22, 22, 0.92)),
    radial-gradient(circle at top center, rgba(183, 161, 118, 0.08), transparent 38%) !important;
  color: #e8e3dc !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

#collections-listing::before {
  content: "Shop by Collection" !important;
  display: block !important;
  margin: 0 auto 14px !important;
  color: #b7a176 !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}

#collections-listing h2 {
  margin: 0 auto clamp(34px, 5vw, 58px) !important;
  color: #e8e3dc !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: clamp(34px, 5.4vw, 72px) !important;
  line-height: 1.04 !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  max-width: min(980px, 94vw) !important;
}

#collections-listing h2::after {
  content: "" !important;
  display: block !important;
  width: 72px !important;
  height: 1px !important;
  margin: 24px auto 0 !important;
  background: rgba(183, 161, 118, 0.52) !important;
}

#collections-listing ul {
  width: min(1420px, 100%) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;

  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 30px) !important;
}

#collections-listing li {
  position: relative !important;
  min-height: 190px !important;
  padding: clamp(28px, 3vw, 42px) 24px !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;

  background:
    linear-gradient(180deg, rgba(232, 227, 220, 0.055), rgba(232, 227, 220, 0.025)),
    #191b1b !important;

  border: 1px solid rgba(232, 227, 220, 0.14) !important;
  border-radius: 0 !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.16) !important;
  overflow: hidden !important;

  transition:
    transform 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease,
    box-shadow 0.28s ease !important;
}

#collections-listing li::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at top left, rgba(183, 161, 118, 0.12), transparent 42%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.035), transparent 38%) !important;
  opacity: 0 !important;
  transition: opacity 0.28s ease !important;
  pointer-events: none !important;
}

#collections-listing li::after {
  content: "" !important;
  position: absolute !important;
  left: 28px !important;
  right: 28px !important;
  bottom: 22px !important;
  height: 1px !important;
  background: rgba(183, 161, 118, 0.26) !important;
  transform: scaleX(0) !important;
  transform-origin: center !important;
  transition: transform 0.28s ease !important;
}

#collections-listing li:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(183, 161, 118, 0.42) !important;
  background:
    linear-gradient(180deg, rgba(232, 227, 220, 0.075), rgba(232, 227, 220, 0.035)),
    #1e2121 !important;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.24) !important;
}

#collections-listing li:hover::before {
  opacity: 1 !important;
}

#collections-listing li:hover::after {
  transform: scaleX(1) !important;
}

#collections-listing li strong {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  font-weight: 400 !important;
}

#collections-listing li strong a {
  color: #e8e3dc !important;
  text-decoration: none !important;
  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: clamp(18px, 1.5vw, 24px) !important;
  line-height: 1.25 !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  transition: color 0.25s ease !important;
}

#collections-listing li:hover strong a {
  color: #eadbb5 !important;
}

#collections-listing .hint {
  position: relative !important;
  z-index: 1 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  margin: 0 !important;
  padding: 8px 14px !important;

  border: 1px solid rgba(183, 161, 118, 0.28) !important;
  border-radius: 999px !important;

  color: rgba(232, 227, 220, 0.72) !important;
  background: rgba(232, 227, 220, 0.035) !important;

  font-family: Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 11px !important;
  line-height: 1 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

#collections-listing #pagination {
  margin-top: 38px !important;
}

/* Hide odd empty pagination container if Shopify outputs nothing */
#collections-listing #pagination:empty {
  display: none !important;
}

@media screen and (max-width: 1180px) {
  #collections-listing ul {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 749px) {
  #collections-listing {
    padding: 54px 18px 70px !important;
  }

  #collections-listing::before {
    font-size: 10.5px !important;
    letter-spacing: 0.22em !important;
  }

  #collections-listing h2 {
    font-size: clamp(30px, 10vw, 46px) !important;
    letter-spacing: 0.045em !important;
    margin-bottom: 34px !important;
  }

  #collections-listing ul {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  #collections-listing li {
    min-height: 150px !important;
    padding: 28px 20px !important;
  }

  #collections-listing li strong a {
    font-size: 17px !important;
    letter-spacing: 0.055em !important;
  }

  #collections-listing .hint {
    font-size: 10px !important;
    letter-spacing: 0.13em !important;
  }
}
/* =========================================================
   Founder Page — Improved Editorial Layout + Text Alignment
   ========================================================= */

body.template-page .ab-founder-page {
  background:
    radial-gradient(circle at 50% 0%, rgba(183, 161, 118, 0.06), transparent 34%),
    linear-gradient(180deg, #141616 0%, #171919 45%, #141616 100%) !important;
}

/* Give the founder content more breathing room */
body.template-page .ab-founder-main {
  padding: clamp(42px, 5vw, 78px) clamp(18px, 4vw, 64px) !important;
}

/* Improve the overall two-column card proportions */
body.template-page .ab-founder-main__inner {
  width: min(1480px, 100%) !important;
  display: grid !important;
  grid-template-columns: minmax(360px, 0.9fr) minmax(0, 1.1fr) !important;
  align-items: stretch !important;
  gap: 0 !important;

  background:
    linear-gradient(180deg, rgba(232, 227, 220, 0.035), rgba(232, 227, 220, 0.015)),
    #191b1b !important;

  border: 1px solid rgba(232, 227, 220, 0.14) !important;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.22) !important;
}

/* Image panel should feel like a proper editorial portrait panel */
body.template-page .ab-founder-image-panel {
  height: 100% !important;
  max-height: none !important;
  min-height: 680px !important;
  align-self: stretch !important;
  background: #101111 !important;
}

body.template-page .ab-founder-image-panel img {
  width: 100% !important;
  height: 100% !important;
  min-height: 680px !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  filter: brightness(0.9) contrast(0.98) !important;
}

/* Right content panel: centred, but structured */
body.template-page .ab-founder-copy-panel {
  padding: clamp(42px, 5vw, 82px) clamp(30px, 5vw, 86px) !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  text-align: center !important;
}

/* Create a consistent centred title/subtitle group */
body.template-page .ab-founder-copy-panel h2,
body.template-page .ab-founder-copy-panel .ab-founder-role,
body.template-page .ab-founder-copy-panel .ab-founder-copy-line {
  width: 100% !important;
  max-width: 620px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Title */
body.template-page .ab-founder-copy-panel h2 {
  margin-top: 0 !important;
  margin-bottom: 14px !important;

  color: #e8e3dc !important;
  font-size: clamp(42px, 4.6vw, 72px) !important;
  line-height: 1.04 !important;
  font-weight: 400 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
}

/* Subtitle / role */
body.template-page .ab-founder-role {
  margin: 0 auto !important;
  color: #b7a176 !important;

  font-size: 12px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
}

/* Divider line aligned with the centred title/subtitle */
body.template-page .ab-founder-copy-line {
  display: block !important;
  width: 72px !important;
  max-width: 72px !important;
  height: 1px !important;

  margin: 24px auto 30px !important;
  background: rgba(183, 161, 118, 0.52) !important;
}

/* Body copy: centred but controlled so it does not look messy */
body.template-page .ab-founder-body {
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 auto !important;

  color: rgba(232, 227, 220, 0.76) !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
  letter-spacing: 0.01em !important;
  text-align: center !important;
}

body.template-page .ab-founder-body p {
  margin: 0 !important;
  text-align: center !important;
}

/* Button sits neatly below the centred copy */
body.template-page .ab-founder-button {
  margin: 32px auto 0 !important;
  align-self: center !important;
}

/* Quote section: bring it closer and make it feel more connected */
body.template-page .ab-founder-quote {
  padding-top: 0 !important;
  padding-bottom: clamp(54px, 6vw, 92px) !important;
}

body.template-page .ab-founder-quote__inner {
  width: min(1080px, 100%) !important;
  background:
    radial-gradient(circle at top center, rgba(183, 161, 118, 0.08), transparent 34%),
    #191b1b !important;
  border: 1px solid rgba(232, 227, 220, 0.14) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.18) !important;
}

/* Tablet */
@media screen and (max-width: 989px) {
  body.template-page .ab-founder-main__inner {
    grid-template-columns: 1fr !important;
  }

  body.template-page .ab-founder-image-panel {
    min-height: 520px !important;
  }

  body.template-page .ab-founder-image-panel img {
    min-height: 520px !important;
    max-height: 620px !important;
    object-position: center top !important;
  }

  body.template-page .ab-founder-copy-panel {
    padding: clamp(34px, 5vw, 58px) clamp(22px, 5vw, 48px) !important;
  }

  body.template-page .ab-founder-copy-panel h2 {
    max-width: 760px !important;
    font-size: clamp(38px, 7vw, 58px) !important;
  }

  body.template-page .ab-founder-body {
    max-width: 780px !important;
  }
}

/* Mobile */
@media screen and (max-width: 640px) {
  body.template-page .ab-founder-main {
    padding: 34px 14px !important;
  }

  body.template-page .ab-founder-image-panel {
    min-height: 390px !important;
  }

  body.template-page .ab-founder-image-panel img {
    min-height: 390px !important;
    max-height: 470px !important;
    object-fit: cover !important;
    object-position: center top !important;
  }

  body.template-page .ab-founder-copy-panel {
    padding: 30px 20px 34px !important;
  }

  body.template-page .ab-founder-copy-panel h2 {
    font-size: clamp(32px, 10vw, 42px) !important;
    line-height: 1.08 !important;
    letter-spacing: 0.045em !important;
    margin-bottom: 12px !important;
  }

  body.template-page .ab-founder-role {
    font-size: 11px !important;
    line-height: 1.55 !important;
    letter-spacing: 0.16em !important;
  }

  body.template-page .ab-founder-copy-line {
    margin: 20px auto 24px !important;
  }

  body.template-page .ab-founder-body {
    font-size: 14px !important;
    line-height: 1.75 !important;
  }

  body.template-page .ab-founder-button {
    width: 100% !important;
    max-width: 340px !important;
    margin-top: 28px !important;
  }
}
/* =========================================================
   Founder Page — Reduce Image Size After Layout Restyle
   ========================================================= */

body.template-page .ab-founder-main__inner {
  width: min(1280px, 100%) !important;
  grid-template-columns: minmax(300px, 0.78fr) minmax(0, 1.22fr) !important;
}

body.template-page .ab-founder-image-panel {
  min-height: 520px !important;
  max-height: 620px !important;
  height: auto !important;
  align-self: center !important;
}

body.template-page .ab-founder-image-panel img {
  min-height: 520px !important;
  max-height: 620px !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}

/* Keep the copy panel balanced now the image is smaller */
body.template-page .ab-founder-copy-panel {
  padding: clamp(38px, 4.5vw, 72px) clamp(34px, 5vw, 86px) !important;
}

/* Tablet */
@media screen and (max-width: 989px) {
  body.template-page .ab-founder-main__inner {
    grid-template-columns: 1fr !important;
    width: min(900px, 100%) !important;
  }

  body.template-page .ab-founder-image-panel {
    min-height: 430px !important;
    max-height: 520px !important;
  }

  body.template-page .ab-founder-image-panel img {
    min-height: 430px !important;
    max-height: 520px !important;
  }
}

/* Mobile */
@media screen and (max-width: 640px) {
  body.template-page .ab-founder-image-panel {
    min-height: 320px !important;
    max-height: 390px !important;
  }

  body.template-page .ab-founder-image-panel img {
    min-height: 320px !important;
    max-height: 390px !important;
  }
}
/* =========================================================
   Founder Page — Softer Flowing Layout, Less Boxed-In
   ========================================================= */

/* Give the whole founder section more side breathing room */
body.template-page .ab-founder-main {
  padding: clamp(52px, 6vw, 92px) clamp(28px, 7vw, 120px) !important;
}

/* Remove boxed card feel from the main content area */
body.template-page .ab-founder-main__inner {
  width: min(1380px, 100%) !important;
  grid-template-columns: minmax(300px, 0.82fr) minmax(0, 1.18fr) !important;
  gap: clamp(38px, 5vw, 86px) !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  align-items: center !important;
}

/* Remove image panel border/boxed effect */
body.template-page .ab-founder-image-panel {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;

  min-height: 500px !important;
  max-height: 620px !important;
  height: auto !important;
  align-self: center !important;
}

body.template-page .ab-founder-image-panel::after {
  display: none !important;
  content: none !important;
}

/* Keep image elegant but not oversized */
body.template-page .ab-founder-image-panel img {
  width: 100% !important;
  height: auto !important;
  min-height: 500px !important;
  max-height: 620px !important;

  object-fit: cover !important;
  object-position: center top !important;

  display: block !important;
  filter: brightness(0.9) contrast(0.98) !important;
}

/* Make the right copy feel centred and flowing, not boxed */
body.template-page .ab-founder-copy-panel {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  text-align: center !important;
}

/* Title/subtitle group: same width, same centre axis */
body.template-page .ab-founder-copy-panel h2,
body.template-page .ab-founder-copy-panel .ab-founder-role,
body.template-page .ab-founder-copy-panel .ab-founder-copy-line {
  width: 100% !important;
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Main title */
body.template-page .ab-founder-copy-panel h2 {
  margin: 0 0 14px !important;

  color: #e8e3dc !important;
  font-size: clamp(42px, 4.6vw, 70px) !important;
  line-height: 1.04 !important;
  font-weight: 400 !important;
  letter-spacing: 0.065em !important;
  text-transform: uppercase !important;
}

/* Subtitle */
body.template-page .ab-founder-role {
  margin: 0 auto !important;

  color: #b7a176 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
}

/* Divider line */
body.template-page .ab-founder-copy-line {
  width: 72px !important;
  max-width: 72px !important;
  height: 1px !important;

  margin: 24px auto 30px !important;
  background: rgba(183, 161, 118, 0.52) !important;
}

/* Body copy: wider and more natural */
body.template-page .ab-founder-body {
  width: 100% !important;
  max-width: 780px !important;
  margin: 0 auto !important;

  color: rgba(232, 227, 220, 0.76) !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
  letter-spacing: 0.01em !important;
  text-align: center !important;
}

body.template-page .ab-founder-body p {
  margin: 0 !important;
  text-align: center !important;
}

/* Button alignment */
body.template-page .ab-founder-button {
  margin: 34px auto 0 !important;
  align-self: center !important;
}

/* Quote should also feel less boxed */
body.template-page .ab-founder-quote {
  padding: 0 clamp(28px, 7vw, 120px) clamp(64px, 7vw, 108px) !important;
}

body.template-page .ab-founder-quote__inner {
  width: min(1080px, 100%) !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  padding: clamp(36px, 5vw, 68px) 0 !important;
}

/* Add a subtle rule instead of a hard box */
body.template-page .ab-founder-quote__inner::before {
  content: "" !important;
  display: block !important;
  width: 86px !important;
  height: 1px !important;
  margin: 0 auto 30px !important;
  background: rgba(183, 161, 118, 0.48) !important;
}

/* Tablet */
@media screen and (max-width: 989px) {
  body.template-page .ab-founder-main {
    padding: clamp(42px, 6vw, 68px) clamp(24px, 6vw, 64px) !important;
  }

  body.template-page .ab-founder-main__inner {
    grid-template-columns: 1fr !important;
    gap: 38px !important;
    width: min(900px, 100%) !important;
  }

  body.template-page .ab-founder-image-panel {
    min-height: 420px !important;
    max-height: 520px !important;
    width: min(620px, 100%) !important;
    margin: 0 auto !important;
  }

  body.template-page .ab-founder-image-panel img {
    min-height: 420px !important;
    max-height: 520px !important;
  }

  body.template-page .ab-founder-copy-panel h2 {
    max-width: 760px !important;
    font-size: clamp(38px, 7vw, 58px) !important;
  }

  body.template-page .ab-founder-body {
    max-width: 780px !important;
  }
}

/* Mobile */
@media screen and (max-width: 640px) {
  body.template-page .ab-founder-main {
    padding: 36px 22px !important;
  }

  body.template-page .ab-founder-main__inner {
    gap: 30px !important;
  }

  body.template-page .ab-founder-image-panel {
    width: 100% !important;
    min-height: 320px !important;
    max-height: 390px !important;
  }

  body.template-page .ab-founder-image-panel img {
    min-height: 320px !important;
    max-height: 390px !important;
  }

  body.template-page .ab-founder-copy-panel h2 {
    font-size: clamp(32px, 10vw, 42px) !important;
    line-height: 1.08 !important;
    letter-spacing: 0.045em !important;
    margin-bottom: 12px !important;
  }

  body.template-page .ab-founder-role {
    max-width: 320px !important;
    font-size: 11px !important;
    line-height: 1.55 !important;
    letter-spacing: 0.16em !important;
  }

  body.template-page .ab-founder-copy-line {
    margin: 20px auto 24px !important;
  }

  body.template-page .ab-founder-body {
    font-size: 14px !important;
    line-height: 1.75 !important;
  }

  body.template-page .ab-founder-quote {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }
}

/* =========================================================
   Ashmira Botanica — Global Page Hero Header Typography Fix
   Keeps every page hero heading consistent across page templates
   ========================================================= */

:root {
  --ab-page-hero-heading-font-size: clamp(34px, 4vw, 48px);
  --ab-page-hero-heading-weight: 100;
}

/*
  Page hero titles only.
  This intentionally excludes the homepage hero slider title so the homepage
  can keep its separate campaign styling.
*/
body:not(.template-index) .section-intro .section-title,
body:not(.template-index) .page-panel > .section-intro .section-title,
body:not(.template-index) .page-layout > .section-intro .section-title,
body:not(.template-index) .collection-panel .section-title,
body:not(.template-index) .article-panel .section-title,
body:not(.template-index) .main-page-title,
body:not(.template-index) .page-title,
body:not(.template-index) .collection-hero__title,
body:not(.template-index) .blog-hero__title,
body:not(.template-index) .article-template__title,
body:not(.template-index) .product__title,
body:not(.template-index) .product-title,

/* Bespoke Ashmira page heroes */
body:not(.template-index) .ab-what-hero h1,
body:not(.template-index) .ab-skincare-hero h1,
body:not(.template-index) .ab-treatment-hero h1,
body:not(.template-index) .ab-why-hero h1,
body:not(.template-index) .ab-why-title,
body:not(.template-index) .ab-treatments-heading__title,
body:not(.template-index) .ingredients-page-title h1::before,
body:not(.template-index) .ab-ingredients-header h1,
body:not(.template-index) .ab-clean-beauty-page .section-title,
body:not(.template-index) .ab-green-credentials-page .section-title,
body:not(.template-index) .ab-five-elements-page .section-title,

/* Shopify template-specific safety selectors */
body.template-page .section-title,
body.template-page .page-panel .section-title,
body.template-page .page-layout .section-title,
body.template-blog .section-title,
body.template-article .article-panel .section-title,
body.template-collection .collection-panel .section-title,
body.template-product .product-title {
  font-family: var(--ab-heading, var(--font-heading-family, inherit)) !important;
  font-size: var(--ab-page-hero-heading-font-size) !important;
  line-height: 1.06 !important;
  font-weight: var(--ab-page-hero-heading-weight) !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  max-height: none !important;
}

/* Keep spacing consistent after the smaller hero title */
body:not(.template-index) .section-intro .section-title,
body:not(.template-index) .page-panel > .section-intro .section-title,
body:not(.template-index) .page-layout > .section-intro .section-title,
body:not(.template-index) .collection-panel .section-title,
body:not(.template-index) .article-panel .section-title,
body:not(.template-index) .ab-what-hero h1,
body:not(.template-index) .ab-skincare-hero h1,
body:not(.template-index) .ab-treatment-hero h1,
body:not(.template-index) .ab-why-hero h1,
body:not(.template-index) .ab-treatments-heading__title,
body:not(.template-index) .ingredients-page-title h1::before,
body.template-product .product-title {
  margin-top: 0 !important;
}

/* Mobile: still capped at 48px, but scales down more gracefully */
@media screen and (max-width: 749px) {
  :root {
    --ab-page-hero-heading-font-size: clamp(32px, 10vw, 48px);
  }

  body:not(.template-index) .section-intro .section-title,
  body:not(.template-index) .page-panel > .section-intro .section-title,
  body:not(.template-index) .page-layout > .section-intro .section-title,
  body:not(.template-index) .collection-panel .section-title,
  body:not(.template-index) .article-panel .section-title,
  body:not(.template-index) .main-page-title,
  body:not(.template-index) .page-title,
  body:not(.template-index) .collection-hero__title,
  body:not(.template-index) .blog-hero__title,
  body:not(.template-index) .article-template__title,
  body:not(.template-index) .product__title,
  body:not(.template-index) .product-title,
  body:not(.template-index) .ab-what-hero h1,
  body:not(.template-index) .ab-skincare-hero h1,
  body:not(.template-index) .ab-treatment-hero h1,
  body:not(.template-index) .ab-why-hero h1,
  body:not(.template-index) .ab-why-title,
  body:not(.template-index) .ab-treatments-heading__title,
  body:not(.template-index) .ingredients-page-title h1::before,
  body:not(.template-index) .ab-ingredients-header h1,
  body:not(.template-index) .ab-clean-beauty-page .section-title,
  body:not(.template-index) .ab-green-credentials-page .section-title,
  body:not(.template-index) .ab-five-elements-page .section-title,
  body.template-page .section-title,
  body.template-blog .section-title,
  body.template-article .article-panel .section-title,
  body.template-collection .collection-panel .section-title,
  body.template-product .product-title {
    font-size: var(--ab-page-hero-heading-font-size) !important;
    line-height: 1.08 !important;
    font-weight: 100 !important;
  }
}
/* =========================================================
   Ashmira Botanica — True Page Hero Header Typography Fix
   Paste at the VERY BOTTOM of assets/ashmira-dark-restyle.css
   ========================================================= */

:root {
  --ab-page-hero-title-font: var(--ab-heading, var(--font-heading-family, inherit));
  --ab-page-hero-title-size: clamp(34px, 4vw, 48px);
  --ab-page-hero-title-size-mobile: clamp(30px, 9vw, 42px);
  --ab-page-hero-title-weight: 100;
}

/* 
   Target actual page hero/header titles only.
   This avoids changing card headings, section cards, product tiles, footer headings, etc.
*/
body.template-page .section-intro > .section-title,
body.template-page .page-panel > .section-intro .section-title,
body.template-page .page-layout > .section-intro .section-title,

body.template-blog .section-intro > .section-title,
body.template-blog .section-title,

body.template-collection .collection-panel > .section-intro .section-title,
body.template-collection .collection-layout > .section-intro .section-title,

body.template-article .article-panel > .section-intro .section-title,
body.template-article .article-layout > .section-intro .section-title,

body.template-product .product-title,

body .hero-minimal__title,
body.template-index .hero-minimal__title,

body .ab-what-hero h1,
body .ab-skincare-hero h1,
body .ab-treatment-hero h1,
body .ab-gifting-hero h1,

body .ab-treatments-heading__title,
body .ab-why-title,
body .ab-clean-promise__intro h2,
body .ab-green-credentials-intro h2,
body .ab-five-elements-intro__elements,

body .ab-ingredients-header h1,
body .ingredients-page-title h1,
body .ab-faq-page .section-title,
body .ab-faq-hero h1 {
  font-family: var(--ab-page-hero-title-font) !important;
  font-size: var(--ab-page-hero-title-size) !important;
  line-height: 1.05 !important;
  font-weight: var(--ab-page-hero-title-weight) !important;
  max-height: none !important;

  /*
    Keep the editorial uppercase styling already used across the site,
    but make the spacing less aggressive so 48px headers do not look oversized.
  */
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;

  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

/* 
   Important: your Favourite Ingredients page creates the visible title
   through h1::before, so the pseudo-element must be targeted separately.
*/
body .ingredients-page-title h1::before {
  font-family: var(--ab-page-hero-title-font) !important;
  font-size: var(--ab-page-hero-title-size) !important;
  line-height: 1.05 !important;
  font-weight: var(--ab-page-hero-title-weight) !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

/* Eyebrow/kicker text should stay small */
body .ab-what-eyebrow,
body .ab-skincare-eyebrow,
body .ab-treatment-eyebrow,
body .ab-why-kicker,
body .ab-treatments-heading__eyebrow,
body .ab-clean-promise__eyebrow,
body .ab-green-credentials-eyebrow,
body.template-blog .section-intro .eyebrow,
body.template-collection .collection-panel .section-intro .eyebrow {
  font-size: 10px !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
}

/* Mobile version */
@media screen and (max-width: 749px) {
  body.template-page .section-intro > .section-title,
  body.template-page .page-panel > .section-intro .section-title,
  body.template-page .page-layout > .section-intro .section-title,

  body.template-blog .section-intro > .section-title,
  body.template-blog .section-title,

  body.template-collection .collection-panel > .section-intro .section-title,
  body.template-collection .collection-layout > .section-intro .section-title,

  body.template-article .article-panel > .section-intro .section-title,
  body.template-article .article-layout > .section-intro .section-title,

  body.template-product .product-title,

  body .hero-minimal__title,
  body.template-index .hero-minimal__title,

  body .ab-what-hero h1,
  body .ab-skincare-hero h1,
  body .ab-treatment-hero h1,
  body .ab-gifting-hero h1,

  body .ab-treatments-heading__title,
  body .ab-why-title,
  body .ab-clean-promise__intro h2,
  body .ab-green-credentials-intro h2,
  body .ab-five-elements-intro__elements,

  body .ab-ingredients-header h1,
  body .ingredients-page-title h1,
  body .ab-faq-page .section-title,
  body .ab-faq-hero h1 {
    font-size: var(--ab-page-hero-title-size-mobile) !important;
    line-height: 1.08 !important;
    font-weight: var(--ab-page-hero-title-weight) !important;
    letter-spacing: 0.035em !important;
  }

  body .ingredients-page-title h1::before {
    font-size: var(--ab-page-hero-title-size-mobile) !important;
    line-height: 1.08 !important;
    font-weight: var(--ab-page-hero-title-weight) !important;
    letter-spacing: 0.035em !important;
  }
}
/* =========================================================
   Ashmira Botanica — Final Page Hero Header Lock
   Keeps page titles smaller, softer and consistent
   ========================================================= */

:root {
  --ab-final-page-title-font: var(--ab-heading, var(--font-heading-family, inherit));
  --ab-final-page-title-size: clamp(30px, 3.2vw, 42px);
  --ab-final-page-title-size-mobile: clamp(28px, 8.5vw, 38px);
  --ab-final-page-title-weight: 300;
  --ab-final-page-title-spacing: 0.025em;
}

.ab-clean-header h1,
.ab-clean-beauty-page .ab-clean-header h1,
.ab-green-header h1,
.ab-green-credentials-page .ab-green-header h1,
.ab-five-elements-header h1,
.ab-five-elements-page .ab-five-elements-header h1,
.ab-what-hero h1,
.ab-skincare-hero h1,
.ab-treatment-hero h1,
.ab-gifting-hero h1,
.ab-treatments-heading__title,
.ab-why-title,
.ab-ingredients-header h1,
.ingredients-page-title h1,
.ingredients-page-title h1::before,
body.template-page .section-intro > .section-title,
body.template-page .page-panel > .section-intro .section-title,
body.template-page .page-layout > .section-intro .section-title,
body.template-blog .section-intro > .section-title,
body.template-collection .collection-panel > .section-intro .section-title,
body.template-collection .collection-layout > .section-intro .section-title,
body.template-article .article-panel > .section-intro .section-title,
body.template-article .article-layout > .section-intro .section-title {
  font-family: var(--ab-final-page-title-font) !important;
  font-size: var(--ab-final-page-title-size) !important;
  line-height: 1.08 !important;
  font-weight: var(--ab-final-page-title-weight) !important;
  letter-spacing: var(--ab-final-page-title-spacing) !important;
  text-transform: uppercase !important;
  max-width: min(920px, 92vw) !important;
  max-height: none !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

@media screen and (max-width: 749px) {
  .ab-clean-header h1,
  .ab-clean-beauty-page .ab-clean-header h1,
  .ab-green-header h1,
  .ab-green-credentials-page .ab-green-header h1,
  .ab-five-elements-header h1,
  .ab-five-elements-page .ab-five-elements-header h1,
  .ab-what-hero h1,
  .ab-skincare-hero h1,
  .ab-treatment-hero h1,
  .ab-gifting-hero h1,
  .ab-treatments-heading__title,
  .ab-why-title,
  .ab-ingredients-header h1,
  .ingredients-page-title h1,
  .ingredients-page-title h1::before,
  body.template-page .section-intro > .section-title,
  body.template-page .page-panel > .section-intro .section-title,
  body.template-page .page-layout > .section-intro .section-title,
  body.template-blog .section-intro > .section-title,
  body.template-collection .collection-panel > .section-intro .section-title,
  body.template-collection .collection-layout > .section-intro .section-title,
  body.template-article .article-panel > .section-intro .section-title,
  body.template-article .article-layout > .section-intro .section-title {
    font-size: var(--ab-final-page-title-size-mobile) !important;
    line-height: 1.1 !important;
    font-weight: var(--ab-final-page-title-weight) !important;
    letter-spacing: 0.02em !important;
  }
}
/* =========================================================
   Ashmira Botanica — About Page H2 + Body Content Alignment Fix
   Aligns H2 headings with their body copy on About Us page
   ========================================================= */

#ab-about-template--30139933884753__main .ab-content-panel,
#ab-about-template--30139933884753__main .ab-elements-intro {
  text-align: left !important;
  align-items: flex-start !important;
}

#ab-about-template--30139933884753__main .ab-content-panel h2,
#ab-about-template--30139933884753__main .ab-elements-intro h2,
#ab-about-template--30139933884753__main .ab-content-panel .ab-kicker,
#ab-about-template--30139933884753__main .ab-elements-intro .ab-kicker,
#ab-about-template--30139933884753__main .ab-content-panel .ab-richtext,
#ab-about-template--30139933884753__main .ab-elements-intro .ab-richtext {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#ab-about-template--30139933884753__main .ab-content-panel h2,
#ab-about-template--30139933884753__main .ab-elements-intro h2 {
  width: 100% !important;
  max-width: 650px !important;
}

/* Keep the paragraph/body text on the same left edge as the H2 */
#ab-about-template--30139933884753__main .ab-content-panel .ab-richtext,
#ab-about-template--30139933884753__main .ab-elements-intro .ab-richtext {
  width: 100% !important;
  max-width: 650px !important;
}

/* Mobile override: undo the inline mobile centre alignment */
@media screen and (max-width: 749px) {
  #ab-about-template--30139933884753__main .ab-content-panel,
  #ab-about-template--30139933884753__main .ab-elements-intro {
    text-align: left !important;
    align-items: flex-start !important;
  }

  #ab-about-template--30139933884753__main .ab-content-panel h2,
  #ab-about-template--30139933884753__main .ab-elements-intro h2,
  #ab-about-template--30139933884753__main .ab-content-panel .ab-kicker,
  #ab-about-template--30139933884753__main .ab-elements-intro .ab-kicker,
  #ab-about-template--30139933884753__main .ab-content-panel .ab-richtext,
  #ab-about-template--30139933884753__main .ab-elements-intro .ab-richtext {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
/* =========================================================
   Ashmira Botanica — About Page Five Elements Mobile Stack Fix
   Prevents horizontal overflow and stacks element cards vertically
   ========================================================= */

@media screen and (max-width: 749px) {
  #ab-about-template--30139933884753__main .ab-elements {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    border-top: 1px solid var(--ab-border) !important;
  }

  #ab-about-template--30139933884753__main .ab-element {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: auto !important;
    padding: 28px 22px !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--ab-border) !important;
  }

  #ab-about-template--30139933884753__main .ab-element:last-child {
    border-bottom: 0 !important;
  }

  #ab-about-template--30139933884753__main .ab-element h3,
  #ab-about-template--30139933884753__main .ab-element p {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
/* =========================================================
   Ashmira Botanica — Footer 5 Column Layout
   Supports Brand, Shop, Legal, Headquarters and Socials
   ========================================================= */

.pdf-footer-grid {
  display: grid !important;
  grid-template-columns: minmax(260px, 1.4fr) repeat(4, minmax(140px, 1fr)) !important;
  gap: clamp(28px, 4vw, 56px) !important;
  align-items: start !important;
}

@media screen and (max-width: 1100px) {
  .pdf-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .pdf-footer-brand {
    grid-column: 1 / -1 !important;
  }
}

@media screen and (max-width: 640px) {
  .pdf-footer-grid {
    grid-template-columns: 1fr !important;
  }

  .pdf-footer-brand {
    grid-column: auto !important;
  }
}
/* =========================================================
   Ashmira Botanica — Footer Centre Alignment Fix
   Centres footer grid content after adding extra columns
   ========================================================= */

.pdf-footer-shell .page-width,
.footer-shell .page-width {
  width: min(100% - 48px, 1440px) !important;
  max-width: 1440px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.pdf-footer-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: clamp(24px, 3vw, 44px) !important;
  align-items: start !important;
  justify-content: center !important;
  text-align: center !important;
}

.pdf-footer-brand,
.footer-nav {
  width: 100% !important;
  max-width: 220px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.pdf-footer-brand {
  max-width: 280px !important;
}

.footer-nav ul {
  width: 100% !important;
  padding-left: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  list-style: none !important;
  text-align: center !important;
}

.footer-nav li,
.footer-nav a,
.footer-heading,
.pdf-footer-title,
.pdf-footer-brand .section-copy {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.pdf-footer-bottom,
.footer-bottom {
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

/* Tablet */
@media screen and (max-width: 1280px) {
  .pdf-footer-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .pdf-footer-brand,
  .footer-nav {
    max-width: 280px !important;
  }
}

/* Mobile */
@media screen and (max-width: 749px) {
  .pdf-footer-shell .page-width,
  .footer-shell .page-width {
    width: calc(100% - 36px) !important;
  }

  .pdf-footer-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .pdf-footer-brand,
  .footer-nav {
    max-width: 320px !important;
  }

  .pdf-footer-bottom,
  .footer-bottom {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
}
/* =========================================================
   Ashmira Botanica — Homepage Intro Mobile Viewport Fix
   ========================================================= */

.brand-intro-shell,
.brand-intro-shell * {
  box-sizing: border-box;
}

.brand-intro-shell {
  width: 100%;
  overflow-x: hidden;
}

.brand-intro-shell .home-section__wrap,
.brand-intro-shell .brand-intro-block,
.brand-intro-shell .brand-intro-text {
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.brand-intro-shell .brand-intro-text {
  max-width: 880px;
}

.ab-intro-actions {
  width: 100%;
  max-width: 100%;
  margin: 32px auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  flex-wrap: wrap;
}

.ab-intro-actions .ab-editorial-button {
  margin: 0;
  text-align: center;
  white-space: normal;
}

.ab-intro-logo {
  display: block;
  width: 160px;
  max-width: 60vw;
  height: auto;
  margin: 40px auto 0;
}

@media screen and (max-width: 749px) {
  .brand-intro-shell {
    padding-left: 0;
    padding-right: 0;
  }

  .brand-intro-shell .page-width,
  .brand-intro-shell .home-section__wrap {
    width: 100%;
    max-width: 100%;
    padding-left: 18px;
    padding-right: 18px;
    overflow-x: hidden;
  }

  .brand-intro-shell .brand-intro-block,
  .brand-intro-shell .brand-intro-text {
    width: 100%;
    max-width: 100%;
    overflow-wrap: break-word;
    word-break: normal;
  }

  .ab-intro-actions {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-top: 28px;
  }

  .ab-intro-actions .ab-editorial-button {
    width: 100%;
    max-width: 320px;
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-left: 18px;
    padding-right: 18px;
    line-height: 1.25;
  }

  .ab-intro-logo {
    width: 130px;
    max-width: 52vw;
    margin-top: 34px;
  }
}
/* =========================================================
   Ashmira Botanica — Global Product Card Image Consistency
   Keeps all product boxes/images uniform across the site
   ========================================================= */

/* Standard product card image containers */
.product-card__media,
.product-card__image,
.card__media,
.card__inner,
.ab-shop-card__image,
.collection-list-card__image {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden;
}

/* Standard product card images */
.product-card__media img,
.product-card__image img,
.card__media img,
.card__inner img,
.ab-shop-card__image img,
.collection-list-card__image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* Ashmira custom shop cards */
.ab-shop-card__image {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f7f5f1;
}

.ab-shop-card__image img {
  padding: 20px;
}

/* Keep product cards visually equal height */
.product-card,
.card-wrapper,
.card,
.ab-shop-card {
  height: 100%;
}

/* Prevent odd stretched media wrappers */
.product-card__media,
.card__media,
.ab-shop-card__image {
  background: #f7f5f1;
}

/* Mobile consistency */
@media screen and (max-width: 749px) {
  .product-card__media,
  .product-card__image,
  .card__media,
  .card__inner,
  .ab-shop-card__image,
  .collection-list-card__image {
    aspect-ratio: 1 / 1;
  }

  .ab-shop-card__image img {
    padding: 18px;
  }
}
/* =========================================================
   Ashmira Botanica — Product Grid Uniformity
   Pins Shop Now buttons to the bottom and balances title sizes
   ========================================================= */

/* Make custom shop cards use a full-height vertical layout */
.ab-shop-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* Keep the product image area consistent */
.ab-shop-card__image {
  flex: 0 0 auto !important;
}

/* Let the content area stretch */
.ab-shop-card__content {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

/* Reduce product title size and keep title area consistent */
.ab-shop-card h2,
.ab-shop-card h2 a {
  font-size: clamp(16px, 1.15vw, 20px) !important;
  line-height: 1.28 !important;
  letter-spacing: 0.02em !important;
}

/* Give titles a consistent area so prices/buttons align better */
.ab-shop-card h2 {
  min-height: 56px !important;
  margin-bottom: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Keep price close to title */
.ab-shop-card__price {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Push the button to the bottom of the card */
.ab-shop-card .ab-shop-button {
  margin-top: auto !important;
}

/* Standard Shopify/Dawn-style product cards, if used elsewhere */
.product-card,
.card-wrapper,
.card {
  height: 100% !important;
}

.card-wrapper .card,
.product-card {
  display: flex !important;
  flex-direction: column !important;
}

.card__content,
.product-card__content,
.product-card .card__content {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Reduce standard product card title size */
.card__heading,
.card__heading a,
.product-card__title,
.product-card__title a {
  font-size: clamp(15px, 1vw, 18px) !important;
  line-height: 1.28 !important;
}

/* Give standard Shopify titles a more consistent height */
.card__heading,
.product-card__title {
  min-height: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

/* Push standard product buttons/forms to bottom where present */
.card__content .button,
.card__content .quick-add,
.product-card__content .button,
.product-card__content .quick-add,
.product-card .button,
.product-card .quick-add {
  margin-top: auto !important;
}

/* Mobile refinement */
@media screen and (max-width: 749px) {
  .ab-shop-card h2,
  .ab-shop-card h2 a {
    font-size: 17px !important;
    line-height: 1.25 !important;
  }

  .ab-shop-card h2 {
    min-height: auto !important;
  }

  .card__heading,
  .card__heading a,
  .product-card__title,
  .product-card__title a {
    font-size: 16px !important;
  }

  .card__heading,
  .product-card__title {
    min-height: auto !important;
  }
}

/* =========================================================
   Ashmira Botanica — Final Load-Order Title Correction
   Purpose:
   Keeps page/title headings smaller and softer even if base.css
   loads after the custom restyle layer.
   ========================================================= */

:root {
  --ab-final-heading-size: clamp(30px, 3.2vw, 42px);
  --ab-final-heading-size-mobile: clamp(28px, 8.5vw, 38px);
  --ab-final-heading-weight: 300;
  --ab-final-heading-spacing: 0.025em;
}

/* Shopify page/article/blog/collection title areas */
body.template-page #MainContent .section-intro > .section-title,
body.template-page #MainContent .page-panel > .section-intro .section-title,
body.template-page #MainContent .page-layout > .section-intro .section-title,
body.template-page #MainContent .page-panel h1,
body.template-page #MainContent .page-layout h1,

body.template-blog #MainContent .section-intro > .section-title,
body.template-collection #MainContent .collection-panel > .section-intro .section-title,
body.template-collection #MainContent .collection-layout > .section-intro .section-title,
body.template-article #MainContent .article-panel > .section-intro .section-title,
body.template-article #MainContent .article-layout > .section-intro .section-title,

/* Bespoke Ashmira page heroes */
body.template-page #MainContent .ab-what-hero h1,
body.template-page #MainContent .ab-skincare-hero h1,
body.template-page #MainContent .ab-treatment-hero h1,
body.template-page #MainContent .ab-gifting-hero h1,
body.template-page #MainContent .ab-clean-header h1,
body.template-page #MainContent .ab-green-header h1,
body.template-page #MainContent .ab-five-elements-header h1,
body.template-page #MainContent .ab-ingredients-header h1,

/* Rebuild page headings */
body.template-page #MainContent .ab-treatments-heading__title,
body.template-page #MainContent .ab-why-title,
body.template-page #MainContent .ingredients-page-title h1,
body.template-page #MainContent .ingredients-page-title h1::before {
  font-size: var(--ab-final-heading-size) !important;
  line-height: 1.08 !important;
  font-weight: var(--ab-final-heading-weight) !important;
  letter-spacing: var(--ab-final-heading-spacing) !important;
  text-transform: uppercase !important;
  max-width: min(920px, 92vw) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  text-shadow: none !important;
}

/* Paragraphs directly beneath page titles */
body.template-page #MainContent .section-intro .section-copy,
body.template-page #MainContent .section-intro .section-copy p,
body.template-page #MainContent .ab-what-hero__copy,
body.template-page #MainContent .ab-skincare-hero__copy,
body.template-page #MainContent .ab-treatment-hero__copy,
body.template-page #MainContent .ab-gifting-hero__copy {
  font-size: clamp(14px, 1.15vw, 16px) !important;
  line-height: 1.75 !important;
  font-weight: 300 !important;
}

/* Keep product/card titles separate so the page-heading fix does not distort grids */
body.template-page #MainContent .product-card__title,
body.template-page #MainContent .product-card__title a,
body.template-page #MainContent .card__heading,
body.template-page #MainContent .card__heading a,
body.template-collection #MainContent .product-card__title,
body.template-collection #MainContent .product-card__title a {
  font-size: clamp(13px, 1vw, 16px) !important;
  line-height: 1.3 !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
}

@media screen and (max-width: 749px) {
  body.template-page #MainContent .section-intro > .section-title,
  body.template-page #MainContent .page-panel > .section-intro .section-title,
  body.template-page #MainContent .page-layout > .section-intro .section-title,
  body.template-page #MainContent .page-panel h1,
  body.template-page #MainContent .page-layout h1,

  body.template-blog #MainContent .section-intro > .section-title,
  body.template-collection #MainContent .collection-panel > .section-intro .section-title,
  body.template-collection #MainContent .collection-layout > .section-intro .section-title,
  body.template-article #MainContent .article-panel > .section-intro .section-title,
  body.template-article #MainContent .article-layout > .section-intro .section-title,

  body.template-page #MainContent .ab-what-hero h1,
  body.template-page #MainContent .ab-skincare-hero h1,
  body.template-page #MainContent .ab-treatment-hero h1,
  body.template-page #MainContent .ab-gifting-hero h1,
  body.template-page #MainContent .ab-clean-header h1,
  body.template-page #MainContent .ab-green-header h1,
  body.template-page #MainContent .ab-five-elements-header h1,
  body.template-page #MainContent .ab-ingredients-header h1,

  body.template-page #MainContent .ab-treatments-heading__title,
  body.template-page #MainContent .ab-why-title,
  body.template-page #MainContent .ingredients-page-title h1,
  body.template-page #MainContent .ingredients-page-title h1::before {
    font-size: var(--ab-final-heading-size-mobile) !important;
    line-height: 1.1 !important;
    font-weight: var(--ab-final-heading-weight) !important;
    letter-spacing: 0.02em !important;
  }
}
/* =========================================================
   Ashmira Botanica — Global Font Weight Correction
   Ensures Chatty's limited Inter import does not make the site look heavy
   ========================================================= */

body {
  font-family: var(--font-body, Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-weight: 100;
  font-synthesis: none;
  font-synthesis-weight: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
.section-title,
.page-title,
.hero-minimal__title,
.banner__heading,
.rich-text__heading {
  font-family: var(--font-heading, Inter, Avenir, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-weight: 100 !important;
  font-synthesis: none;
  font-synthesis-weight: none;
}

strong,
b,
th,
button,
.button,
.shopify-payment-button__button,
.header-link,
.header-cart-link {
  font-weight: 100;
}
/* Shop collection hero title uppercase */
.ab-shop-hero h1 {
  text-transform: uppercase !important;
}
#ab-spa-training-template--30142109942097__ab_spa_training h1 {
  text-transform: uppercase !important;
  font-size: clamp(42px, 6vw, 5px) !important;

}