/** Shopify CDN: Minification failed

Line 4448:0 Unexpected "}"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:cart (INDEX:3) */
.cart-section {
    padding: 2rem 0;
    background-color: #fff;
  }

  .cart-container {
    max-width: 1440px;
    width: 1440px;
    margin: 0 auto;
    padding: 0 var(--page-margin);
  }

  /* Breadcrumb navigation */
  .cart-breadcrumb {
    margin-bottom: 2rem;
    margin-top: 1rem;
    font-size: 0.875rem;
    color: #666;
  }

  .cart-breadcrumb-link {
    color: #666;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .cart-breadcrumb-link:hover {
    color: #000;
  }

  .cart-breadcrumb-separator {
    margin: 0 0.5rem;
    color: #ccc;
  }

  .cart-breadcrumb-current {
    color: #000;
    font-weight: 500;
  }

  /* Main layout */
  .cart-layout {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 3rem;
    align-items: start;
  }

  /* Cart items */
  .cart-items {
    flex: 1;
  }

  .cart-title {
    font-size: 2rem;
    font-weight: 700;
    margin: 0 0 2rem 0;
    line-height: 1.2;
    color: #000;
  }

  .cart-items-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }

  .cart-item {
    display: grid;
    grid-template-columns: 120px 1fr auto auto;
    gap: 1.5rem;
    align-items: center;
    padding: 1.5rem;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
    transition: transform 0.2s ease;
  }

  .cart-item:hover {
    transform: translateY(-2px);
  }

  /* Product image */
  .cart-item-image {
    position: relative;
    width: 120px;
    height: 120px;
    overflow: hidden;
    border-radius: 8px;
    mix-blend-mode: darken;
  }

  .cart-item-image-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }

  .cart-item-image:hover .cart-item-image-img {
    transform: scale(1.05);
  }

  .cart-item-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
  }

  .cart-item-placeholder-svg {
    width: 60%;
    height: 60%;
    opacity: 0.3;
  }

  /* Product details */
  .cart-item-details {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .cart-item-title {
    font-size: 1.125rem;
    font-weight: 700;
    margin: 0;
    line-height: 1.3;
  }

  .cart-item-title a {
    color: #000;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .cart-item-title a:hover {
    color: #666;
  }

  .cart-item-variant,
  .cart-item-selling-plan {
    font-size: 0.875rem;
    color: #666;
    margin: 0;
  }

  .cart-item-price {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.5rem;
  }

  .cart-item-price-compare {
    font-size: 0.875rem;
    color: #999;
    text-decoration: line-through;
  }

  .cart-item-price-current {
    font-size: 1.125rem;
    font-weight: 700;
    color: #000;
  }

  .cart-item-unit-price {
    font-size: 0.75rem;
    color: #666;
    margin: 0;
  }

  /* Quantity controls */
  .cart-item-quantity {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
  }

  .cart-item-quantity-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .cart-item-quantity-controls {
    display: flex;
    align-items: center;
    border: 1px solid #ddd;
    border-radius: 4px;
    overflow: hidden;
  }

  .cart-item-quantity-btn {
    background-color: #fff;
    border: none;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.2s ease;
  }

  .cart-item-quantity-btn:hover {
    background-color: #f5f5f5;
  }

  .cart-item-quantity-btn svg {
    color: #666;
  }

  .cart-item-quantity-input {
    width: 48px;
    height: 32px;
    border: none;
    text-align: center;
    font-size: 0.875rem;
    font-weight: 600;
    background-color: #fff;
  }

  .cart-item-quantity-input:focus {
    outline: none;
    background-color: #f9f9f9;
  }

  /* Remove button */
  .cart-item-actions {
    display: flex;
    align-items: center;
  }

  .cart-item-remove {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #999;
    text-decoration: none;
    font-size: 0.875rem;
    transition: color 0.2s ease;
  }

  .cart-item-remove:hover {
    color: #e74c3c;
  }

  .cart-item-remove svg {
    width: 16px;
    height: 16px;
  }

  /* Cart actions */
  .cart-actions {
    margin-top: 2rem;
  }

  .cart-update-btn {
    background-color: #000;
    color: #fff;
    border: none;
    padding: 0.75rem 2rem;
    border-radius: 4px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .cart-update-btn:hover {
    background-color: #333;
    transform: translateY(-2px);
  }

  /* Cart summary */
  .cart-summary {
    position: sticky;
    top: 2rem;
  }

  .cart-summary-card {
    background-color: #f9f9f9;
    border-radius: 8px;
    padding: 2rem;
    border: 1px solid #e0e0e0;
  }

  .cart-summary-title {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 1.5rem 0;
    color: #000;
  }

  .cart-summary-details {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 2rem;
  }

  .cart-summary-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
  }

  .cart-summary-row--total {
    border-top: 1px solid #ddd;
    padding-top: 1rem;
    font-weight: 700;
    font-size: 1.125rem;
  }

  .cart-summary-row--discount {
    color: #22c55e;
  }

  .cart-summary-label {
    color: #666;
    font-size: 0.875rem;
  }

  .cart-summary-value {
    font-weight: 600;
    color: #000;
  }

  /* Checkout section */
  .cart-checkout {
    margin-bottom: 1.5rem;
  }

  .cart-checkout-btn {
    display: block;
    width: 100%;
    background-color: #000;
    color: #fff;
    border: none;
    padding: 1rem 2rem;
    border-radius: 4px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-bottom: 1rem;
    text-decoration: none;
    text-align: center;
  }

  .cart-checkout-btn:hover {
    background-color: #333;
    transform: translateY(-2px);
    color: #fff;
  }

  .cart-additional-checkout {
    margin-top: 1rem;
  }

  .cart-continue-shopping {
    text-align: center;
  }

  .cart-continue-link {
    color: #666;
    text-decoration: none;
    font-size: 0.875rem;
    transition: color 0.2s ease;
  }

  .cart-continue-link:hover {
    color: #000;
  }

  /* Empty cart state */
  .cart-empty {
    text-align: center;
    padding: 4rem 2rem;
  }

  .cart-empty-content {
    max-width: 400px;
    margin: 0 auto;
  }

  .cart-empty-title {
    font-size: 2rem;
    font-weight: 700;
    margin: 0 0 1rem 0;
    color: #000;
  }

  .cart-empty-description {
    font-size: 1.125rem;
    color: #666;
    margin: 0 0 2rem 0;
    line-height: 1.5;
  }

  .cart-empty-btn {
    display: inline-block;
    background-color: #000;
    color: #fff;
    text-decoration: none;
    padding: 1rem 2rem;
    border-radius: 4px;
    font-weight: 600;
    transition: all 0.3s ease;
  }

  .cart-empty-btn:hover {
    background-color: #333;
    transform: translateY(-2px);
  }

  /* Mobile responsive */
  @media (max-width: 1024px) {
    .cart-layout {
      grid-template-columns: 1fr;
      gap: 2rem;
    }

    .cart-summary {
      position: static;
    }
  }

  @media (max-width: 768px) {
    .cart-container {
      padding: 0 1rem;
    }

    .cart-item {
      grid-template-columns: 80px 1fr;
      gap: 1rem;
      padding: 1rem;
    }

    .cart-item-image {
      width: 80px;
      height: 80px;
    }

    .cart-item-quantity,
    .cart-item-actions {
      grid-column: 1 / -1;
      margin-top: 1rem;
    }

    .cart-item-quantity {
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
    }

    .cart-item-actions {
      justify-content: center;
    }

    .cart-title {
      font-size: 1.5rem;
    }

    .cart-summary-card {
      padding: 1.5rem;
    }
  }
/* END_SECTION:cart */

/* START_SECTION:categories (INDEX:4) */
.categories {
    padding-top: var(--section-padding-top, 80px);
    padding-bottom: var(--section-padding-bottom, 80px);
    background-color: #fff;
  }

  /* Mobile padding adjustments */
  @media (max-width: 768px) {
    .categories {
      padding-top: 0;
      padding-bottom: var(--section-padding-bottom, 60px);
    }
  }

  @media (max-width: 480px) {
    .categories {
      padding-top: 0;
      padding-bottom: var(--section-padding-bottom, 40px);
    }
  }

  .categories__container {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    padding: 0 var(--page-margin);
  }

  /* Section header */
  .categories__header {
    text-align: center;
    margin-bottom: 3rem;
  }

  .categories__heading {
    font-size: 2.5rem;
    font-weight: 700;
    color: #000;
    margin: 0;
    line-height: 1.2;
  }

  /* Categories grid */
  .categories__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
  }

  /* Tablet responsive (1024px and below) */
  @media (max-width: 1024px) {
    .categories__container {
      padding: 0 1.5rem;
    }

    .categories__grid {
      grid-template-columns: repeat(3, 1fr);
      gap: 1.25rem;
    }

    .categories__heading {
      font-size: 2.25rem;
    }
  }

  /* Category item */
  .categories__item {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }

  .categories__item:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
  }

  /* Touch-friendly hover effects for mobile */
  @media (max-width: 768px) {
    .categories__item:active {
      transform: translateY(-2px);
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    }
  }

  .categories__link {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  /* Category image */
  .categories__image {
    position: relative;
    width: 100%;
    aspect-ratio: 1;
    background-color: #f5f5f5;
    overflow: hidden;
  }

  .categories__image-element {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }

  .categories__item:hover .categories__image-element {
    transform: scale(1.05);
  }

  .categories__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
  }

  .categories__placeholder-svg {
    width: 60%;
    height: 60%;
    opacity: 0.3;
  }

  /* Category label */
  .categories__label {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #000;
    padding: 1rem;
    text-align: center;
  }

  .categories__label-text {
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
    display: block;
  }

  /* Mobile responsive (768px and below) */
  @media (max-width: 768px) {
    .categories__container {
      padding: 0 1rem;
    }

    .categories__heading {
      font-size: 2rem;
    }

    .categories__header {
      margin-bottom: 2rem;
    }

    .categories__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 1rem;
    }

    .categories__label {
      padding: 0.75rem;
    }

    .categories__label-text {
      font-size: 0.875rem;
    }
  }

  /* Small mobile responsive (480px and below) */
  @media (max-width: 480px) {
    .categories__container {
      padding: 0 0.75rem;
    }

    .categories__grid {
      grid-template-columns: 1fr;
      gap: 1rem;
    }

    .categories__image {
      aspect-ratio: 16/9;
    }

    .categories__heading {
      font-size: 1.75rem;
    }

    .categories__header {
      margin-bottom: 1.5rem;
    }

    .categories__label {
      padding: 0.625rem;
    }

    .categories__label-text {
      font-size: 0.8125rem;
    }
  }

  /* Extra small mobile (320px and below) */
  @media (max-width: 320px) {
    .categories__container {
      padding: 0 0.5rem;
    }

    .categories__heading {
      font-size: 1.5rem;
    }

    .categories__header {
      margin-bottom: 1.25rem;
    }

    .categories__grid {
      gap: 0.75rem;
    }

    .categories__label {
      padding: 0.5rem;
    }

    .categories__label-text {
      font-size: 0.75rem;
    }
  }
