/** Shopify CDN: Minification failed

Line 621:3 Unexpected "("

**/
/* ═══════════════════════════════════════════════════════════════════
   v3 Product builder MATS — wizard chrome
   Scoped under body.v3_product_builder_mats_steps (template suffix class).
   The .hMatType + gallery-switch rules at the end are copied verbatim from
   the v2 section's inline <style> so the mat-type chooser keeps its look.
   ═══════════════════════════════════════════════════════════════════ */

body.v3_product_builder_mats_steps {
  --v3-topbar-h: 48px;
  --v3-bottombar-h: 64px;
}

/* ── Step cards ─────────────────────────────────────────────────── */
body.v3_product_builder_mats_steps .v3-step {
  display: none;
  margin-bottom: 16px;
}
body.v3_product_builder_mats_steps .v3-step.active {
  display: flex;
}

body.v3_product_builder_mats_steps .v3-stepHead {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-bottom: 12px;
  margin-bottom: 14px;
  border-bottom: 1px solid #e6eaf6;
}
body.v3_product_builder_mats_steps .v3-stepNo {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #002060;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  transition: background .25s ease;
}
body.v3_product_builder_mats_steps .v3-stepNo.done {
  background: #1e9e4a;
}
body.v3_product_builder_mats_steps .v3-stepNo.err {
  background: #b80e12;
}
body.v3_product_builder_mats_steps .v3-stepTitle {
  margin: 0;
  font-size: 18px;
  font-weight: 900;
  color: #002060;
}
body.v3_product_builder_mats_steps .v3-stepBody {
  min-width: 0;
}

/* option rows: remove the redundant card-y border on the last group */
body.v3_product_builder_mats_steps .v3-stepBody .options .option:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 4px;
}

/* shake on failed gating */
@keyframes v3-shake {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-6px); }
  40% { transform: translateX(6px); }
  60% { transform: translateX(-4px); }
  80% { transform: translateX(4px); }
}
body.v3_product_builder_mats_steps .v3-step.error .v3-stepBody,
body.v3_product_builder_mats_steps .v3-step.error .v3-stepHead {
  animation: v3-shake .45s ease;
}

/* ── Wizard nav buttons (inside cards) ──────────────────────────── */
body.v3_product_builder_mats_steps .v3-nav {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 18px;
}
body.v3_product_builder_mats_steps .v3-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  padding: 13px 34px;
  border: 0;
  border-radius: 60px;
  cursor: pointer;
  transition: background .2s ease, color .2s ease, opacity .2s ease;
}
body.v3_product_builder_mats_steps .v3-btn.v3-next {
  background: #1e9e4a;
  color: #fff;
}
body.v3_product_builder_mats_steps .v3-btn.v3-prev {
  background: #c5cfe4;
  color: #111;
}
body.v3_product_builder_mats_steps .v3-btn:hover {
  background: #002060;
  color: #fff;
}
body.v3_product_builder_mats_steps .v3-btn[disabled] {
  opacity: .6;
  cursor: default;
}

/* ── Desktop: horizontal progress rail, above the options (≥64em) ── */
body.v3_product_builder_mats_steps .v3-railCol {
  margin: 0 0 18px;
}
body.v3_product_builder_mats_steps .v3-progress {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
}
body.v3_product_builder_mats_steps .v3-progress .steps {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  z-index: 1;
}
/* one continuous connector under the discs — it is drawn by the rail
   container itself so it always sits BEHIND every step disc */
