/** Shopify CDN: Minification failed

Line 62:0 All "@import" rules must come first

**/
/* ==========================================================================
   India@Store — Modern UI Overlay
   World-class layer on top of Freshio. Full-width, BigBasket-inspired+.
   ========================================================================== */

/* ----- Design tokens -------------------------------------------------- */
:root {
  --is-green: #2A8E3F;
  --is-green-dark: #1F6B2E;
  --is-green-light: #E8F5EC;
  --is-saffron: #FF6B00;
  --is-saffron-dark: #E55A00;
  --is-saffron-light: #FFF4EB;
  --is-ink: #0F1E14;
  --is-text: #2C2C2C;
  --is-muted: #6B7280;
  --is-border: #E5E7EB;
  --is-bg-soft: #F9FAFB;
  --is-bg-cream: #FFFAF3;
  --is-radius: 12px;
  --is-radius-lg: 18px;
  --is-shadow-sm: 0 1px 2px rgba(15,30,20,.06);
  --is-shadow-md: 0 4px 12px rgba(15,30,20,.08);
  --is-shadow-lg: 0 12px 32px rgba(15,30,20,.12);
  --is-trans: 200ms cubic-bezier(.4,0,.2,1);
}

/* ----- Force full-width layout --------------------------------------- */
body.freshio-layout-boxed,
.freshio-layout-boxed .page-container {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  box-shadow: none !important;
}
.body-theme { background: #ffffff; }

/* Reset legacy theme spacing — modern sections own their own padding */
.body-theme .main-content {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.body-theme .page-container { padding-top: 0 !important; }

/* Wider container at large viewports for full-width feel */
@media (min-width: 1400px) {
  .container { max-width: 1320px; }
}
@media (min-width: 1600px) {
  .container { max-width: 1440px; }
}
@media (min-width: 1800px) {
  .container { max-width: 1560px; }
}

/* ----- Modern typography --------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Tiro+Devanagari+Hindi:ital@0;1&display=swap');

body.body-theme,
.body-theme p,
.body-theme li,
.body-theme button,
.body-theme input,
.body-theme select,
.body-theme textarea {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.6;
}
body.body-theme { color: var(--is-text); }
.body-theme p, .body-theme li { color: inherit; }
.body-theme h1, .body-theme h2, .body-theme h3,
.body-theme h4, .body-theme h5, .body-theme h6 {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.2;
}
.body-theme h1 { font-weight: 800; letter-spacing: -0.02em; }
/* Default heading color, overridable by section-level rules */
.body-theme main h1, .body-theme main h2, .body-theme main h3,
.body-theme main h4, .body-theme main h5, .body-theme main h6 { color: var(--is-ink); }
/* Dark hero/section panels — text inherits white, override defaults */
.body-theme .ismc-hero, .body-theme .ismab-hero, .body-theme .ismb-hero,
.body-theme .isma-hero, .body-theme .ismp-hero, .body-theme .ismfc,
.body-theme .ismh-slider, .body-theme .ismh-slide,
.body-theme .is-deliverybar, .body-theme .ismh-utility,
.body-theme .ism-coll-hero, .body-theme .ismc-cart-hero,
.body-theme .ism-newsletter, .body-theme .ismfp__viewall,
.body-theme .site-footer.ism-footer { color: inherit; }
.body-theme .ismc-hero p, .body-theme .ismc-hero span,
.body-theme .ismab-hero p, .body-theme .ismab-hero span,
.body-theme .ismb-hero p, .body-theme .ismb-hero span,
.body-theme .isma-hero p, .body-theme .isma-hero span,
.body-theme .ismp-hero p, .body-theme .ismp-hero span,
.body-theme .ismfc p, .body-theme .ismfc span,
.body-theme .ismh-slide p, .body-theme .ismh-slide span,
.body-theme .ism-coll-hero p, .body-theme .ism-coll-hero span,
.body-theme .ism-newsletter p, .body-theme .ism-newsletter span { color: inherit; }

/* Explicit subtitle colors on dark hero sections */
.body-theme .ismc-hero__sub,
.body-theme .ismab-hero__sub,
.body-theme .ismb-hero__sub,
.body-theme .isma-excerpt,
.body-theme .ismp-hero__sub,
.body-theme .ismh-slide__sub,
.body-theme .ism-coll-hero__sub,
.body-theme .ismc-cart-hero p,
.body-theme .ism-newsletter__sub,
.body-theme .ismfc__sub { color: rgba(255,255,255,.88) !important; }

/* Explicit white headings on dark hero sections */
.body-theme .ismc-hero__title,
.body-theme .ismab-hero__title,
.body-theme .ismb-hero__title,
.body-theme .isma-title,
.body-theme .ismp-hero__title,
.body-theme .ismh-slide__title,
.body-theme .ism-coll-hero__title,
.body-theme .ism-newsletter__title,
.body-theme .ismfc__title,
.body-theme .ismab-cta h2 { color: #ffffff !important; }

/* ----- Buttons ------------------------------------------------------- */
.body-theme .btn,
.body-theme button.btn,
.body-theme .button,
.body-theme [class*="btn-primary"] {
  border-radius: var(--is-radius) !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  padding: 12px 24px !important;
  transition: all var(--is-trans) !important;
  border: none !important;
}
.body-theme .btn:hover,
.body-theme button.btn:hover {
  transform: translateY(-1px);
  box-shadow: var(--is-shadow-md);
}

/* ==========================================================================
   Delivery / trust bar
   ========================================================================== */
.is-deliverybar {
  background: linear-gradient(90deg, var(--is-green) 0%, var(--is-green-dark) 100%);
  color: #fff;
  font-size: 13px;
  padding: 8px 0;
  font-weight: 500;
}
.is-deliverybar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 0 32px;
  flex-wrap: wrap;
}
.is-deliverybar__items {
  display: flex;
  gap: 28px;
  align-items: center;
  flex-wrap: wrap;
}
.is-deliverybar__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,.95);
}
.is-deliverybar__item i { font-size: 14px; opacity: .9; }
.is-deliverybar__item strong { font-weight: 700; color: #fff; }
.is-deliverybar__lang {
  display: inline-flex;
  gap: 4px;
  background: rgba(0,0,0,.18);
  border-radius: 999px;
  padding: 3px;
  font-size: 12px;
}
.is-deliverybar__lang a {
  color: rgba(255,255,255,.7);
  padding: 3px 12px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 600;
  transition: all var(--is-trans);
}
.is-deliverybar__lang a.active,
.is-deliverybar__lang a:hover { background: #fff; color: var(--is-green-dark); }
@media (max-width: 767px) {
  /* Convert the 4-item strip into a clean 2×2 grid on mobile.
     Each item is a small card with the icon on the left and the strong/sub
     text stacked on the right — so "100% authentic / Indian groceries" reads
     as one unit instead of wrapping ambiguously into the next item. */
  .is-deliverybar { padding: 8px 0; }
  .is-deliverybar__inner {
    padding: 0 12px; gap: 8px;
    flex-direction: column; align-items: stretch;
  }
  .is-deliverybar__items {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px 8px;
    width: 100%;
    font-size: 11.5px;
  }
  .is-deliverybar__item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    background: rgba(255,255,255,.10);
    border-radius: 6px;
    min-width: 0;
    line-height: 1.25;
  }
  .is-deliverybar__item i { font-size: 14px; flex-shrink: 0; }
  .is-deliverybar__item-text {
    display: flex;
    flex-direction: column;
    min-width: 0;
  }
  .is-deliverybar__item strong {
    display: block;
    font-size: 12px;
    line-height: 1.2;
    white-space: nowrap;
  }
  .is-deliverybar__item-sub {
    display: block;
    font-size: 10.5px;
    line-height: 1.25;
    opacity: .92;
    /* Wrap if the sub-text is too long for the column, but never bleed
       into a neighbouring item. */
    overflow-wrap: break-word;
  }
  .is-deliverybar__lang { align-self: flex-end; }
}
@media (max-width: 380px) {
  /* Very narrow phones: stack all four items in a single column so the
     supporting text never gets squeezed. */
  .is-deliverybar__items { grid-template-columns: 1fr; gap: 5px; }
}

/* ==========================================================================
   Category Tiles (BigBasket-style horizontal scroll strip)
   ========================================================================== */
.is-tiles-section { padding: 28px 0; background: #fff; }
.is-tiles-section__head {
  display: flex; justify-content: space-between; align-items: end;
  padding: 0 32px; margin-bottom: 18px;
}
.is-tiles-section__title {
  font-size: 26px; font-weight: 800; color: var(--is-ink); margin: 0;
}
.is-tiles-section__title em {
  display: block; font-size: 14px; font-weight: 500;
  color: var(--is-muted); font-style: italic; margin-top: 2px;
}
.is-tiles-section__viewall {
  color: var(--is-saffron); text-decoration: none; font-weight: 600; font-size: 14px;
  display: inline-flex; align-items: center; gap: 4px;
}
.is-tiles-section__viewall:hover { color: var(--is-saffron-dark); }
.is-tiles-strip {
  display: flex; gap: 16px;
  overflow-x: auto; overflow-y: hidden;
  padding: 8px 32px 24px;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.is-tiles-strip::-webkit-scrollbar { display: none; }
.is-tile {
  flex: 0 0 auto;
  width: 148px;
  text-decoration: none;
  background: var(--is-bg-soft);
  border: 1px solid transparent;
  border-radius: var(--is-radius-lg);
  padding: 18px 14px;
  text-align: center;
  transition: all var(--is-trans);
  scroll-snap-align: start;
  position: relative;
  overflow: hidden;
}
.is-tile:hover {
  background: #fff;
  border-color: var(--is-green);
  transform: translateY(-4px);
  box-shadow: var(--is-shadow-md);
}
.is-tile__icon {
  width: 72px; height: 72px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: #fff;
  display: flex; align-items: center; justify-content: center;
  box-shadow: var(--is-shadow-sm);
  transition: all var(--is-trans);
}
.is-tile:hover .is-tile__icon {
  background: var(--is-green-light);
  transform: scale(1.05);
}
.is-tile__icon i, .is-tile__icon svg {
  font-size: 32px;
  color: var(--is-green);
  width: 32px; height: 32px;
}
.is-tile__icon img { width: 56px; height: 56px; object-fit: contain; }
.is-tile__name {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--is-ink);
  line-height: 1.3;
  display: block;
}
.is-tile__name em {
  display: block;
  font-size: 11px;
  font-weight: 400;
  color: var(--is-muted);
  font-style: italic;
  margin-top: 2px;
}
@media (max-width: 767px) {
  /* Slightly wider tile + smaller text so labels like "Flour & Atta",
     "Lentils & Beans", "Pooja & Festivals" fit without ellipsis clipping. */
  .is-tile { width: 138px; padding: 14px 8px; overflow: visible; }
  .is-tile__icon { width: 56px; height: 56px; margin-bottom: 10px; }
  .is-tile__icon i, .is-tile__icon svg { font-size: 24px; }
  .is-tiles-strip { padding: 8px 16px 24px; gap: 12px; }
  .is-tiles-section__head { padding: 0 16px; }
  .is-tiles-section__title { font-size: 20px; }
  .is-tile__name {
    font-size: 12.5px;
    line-height: 1.25;
    overflow-wrap: break-word;
    word-break: break-word;
    hyphens: auto;
    -webkit-hyphens: auto;
  }
  .is-tile__name em { font-size: 10.5px; margin-top: 1px; }
}

/* ==========================================================================
   Mega Category Grid (full-width, replaces the boxy older style)
   ========================================================================== */
.indian-cats {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  max-width: 1320px;
  margin: 0 auto;
}
.indian-cats .cat-master {
  background: #fff !important;
  border: 1px solid var(--is-border);
  border-radius: var(--is-radius-lg) !important;
  padding: 24px 28px !important;
  box-shadow: var(--is-shadow-sm) !important;
  margin-bottom: 0;
  position: relative;
  overflow: hidden;
}
.indian-cats .cat-master::before {
  content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
  background: linear-gradient(180deg, var(--is-green), var(--is-saffron));
}
.indian-cats .cat-master__link {
  margin-bottom: 18px !important;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--is-border);
  display: flex !important;
  align-items: baseline;
  gap: 12px !important;
  flex-wrap: wrap;
}
.indian-cats .cat-master__name-en {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: var(--is-ink) !important;
  letter-spacing: -0.015em;
  display: inline !important;
  line-height: 1.2;
}
.indian-cats .cat-master__name-pl {
  font-size: 12.5px !important;
  color: var(--is-muted) !important;
  font-weight: 500 !important;
  font-style: italic !important;
  margin-top: 0 !important;
  display: inline !important;
  position: relative;
  padding-left: 12px;
}
.indian-cats .cat-master__name-pl::before {
  content: '·'; position: absolute; left: 4px; top: 0;
  color: var(--is-border);
}

/* Sub-category grid — tighter columns, simple list look */
.indian-cats .cat-subgrid {
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 8px 32px !important;
}
@media (max-width: 1199px) { .indian-cats .cat-subgrid { grid-template-columns: repeat(4, 1fr) !important; } }
@media (max-width: 991px)  { .indian-cats .cat-subgrid { grid-template-columns: repeat(3, 1fr) !important; gap: 4px 24px !important; } }
@media (max-width: 767px)  { .indian-cats .cat-subgrid { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 480px)  { .indian-cats .cat-subgrid { grid-template-columns: 1fr !important; } }

/* Sub-category card — flat, light, no boxy bg */
.indian-cats .cat-sub {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 10px 0 14px !important;
  transition: none;
}
.indian-cats .cat-sub:hover { background: transparent !important; box-shadow: none !important; }

.indian-cats .cat-sub__title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--is-ink) !important;
  border-bottom: none !important;
  margin-bottom: 6px !important;
  padding-bottom: 0 !important;
  display: inline-block !important;
  text-decoration: none !important;
}
.indian-cats .cat-sub__title:hover { color: var(--is-saffron) !important; }
.indian-cats .cat-sub__title em {
  display: none !important;  /* Hide Polish on sub-titles for less visual noise */
}

