/** Shopify CDN: Minification failed

Line 547:2 Unexpected "{"
Line 547:3 Expected identifier but found "%"
Line 558:2 Unexpected "{"
Line 558:3 Expected identifier but found "%"
Line 968:0 All "@import" rules must come first
Line 1035:14 Unexpected "{"
Line 1035:23 Expected ":"
Line 1035:30 Unexpected "{"
Line 1043:14 Unexpected "{"
Line 1043:23 Expected ":"
... and 70 more hidden warnings

**/


/* CSS from section stylesheet tags */
/* Footer Styles - Exact from test file */
  .site-footer {
    background: #fff;
    margin-top: 2rem !important; /* Exactly 2rem - 32px */
    padding: 0 0 2rem 0 !important; /* No top padding, keep bottom */
    flex-shrink: 0; /* Prevent footer from expanding */
    min-height: auto; /* Override any min-height */
    height: auto; /* Ensure natural height */
  }

  .footer-container {
    max-width: var(--page-width);
    margin: 0 auto;
    padding: 0 1.5rem; /* Match page-width mobile padding */
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 2rem;
    min-height: auto; /* Prevent container expansion */
    height: auto; /* Natural height only */
  }

  .footer-nav {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    align-items: flex-start;
  }

  .footer-nav a {
    font-family: 'Source Code Pro', 'Courier New', Courier, monospace !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase;
    line-height: 1 !important;
    color: #000;
    text-decoration: none;
    position: relative;
    cursor: pointer;
    display: inline-block;
  }

  .footer-nav a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background: #000;
    transition: width 0.3s ease;
  }

  .footer-nav a:hover::after {
    width: 100%;
  }

  /* Fix hover underline for last link with copyright */
  .footer-nav a:last-child::after {
    width: 0;
  }

  .footer-nav a:last-child span:first-child {
    position: relative;
  }

  .footer-nav a:last-child span:first-child::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background: #000;
    transition: width 0.3s ease;
  }

  .footer-nav a:last-child:hover span:first-child::after {
    width: 100%;
  }

  .footer-copyright {
    font-family: 'Source Code Pro', monospace;
    font-size: 10px;
    font-weight: normal;
    text-transform: uppercase;
    line-height: 1.1;
    color: #000;
    text-align: right;
  }
  
  /* Mobile Footer Layout */
  @media screen and (max-width: 749px) {
    .site-footer {
      padding: 0.5rem 0 2rem 0; /* Match desktop bottom padding */
    }
    
    .footer-container {
      flex-direction: column;
      gap: 0;
      align-items: flex-start;
      padding: 0 1.5rem; /* Match page-width mobile padding */
    }
    
    .footer-nav {
      width: 100%;
    }
    
    .footer-nav a:last-child {
      display: flex;
      justify-content: space-between;
      width: 100%;
    }
    
    .footer-nav a:last-child {
      display: flex;
      justify-content: space-between;
      width: 100%;
      position: relative;
    }
    
    .footer-nav a:last-child .mobile-copyright {
      font-family: 'Source Code Pro', 'Courier New', Courier, monospace !important;
      font-size: 10px !important;
      font-weight: 400 !important;
      letter-spacing: 0.05em !important;
      text-transform: uppercase;
      line-height: 1 !important;
      color: #000;
    }
    
    .footer-copyright {
      display: none; /* Hide desktop copyright on mobile */
    }
  }
  
  /* Desktop Footer - match consistent padding system */
  @media screen and (min-width: 750px) {
    .footer-container {
      padding: 0 1.5rem; /* Match consistent padding across devices */
    }
    
    .mobile-copyright {
      display: none; /* Hide mobile copyright on desktop */
    }
    
    .footer-nav a {
      display: inline-block; /* Reset mobile flex layout */
      width: auto;
    }
  }
  
  /* Desktop copyright styling - match grid text font */
  .footer-copyright {
    font-family: 'Source Code Pro', 'Courier New', Courier, monospace !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase;
    line-height: 1 !important;
    color: #000;
  }

  /* Klaviyo Form Styling */
  .footer-klaviyo {
    max-width: var(--page-width);
    margin: 0 auto 2rem auto; /* Bottom margin to separate from nav */
    padding: 0 1.5rem; /* Match footer container padding */
  }

  .footer-klaviyo .klaviyo-form-Xt9tn5 {
    width: 100%;
  }

  /* Desktop: Limit form width and align left */
  @media screen and (min-width: 750px) {
    .footer-klaviyo .klaviyo-form-Xt9tn5 {
      max-width: 400px; /* Adjust this value as needed */
      margin-left: 0; /* Align to left */
    }
  }

  /* Mobile: Full width with proper padding */
  @media screen and (max-width: 749px) {
    .footer-klaviyo {
      margin-bottom: 1.5rem; /* Slightly less margin on mobile */
      padding: 0 1.5rem; /* Keep same padding as footer links */
    }
    
    .footer-klaviyo .klaviyo-form-Xt9tn5 {
      width: 100% !important;
      max-width: none !important;
      margin: 0 !important;
    }
    
    /* Target form containers and common Klaviyo form structures */
    .footer-klaviyo .klaviyo-form-Xt9tn5 > form,
    .footer-klaviyo .klaviyo-form-Xt9tn5 > div,
    .footer-klaviyo .klaviyo-form-Xt9tn5 form,
    .footer-klaviyo .klaviyo-form-Xt9tn5 [class*="form"],
    .footer-klaviyo .klaviyo-form-Xt9tn5 [class*="input-group"],
    .footer-klaviyo .klaviyo-form-Xt9tn5 [class*="field-group"] {
      width: 100% !important;
      max-width: none !important;
      box-sizing: border-box !important;
    }
  }