body.v3_product_builder_mats_steps .v3-progress::before {
  content: "";
  position: absolute;
  top: 15px;
  left: 16px;
  right: 16px;
  height: 2px;
  background: #dde3f0;
}
body.v3_product_builder_mats_steps .v3-progress .stepNr {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #c5cfe4;
  color: #33415c;
  font-size: 14px;
  font-weight: 700;
}
body.v3_product_builder_mats_steps .v3-progress .steps.active .stepNr {
  background: #002060;
  border-color: #002060;
  color: #fff;
}
body.v3_product_builder_mats_steps .v3-progress .steps.done .stepNr {
  background: #1e9e4a;
  border-color: #1e9e4a;
  color: #fff;
}
body.v3_product_builder_mats_steps .v3-progress .stepText {
  font-size: 11px;
  line-height: 1.2;
  color: #55648a;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
body.v3_product_builder_mats_steps .v3-progress .steps.active .stepText {
  color: #002060;
  font-weight: 700;
}
body.v3_product_builder_mats_steps .v3-progress .steps.done .stepText {
  color: #1e9e4a;
}

/* ── Mobile: fixed top progress chips bar (<64em) ───────────────── */
@media screen and (max-width: 63.9375em) {
  body.v3_product_builder_mats_steps .v3-railCol {
    display: none;
  }

  body.v3_product_builder_mats_steps .v3-topbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 40;
    display: flex;
    align-items: stretch;
    height: var(--v3-topbar-h);
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 18, 60, .14);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity .25s ease, transform .25s ease, visibility .25s;
  }
  body.v3_product_builder_mats_steps.v3-topShown .v3-topbar {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  body.v3_product_builder_mats_steps .v3-chip {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    cursor: default;
    border-bottom: 3px solid transparent;
  }
  body.v3_product_builder_mats_steps .v3-chip.isNav {
    cursor: pointer;
  }
  body.v3_product_builder_mats_steps .v3-chip.active {
    border-bottom-color: #002060;
    background: rgba(0, 32, 96, .05);
  }
  body.v3_product_builder_mats_steps .v3-chipNr {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #e4e9f5;
    color: #33415c;
    font-size: 11px;
    font-weight: 700;
  }
  body.v3_product_builder_mats_steps .v3-chip.active .v3-chipNr {
    background: #002060;
    color: #fff;
  }
  body.v3_product_builder_mats_steps .v3-chip.done .v3-chipNr {
    background: #1e9e4a;
    color: #fff;
  }
  body.v3_product_builder_mats_steps .v3-chipTxt {
    min-width: 0;
    font-size: 11px;
    font-weight: 600;
    color: #55648a;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  body.v3_product_builder_mats_steps .v3-chip.active .v3-chipTxt {
    color: #002060;
    font-weight: 800;
  }
  body.v3_product_builder_mats_steps .v3-chip.done .v3-chipTxt {
    color: #1e9e4a;
  }

  /* clearance: product title sits below the fixed chips bar after the
     initial auto-scroll */
  body.v3_product_builder_mats_steps .prodTitle {
    margin-top: calc(var(--v3-topbar-h) + 14px);
  }

  /* ── Mobile: fixed bottom price/ATC bar ─────────────────────── */
  body.v3_product_builder_mats_steps .v3-bottombar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 60;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: var(--v3-bottombar-h);
    padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
    background: #fff;
    box-shadow: 0 -2px 12px rgba(0, 18, 60, .12);
  }
  body.v3_product_builder_mats_steps .v3-barPrice {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    min-width: 0;
    line-height: 1.1;
  }
  body.v3_product_builder_mats_steps .v3-barPriceVal {
    font-family: Poppins-Bold, sans-serif;
    color: #002060;
    font-size: 21px;
  }
  body.v3_product_builder_mats_steps .v3-barReg {
    color: #8a94ad;
    text-decoration: line-through;
    font-size: 13px;
    margin-left: 6px;
  }
  body.v3_product_builder_mats_steps .v3-barCta {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 13px 24px;
    border: 0;
    border-radius: 60px;
    background: #1e9e4a;
    color: #fff;
    font-size: 15px;
    font-weight: 800;
    cursor: pointer;
    transition: background .2s ease, opacity .2s ease;
    -webkit-tap-highlight-color: transparent;
  }
  body.v3_product_builder_mats_steps .v3-barCta:hover {
    background: #002060;
  }
  body.v3_product_builder_mats_steps .v3-barCta[disabled] {
    opacity: .6;
    cursor: default;
  }

  /* mobile: the canonical blue ATC is kept on the final step card,
     next to the fixed bottom bar */
  /* keep content clear of the two fixed bars */
  body.v3_product_builder_mats_steps main {
    padding-bottom: calc(var(--v3-bottombar-h) + 24px + env(safe-area-inset-bottom));
  }
}

