/** Shopify CDN: Minification failed

Line 133:30 Unexpected "{"
Line 133:39 Expected ":"
Line 133:45 Unexpected ","
Line 134:15 Unexpected "{"
Line 134:24 Expected ":"
Line 134:31 Unexpected "{"
Line 144:30 Unexpected "{"
Line 144:39 Expected ":"
Line 144:45 Unexpected ","
Line 145:15 Unexpected "{"
... and 145 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:mag-custom-4-v2 (INDEX:50, SCOPED:FALSE) */
/* Visibility Helper Classes */
  @media (min-width: 768px) {
    .hide--desktop-v2 {
      display: none !important;
    }
  }
  @media (max-width: 767px) {
    .hide--mobile-v2 {
      display: none !important;
    }
  }

  .mag-custom-4-v2 .section-header-v2 {
    text-align: center;
    margin-bottom: 50px;
  }
  .mag-custom-4-v2 .title-heading-v2 {
    display: inline-block;
    position: relative;
    font-family: helvetica;
    font-size: 2.25rem;
    font-weight: 600;
    letter-spacing: 0em;
    text-transform: uppercase;
    text-decoration: none;
    margin: 0 0 0.5rem 0;
    padding: 0.5rem 0;
  }
  .mag-custom-4-v2 .title-heading-v2::before,
  .mag-custom-4-v2 .title-heading-v2::after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #e0e0e0;
  }
  .mag-custom-4-v2 .title-heading-v2::before {
    top: 0;
  }
  .mag-custom-4-v2 .title-heading-v2::after {
    bottom: 0;
  }
  .mag-custom-4-v2 .sub-heading-v2 {
    font-size: 1rem;
    color: #6c757d;
  }
  .mag-custom-4-v2 .product-grid-v2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    align-items: start;
  }
  .mag-custom-4-v2 .product-card-v2 {
    text-align: left;
  }
  .mag-custom-4-v2 .product-card--placeholder-v2 {
    opacity: 0.6;
  }
  .mag-custom-4-v2 .product-card__image-link-v2 {
    display: block;
    margin-bottom: 15px;
  }
  .mag-custom-4-v2 .product-card__image-wrapper-v2 {
    position: relative;
    padding-top: 125%; /* Aspect ratio 4:5 */
    background-color: #f0f0f0;
    overflow: hidden;
  }
  .mag-custom-4-v2 .product-card__image-v2,
  .mag-custom-4-v2 .product-card--placeholder-v2 .placeholder-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .mag-custom-4-v2 .product-card__info-v2 a {
    text-decoration: none;
    color: inherit;
  }
  .mag-custom-4-v2 .product-card__title-v2 {
    font-family: Helvetica;
    font-size: 1rem;
    font-weight: 400;
    margin: 0 0 5px 0;
  }
  .mag-custom-4-v2 .product-card__price-v2 {
    font-family: Helvetica;
    font-size: 1rem;
    font-weight: 600;
    margin: 0;
  }

  @media (max-width: 991px) {
    .mag-custom-4-v2 .product-grid-v2 {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (max-width: 767px) {
    .mag-custom-4-v2 .product-grid-v2 {
      grid-template-columns: repeat(1, 1fr);
    }
    .mag-custom-4-v2 .product-item-column-v2 {
      margin-top: 0 !important;
    }
  }
/* END_SECTION:mag-custom-4-v2 */

/* START_SECTION:mag-custom-full (INDEX:51, SCOPED:FALSE) */
/* FULL SCREEN SECTION - 100vh height */
  #shopify-section-template--{{ section.id }},
  #mag-custom-{{ section.id }} {
    min-height: 100vh !important;
    min-height: 100dvh !important;
    height: 100vh !important;
    height: 100dvh !important;
    overflow: hidden !important;
    position: relative !important;
  }

  /* Enforce margins on the outer Shopify section container */
  #shopify-section-template--{{ section.id }},
  #mag-custom-{{ section.id }},
  #shopify-section-template--{{ section.id }}.shopify-section,
  .section-{{ section.id }}-margin {
    margin-top: {{ section.settings.margin_top_mobile | default: 0 }}px !important;
    margin-bottom: {{ section.settings.margin_bottom_mobile | default: 0 }}px !important;
    margin-left: {{ section.settings.margin_left_mobile | default: 0 }}px !important;
    margin-right: {{ section.settings.margin_right_mobile | default: 0 }}px !important;
    padding-top: {{ section.settings.padding_top_mobile | default: 0 }}px !important;
    padding-bottom: {{ section.settings.padding_bottom_mobile | default: 0 }}px !important;
    padding-left: {{ section.settings.padding_left_mobile | default: 0 }}px !important;
    padding-right: {{ section.settings.padding_right_mobile | default: 0 }}px !important;
  }
  
  /* Mobile Compact Mode - Override all spacing on mobile only for THIS section */
  @media (max-width: 767px) {
    #shopify-section-template--{{ section.id }}.mobile-compact-{{ section.id }},
    #mag-custom-{{ section.id }}.mobile-compact-{{ section.id }},
    .section-{{ section.id }}-margin.mobile-compact-{{ section.id }} {
      margin-top: 0 !important;
      margin-bottom: 0 !important;
      margin-left: 0 !important;
      margin-right: 0 !important;
      padding-top: 0 !important;
      padding-bottom: 0 !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
    }
  }
  
  @media (min-width: 768px) {
    #shopify-section-template--{{ section.id }},
    #mag-custom-{{ section.id }},
    #shopify-section-template--{{ section.id }}.shopify-section,
    .section-{{ section.id }}-margin {
      margin-top: {{ section.settings.margin_top | default: 0 }}px !important;
      margin-bottom: {{ section.settings.margin_bottom | default: 0 }}px !important;
      margin-left: {{ section.settings.margin_left | default: 0 }}px !important;
      margin-right: {{ section.settings.margin_right | default: 0 }}px !important;
      padding-top: {{ section.settings.padding_top | default: 0 }}px !important;
      padding-bottom: {{ section.settings.padding_bottom | default: 0 }}px !important;
      padding-left: {{ section.settings.padding_left | default: 0 }}px !important;
      padding-right: {{ section.settings.padding_right | default: 0 }}px !important;
    }
  }

  {% if section.settings.contained_width %}
    #mag-custom-{{ section.id }} {
      width: 100% !important;
      max-width: 1200px !important;
      margin-left: auto !important;
      margin-right: auto !important;
      padding-left: 15px !important;
      padding-right: 15px !important;
      position: static !important;
      left: auto !important;
      right: auto !important;
      overflow-x: visible !important;
    }
  {% else %}
    #mag-custom-{{ section.id }} {
      width: 100vw !important;
      position: relative !important;
      left: 50% !important;
      right: 50% !important;
      margin-left: -50vw !important;
      margin-right: -50vw !important;
      overflow-x: hidden !important;
    }
  {% endif %}

  /* Full screen wrapper and image styling */
  .mag-custom-1 .single-image-wrapper { 
    line-height: 0 !important; 
    height: 100vh !important;
    height: 100dvh !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
  }
  
  .mag-custom-1 .single-image-wrapper a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    position: relative !important;
  }
  
  .mag-custom-1 .single-image-wrapper > a > div {
    height: 100% !important;
    position: relative !important;
  }
  
  .mag-custom-1 .single-image-wrapper img { 
    display: block !important; 
    width: 100% !important; 
    height: 100vh !important;
    height: 100dvh !important;
    object-fit: cover !important;
    object-position: center !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
  }
  
  /* Mobile specific fixes */
  @media (max-width: 767px) {
    body, html {
      overflow-x: hidden !important;
    }
    
    #shopify-section-template--{{ section.id }},
    #mag-custom-{{ section.id }} {
      position: relative !important;
      width: 100% !important;
    }
    
    .mag-custom-1 .single-image-wrapper img {
      min-height: 100vh !important;
      min-height: 100dvh !important;
    }
  }
  
  .placeholder-banner {
    background: #f2f2f2 !important; 
    width: 100% !important; 
    height: 100vh !important;
    height: 100dvh !important;
    display: flex !important; 
    justify-content: center !important; 
    align-items: center !important;
  }
  
  .placeholder-banner p {
    font-size: 18px !important; 
    color: #666 !important; 
    line-height: 1.5 !important;
  }
