/** Shopify CDN: Minification failed

Line 81:19 Unexpected "*"

**/
/* ============================================
   Tiggle Custom Brand Overrides
   ============================================
   All Tiggle-specific styling lives here.
   This file is loaded after the theme CSS.
   ============================================ */

/* -- Custom Font Imports -- */
/* -- CSS Custom Properties -- */
:root {
  --tiggle-orange: #FF6E40;
  --tiggle-brown: #37170D;
  --tiggle-cream: #FFF8F0;
  --tiggle-warm-cream: #F5E6D3;
  --tiggle-white: #FFFFFF;
}

/* -- Override heading font to Jost (loaded via Google Fonts) -- */
h1, h2, h3, h4, h5, h6,
.h0, .h1, .h2, .h3, .h4, .h5,
.hN,
[class*="heading"],
.title,
.banner__heading,
.rich-text__heading,
.section-header__title,
.featured-collection__title {
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  font-weight: 600;
  letter-spacing: -0.01em;
}

/* -- Button Enhancements -- */
.button,
.shopify-challenge__button,
button[type="submit"],
.cart__checkout-button,
.product-form__submit {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 0.06em;
  word-spacing: 0.08em;
  text-transform: none;
  padding: 12px 28px;
  line-height: 1.4;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.button:hover,
.product-form__submit:hover,
.cart__checkout-button:hover {
  opacity: 0.92;
  box-shadow: 0 2px 8px rgba(255, 110, 64, 0.2);
}

/* -- Card Hover Effects -- */
.card-wrapper:hover .card__media img {
  opacity: 0.95;
}

/* -- Product Card Price -- */
.price-item--sale {
  color: var(--tiggle-orange);
  font-weight: 700;
}

/* -- Link Styling -- */
a:not(.button) {
  transition: color 0.2s ease;
}

/* -- Section Spacing -- */
.section-template--*:not(:first-child) {
  padding-top: 2rem;
}

/* -- Announcement Bar -- */
.announcement-bar {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 500;
  letter-spacing: 0.02em;
}

/* -- Header -- */
.header {
  transition: box-shadow 0.3s ease;
}

.shopify-section-header-sticky .header {
  box-shadow: 0 2px 8px rgba(55, 23, 13, 0.08);
}

/* -- Footer -- */
.footer {
  border-top: 2px solid var(--tiggle-warm-cream);
}

/* -- Product Form -- */
.product-form__input label {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 500;
}

/* -- Smooth scroll -- */
html {
  scroll-behavior: smooth;
}

/* -- Image treatments -- */
.card__media {
  overflow: hidden;
}

/* -- Badge styling -- */
.badge {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 600;
  letter-spacing: 0.02em;
}

/* -- Quantity selector -- */
.quantity {
  border-radius: 8px;
}

/* Cart page quantity - keep compact */
.cart-items .quantity {
  border-radius: 20px;
}

/* -- Rich text sections -- */
.rich-text .rich-text__text {
  max-width: 720px;
  margin: 0 auto;
}

/* -- Selection color -- */
::selection {
  background-color: rgba(255, 110, 64, 0.2);
  color: var(--tiggle-brown);
}

/* -- Focus styles for accessibility -- */
*:focus-visible {
  outline: 2px solid var(--tiggle-orange);
  outline-offset: 2px;
}

/* -- Cart drawer styling enhancements -- */
.cart-drawer {
  font-family: 'Montserrat', sans-serif;
}

.cart-drawer__heading {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 600;
}

/* -- Mobile Responsive Adjustments -- */
@media (max-width: 749px) {
  .button,
  .product-form__submit,
  .cart__checkout-button {
    min-height: 48px;
    font-size: 14px !important;
    padding: 12px 24px !important;
    letter-spacing: 0.06em !important;
    word-spacing: 0.1em !important;
  }

  h1, .h1 {
    font-size: 1.75rem;
  }

  h2, .h2 {
    font-size: 1.5rem;
  }
}


/* ============================================
   Phase 2: Navigation Enhancements
   ============================================ */

/* -- Announcement Bar -- */
.announcement-bar {
  font-size: 13px;
  letter-spacing: 0.04em;
  padding: 8px 0;
}

.announcement-bar__message {
  font-weight: 500;
}

/* -- Header / Mega Menu -- */
.header__menu-item {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 0.02em;
  text-transform: none;
}

.header__menu-item:hover,
.header__menu-item:focus {
  color: var(--tiggle-orange);
}

/* Mega menu dropdown styling */
.mega-menu__content {
  border-top: 2px solid var(--tiggle-orange);
}

.mega-menu__link {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  padding: 6px 0;
  transition: color 0.2s ease, padding-left 0.2s ease;
}

.mega-menu__link:hover {
  color: var(--tiggle-orange);
  padding-left: 4px;
}

.mega-menu__link--level-2 {
  font-weight: 400;
  color: rgba(55, 23, 13, 0.75);
}

.mega-menu__link--level-2:hover {
  color: var(--tiggle-orange);
}

/* Header search */
.header__search {
  border-radius: 24px;
}

/* Cart icon badge */
.cart-count-bubble {
  background-color: var(--tiggle-orange);
  color: #fff;
  font-family: 'Jost', sans-serif;
  font-weight: 600;
}

/* -- Footer Enhancements -- */
.footer__content-top {
  border-bottom: 1px solid rgba(255, 248, 240, 0.15);
  padding-bottom: 32px;
  margin-bottom: 24px;
}

.footer h2,
.footer .footer__heading {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 600;
  font-size: 16px;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  margin-bottom: 16px;
}

.footer .list-menu__item {
  font-size: 14px;
  padding: 4px 0;
  transition: color 0.2s ease, padding-left 0.2s ease;
}

.footer .list-menu__item:hover {
  padding-left: 4px;
}

/* Newsletter in footer */
.footer__newsletter .newsletter-form__field-wrapper {
  border-radius: 28px;
  overflow: hidden;
}

.footer__newsletter .newsletter-form__button {
  border-radius: 0 28px 28px 0;
}

/* Social icons in footer */
.footer .social-icons__link {
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.footer .social-icons__link:hover {
  transform: translateY(-2px);
  opacity: 0.8;
}

/* Payment icons */
.footer .list-payment {
  opacity: 0.7;
}

/* -- Mobile Navigation -- */
@media (max-width: 989px) {
  /* Mobile drawer menu */
  .menu-drawer__menu-item {
    font-family: 'Jost', 'Josefin Sans', sans-serif;
    font-weight: 500;
    font-size: 16px;
    padding: 12px 0;
  }

  .menu-drawer__submenu .menu-drawer__menu-item {
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
  }

  /* Announcement bar on mobile */
  .announcement-bar {
    font-size: 12px;
    padding: 6px 0;
  }

  /* Footer on mobile - stack columns */
  .footer__content-top {
    padding-bottom: 24px;
  }

  .footer .footer__heading {
    font-size: 15px;
    margin-bottom: 12px;
  }
}


/* ============================================
   Phase 3: Cart Drawer & ATC Enhancements
   ============================================ */

/* -- Cart Drawer Overlay -- */
.cart-drawer__overlay {
  background: rgba(55, 23, 13, 0.4);
}

/* -- Cart Drawer Panel -- */
.cart-drawer .drawer__inner {
  max-width: 420px;
}

.cart-drawer .drawer__heading {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 600;
  font-size: 18px;
  letter-spacing: 0.01em;
}

/* -- Free Shipping Progress Bar -- */
.tiggle-shipping-bar {
  padding: 10px 20px 12px;
  border-bottom: 1px solid rgba(55, 23, 13, 0.08);
}

.tiggle-shipping-bar__text {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  color: var(--tiggle-brown, #37170D);
  text-align: center;
  margin-bottom: 6px;
  letter-spacing: 0.01em;
}

.tiggle-shipping-bar__text strong {
  color: var(--tiggle-orange, #FF6E40);
}

.tiggle-shipping-bar__track {
  width: 100%;
  height: 8px;
  background: #E8DDD4;
  border-radius: 4px;
  overflow: hidden;
  position: relative;
}

.tiggle-shipping-bar__fill {
  display: block;
  height: 100%;
  background: #FF6E40;
  border-radius: 4px;
  transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

/* -- Cart Table Headers -- */
.cart-drawer .caption-with-letter-spacing {
  font-family: 'Montserrat', sans-serif;
  font-size: 10px !important;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(55, 23, 13, 0.5);
}

/* Hide PRODUCT/TOTAL header row — cleaner without it */
.cart-drawer .cart-items thead {
  display: none !important;
}

/* Tighten up the cart items table */
.cart-drawer .cart-items {
  border-spacing: 0;
  border-collapse: collapse;
}

.cart-drawer .cart-item {
  border-bottom: 1px solid rgba(55, 23, 13, 0.06);
}

.cart-drawer .cart-item td {
  padding-top: 12px;
  padding-bottom: 12px;
  vertical-align: top;
}

/* -- Cart Item Styling -- */
.cart-drawer .cart-item__name {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 500;
  font-size: 13px !important;
  line-height: 1.3;
  letter-spacing: 0.01em;
}

.cart-drawer .cart-item__name.h4 {
  font-size: 13px !important;
}

/* Cart item prices — both unit and line total */
.cart-drawer .product-option,
.cart-drawer .cart-item__details .product-option {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px !important;
  color: rgba(55, 23, 13, 0.6);
}

.cart-drawer .price,
.cart-drawer .price--end,
.cart-drawer .cart-item__price-wrapper .price {
  font-family: 'Jost', sans-serif;
  font-size: 13px !important;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.cart-drawer .cart-item__image {
  border-radius: 8px;
  width: 80px !important;
}

/* -- Quantity Selector in Cart -- */
.cart-drawer .quantity,
.cart-drawer .cart-quantity {
  border-radius: 20px;
  height: 32px !important;
  min-height: 32px !important;
  max-height: 32px !important;
  border: 1px solid rgba(55, 23, 13, 0.15);
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0;
  width: auto !important;
  min-width: unset !important;
  max-width: 100px;
}

.cart-drawer .quantity__input {
  font-family: 'Jost', sans-serif;
  font-size: 12px !important;
  font-weight: 500;
  width: 28px !important;
  min-width: 28px !important;
  max-width: 28px !important;
  height: 30px !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: center;
  border: none !important;
  background: transparent !important;
  -moz-appearance: textfield;
  line-height: 30px !important;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cart-drawer .quantity__input::-webkit-outer-spin-button,
.cart-drawer .quantity__input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.cart-drawer .quantity__button {
  width: 28px !important;
  min-width: 28px !important;
  height: 30px !important;
  min-height: unset !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: none !important;
  transition: color 0.2s ease;
  flex-shrink: 0;
}

.cart-drawer .quantity__button svg {
  width: 9px;
  height: 9px;
}

.cart-drawer .quantity__button:hover {
  color: var(--tiggle-orange, #FF6E40);
}

/* Quantity wrapper alignment */
.cart-drawer .cart-item__quantity-wrapper {
  display: flex;
  align-items: center;
  gap: 6px;
}

/* Cart remove button */
.cart-drawer .cart-remove-button {
  padding: 2px !important;
  min-height: auto !important;
  min-width: auto !important;
  height: 28px !important;
  width: 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.cart-drawer .cart-remove-button svg {
  width: 13px;
  height: 13px;
}

/* -- Totals Section -- */
.cart-drawer .totals {
  padding: 12px 0 8px;
}

.cart-drawer .totals__total {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 600;
  font-size: 14px !important;
}

.cart-drawer .totals__total-value {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 700;
  font-size: 15px !important;
}

/* Tax/shipping note */
.cart-drawer .tax-note {
  font-size: 11px !important;
  color: rgba(55, 23, 13, 0.5);
}

/* -- Upsell Section -- */
.tiggle-cart-upsell {
  padding: 14px 20px;
  border-top: 1px solid rgba(55, 23, 13, 0.08);
}

.tiggle-cart-upsell__heading {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 600;
  font-size: 13px;
  color: var(--tiggle-brown, #37170D);
  margin: 0 0 10px;
  letter-spacing: 0.02em;
}

.tiggle-cart-upsell__products {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tiggle-cart-upsell__item {
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgba(55, 23, 13, 0.03);
  border-radius: 8px;
  padding: 8px 10px;
  transition: background 0.2s ease;
}

.tiggle-cart-upsell__item:hover {
  background: rgba(55, 23, 13, 0.06);
}

.tiggle-cart-upsell__link {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: inherit;
  flex: 1;
  min-width: 0;
}

.tiggle-cart-upsell__image {
  width: 44px;
  height: 44px;
  object-fit: cover;
  border-radius: 6px;
  flex-shrink: 0;
}

.tiggle-cart-upsell__info {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  flex: 1;
}

.tiggle-cart-upsell__title {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  font-weight: 500;
  color: var(--tiggle-brown, #37170D);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}

.tiggle-cart-upsell__price {
  font-family: 'Jost', sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: var(--tiggle-orange, #FF6E40);
}

/* Upsell Add button */
.tiggle-cart-upsell__add-btn {
  flex-shrink: 0;
  background: var(--tiggle-orange, #FF6E40);
  color: #fff;
  border: none;
  border-radius: 20px;
  font-family: 'Jost', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  padding: 6px 14px;
  cursor: pointer;
  transition: all 0.25s ease;
  white-space: nowrap;
  line-height: 1.3;
}

.tiggle-cart-upsell__add-btn:hover {
  background: #e55a30;
  transform: scale(1.02);
}

.tiggle-cart-upsell__add-btn:active {
  transform: scale(0.97);
}

.tiggle-cart-upsell__add-btn.tiggle-upsell-adding {
  opacity: 0.6;
  pointer-events: none;
}

.tiggle-cart-upsell__add-btn.tiggle-upsell-added {
  background: #2E7D32;
  pointer-events: none;
}

/* -- Cart Footer / Checkout -- */
.cart-drawer .cart__checkout-button {
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  letter-spacing: 0.08em !important;
  word-spacing: 0.1em !important;
  min-height: 48px;
  padding: 12px 28px !important;
  border-radius: 28px;
}

/* -- ATC Button Animation + Styling -- */
.product-form__submit {
  position: relative;
  overflow: hidden;
  transition: background-color 0.3s ease;
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  font-weight: 500 !important;
  font-size: 15px !important;
  letter-spacing: 0.08em !important;
  word-spacing: 0.12em !important;
  padding: 14px 32px !important;
  min-height: 52px;
  line-height: 1.4;
  border-radius: 28px;
}

/* Success state after adding to cart */
.product-form__submit.tiggle-atc-success {
  background-color: #2E7D32 !important;
}

.product-form__submit.tiggle-atc-success::before {
  content: '\2713';
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 20px;
  color: #fff;
}

/* Quick Add buttons on product cards */
.quick-add__submit {
  transition: background-color 0.3s ease;
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  font-weight: 500;
  font-size: 13px !important;
  letter-spacing: 0.08em;
  word-spacing: 0.1em;
  padding: 10px 20px;
  line-height: 1.4;
}

/* -- Empty Cart State -- */
.cart-drawer .cart__empty-text {
  font-family: 'Jost', 'Josefin Sans', sans-serif;
  font-weight: 500;
  font-size: 16px;
}

/* -- Mobile Cart Drawer -- */
@media (max-width: 749px) {
  .cart-drawer .drawer__inner {
    max-width: 100%;
    width: 100%;
  }

  .tiggle-shipping-bar {
    padding: 8px 16px 10px;
  }

  .tiggle-shipping-bar__text {
    font-size: 11px;
  }

  .tiggle-cart-upsell {
    padding: 12px 16px;
  }

  .tiggle-cart-upsell__heading {
    font-size: 12px;
  }

  .tiggle-cart-upsell__add-btn {
    font-size: 10px;
    padding: 5px 12px;
  }

  .cart-drawer .cart-item__name,
  .cart-drawer .cart-item__name.h4 {
    font-size: 12px !important;
  }

  .cart-drawer .price,
  .cart-drawer .price--end {
    font-size: 12px !important;
  }

  .cart-drawer .quantity__input {
    font-size: 12px !important;
  }
}



/* ============================================
   Phase 4: Homepage Enhancements
   ============================================ */

/* -- Hero Banner -- */
.section-hero_banner .banner__heading {
  font-family: 'Jost', sans-serif !important;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.1;
}

.section-hero_banner .banner__text {
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  opacity: 0.9;
  letter-spacing: 0.02em;
  max-width: 600px;
  margin: 0 auto;
}

/* -- Featured Collection Headings -- */
.featured-collection .title-wrapper .title {
  font-family: 'Jost', sans-serif !important;
  font-weight: 600;
}

.featured-collection .collection-description {
  font-family: 'Montserrat', sans-serif;
  max-width: 600px;
  margin: 0 auto 24px;
  text-align: center;
}

/* -- Multicolumn (Brand Pillars) enhancements -- */
.tiggle-section-pillars .multicolumn-card__info .inline-richtext,
.multicolumn .multicolumn-card__info p {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  line-height: 1.5;
}

.multicolumn .multicolumn-card .multicolumn-card__info h3 {
  font-family: 'Jost', sans-serif !important;
  font-weight: 600;
  font-size: 18px;
}

/* -- Image with Text sections -- */
.image-with-text .image-with-text__content h2 {
  font-family: 'Jost', sans-serif !important;
}

.image-with-text .image-with-text__content .image-with-text__text p {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  line-height: 1.7;
}

/* -- Rich Text (Honestly Tiggle) -- */
.rich-text .rich-text__text p {
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  line-height: 1.7;
  max-width: 680px;
  margin: 0 auto;
}

/* -- Blog Section -- */
.blog-posts .card__heading a {
  font-family: 'Jost', sans-serif !important;
  font-weight: 600;
}

/* -- Bottom CTA Banner -- */
.section-bottom_cta .banner__heading {
  font-family: 'Jost', sans-serif !important;
  font-weight: 600;
  letter-spacing: -0.01em;
}

/* -- Section spacing rhythm -- */
.shopify-section:not(:first-child) {
  margin-top: 0;
}

/* -- Mobile homepage tweaks -- */
@media (max-width: 749px) {
  .section-hero_banner .banner__heading {
    font-size: 2rem !important;
    line-height: 1.15;
  }

  .section-hero_banner .banner__text {
    font-size: 14px;
  }

  .featured-collection .title-wrapper .title {
    font-size: 1.5rem;
  }

  .multicolumn .multicolumn-card .multicolumn-card__info h3 {
    font-size: 16px;
  }
}


/* =====================================================
   Phase 4 Upgrades — New Section Integration CSS
   ===================================================== */

/* Press Logos — ensure no theme overrides */
.tiggle-press-logos-section {
  margin: 0 !important;
}

/* Community Reviews — ensure 6 cards show on desktop, 3 on mobile */
@media (min-width: 750px) {
  .tiggle-reviews__grid {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

/* Us vs Them — smooth tab transitions */
.tiggle-vs__panel {
  animation: tiggleFadeIn 0.3s ease;
}
@keyframes tiggleFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Hero banner text enhancement for new copy */
.banner__heading .h0 {
  text-shadow: 0 2px 20px rgba(0,0,0,0.4);
}
.banner__text .subtitle {
  text-shadow: 0 1px 10px rgba(0,0,0,0.3);
}

/* Ensure consistent section spacing */
.tiggle-press-logos-section + .tiggle-we-hear-you-section {
  margin-top: 0;
}

/* Bottom CTA — update copy reference from HC to all products */
.section-bottom_cta .banner__heading {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}


/* =====================================================
   PRICE FIX — Reduce font size across entire site
   ===================================================== */

/* Product card prices — collection grids & homepage */
.card-information .price,
.card-information .price .price-item,
.card-information .price-item--regular,
.card-information .price-item--sale,
.card-information .price-item--last {
  font-family: 'Jost', sans-serif !important;
  font-size: 1.3rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
}

/* Price on product pages */
.price--large,
.price--large .price-item {
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  font-family: 'Jost', sans-serif !important;
}

/* Compare-at price (strikethrough) */
.price-item--regular {
  font-size: 1.2rem !important;
}

/* Price on sale items */
.price--on-sale .price-item--regular {
  font-size: 1.1rem !important;
}

/* Unit price small text */
.unit-price {
  font-size: 1rem !important;
}

/* Hide "INR" currency code — Indian consumers know it's rupees */
.price .price-item::after {
  content: none;
}

/* =====================================================
   HERO MOBILE FIX — Overlay text on image, not below
   ===================================================== */

/* Force hero banner to keep text overlaid on mobile */
@media (max-width: 749px) {
  .banner--mobile-bottom .banner__content {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 2 !important;
  }

  /* Hero heading on mobile — impactful but not overflowing */
  .banner .banner__heading.h0 {
    font-size: 28px !important;
    line-height: 1.15 !important;
    text-shadow: 0 2px 16px rgba(0,0,0,0.5) !important;
    padding: 0 16px !important;
  }

  /* Hero subtitle on mobile */
  .banner .banner__text .subtitle {
    font-size: 13px !important;
    line-height: 1.4 !important;
    text-shadow: 0 1px 8px rgba(0,0,0,0.4) !important;
    padding: 0 20px !important;
  }

  /* Ensure banner has minimum height on mobile */
  .banner--large {
    min-height: 420px !important;
  }

  /* Bottom CTA banner mobile fix */
  .section-bottom_cta .banner--small {
    min-height: 260px !important;
  }
  .section-bottom_cta .banner__heading {
    font-size: 22px !important;
    line-height: 1.2 !important;
    text-shadow: 0 2px 12px rgba(0,0,0,0.5) !important;
    padding: 0 16px !important;
  }

  /* Image-with-text (India's First) — better mobile layout */
  .image-with-text .grid {
    gap: 20px !important;
  }
  .image-with-text .image-with-text__media-item {
    border-radius: 12px !important;
    overflow: hidden !important;
  }
}

/* Desktop hero improvements */
@media (min-width: 750px) {
  .banner .banner__heading.h0 {
    font-size: 52px !important;
    line-height: 1.1 !important;
    text-shadow: 0 3px 24px rgba(0,0,0,0.4) !important;
    max-width: 800px !important;
    margin: 0 auto !important;
  }
  .banner .banner__text .subtitle {
    font-size: 18px !important;
    text-shadow: 0 2px 12px rgba(0,0,0,0.3) !important;
  }
}

/* =====================================================
   D2C HOMEPAGE AUDIT IMPROVEMENTS
   Indian market optimizations for conversion
   ===================================================== */

/* -- Tiggle Promise strip styling -- */
.section-tiggle_promise .multicolumn-card__info h3 {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--tiggle-brown) !important;
  margin-bottom: 4px !important;
}
.section-tiggle_promise .multicolumn-card__info p {
  font-size: 12px !important;
  opacity: 0.75 !important;
  line-height: 1.4 !important;
}
.section-tiggle_promise {
  border-top: 1px solid rgba(55,23,13,0.08) !important;
  border-bottom: 1px solid rgba(55,23,13,0.08) !important;
}

/* -- Product card hover enhancement -- */
.card-wrapper:hover .card__heading a {
  color: var(--tiggle-orange) !important;
  transition: color 0.2s ease !important;
}

/* -- Quick Add button on product cards -- */
.quick-add__submit {
  font-family: 'Jost', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
}

/* -- Product card title — tighter, cleaner -- */
.card__heading a {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  color: var(--tiggle-brown) !important;
}

/* -- Section headings — consistent Jost font -- */
.featured-collection .title-wrapper .title,
.rich-text .rich-text__heading,
.image-with-text h2 {
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  color: var(--tiggle-brown) !important;
}

/* -- Collection description text — cleaner -- */
.featured-collection .collection__description p {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  max-width: 600px !important;
  margin: 0 auto !important;
  opacity: 0.8 !important;
}

/* -- "View All" buttons — pill style matching brand -- */
.featured-collection .button,
.featured-collection .collection__view-all a {
  border-radius: 50px !important;
  font-size: 13px !important;
  letter-spacing: 0.06em !important;
  padding: 10px 28px !important;
}

/* -- Honestly Tiggle section — more breathing room, emphasis -- */
.section-honestly_tiggle .rich-text__text p {
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: var(--tiggle-brown) !important;
  opacity: 0.85 !important;
}

/* -- Brand Pillars — better card styling -- */
.section-brand_pillars .multicolumn-card {
  text-align: center !important;
}
.section-brand_pillars .multicolumn-card__info h3 {
  font-family: 'Jost', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--tiggle-brown) !important;
}
.section-brand_pillars .multicolumn-card__info p {
  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* -- Image-with-text (India's First) — premium feel -- */
.section-indias_first h2 {
  font-size: 28px !important;
  line-height: 1.2 !important;
}
.section-indias_first p {
  font-size: 15px !important;
  line-height: 1.65 !important;
}

/* -- Mobile product grid spacing -- */
@media (max-width: 749px) {
  .product-grid .grid__item {
    padding: 0 6px !important;
  }
  .card__heading a {
    font-size: 13px !important;
  }
  .card-information .price .price-item {
    font-size: 1.2rem !important;
  }

  /* Tiggle Promise — 2x2 grid on mobile */
  .section-tiggle_promise .multicolumn-list {
    flex-wrap: wrap !important;
  }
  .section-tiggle_promise .multicolumn-list__item {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
  .section-tiggle_promise .multicolumn-card__info h3 {
    font-size: 13px !important;
  }
  .section-tiggle_promise .multicolumn-card__info p {
    font-size: 11px !important;
  }

  /* Section headings smaller on mobile */
  .featured-collection .title-wrapper .title {
    font-size: 1.4rem !important;
  }

  /* India's First section mobile */
  .section-indias_first h2 {
    font-size: 22px !important;
  }
  .section-indias_first p {
    font-size: 14px !important;
  }
}

/* -- Smooth scroll for the whole page -- */
html {
  scroll-behavior: smooth;
}

/* -- Badge/tag styling for product cards -- */
.badge {
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  border-radius: 4px !important;
}

/* -- Button hover state — subtle scale -- */
.button--primary:hover,
.shopify-challenge__button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(255,110,64,0.3) !important;
  transition: all 0.2s ease !important;
}

/* -- Footer improvements -- */
.footer__content-top {
  border-top: 2px solid rgba(55,23,13,0.1) !important;
}


/* =====================================================
   PRODUCT CARD OVERHAUL — Fix titles, prices, ATC button
   ===================================================== */

/* -- Product Card Title: Smaller, tighter, 2-line clamp -- */
.card-information .card__heading,
.card-information .card__heading a,
.card__information .card__heading,
.card__information .card__heading a {
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: #37170D !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-height: 2.7em !important;
  margin-bottom: 4px !important;
}

/* -- Product Card Price: Compact, clean, no decimals look -- */
.card-information .price,
.card__information .price {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  color: #37170D !important;
  margin-top: 0 !important;
  margin-bottom: 4px !important;
}

.card-information .price .price-item,
.card__information .price .price-item,
.price-item--regular,
.price-item--sale,
.price-item--last {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

/* Sale compare price — smaller strikethrough */
.price--on-sale .price-item--regular {
  font-size: 12px !important;
  font-weight: 500 !important;
  opacity: 0.6 !important;
}

/* "From" price text */
.price .price-item--regular:first-child {
  font-weight: 700 !important;
}

/* -- ADD TO CART Button: Full button, not just text link -- */
.quick-add .quick-add__submit,
.quick-add__submit.button--secondary {
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #FF6E40 !important;
  background: transparent !important;
  border: 2px solid #FF6E40 !important;
  border-radius: 50px !important;
  padding: 8px 20px !important;
  min-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
  width: 100% !important;
  margin-top: 8px !important;
}

.quick-add .quick-add__submit:hover,
.quick-add__submit.button--secondary:hover {
  background: #FF6E40 !important;
  color: #FFFFFF !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 3px 10px rgba(255,110,64,0.25) !important;
}

/* Fix the loading spinner in ATC button */
.quick-add .quick-add__submit .loading__spinner {
  color: #FF6E40 !important;
}

/* -- Product card spacing -- */
.card-information {
  padding-top: 8px !important;
}

/* -- Card image: subtle rounded corners + shadow -- */
.card__media,
.card .media {
  border-radius: 10px !important;
  overflow: hidden !important;
}

/* -- Card wrapper hover: lift effect -- */
.card-wrapper:hover .card__media {
  box-shadow: 0 4px 16px rgba(55,23,13,0.08) !important;
}

/* -- Badge (Sale, Sold Out) positioning -- */
.card__badge {
  top: 8px !important;
  left: 8px !important;
}

/* -- Mobile-specific product card fixes -- */
@media (max-width: 749px) {
  .card-information .card__heading,
  .card-information .card__heading a,
  .card__information .card__heading,
  .card__information .card__heading a {
    font-size: 12px !important;
    -webkit-line-clamp: 2 !important;
    max-height: 2.7em !important;
  }

  .card-information .price .price-item,
  .card__information .price .price-item {
    font-size: 13px !important;
  }

  .quick-add .quick-add__submit {
    font-size: 10px !important;
    padding: 6px 14px !important;
    min-height: 32px !important;
    margin-top: 6px !important;
  }

  /* Tighter card grid on mobile */
  .collection .grid--2-col-tablet-down .grid__item {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
}

/* -- Product page price (large) -- */
.price--large .price-item,
.product__info-wrapper .price .price-item {
  font-family: 'Jost', sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #37170D !important;
}

.price--large .price--on-sale .price-item--regular {
  font-size: 16px !important;
}


/* =====================================================
   HERO REDESIGN — Sleek, modern, premium text styling
   ===================================================== */

/* Hero heading — bold, clean, modern */
.banner .banner__heading,
.banner .banner__heading.h0 {
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  letter-spacing: -0.02em !important;
  text-shadow: 0 2px 30px rgba(0,0,0,0.35) !important;
  margin-bottom: 12px !important;
}

/* Desktop hero heading */
@media (min-width: 750px) {
  .banner .banner__heading.h0 {
    font-size: 56px !important;
    line-height: 1.05 !important;
    max-width: 680px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Mobile hero heading */
@media (max-width: 749px) {
  .banner .banner__heading.h0 {
    font-size: 32px !important;
    line-height: 1.1 !important;
    padding: 0 12px !important;
    margin-bottom: 8px !important;
  }
}

/* Hero subtitle — sleek, smaller, lighter weight */
.banner .banner__text,
.banner .banner__text p,
.banner .banner__text .subtitle {
  font-family: 'Montserrat', sans-serif !important;
  color: rgba(255,255,255,0.9) !important;
  text-shadow: 0 1px 15px rgba(0,0,0,0.3) !important;
  margin-bottom: 20px !important;
}

@media (min-width: 750px) {
  .banner .banner__text,
  .banner .banner__text p,
  .banner .banner__text .subtitle {
    font-size: 16px !important;
    font-weight: 400 !important;
    letter-spacing: 0.04em !important;
    line-height: 1.5 !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 749px) {
  .banner .banner__text,
  .banner .banner__text p,
  .banner .banner__text .subtitle {
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: 0.03em !important;
    line-height: 1.45 !important;
    padding: 0 24px !important;
    margin-bottom: 16px !important;
  }
}

/* Hero buttons container */
.banner .banner__buttons {
  display: flex !important;
  gap: 12px !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}

/* Shop Now button — primary, filled */
.banner .banner__buttons .button--primary {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  background: #FF6E40 !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 14px 36px !important;
  box-shadow: 0 4px 16px rgba(255,110,64,0.35) !important;
  transition: all 0.3s ease !important;
}
.banner .banner__buttons .button--primary:hover {
  background: #e85a30 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 24px rgba(255,110,64,0.45) !important;
}

/* Our Story button — secondary, clean outline */
.banner .banner__buttons .button--secondary {
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  background: transparent !important;
  color: #FFFFFF !important;
  border: 2px solid rgba(255,255,255,0.6) !important;
  border-radius: 50px !important;
  padding: 12px 28px !important;
  transition: all 0.3s ease !important;
}
.banner .banner__buttons .button--secondary:hover {
  border-color: #FFFFFF !important;
  background: rgba(255,255,255,0.1) !important;
}

/* Mobile button sizing */
@media (max-width: 749px) {
  .banner .banner__buttons .button--primary {
    font-size: 13px !important;
    padding: 12px 32px !important;
  }
  .banner .banner__buttons .button--secondary {
    font-size: 12px !important;
    padding: 10px 24px !important;
  }
}

/* --- Bottom CTA banner text --- */
.section-bottom_cta .banner__heading,
.section-bottom_cta .banner__heading.h1 {
  font-family: 'Jost', sans-serif !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  text-shadow: 0 2px 20px rgba(0,0,0,0.4) !important;
  max-width: 600px !important;
  margin: 0 auto 16px !important;
}
@media (min-width: 750px) {
  .section-bottom_cta .banner__heading.h1 {
    font-size: 32px !important;
    line-height: 1.2 !important;
  }
}
@media (max-width: 749px) {
  .section-bottom_cta .banner__heading.h1 {
    font-size: 24px !important;
    line-height: 1.2 !important;
    padding: 0 20px !important;
  }
}

/* =====================================================
   TRUST BAR — Fix desktop: single clean row
   ===================================================== */

/* Ensure trust bar doesn't wrap on wider screens */
.tiggle-trust-bar {
  white-space: nowrap;
}
.tiggle-section-trust-bar {
  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   FIX: Hero Banner Buttons — Side-by-side on desktop, compact
   ============================================================ */
.banner .banner__buttons,
.banner .banner__buttons--multiple {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  max-width: 500px !important;
  margin: 0 auto !important;
}

.banner .banner__buttons a.button,
.banner .banner__buttons .button {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  padding: 14px 40px !important;
  font-size: 14px !important;
  font-family: 'Jost', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border-radius: 50px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
}

/* Shop Now — filled orange */
.banner .banner__buttons a.button:not(.button--secondary),
.banner .banner__buttons .button:not(.button--secondary) {
  background: #FF6E40 !important;
  color: #FFFFFF !important;
  border: 2px solid #FF6E40 !important;
  box-shadow: 0 4px 20px rgba(255, 110, 64, 0.35) !important;
}

.banner .banner__buttons a.button:not(.button--secondary):hover {
  background: #E85A30 !important;
  border-color: #E85A30 !important;
  box-shadow: 0 6px 25px rgba(255, 110, 64, 0.5) !important;
  transform: translateY(-2px) !important;
}

/* Our Story — white outline */
.banner .banner__buttons a.button--secondary,
.banner .banner__buttons .button--secondary {
  background: transparent !important;
  color: #FFFFFF !important;
  border: 2px solid rgba(255, 255, 255, 0.7) !important;
  box-shadow: none !important;
}

.banner .banner__buttons a.button--secondary:hover,
.banner .banner__buttons .button--secondary:hover {
  background: rgba(255, 255, 255, 0.15) !important;
  border-color: #FFFFFF !important;
  transform: translateY(-2px) !important;
}

/* Mobile: stack buttons, full width */
@media (max-width: 749px) {
  .banner .banner__buttons,
  .banner .banner__buttons--multiple {
    flex-direction: column !important;
    max-width: 280px !important;
    gap: 12px !important;
  }
  .banner .banner__buttons a.button,
  .banner .banner__buttons .button {
    width: 100% !important;
    padding: 12px 32px !important;
    font-size: 13px !important;
  }
}

/* ============================================================
   RESTYLE: Bottom CTA Section — No image, warm gradient
   ============================================================ */
.section-bottom_cta {
  position: relative !important;
}

.section-bottom_cta .banner {
  background: linear-gradient(135deg, #37170D 0%, #5C2E1A 50%, #37170D 100%) !important;
  min-height: 300px !important;
}

/* Hide the How to Make background image */
.section-bottom_cta .banner__media,
.section-bottom_cta .banner__media img,
.section-bottom_cta .banner__media picture {
  display: none !important;
  visibility: hidden !important;
}

/* Also hide the overlay since we have gradient */
.section-bottom_cta .banner::after {
  display: none !important;
}

.section-bottom_cta .banner__content {
  position: relative !important;
  z-index: 2 !important;
}

.section-bottom_cta .banner__heading {
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 38px !important;
  color: #FFFFFF !important;
  line-height: 1.2 !important;
  letter-spacing: -0.01em !important;
  max-width: 600px !important;
  margin: 0 auto 24px !important;
}

.section-bottom_cta .banner__buttons a.button {
  background: #FF6E40 !important;
  color: #FFFFFF !important;
  border: 2px solid #FF6E40 !important;
  border-radius: 50px !important;
  padding: 14px 48px !important;
  font-family: 'Jost', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  box-shadow: 0 4px 20px rgba(255, 110, 64, 0.4) !important;
  transition: all 0.3s ease !important;
  width: auto !important;
  display: inline-flex !important;
}

.section-bottom_cta .banner__buttons a.button:hover {
  background: #E85A30 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 25px rgba(255, 110, 64, 0.55) !important;
}

@media (max-width: 749px) {
  .section-bottom_cta .banner__heading {
    font-size: 26px !important;
    padding: 0 16px !important;
  }
  .section-bottom_cta .banner__buttons a.button {
    padding: 12px 36px !important;
    font-size: 13px !important;
  }
}


/* ============================================================
   PHASE 5: Product Page Enhancements
   ============================================================ */

/* -- Trust Badges (below ATC button) -- */
.tiggle-trust-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
  padding: 16px 0;
  border-top: 1px solid rgba(55,23,13,0.08);
}
.tiggle-trust-badges__item {
  display: flex;
  align-items: center;
  gap: 4px;
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 500;
  color: #37170D;
  background: rgba(255,110,64,0.06);
  padding: 5px 10px;
  border-radius: 20px;
  white-space: nowrap;
}
.tiggle-trust-badges__icon {
  font-size: 13px;
}

/* -- Per-Cup Price Callout -- */
.tiggle-per-cup {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: 'Jost', sans-serif;
  font-size: 14px;
  color: #FF6E40;
  font-weight: 600;
  margin-top: 4px;
  margin-bottom: 8px;
}
.tiggle-per-cup__divider {
  color: rgba(55,23,13,0.2);
}
.tiggle-per-cup__price {
  color: #37170D;
  font-weight: 500;
}

/* -- Main Product Section Enhancements -- */
.product .product__title {
  font-family: 'Jost', sans-serif !important;
  font-weight: 700 !important;
  color: #37170D !important;
  font-size: 28px !important;
  line-height: 1.2 !important;
}
@media (max-width: 749px) {
  .product .product__title {
    font-size: 22px !important;
  }
}

/* Product price on product page */
.product .price-item--regular,
.product .price-item--sale,
.product .price__regular .price-item {
  font-family: 'Jost', sans-serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #37170D !important;
}
.product .price .price-item--compare {
  color: #999 !important;
  font-size: 16px !important;
}

/* Product description */
.product .product__description {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #37170D !important;
}
.product .product__description p {
  margin-bottom: 10px;
}

/* ATC button on product page — bigger, bolder */
.product-form__submit {
  font-family: 'Jost', sans-serif !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  background: #FF6E40 !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 16px 48px !important;
  min-height: 56px !important;
  box-shadow: 0 4px 20px rgba(255,110,64,0.3) !important;
  transition: all 0.3s ease !important;
}
.product-form__submit:hover {
  background: #E85A30 !important;
  box-shadow: 0 6px 25px rgba(255,110,64,0.45) !important;
  transform: translateY(-2px) !important;
}

/* Buy it now (dynamic checkout) */
.shopify-payment-button .shopify-payment-button__button--unbranded {
  font-family: 'Jost', sans-serif !important;
  font-weight: 600 !important;
  border-radius: 50px !important;
  min-height: 48px !important;
}

/* Variant picker buttons */
.product-form__input input[type="radio"] + label {
  font-family: 'Jost', sans-serif !important;
  font-weight: 500 !important;
  border-radius: 8px !important;
  border-color: rgba(55,23,13,0.2) !important;
  color: #37170D !important;
  transition: all 0.2s ease !important;
}
.product-form__input input[type="radio"]:checked + label {
  border-color: #FF6E40 !important;
  background: rgba(255,110,64,0.06) !important;
  color: #FF6E40 !important;
  font-weight: 700 !important;
}

/* Quantity selector */
.quantity__button {
  color: #37170D !important;
}
.quantity__input {
  font-family: 'Jost', sans-serif !important;
  font-weight: 600 !important;
  color: #37170D !important;
}

/* -- Related Products Section -- */
.related-products h2 {
  font-family: 'Jost', sans-serif !important;
  font-weight: 700 !important;
  color: #37170D !important;
}

/* -- Product Page Section Headings -- */
.tiggle-product-education h2,
.tiggle-how-to-prepare h2,
.tiggle-sourcing-story h2,
.tiggle-ingredients-section h2,
.tiggle-shipping-info h2,
.tiggle-product-faq h2 {
  font-family: 'Jost', sans-serif !important;
}

/* Product image gallery */
.product__media-wrapper .product__media {
  border-radius: 12px !important;
  overflow: hidden !important;
}

/* Product media thumbnails */
.thumbnail-list .thumbnail {
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 2px solid transparent !important;
  transition: border-color 0.2s ease !important;
}
.thumbnail-list .thumbnail.is-active,
.thumbnail-list .thumbnail:hover {
  border-color: #FF6E40 !important;
}

/* Mobile product page */
@media (max-width: 749px) {
  .tiggle-trust-badges {
    gap: 6px;
  }
  .tiggle-trust-badges__item {
    font-size: 10px;
    padding: 4px 8px;
  }
  .product-form__submit {
    font-size: 14px !important;
    padding: 14px 32px !important;
    min-height: 48px !important;
  }
}


/* ===== PHASE 6: COLLECTION PAGES ===== */

/* Collection Banner Styling */
.collection-banner__heading,
.collection-hero__title,
.main-collection-banner h1 {
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  font-weight: 800 !important;
  color: #37170D !important;
  letter-spacing: -0.02em !important;
}

/* Collection banner overlay for image readability */
.collection-hero .banner__media::after,
.main-collection-banner .banner__media::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(55,23,13,0.3) 0%, rgba(55,23,13,0.5) 100%) !important;
}

.collection-hero .banner__heading,
.main-collection-banner .banner__heading {
  color: #FFF8F0 !important;
  text-shadow: 0 2px 8px rgba(55,23,13,0.3) !important;
}

/* Collection intro blurb spacing */
.collection .section-rich-text {
  padding-top: 40px !important;
  padding-bottom: 20px !important;
}

.collection .section-rich-text h2,
.collection .section-rich-text .rich-text__heading {
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  font-weight: 700 !important;
  color: #37170D !important;
}

.collection .section-rich-text .rich-text__text p {
  font-family: 'Montserrat', sans-serif !important;
  color: #37170D !important;
  max-width: 680px !important;
  margin: 0 auto !important;
}

/* Quick Add Button on Collection Cards */
.collection .quick-add__submit,
.main-collection-product-grid .quick-add__submit {
  font-family: 'Jost', 'Josefin Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border: 2px solid #FF6E40 !important;
  border-radius: 50px !important;
  color: #FF6E40 !important;
  background: transparent !important;
  min-height: 44px !important;
  padding: 10px 20px !important;
  transition: all 0.2s ease !important;
}

.collection .quick-add__submit:hover,
.main-collection-product-grid .quick-add__submit:hover {
  background: #FF6E40 !important;
  color: #FFF8F0 !important;
  box-shadow: 0 4px 12px rgba(255,110,64,0.3) !important;
}

/* ---- Collection-Specific Color Themes ---- */

/* Hot Chocolate: warm tones */
body[data-collection-handle="hot-chocolate"] .section-rich-text {
  background-color: #FFF8F0 !important;
}

/* Iced Chocolate: cool tones */
body[data-collection-handle="iced-chocolate"] .section-rich-text {
  background: linear-gradient(180deg, #E8F4F8 0%, #FFF8F0 100%) !important;
}

body[data-collection-handle="iced-chocolate"] .section-rich-text h2,
body[data-collection-handle="iced-chocolate"] .section-rich-text .rich-text__heading {
  color: #1A5276 !important;
}

/* Tiggle Junior: playful warm */
body[data-collection-handle="tiggle-junior"] .section-rich-text {
  background-color: #FFF3E0 !important;
}

body[data-collection-handle="tiggle-junior"] .section-rich-text h2,
body[data-collection-handle="tiggle-junior"] .section-rich-text .rich-text__heading {
  color: #FF6E40 !important;
}

/* Bundles: gift feel */
body[data-collection-handle="bundles-gifting"] .section-rich-text {
  background-color: #FDF2F8 !important;
}

/* Mobile adjustments for collections */
@media (max-width: 749px) {
  .collection .section-rich-text {
    padding-top: 24px !important;
    padding-bottom: 12px !important;
  }

  .collection .section-rich-text h2 {
    font-size: 22px !important;
  }

  .collection .section-rich-text .rich-text__text p {
    font-size: 14px !important;
  }

  .collection .quick-add__submit {
    min-height: 44px !important;
    font-size: 10px !important;
    padding: 8px 16px !important;
  }
}


/* ===== PHASE 7: BRAND STORY PAGE ===== */

/* Story hero section */
.tiggle-story-hero {
  position: relative !important;
  overflow: hidden !important;
}

/* Chapter sections - image-with-text on Our Story */
body[data-page-handle="our-story"] .section-image-with-text {
  padding: 60px 0 !important;
}

body[data-page-handle="our-story"] .section-image-with-text:nth-of-type(even) {
  background-color: #F5E6D3 !important;
}

body[data-page-handle="our-story"] .section-image-with-text:nth-of-type(odd) {
  background-color: #FFF8F0 !important;
}

/* Chapter captions (CHAPTER 1 — 2019) */
body[data-page-handle="our-story"] .image-with-text .caption {
  font-family: 'Jost', sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  color: #FF6E40 !important;
  margin-bottom: 8px !important;
}

/* Chapter headings */
body[data-page-handle="our-story"] .image-with-text h2 {
  font-family: 'Jost', sans-serif !important;
  font-weight: 800 !important;
  color: #37170D !important;
  font-size: 36px !important;
}

/* Chapter body text */
body[data-page-handle="our-story"] .image-with-text .rte p {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #37170D !important;
}

/* Diary section - dark background with orange borders */
body[data-page-handle="our-story"] .section-rich-text {
  background-color: #37170D !important;
  padding: 80px 20px !important;
}

body[data-page-handle="our-story"] .section-rich-text h2,
body[data-page-handle="our-story"] .section-rich-text .rich-text__heading {
  color: #FF6E40 !important;
  font-family: 'Jost', sans-serif !important;
}

body[data-page-handle="our-story"] .section-rich-text .rich-text__text {
  max-width: 700px !important;
  margin: 0 auto !important;
}

body[data-page-handle="our-story"] .section-rich-text .rich-text__text p {
  color: #F5E6D3 !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
  margin-bottom: 24px !important;
  padding-left: 20px !important;
  border-left: 3px solid #FF6E40 !important;
}

/* Values multicolumn */
body[data-page-handle="our-story"] .section-multicolumn {
  background-color: #FFF8F0 !important;
  padding: 60px 0 !important;
}

body[data-page-handle="our-story"] .section-multicolumn h2 {
  font-family: 'Jost', sans-serif !important;
  color: #37170D !important;
}

body[data-page-handle="our-story"] .section-multicolumn .multicolumn-card__info h3 {
  font-family: 'Jost', sans-serif !important;
  color: #FF6E40 !important;
}

body[data-page-handle="our-story"] .section-multicolumn .multicolumn-card__info p {
  font-family: 'Montserrat', sans-serif !important;
  color: #37170D !important;
}

/* Bottom CTA on story page - dark gradient */
body[data-page-handle="our-story"] .section-image-banner:last-of-type {
  background: linear-gradient(135deg, #37170D 0%, #5C2E1A 50%, #37170D 100%) !important;
}

body[data-page-handle="our-story"] .section-image-banner:last-of-type h2 {
  color: #FFF8F0 !important;
  font-family: 'Jost', sans-serif !important;
}

body[data-page-handle="our-story"] .section-image-banner:last-of-type .banner__text {
  color: #F5E6D3 !important;
}

/* Mobile */
@media (max-width: 749px) {
  body[data-page-handle="our-story"] .section-image-with-text {
    padding: 40px 0 !important;
  }

  body[data-page-handle="our-story"] .image-with-text h2 {
    font-size: 26px !important;
  }

  body[data-page-handle="our-story"] .image-with-text .rte p {
    font-size: 15px !important;
  }

  body[data-page-handle="our-story"] .section-rich-text {
    padding: 48px 16px !important;
  }

  body[data-page-handle="our-story"] .section-rich-text .rich-text__text p {
    font-size: 14px !important;
    padding-left: 16px !important;
  }
}


/* ===== PHASE 8: MOBILE & PERFORMANCE ===== */

/* --- 8.1: Touch Target Fixes --- */

/* Quick Add button - enforce 44px minimum on all viewports */
.quick-add__submit {
  min-height: 44px !important;
  min-width: 44px !important;
}

/* Cart drawer quantity buttons */
cart-drawer .quantity__button,
.cart-drawer .quantity__button,
.drawer__inner .quantity__button {
  min-height: 44px !important;
  min-width: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Cart remove button */
cart-drawer cart-remove-button a,
cart-drawer .cart-item__remove,
.cart-drawer .cart-item__remove {
  min-height: 44px !important;
  min-width: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Generic touch target safety net for all interactive elements on mobile */
@media (max-width: 749px) {
  button,
  a.button,
  input[type="submit"],
  .quantity__button,
  summary {
    min-height: 44px !important;
  }
}

/* --- 8.2: Safe Area Insets --- */

/* Bottom safe area for fixed/sticky elements */
cart-drawer .cart-drawer__footer,
.cart-drawer__footer {
  padding-bottom: calc(16px + env(safe-area-inset-bottom)) !important;
}

/* Sticky ATC bar */
.sticky-atc-mobile {
  padding-bottom: env(safe-area-inset-bottom) !important;
}

/* General body padding for notch/home indicator */
@supports (padding: max(0px)) {
  body {
    padding-left: env(safe-area-inset-left) !important;
    padding-right: env(safe-area-inset-right) !important;
  }
}

/* --- 8.3: Mobile Gallery Scroll Snap --- */

@media (max-width: 749px) {
  .product__media-list {
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .product__media-item {
    scroll-snap-align: center !important;
    flex-shrink: 0 !important;
  }
}


/* ===== FIX: Mobile product image gallery spacing ===== */
@media (max-width: 749px) {
  /* 1. Main image list — reduce the massive 3rem bottom margin from theme */
  .product__media-list {
    margin-bottom: 0.5rem !important;
  }
  
  /* 2. Media wrapper — zero out any extra spacing */
  .product__media-wrapper {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  
  /* 3. The slider-buttons div (prev/next arrows + counter) between gallery and thumbnails */
  .product__media-wrapper .slider-buttons {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0.25rem !important;
  }
  
  /* 4. First slider-component (main gallery) — remove bottom margin */
  .product__media-wrapper slider-component:not(.thumbnail-slider--no-slide) {
    margin-bottom: 0 !important;
  }
  .product__media-wrapper slider-component.slider-mobile-gutter {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  
  /* 5. Second slider-component (thumbnails) — remove top spacing */
  .thumbnail-slider {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .thumbnail-slider .thumbnail-list.slider {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
    grid-gap: 0.5rem !important;
  }
  
  /* 6. media-gallery custom element — ensure no flex/grid gap */
  media-gallery {
    gap: 0 !important;
    row-gap: 0 !important;
  }
  media-gallery > slider-component {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
  }
  
  /* 7. Catch-all for the grid item wrapper */
  .grid__item.product__media-wrapper {
    gap: 0 !important;
    row-gap: 0 !important;
  }
}

/* ============================================
   Judge.me review widget — scroll-trigger fix
   The Taste theme's scroll-trigger animation defers
   opacity/transform until the element scrolls into view,
   which prevents Judge.me's loader.js from initialising
   the widget. Force it visible immediately.
   ============================================ */
.jdgm-widget .scroll-trigger,
.jdgm-widget.scroll-trigger,
[id*='judgeme'] .scroll-trigger,
[id*='judgeme'].scroll-trigger,
[class*='jdgm'] .scroll-trigger,
[class*='jdgm'].scroll-trigger {
  opacity: 1 !important;
  transform: translateY(0) !important;
  animation: none !important;
  visibility: visible !important;
}

/* Ensure the widget wrapper itself is never hidden by animation */
.shopify-section:has(.jdgm-widget) .scroll-trigger.animate--slide-in,
.shopify-section:has([id*='judgeme']) .scroll-trigger.animate--slide-in {
  opacity: 1 !important;
  transform: none !important;
}