/* scroll anchoring off inside the wizard so our delta scrolls win */
body.v3_product_builder_mats_steps .prodContent {
  overflow-anchor: none;
}

/* ── Desktop: hide the mobile bars ─────────────────────────────── */
@media screen and (min-width: 64em) {
  body.v3_product_builder_mats_steps .v3-topbar,
  body.v3_product_builder_mats_steps .v3-bottombar {
    display: none;
  }
}

/* ── Swatch slider rows: one row, snap scroll, no scrollbar ─────── */
body.v3_product_builder_mats_steps .option-values.v3-swatches {
  display: flex;
  flex-wrap: nowrap !important;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  padding: 2px 2px 8px;
}
body.v3_product_builder_mats_steps .option-values.v3-swatches::-webkit-scrollbar {
  display: none;
}
body.v3_product_builder_mats_steps .option-values.v3-swatches .option-value {
  flex: 0 0 auto;
  scroll-snap-align: start;
}

/* ── Option description "i" buttons + popovers ──────────────────── */
body.v3_product_builder_mats_steps .v3-infoWrap {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 4px;
}
body.v3_product_builder_mats_steps .v3-info {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 1.5px solid #002060;
  border-radius: 50%;
  background: transparent;
  color: #002060;
  font-size: 12px;
  font-weight: 900;
  font-style: normal;
  line-height: 1;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
  -webkit-tap-highlight-color: transparent;
}
body.v3_product_builder_mats_steps .v3-info:hover {
  background: #002060;
  color: #fff;
}
body.v3_product_builder_mats_steps .v3-infoPop {
  position: fixed;
  z-index: 90;
  width: max-content;
  max-width: min(78vw, 320px);
  background: #0f2652;
  color: #fff;
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  box-shadow: 0 6px 22px rgba(0, 10, 40, .25);
  pointer-events: none;
}
body.v3_product_builder_mats_steps .v3-infoPop::after {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 16px;
  border: 6px solid transparent;
  border-bottom-color: #0f2652;
}

/* ── Finalize step summary ──────────────────────────────────────── */
body.v3_product_builder_mats_steps .v3-summary {
  background: #f4f6fc;
  border: 1px solid #e6eaf6;
  border-radius: 10px;
  padding: 12px 14px;
  margin-bottom: 14px;
}
body.v3_product_builder_mats_steps .v3-sumRow {
  margin: 3px 0;
  font-size: 13.5px;
  color: #33415c;
}
body.v3_product_builder_mats_steps .v3-sumRow strong {
  color: #002060;
  font-weight: 700;
}
body.v3_product_builder_mats_steps .v3-submitZone {
  margin-top: 14px;
}

/* engine #productTitle (set when the car chain completes) */
body.v3_product_builder_mats_steps #productTitle {
  color: #002060;
  font-weight: 800;
  margin: 0 0 10px;
}

/* mat chooser strip refinements (over the v2 tail below) */
body.v3_product_builder_mats_steps .hMatType {
  display: flex !important;
  flex-wrap: wrap;
  gap: 14px;
}
body.v3_product_builder_mats_steps .hMatType .option-value {
  flex: 1 1 220px;
  width: auto !important;
  margin-bottom: 0 !important;
}
body.v3_product_builder_mats_steps .hMatType .option-value a {
  height: 96px !important;
  padding: 0 0 0 46% !important;
}
@media screen and (max-width: 39.9375em) {
  body.v3_product_builder_mats_steps .hMatType .option-value {
    flex: 1 1 100%;
  }
}