/* END_SECTION:mag-custom-full */

/* START_SECTION:mag-custom1 (INDEX:52, SCOPED:FALSE) */
/* 1. BREAKOUT LOGIC: Forces section to edge of screen */
  {% unless section.settings.contained_width %}
    #mag-custom-full-{{ section.id }} {
      width: 100vw !important;
      position: relative !important;
      left: 50% !important;
      right: 50% !important;
      margin-left: -50vw !important;
      margin-right: -50vw !important;
    }
  {% endunless %}

  /* 2. MOBILE STYLING: Natural Ratio (No Zoom) */
  @media (max-width: 767px) {
    .mobile-img-container img {
      width: 100% !important;
      height: auto !important; /* This prevents the zoom effect */
      display: block !important;
    }
    
    #mag-custom-full-{{ section.id }} {
      margin-top: {{ section.settings.margin_top_mobile | default: 0 }}px !important;
      margin-bottom: {{ section.settings.margin_bottom_mobile | default: 0 }}px !important;
      padding: 0 !important;
    }
  }

  /* 3. DESKTOP STYLING: Full Screen Height */
  @media (min-width: 768px) {
    #mag-custom-full-{{ section.id }},
    .desktop-img-container,
    .desktop-img-container img {
      height: 100vh !important;
      min-height: 100vh !important;
      object-fit: cover !important;
    }

    #mag-custom-full-{{ section.id }} {
      margin-top: {{ section.settings.margin_top | default: 0 }}px !important;
      margin-bottom: {{ section.settings.margin_bottom | default: 0 }}px !important;
    }
  }

  /* 4. UTILITY */
  .d-none { display: none !important; }
  @media (min-width: 768px) { .d-md-none { display: none !important; } .d-md-block { display: block !important; } }
  @media (max-width: 767px) { .d-block { display: block !important; } }

  .placeholder-banner {
    background: #eee;
    height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
/* END_SECTION:mag-custom1 */

/* START_SECTION:mag-custom2 (INDEX:53, SCOPED:FALSE) */
.mag-custom-2 .box-img {
    padding-left: var(--side-padding, 20px);
    padding-right: var(--side-padding, 20px);
  }
  .mag-custom-2 .box-img img,
  .mag-custom-2 .box-img .placeholder-svg {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
  }

  @media (min-width: 992px) {
    .mag-custom-2 .container-v2 {
      max-width: var(--desktop-container-width, 90%);
      padding-left: 15px;
      padding-right: 15px;
    }
  }

  @media (max-width: 767px) {
    .mag-custom-2.mobile-compact {
      /* This rule will now correctly override the inline margin on mobile ONLY */
      margin: var(--mobile-compact-margin) 0 !important;
      padding: 0 !important;
    }
    
    .mag-custom-2.mobile-compact .box-img {
      padding: 0 !important;
    }
    
    .mag-custom-2.mobile-compact .section-banner-v6,
    .mag-custom-2.mobile-compact .lazyload,
    .mag-custom-2.mobile-compact .container,
    .mag-custom-2.mobile-compact .container-v2 {
      margin: 0 !important;
      padding: 0 !important;
    }
  }
/* END_SECTION:mag-custom2 */

/* START_SECTION:mag-custom3 (INDEX:54, SCOPED:FALSE) */
.mag-custom-3 .section-banner-v7 {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  .mag-custom-3 .banner-v7-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
  }
  .mag-custom-3 .banner-v7-background--mobile {
    display: none; /* Hidden by default */
  }
  .mag-custom-3 .banner-v7-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--overlay-color);
    opacity: var(--overlay-opacity);
  }
  .mag-custom-3 .content-banner {
    position: relative;
    max-width: var(--content-max-width);
    width: 100%;
    z-index: 2;
    text-align: var(--content-text-align);
  }
  .mag-custom-3 .content-banner__graphic {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 150%;
    height: 150%;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.1;
    z-index: -1;
  }
  .mag-custom-3 .title-banner {
    font-size: 2.8rem;
    font-weight: 300;
    text-transform: uppercase;
    line-height: 1.1;
    margin: 0 0 1rem 0;
  }
  .mag-custom-3 .content {
    font-size: 1rem;
    margin: 0 0 1.5rem 0;
  }
  .mag-custom-3 .button-banner {
    color: var(--color-btn);
    background-color: var(--bg-btn);
    padding: 12px 30px;
    display: inline-block;
    text-decoration: none;
    transition: color 0.3s, background-color 0.3s;
  }
  .mag-custom-3 .button-banner:hover {
    color: var(--color-btn-hover);
    background-color: var(--bg-btn-hover);
  }

  /* --- DESKTOP STYLES --- */
  @media (min-width: 769px) {
    .mag-custom-3 .section-banner-v7,
    .mag-custom-3 .banner-v7-content-wrapper {
      min-height: var(--desktop-height);
    }
    .mag-custom-3 .banner-v7-content-wrapper {
      display: flex;
      justify-content: var(--content-halign);
      align-items: var(--content-valign);
      padding: 3rem 0;
    }
    .mag-custom-3 .page-width {
      position: relative;
      z-index: 1;
      height: 100%;
    }
    .mag-custom-3 .banner-v7-background--desktop {
      background-position: var(--desktop-bg-position);
    }
  }

  /* --- MOBILE STYLES --- */
  @media (max-width: 768px) {
    .mag-custom-3 .section-banner-v7,
    .mag-custom-3 .banner-v7-content-wrapper {
      min-height: 500px;
    }
    .mag-custom-3 .banner-v7-content-wrapper {
      display: flex;
      justify-content: flex-start !important;
      align-items: var(--content-valign);
      padding: 2rem !important;
    }
    .mag-custom-3 .banner-v7-background--desktop {
      display: none !important;
    }
    .mag-custom-3 .banner-v7-background--mobile {
      display: block !important;
      background-position: center center;
    }
    .mag-custom-3 .title-banner {
      font-size: 2rem !important;
    }
    .mag-custom-3 .content-banner,
    .mag-custom-3 .content-banner .title-banner,
    .mag-custom-3 .content-banner .content {
      text-align: var(--content-text-align-mobile) !important;
    }

    /* --- MOBILE COMPACT MODE --- */
    .mag-custom-3.mobile-compact {
      margin: var(--mobile-compact-margin) 0 !important;
    }
  }