/* DISABLED - Using layout header instead */
  .disabled-header-section { display: none !important; }
  
  /* COMPLETE HEADER RESET - Override ALL existing header styles */
  
  /* Hide ALL existing header elements */
  .main-header,
  .header-wrapper,
  .header__heading-logo,
  .main-header__center,
  .logo-gallery,
  .logo-parallax-container,
  .stars-background,
  .stars-foreground,
  .stars-menu,
  .main-header__corner,
  .main-header__corner--tl,
  .main-header__corner--tr,
  .main-header__corner--bl,
  .main-header__corner--br,
  .mobile-menu-overlay,
  .header,
  .header__heading,
  .header__icons,
  .header__inline-menu,
  .header__heading-link,
  #shopify-section-header .header-wrapper,
  #shopify-section-header .main-header,
  #shopify-section-header .header {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    top: -9999px !important;
    left: -9999px !important;
  }
  
  /* Force hide the entire shopify header section */
  #shopify-section-header {
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Reset any existing header styles */
  .site-header * {
    box-sizing: border-box;
  }

  /* Header Styles - Override existing styles */
  .site-header {
    width: 100% !important;
    margin-top: 1rem !important; /* Logo to top distance */
    margin-bottom: 1rem !important; /* Same bottom padding as top */
    position: relative !important;
    background: white !important;
    z-index: 100 !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    padding: 0 !important;
  }
  
  /* ZERO SPACING: Grid touches bottom of logo */
  #shopify-section-header + .section,
  #shopify-section-header + section,
  .site-header + .section,
  .site-header + section,
  .site-header + .main-content,
  .site-header + [class*="section-"],
  .site-header + *,
  #shopify-section-header + * {
    margin-top: 0px !important; /* ZERO - grid touches logo bottom */
    padding-top: 0px !important; /* ZERO padding */
  }
  
  /* Ensure ZERO spacing across all screen sizes */
  @media screen and (min-width: 750px) {
    #shopify-section-header + .section,
    #shopify-section-header + section,
    .site-header + .section,
    .site-header + section,
    .site-header + .main-content,
    .site-header + [class*="section-"],
    .site-header + *,
    #shopify-section-header + * {
      margin-top: 0px !important; /* ZERO spacing on desktop too */
      padding-top: 0px !important; /* ZERO padding */
    }
  }

  .header-container {
    max-width: var(--page-width) !important;
    margin: 0 auto !important;
    padding: 1rem 1.5rem !important; /* Match page-width padding for consistency */
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    position: relative !important;
    height: auto !important;
    min-height: auto !important;
  }

  .header-menu,
  .header-cart {
    font-family: 'Source Code Pro', monospace !important;
    font-size: 10px !important;
    font-weight: normal !important;
    text-transform: uppercase !important;
    color: #000 !important;
    text-decoration: none !important;
    position: relative !important;
    line-height: 1.1 !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
  }

  .header-menu::after,
  .header-cart::after {
    content: '' !important;
    position: absolute !important;
    bottom: -2px !important;
    left: 0 !important;
    width: 0 !important;
    height: 1px !important;
    background: #000 !important;
    transition: width 0.3s ease !important;
  }

  .header-cart::after {
    left: auto !important;
    right: 0 !important;
  }

  .header-menu:hover::after,
  .header-cart:hover::after {
    width: 100% !important;
  }

  .header-logo {
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .header-logo a {
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .header-logo img {
    height: 80px !important; /* Consistent logo size across all devices */
    width: auto !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    max-width: none !important;
    max-height: 80px !important;
  }

  /* Remove mobile-specific logo sizing to maintain consistency */

  /* Cart drawer styles */
  .cart-drawer {
    position: fixed;
    top: 0;
    right: -400px;
    width: 400px;
    height: 100vh;
    background: white;
    z-index: 9999;
    transition: right 0.3s ease;
    overflow-y: auto;
    border-left: 1px solid #E2E2E2;
  }

  .cart-drawer.open {
    right: 0;
  }

  .cart-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }

  .cart-overlay.active {
    opacity: 1;
    visibility: visible;
  }

  .cart-drawer-header {
    padding: 1rem;
    border-bottom: 1px solid #E2E2E2;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .cart-drawer-title {
    font-family: 'Source Code Pro', monospace;
    font-size: 10px;
    font-weight: normal;
    text-transform: uppercase;
    margin: 0;
  }

  .cart-drawer-close {
    background: none;
    border: none;
    font-family: 'Source Code Pro', monospace;
    font-size: 10px;
    font-weight: normal;
    text-transform: uppercase;
    cursor: pointer;
    color: #000;
  }

  .cart-drawer-content {
    padding: 1rem;
  }

  .cart-empty {
    font-family: 'Source Code Pro', monospace;
    font-size: 9px;
    font-weight: normal;
    text-transform: uppercase;
    text-align: center;
    padding: 2rem 1rem;
    color: #666;
  }
/* Grid Container - Clean white space always */
  .homepage-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1px;
    max-width: 1200px;
    margin: 0 auto;
  }

  @media screen and (min-width: 750px) {
    .homepage-grid {
      grid-template-columns: repeat(4, 1fr); /* Default 4 columns */
    }
  }

  /* Grid Items - Clean borders via gap system */
  .grid-item {
    position: relative;
    background: #f3f3f3;
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }

  /* Desktop: Gentler animation feel */
  @media screen and (min-width: 750px) {
    .grid-item {
      transform: translateY(25px); /* Less aggressive slide distance from below */
      transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }
  }

  /* Animated state */
  .grid-item.animate-in {
    opacity: 1;
    transform: translateY(0);
  }

  /* Simple image loading */
  .grid-item__image img {
    opacity: 1;
  }

  /* Ensure links are clickable while images are not selectable */
  .grid-item a {
    pointer-events: auto;
    display: block;
    width: 100%;
    height: 100%;
  }

  /* Panel Sizes */
  .grid-item--wide {
    grid-column: span 2;
  }

  .grid-item--square {
    grid-column: span 2;
    grid-row: span 2;
  }

  /* 3-Column Layout Adjustments */
  {%- if section.settings.desktop_columns == '3' -%}
    @media screen and (min-width: 750px) {
      .grid-item--wide {
        grid-column: span 2; /* 2 out of 3 columns */
      }

      .grid-item--square {
        grid-column: span 2; /* 2 out of 3 columns */
        grid-row: span 2;
      }
    }
  {%- endif -%}

  /* Mobile Panel Behavior */
  @media screen and (max-width: 749px) {
    .grid-item--wide,
    .grid-item--square {
      grid-column: 1 / -1;
    }
    
    .grid-item--wide .wide-panel__content,
    .grid-item--square .wide-panel__content {
      aspect-ratio: 8/5; /* Restore mobile aspect ratio */
    }
  }

  /* Image Container - CRITICAL: 4:5 aspect ratio */
  .grid-item__image {
    position: relative;
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
    background-color: #f3f3f3;
    flex: 1;
  }

  .grid-item__image img,
  .grid-item__image video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
    -moz-user-drag: none;
    -o-user-drag: none;
    user-drag: none;
  }

  /* Wide Panel Content */
  .wide-panel__content {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: #f3f3f3;
    flex: 1;
    display: block;
    visibility: visible;
  }

  /* Desktop: Ensure wide panels have proper height */
  @media screen and (min-width: 750px) {
    .grid-item--wide .wide-panel__content,
    .grid-item--square .wide-panel__content {
      aspect-ratio: 8/5 !important; /* Maintain aspect ratio on desktop too */
      min-height: 300px; /* Ensure minimum height */
    }
    
    .grid-item--square .wide-panel__content {
      aspect-ratio: 1/1 !important; /* Square panels should be square */
    }
  }

  .wide-panel__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  .wide-panel__image img,
  .wide-panel__image video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Make GIF fill completely */
    display: block;
  }

  /* Mobile GIF optimizations */
  .wide-panel__image img[data-gif="true"],
  .wide-panel__image img[src*=".gif"],
  .wide-panel__image img[src*=".GIF"] {
    object-fit: cover !important;
    z-index: 3 !important;
    transform: translateZ(0) !important; /* Hardware acceleration */
    will-change: auto !important;
    image-rendering: -webkit-optimize-contrast !important; /* Better mobile performance */
    image-rendering: crisp-edges !important;
  }

  /* Mobile-first GIF optimizations - prioritize speed and reliability */
  @media screen and (max-width: 749px) {
    img[data-gif="true"] {
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
      object-position: center !important;
      image-rendering: auto !important; /* Better quality than pixelated */
      will-change: auto !important; /* Reduce GPU usage */
      backface-visibility: visible !important; /* Reduce rendering complexity */
    }
    
    /* Ensure containers are properly sized */
    .wide-panel__image,
    .grid-item__image {
      overflow: hidden !important;
      position: relative !important;
      background-color: #f3f3f3 !important; /* Fallback background */
    }
  }

  /* Blurred Background for Wide Panels - but NOT for GIFs */
  .wide-panel__image::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: 100% 100% !important; /* Force background to fill completely */
    background-position: center;
    background-repeat: no-repeat;
    filter: blur(20px);
    z-index: 1;
  }

  /* Disable blur background for GIFs - let the GIF itself fill the space */
  .wide-panel__image.gif-container::before {
    display: none !important;
  }

  .wide-panel__image img,
  .wide-panel__image video {
    z-index: 2;
  }

  /* Product Info - CRITICAL: Consistent positioning */
  .product-info {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0.25rem;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 0.5rem;
    z-index: 10;
    flex-shrink: 0;
  }

  /* Handle single item in product info */
  .product-info:has(.product-info__title):not(:has(.product-info__price)) {
    justify-content: flex-start;
  }

  .product-info:has(.product-info__price):not(:has(.product-info__title)) {
    justify-content: flex-end;
  }

  /* Product Title */
  .product-info__title {
    flex: 1;
    margin: 0;
    font-family: 'Source Code Pro', monospace;
    font-size: 9px;
    font-weight: normal;
    line-height: 1.1;
    color: rgb(var(--color-base-text));
    text-transform: uppercase;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .product-info__title a {
    color: inherit;
    text-decoration: none;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    text-transform: inherit;
    line-height: inherit;
  }

  /* Product Price - CRITICAL: Single line, no wrapping */
  .product-info__price {
    flex-shrink: 0;
    font-family: 'Source Code Pro', monospace;
    font-size: 9px;
    font-weight: normal;
    color: rgb(var(--color-base-text));
    text-transform: uppercase;
    white-space: nowrap;
    line-height: 1.1;
  }

  /* Price Components */
  .price-regular,
  .price-sale {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    text-transform: inherit;
  }

  .price-compare {
    text-decoration: line-through;
    color: #666;
    margin-right: 0.25rem;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    text-transform: inherit;
  }

  /* Wide Panel Text Overlay */
  .wide-panel__text-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 20;
    pointer-events: none;
    flex-shrink: 0;
    transition: opacity 0.3s ease;
    display: block;
  }

  /* Text Fade on Hover */
  .text-fade-hover .wide-panel__text-overlay {
    opacity: 0;
  }

  .text-fade-hover:hover .wide-panel__text-overlay {
    opacity: 1;
  }

  /* Hover Image Gallery Effect */
  .hover-gallery .wide-panel__image img:first-child,
  .hover-gallery .grid-item__image img:first-child {
    transition: opacity 0.3s ease;
  }

  .hover-gallery .hover-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 2;
    object-fit: cover;
  }

  .hover-gallery:hover .hover-image {
    opacity: 1;
  }

  .hover-gallery:hover .wide-panel__image img:first-child,
  .hover-gallery:hover .grid-item__image img:first-child {
    opacity: 0;
  }

  .wide-panel__text {
    position: absolute;
    font-family: 'Source Code Pro', monospace;
    font-size: 9px;
    font-weight: normal;
    text-transform: uppercase;
    line-height: 1.1;
    color: inherit;
    pointer-events: none;
    z-index: 10;
    white-space: nowrap;
  }

  .wide-panel__text--top-left {
    top: 0.25rem;
    left: 0.25rem;
  }

  .wide-panel__text--top-right {
    top: 0.25rem;
    right: 0.25rem;
  }

  .wide-panel__text--bottom-left {
    bottom: 0.25rem;
    left: 0.25rem;
  }

  .wide-panel__text--bottom-right {
    bottom: 0.25rem;
    right: 0.25rem;
  }

  /* Link Wrapper - CRITICAL: Clickable area */
  .grid-item__link {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: inherit;
    position: relative;
  }

  /* Hover Effect */
  .grid-item::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 1px;
    background: #000;
    transition: width 0.3s ease;
    z-index: 1001;
  }
  
  .grid-item:hover::after {
    width: 100%;
  }

  /* Staggered transition delays for 424-style left-to-right effect */
  .grid-item:nth-child(4n+1).animate-in { transition-delay: 0ms; }    /* 1st in row */
  .grid-item:nth-child(4n+2).animate-in { transition-delay: 100ms; }  /* 2nd in row */
  .grid-item:nth-child(4n+3).animate-in { transition-delay: 200ms; }  /* 3rd in row */
  .grid-item:nth-child(4n+4).animate-in { transition-delay: 300ms; }  /* 4th in row */

  /* Mobile: 2 columns - adjust delays */
  @media screen and (max-width: 749px) {
    .grid-item:nth-child(2n+1).animate-in { transition-delay: 0ms; }    /* 1st in row */
    .grid-item:nth-child(2n+2).animate-in { transition-delay: 150ms; }  /* 2nd in row */
    .grid-item:nth-child(4n+3).animate-in { transition-delay: 0ms; }    /* Reset 3rd */
    .grid-item:nth-child(4n+4).animate-in { transition-delay: 150ms; }  /* Reset 4th */
  }

  /* PNG Overlay Styles */
  .png-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 15;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .png-overlay__image {
    width: var(--overlay-size);
    height: var(--overlay-size);
    object-fit: contain;
    max-width: 100%;
    max-height: 100%;
  }

  /* Hover-only overlay */
  .png-overlay--hover-only {
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  .grid-item:hover .png-overlay--hover-only {
    opacity: 1;
  }

  /* Animation Delays - Desktop */
  @media screen and (min-width: 750px) {
    .grid-item:nth-child(1), .grid-item:nth-child(2), .grid-item:nth-child(3), .grid-item:nth-child(4) { animation-delay: 0.1s; }
    .grid-item:nth-child(5), .grid-item:nth-child(6), .grid-item:nth-child(7), .grid-item:nth-child(8) { animation-delay: 0.3s; }
    .grid-item:nth-child(9), .grid-item:nth-child(10), .grid-item:nth-child(11), .grid-item:nth-child(12) { animation-delay: 0.5s; }
    .grid-item:nth-child(n+13) { animation-delay: 0.7s; }
  }

  /* Animation Delays - Mobile */
  @media screen and (max-width: 749px) {
    .grid-item:nth-child(1), .grid-item:nth-child(2) { animation-delay: 0.1s; }
    .grid-item:nth-child(3), .grid-item:nth-child(4) { animation-delay: 0.3s; }
    .grid-item:nth-child(5), .grid-item:nth-child(6) { animation-delay: 0.5s; }
    .grid-item:nth-child(n+7) { animation-delay: 0.7s; }
  }

  /* Reduced Motion */
  @media (prefers-reduced-motion: reduce) {
    .grid-item {
      animation: none;
      opacity: 1;
    }
  }
@import url('https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,200..900;1,200..900&display=swap');
  
  .password-header {
    text-align: center;
    padding-top: 2rem;
    position: relative;
    font-family: 'Source Code Pro', monospace;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  .password-link-top {
    padding-top: 1rem;
    padding-bottom: 1.5rem;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
  }
  
  .webstar-logo-container {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
  }
  
  .webstar-logo {
    max-width: 134px; /* 33% smaller than 200px */
    width: auto;
    height: auto;
  }
  
  /* Simple Password Input */
  .password-form {
    position: relative;
    display: inline-block;
    text-align: center;
  }
  
  .password-input {
    font-family: 'Source Code Pro', monospace !important;
    font-size: 10px !important;
    text-decoration: underline !important;
    cursor: pointer !important;
    color: #000 !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: center !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: 2px !important;
    white-space: nowrap !important;
    outline: none !important;
    min-width: 200px !important;
  }
  
  .password-input::placeholder {
    color: #000 !important;
    opacity: 1 !important;
  }
/* Product Page Custom Styling - Smart Responsive Padding */
#MainProduct-{{ section.id }} {
  padding: 0 !important; /* Remove section padding */
  margin-top: 0 !important; /* Align with homepage grid */
  margin-bottom: 0 !important; /* Remove blanket margin - handle per layout */
}

/* Desktop padding handled below after page-width rule */

#MainProduct-{{ section.id }}.page-width {
  padding: 0 1.5rem !important; /* Override page-width padding */
  max-width: 1200px !important; /* Set reasonable max-width */
  margin: 0 auto !important; /* Center the content */
  width: 100% !important; /* Full width up to max-width */
}

