/** Shopify CDN: Minification failed

Line 197:0 Unexpected "}"

**/
/* =========================================================================
   Kalastri Brand Identity Styles
   Overrides for the default Shopify theme styles
   ========================================================================= */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Poppins:wght@300;400;500;600&display=swap');

html, body, #MainContent, .content-for-layout, header, .header, .top-bar, .announcement-bar-section, .footer {
  overflow-x: hidden !important;
  max-width: 100% !important;
}


:root {
  /* Brand Colors (Updated for the new Sage & Cream Logo) */
  --color-primary: #4D4A3A;          /* Dark Sage/Olive for text, headings, buttons, footer bg */
  --color-primary-hover: #3C3A2E;    /* Darker olive for hover state */
  --color-secondary: #A39F85;        /* Sage green from logo text - for accents, icons, and highlights */
  --color-secondary-light: #C2C0AE;  /* Light Sage for subheadings/borders */
  --color-background: #FAF7F2;       /* Cream background from logo */
  --color-section: #F5F1E6;          /* Warm sand for section backgrounds */
  --color-border: #E5E2D0;           /* Sage-tinted light border */
  --color-text: #3D3B31;             /* Dark warm charcoal/sage for body text */
  --color-text-light: #7A7869;       /* Muted sage-gray for secondary text */
  --color-success: #5F6B4D;          /* Sage green success */
  --color-sale: #9E5B5B;             /* Muted dusty rose/red for sales */
  --color-white: #FFFFFF;

  /* Typography */
  --font-heading-family: 'Cormorant Garamond', serif !important;
  --font-body-family: 'Poppins', sans-serif !important;

  /* Overriding existing variables to ensure consistency */
  --primary: var(--color-primary) !important;
  --secondary: var(--color-secondary) !important;
  --success: var(--color-success) !important;
  
  --heading-color: var(--color-primary) !important;
  --text-color: var(--color-text) !important;
  --background-color: var(--color-background) !important;
  --background-color-2: var(--color-section) !important;
  --border-color: var(--color-border) !important;
  
  /* Buttons */
  --buttons-radius: 8px !important;
  --buttons-border-width: 0px !important;

  /* Product Cards */
  --product-card-border-color: var(--color-border) !important;
  --product-card-background: var(--color-white) !important;
  --product-card-border-width: 1px !important;
  --product-card-corner-radius: 12px !important;
  --product-title-font-family: var(--font-body-family) !important;
  --product-title-color: var(--color-text) !important;
  --product-price-color: var(--color-primary) !important;
  
  /* Input & Forms */
  --inputs-border-color: var(--color-border) !important;
  --inputs-radius: 8px !important;
}

/* =========================================================================
   Global Typography
   ========================================================================= */