/* END_SECTION:mag-custom3 */

/* START_SECTION:mag-custom4 (INDEX:55, SCOPED:FALSE) */
/* --- Visibility Helper Classes --- */

  .mag-custom-4-carousel {
    width: 100%;
    padding-bottom: 40px;
  }

  .mag-custom-4-carousel .swiper-slide {
    height: auto;
  }

  .mag-custom-4-carousel .product-card {
    width: 100%;
  }

  .mag-custom-4 .swiper-pagination {
    position: relative !important;
    bottom: 10px !important;  
    margin-top: 10px;
    text-align: center !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }

  .mag-custom-4 .swiper-pagination .swiper-pagination-bullet {
    opacity: 1 !important;
    background: #ccc !important;
    width: 8px;
    height: 8px;
    margin: 0 4px !important;
  }

  .mag-custom-4 .swiper-pagination .swiper-pagination-bullet-active {
    background: #000 !important;
  }

  @media (min-width: 768px) {
    .hide--desktop {
      display: none !important;
    }
  }
  @media (max-width: 767px) {
    .hide--mobile {
      display: none !important;
    }
  }

  .mag-custom-4 .section-header {
    text-align: center;
    margin-bottom: 50px;
  }
  .mag-custom-4 .title-heading {
    display: inline-block;
    position: relative;
    font-family: helvetica;
    font-size: 2.25rem;
    font-weight: 600;
    letter-spacing: 0em;
    text-transform: uppercase;
    text-decoration: none;
    margin: 0 0 0.5rem 0;
    padding: 0.5rem 0;
  }
  .mag-custom-4 .title-heading::before,
  .mag-custom-4 .title-heading::after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #e0e0e0;
  }
  .mag-custom-4 .title-heading::before {
    top: 0;
  }
  .mag-custom-4 .title-heading::after {
    bottom: 0;
  }
  .mag-custom-4 .sub-heading {
    font-size: 1rem;
    font-weight: 600;
    font-family: helvetica;
    color: #6c757d;
  }
  .mag-custom-4 .product-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    align-items: start;
  }
  .mag-custom-4 .product-card {
    text-align: left;
  }
  .mag-custom-4 .product-card--placeholder {
    opacity: 0.6;
  }
  .mag-custom-4 .product-card__image-link {
    display: block;
    margin-bottom: 15px;
  }
  .mag-custom-4 .product-card__image-wrapper {
    position: relative;
    padding-top: 125%; /* Aspect ratio 4:5 */
    background-color: #f0f0f0;
    overflow: hidden;
  }
  .mag-custom-4 .product-card__image,
  .mag-custom-4 .product-card--placeholder .placeholder-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .mag-custom-4 .product-card__info a {
    text-decoration: none;
    color: inherit;
  }
  .mag-custom-4 .product-card__title {
    font-family: Helvetica;
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 5px 0;
  }
  .mag-custom-4 .product-card__price {
    font-family: Helvetica;
    font-size: 1rem;
    font-weight: 600;
    margin: 0;
  }

  /* --- Styles for the 3-product vertical layout on DESKTOP --- */
  @media (min-width: 992px) {
    .mag-custom-4.three-products-vertical .product-grid {
      grid-template-columns: 1fr;
      max-width: 35%;
      margin-left: auto;
      margin-right: auto;
      gap: 50px;
    }
    .mag-custom-4.three-products-vertical .product-item-column {
      margin-top: 0 !important;
    }
  }

  /* --- TABLET STYLES --- */
  @media (max-width: 991px) {
    .mag-custom-4 .product-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  
  /* --- MOBILE STYLES --- */
  @media (max-width: 767px) {
    /* Default is 2 columns for 1 or 2 products */
    .mag-custom-4 .product-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 15px;
    }

    /* --- MODIFICATION: For 3 products, display in a single, NARROWER column --- */
    .mag-custom-4.three-products-vertical .product-grid {
      grid-template-columns: 1fr;
      gap: 25px;
      max-width: 65%; /* This makes the column narrower than the screen */
      margin-left: auto; /* This centers the narrow column */
      margin-right: auto;
    }
    
    .mag-custom-4 .product-item-column {
      margin-top: 0 !important;
    }

    .mag-custom-4 .title-heading {
      font-size: var(--mobile-title-size, 1.8rem);
    }
    .mag-custom-4 .sub-heading {
      font-size: var(--mobile-subtitle-size, 0.9rem);
    }

    .mag-custom-4 .product-card__title,
    .mag-custom-4 .product-card__price {
      font-size: 0.85rem;
    }
    
    .mag-custom-4.mobile-compact {
      margin: var(--mobile-compact-margin) 0 !important;
    }
    
    .mag-custom-4.mobile-compact .section-header {
      margin-bottom: 20px;
    }
  }