/* Leaf list — simple, low-density, no Polish */
.indian-cats .cat-leaf-list { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.indian-cats .cat-leaf-list li { padding: 0 !important; margin: 0 !important; line-height: 1.5; }
.indian-cats .cat-leaf-list a {
  font-size: 12.5px !important;
  color: var(--is-muted) !important;
  padding: 1px 0 !important;
  display: inline-block !important;
  transition: color var(--is-trans);
  text-decoration: none !important;
}
.indian-cats .cat-leaf-list a:hover { color: var(--is-saffron) !important; }
.indian-cats .cat-leaf-list em {
  display: none !important;  /* Hide Polish on leaves entirely — was making it messy */
}
.indian-cats .cat-leaf-list a span:first-child {
  display: inline !important;
}

/* When show_polish is on, only show on master heading (not sub or leaf) */
.indian-cats .cat-sub__name-pl,
.indian-cats .cat-leaf__name-pl { display: none !important; }

/* ==========================================================================
   Promo banner row (3-up)
   ========================================================================== */
.is-promo-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  padding: 24px 32px;
}
@media (max-width: 991px) { .is-promo-row { grid-template-columns: 1fr; padding: 16px; gap: 12px; } }
@media (max-width: 640px) {
  /* Tighten each card so three stacked cards don't dominate the mobile viewport.
     The min-height (180px) made tiny phones scroll forever before reaching products. */
  .is-promo-row { padding: 12px 16px; gap: 10px; }
  .is-promo { min-height: 110px; padding: 16px 18px; }
  .is-promo__kicker { font-size: 10.5px; letter-spacing: 0.06em; }
  .is-promo__title { font-size: 18px; margin: 3px 0 2px; line-height: 1.2; }
  .is-promo__sub { font-size: 12.5px; margin-bottom: 10px; line-height: 1.35; }
  .is-promo__cta { padding: 7px 14px; font-size: 12px; }
}
.is-promo {
  position: relative;
  border-radius: var(--is-radius-lg);
  padding: 28px 32px;
  min-height: 180px;
  overflow: hidden;
  display: flex; flex-direction: column; justify-content: center;
  text-decoration: none;
  transition: all var(--is-trans);
}
.is-promo:hover { transform: translateY(-3px); box-shadow: var(--is-shadow-md); }
.is-promo--green { background: linear-gradient(135deg, #DFF5E5, #B7E5C2); }
.is-promo--saffron { background: linear-gradient(135deg, #FFE6CC, #FFC58A); }
.is-promo--cream { background: linear-gradient(135deg, #FFF4E0, #FFD9A0); }
.is-promo__kicker { font-size: 12px; font-weight: 700; color: var(--is-saffron-dark); text-transform: uppercase; letter-spacing: 0.08em; }
.is-promo__title { font-size: 24px; font-weight: 800; color: var(--is-ink); margin: 6px 0 4px; line-height: 1.2; }
.is-promo__sub { font-size: 14px; color: var(--is-text); margin-bottom: 14px; }
/* Promo CTAs now use the same primary orange-rounded language as the hero,
   instead of a competing dark-green button. */
.is-promo__cta {
  display: inline-flex; align-self: flex-start; align-items: center; gap: 6px;
  background: var(--is-saffron); color: #fff !important;
  padding: 10px 20px; border-radius: 999px;
  font-size: 13px; font-weight: 700; transition: all var(--is-trans);
  box-shadow: 0 4px 12px rgba(255,107,0,.20);
}
.is-promo:hover .is-promo__cta {
  background: var(--is-saffron-dark);
  box-shadow: 0 6px 18px rgba(255,107,0,.32);
  transform: translateX(2px);
}

/* ==========================================================================
   Header refinements (works with header-4 and others)
   ========================================================================== */
.body-theme .site-header {
  border-bottom: 1px solid var(--is-border);
}
.body-theme .site-header.active,
.body-theme .site-header--sticky.active {
  box-shadow: 0 2px 18px rgba(15,30,20,.08);
}
.body-theme .header-search input,
.body-theme .input-group .search-input {
  border-radius: var(--is-radius) !important;
  border: 1.5px solid var(--is-border) !important;
  font-size: 14px !important;
  padding: 11px 16px !important;
  transition: all var(--is-trans);
}
.body-theme .header-search input:focus { border-color: var(--is-green) !important; box-shadow: 0 0 0 3px var(--is-green-light); }

/* ==========================================================================
   Product cards
   ========================================================================== */
.body-theme .product-block,
.body-theme .product-card,
.body-theme .product-grid-item {
  border-radius: var(--is-radius-lg) !important;
  transition: all var(--is-trans);
}
.body-theme .product-block:hover,
.body-theme .product-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--is-shadow-md);
}

/* ==========================================================================
   Footer
   ========================================================================== */
.body-theme .site-footer { background: var(--is-ink); color: rgba(255,255,255,.85); }
.body-theme .site-footer h1, .body-theme .site-footer h2, .body-theme .site-footer h3,
.body-theme .site-footer h4, .body-theme .site-footer h5, .body-theme .site-footer h6 { color: #fff !important; }
.body-theme .site-footer a { color: rgba(255,255,255,.75); }
.body-theme .site-footer a:hover { color: var(--is-saffron); }

/* ==========================================================================
   Shopify Customer Privacy banner (cookie consent) — modern restyle
   Targets Shopify's built-in privacy banner classes/IDs.
   ========================================================================== */
#shopify-pc__banner,
.shopify-pc__banner,
[data-shopify-privacy-banner] {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  position: fixed !important;
  left: 16px !important; right: 16px !important;
  bottom: 16px !important; top: auto !important;
  width: auto !important; max-width: 520px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  z-index: 99999 !important;
}
@media (min-width: 768px) {
  #shopify-pc__banner, .shopify-pc__banner {
    left: 24px !important; right: auto !important; bottom: 24px !important;
  }
}

#shopify-pc__banner > *,
.shopify-pc__banner > *,
.shopify-pc__banner__dialog {
  background: #ffffff !important;
  border-radius: 18px !important;
  border: 1px solid var(--is-border) !important;
  box-shadow: 0 24px 60px rgba(15,30,20,.18) !important;
  padding: 24px 24px 20px !important;
  position: relative !important;
  overflow: hidden !important;
}
.shopify-pc__banner__dialog::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, var(--is-green), var(--is-saffron));
}

/* Title */
#shopify-pc__banner__title,
.shopify-pc__banner__title,
.shopify-pc__banner h1,
.shopify-pc__banner h2,
.shopify-pc__banner h3 {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  color: var(--is-ink) !important;
  letter-spacing: -0.01em !important;
  line-height: 1.3 !important;
  margin: 4px 0 8px !important;
  padding: 0 !important;
}
.shopify-pc__banner__title::before {
  content: '🍪 '; margin-right: 4px;
}

/* Body text */
#shopify-pc__banner__body,
.shopify-pc__banner__body,
.shopify-pc__banner p {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  line-height: 1.55 !important;
  color: var(--is-text) !important;
  margin: 0 0 18px !important;
}
.shopify-pc__banner a {
  color: var(--is-saffron) !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}
.shopify-pc__banner a:hover { color: var(--is-saffron-dark) !important; }

/* Button row */
.shopify-pc__banner__btns,
#shopify-pc__banner__btns,
.shopify-pc__banner__buttons {
  display: flex !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* All buttons base */
#shopify-pc__banner button,
.shopify-pc__banner button,
.shopify-pc__banner__btn,
.shopify-pc__banner__btn-prefs,
.shopify-pc__banner__btn-accept,
.shopify-pc__banner__btn-decline {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  padding: 11px 20px !important;
  border-radius: 999px !important;
  border: 0 !important;
  cursor: pointer !important;
  transition: all 200ms ease !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

/* Accept (primary saffron) */
.shopify-pc__banner__btn-accept,
#shopify-pc__banner__btn-accept,
.shopify-pc__banner button[data-cookie-action="accept"],
.shopify-pc__banner button[data-action="accept"] {
  background: linear-gradient(135deg, var(--is-saffron), var(--is-saffron-dark)) !important;
  color: #fff !important;
  box-shadow: 0 6px 16px rgba(255,107,0,.28) !important;
  flex: 2 1 auto !important;
  order: 2 !important;
}
.shopify-pc__banner__btn-accept:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 22px rgba(255,107,0,.40) !important;
  filter: brightness(1.06) !important;
}

/* Decline (ghost) */
.shopify-pc__banner__btn-decline,
#shopify-pc__banner__btn-decline,
.shopify-pc__banner button[data-cookie-action="decline"],
.shopify-pc__banner button[data-action="decline"] {
  background: var(--is-bg-soft) !important;
  color: var(--is-text) !important;
  border: 1.5px solid var(--is-border) !important;
  order: 3 !important;
}
.shopify-pc__banner__btn-decline:hover {
  background: #fff !important;
  border-color: var(--is-ink) !important;
  color: var(--is-ink) !important;
}

/* Manage preferences (link-style, smaller) */
.shopify-pc__banner__btn-prefs,
#shopify-pc__banner__btn-prefs,
.shopify-pc__banner button[data-cookie-action="prefs"],
.shopify-pc__banner button[data-action="prefs"] {
  background: transparent !important;
  color: var(--is-muted) !important;
  border: 0 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  padding: 11px 8px !important;
  flex: 0 0 auto !important;
  order: 1 !important;
}
.shopify-pc__banner__btn-prefs:hover { color: var(--is-ink) !important; }

/* Close X (if present) */
.shopify-pc__banner__close {
  top: 14px !important; right: 14px !important;
  width: 28px !important; height: 28px !important;
  border-radius: 50% !important;
  background: var(--is-bg-soft) !important;
  color: var(--is-muted) !important;
  border: 0 !important;
}
.shopify-pc__banner__close:hover { background: var(--is-border) !important; color: var(--is-ink) !important; }

/* ==========================================================================
   Cookie preferences modal (when user clicks "Manage preferences")
   ========================================================================== */
.shopify-pc__prefs,
#shopify-pc__prefs {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
}
.shopify-pc__prefs__dialog,
#shopify-pc__prefs__dialog {
  border-radius: 20px !important;
  border: 1px solid var(--is-border) !important;
  background: #fff !important;
  box-shadow: 0 32px 80px rgba(15,30,20,.24) !important;
}
.shopify-pc__prefs__header {
  border-bottom: 1px solid var(--is-border) !important;
  padding: 20px 24px !important;
}
.shopify-pc__prefs__title {
  font-size: 22px !important; font-weight: 800 !important;
  color: var(--is-ink) !important; letter-spacing: -0.01em !important;
}
.shopify-pc__prefs__close {
  width: 32px !important; height: 32px !important;
  border-radius: 50% !important;
  background: var(--is-bg-soft) !important; color: var(--is-muted) !important;
}
.shopify-pc__prefs__body { padding: 22px 24px !important; }
.shopify-pc__prefs__purpose {
  background: var(--is-bg-soft) !important;
  border: 1px solid var(--is-border) !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
  margin-bottom: 12px !important;
}
.shopify-pc__prefs__purpose-title {
  font-size: 14.5px !important; font-weight: 700 !important;
  color: var(--is-ink) !important;
}
.shopify-pc__prefs__purpose-description {
  font-size: 13px !important; color: var(--is-text) !important;
  line-height: 1.55 !important; margin-top: 4px !important;
}
.shopify-pc__prefs__footer {
  border-top: 1px solid var(--is-border) !important;
  padding: 18px 24px !important;
}
/* Toggle switches in prefs */
.shopify-pc__prefs__toggle input:checked + label,
.shopify-pc__prefs__toggle input:checked + .toggle {
  background: var(--is-green) !important;
}
/* Save buttons in prefs */
.shopify-pc__prefs__btn-save,
.shopify-pc__prefs__btn-accept-all,
.shopify-pc__prefs__btn-decline-all {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  padding: 11px 22px !important;
  font-size: 13.5px !important;
}
.shopify-pc__prefs__btn-accept-all,
.shopify-pc__prefs__btn-save {
  background: linear-gradient(135deg, var(--is-saffron), var(--is-saffron-dark)) !important;
  color: #fff !important; border: 0 !important;
  box-shadow: 0 6px 16px rgba(255,107,0,.28) !important;
}
.shopify-pc__prefs__btn-decline-all {
  background: var(--is-bg-soft) !important;
  color: var(--is-text) !important;
  border: 1.5px solid var(--is-border) !important;
}

/* Mobile spacing */
@media (max-width: 480px) {
  #shopify-pc__banner, .shopify-pc__banner { left: 12px !important; right: 12px !important; bottom: 12px !important; max-width: 100% !important; }
  .shopify-pc__banner__dialog { padding: 20px 18px 16px !important; }
  .shopify-pc__banner__title { font-size: 16px !important; }
  .shopify-pc__banner__btns { flex-direction: column !important; }
  #shopify-pc__banner button { width: 100% !important; flex: 0 0 auto !important; }
}

/* ==========================================================================
   SITE-WIDE: Dark hero/section text visibility safety-net
   Forces white-ish text on every dark-themed area we built.
   ========================================================================== */

/* Heroes & dark wrappers — text inheritance reset */
.body-theme .ismc-hero, .body-theme .ismc-hero *,
.body-theme .ismab-hero, .body-theme .ismab-hero *,
.body-theme .ismb-hero, .body-theme .ismb-hero *,
.body-theme .isma-hero, .body-theme .isma-hero *,
.body-theme .ismp-hero, .body-theme .ismp-hero *,
.body-theme .ismfc, .body-theme .ismfc *,
.body-theme .ismh-slider, .body-theme .ismh-slider *,
.body-theme .ismh-slide, .body-theme .ismh-slide *,
.body-theme .ism-coll-hero, .body-theme .ism-coll-hero *,
.body-theme .ismc-cart-hero h1, .body-theme .ismc-cart-hero p,
.body-theme .ismfaq-hero, .body-theme .ismfaq-hero *,
.body-theme .ismfaq-cta, .body-theme .ismfaq-cta *,
.body-theme .ismpol-hero, .body-theme .ismpol-hero *,
.body-theme .ismab-cta, .body-theme .ismab-cta *,
.body-theme .ism-newsletter, .body-theme .ism-newsletter *,
.body-theme .is-deliverybar, .body-theme .is-deliverybar *,
.body-theme .ismh-utility, .body-theme .ismh-utility * { color: inherit; }

/* Default text color on every dark surface */
.body-theme .ismc-hero,
.body-theme .ismab-hero,
.body-theme .ismb-hero,
.body-theme .isma-hero,
.body-theme .ismp-hero,
.body-theme .ismfc,
.body-theme .ismh-slider,
.body-theme .ismh-slide,
.body-theme .ism-coll-hero,
.body-theme .ismfaq-hero,
.body-theme .ismfaq-cta,
.body-theme .ismpol-hero,
.body-theme .ismab-cta,
.body-theme .ism-newsletter,
.body-theme .is-deliverybar,
.body-theme .ismh-utility { color: rgba(255,255,255,.92) !important; }

/* Headings — always pure white */
.body-theme .ismc-hero h1, .body-theme .ismc-hero h2, .body-theme .ismc-hero h3,
.body-theme .ismab-hero h1, .body-theme .ismab-hero h2, .body-theme .ismab-hero h3,
.body-theme .ismb-hero h1, .body-theme .ismb-hero h2, .body-theme .ismb-hero h3,
.body-theme .isma-hero h1, .body-theme .isma-hero h2, .body-theme .isma-hero h3,
.body-theme .ismp-hero h1, .body-theme .ismp-hero h2, .body-theme .ismp-hero h3,
.body-theme .ismfc h1, .body-theme .ismfc h2, .body-theme .ismfc h3,
.body-theme .ismh-slide h1, .body-theme .ismh-slide h2, .body-theme .ismh-slide h3,
.body-theme .ism-coll-hero h1, .body-theme .ism-coll-hero h2,
.body-theme .ismfaq-hero h1, .body-theme .ismfaq-hero h2,
.body-theme .ismfaq-cta h2, .body-theme .ismfaq-cta h3,
.body-theme .ismpol-hero h1, .body-theme .ismpol-hero h2,
.body-theme .ismab-cta h2, .body-theme .ismab-cta h3,
.body-theme .ism-newsletter h2, .body-theme .ism-newsletter h3,
.body-theme .ismc-cart-hero h1 { color: #ffffff !important; }

/* Subtitles, paragraphs, descriptions — light enough to read */
.body-theme .ismc-hero p, .body-theme .ismc-hero__sub,
.body-theme .ismab-hero p, .body-theme .ismab-hero__sub,
.body-theme .ismb-hero p, .body-theme .ismb-hero__sub,
.body-theme .isma-hero p, .body-theme .isma-excerpt,
.body-theme .ismp-hero p, .body-theme .ismp-hero__sub,
.body-theme .ismfc p, .body-theme .ismfc__sub,
.body-theme .ismh-slide p, .body-theme .ismh-slide__sub,
.body-theme .ism-coll-hero p, .body-theme .ism-coll-hero__sub,
.body-theme .ismfaq-hero p, .body-theme .ismfaq-hero__sub,
.body-theme .ismfaq-cta p,
.body-theme .ismpol-hero p, .body-theme .ismpol-hero__intro,
.body-theme .ismab-cta p,
.body-theme .ism-newsletter p, .body-theme .ism-newsletter__sub,
.body-theme .ismfc__sub { color: rgba(255,255,255,.88) !important; }

/* Kickers / pills on dark — explicit white for legibility */
.body-theme .ismc-hero__kicker,
.body-theme .ismab-hero__kicker,
.body-theme .ismb-hero__kicker,
.body-theme .ismp-hero__kicker,
.body-theme .ismh-slide__kicker,
.body-theme .ism-coll-hero__kicker,
.body-theme .ismfaq-hero__kicker,
.body-theme .ismpol-hero__kicker,
.body-theme .ism-newsletter__kicker,
.body-theme .ismfc__kicker,
.body-theme .ismfaq-cta__kicker { color: #ffffff !important; }

/* Light meta lines (e.g. "Last updated", stats) */
.body-theme .ismp-hero__stat,
.body-theme .ismp-hero__stat strong,
.body-theme .isma-meta__author span,
.body-theme .isma-back,
.body-theme .ismc-cart-back,
.body-theme .ismab-tl-item p,
.body-theme .ismfaq-quick-pill,
.body-theme .ismpol-back,
.body-theme .ismpol-hero__pill { color: rgba(255,255,255,.82) !important; }

.body-theme .ismp-hero__stat strong,
.body-theme .ismpol-hero__pill strong,
.body-theme .isma-meta__author strong { color: #ffffff !important; }

/* Links inside dark heroes — saffron on hover, contrast on default */
.body-theme .ismc-hero a,
.body-theme .ismab-hero a,
.body-theme .ismb-hero a,
.body-theme .isma-hero a,
.body-theme .ismp-hero a,
.body-theme .ism-coll-hero a,
.body-theme .ismfaq-hero a,
.body-theme .ismpol-hero a,
.body-theme .ismc-cart-hero a { color: rgba(255,255,255,.88); }
.body-theme .ismc-hero a:hover, .body-theme .ismab-hero a:hover,
.body-theme .ismb-hero a:hover, .body-theme .isma-hero a:hover,
.body-theme .ismp-hero a:hover, .body-theme .ism-coll-hero a:hover,
.body-theme .ismfaq-hero a:hover, .body-theme .ismpol-hero a:hover,
.body-theme .ismc-cart-hero a:hover { color: #FF8C3D !important; }

/* Dark CTA bands — same treatment */
.body-theme .ismab-cta h2 { color: #ffffff !important; }
.body-theme .ismab-cta p { color: rgba(255,255,255,.88) !important; }

/* Dark utility / delivery strip (top of header) */
.body-theme .is-deliverybar,
.body-theme .is-deliverybar a,
.body-theme .is-deliverybar span,
.body-theme .ismh-utility a,
.body-theme .ismh-utility span,
.body-theme .ismh-utility__link { color: #E8EDEA !important; }
.body-theme .is-deliverybar a:hover,
.body-theme .ismh-utility__link:hover { color: #FF8C3D !important; }
.body-theme .is-deliverybar strong,
.body-theme .ismh-utility strong { color: #ffffff !important; }

/* ==========================================================================
   SITE-WIDE: Mobile responsive safety-net
   ========================================================================== */

/* Universal — never let anything overflow horizontally */
.body-theme img, .body-theme video { max-width: 100%; height: auto; }
.body-theme { overflow-x: hidden; }

/* ----- Tablet (≤ 991px) ----- */
@media (max-width: 991px) {
  .body-theme .ismh-main__inner { padding: 12px 16px !important; gap: 12px !important; }
  .body-theme .ismh-utility__inner { padding: 8px 16px !important; flex-wrap: wrap; gap: 8px; }
  .body-theme .ismh-search__cat { display: none !important; }

  /* Sticky toolbars on collection / blog / FAQ pages */
  .body-theme .ismp-toolbar__inner,
  .body-theme .ism-coll-toolbar__inner,
  .body-theme .ismb-tags__inner,
  .body-theme .ismfaq-tabs__inner { padding: 0 16px !important; }

  /* Stack flex/grid columns to one */
  .body-theme .ismc-cards__inner { grid-template-columns: 1fr 1fr !important; }
  .body-theme .ismc-split__inner { grid-template-columns: 1fr !important; gap: 24px !important; }
  .body-theme .ismab-mission__inner { grid-template-columns: 1fr !important; }
  .body-theme .ismab-locations__grid { grid-template-columns: 1fr !important; }
  .body-theme .ismab-team__grid { grid-template-columns: repeat(2, 1fr) !important; }
  .body-theme .ismab-products__grid { grid-template-columns: repeat(2, 1fr) !important; }
  .body-theme .ismab-why__inner { grid-template-columns: 1fr !important; gap: 24px !important; }
  .body-theme .ism-tiles-section__head { padding: 0 16px !important; }

  /* Product page split */
  .body-theme .ismpd__inner { grid-template-columns: 1fr !important; gap: 28px !important; padding: 0 16px !important; }
  .body-theme .ismpd-gallery { position: static !important; }

  /* Collection layout: filters become a drawer */
  .body-theme .ismp-layout { grid-template-columns: 1fr !important; padding: 24px 16px !important; }

  /* Cart layout */
  .body-theme .ismc-cart__layout { grid-template-columns: 1fr !important; padding: 0 16px !important; gap: 20px !important; }

  /* Article body — share rail hidden on mobile */
  .body-theme .isma-share { display: none !important; }
  .body-theme .isma-body-wrap { grid-template-columns: 1fr !important; padding: 32px 16px !important; }
  .body-theme .isma-cover { padding: 0 16px !important; }

  /* Newsletter / final CTA stack */
  .body-theme .ismfc__inner { grid-template-columns: 1fr !important; padding: 48px 20px !important; gap: 24px !important; }
  .body-theme .ism-newsletter__inner { grid-template-columns: 1fr !important; padding: 32px 20px !important; }

  /* Hero titles smaller */
  .body-theme .ismc-hero__title,
  .body-theme .ismab-hero__title,
  .body-theme .ismb-hero__title,
  .body-theme .ismp-hero__title,
  .body-theme .ism-coll-hero__title,
  .body-theme .ismfaq-hero__title,
  .body-theme .ismpol-hero__title { font-size: 40px !important; line-height: 1.1 !important; }
  .body-theme .isma-title { font-size: 36px !important; }
  .body-theme .ismh-slide__title { font-size: clamp(28px, 6vw, 44px) !important; }

  /* Ensure long URLs / words wrap */
  .body-theme .ism-footer__contact-row a,
  .body-theme .ismc-card__value,
  .body-theme .ismfaq-item__a a { word-break: break-word; }
}

/* ----- Mobile (≤ 767px) ----- */
@media (max-width: 767px) {
  /* Container padding */
  .body-theme .container, .body-theme .ismp-toolbar__inner,
  .body-theme .ismfp__inner, .body-theme .ismt__inner,
  .body-theme .ismfc__inner, .body-theme .ism-newsletter__inner { padding-left: 16px !important; padding-right: 16px !important; }

  /* Headings even smaller */
  .body-theme .ismc-hero__title,
  .body-theme .ismab-hero__title,
  .body-theme .ismb-hero__title,
  .body-theme .ismp-hero__title,
  .body-theme .ism-coll-hero__title,
  .body-theme .ismfaq-hero__title,
  .body-theme .ismpol-hero__title { font-size: 32px !important; }
  .body-theme .isma-title { font-size: 28px !important; }
  .body-theme .ismfp__title, .body-theme .ismt__title,
  .body-theme .ismab-h2, .body-theme .ismfc__title,
  .body-theme .ism-newsletter__title { font-size: 26px !important; }
  .body-theme .ismc-cart-hero__head h1,
  .body-theme .ismfaq-cta h2,
  .body-theme .ismab-cta h2 { font-size: 26px !important; }
  .body-theme .ismpd-title { font-size: 24px !important; }

  /* Padding on hero containers */
  .body-theme .ismc-hero, .body-theme .ismab-hero, .body-theme .ismb-hero,
  .body-theme .isma-hero, .body-theme .ismp-hero, .body-theme .ism-coll-hero,
  .body-theme .ismfaq-hero, .body-theme .ismpol-hero { padding-left: 20px !important; padding-right: 20px !important; padding-top: 48px !important; padding-bottom: 56px !important; }

  /* Two-up to one */
  .body-theme .ismc-cards__inner { grid-template-columns: 1fr !important; gap: 12px !important; }
  .body-theme .ismab-team__grid,
  .body-theme .ismab-products__grid { grid-template-columns: 1fr !important; }
  .body-theme .ismab-stats__inner { grid-template-columns: repeat(2, 1fr) !important; }
  .body-theme .ismfp__strip { grid-auto-columns: 80% !important; }

  /* Footer columns */
  .body-theme .ism-footer__cols { grid-template-columns: 1fr !important; gap: 28px !important; }
  .body-theme .ism-footer__features { grid-template-columns: 1fr !important; }
  .body-theme .ism-footer__main { padding: 40px 20px 24px !important; }
  .body-theme .ism-footer__bottom-inner { padding: 0 20px !important; flex-direction: column !important; align-items: flex-start !important; gap: 12px !important; }
  .body-theme .ismfp__head { flex-direction: column; align-items: flex-start; gap: 12px; }
  .body-theme .ismfp__nav { display: none !important; }

  /* Testimonials */
  .body-theme .ismt__grid { grid-template-columns: 1fr !important; }
  .body-theme .ismt__summary { flex-direction: column; gap: 8px; padding: 14px 18px; }

  /* Trust bar — wraps */
  .body-theme .ismpd-trust { grid-template-columns: 1fr !important; }
  .body-theme .ismc-cart-trust { grid-template-columns: 1fr !important; }

  /* Article body */
  .body-theme .isma-body { font-size: 16px !important; }
  .body-theme .isma-body p:first-of-type::first-letter { font-size: 44px !important; padding-right: 8px !important; }

  /* Action rows wrap */
  .body-theme .ismc-form__actions, .body-theme .ismc-cta__actions,
  .body-theme .ismab-hero__actions, .body-theme .ismab-cta__actions,
  .body-theme .ismfaq-cta__btns, .body-theme .ismh-slide__actions { flex-wrap: wrap !important; }
  .body-theme .ismc-form__actions .ismc-btn, .body-theme .ismfaq-btn { width: 100%; justify-content: center; }

  /* FAQ tabs scroll */
  .body-theme .ismfaq-tabs__inner { overflow-x: auto; }
  .body-theme .ismfaq-list__inner { padding: 0 16px !important; }

  /* Promo row 3-up to 1-up */
  .body-theme .is-promo-row { grid-template-columns: 1fr !important; padding: 16px !important; gap: 12px !important; }

  /* Header — search bigger, simpler */
  .body-theme .ismh-actions { gap: 4px !important; }
  .body-theme .ismh-action--icon { display: none !important; }
  .body-theme .ismh-search__btn-text { display: none !important; }

  /* Cart / Product / Collection sticky toolbars wrap */
  .body-theme .ismp-toolbar__inner, .body-theme .ism-coll-toolbar__inner { flex-direction: column; align-items: stretch; gap: 10px; padding: 8px 16px !important; }
  .body-theme .ismp-toolbar__right, .body-theme .ism-coll-toolbar__sort { justify-content: space-between; }

  /* Map and aside in contact */
  .body-theme .ismc-aside { gap: 14px !important; }
  .body-theme .ismc-form-wrap { padding: 24px !important; }

  /* About hero buttons stack */
  .body-theme .ismab-hero__actions .ismab-btn { width: 100%; justify-content: center; }

  /* Newsletter floating chips overlap on small */
  .body-theme .ismfc__chip { font-size: 12px !important; padding: 8px 14px !important; }

  /* Policy TOC becomes pills on top */
  .body-theme .ismpol-body__inner { grid-template-columns: 1fr !important; gap: 18px !important; }

  /* About locations / why-list — smaller pads */
  .body-theme .ismab-loc { padding: 22px 22px 20px !important; }
  .body-theme .ismab-loc__head h3 { font-size: 18px !important; }
  .body-theme .ismab-prod { padding: 22px 18px !important; }
  .body-theme .ismab-why__list li { padding: 12px 14px !important; font-size: 13.5px !important; }

  /* Tile section head + chips */
  .body-theme .is-tiles-section__title { font-size: 20px !important; }
}

/* ----- Small mobile (≤ 480px) ----- */
@media (max-width: 480px) {
  .body-theme .ismab-stats__inner { grid-template-columns: 1fr !important; }
  .body-theme .ismc-hero__inner, .body-theme .ismab-hero__inner,
  .body-theme .ismb-hero__inner, .body-theme .ismp-hero__inner,
  .body-theme .ism-coll-hero__inner, .body-theme .ismfaq-hero__inner,
  .body-theme .ismpol-hero__inner { max-width: 100%; }

  /* Cart line items stack image+body vertically only when very small */
  .body-theme .ismc-li__item { grid-template-columns: 70px 1fr !important; gap: 10px !important; }
  .body-theme .ismc-li__media { width: 70px !important; height: 70px !important; }

  /* Product page */
  .body-theme .ismpd-actions { flex-wrap: wrap !important; }
  .body-theme .ismpd-add { flex: 1 0 100% !important; }
  .body-theme .ismpd-gallery__thumbs { grid-template-columns: repeat(auto-fill, minmax(56px, 1fr)) !important; gap: 6px !important; }

  /* Hero buttons full-width */
  .body-theme .ismh-slide__btn,
  .body-theme .ismc-cart-btn--xl { width: 100%; justify-content: center; }
  .body-theme .ismh-slide__actions { flex-direction: column; align-items: stretch; }
}

/* ==========================================================================
   Misc fixes — header drawer, form-control consistency, focus rings
   ========================================================================== */

/* Visible focus ring for accessibility */
.body-theme :focus-visible { outline: 2px solid var(--is-saffron); outline-offset: 2px; border-radius: 6px; }

/* Force white-on-dark form inputs (newsletter band) */
.body-theme .ism-newsletter__form input::placeholder,
.body-theme .ismfc__form-row input::placeholder,
.body-theme .ismh-slide input::placeholder,
.body-theme .ismfaq-hero input::placeholder { color: rgba(255,255,255,.7) !important; }
.body-theme .ism-newsletter__form input,
.body-theme .ismfc__form-row input { color: #ffffff !important; }

/* Selection color globally */
.body-theme ::selection { background: rgba(255,107,0,.30); color: var(--is-ink); }

/* ==========================================================================
   FIX: White-bg elements INSIDE dark heroes — keep their dark text
   (Otherwise the global "inherit white on dark" rule turns them invisible.)
   ========================================================================== */
.body-theme .ismfc__chip { color: #0F1E14 !important; }
.body-theme .ismc-hero__search input,
.body-theme .ismb-hero__search input,
.body-theme .ismfaq-hero__search input,
.body-theme .ism-coll-hero__search input,
.body-theme .ismh-search__input { color: #0F1E14 !important; }
.body-theme .ismc-hero__search input::placeholder,
.body-theme .ismb-hero__search input::placeholder,
.body-theme .ismfaq-hero__search input::placeholder,
.body-theme .ism-coll-hero__search input::placeholder,
.body-theme .ismh-search__input::placeholder { color: #9CA3AF !important; }

/* White pin card overlapping a dark map shouldn't go invisible either */
.body-theme .ismc-map__pin strong { color: #0F1E14 !important; }
.body-theme .ismc-map__pin span { color: #6B7280 !important; }

/* ==========================================================================
   FIX: Mobile header — proper compact layout
   ========================================================================== */
@media (max-width: 991px) {
  .body-theme .ismh-main__inner {
    grid-template-columns: auto 1fr auto auto !important;
    padding: 12px 14px !important;
    gap: 10px !important;
  }
  .body-theme .ismh-logo img { max-height: 44px !important; }

  /* Compact actions on mobile — only show cart + burger */
  .body-theme .ismh-actions { gap: 4px !important; flex-shrink: 0; }
  .body-theme .ismh-action--phone,
  .body-theme .ismh-action--icon { display: none !important; }

  /* Cart pill: shrink to icon-only, no overflow */
  .body-theme .ismh-action--cart {
    padding: 9px 14px !important;
    min-width: 44px;
    justify-content: center;
  }
  .body-theme .ismh-action--cart .ismh-action__col { display: none !important; }
  .body-theme .ismh-action--cart .ismh-action__icon-wrap { font-size: 18px !important; }

  /* Burger button — properly visible inline */
  .body-theme .ismh-burger {
    display: inline-flex !important;
    flex-direction: column !important;
    background: #F3F4F6 !important;
    border-radius: 12px !important;
    width: 44px !important; height: 44px !important;
    padding: 0 !important;
    align-items: center !important; justify-content: center !important;
    cursor: pointer; border: 0;
    flex-shrink: 0;
  }
  .body-theme .ismh-burger span {
    display: block; width: 18px; height: 2px;
    background: #0F1E14; margin: 2px 0; border-radius: 2px;
    transition: all 220ms ease;
  }
  .body-theme .ismh-burger[aria-expanded="true"] {
    background: #0F1E14 !important;
  }
  .body-theme .ismh-burger[aria-expanded="true"] span { background: #fff; }
  .body-theme .ismh-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .body-theme .ismh-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .body-theme .ismh-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

  /* Search bar compact */
  .body-theme .ismh-search {
    border-radius: 12px !important;
    border-width: 1.5px !important;
  }
  .body-theme .ismh-search__cat,
  .body-theme .ismh-search__btn-text { display: none !important; }
  .body-theme .ismh-search__input {
    padding: 10px 12px !important;
    font-size: 14px !important;
  }
  .body-theme .ismh-search__btn {
    padding: 0 14px !important;
    border-radius: 10px !important;
    margin: -1.5px !important;
  }

  /* Hide utility strip on mobile (or shrink it) — too noisy */
  .body-theme .ismh-utility { font-size: 11.5px !important; padding: 6px 0 !important; }
  .body-theme .ismh-utility__inner { padding: 0 14px !important; flex-wrap: wrap; gap: 6px !important; }
  .body-theme .ismh-utility__item { gap: 5px !important; }
  .body-theme .ismh-utility__item span { font-size: 11.5px; }
  .body-theme .ismh-utility__lang { padding: 1px !important; }
  .body-theme .ismh-utility__lang a { padding: 2px 8px !important; font-size: 11px !important; }

  /* Hide nav strip by default; burger triggers it as drawer */
  .body-theme .ismh-nav { display: none; }
  .body-theme .ismh-nav.is-open {
    display: block;
    position: absolute;
    top: 100%; left: 0; right: 0;
    background: #fff;
    border-top: 1px solid var(--is-border);
    box-shadow: 0 12px 28px rgba(15,30,20,.10);
    z-index: 70;
    max-height: calc(100vh - 100px);
    overflow-y: auto;
    animation: ismh-slide-down 220ms ease;
  }
  .body-theme .ismh-nav__inner {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0 !important;
    gap: 0 !important;
  }
  .body-theme .ismh-mega-trigger {
    width: 100% !important;
    justify-content: flex-start !important;
    border-radius: 0 !important;
    padding: 14px 18px !important;
  }
  .body-theme .ismh-nav__list {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 6px 0 !important;
    gap: 0 !important;
    width: 100%;
  }
  .body-theme .ismh-nav__list li { width: 100%; border-bottom: 1px solid #F3F4F6; }
  .body-theme .ismh-nav__list li:last-child { border-bottom: 0; }
  .body-theme .ismh-nav__list a {
    display: block !important;
    padding: 14px 22px !important;
    font-size: 15px !important;
  }
  .body-theme .ismh-nav__list a::after { display: none; }
  .body-theme .ismh-nav__list a:hover { background: var(--is-bg-soft); }
  .body-theme .ismh-nav__list a.is-active { background: var(--is-saffron-light); color: var(--is-saffron); }

  .body-theme .ismh-nav__right {
    padding: 14px 18px !important;
    border-top: 1px solid var(--is-border);
  }
  .body-theme .ismh-deal { width: 100%; justify-content: center; }

  /* Mega menu inside drawer becomes simple stack */
  .body-theme .ismh-mega { position: static !important; box-shadow: none !important; border: 0 !important; border-top: 1px solid var(--is-border); }
  .body-theme .ismh-mega__inner { grid-template-columns: 1fr !important; padding: 16px 18px !important; gap: 18px !important; }
  .body-theme .ismh-mega__feature { min-height: 120px !important; padding: 18px !important; }
}

/* Even smaller phones */
@media (max-width: 480px) {
  .body-theme .ismh-main__inner { padding: 10px 12px !important; gap: 8px !important; }
  .body-theme .ismh-logo img { max-height: 38px !important; }
  .body-theme .ismh-search__input { padding: 9px 10px !important; font-size: 13.5px !important; }
  .body-theme .ismh-search__btn { padding: 0 12px !important; }
  .body-theme .ismh-action--cart { padding: 8px 11px !important; min-width: 40px !important; }
  .body-theme .ismh-burger { width: 40px !important; height: 40px !important; }
  .body-theme .ismh-utility__items { width: 100%; justify-content: space-between; }
}
