/**
 * Apna Lifestyle — global responsive overrides
 */

/* Prevent horizontal scroll from wide children */
.site-main,
#site-sticky-top {
  max-width: 100%;
}

img,
video {
  max-width: 100%;
  height: auto;
}

/* Page sections — reduce top padding on mobile (sticky header, not fixed) */
.skc-page-hero {
  padding-top: 1.5rem;
}
@media (min-width: 768px) {
  .skc-page-hero { padding-top: 6rem; }
}
@media (min-width: 1024px) {
  .skc-page-hero { padding-top: 10rem; }
}

.skc-page-title {
  font-size: 1.75rem;
  line-height: 1.2;
  word-break: break-word;
}
@media (min-width: 640px) {
  .skc-page-title { font-size: 2.25rem; }
}
@media (min-width: 1024px) {
  .skc-page-title { font-size: 3rem; }
}

/* Announcement bar */
#announcement-bar {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  line-height: 1.35;
}

/* Header: show search from tablet up */
.skc-header-search-form {
  display: none;
}
@media (min-width: 768px) {
  .skc-header-search-form {
    display: flex;
  }
  .skc-header-search-icon-link {
    display: none;
  }
}

/* Header logo scales on small phones */
#site-header .h-10 {
  height: 2.25rem;
}
@media (min-width: 768px) {
  #site-header .h-10 { height: 2.5rem; }
}
@media (min-width: 768px) {
  #site-header .md\:h-14 { height: 3.5rem; }
}

/* Side menu: scroll full nav on short screens */
#mobileMenu nav {
  max-height: min(70vh, calc(100dvh - 12rem));
}

/* Footer legal row */
footer .border-t > div:last-child {
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
  gap: 0.75rem 1.5rem;
}
@media (min-width: 768px) {
  footer .border-t > div:last-child {
    justify-content: flex-end;
    text-align: right;
  }
}

/* Cart dropdowns — full width on very small screens */
@media (max-width: 420px) {
  .skc-header-cart-dropdown {
    left: 12px;
    right: 12px;
    width: auto;
  }
}

/* Cart line item controls */
.cart-drawer-items .flex.items-center.justify-between,
#cart-added-body .flex.items-center.justify-between {
  flex-wrap: wrap;
  gap: 0.5rem;
}

/* Product carousel arrows — inset on mobile */
@media (max-width: 639px) {
  .product-carousel-prev { left: 0; margin-left: 0; }
  .product-carousel-next { right: 0; margin-right: 0; }
}

/* Product sticky bottom bar */
@media (max-width: 639px) {
  .product-bottom-cta-inner {
    flex-wrap: wrap;
    min-height: auto;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }
  .product-bottom-cta-form {
    width: 100%;
  }
  .product-bottom-cta-btn {
    width: 100%;
    min-width: 0;
  }
}

/* WhatsApp stack — bubble above icon; above sticky CTA on product pages */
body.page-product .skc-whatsapp-float {
  bottom: 5.75rem;
  z-index: 940;
}
@media (min-width: 768px) {
  body.page-product .skc-whatsapp-float {
    bottom: 6.5rem;
  }
}

/* Home product sliders — fix mobile overlap from absolute images */
.shop-page-img-section {
  position: relative;
  z-index: 0;
  overflow: visible;
}
.collection-products-wrapper {
  position: relative;
  z-index: 0;
  min-width: 0;
}
.shop-page-img-section .product-thumb {
  display: flex;
  flex-direction: column;
}
.shop-page-img-section .product-thumb > a[style*="aspect-ratio"] {
  display: block;
  position: relative;
  width: 100%;
  flex-shrink: 0;
}
.shop-page-img-section .product-thumb-img,
.shop-page-img-section .sec_img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.shop-page-img-section .product-inner-info,
.shop-page-img-section .product-thumb > .px-1 {
  position: relative;
  z-index: 1;
}

/* Home brand story — auto height, no text overflow on neighbours */
.skc-home-story {
  position: relative;
  z-index: 1;
  isolation: isolate;
}

/* Product zoom overlay — desktop only; mobile uses lightbox */
@media (max-width: 1023px) {
  .product-zoom-overlay {
    display: none !important;
  }
}

/* Collections: collapsible filters on mobile only */
.collection-filters-wrap summary {
  list-style: none;
  cursor: pointer;
  user-select: none;
}
.collection-filters-wrap summary::-webkit-details-marker {
  display: none;
}
.collection-filters-wrap summary::after {
  content: '+';
  font-size: 1.25rem;
  font-weight: 300;
}
.collection-filters-wrap[open] summary::after {
  content: '−';
}
.collection-filters-sidebar {
  padding-right: 0.5rem;
}

/* Shop sort row */
.skc-shop-toolbar {
  flex-direction: column;
  align-items: stretch;
  gap: 0.75rem;
}
@media (min-width: 640px) {
  .skc-shop-toolbar {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}

/* Search results product titles */
.search-product-title {
  font-family: 'Josefin Sans', sans-serif;
  font-size: 0.8125rem;
  line-height: 1.35;
  letter-spacing: 0.04em;
  min-height: 2.25rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (min-width: 640px) {
  .search-product-title { font-size: 0.9375rem; min-height: 2.5rem; }
}
@media (min-width: 1024px) {
  .search-product-title { font-size: 1.0625rem; min-height: 3rem; }
}

.search-product-price {
  font-family: 'Josefin Sans', sans-serif;
  font-size: 0.875rem;
}
@media (min-width: 640px) {
  .search-product-price { font-size: 1rem; }
}

/* Login modal */
#login-modal .flex.justify-between.items-center {
  flex-wrap: wrap;
  gap: 0.5rem;
}

/* Tables / overflow safety */
.overflow-x-auto {
  -webkit-overflow-scrolling: touch;
}

/* Breadcrumb / long text */
.skc-breadcrumb {
  word-break: break-word;
  font-size: 0.75rem;
}
@media (min-width: 640px) {
  .skc-breadcrumb { font-size: 0.8125rem; }
}