/* END_SECTION:mag-custom4 */

/* START_SECTION:mag-custom5 (INDEX:56, SCOPED:FALSE) */
.custom-mag-5 {
    text-align: center;
    padding: 2rem 0;
  }
  .custom-mag-5 .container {
    max-width: 750px;
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
  }
  .custom-mag-5 .title-heading {
    font-size: 3.0rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin: 0 0 1rem 0;
  }
  .custom-mag-5 .content-info {
    line-height: 1.6;
    margin: 0 auto 2rem auto;
    max-width: 600px;
  }
  
  /* Desktop Button Styles */
  .custom-mag-5 .info-button {
    display: inline-block;
    font-size: 0.875rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    padding: 12px 35px;
    border: 1px solid transparent;
    color: var(--color-btn-text) !important;
    background-color: var(--color-btn-bg) !important;
    transition: all 0.3s ease;
  }
  .custom-mag-5 .info-button:hover {
    color: var(--color-btn-text-hover) !important;
    background-color: var(--color-btn-bg-hover) !important;
  }

  @media (max-width: 767px) {
    .custom-mag-5 .title-heading {
      font-size: var(--mobile-title-size, 2rem) !important;
    }
    .custom-mag-5 .content-info {
      font-size: var(--mobile-text-size, 1rem) !important; 
      width: var(--mobile-text-width) !important;
      max-width: 100%;
    }

    .custom-mag-5.mobile-compact {
      margin: var(--mobile-compact-margin) 0 !important;
      padding-top: 15px !important;
      padding-bottom: 15px !important;
    }

    /* Mobile Button Overrides */
    .custom-mag-5 .info-button {
      font-size: var(--mobile-btn-font-size) !important;
      padding: var(--mobile-btn-padding-y) var(--mobile-btn-padding-x) !important;
      color: var(--color-btn-text-mobile) !important;
      background-color: var(--color-btn-bg-mobile) !important;
    }
  }