/* END_SECTION:categories */

/* START_SECTION:collection (INDEX:5) */
.collection-section {
    background-color: #fff;
  }

  .collection-container {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    padding: 0 var(--page-margin, 24px);
  }

  /* Breadcrumb navigation */
  .collection-breadcrumb {
    margin-bottom: 2rem;
    font-size: 0.875rem;
    color: #666;
  }

  .collection-breadcrumb-link {
    color: #666;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .collection-breadcrumb-link:hover {
    color: #000;
  }

  .collection-breadcrumb-separator {
    margin: 0 0.5rem;
    color: #ccc;
  }

  .collection-breadcrumb-current {
    color: #000;
    font-weight: 500;
  }

  /* Collection header */
  .collection-header {
    text-align: center;
    margin-bottom: 3rem;
  }

  .collection-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #000;
    margin: 0 0 1rem 0;
    line-height: 1.2;
    text-align: left;
  }

  .collection-description {
    font-size: 1.125rem;
    color: #666;
    line-height: 1.6;
    text-align: left;
  }

  /* Collection toolbar */
  .collection-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 3rem;
    padding: 1rem 0;
    border-bottom: 1px solid #eee;
  }

  .collection-filters {
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  .collection-filter-button {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: none;
    border: 1px solid #ddd;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.875rem;
    transition: all 0.2s ease;
  }

  .collection-filter-button:hover {
    background-color: #f5f5f5;
  }

  .collection-filter-dropdowns {
    display: flex;
    gap: 1rem;
  }

  .collection-filter-select {
    padding: 0.5rem;
    border: 1px solid #ddd;
    border-radius: 4px;
    background-color: #fff;
    font-size: 0.875rem;
    min-width: 150px;
  }

  .collection-sort {
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  .collection-product-count {
    font-size: 0.875rem;
    color: #666;
  }

  .collection-sort-dropdown {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .collection-sort-dropdown label {
    font-size: 0.875rem;
    color: #666;
  }

  .collection-sort-select {
    padding: 0.5rem;
    border: 1px solid #ddd;
    border-radius: 4px;
    background-color: #fff;
    font-size: 0.875rem;
    min-width: 150px;
  }

  /* Products grid */
  .collection-products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem;
  }

  /* Product card - using popular-products styles */
  .collection-product {
    height: 480px;
    display: flex;
    flex-direction: column;
    position: relative;
    background-image: linear-gradient(0deg, rgba(224, 224, 224, 0.6) 0%, rgba(237, 237, 237, 0.6) 25%, rgba(122, 122, 122, 0.6) 100%);
    overflow: hidden;
    padding: 80px 24px 30px 24px;
  }

  /* Product badge */
  .collection-product__badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    padding: 0.32rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 500;
    z-index: 2;
  }

  .collection-product__badge--new {
    background-color: #ffd700;
    color: #000;
  }

  /* Product image */
  .collection-product__image {
    aspect-ratio: 1;
    mix-blend-mode: darken;
    width: 250px;
    height: 250px;
    margin: 0 auto;
  }
  .collection-product__image img {
    display: block;
    max-width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .collection-product__product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }

  .collection-product__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
  }

  .collection-product__placeholder-svg {
    width: 60%;
    height: 60%;
    opacity: 0.3;
  }

  /* Product info */
  .collection-product__info {
    flex: 1;
    display: flex;
    flex-direction: column;
    margin-top: 20px;
  }

  .collection-product__title {
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0 0 0.75rem 0;
    line-height: 1.3;
  }

  .collection-product__title a {
    color: #000;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .collection-product__title a:hover {
    color: #666;
  }

  .collection-product__description {
    font-size: 0.875rem;
    color: #666;
    margin: 0 0 1rem 0;
    line-height: 1.4;
    flex: 1;
  }

  .collection-product__price {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: auto;
  }

  .collection-product__price-compare {
    font-size: 0.875rem;
    color: #999;
    text-decoration: line-through;
  }

  .collection-product__price-current {
    font-size: 1.25rem;
    font-weight: 700;
    color: #000;
  }

  /* Mobile responsive */
  @media (max-width: 1024px) {
    .collection-container {
      width: 100%;
      padding: 0 1rem;
    }

    .collection-title {
      font-size: 2rem;
    }

    .collection-toolbar {
      flex-direction: column;
      gap: 1rem;
      align-items: flex-start;
    }

    .collection-filter-dropdowns {
      flex-wrap: wrap;
    }

    .collection-products-grid {
      grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
      gap: 1.5rem;
    }
  }

  @media (max-width: 768px) {
    .collection-filter-dropdowns {
      display: none;
    }

    .collection-products-grid {
      grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
      gap: 1rem;
    }

    .collection-product {
      padding: 1rem;
    }
  }
/* END_SECTION:collection */

/* START_SECTION:collections (INDEX:6) */
.section-collections {
    background-color: #fff;
  }

  .collections__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 var(--page-margin);
  }

  /* Breadcrumb navigation */
  .collections__breadcrumb {
    margin-bottom: 2rem;
    font-size: 0.875rem;
    color: #666;
  }

  .collections__breadcrumb-link {
    color: #666;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .collections__breadcrumb-link:hover {
    color: #000;
  }

  .collections__breadcrumb-separator {
    margin: 0 0.5rem;
    color: #ccc;
  }

  .collections__breadcrumb-current {
    color: #000;
    font-weight: 500;
  }

  /* Section header */
  .collections__header {
    text-align: center;
    margin-bottom: 3rem;
  }

  .collections__title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #000;
    margin: 0 0 0.5rem 0;
    line-height: 1.2;
  }

  .collections__subheading {
    font-size: 1.125rem;
    color: #666;
    margin: 0;
    line-height: 1.4;
  }

  /* Collections grid */
  .collections__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
  }

  /* Collection item */
  .collections__item {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }

  .collections__item:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
  }

  .collections__link {
    display: block;
    text-decoration: none;
    color: inherit;
    height: 100%;
  }

  /* Collection image */
  .collections__image {
    position: relative;
    width: 100%;
    height: 250px;
    overflow: hidden;
    background-image: linear-gradient(0deg, rgba(224, 224, 224, 0.6) 0%, rgba(237, 237, 237, 0.6) 25%, rgba(122, 122, 122, 0.6) 100%);
    mix-blend-mode: darken;
  }

  .collections__image-element {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }

  .collections__item:hover .collections__image-element {
    transform: scale(1.05);
  }

  .collections__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
  }

  .collections__placeholder-svg {
    width: 60%;
    height: 60%;
    opacity: 0.3;
  }

  /* Collection info */
  .collections__info {
    padding: 1.5rem;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }

  .collections__name {
    font-size: 1.25rem;
    font-weight: 600;
    color: #000;
    margin: 0;
    line-height: 1.3;
  }

  .collections__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
  }

  .collections__count {
    font-size: 0.875rem;
    color: #999;
    font-weight: 500;
  }

  /* Empty state */
  .collections__empty {
    text-align: center;
    padding: 4rem 2rem;
  }

  .collections__empty-content {
    max-width: 400px;
    margin: 0 auto;
  }

  .collections__empty-title {
    font-size: 2rem;
    font-weight: 700;
    margin: 0 0 1rem 0;
    color: #000;
  }

  .collections__empty-description {
    font-size: 1.125rem;
    color: #666;
    margin: 0 0 2rem 0;
    line-height: 1.5;
  }

  .collections__empty-btn {
    display: inline-block;
    background-color: #000;
    color: #fff;
    text-decoration: none;
    padding: 1rem 2rem;
    border-radius: 4px;
    font-weight: 600;
    transition: all 0.3s ease;
  }

  .collections__empty-btn:hover {
    background-color: #333;
    transform: translateY(-2px);
  }

  /* Mobile responsive */
  @media (max-width: 768px) {
    .collections__container {
      padding: 0 1rem;
    }

    .collections__title {
      font-size: 2rem;
    }

    .collections__grid {
      grid-template-columns: 1fr;
      gap: 1.5rem;
    }

    .collections__image {
      height: 200px;
    }

    .collections__info {
      padding: 1rem;
    }
  }
/* END_SECTION:collections */