/* ── Reduced motion ─────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  body.v3_product_builder_mats_steps .v3-step.error .v3-stepBody,
  body.v3_product_builder_mats_steps .v3-step.error .v3-stepHead {
    animation: none;
  }
  body.v3_product_builder_mats_steps .v3-topbar,
  body.v3_product_builder_mats_steps .v3-chip,
  body.v3_product_builder_mats_steps .v3-btn,
  body.v3_product_builder_mats_steps .v3-barCta {
    transition: none;
  }
  html {
    scroll-behavior: auto !important;
  }
}

/* ═══════════════════════════════════════════════════════════════════
/* ── v3 polish: compact title + compact form ───────────────────── */
body.v3_product_builder_mats_steps .prodTitle h1.product-title {
  font-size: 18px;
  line-height: 1.25;
}
body.v3_product_builder_mats_steps .car-details label {
  margin-bottom: 0;
}
body.v3_product_builder_mats_steps .car-details label select {
  padding: 8px 10px;
}
body.v3_product_builder_mats_steps .car-details label .error {
  padding: 2px 5px;
}

/* hide the GetConnect chat widget (floats over the sticky bars) on this page */
body.v3_product_builder_mats_steps #gcn-floating-button-host-k74mv3,
body.v3_product_builder_mats_steps [id^="gcn-floating-button-host"] {
  display: none !important;
}

/* ── Swatch rows: right-edge affordance when colors overflow ────── */
body.v3_product_builder_mats_steps .v3-swatchWrap {
  position: relative;
  display: block;
}
body.v3_product_builder_mats_steps .v3-swatchWrap::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 8px;
  right: 0;
  width: 30px;
  background: linear-gradient(to left, #ffffff, rgba(255, 255, 255, 0));
  pointer-events: none;
  display: none;
  z-index: 1;
}
body.v3_product_builder_mats_steps .v3-swatchWrap.v3-scrollable::after {
  display: block;
}
body.v3_product_builder_mats_steps .v3-swatchWrap.v3-atEnd::after {
  display: none;
}
body.v3_product_builder_mats_steps .v3-swatchArrow {
  position: absolute;
  right: 2px;
  top: 50%;
  transform: translateY(-50%);
  width: 26px;
  height: 26px;
  display: none;
  align-items: center;
  justify-content: center;
  border: 1.5px solid #002060;
  border-radius: 50%;
  background: #fff;
  color: #002060;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  padding: 0 0 2px;
  cursor: pointer;
  box-shadow: 0 1px 5px rgba(0, 18, 60, .18);
  z-index: 2;
}
body.v3_product_builder_mats_steps .v3-swatchWrap.v3-scrollable .v3-swatchArrow {
  display: inline-flex;
}
body.v3_product_builder_mats_steps .v3-swatchWrap.v3-atEnd .v3-swatchArrow {
  opacity: .25;
  pointer-events: none;
}
body.v3_product_builder_mats_steps .option-values.v3-swatches {
  padding-right: 34px;
}

/* final step: the ATC sits tight under the summary/price on mobile */
@media screen and (max-width: 63.9375em) {
  body.v3_product_builder_mats_steps .v3-submitZone {
    margin-top: 0;
  }
  body.v3_product_builder_mats_steps .v3-submitZone .add-to-cart {
    margin-top: 0;
  }
}