/* Desktop: Override margin to add bottom spacing */
@media screen and (min-width: 750px) {
  #MainProduct-{{ section.id }}.page-width {
    margin: 0 auto 2rem auto !important; /* Center + bottom margin */
  }
}

.product {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 3rem !important;
  margin: 0 !important;
  padding: 0 !important; /* Let parent handle padding */
}

@media screen and (max-width: 749px) {
  .product {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
}

.product .grid__item {
  width: 100% !important;
  max-width: none !important;
  flex: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Product Media */
.product__media-wrapper {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 4/5 !important;
  cursor: grab !important;
}

.product__media-wrapper:active {
  cursor: grabbing !important;
}

@media screen and (max-width: 749px) {
  .product__media-wrapper {
    cursor: pointer !important;
  }
}

.product__media-item {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  background-color: #f3f3f3 !important;
}

.product__media-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 0 !important;
  transition: opacity 0.3s ease !important;
  transform: translateZ(0) !important; /* Hardware acceleration */
  image-rendering: -webkit-optimize-contrast !important;
  image-rendering: crisp-edges !important;
}

.product__media-image.loaded {
  opacity: 1 !important;
}

/* Gallery Star Arrows */
/* Gallery navigation - simple and clean */
.gallery-navigation {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  pointer-events: none !important;
  z-index: 100 !important;
}

.gallery-btn {
  position: relative !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  opacity: 0.8 !important;
  z-index: 1000 !important;
  padding: 5px !important;
  width: 20px !important;
  height: 60px !important;
  transition: opacity 0.2s ease !important;
  margin: 0 15px !important;
}

.gallery-btn:hover {
  opacity: 1 !important;
}

.gallery-btn--prev {
  /* No additional positioning needed with flexbox */
}

.gallery-btn--next {
  /* No additional positioning needed with flexbox */
}

.star-arrow {
  position: relative !important;
  width: 10px !important;
  height: 50px !important;
  pointer-events: none !important;
}

.star {
  font-family: 'Source Code Pro', monospace !important;
  font-size: 12px !important;
  font-weight: normal !important;
  color: #000 !important;
  line-height: 1 !important;
  user-select: none !important;
  pointer-events: none !important;
}

/* Progress Bar CSS removed - using inline styles only to prevent conflicts */

/* Product Info Container - Mobile: Keep original behavior */
.product__info-container {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  justify-content: flex-start !important;
}

/* Title wrapper - flexbox for title and price on same line */
.product__title-wrapper {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  margin-bottom: 1rem !important;
}

/* Price styling when on same line as title */
.product-page-price {
  display: inline-block;
  margin: 0;
  padding: 0;
  text-align: right;
  white-space: nowrap;
  line-height: 1;
}

.product__title {
  display: inline-block !important;
  margin-bottom: 0 !important;
}

.product__title h1 {
  font-family: 'Source Code Pro', monospace !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  color: #000 !important;
  margin: 0 !important;
  line-height: 1 !important;
  letter-spacing: 0.05em !important;
}

/* FORCE MOBILE SPACING ON DESKTOP - COPY EXACT MOBILE CSS */
.product-form__input {
  margin: 0 0 2rem 0 !important;
}

/* FORCE ON DESKTOP - OVERRIDE EVERYTHING */
@media screen and (min-width: 750px) {
  .product-form__input {
    margin: 0 0 2rem 0 !important;
  }
  
  /* NUCLEAR: Kill ALL possible desktop overrides */
  .product__info-container .product-form__input,
  .page-width .product-form__input,
  .page-width .product .product__info-wrapper .product__info-container .product-form__input,
  #MainProduct-template--16743225303237__main .product-form__input,
  html body .page-width .product .product__info-wrapper .product__info-container .product-form__input {
    margin: 0 0 2rem 0 !important;
  }
  
  /* RESET ADD TO CART MARGINS */
  .btn.product-form__cart-submit,
  .product-form__buttons {
    margin-top: 0 !important;
  }
}

.variant-input-wrapper {
  display: flex !important;
  border: 1px solid #000 !important;
        width: 100% !important;
}

.variant-input {
  flex: 1 !important;
  min-width: 0 !important;
  position: relative !important;
  border-right: 1px solid #000 !important; /* Add separator between sizes */
}

.variant-input:last-child {
  border-right: none !important; /* Remove border from last item */
}

.variant-input input[type="radio"] {
  display: none !important;
}

/* Size pills styling */
.variant-input-wrapper {
  display: flex !important;
  border: 1px solid #000 !important;
  width: 100% !important;
}

.variant-input {
  flex: 1 !important;
  min-width: 0 !important;
  position: relative !important;
  border-right: 1px solid #000 !important;
}

.variant-input:last-child {
  border-right: none !important;
}

.variant-input input[type="radio"] {
  display: none !important;
}

.variant-input label {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  font-family: 'Source Code Pro', monospace !important;
  font-size: 10px !important;
  font-weight: normal !important;
  text-transform: uppercase !important;
  text-align: center !important;
  line-height: 1 !important;
  cursor: pointer !important;
  background: #fff !important;
  color: #000 !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  transition: all 0.3s ease !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.variant-input label::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
        width: 100% !important;
  height: 100% !important;
  background: #000 !important;
  transition: left 0.3s ease !important;
  z-index: 1 !important;
}

.variant-input label span {
  position: relative !important;
  z-index: 2 !important;
  color: #000 !important;
  transition: color 0.3s ease !important;
}

.variant-input label:hover::before,
.variant-input input[type="radio"]:checked + label::before {
  left: 0 !important;
}

.variant-input label:hover span,
.variant-input input[type="radio"]:checked + label span {
  color: #fff !important;
}

/* ADD TO CART button styling - REVERTED TO NO MARGINS */
#MainProduct-{{ section.id }}.page-width .product .product__info-wrapper .product__info-container .btn.product-form__cart-submit,
#MainProduct-{{ section.id }} .page-width .product .product__info-wrapper .product__info-container .btn.product-form__cart-submit,
#MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container .btn.product-form__cart-submit,
#MainProduct-{{ section.id }} .btn.product-form__cart-submit,
body #MainProduct-{{ section.id }} .btn.product-form__cart-submit,
html body #MainProduct-{{ section.id }} .btn.product-form__cart-submit,
.btn.product-form__cart-submit {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 29px !important;
  min-height: 29px !important;
  max-height: 29px !important;
  background: #000 !important;
  color: #fff !important;
  border: 1px solid #000 !important;
  padding: 0 !important;
  margin: 0 !important; /* NO margins - size pills handle spacing */
  font-family: 'Source Code Pro', monospace !important;
  font-size: 10px !important;
  font-weight: normal !important;
  text-transform: uppercase !important;
  text-align: center !important;
  line-height: 1 !important;
  cursor: pointer !important;
  outline: none !important;
  box-shadow: none !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

.btn.product-form__cart-submit:hover {
  background: #000 !important;
  color: #fff !important;
  text-decoration: none !important;
}

/* Sizing guide button and shipping info button - WORKING WITHOUT SPAN */
.size-guide-button,
.shipping-info-button,
.get-notified-button {
  display: block !important;
  width: 100% !important;
  height: 29px !important;
  min-height: 29px !important;
  max-height: 29px !important;
  padding: 0 !important;
  margin: 0 !important;
  font-family: 'Source Code Pro', monospace !important;
  font-size: 10px !important;
  font-weight: normal !important;
  text-transform: uppercase !important;
  line-height: 29px !important;
  text-align: center !important;
  cursor: pointer !important;
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #000 !important;
  outline: none !important;
  box-shadow: none !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  position: relative !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
  z-index: 2 !important;
}

.size-guide-button::before,
.shipping-info-button::before,
.get-notified-button::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 100% !important;
  height: 100% !important;
  background: #000 !important;
  transition: left 0.3s ease !important;
  z-index: -1 !important;
}

.size-guide-button:hover::before,
.shipping-info-button:hover::before,
.get-notified-button:hover::before {
  left: 0 !important;
}

.size-guide-button:hover,
.shipping-info-button:hover,
.get-notified-button:hover {
  color: #fff !important;
}

/* Button Group Wrapper - FORCE OVERRIDE ALL EXTERNAL CSS */
#MainProduct-{{ section.id }} .page-width .product .product__info-wrapper .product__info-container .button-group-wrapper,
#MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container .button-group-wrapper,
#MainProduct-{{ section.id }} .button-group-wrapper {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin: 0 !important; /* Reset all margins */
  padding: 0 !important; /* Reset all padding */
  width: 100% !important;
}