/* START_SECTION:contact-page (INDEX:7) */
.contact-page {
    padding-top: var(--section-padding-top, 60px);
    padding-bottom: var(--section-padding-bottom, 60px);
  }

  .contact-page__container {
    max-width: var(--page-width, 1200px);
    margin: 0 auto;
    padding-left: var(--page-margin, 24px);
    padding-right: var(--page-margin, 24px);
  }

  .contact-page__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
    align-items: start;
  }

  .contact-page__header {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }

  .contact-page__title {
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    color: #000;
    line-height: 1.2;
    margin: 0;
  }

  .contact-page__description {
    font-size: 1rem;
    color: #000;
    line-height: 1.6;
    margin: 0;
  }

  .contact-page__description p {
    margin: 0 0 0.5em 0;
  }

  .contact-page__description p:last-child {
    margin-bottom: 0;
  }

  .contact-page__info {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }

  .contact-page__info-row {
    margin: 0;
    font-size: 1rem;
  }

  .contact-page__availability-info-row {
    margin: 12px 0 0 0;
    font-size: 1rem;
    display: flex;
    flex-direction: column;
  }

  .contact-page__availability-label {
    display: block;
    font-size: 0.9375rem;
    color: #000;
    margin-bottom: 0.25rem;
    font-weight: 700;
  }

  .contact-page__availability-value {
    color: #000;
    text-decoration: none;
  }

  .contact-page__label {
    display: block;
    font-size: 0.9375rem;
    color: #000;
    margin-bottom: 0.25rem;
  }

  .contact-page__value {
    font-weight: 700;
    color: #000;
    text-decoration: none;
  }

  .contact-page__value:hover {
    text-decoration: underline;
  }

  .contact-page__availability {
    font-size: 0.9375rem;
    color: #000;
    margin: 0.5rem 0 0 0;
  }

  .contact-page__locations {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
  }

  .contact-page__location-title {
    font-size: 1rem;
    font-weight: 700;
    color: #000;
    margin: 0 0 0.5rem 0;
  }

  .contact-page__location-address {
    font-size: 0.9375rem;
    color: #000;
    line-height: 1.5;
  }

  .contact-page__location-address p {
    margin: 0 0 0.25em 0;
  }

  .contact-page__btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.5rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: opacity 0.2s;
    font-family: inherit;
  }

  .contact-page__btn:hover {
    opacity: 0.9;
  }

  .contact-page__btn--primary {
    background-color: #1a1a1a;
    color: #fff;
  }

  .contact-page__btn-icon {
    flex-shrink: 0;
  }

  .contact-page__form-wrapper {
    background-color: #e8e8e8;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
  }

  .contact-page__form {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
  }

  .contact-page__form-success {
    padding: 0.75rem 1rem;
    background-color: #d4edda;
    color: #155724;
    border-radius: var(--style-border-radius-inputs, 8px);
    margin: 0;
  }

  .contact-page__form-errors {
    padding: 0.75rem 1rem;
    background-color: #f8d7da;
    color: #721c24;
    border-radius: var(--style-border-radius-inputs, 8px);
  }

  .contact-page__form-row {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
  }

  .contact-page__form-row--half {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
  }

  .contact-page__field {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .contact-page__field label {
    font-size: 0.9375rem;
    font-weight: 500;
    color: #000;
  }

  .contact-page__field input,
  .contact-page__field textarea {
    padding: 0.75rem 1rem;
    font-size: 1rem;
    border: 1px solid #d0d0d0;
    border-radius: var(--style-border-radius-inputs, 8px);
    background-color: #f5f5f5;
    color: #000;
  }

  .contact-page__field input:focus,
  .contact-page__field textarea:focus {
    outline: none;
    border-color: #1a1a1a;
  }

  .contact-page__form-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.5rem;
  }

  @media (max-width: 768px) {
    .contact-page__grid {
      grid-template-columns: 1fr;
      gap: 2rem;
    }

    .contact-page__form-row--half {
      grid-template-columns: 1fr;
    }

    .contact-page__form-wrapper {
      padding: 1.5rem;
    }
  }
/* END_SECTION:contact-page */

/* START_SECTION:custom-section (INDEX:8) */
.custom-section {
    position: relative;
    overflow: hidden;
    width: 100%;
  }
  .custom-section__background {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
  }
  .custom-section__background img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .custom-section__content {
    display: grid;
    grid-template-columns: var(--content-grid);
  }
  .custom-section__content > * {
    grid-column: 2;
  }
/* END_SECTION:custom-section */

/* START_SECTION:faq (INDEX:9) */
.faq-section {
    padding-top: var(--faq-padding-top, 48px);
    padding-bottom: var(--faq-padding-bottom, 48px);
    background-color: var(--color-background, #fff);
  }

  .faq-section__container {
    max-width: var(--page-width, 1200px);
    margin: 0 auto;
    padding-left: var(--page-margin, 24px);
    padding-right: var(--page-margin, 24px);
  }

  .faq-section__heading {
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    color: #000;
    margin: 0 0 2rem 0;
    text-align: center;
    line-height: 1.2;
  }

  .faq-section__list {
    max-width: 720px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
  }

  .faq-section__item {
    border-bottom: 1px solid #e0e0e0;
  }

  .faq-section__item:last-child {
    border-bottom: none;
  }

  .faq-section__question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    width: 100%;
    padding: 1.25rem 1.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: #000;
    text-align: left;
    background: none;
    border: none;
    cursor: pointer;
    list-style: none;
    font-family: inherit;
    transition: background-color 0.2s;
  }

  .faq-section__question::-webkit-details-marker {
    display: none;
  }

  .faq-section__question:hover {
    background-color: #f8f8f8;
  }

  .faq-section__question span {
    flex: 1;
  }

  .faq-section__icon {
    flex-shrink: 0;
    transition: transform 0.2s;
  }

  .faq-section__item[open] .faq-section__icon {
    transform: rotate(45deg);
  }

  .faq-section__answer {
    padding: 0 1.5rem 1.25rem 1.5rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    color: #333;
  }

  .faq-section__answer p {
    margin: 0 0 0.5em 0;
  }

  .faq-section__answer p:last-child {
    margin-bottom: 0;
  }
/* END_SECTION:faq */

/* START_SECTION:footer (INDEX:10) */
.footer {
    background-color: #000;
    color: #fff;
    padding: 4rem 0 2rem;
    margin-top: auto;
  }

  .footer__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 var(--page-margin);
  }

  /* Main footer content */
  .footer__main {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 4rem;
    margin-bottom: 3rem;
  }

  /* Brand section (logo + description) */
  .footer__brand {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }

  .footer__logo {
    margin-bottom: 0.5rem;
  }

  .footer__logo-image {
    height: 3rem;
    width: auto;
  }

  .footer__logo-text {
    font-size: 1.5rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  /* Description */
  .footer__description {
    max-width: 400px;
    margin-bottom: 1.5rem;
  }

  .footer__description-text {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.8);
    margin: 0;
    line-height: 1.5;
  }

  /* Social media icons */
  .footer__social {
    display: flex;
    gap: 1rem;
  }

  .footer__social-link {
    color: #fff;
    text-decoration: none;
    padding: 0.5rem;
    border-radius: 50%;
    transition: background-color 0.2s ease;
  }

  .footer__social-link:hover {
    background-color: rgba(255, 255, 255, 0.1);
  }

  /* Navigation section */
  .footer__nav {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }

  .footer__nav-section {
    display: flex;
    flex-direction: column;
  }

  .footer__nav-title {
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 1rem 0;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .footer__nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .footer__nav-link {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 0.875rem;
    transition: color 0.2s ease;
  }

  .footer__nav-link:hover {
    color: #fff;
  }

  /* Footer bottom */
  .footer__bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }

  /* Copyright and credits */
  .footer__copyright {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    text-align: center;
  }

  .footer__copyright-text {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.8);
    margin: 0;
  }

  .footer__credits {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.8);
    margin: 0;
  }

  .footer__credits-link {
    color: #fff;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .footer__credits-link:hover {
    color: rgba(255, 255, 255, 0.8);
  }

  /* Mobile responsive */
  @media (max-width: 1024px) {
    .footer__main {
      grid-template-columns: 1fr;
      gap: 3rem;
    }

    .footer__nav {
      grid-template-columns: repeat(2, 1fr);
      gap: 2rem;
    }
  }

  @media (max-width: 768px) {
    .footer {
      padding: 3rem 0 2rem;
    }

    .footer__container {
      padding: 0 1rem;
    }

    .footer__main {
      gap: 2rem;
    }

    .footer__nav {
      grid-template-columns: 1fr;
      gap: 1.5rem;
    }

    .footer__description {
      max-width: 100%;
    }

    .footer__social {
      gap: 0.75rem;
    }
  }

  @media (max-width: 480px) {
    .footer {
      padding: 2rem 0 1.5rem;
    }

    .footer__container {
      padding: 0 0.75rem;
    }

    .footer__brand {
      gap: 1.5rem;
    }

    .footer__description-text {
      font-size: 0.8125rem;
    }

    .footer__nav-title {
      font-size: 0.875rem;
    }

    .footer__copyright-text,
    .footer__credits {
      font-size: 0.75rem;
    }

    .footer__social {
      gap: 0.5rem;
    }
  }

  @media (max-width: 320px) {
    .footer__container {
      padding: 0 0.5rem;
    }

    .footer__description-text {
      font-size: 0.75rem;
    }

    .footer__nav-title {
      font-size: 0.75rem;
    }

    .footer__copyright-text,
    .footer__credits {
      font-size: 0.625rem;
    }
  }
/* END_SECTION:footer */