body, p, span, a, li, div {
  font-family: var(--font-body-family);
  color: var(--color-text);
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .title {
  font-family: var(--font-heading-family);
  color: var(--color-primary) !important;
  font-weight: 600;
}

/* Spacing and Backgrounds */
body {
  background-color: var(--color-background) !important;
}

/* Alternating Sections with Subtle Motif */
.shopify-section:nth-child(even) > div {
  background-color: var(--color-section) !important;
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 0c11.046 0 20 8.954 20 20s-8.954 20-20 20S0 31.046 0 20 8.954 0 20 0zm0 1c-10.493 0-19 8.507-19 19s8.507 19 19 19 19-8.507 19-19S30.493 1 20 1zm0 4a15 15 0 1 1 0 30 15 15 0 0 1 0-30zm0 1a14 14 0 1 0 0 28 14 14 0 0 0 0-28zm0 4a10 10 0 1 1 0 20 10 10 0 0 1 0-20zm0 1a9 9 0 1 0 0 18 9 9 0 0 0 0-18zm0 4a5 5 0 1 1 0 10 5 5 0 0 1 0-10zm0 1a4 4 0 1 0 0 8 4 4 0 0 0 0-8z' fill='%23A39F85' fill-opacity='0.03' fill-rule='evenodd'/%3E%3C/svg%3E") !important;
}
.shopify-section:nth-child(odd) > div {
  background-color: var(--color-background) !important;
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 0c11.046 0 20 8.954 20 20s-8.954 20-20 20S0 31.046 0 20 8.954 0 20 0zm0 1c-10.493 0-19 8.507-19 19s8.507 19 19 19 19-8.507 19-19S30.493 1 20 1zm0 4a15 15 0 1 1 0 30 15 15 0 0 1 0-30zm0 1a14 14 0 1 0 0 28 14 14 0 0 0 0-28zm0 4a10 10 0 1 1 0 20 10 10 0 0 1 0-20zm0 1a9 9 0 1 0 0 18 9 9 0 0 0 0-18zm0 4a5 5 0 1 1 0 10 5 5 0 0 1 0-10zm0 1a4 4 0 1 0 0 8 4 4 0 0 0 0-8z' fill='%23A39F85' fill-opacity='0.03' fill-rule='evenodd'/%3E%3C/svg%3E") !important;
}

/* =========================================================================
   Header
   ========================================================================= */
.header-wrapper, header, .header {
  background-color: var(--color-background) !important;
  border-bottom: 1px solid var(--color-border);
}
.header__menu-item, .header__active-menu-item {
  color: var(--color-primary) !important;
  transition: all 0.3s ease;
  position: relative;
}
.header__menu-item:hover, .header__active-menu-item:hover {
  color: var(--color-secondary) !important;
}
.header__menu-item::after {
  content: '';
  position: absolute;
  width: 0;
  height: 2px;
  bottom: -4px;
  left: 0;
  background-color: var(--color-secondary);
  transition: width 0.3s ease;
}
.header__menu-item:hover::after {
  width: 100%;
}
.header__icon, .header__icon svg {
  color: var(--color-secondary) !important;
  fill: var(--color-secondary) !important;
}
/* Ensure vertical centering */
header, .header {
  align-items: center !important;
}
/* Sticky Header */
.shopify-section-header-sticky {
  background-color: rgba(250, 247, 242, 0.95) !important;
  backdrop-filter: blur(10px);
  box-shadow: 0 4px 20px rgba(77, 74, 58, 0.05);
}
/* Announcement Bar overrides */
.top-bar {
  --announcement-background-color: var(--color-secondary) !important;
  --announcement-text-color: var(--color-white) !important;
}

/* =========================================================================
   Buttons
   ========================================================================= */
.button, .btn, button:not(.menu-btn):not(.menu-toggle):not(.modal__close-button):not(.search__button):not(.reset__button):not(.search-modal__close-button):not(.modal-close) {
  background-color: var(--color-primary) !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
  border: 1px solid var(--color-primary) !important;
  outline: none !important;
}
.button:hover, .btn:hover, button:not(.menu-btn):not(.menu-toggle):not(.modal__close-button):not(.search__button):not(.reset__button):not(.search-modal__close-button):not(.modal-close):hover {
  background-color: var(--color-secondary) !important;
  color: #ffffff !important;
  border-color: var(--color-secondary) !important;
  transform: translateY(-2px);
}
.button--secondary, .btn--secondary, .btn-secondary {
  background-color: var(--color-secondary) !important;
  color: #ffffff !important;
  border: 1px solid var(--color-secondary) !important;
}
.button--secondary:hover, .btn--secondary:hover, .btn-secondary:hover {
  background-color: var(--color-primary-hover) !important;
  color: #ffffff !important;
  border-color: var(--color-primary-hover) !important;
}
.button span, .btn span, button span {
  color: inherit !important;
}

/* =========================================================================
   Cards (Products & Collections)
   ========================================================================= */
.card-wrapper, .product-card, .collection-card, .shop-card {
  background-color: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  border-radius: 0px !important;
  transition: all 0.3s ease !important;
  position: relative;
  overflow: visible !important;
}
.card-wrapper:hover, .product-card:hover, .collection-card:hover, .shop-card:hover {
  transform: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
  outline-color: transparent !important;
}
.card__heading, .product-title {
  color: #333333 !important;
}
}
.price, .product-price {
  color: var(--color-primary) !important;
  font-weight: 600;
}
.price--on-sale .price-item--sale, .sale-price {
  color: var(--color-sale) !important;
}
/* Ratings in Antique Gold */
.rating-star, .spr-starrating, .spr-icon {
  color: var(--color-secondary) !important;
}