/* Mobile: No top margin (description handles 4rem gap) + bottom padding - FORCE OVERRIDE */
@media screen and (max-width: 749px) {
  #MainProduct-{{ section.id }} .page-width .product .product__info-wrapper .product__info-container .button-group-wrapper,
  #MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container .button-group-wrapper,
  #MainProduct-{{ section.id }} .button-group-wrapper {
    margin-top: 0 !important; /* No top margin - description has 4rem bottom margin */
    margin-bottom: 2rem !important; /* 32px to next section on mobile - RESTORE PADDING */
  }
}

/* Desktop: Restore bottom alignment but control spacing with description margin */
@media screen and (min-width: 750px) {
  #MainProduct-{{ section.id }} .page-width .product .product__info-wrapper .product__info-container,
  #MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container,
  #MainProduct-{{ section.id }} .product__info-container {
    justify-content: flex-start !important; /* Keep consistent spacing */
    height: 100% !important; /* Match image height */
  }
  
  /* Push buttons to bottom using fixed positioning instead of flex space-between */
  #MainProduct-{{ section.id }} .page-width .product .product__info-wrapper .product__info-container .button-group-wrapper,
  #MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container .button-group-wrapper,
  #MainProduct-{{ section.id }} .button-group-wrapper {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
  }
  
  /* Make container relative for absolute positioning */
  #MainProduct-{{ section.id }} .page-width .product .product__info-wrapper .product__info-container,
  #MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container,
  #MainProduct-{{ section.id }} .product__info-container {
    position: relative !important;
  }
}