/* START_SECTION:header (INDEX:11) */
/* Top bar styles - height matches --header-top-bar-height for content margin */
  .header__top-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: var(--header-z-index);
    background-color: #000;
    color: #fff;
    font-size: 0.875rem;
    min-height: var(--header-top-bar-height, 32px);
    padding: 0.5rem 0;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
  }

  .header__top-bar .header__container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .header__container {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    padding: 0 var(--page-margin);
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  /* Main header styles - top matches top bar height so margin-top stays in sync */
  .header {
    position: fixed;
    top: var(--header-top-bar-height, 32px);
    left: 0;
    right: 0;
    z-index: var(--header-z-index);
    transition: all 0.3s ease;
    height: var(--header-height);
    display: flex;
    align-items: center;
  }

  .header--transparent {
    background-color: transparent !important;
    color: #fff;
  }

  .header--solid {
    background-color: #fff;
    color: #000;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  }

  .header--sticky {
    background-color: #fff;
    color: #000;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  }

  .header--sticky .header__logo-image--white,
  .header--solid .header__logo-image--white {
    display: none;
  }

  .header--sticky .header__logo-image--dark,
  .header--solid .header__logo-image--dark {
    display: block;
  }

  .header--transparent .header__logo-image--white {
    display: block;
  }

  .header--transparent .header__logo-image--dark {
    display: none;
  }

  /* Desktop navigation styles - maintain transparent behavior */
  @media (min-width: 1025px) {
    .header__nav {
      background-color: transparent;
    }

    .header--transparent .header__menu-link {
      color: #fff;
    }

    .header--sticky .header__menu-link,
    .header--solid .header__menu-link {
      color: #000;
    }
  }

  /* Ensure mobile menu works in all header states - only on mobile/tablet */
  @media (max-width: 1024px) {
    .header__nav {
      background-color: #fff !important;
    }

    .header__nav .header__menu-link {
      color: #000 !important;
    }
  }

  /* Mobile and tablet always sticky */
  @media (max-width: 1024px) {
    .header--mobile-sticky {
      background-color: #fff !important;
      color: #000 !important;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    }

    .header--mobile-sticky .header__logo-image--white {
      display: none !important;
    }

    .header--mobile-sticky .header__logo-image--dark {
      display: block !important;
    }

    .header--mobile-sticky .header__search-form {
      background-color: rgba(0, 0, 0, 0.05) !important;
    }

    .header--mobile-sticky .header__account:hover,
    .header--mobile-sticky .header__cart:hover {
      background-color: rgba(0, 0, 0, 0.05) !important;
    }
  }

  /* Logo styles */
  .header__logo {
    flex-shrink: 0;
  }

  .header__logo-link {
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
  }

  .header__logo-image {
    height: 2.5rem;
    width: auto;
  }

  .header__logo-text {
    font-size: 1.5rem;
    font-weight: 700;
  }

  /* Navigation styles */
  .header__nav {
    flex: 1;
    display: flex;
    justify-content: center;
  }

  .header__menu {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 2rem;
  }

  .header__menu-link {
    text-decoration: none;
    color: inherit;
    font-weight: 500;
    transition: opacity 0.2s ease;
  }

  .header__menu-link:hover {
    opacity: 0.7;
  }

  /* Header actions */
  .header__actions {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
  }

  /* Search styles */
  .header__search-form {
    display: flex;
    align-items: center;
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 25px;
    padding: 0.5rem 1rem;
    transition: background-color 0.2s ease;
  }

  .header--sticky .header__search-form,
  .header--solid .header__search-form {
    background-color: rgba(0, 0, 0, 0.05);
  }

  .header__search-input {
    border: none;
    background: transparent;
    color: inherit;
    outline: none;
    width: 200px;
    font-size: 0.875rem;
  }

  .header__search-input::placeholder {
    color: inherit;
    opacity: 0.7;
  }

  .header__search-button {
    background: none;
    border: none;
    color: inherit;
    cursor: pointer;
    padding: 0;
    margin-left: 0.5rem;
  }

  /* Account and cart styles */
  .header__account,
  .header__cart {
    color: inherit;
    text-decoration: none;
    position: relative;
    padding: 0.5rem;
    border-radius: 50%;
    transition: background-color 0.2s ease;
  }

  .header__account:hover,
  .header__cart:hover {
    background-color: rgba(255, 255, 255, 0.1);
  }

  .header--sticky .header__account:hover,
  .header--sticky .header__cart:hover,
  .header--solid .header__account:hover,
  .header--solid .header__cart:hover {
    background-color: rgba(0, 0, 0, 0.05);
  }

  .header__cart-count {
    position: absolute;
    top: 0;
    right: 0;
    background-color: #ff4444;
    color: #fff;
    border-radius: 50%;
    width: 1.25rem;
    height: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
  }

  /* Mobile menu toggle */
  .header__mobile-toggle {
    display: none;
    flex-direction: column;
    justify-content: space-around;
    width: 30px;
    height: 30px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1001;
  }
  .header__mobile-toggle.active {
    display: none;
  }

  /* Mobile search toggle */
  .header__mobile-search-toggle {
    display: none;
    background: none;
    border: none;
    color: inherit;
    cursor: pointer;
    padding: 0.5rem;
    border-radius: 50%;
    transition: background-color 0.2s ease;
  }

  .header__mobile-search-toggle:hover {
    background-color: rgba(255, 255, 255, 0.1);
  }

  .header--sticky .header__mobile-search-toggle:hover,
  .header--solid .header__mobile-search-toggle:hover {
    background-color: rgba(0, 0, 0, 0.05);
  }

  /* Mobile search overlay */
  .header__mobile-search-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 1002;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 2rem;
  }

  .header__mobile-search-overlay.active {
    display: flex;
  }

  .header__mobile-search-form {
    width: 100%;
    max-width: 500px;
    display: flex;
    align-items: center;
    background-color: #fff;
    border-radius: 8px;
    padding: 1rem;
    gap: 0.5rem;
  }

  .header__mobile-search-input {
    flex: 1;
    border: none;
    outline: none;
    font-size: 1rem;
    padding: 0.5rem;
  }

  .header__mobile-search-submit,
  .header__mobile-search-close {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
    border-radius: 4px;
    transition: background-color 0.2s ease;
  }

  .header__mobile-search-submit:hover,
  .header__mobile-search-close:hover {
    background-color: rgba(0, 0, 0, 0.1);
  }

  .header__mobile-toggle-line {
    width: 25px;
    height: 3px;
    background-color: currentColor;
    transition: all 0.3s ease;
    transform-origin: center;
  }

  .header__mobile-toggle.active .header__mobile-toggle-line:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
  }

  .header__mobile-toggle.active .header__mobile-toggle-line:nth-child(2) {
    opacity: 0;
  }

  .header__mobile-toggle.active .header__mobile-toggle-line:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -6px);
  }

  /* Tablet responsive (768px - 1024px) */
  @media (max-width: 1024px) {
    .header__container {
      padding: 0 1.5rem;
    }

    .header__menu {
      gap: 1.5rem;
    }

    .header__search-input {
      width: 180px;
    }
  }

  /* Mobile responsive (768px and below) */
  @media (max-width: 768px) {
    .header {
      top: 45px;
    }
    .header__container {
      padding: 0 1rem;
    }

    .header__mobile-toggle {
      display: flex;
    }

    .header__nav {
      position: fixed;
      top: 0;
      left: -100%;
      width: 100%;
      height: 100vh;
      background-color: #fff;
      z-index: 1000;
      transition: left 0.3s ease;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-start;
      overflow-y: auto;
      padding: 2rem;
    }

    .header__nav .header__menu-link {
      color: #000 !important;
    }

    .header__nav::before {
      content: '';
      position: absolute;
      top: 1rem;
      right: 1rem;
      width: 30px;
      height: 30px;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: center;
      cursor: pointer;
      z-index: 1001;
    }

    .header__nav.active {
      left: 0;
    }

    .header__menu {
      flex-direction: column;
      gap: 2rem;
      text-align: left;
    }

    .header__menu-link {
      font-size: 1.5rem;
      font-weight: 600;
      padding: 1rem;
      display: inline;
      align-items: center;
      justify-content: center;
      min-height: 44px;
      color: #000 !important;
      text-decoration: none;
      transition: background-color 0.2s ease;
    }

    .header__menu-link:hover {
      background-color: rgba(0, 0, 0, 0.05);
    }

    .header__search {
      display: none;
    }

    .header__mobile-search-toggle {
      display: block;
    }
    
    .header__actions {
      gap: 0.5rem;
    }
  }

  /* Small mobile responsive (480px and below) */
  @media (max-width: 480px) {
    .header__container {
      padding: 0 0.75rem;
    }

    .header__logo-image {
      height: 2rem;
    }

    .header__logo-text {
      font-size: 1.25rem;
    }

    .header__actions {
      gap: 0.25rem;
    }

    .header__account,
    .header__cart {
      padding: 0.25rem;
    }

    .header__top-bar {
      font-size: 0.75rem;
      padding: 0.25rem 0;
    }

    .header__top-bar .header__container {
      flex-direction: column;
      gap: 0.25rem;
      text-align: center;
    }

    .header__contact,
    .header__shipping-notice {
      font-size: 0.7rem;
    }
  }

  /* Extra small mobile (320px and below) */
  @media (max-width: 320px) {
    .header__container {
      padding: 0 0.5rem;
    }

    .header__logo-text {
      font-size: 1rem;
    }

    .header__actions {
      gap: 0.125rem;
    }

    .header__account,
    .header__cart {
      padding: 0.125rem;
    }
  }
/* END_SECTION:header */

/* START_SECTION:hello-world (INDEX:12) */
.welcome {
    display: grid;
    grid-template-columns: var(--content-grid);
    background-color: #f6f6f7;
    padding: 72px 0;
  }

  .welcome-content {
    grid-column: 2;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    width: 100%;
    padding: 0 24px;
  }

  .welcome-description {
    max-width: 80ch;
    line-height: 1.4;
    margin-top: 1.5rem;
  }

  .icon {
    width: 300px;
  }

  .highlights {
    display: grid;
    gap: 2rem;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 50px;
  }

  @media (max-width: 1100px) {
    .highlights {
      grid-template-columns: 1fr;
    }
  }

  .highlight {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 24px;
    border-radius: 8px;
    background-color: #eef3ff;
    color: rgb(92, 95, 98);
    line-height: 1.4;
  }

  .highlight > * + * {
    margin-top: 1rem;
  }

  .highlight h3 {
    font-size: 1rem;
    color: rgb(32, 34, 35);
  }

  .highlight-description {
    flex: 1 1;
  }

  .highlight a {
    display: flex;
    width: fit-content;
    background-color: rgb(250, 251, 251);
    box-shadow: rgba(0, 0, 0, 0.2) 0px -3px 0px 0px inset, rgba(255, 255, 255, 0.9) 0px 2px 0px 0px inset;
    border: 1px solid rgb(140, 145, 150);
    border-radius: 4px;
    color: rgb(92, 95, 98);
    padding: 3px 10px 5px;
    text-decoration: none;
  }
/* END_SECTION:hello-world */