/* END_SECTION:mag-custom5 */

/* START_SECTION:mag-custom7 (INDEX:58, SCOPED:FALSE) */
.mag-7__container {
    /* This centers the container on the page when a max-width is applied */
    margin-left: auto;
    margin-right: auto;
    /* This adds a little space on the sides on smaller screens to prevent touching the edge */
    padding-left: 20px;
    padding-right: 20px;
  }

  .mag-7__link-wrapper {
    display: block;
  }

  .mag-7__image {
    /* This makes the image responsive and scale down correctly */
    display: block;
    width: 100%;
    height: auto;
  }

  .mag-7__placeholder .placeholder-svg {
    display: block;
    width: 100%;
    height: auto;
  }
/* END_SECTION:mag-custom7 */

/* START_SECTION:separator (INDEX:103, SCOPED:FALSE) */
.separator-section {
    /* Mobile-first height */
    height: var(--mobile-height, 24px);
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .separator-line {
    display: block;
    width: 100%;
    margin: 0;
    border: none;
    height: var(--line-thickness, 1px);
    background-color: var(--line-color, #e5e5e5);
  }

  /* Desktop height */
  @media (min-width: 768px) {
    .separator-section {
      height: var(--desktop-height, 32px);
    }
  }
/* END_SECTION:separator */