/* Hide vendor from product cards */
.shop-card .dz-content .vendor,
.card-wrapper .vendor {
  display: none !important;
}

/* =========================================================================
   Badges
   ========================================================================= */
.badge, .product-badge {
  border-radius: 4px !important;
  font-weight: 500;
  padding: 4px 10px;
}
.badge--sale {
  background-color: var(--color-sale) !important;
  color: var(--color-white) !important;
}
.badge--new {
  background-color: var(--color-success) !important;
  color: var(--color-white) !important;
}

/* =========================================================================
   Forms & Inputs
   ========================================================================= */
.field__input, select, textarea, input {
  border: 1px solid var(--color-border) !important;
  border-radius: 8px !important;
  background-color: var(--color-white) !important;
  transition: border-color 0.3s ease;
}
.field__input:focus, select:focus, textarea:focus, input:focus {
  border-color: var(--color-secondary) !important;
  outline: none !important;
  box-shadow: 0 0 0 1px var(--color-secondary) !important;
}

/* =========================================================================
   Footer
   ========================================================================= */
.footer, footer {
  background-color: var(--color-primary) !important;
  color: var(--color-white) !important;
}
.footer__heading, .footer-block__heading {
  color: var(--color-secondary-light) !important;
  font-family: var(--font-heading-family) !important;
}
.footer a, .footer p, .footer span, .footer li {
  color: var(--color-white) !important;
}
.footer a:hover {
  color: var(--color-secondary-light) !important;
}
.footer .list-social__item svg, .footer__list-social svg {
  color: var(--color-secondary) !important;
  fill: var(--color-secondary) !important;
}

/* =========================================================================
   Decorative Elements
   ========================================================================= */
.decorative-divider {
  display: block;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='20' viewBox='0 0 100 20'%3E%3Cpath d='M0 10h40m20 0h40M50 0L60 10L50 20L40 10Z' stroke='%23A39F85' stroke-width='1' fill='none'/%3E%3Ccircle cx='50' cy='10' r='3' fill='%23A39F85'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  max-width: 300px;
  margin: 30px auto;
}

/* Specifically overriding the Shopify headings to be Brand Color */
.h1, .h2, .h3, .h4, .h5, h1, h2, h3, h4, h5 {
  color: var(--color-primary) !important;
}

/* =========================================================================
   Product Cards Uniform Heights (Grid Alignment)
   ========================================================================= */