/* START_SECTION:hero-banner (INDEX:13) */
.hero-banner {
    position: relative;
    min-height: 70vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding-top: var(--section-padding-top, 0);
    padding-bottom: var(--section-padding-bottom, 0);
  }

  .hero-banner__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .hero-banner__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  }

  .hero-banner__placeholder-svg {
    width: 200px;
    height: 200px;
    opacity: 0.3;
    color: #fff;
  }

  .hero-banner__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    z-index: 2;
  }

  .hero-banner__container {
    position: relative;
    z-index: 3;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 var(--page-margin);
  }

  .hero-banner__content {
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
    background: rgba(0, 0, 0, 0.6);
    padding: 3rem 2rem;
    border-radius: 12px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
  }

  .hero-banner__subheading {
    font-size: 1.125rem;
    color: #fff;
    margin: 0 0 1rem 0;
    font-weight: 400;
    opacity: 0.9;
  }

  .hero-banner__heading {
    font-size: 3rem;
    font-weight: 700;
    color: #fff;
    margin: 0 0 1.5rem 0;
    line-height: 1.2;
  }

  .hero-banner__description {
    font-size: 1.125rem;
    color: #fff;
    margin: 0 0 2rem 0;
    line-height: 1.6;
    opacity: 0.9;
  }

  .hero-banner__description p {
    margin: 0 0 1rem 0;
  }

  .hero-banner__description p:last-child {
    margin-bottom: 0;
  }

  .hero-banner__button {
    margin-top: 2rem;
  }

  .hero-banner__cta {
    display: inline-block;
    background-color: #e74c3c;
    color: #fff;
    padding: 1rem 2rem;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.125rem;
    transition: all 0.3s ease;
    border: 2px solid #e74c3c;
  }

  .hero-banner__cta:hover {
    background-color: #c0392b;
    border-color: #c0392b;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(231, 76, 60, 0.3);
  }

  /* Tablet responsive (1024px and below) */
  @media (max-width: 1024px) {
    .hero-banner {
      min-height: 60vh;
    }

    .hero-banner__content {
      padding: 2.5rem 1.5rem;
      max-width: 500px;
    }

    .hero-banner__heading {
      font-size: 2.5rem;
    }

    .hero-banner__description {
      font-size: 1rem;
    }
  }

  /* Mobile responsive (768px and below) */
  @media (max-width: 768px) {
    .hero-banner {
      min-height: 50vh;
    }

    .hero-banner__container {
      padding: 0 1rem;
    }

    .hero-banner__content {
      padding: 2rem 1.5rem;
      max-width: 100%;
    }

    .hero-banner__subheading {
      font-size: 1rem;
    }

    .hero-banner__heading {
      font-size: 2rem;
      margin-bottom: 1rem;
    }

    .hero-banner__description {
      font-size: 0.9375rem;
      margin-bottom: 1.5rem;
    }

    .hero-banner__cta {
      padding: 0.875rem 1.5rem;
      font-size: 1rem;
    }
  }

  /* Small mobile responsive (480px and below) */
  @media (max-width: 480px) {
    .hero-banner {
      min-height: 45vh;
    }

    .hero-banner__content {
      padding: 1.5rem 1rem;
    }

    .hero-banner__subheading {
      font-size: 0.9375rem;
    }

    .hero-banner__heading {
      font-size: 1.75rem;
    }

    .hero-banner__description {
      font-size: 0.875rem;
    }

    .hero-banner__cta {
      padding: 0.75rem 1.25rem;
      font-size: 0.9375rem;
    }
  }

  /* Extra small mobile (320px and below) */
  @media (max-width: 320px) {
    .hero-banner__content {
      padding: 1.25rem 0.75rem;
    }

    .hero-banner__heading {
      font-size: 1.5rem;
    }

    .hero-banner__description {
      font-size: 0.8125rem;
    }

    .hero-banner__cta {
      padding: 0.625rem 1rem;
      font-size: 0.875rem;
    }
  }
/* END_SECTION:hero-banner */

/* START_SECTION:hero-carousel (INDEX:14) */
.hero-carousel {
    position: relative;
    height: 800px;
    min-height: 800px;
    padding-top: var(--section-padding-top, 0);
    padding-bottom: var(--section-padding-bottom, 0);
  }

  /* Adjust for sticky header on mobile and tablet */
  @media (max-width: 1024px) {
    .hero-carousel {
      margin-top: calc(var(--header-height) + 32px); /* Account for top bar + header height */
      height: calc(60vh - var(--header-height) - 32px);
      min-height: calc(600px - var(--header-height) - 32px);
    }
  }

  .hero-carousel__swiper {
    width: 100%;
    height: 800px;
  }

  /* Adjust swiper height for mobile and tablet */
  @media (max-width: 1024px) {
    .hero-carousel__swiper {
      height: calc(72vh - var(--header-height) - 32px);
    }
  }

  .hero-carousel__slide {
    position: relative;
    width: 100%;
    height: 100%;
  }

  .hero-carousel__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .hero-carousel__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .hero-carousel__bg-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .hero-carousel__content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.6) 100%);
  }

  .hero-carousel__content-inner {
    color: #fff;
    max-width: 1440px;
    padding: 0 2rem;
  }

  .hero-carousel__heading {
    width: 60%;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 1.5rem 0;
    text-transform: uppercase;
    letter-spacing: 0.02em;
  }

  .hero-carousel__subheading {
    width: 60%;
    font-size: 1.3rem;
    line-height: 1.4;
    margin: 0 0 2rem 0;
    opacity: 0.9;
  }

  .hero-carousel__button {
    display: inline-block;
    background-color: #fff;
    color: #000;
    padding: 1rem 2.5rem;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.125rem;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .hero-carousel__button:hover {
    background-color: #f0f0f0;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
  }

  /* Swiper pagination dots */
  .hero-carousel__pagination {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
  }

  .hero-carousel__pagination .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.5);
    background-color: transparent;
    opacity: 1;
    transition: all 0.3s ease;
    margin: 0 6px;
  }

  .hero-carousel__pagination .swiper-pagination-bullet:hover,
  .hero-carousel__pagination .swiper-pagination-bullet-active {
    background-color: #fff;
    border-color: #fff;
  }

  /* Swiper navigation arrows */
  .hero-carousel__button-prev,
  .hero-carousel__button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    width: 48px!important;
    height: 48px!important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
    margin: 0;
    box-shadow: rgba(0, 0, 0, 0.21) 2px 2px 20px!important;
  }

  .hero-carousel__button-prev:hover,
  .hero-carousel__button-next:hover {
    background-color: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.5);
  }

  .hero-carousel__button-prev {
    left: 2rem;
  }

  .hero-carousel__button-next {
    right: 2rem;
  }

  .hero-carousel__button-prev::after,
  .hero-carousel__button-next::after {
    display: none;
  }

  /* Mobile responsive */
  @media (max-width: 1024px) {
    .hero-carousel__heading {
      font-size: clamp(2rem, 4vw, 3rem);
    }

    .hero-carousel__subheading {
      font-size: clamp(1rem, 1.5vw, 1.25rem);
    }
  }

  @media (max-width: 768px) {
    .hero-carousel {
      min-height: calc(500px - var(--header-height) - 32px);
    }

    .hero-carousel__content-inner {
      padding: 0 1rem;
      max-width: 90%;
    }

    .hero-carousel__heading {
      font-size: clamp(1.75rem, 6vw, 2.5rem);
      margin-bottom: 1rem;
    }

    .hero-carousel__subheading {
      font-size: clamp(0.875rem, 3vw, 1.125rem);
      margin-bottom: 1.5rem;
    }

    .hero-carousel__button {
      padding: 0.875rem 2rem;
      font-size: 1rem;
    }

    .hero-carousel__button-prev,
    .hero-carousel__button-next {
      width: 40px;
      height: 40px;
    }

    .hero-carousel__button-prev {
      left: 1rem;
    }

    .hero-carousel__button-next {
      right: 1rem;
    }

    .hero-carousel__pagination {
      bottom: 1rem;
    }

    .hero-carousel__pagination .swiper-pagination-bullet {
      width: 10px;
      height: 10px;
      margin: 0 4px;
    }
  }

  @media (max-width: 480px) {
    .hero-carousel {
      min-height: calc(400px - var(--header-height) - 32px);
    }

    .hero-carousel__content-inner {
      padding: 0 0.75rem;
      max-width: 95%;
    }

    .hero-carousel__heading {
      font-size: clamp(1.5rem, 8vw, 2rem);
      margin-bottom: 0.75rem;
    }

    .hero-carousel__subheading {
      font-size: clamp(0.75rem, 4vw, 1rem);
      margin-bottom: 1.25rem;
    }

    .hero-carousel__button {
      padding: 0.75rem 1.5rem;
      font-size: 0.875rem;
    }

    .hero-carousel__button-prev,
    .hero-carousel__button-next {
      width: 36px;
      height: 36px;
    }

    .hero-carousel__button-prev {
      left: 0.75rem;
    }

    .hero-carousel__button-next {
      right: 0.75rem;
    }

    .hero-carousel__pagination {
      bottom: 0.75rem;
    }

    .hero-carousel__pagination .swiper-pagination-bullet {
      width: 8px;
      height: 8px;
      margin: 0 3px;
    }
  }

  @media (max-width: 320px) {
    .hero-carousel {
      min-height: calc(350px - var(--header-height) - 32px);
    }

    .hero-carousel__content-inner {
      padding: 0 0.5rem;
    }

    .hero-carousel__heading {
      font-size: clamp(1.25rem, 10vw, 1.75rem);
    }

    .hero-carousel__subheading {
      font-size: clamp(0.625rem, 5vw, 0.875rem);
    }

    .hero-carousel__button {
      padding: 0.625rem 1.25rem;
      font-size: 0.75rem;
    }
  }
/* END_SECTION:hero-carousel */

/* START_SECTION:image-with-text (INDEX:15) */
.image-with-text {
    padding-top: var(--section-padding-top, 48px);
    padding-bottom: var(--section-padding-bottom, 48px);
    background-color: var(--color-background, #fff);
  }

  .image-with-text__container {
    max-width: var(--page-width, 1200px);
    margin: 0 auto;
    padding-left: var(--page-margin, 24px);
    padding-right: var(--page-margin, 24px);
  }

  .image-with-text__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: center;
  }

  .image-with-text--reverse .image-with-text__grid {
    direction: rtl;
  }

  .image-with-text--reverse .image-with-text__media,
  .image-with-text--reverse .image-with-text__content {
    direction: ltr;
  }

  .image-with-text__media {
    position: relative;
  }

  .image-with-text__image-wrapper {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    aspect-ratio: 4 / 3;
  }

  .image-with-text__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .image-with-text__placeholder {
    aspect-ratio: 4 / 3;
    background: #e8e8e8;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .image-with-text__placeholder-svg {
    width: 60%;
    height: auto;
    color: #999;
  }

  .image-with-text__content {
    padding: 0.5rem 0;
  }

  .image-with-text__heading {
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    color: #000;
    margin: 0 0 1.25rem 0;
    line-height: 1.2;
  }

  .image-with-text__text {
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
  }

  .image-with-text__text p {
    margin: 0 0 1rem 0;
  }

  .image-with-text__text p:last-child {
    margin-bottom: 0;
  }

  .image-with-text__button {
    display: inline-block;
    margin-top: 1.5rem;
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    font-weight: 600;
    background-color: #1a1a1a;
    color: #fff;
    text-decoration: none;
    border-radius: 8px;
    transition: opacity 0.2s;
  }

  .image-with-text__button:hover {
    opacity: 0.9;
  }

  @media (max-width: 768px) {
    .image-with-text__grid {
      grid-template-columns: 1fr;
      gap: 2rem;
      direction: ltr;
    }

    .image-with-text--reverse .image-with-text__grid {
      direction: ltr;
    }

    .image-with-text__content {
      padding: 0;
    }
  }