/* step cards compact enough on mobile that gallery + card + nav fit at rest */
@media screen and (max-width: 63.9375em) {
  body.v3_product_builder_mats_steps .v3-step {
    padding: 12px 12px 10px;
  }
  body.v3_product_builder_mats_steps .v3-stepHead {
    padding-bottom: 10px;
    margin-bottom: 10px;
  }
  body.v3_product_builder_mats_steps .v3-stepTitle {
    font-size: 16px;
  }
  body.v3_product_builder_mats_steps .v3-nav {
    margin-top: 10px;
  }
  body.v3_product_builder_mats_steps .v3-btn {
    padding: 12px 28px;
  }
  body.v3_product_builder_mats_steps .v3-stepBody .options .option {
    margin-bottom: 12px;
    padding-bottom: 12px;
  }
  body.v3_product_builder_mats_steps .product-builder .option-title {
    margin-bottom: 10px;
  }
}

   (tail copied verbatim from the v2 section inline <style>)
   ═══════════════════════════════════════════════════════════════════ */
    .hMatType .option-value{
        display:block;
        margin-bottom:10px;
        width:100%;
        border-radius:0;
        border:0 !important;
    }

    .hMatType .option-value a{
        display: flex;
        align-items: center;
        flex-direction: column;
        width:100%;
        border-radius:15px;
        border:3px #ccc solid !important;
        height:115px;
        background-color:#fff !important;
        background-repeat:no-repeat !important;
        background-position:0 0;
        background-size:auto 100%;
        padding:0 0 0 70% !important;
        justify-content: center; /* Vertically centers the content if the link has a set height */
        align-items: flex-start;
    }

    .hMatType .option-value .black-friday-badge {
        margin: 5px 0 0;
    }

    .hMatType > .option-value:nth-child(1) a{
        background-image:url("/cdn/shop/files/menu-standard.jpg?v=1755688481") !important;
    }

    .hMatType > .option-value:nth-child(2) a{
        background-image:url("/cdn/shop/files/menu-lux.jpg?v=1755688481") !important;
    }

    .hMatType > .option-value:nth-child(3) a{
        background-image:url("/cdn/shop/files/menu-urban_050857d9-4344-4bad-aa2d-a5571118e12e.jpg?v=1756106526") !important;
    }

    .hMatType .option-value a.checked{
        background-color:#fff!important;
        border-color:#002060 !important;
    }

    .hMatType .option-value a span{
        display:block;
        width:100%;
        line-height:1em;
        background:#fff;
    }

    .hMatType .option-value a span.title{
        font-size: 24px;
        font-family: Poppins-Bold;
        color: #000;
        margin-bottom: 5px;
    }

    .hMatType .option-value a span.oldPrice{
        text-decoration: line-through;
        font-size: 18px;
        color: #b2b8ca;
        margin-bottom: 5px;
    }

    .hMatType .option-value a span.newPrice{
        color:#002060;
        font-size:18px;
    }

    @media print, screen and (max-width: 40em) {
        .hBuildBox > .s12{
            margin:0;
            width:100%;
        }
        .hMatType .option-value.box{
            padding:0;
        }
        .hMatType .option-value a{
            background-position:-120px 0 !important;
            padding-left:60%!important;
        }

    }

    @media print, screen and (min-width: 40em) and (max-width:70em) {
        .hMatType .option-value a{
            background-position:-100px 0 !important;
            padding-left:60%!important;
        }
    }



    /* Mobile: the v2 gallery slider (v2_product_gallery snippet) replaces the desktop media slots */
    @media screen and (min-width: 64em) {
        .builder-mobile-gallery {
            display: none;
        }
    }
    @media screen and (max-width: 63.9375em) {
        .prodImgs .images {
            display: none !important;
        }
    }

/* Upsell offer — checkbox (rendered above the ATC when the product config
   has an upsell option; ticked → the ATC also adds the tunel cover) */
body.v3_product_builder_mats_steps .upsell-offer {
  margin: 14px 0 0;
  padding: 14px 16px;
  background: #f2faf2;
  border: 1px solid #9fce9b;
  border-radius: 8px;
}
body.v3_product_builder_mats_steps .upsell-offer__label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  cursor: pointer;
}
body.v3_product_builder_mats_steps .upsell-offer__checkbox {
  flex: none;
  width: 20px;
  height: 20px;
  margin: 2px 0 0;
  accent-color: #3e9b39;
  cursor: pointer;
}
body.v3_product_builder_mats_steps .upsell-offer__text {
  margin: 0;
  font-size: 15px;
  line-height: 1.45;
  color: #1c3d1a;
}
body.v3_product_builder_mats_steps .upsell-offer__price {
  flex: none;
  margin-left: auto;
  padding-left: 12px;
  font-weight: 700;
  white-space: nowrap;
  color: #2e7d2a;
}