/* Product Description - FORCE OVERRIDE ALL EXTERNAL CSS */
#MainProduct-{{ section.id }} .page-width .product .product__info-wrapper .product__info-container .product__description,
#MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container .product__description,
#MainProduct-{{ section.id }} .product__description {
  font-family: 'Source Code Pro', monospace !important;
  font-size: 9px !important;
  font-weight: normal !important;
  text-transform: uppercase !important;
  color: #000 !important;
  line-height: 1.4 !important;
  margin-top: 0 !important; /* Reset top margin only */
  margin-left: 0 !important; /* Reset left margin only */
  margin-right: 0 !important; /* Reset right margin only */
  padding: 0 !important; /* Reset all padding */
  width: 100% !important;
}

/* MOBILE: Description spacing - 6REM TOTAL (4rem to size pills + 2rem extra) */
@media screen and (max-width: 749px) {
  #MainProduct-{{ section.id }} .page-width .product .product__info-wrapper .product__info-container .product__description,
  #MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container .product__description,
  #MainProduct-{{ section.id }} .product__description,
  html body .product__description {
    margin-bottom: 6rem !important; /* 96px total - 4rem to size pills + 2rem extra */
  }
  
  /* MOBILE: Add 2rem spacing BELOW Add to Cart (before description) */
  #MainProduct-{{ section.id }} .product-form__buttons,
  html body .product-form__buttons,
  .product-form__buttons {
    margin-bottom: 2rem !important; /* 32px space to description below */
  }
}