/* END_SECTION:image-with-text */

/* START_SECTION:locations-page (INDEX:16) */
.locations-page {
    padding-top: var(--section-padding-top, 48px);
    padding-bottom: var(--section-padding-bottom, 48px);
    background-color: var(--color-background, #fff);
  }

  .locations-page__container {
    max-width: var(--page-width, 1200px);
    margin: 0 auto;
    padding-left: var(--page-margin, 24px);
    padding-right: var(--page-margin, 24px);
    display: flex;
    flex-direction: column;
    gap: 3rem;
  }

  .locations-page__location {
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    overflow: hidden;
    background: #fafafa;
  }

  .locations-page__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 320px;
  }

  .locations-page__details {
    padding: 2rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .locations-page__number {
    font-size: 0.875rem;
    font-weight: 600;
    color: #666;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .locations-page__title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #000;
    margin: 0 0 0.25rem 0;
    line-height: 1.2;
  }

  .locations-page__address {
    font-size: 1rem;
    line-height: 1.5;
    color: #333;
  }

  .locations-page__address p {
    margin: 0 0 0.25em 0;
  }

  .locations-page__row {
    font-size: 0.9375rem;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
  }

  .locations-page__label {
    font-weight: 600;
    color: #333;
    flex-shrink: 0;
  }

  .locations-page__value {
    color: #000;
    text-decoration: none;
  }

  .locations-page__value:hover {
    text-decoration: underline;
  }

  .locations-page__extra {
    font-size: 0.9375rem;
    line-height: 1.5;
    color: #555;
    margin-top: 0.5rem;
  }

  .locations-page__extra p {
    margin: 0 0 0.35em 0;
  }

  .locations-page__map-wrapper {
    position: relative;
    min-height: 280px;
    background: #e8e8e8;
  }

  .locations-page__map {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 280px;
  }

  .locations-page__map-placeholder {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    text-align: center;
    font-size: 0.9375rem;
    color: #666;
  }

  .locations-page__map-placeholder p {
    margin: 0 0 0.5rem 0;
  }

  .locations-page__map-hint {
    font-size: 0.8125rem;
    max-width: 280px;
  }

  @media (max-width: 768px) {
    .locations-page__grid {
      grid-template-columns: 1fr;
    }

    .locations-page__map-wrapper {
      min-height: 240px;
      order: -1;
    }

    .locations-page__map {
      min-height: 240px;
    }

    .locations-page__details {
      padding: 1.5rem;
    }
  }
/* END_SECTION:locations-page */

/* START_SECTION:page-banner (INDEX:17) */
.page-banner {
    background-color: var(--page-banner-bg, #212121);
    color: #fff;
    padding-top: var(--page-banner-padding-top, 24px);
    padding-bottom: var(--page-banner-padding-bottom, 24px);
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 140px;
  }

  .page-banner__container {
    max-width: var(--page-width, 1200px);
    margin: 0 auto;
    padding-left: var(--page-margin, 24px);
    padding-right: var(--page-margin, 24px);
  }

  .page-banner__title {
    font-size: clamp(2rem, 5vw, 3rem);
    font-weight: 700;
    color: #fff;
    margin: 0 0 0.75rem 0;
    line-height: 1.2;
  }

  .page-banner__breadcrumb {
    font-size: 0.9375rem;
    font-weight: 400;
    color: #fff;
  }

  .page-banner__breadcrumb-link {
    color: #fff;
    text-decoration: none;
  }

  .page-banner__breadcrumb-link:hover {
    text-decoration: underline;
  }

  .page-banner__breadcrumb-sep {
    margin: 0 0.5rem;
    opacity: 0.9;
  }

  .page-banner__breadcrumb-current {
    color: #fff;
    opacity: 0.95;
  }
/* END_SECTION:page-banner */

/* START_SECTION:popular-products (INDEX:20) */
.popular-products {
    padding-top: var(--section-padding-top, 60px);
    padding-bottom: var(--section-padding-bottom, 60px);
  }

  .popular-products__container {
    padding: 0 var(--page-margin);
  }

  /* Section header */
  .popular-products__header {
    text-align: center;
    margin-bottom: 3rem;
  }

  .popular-products__subheading {
    font-size: 1rem;
    color: #666;
    margin: 0 0 0.5rem 0;
    font-weight: 400;
  }

  .popular-products__heading {
    font-size: 2.5rem;
    font-weight: 700;
    color: #000;
    margin: 0;
    line-height: 1.2;
  }

  /* Swiper container */
  .popular-products__swiper {
    position: relative;
    overflow: hidden;
  }

  .popular-products__slide {
    height: auto;
  }

  /* Product card */
  .popular-products__product {
    height: 480px;
    display: flex;
    flex-direction: column;
    position: relative;
    background-image: linear-gradient(0deg, rgba(224, 224, 224, 0.6) 0%, rgba(237, 237, 237, 0.6) 25%, rgba(122, 122, 122, 0.6) 100%);
    overflow: hidden;
    padding: 80px 24px 30px 24px;
    text-decoration: none;
    color: inherit;
  }

  /* Product badge */
  .popular-products__badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    padding: 0.32rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 500;
    z-index: 2;
  }

  .popular-products__badge--new {
    background-color: #ffd700;
    color: #000;
  }

  .popular-products__badge--bestseller {
    background-color: #ff6b35;
    color: #fff;
  }

  .popular-products__badge--sale {
    background-color: #e74c3c;
    color: #fff;
  }

  /* Product image */
  .popular-products__image {
    aspect-ratio: 1;
    mix-blend-mode: darken;
    width: 250px;
    height: 250px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }

  .popular-products__product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }

  .popular-products__product:hover .popular-products__product-image {
    transform: scale(1.05);
  }

 
  .popular-products__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
  }

  .popular-products__placeholder-svg {
    width: 60%;
    height: 60%;
    opacity: 0.3;
  }

  /* Color swatches */
  .popular-products__color-swatches {
    position: absolute;
    top: 1rem;
    right: 1rem;
    display: flex;
    gap: 0.5rem;
    z-index: 2;
  }

  .popular-products__color-swatch {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transition: transform 0.2s ease;
  }

  .popular-products__color-swatch:hover {
    transform: scale(1.1);
  }

  /* Product info */
  .popular-products__info {
    flex: 1;
    display: flex;
    flex-direction: column;
    margin-top: 20px;
  }

  .popular-products__product-title {
    font-size: 1rem;
    font-weight: 800;
    margin: 0 0 0.75rem 0;
    line-height: 1.3;
    color: #000;
  }

  .popular-products__product-description {
    font-size: 0.875rem;
    color: #666;
    margin: 0 0 1rem 0;
    line-height: 1.4;
    flex: 1;
  }

  .popular-products__price {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: auto;
  }

  .popular-products__price-compare {
    font-size: 0.875rem;
    color: #999;
    text-decoration: line-through;
  }

  .popular-products__price-current {
    font-size: 1.25rem;
    font-weight: 700;
    color: #000;
  }

  /* Navigation buttons */
  .popular-products__button-prev,
  .popular-products__button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 50%;
    width: 48px!important;
    height: 48px!important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
    margin: 0;
    box-shadow: rgba(0, 0, 0, 0.21) 2px 2px 20px!important;
  }

  .popular-products__button-prev:hover,
  .popular-products__button-next:hover {
    background-color: #000;
    border-color: #000;
    color: #fff;
    transform: translateY(-50%) scale(1.05);
  }
  .popular-products__button-prev:hover svg,
  .popular-products__button-next:hover svg {
    stroke: #fff;
  }

  .popular-products__button-prev {
    left: -24px;
  }

  .popular-products__button-next {
    right: -24px;
  }

  .popular-products__button-prev::after,
  .popular-products__button-next::after {
    display: none;
  }

  /* Mobile responsive */
  @media (max-width: 1024px) {
    .popular-products__container {
      padding: 0 1rem;
    }

    .popular-products__heading {
      font-size: 2.25rem;
    }

    .popular-products__product {
      padding: 60px 20px 25px 20px;
    }

  }

  @media (max-width: 768px) {
    .popular-products__container {
      padding: 0 1rem;
    }

    .popular-products__heading {
      font-size: 2rem;
    }

    .popular-products__header {
      margin-bottom: 2rem;
    }

    .popular-products__product {
      padding: 1rem;
      height: 500px;
    }

    .popular-products__product-title {
      font-size: 1rem;
    }

    .popular-products__product-description {
      font-size: 0.8125rem;
    }

    .popular-products__price-current {
      font-size: 1.125rem;
    }

    .popular-products__button-prev,
    .popular-products__button-next {
      width: 40px;
      height: 40px;
    }

    .popular-products__button-prev {
      left: -20px;
    }

    .popular-products__button-next {
      right: -20px;
    }
  }

  @media (max-width: 480px) {
    .popular-products__container {
      padding: 0 1rem;
    }

    .popular-products__heading {
      font-size: 1.75rem;
    }

    .popular-products__subheading {
      font-size: 0.875rem;
    }

    .popular-products__header {
      margin-bottom: 1.5rem;
    }

    .popular-products__product {
      padding: 0.75rem;
      height: 375px;
    }

    .popular-products__product-title {
      font-size: 0.875rem;
      margin-bottom: 0.5rem;
    }

    .popular-products__product-description {
      font-size: 0.75rem;
      margin-bottom: 0.75rem;
    }

    .popular-products__price-current {
      font-size: 1rem;
    }

    .popular-products__price-compare {
      font-size: 0.75rem;
    }

    .popular-products__button-prev,
    .popular-products__button-next {
      width: 36px;
      height: 36px;
    }

    .popular-products__button-prev {
      left: -18px;
    }

    .popular-products__button-next {
      right: -18px;
    }
  }

  @media (max-width: 320px) {
    .popular-products__container {
      padding: 0 1rem;
    }

    .popular-products__heading {
      font-size: 1.5rem;
    }

    .popular-products__product {
      padding: 0.5rem;
      height: 375px;
    }

    .popular-products__product-title {
      font-size: 0.8125rem;
    }

    .popular-products__product-description {
      font-size: 0.6875rem;
    }

    .popular-products__price-current {
      font-size: 0.875rem;
    }

    .popular-products__button-prev,
    .popular-products__button-next {
      width: 32px;
      height: 32px;
    }

    .popular-products__button-prev {
      left: -16px;
    }

    .popular-products__button-next {
      right: -16px;
    }
  }