.shop-card .dz-media {
  padding-bottom: 130% !important; /* Force all product images to a uniform 10:13 portrait aspect ratio */
  position: relative !important;
  overflow: hidden !important;
  border-radius: 0px !important;
  margin: 0px !important;
}
.shop-card .product-card-image-link {
  display: block !important;
  height: 100% !important;
  width: 100% !important;
}
.shop-card .dz-media img,
.shop-card .dz-media svg,
.shop-card .dz-media .placeholder-svg {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
.shop-card .dz-content .title {
  font-family: var(--font-body-family) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: 0px !important;
  text-transform: none !important;
  margin: 0 0 4px 0 !important;
  min-height: auto !important;
  text-align: left !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.shop-card .dz-content .title a {
  color: var(--color-text) !important;
  font-weight: 400 !important;
}

.shop-card .dz-content .title a:hover {
  color: var(--color-secondary) !important;
}

/* Align contents left and remove padding box spacing */
.shop-card .dz-content {
  padding: 12px 0px 0px 0px !important;
  text-align: left !important;
}

/* Clean price display styling */
.shop-card .price,
.shop-card .price-item,
.shop-card .price__container,
.shop-card .price__regular,
.shop-card .dz-price,
.shop-card .dz-price span,
.shop-card .dz-price .price-item {
  color: var(--color-text) !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  font-family: var(--font-body-family) !important;
  margin: 0 !important;
  text-align: left !important;
}

/* Ensure action buttons (wishlist, etc) are always visible and formatted correctly */
.shop-card .product-action-btns {
  opacity: 1 !important;
  transform: none !important;
}

.shop-card .product-action-btns .action-btn {
  background-color: #ffffff !important;
  border: 1px solid var(--color-border) !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
}

.shop-card .product-action-btns .action-btn svg path {
  stroke: var(--color-text) !important;
}

/* Active/Liked wishlist state */
.shop-card .product-action-btns wishlist-btn.action-btn.active {
  background-color: #ff2b53 !important;
  border-color: #ff2b53 !important;
}

.shop-card .product-action-btns wishlist-btn.action-btn.active svg path {
  stroke: #ffffff !important;
  fill: #ffffff !important;
}

/* Product details page description styling */
.product__description {
  margin-top: 15px !important;
  margin-bottom: 25px !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: var(--color-text) !important;
}

/* Minimal Buttons and UI Elements override for Product Details Page */
.product-wrapper .btn.product-cart-btn,
.product-wrapper .button.product-cart-btn {
  background-color: transparent !important;
  color: #000000 !important;
  border: 1px solid #000000 !important;
  border-radius: 0px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  transition: all 0.3s ease !important;
  height: 50px !important;
}

.product-wrapper .btn.product-cart-btn:hover,
.product-wrapper .button.product-cart-btn:hover {
  background-color: #000000 !important;
  color: #ffffff !important;
  transform: none !important;
}

.product-wrapper .shopify-payment-button__button,
.product-wrapper .shopify-payment-button__button--unbranded {
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 1px solid #000000 !important;
  border-radius: 0px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  transition: all 0.3s ease !important;
  height: 50px !important;
}

.product-wrapper .shopify-payment-button__button:hover,
.product-wrapper .shopify-payment-button__button--unbranded:hover {
  background-color: transparent !important;
  color: #000000 !important;
  border-color: #000000 !important;
  transform: none !important;
}

.product-wrapper .wishlist-btn {
  border-radius: 0px !important;
  border: 1px solid #000000 !important;
  height: 50px !important;
  width: 50px !important;
  padding: 0 !important;
  background-color: transparent !important;
}

.product-wrapper .wishlist-btn.active {
  background-color: #000000 !important;
  border-color: #000000 !important;
}

.product-wrapper .wishlist-btn.active svg path {
  fill: #ffffff !important;
  stroke: #ffffff !important;
}

/* Quantity selector minimal styling for better visibility */
.dz-product-detail .quantity .quantity__button {
  border: 1px solid #000000 !important;
  background-color: transparent !important;
  border-radius: 0px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 40px !important;
  width: 40px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.dz-product-detail .quantity .quantity__button:hover {
  background-color: #000000 !important;
}

.dz-product-detail .quantity .quantity__button:hover .svg-wrapper path {
  fill: #ffffff !important;
}

.dz-product-detail .quantity .quantity__input {
  border: 1px solid #000000 !important;
  border-radius: 0px !important;
  height: 40px !important;
  background-color: #ffffff !important;
  color: #000000 !important;
  font-weight: 500 !important;
}

.dz-product-detail .quantity__button .svg-wrapper {
  width: 12px !important;
  height: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.dz-product-detail .quantity__button .svg-wrapper path {
  fill: #000000 !important;
}