@media screen and (min-width: 750px) {
  #MainProduct-{{ section.id }} .page-width .product .product__info-wrapper .product__info-container .product__description,
  #MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container .product__description,
  #MainProduct-{{ section.id }} .product__description {
    margin-bottom: 2rem !important; /* 32px on desktop - reduced so buttons align to bottom */
  }
  
  /* DESKTOP: NUCLEAR SPACING - Most aggressive selectors */
  
  /* Price: 1rem spacing above size pills */
  html body div#MainProduct-{{ section.id }}.page-width .product .product__info-wrapper .product__info-container .price,
  html body div#MainProduct-{{ section.id }} .product .product__info-wrapper .product__info-container .price,
  html body div#MainProduct-{{ section.id }} .price,
  html body .price,
  .price {
    margin-bottom: 1rem !important;
    margin-top: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  
  /* Clean size pills spacing */
.product-form__input {
  margin-bottom: 1rem !important;
  margin-top: 0 !important;
}
  
}

/* Hide product badges */
.product-badges {
  display: none !important;
}

/* NEW SPACING SYSTEM - All screen sizes */
/* Price/Product name → Size pills: 1rem */
.price {
  margin-bottom: 1rem !important;
  margin-top: 0 !important;
}

/* Size pills → Add to cart: 1rem */
html body .page-width .product .product__info-wrapper .product__info-container .product-form__input,
html body .product-form__input,
.product-form__input {
  margin: 0 0 1rem 0 !important;
}

/* Add to cart → Description: 2rem */
html body .page-width .product .product__info-wrapper .product__info-container .product-form__cart-submit,
html body .product-form__cart-submit,
html body .btn.product-form__cart-submit,
.product-form__cart-submit,
.btn.product-form__cart-submit {
  margin: 0 0 2rem 0 !important;
}

/* NO MORE MEDIA QUERIES - Same spacing at all screen sizes */

/* Hide thumbnails */
.product__media-list {
  display: none !important;
}