/* END_SECTION:popular-products */

/* START_SECTION:product (INDEX:22) */
.product-section {
    padding: 2rem 0;
    background-color: #fff;
  }

  .product-container {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    padding: 0 var(--page-margin, 24px);
  }

  /* Breadcrumb navigation */
  .product-breadcrumb {
    margin-bottom: 2rem;
    margin-top: 1rem;
    font-size: 0.875rem;
    color: #666;
  }

  .product-breadcrumb-link {
    color: #666;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .product-breadcrumb-link:hover {
    color: #000;
  }

  .product-breadcrumb-separator {
    margin: 0 0.5rem;
    color: #ccc;
  }

  .product-breadcrumb-current {
    color: #000;
    font-weight: 500;
  }

  /* Main layout */
  .product-layout {
    display: grid;
    grid-template-columns: 1.85fr 1.15fr;
    gap: 2rem;
    align-items: start;
  }

  .product-short-description .metafield-rich_text_field {
    font-size: 1rem;
    color: #000;
    line-height: 1.5;
    margin-bottom: 1rem;
  }

  /* Product images */
  .product-images {
    position: relative;
  }

  .product-images-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-bottom: 2rem;
  }

  .product-image-item {
    position: relative;
    overflow: hidden;
    background-image: linear-gradient(0deg, rgba(224, 224, 224, 0.6) 0%, rgba(237, 237, 237, 0.6) 25%, rgba(122, 122, 122, 0.6) 100%);
    mix-blend-mode: darken;
    aspect-ratio: 1;
  }

  .product-image-item--placeholder {
    background-color: #f5f5f5;
    background-image: none;
  }

  .product-image-wrapper {
    width: 100%;
    height: 100%;
  }

  .product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    mix-blend-mode: darken;
  }

  .product-image:hover {
    transform: scale(1.05);
  }

  .product-image-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
    opacity: 0.5;
  }

  .product-image-placeholder-svg {
    width: 100%;
    height: 100%;
    opacity: 0.3;
  }

  .product-badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background-color: #ff6b35;
    color: white;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .product-badge--new {
    background-color: #ff6b35;
  }

  /* See More button */
  .product-see-more {
    text-align: center;
    margin-top: 1rem;
  }

  .product-info ul {
    padding: 10px;
  }

  .product-see-more-button {
    background-color: #000;
    color: #fff;
    border: none;
    padding: 0.75rem 2rem;
    border-radius: 25px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .product-see-more-button:hover {
    background-color: #333;
    transform: translateY(-2px);
  }

  .product-see-more-button:disabled {
    background-color: #ccc;
    cursor: not-allowed;
    transform: none;
  }

  /* Additional images */
  .product-additional-images {
    margin-top: 2rem;
  }

  .product-additional-images-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
  }

  .product-image-item--additional {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.5s ease;
  }

  .product-image-item--additional.loaded {
    opacity: 1;
    transform: translateY(0);
  }

  /* Clickable images */
  .product-image--clickable {
    cursor: pointer;
    transition: transform 0.3s ease;
  }

  .product-image--clickable:hover {
    transform: scale(1.05);
  }

  /* Product info */
  .product-info {
    padding-left: 2rem;
  }

  .product-title {
    font-size: 2rem;
    font-weight: 700;
    margin: 0 0 0.5rem 0;
    line-height: 1.2;
  }

  .product-subtitle {
    font-size: 1.125rem;
    color: #666;
    margin: 0 0 1.5rem 0;
    line-height: 1.4;
  }

  .product-price {
    margin-bottom: 1.5rem;
  }

  .product-price-current {
    font-size: 1.5rem;
    font-weight: 700;
    color: #000;
  }

  .product-price-compare {
    font-size: 1.125rem;
    color: #999;
    text-decoration: line-through;
    margin-left: 0.5rem;
  }

  .product-meta {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 2rem;
    font-size: 1.3rem;
    color: #000;
    font-weight: 800;
  }

  .product-sku {
    margin: 0;
  }

  .product-find-store {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #000;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
  }

  .product-find-store:hover {
    color: #666;
  }

  /* Product form */
  .product-form {
    margin-bottom: 2rem;
  }

  .product-form-inner {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }

  .product-variants,
  .product-quantity {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .product-variant-label,
  .product-quantity-label {
    font-weight: 600;
    font-size: 0.875rem;
    color: #000;
  }

  .product-variant-select,
  .product-quantity-input {
    width: 70px;
    padding: 0.75rem;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 1rem;
    background-color: #fff;
    transition: border-color 0.2s ease;
  }

  .product-variant-select:focus,
  .product-quantity-input:focus {
    outline: none;
    border-color: #000;
  }

  .product-actions {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .product-add-to-cart {
    background-color: #000;
    color: #fff;
    border: none;
    padding: 1rem 2rem;
    border-radius: 4px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .product-add-to-cart:hover:not(:disabled) {
    background-color: #333;
    transform: translateY(-2px);
  }

  .product-add-to-cart:disabled {
    background-color: #ccc;
    cursor: not-allowed;
  }

  /* Product description */
  .product-description {
    margin-bottom: 2rem;
  }

  .product-description-content {
    line-height: 1.6;
    color: #333;
  }

  .product-read-more {
    background: none;
    border: none;
    color: #000;
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
    margin-top: 0.5rem;
  }

  .product-read-more:hover {
    color: #666;
  }

  /* Product features */
  .product-features {
    margin-bottom: 2rem;
  }

  .product-features-title {
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0 0 1rem 0;
  }

  .product-features-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }

  .product-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    font-size: 0.875rem;
    line-height: 1.4;
  }

  .product-feature-item svg {
    color: #22c55e;
    flex-shrink: 0;
    margin-top: 0.125rem;
  }

  /* Image magnifier modal - full width with thumbnails absolute on left */
  .product-image-magnifier {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    z-index: 1000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 0;
  }

  .product-image-magnifier[data-modal-open="true"] {
    display: flex;
  }

  .product-image-magnifier-content {
    position: relative;
    width: 100%;
    height: 100%;
    max-width: 100vw;
    max-height: 100vh;
    background-image: linear-gradient(0deg, rgba(224, 224, 224, 0.6) 0%, rgba(237, 237, 237, 0.6) 25%, rgba(122, 122, 122, 0.6) 100%);
    display: flex;
    align-items: stretch;
    overflow: hidden;
  }

  .product-image-magnifier-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    cursor: pointer;
    z-index: 1001;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
  }

  .product-image-magnifier-close:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }

  .product-image-magnifier-main {
    position: relative;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100%;
    min-width: 0;
  }

  .product-image-magnifier-image-container {
    position: relative;
    max-width: 100%;
    max-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .product-image-magnifier-image {
    max-width: 100%;
    max-height: 100vh;
    object-fit: contain;
  }

  .product-image-magnifier-controls {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    padding: 0 1rem;
    transform: translateY(-50%);
    pointer-events: none;
  }

  .product-image-magnifier-prev,
  .product-image-magnifier-next {
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
    pointer-events: auto;
  }

  .product-image-magnifier-prev:hover,
  .product-image-magnifier-next:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }

  .product-image-magnifier-thumbnails {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100px;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1rem 0;
    overflow-y: auto;
    overflow-x: hidden;
    background: rgba(0, 0, 0, 0.4);
    z-index: 10;
    align-items: center;
  }

  .product-image-magnifier-thumbnail {
    flex-shrink: 0;
    width: 72px;
    height: 72px;
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid transparent;
    transition: border-color 0.2s ease;
  }

  .product-image-magnifier-thumbnail.active {
    border-color: #fff;
  }

  .product-image-magnifier-thumbnail:hover {
    border-color: rgba(255, 255, 255, 0.7);
  }

  .product-image-magnifier-thumbnail-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* Tablet: stack layout */
  @media (max-width: 1024px) {
    .product-layout {
      grid-template-columns: 1fr;
      gap: 1.5rem;
    }

    .product-info {
      padding-left: 0;
    }
  }

  @media (max-width: 768px) {
    .product-section {
      padding: 1.25rem 0;
    }

    .product-container {
      padding: 0 1rem;
    }

    .product-breadcrumb {
      font-size: 0.8125rem;
      margin-bottom: 1.25rem;
      margin-top: 0.75rem;
    }

    .product-images-grid {
      gap: 0.5rem;
      margin-bottom: 1.25rem;
    }

    .product-title {
      font-size: 1.5rem;
    }

    .product-subtitle {
      font-size: 1rem;
    }

    .product-price-current {
      font-size: 1.25rem;
    }

    .product-meta {
      font-size: 1rem;
      margin-bottom: 1.25rem;
    }

    .product-form-inner {
      gap: 1.25rem;
    }

    .product-variants,
    .product-quantity {
      flex-wrap: wrap;
    }

    .product-variant-select,
    .product-quantity-input {
      min-width: 0;
      flex: 1 1 auto;
    }

    .product-add-to-cart {
      width: 100%;
      padding: 0.875rem 1.5rem;
    }

    .product-description,
    .product-features {
      margin-bottom: 1.25rem;
    }

    .product-image-magnifier-main {
      min-height: 100%;
    }

    .product-image-magnifier-image {
      max-height: 100vh;
    }

    .product-image-magnifier-controls {
      padding: 0 0.5rem;
    }

    .product-image-magnifier-prev,
    .product-image-magnifier-next {
      width: 2.5rem;
      height: 2.5rem;
    }

    .product-image-magnifier-thumbnails {
      width: 72px;
      padding: 0.75rem 0;
      gap: 0.35rem;
    }

    .product-image-magnifier-thumbnail {
      width: 56px;
      height: 56px;
    }

    .product-images-modal-grid {
      grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
      gap: 0.5rem;
      padding: 1rem;
    }
  }

  @media (max-width: 480px) {
    .product-container {
      padding: 0 0.75rem;
    }

    .product-section {
      padding: 1rem 0;
    }

    .product-breadcrumb {
      font-size: 0.75rem;
      word-break: break-word;
    }

    .product-images-grid {
      gap: 0.35rem;
    }

    .product-title {
      font-size: 1.25rem;
    }

    .product-price-current {
      font-size: 1.125rem;
    }

    .product-see-more-button {
      padding: 0.625rem 1.5rem;
      font-size: 0.9375rem;
    }

    .product-add-to-cart {
      font-size: 0.9375rem;
    }
  }
}
/* END_SECTION:product */

/* START_SECTION:related-products (INDEX:23) */
.related-products {
    padding-top: var(--section-padding-top, 60px);
    padding-bottom: var(--section-padding-bottom, 60px);
  }

  .related-products__container {
    padding: 0 var(--page-margin);
  }

  /* Section header */
  .related-products__header {
    text-align: center;
    margin-bottom: 3rem;
  }

  .related-products__subheading {
    font-size: 1rem;
    color: #666;
    margin: 0 0 0.5rem 0;
    font-weight: 400;
  }

  .related-products__heading {
    font-size: 2.5rem;
    font-weight: 700;
    color: #000;
    margin: 0;
    line-height: 1.2;
  }

  /* Swiper container */
  .related-products__swiper {
    position: relative;
    overflow: hidden;
  }

  .related-products__slide {
    height: auto;
  }

  /* Product card */
  .related-products__product {
    height: 450px;
    display: flex;
    flex-direction: column;
    position: relative;
    background-image: linear-gradient(0deg, rgba(224, 224, 224, 0.6) 0%, rgba(237, 237, 237, 0.6) 25%, rgba(122, 122, 122, 0.6) 100%);
    overflow: hidden;
    padding: 80px 24px 30px 24px;
  }

  /* Product badge */
  .related-products__badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    padding: 0.32rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 500;
    z-index: 2;
  }

  .related-products__badge--new {
    background-color: #ffd700;
    color: #000;
  }

  .related-products__badge--bestseller {
    background-color: #ff6b35;
    color: #fff;
  }

  .related-products__badge--sale {
    background-color: #e74c3c;
    color: #fff;
  }

  /* Product image */
  .related-products__image {
    aspect-ratio: 1;
    mix-blend-mode: darken;
    width: 250px;
    height: 250px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }

  .related-products__product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }

  .related-products__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
  }

  .related-products__placeholder-svg {
    width: 60%;
    height: 60%;
    opacity: 0.3;
  }

  /* Product info */
  .related-products__info {
    flex: 1;
    display: flex;
    flex-direction: column;
    margin-top: 20px;
  }

  .related-products__product-title {
    font-size: 1rem;
    font-weight: 800;
    margin: 0 0 0.75rem 0;
    line-height: 1.3;
  }

  .related-products__product-title a {
    color: #000;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .related-products__product-title a:hover {
    color: #666;
  }

  .related-products__product-description {
    font-size: 0.875rem;
    color: #666;
    margin: 0 0 1rem 0;
    line-height: 1.4;
    flex: 1;
  }

  .related-products__price {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: auto;
  }

  .related-products__price-compare {
    font-size: 0.875rem;
    color: #999;
    text-decoration: line-through;
  }

  .related-products__price-current {
    font-size: 1.25rem;
    font-weight: 700;
    color: #000;
  }

  /* Navigation buttons */
  .related-products__button-prev,
  .related-products__button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 50%;
    width: 48px!important;
    height: 48px!important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
    margin: 0;
    box-shadow: rgba(0, 0, 0, 0.21) 2px 2px 20px!important;
  }

  .related-products__button-prev:hover,
  .related-products__button-next:hover {
    background-color: #000;
    border-color: #000;
    color: #fff;
    transform: translateY(-50%) scale(1.05);
  }
  .related-products__button-prev:hover svg,
  .related-products__button-next:hover svg {
    stroke: #fff;
  }

  .related-products__button-prev {
    left: -24px;
  }

  .related-products__button-next {
    right: -24px;
  }

  .related-products__button-prev::after,
  .related-products__button-next::after {
    display: none;
  }

  /* Empty state */
  .related-products__empty {
    text-align: center;
    padding: 2rem;
    color: #666;
  }

  /* Mobile responsive */
  @media (max-width: 768px) {
    .related-products__heading {
      font-size: 2rem;
    }

    .related-products__header {
      margin-bottom: 2rem;
    }

    .related-products__product {
      padding: 1rem;
    }

    .related-products__button-prev,
    .related-products__button-next {
      width: 40px;
      height: 40px;
    }

    .related-products__button-prev {
      left: -20px;
    }

    .related-products__button-next {
      right: -20px;
    }
  }
/* END_SECTION:related-products */

/* START_SECTION:search (INDEX:24) */
.search-results {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  }
  .search-results .prev,
  .search-results .page,
  .search-results .next {
    grid-column: 1 / -1;
  }
/* END_SECTION:search */

/* START_SECTION:service-benefits (INDEX:25) */
.service-benefits {
    padding-top: 20px;
    padding-bottom: 20px;
    background: #000;
  }

  .service-benefits__container {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    padding: 0 var(--page-margin);
  }

  .service-benefits__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    align-items: start;
  }

  .service-benefits__item {
    text-align: center;
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  .service-benefits__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    margin-bottom: 0.5rem;
  }

  .service-benefits__icon-svg {
    color: #000;
    transition: color 0.3s ease;
  }

  .service-benefits__icon-image {
    width: 60px;
    height: 60px;
    object-fit: contain;
  }

  .service-benefits__content {
    max-width: 280px;
    text-align: left;
  }

  .service-benefits__title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #fff;
    margin: 0 0 0.5rem 0;
    line-height: 1.3;
  }

  .service-benefits__description {
    font-size: 0.875rem;
    color: #fff;
    margin: 0;
    line-height: 1.4;
  }

  /* Tablet responsive (1024px and below) */
  @media (max-width: 1024px) {
    .service-benefits {
      padding-top: 180px;
      padding-bottom: 20px;
    }
    .service-benefits__container {
      padding: 0 1.5rem;
    }

    .service-benefits__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 2rem;
    }

    .service-benefits__content {
      max-width: 100%;
    }
  }

  /* Mobile responsive (768px and below) */
  @media (max-width: 768px) {
    .service-benefits {
      padding-top: 140px;
      padding-bottom: 20px;
    }

    .service-benefits__container {
      padding: 0 1rem;
    }

    .service-benefits__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 1.5rem;
    }

    .service-benefits__icon {
      width: 60px;
      height: 60px;
    }

    .service-benefits__icon-svg {
      width: 50px;
      height: 50px;
    }

    .service-benefits__icon-image {
      width: 50px;
      height: 50px;
    }

    .service-benefits__title {
      font-size: 1rem;
    }

    .service-benefits__description {
      font-size: 0.8125rem;
    }
  }

  /* Small mobile responsive (480px and below) */
  @media (max-width: 480px) {
    .service-benefits {
      padding-top: 120px;
      padding-bottom: 20px;
    }

    .service-benefits__container {
      padding: 0 0.75rem;
    }

    .service-benefits__grid {
      grid-template-columns: 1fr;
      gap: 1.5rem;
    }

    .service-benefits__item {
      flex-direction: row;
      text-align: left;
      gap: 1rem;
    }

    .service-benefits__icon {
      width: 50px;
      height: 50px;
      flex-shrink: 0;
    }

    .service-benefits__icon-svg {
      width: 40px;
      height: 40px;
    }

    .service-benefits__icon-image {
      width: 40px;
      height: 40px;
    }

    .service-benefits__content {
      flex: 1;
    }

    .service-benefits__title {
      font-size: 0.9375rem;
      margin-bottom: 0.25rem;
    }

    .service-benefits__description {
      font-size: 0.75rem;
    }
  }

  /* Extra small mobile (320px and below) */
  @media (max-width: 320px) {
    .service-benefits__container {
      padding: 0 0.5rem;
    }

    .service-benefits__grid {
      gap: 1rem;
    }

    .service-benefits__icon {
      width: 40px;
      height: 40px;
    }

    .service-benefits__icon-svg {
      width: 32px;
      height: 32px;
    }

    .service-benefits__icon-image {
      width: 32px;
      height: 32px;
    }

    .service-benefits__title {
      font-size: 0.875rem;
    }

    .service-benefits__description {
      font-size: 0.6875rem;
    }
  }
/* END_SECTION:service-benefits */

/* CSS from block stylesheet tags */
/* START_BLOCK:group (INDEX:26) */
.group {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    width: 100%;
  }

  .group--horizontal {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0 var(--padding);
  }

  .group--vertical {
    flex-direction: column;
    align-items: var(--alignment);
    padding: var(--padding) 0;
  }
/* END_BLOCK:group */

/* START_BLOCK:html (INDEX:27) */
.html-block {
    width: 100%;
    max-width: var(--max-width, 100%);
    margin: 0 auto;
  }

  .html-block__content {
    text-align: var(--text-align);
  }

  .html-block--full-width {
    max-width: 100%;
  }

  .html-block--container {
    max-width: 1200px;
  }

  .html-block--narrow {
    max-width: 600px;
  }

  /* Testimonial specific styles */
  .html-block__content blockquote {
    font-style: italic;
    margin: 1rem 0;
    padding: 1rem;
    border-left: 3px solid var(--color-primary, #000);
  }

  .html-block__content .testimonial-author {
    font-weight: 600;
    margin-top: 0.5rem;
  }
/* END_BLOCK:html */

/* START_BLOCK:text (INDEX:28) */
.text {
    text-align: var(--text-align);
  }
  .text--title {
    font-size: 2rem;
    font-weight: 700;
  }
  .text--subtitle {
    font-size: 1.5rem;
  }
/* END_BLOCK:text */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:image (INDEX:30) */
.image {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto;
  }

  .image > img {
    width: 100%;
    height: auto;
  }
/* END_SNIPPET:image */