/** Shopify CDN: Minification failed

Line 282:6 Comments in CSS use "/* ... */" instead of "//"
Line 286:8 Comments in CSS use "/* ... */" instead of "//"
Line 287:8 Comments in CSS use "/* ... */" instead of "//"
Line 531:8 Comments in CSS use "/* ... */" instead of "//"
Line 627:6 Comments in CSS use "/* ... */" instead of "//"
Line 628:6 Comments in CSS use "/* ... */" instead of "//"
Line 2590:8 Comments in CSS use "/* ... */" instead of "//"
Line 2775:2 Comments in CSS use "/* ... */" instead of "//"
Line 2782:2 Comments in CSS use "/* ... */" instead of "//"
Line 2788:2 Comments in CSS use "/* ... */" instead of "//"
... and 16 more hidden warnings

**/
/* Dylan Smith Styling */
#pline_header {
  display: flex;
  flex-direction: column;
}
html {
  overflow-x: hidden !important;
}

div#klevu-pt-rs-hover {
  /* ! Forcing Klevu position hover button in the proper place; New theme change and stylings broke this for some odd reason. */
  top: 55px !important;
}

@media screen and (min-width: 1000px) {
  section[data-section-type="cart"] {
    height: 675px;
  }
}

/* Screen Readers */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
/* End of Screen Readers */

/* Form Stylings - Pline */
.pline-input {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  box-sizing: border-box;
  font-size: 1em;
  color: #404040;
  background-color: #f4f4f4;
  transition: 0.3s;
}
.pline-input:hover {
  background-color: #ededed;
}
.pline-input:focus {
  border: 1px solid #4785cf;
  background-color: white;
}
/* End of Form Stylings - Pline */

/* Padding Presets */
.p-1 {
  padding: 16px;
}
.py-1 {
  padding-top: 16px;
  padding-bottom: 16px;
}
/* End of Dylan Smith Styling */

/* Color Swatches for Merch */
:root {
  --cs-pepper: #575855;
  --cs-heatherdust: #e2dacf;
  --cs-mintgreen: #00cad1;
  --cs-militarygreen: #626d3a;
  --cs-heathernavy: #5a6896;
  --cs-darkheather: #3e3e3e;
  --cs-sand: #e2dacf;
  --cs-pebbleblue: #0088d8;
  --cs-navy: #2f445b;
  --cs-graphiteheather: #7f7f81;
  --cs-forest: #27423a;
  --cs-athleticheather: #a8a8a6;
  --cs-natural: #e2dacf;
  --cs-mineralblack: #3e3e3e;
  --cs-heathernavy: #616479;
  --cs-sportgrey: #b1b1b3;
  --cs-charcoal: #3e3e3e;
}
/* End of Color Swatches */

#shopify-section-sections--14762433871977__9a42b08d-ed85-4a83-866e-71522d156506
  .section {
  margin: 0;
}

/*================ page.privacy-policy.liquid ================*/
.page-privacy-policy {
  color: #404040;
  line-height: 20px;

  h3 {
    color: #4785cf;
    font-weight: 700;
  }

  ul {
    padding-left: 25px;

    li {
      list-style-type: disc;
    }
  }
}
/*================ page.pictureline-pros.liquid ================*/
.page-pictureline-pros {
}

/*================ page.financing.liquid ================*/
.page-financing {
  color: #404040;
  font-size: 1.2em;

  h1 {
    font-weight: 700;
  }
  h2 {
    color: black;
  }

  .how-affirm-works {
    display: flex;
    padding: 20px 0;
    background-color: #eee;
    margin: 40px 0;

    .affirm-step {
      width: 25%;
      display: flex;
      flex-direction: column;
      align-items: center;
      padding: 10px;

      .step-number {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        background-color: #0fa0ea;
        color: white;
        font-size: 1.3em;
        font-weight: 700;
        border-radius: 50%;
        margin-bottom: 15px;
      }
      .step-description {
        display: flex;
        flex-direction: column;
        align-items: center;

        strong {
          text-transform: uppercase;
        }

        p {
          text-align: center;
          margin-top: 15px;
        }
      }
    }
  }

  .tbl-container {
    width: 60%;
    margin: 40px auto;

    .tbl-row {
      display: flex;
      width: 100%;
      height: 40px;

      &:nth-child(odd) {
        background-color: #eee;
      }

      &.tbl-header {
        height: 50px;
        font-weight: 700;
        background-color: lightgray;
      }
    }
    .tbl-cell {
      width: 40%;
      display: flex;
      align-items: center;
      justify-content: center;

      &:first-of-type {
        width: 30%;
      }
      &:last-of-type {
        width: 30%;
      }
    }
  }

  ul {
    padding-left: 25px;
    margin-bottom: 30px;

    strong {
    }
    li {
      list-style-type: disc;
      line-height: 20px;
      margin: 10px 0;
    }
  }

  .disclosure {
    width: 70%;
    font-size: 0.8em;
    color: #999;
    margin: 20px auto;
    text-align: center;
  }
}
/*================ page.corporate.liquid ================*/
.page-corporate {
}

/*================ page.edu.liquid ================*/
.page-edu {
}

/*================ page.pictureline-pros.liquid ================*/
.page-pictureline-pros {
  .pro-description {
    text-align: center;
    width: 80%;
    margin: 0 auto 30px;

    @media all and (max-width: 50px) {
      width: 100%;
    }

    h1 {
      display: block;
      font-size: 2em;
    }
    p {
      color: #555;
      font-size: 1.1rem;
      line-height: 18px;
    }
  }

  .pro-grid {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;

    @media all and (max-width: 720px) {
      justify-content: space-around;
    }

    .pro {
      display: flex;
      flex-direction: column;
      align-items: center;
      // width: 20%;
      margin: 0 10px 20px;

      a {
        // width: 200px;
        // height: 200px;
        display: inline-block;

        &:hover img {
          opacity: 0.9;
        }

        img {
          background-color: white;
          width: 200px;
          height: 200px;
        }
        span {
          font-weight: 700;
          margin-bottom: 10px;
        }
      }
    }

    .pro-placeholder {
      height: 200px;
      width: 200px;
      margin: 0 10px 20px;
    }
  }
}

.pro-modal {
  cursor: pointer;
  transition: 0.3s;
}

.pro-modal:hover {
  opacity: 0.7;
}

/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  padding-top: 8rem; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0, 0, 0); /* Fallback color */
  background-color: rgba(0, 0, 0, 0.9); /* Black w/ opacity */
}

/* Modal Content (image) */
.modal-content {
  margin: auto;
  display: block;
  max-height: 80%;
  max-width: 90%;
}

/* Add Animation */
.modal-content {
  -webkit-animation-name: zoom;
  -webkit-animation-duration: 0.6s;
  animation-name: zoom;
  animation-duration: 0.6s;
}

@-webkit-keyframes zoom {
  from {
    -webkit-transform: scale(0);
  }
  to {
    -webkit-transform: scale(1);
  }
}

@keyframes zoom {
  from {
    transform: scale(0);
  }
  to {
    transform: scale(1);
  }
}

/* The Close Button */
.close {
  position: absolute;
  top: 4rem;
  right: 2rem;
  color: #f1f1f1;
  font-size: 40px;
  font-weight: bold;
  transition: 0.3s;
}

.close:hover,
.close:focus {
  color: #bbb;
  text-decoration: none;
  cursor: pointer;
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 700px) {
  .modal-content {
    width: 100%;
  }
}

/*================ page.pro-template.liquid ================*/
.page-pro-template {
  .pro-header {
    display: flex;
    justify-content: space-between;
    align-items: center;

    .pro-name {
      margin-top: 10px;

      h1 {
        text-transform: uppercase;
        font-size: 2em;
        font-weight: 700;
        display: inline;
        margin-right: 10px;
        color: #404040;

        @include media-query($small-down) {
          display: block;
        }
      }
      .location {
        text-transform: uppercase;
        font-size: 1em;
        font-weight: 400;
        display: inline;
        color: #888;

        @include media-query($small-down) {
          display: block;
        }
      }
    }

    .pro-links {
      a {
        margin-right: 10px;

        .icon {
          width: 22px;
          height: 22px;
          fill: darkgray;
        }

        &:last-of-type {
          margin-right: 0;
        }

        &:hover .icon {
          fill: #404040;
        }
      }
    }
  }

  .header-image {
    position: relative;

    .hero-artwork {
    }
    .head-shot {
      position: absolute;
      top: 15px;
      left: 20px;
      height: 200px;
      border-radius: 50%;
      border: 5px solid white;

      @include media-query($small-down) {
        position: relative;
        display: block;
        height: 150px;
        top: 0;
        left: 0;
        margin: 20px auto;
      }
    }
  }

  .schtuff-container {
    display: flex;
    justify-content: space-between;
    margin-top: 15px;
    width: 100%;

    @include media-query($small-down) {
      flex-direction: column;
    }

    .about-pro {
      padding: 20px;
      background-color: #f4f4f4;
      width: 48%;

      color: #555;
      font-size: 1.1rem;
      line-height: 20px;

      @include media-query($small-down) {
        padding: 50px 20px 20px;
        margin-top: -60px;
        width: 100%;
      }

      .quote {
        font-size: 1.5em;
      }
      .biography {
        margin-bottom: 0px;
      }
    }

    .podcast {
      display: flex;
      align-items: center;
      flex-direction: column;
      width: 48%;

      @include media-query($small-down) {
        width: 100%;
        margin-top: 30px;
      }

      .hr {
        height: 20px;
        width: 100%;
        border-bottom: 1px solid #999;
      }

      img {
        max-height: 40px;
        margin-bottom: 10px;

        // For HR behind logo
        width: auto;
        margin-bottom: 10px;
        margin-top: -20px;
        background-color: white;
        padding: 0 10px;
        box-sizing: content-box;
      }

      iframe {
        align-self: flex-end;
      }
    }
  }

  .pro-section-header {
    clear: both;

    padding: 15px;
    font-size: 1.4em;
    font-weight: 700;
    background-color: #f4f4f4;
    color: #404040;
    border-bottom: 3px solid #404040;
    margin: 30px 0;
  }

  .whats-in-my-bag-collection {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;

    .item {
      width: 20%;
      padding: 20px;

      @media all and (min-width: 991px) {
        width: 20%;
      }
      @media all and (min-width: 701px) and (max-width: 990px) {
        width: 33%;
      }
      @media all and (min-width: 551px) and (max-width: 700px) {
        width: 50%;
      }
      @media all and (max-width: 550px) {
        width: 100%;
      }

      a {
        display: flex;
        flex-direction: column;
        align-items: center;
        height: 100%;

        .product-image {
          display: flex;
          align-items: center;
          flex-grow: 1;
          margin-bottom: 10px;

          img {
            max-width: 120px;
            max-height: 120px;
          }
        }

        .vert-spacer {
          flex: 1;
        }

        .product-title {
          height: 30px;
          text-align: center;
          color: #777;
        }
      }

      a:hover .product-title {
        color: #404040;
      }
    }
  }

  .pro-gallery {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;

    .image {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 30%;
      // max-height: 400px;
      // background-color: #EEE;
      margin-bottom: 50px;

      @include media-query($small-down) {
        width: 100%;
      }
    }
  }
}
/*================ page.podcasts.liquid ================*/
.page-podcasts {
  .podcast-logo {
    text-align: center;
    margin-bottom: 50px;
  }

  iframe {
    margin-bottom: 20px;
  }
}
/*================ page.affiliate.liquid ================*/
.page-affiliate {
  .banner {
    margin-bottom: 25px;
  }

  .left-col {
    padding-right: 50px;
    p {
      line-height: 20px;
    }
  }

  .right-col {
    display: flex;
    align-items: center;
    flex-direction: column;

    .btn {
      display: flex;
      align-items: center;
      justify-content: center;
      text-transform: uppercase;
      border: none;
      background-color: #b72025;
      font-weight: 700;
      width: 100%;
      height: 40px;
      border-radius: 5px;
      color: white;
      margin-top: 5px;
      width: 100%;
    }
  }
}

/*================ pages.Digitalfest.liquid  ================*/
#shopify-section-template--14786692153449__711f0192-d44f-4bb4-9d7d-20975171ebbd
  .section {
  margin: 0;
}
.HeaderImage {
  background-image: url(/cdn/shop/files/digitalfest-desktop-banner.jpg?v=1693882012);
}
.DigiScheduleContainer {
  padding: 30px 0;
  display: flex;
  flex-direction: row;
  justify-content: left;
}
.digiCalendar {
  padding-right: 30px;
  width: 329px;
}

.DigiSpeakerContainer {
  padding: 30px 0;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: flex-start;
  flex-wrap: wrap;
}
.DigiClassContainer {
  padding: 30px 0;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: flex-start;
  flex-wrap: wrap;
}
.digiClasses {
  width: 21%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.digimobile {
  display: none;
}
.digiSpeaker {
  width: 45%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
@media screen and (max-width: 480px) {
  .digiDesktop {
    display: none;
  }
  .digimobile {
    display: inline-block;
  }

  .digiSpeaker {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
  }
  .digiSpeaker img {
    width: 100%;
    height: auto;
  }

  .digiClasses img {
    width: 100%;
  }
  .digiClasses {
    width: 45%;
  }
}

.digiClasses img {
  width: 100%;
  height: auto;
}

.digiSpeaker img {
  width: 100%;
  height: auto;
}
.digiContainer img {
  height: 100px;
  margin-bottom: 0px;
}
.digiContainer {
  padding: 30px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.digiHeaderTitle {
  margin: 7px;
  color: #fff;
  font-family: var(--heading-font-family);
  font-size: 65px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.digiSubHeading {
  color: #fff;
  text-align: center;
  font-family: var(--heading-font-family);
  font-size: 19px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  margin: 10px 0;
}

.digiSubHeading span {
  color: #bb2f34;
  font-family: var(--heading-font-family);
  font-size: 19px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
.digiHeaderDate {
  margin-top: 0px;
  color: #fff;
  text-align: center;
  font-family: var(--heading-font-family);
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}
.digiHeaderLocation {
  color: #fff;
  text-align: center;
  font-family: var(--heading-font-family);
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/*================ pages.Digitalfest.liquid  ================*/
.wrapper {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 30px;
}
.clearfix {
  clear: both;
}

@media only screen and (max-width: 600px) {
  .small--hide {
    display: none;
  }
}

.card {
  border: none;
}
.card__section {
  border: none !important;
}

.specs-table {
  width: 100%;
  margin-bottom: 40px;
  border-collapse: collapse;
}

.specs-th {
  font-size: 1.4em;
  color: #297baf;
  text-transform: uppercase;
}
.specs-td-title {
  font-weight: 700;
  padding-right: 20px;
  vertical-align: top;
  font-size: 1.1em;
  width: 50%;
}
.specs-td-text {
  font-weight: 400;
  font-size: 1.1em;
  width: 50%;
  padding: 10px 0;
}

.pictureline-card-title {
  display: block;
  padding: 5px 0;
  margin-bottom: 4px;
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 600;
  color: rgba(64, 64, 64, 0.6) !important;
}

/*================ Product-meta.liquid ================*/
.in-stock {
  align-self: flex-start;
  display: flex;
  align-items: center;
  color: #00ad60;
  font-size: 1.2em;
  font-weight: 700;
}
.icon-box-checkmark {
  fill: #00ad60;
  width: 25px;
  height: 25px;
  margin-right: 5px;
}
/*================ Event-product.item ================*/
.external-registration,
.free-event {
  border: 2px solid #999;
  color: #999;
  background: #fff;
  height: 40px;
  line-height: 40px;
}
.cursor-disabled {
  cursor: not-allowed;
}
/*================ page.hours-location.liquid ================*/
.page-hours-location h1 {
  font-weight: 800;
  color: #404040;
  text-transform: uppercase;
  background: #fff;
}
.page-hours-location img {
  width: 48%;
  float: left;
  margin-bottom: 30px;
}
@media all and (max-width: 600px) {
  .page-hours-location img {
    float: unset;
    width: 100%;
  }
}
.page-hours-location .hours-section {
  width: 48%;
  float: right;
}
@media all and (max-width: 600px) {
  .page-hours-location .hours-section {
    float: unset;
    width: 100%;
  }
}
.page-hours-location .hours-section .hours-details {
  background-color: #f6f6f6;
  padding: 20px;
  margin-bottom: 20px;
}
.page-hours-location .hours-section .hours-details h3 {
  font-size: 1.4em;
  margin-bottom: 10px;
}
.page-hours-location .hours-section .hours-details h4 {
  width: 100%;
  border-bottom: 2px solid darkgray;
  padding: 5px 0;
  margin-bottom: 8px;
}
.page-hours-location .hours-section .hours-details .hours-block {
  line-height: 20px;
  margin-bottom: 10px;
}
.page-hours-location .hours-section .hours-details .hours-block .hours-title {
  font-weight: 700;
}
.page-hours-location .hours-section .hours-details .hours-block .message {
  color: #999;
}
.page-hours-location .hours-section .hours-details .hours-block.holidays {
  color: #b72025;
}
.page-hours-location .google-map {
  clear: both;
}
/*================page.blogs.liquid ================*/
#blog-most-recent-featured {
  display: flex;
  color: white;
  width: 100%;
  height: 570px;
  margin-bottom: 30px;
}
@media all and (max-width: 750px) {
  #blog-most-recent-featured {
    flex-direction: column;
    height: 1140px;
  }
}
#blog-most-recent-featured .latest-article {
  width: 50%;
  height: 100%;
}
@media all and (max-width: 750px) {
  #blog-most-recent-featured .latest-article {
    width: 100%;
    height: 50%;
  }
}
@media all and (max-width: 550px) {
  #blog-most-recent-featured .latest-article {
    height: 20%;
  }
}
#blog-most-recent-featured .latest-article a {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
#blog-most-recent-featured .other-most-recent-articles {
  display: flex;
  flex-wrap: wrap;
  width: 50%;
  height: 100%;
}
@media all and (max-width: 750px) {
  #blog-most-recent-featured .other-most-recent-articles {
    width: 100%;
    height: 50%;
  }
}
@media all and (max-width: 550px) {
  #blog-most-recent-featured .other-most-recent-articles {
    flex-direction: column;
    flex-wrap: nowrap;
    height: 80%;
  }
}
#blog-most-recent-featured .other-most-recent-articles a {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 50%;
  height: 50%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
@media all and (max-width: 550px) {
  #blog-most-recent-featured .other-most-recent-articles a {
    width: 100%;
    height: 100%;
  }
}
#blog-most-recent-featured .meta-content {
  padding: 15px;
  background-color: rgba(50, 50, 50, 0.8);
}
#blog-most-recent-featured .meta-content .article-author {
  text-transform: uppercase;
}

#blog-post {
  display: flex;
  align-items: stretch;
  width: 100%;
  border-bottom: 3px solid #ccc;
  padding: 30px;
  background-color: #fafafa;
  margin-bottom: 30px;
}
#blog-post:first-of-type {
  margin-top: 15px;
}
#blog-post:hover {
  background-color: #f2f2f2;
  cursor: pointer;
}
@media all and (max-width: 750px) {
  #blog-post {
    flex-direction: column;
  }
}
#blog-post a {
  text-decoration: none;
  color: inherit;
}
#blog-post a:hover,
#blog-post a:active {
  text-decoration: none;
  color: inherit;
}
#blog-post .left-container {
  display: flex;
  margin-right: 40px;
}
@media all and (max-width: 750px) {
  #blog-post .left-container {
    margin-right: 0;
  }
}
#blog-post .left-container.has-image {
  margin-right: 40px;
}
@media all and (max-width: 750px) {
  #blog-post .left-container.has-image {
    margin-right: 0;
  }
}
#blog-post .left-container img {
  max-width: 175px;
  max-height: 175px;
}
@media all and (max-width: 750px) {
  #blog-post .left-container img {
    margin-bottom: 20px;
  }
}
@media all and (max-width: 550px) {
  #blog-post .left-container img {
    min-width: 100%;
  }
}
#blog-post .right-container {
  display: flex;
  flex-direction: column;
  font-size: 1.1rem;
}
#blog-post .right-container .blog-title .article-title {
  font-size: 1.7em;
  color: #000000;
}
#blog-post .right-container .blog-meta .excerpt {
  font-size: 1.2em;
  padding: 7px 0 2px;
  color: #888;
}
#blog-post .right-container .blog-meta .blog-author-date {
  margin-bottom: 8px;
  color: #888;
}
#blog-post .right-container .blog-meta .blog-author-date .by {
  font-size: 0.8em;
  text-transform: uppercase;
}
#blog-post .right-container .blog-meta .blog-author-date .article-author {
  font-size: 0.8em;
  text-transform: uppercase;
  color: #202020;
}
#blog-post .right-container .blog-meta .blog-author-date .published-date {
  font-size: 0.8em;
  text-transform: uppercase;
}
#blog-post .right-container .blog-brief {
  color: #555;
  font-size: 1.1rem;
  line-height: 18px;
}
#blog-post .right-container .flex-spacer {
  flex: 1;
}
#blog-post .right-container .blog-buttons .blog_handle {
  display: inline-block;
  margin-top: 10px;
  margin-right: 10px;
  padding: 10px 15px;
  background-color: #404040;
  border-radius: 2px;
  color: white;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 0.9em;
  color: #f37200;
}
#blog-post .right-container .blog-buttons .read-more {
  display: inline-block;
  margin-top: 10px;
  padding: 10px 15px;
  background-color: #ccc;
  border-radius: 2px;
  color: #404040;
}
#blog-post .right-container .blog-buttons .read-more:hover {
  color: #000000;
}

.pagination-summary {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 20px 0 10px;
  color: #bbb;
}

.pagination-bar {
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  background-color: #f8f8f8;
  padding: 0 15px;
  border: 1px solid #eee;
}
.pagination-bar li {
  display: inline-block;
  margin: 0 10px;
}
.pagination-bar li a,
.pagination-bar li a:active,
.pagination-bar li a:visited {
  color: #404040;
}
.pagination-bar li a .icon,
.pagination-bar li a:active .icon,
.pagination-bar li a:visited .icon {
  fill: #404040;
}
.pagination-bar li.active {
  color: #404040;
  font-size: 1.2em;
  font-weight: 700;
  border-bottom: 1px solid #404040;
}
.pagination-bar li.disabled .icon {
  fill: #bbb;
}

.beer-slider {
  display: inline-block;
  position: relative;
  overflow: hidden;
}
.beer-slider *,
.beer-slider:before,
.beer-slider:after,
.beer-slider *:before,
.beer-slider *:after {
  box-sizing: border-box;
}
.beer-slider img,
.beer-slider svg {
  vertical-align: bottom;
}
.beer-slider > img {
  max-width: 100%;
  height: auto;
}

.beer-reveal {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 50%;
  overflow: hidden;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.35s;
}
.beer-reveal > :first-child {
  width: 200%;
  max-width: none;
}
.beer-reveal > img:first-child {
  height: auto;
}

.beer-range {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  height: 100%;
  margin: 0;
  left: -1px;
  width: calc(100% + 2px);
  cursor: pointer;
  -webkit-appearance: slider-horizontal !important;
  -moz-appearance: none;
  opacity: 0;
  -ms-touch-action: auto;
  touch-action: auto;
}
.beer-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  height: 300vh;
}
.beer-range::-moz-range-thumb {
  -webkit-appearance: none;
  height: 300vh;
}
.beer-range::-ms-tooltip {
  display: none;
}

.beer-handle {
  position: absolute;
  z-index: 2;
  pointer-events: none;
  opacity: 0;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  color: #000;
  background: rgba(255, 255, 255, 0.5);
  width: 48px;
  height: 48px;
  border-radius: 50%;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0);
  transition: background 0.3s, box-shadow 0.3s, opacity 0.5s 0.25s;
}
.beer-handle:before,
.beer-handle:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  top: 50%;
  border-top: solid 2px;
  border-left: solid 2px;
  transform-origin: 0 0;
}
.beer-handle:before {
  left: 10px;
  transform: rotate(-45deg);
}
.beer-handle:after {
  right: 0;
  transform: rotate(135deg);
}

.beer-range:focus ~ .beer-handle {
  background: rgba(255, 255, 255, 0.85);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.4);
}

.beer-slider[data-beer-label]:after,
.beer-reveal[data-beer-label]:after {
  content: attr(data-beer-label);
  position: absolute;
  top: 1.5rem;
  line-height: 1;
  padding: 0.5rem;
  border-radius: 0.125rem;
  background: rgba(255, 255, 255, 0.75);
}

.beer-slider[data-beer-label]:after {
  right: 1.5rem;
}

.beer-reveal[data-beer-label]:after {
  left: 1.5rem;
}

.beer-slider[data-beer-label=""]:after,
.beer-reveal[data-beer-label=""]:after {
  content: none;
}

.beer-ready .beer-reveal,
.beer-ready .beer-handle {
  opacity: 1;
}

.beer-slider {
  font-family: Montserrat;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 1px;
}
/*================end page.blogs.liquid ================*/
/*================ page.services.liquid ================*/
.page-services,
.page-repairs,
.page-cleanings,
.page-calibrations {
  color: #555;
  font-size: 1.1rem;
  line-height: 20px;
}
.page-services .two-hr-header,
.page-repairs .two-hr-header,
.page-cleanings .two-hr-header,
.page-calibrations .two-hr-header {
  width: 100%;
  height: 8px;
  border-top: 2px solid lightgray;
  border-bottom: 2px solid lightgray;
  top: 6px;
}
.page-services .heading-divider,
.page-repairs .heading-divider,
.page-cleanings .heading-divider,
.page-calibrations .heading-divider {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 20px;
  margin: 10px 0;
}
.page-services .heading-divider .caps-spaced-title,
.page-repairs .heading-divider .caps-spaced-title,
.page-cleanings .heading-divider .caps-spaced-title,
.page-calibrations .heading-divider .caps-spaced-title {
  position: absolute;
  margin: 0 auto;
  display: inline-block;
  text-transform: uppercase;
  font-size: 1.5em;
  font-weight: 300;
  letter-spacing: 6px;
  background-color: white;
  padding: 0 20px;
}
.page-services .section-summary,
.page-repairs .section-summary,
.page-cleanings .section-summary,
.page-calibrations .section-summary {
  display: flex;
  align-items: center;
  padding: 0 20px 20px;
}
@media all and (max-width: 600px) {
  .page-services .section-summary,
  .page-repairs .section-summary,
  .page-cleanings .section-summary,
  .page-calibrations .section-summary {
    flex-direction: column;
    padding: 0;
  }
}
.page-services .section-summary img,
.page-repairs .section-summary img,
.page-cleanings .section-summary img,
.page-calibrations .section-summary img {
  margin: 10px 30px 10px 0;
}
@media all and (max-width: 600px) {
  .page-services .section-summary img,
  .page-repairs .section-summary img,
  .page-cleanings .section-summary img,
  .page-calibrations .section-summary img {
    margin-right: 0;
  }
}
.page-services .mobile-service-nav,
.page-repairs .mobile-service-nav,
.page-cleanings .mobile-service-nav,
.page-calibrations .mobile-service-nav {
  display: none;
  justify-content: center;
  margin-bottom: 20px;
}
@media all and (max-width: 750px) {
  .page-services .mobile-service-nav,
  .page-repairs .mobile-service-nav,
  .page-cleanings .mobile-service-nav,
  .page-calibrations .mobile-service-nav {
    display: flex;
  }
}
@media all and (max-width: 550px) {
  .page-services .mobile-service-nav,
  .page-repairs .mobile-service-nav,
  .page-cleanings .mobile-service-nav,
  .page-calibrations .mobile-service-nav {
    flex-direction: column;
  }
}
.page-services .mobile-service-nav a,
.page-repairs .mobile-service-nav a,
.page-cleanings .mobile-service-nav a,
.page-calibrations .mobile-service-nav a {
  display: block;
  padding: 10px 15px;
  background-color: lightgray;
  margin-right: 10px;
  border-radius: 10px;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
}
.page-services .mobile-service-nav a:last-of-type,
.page-repairs .mobile-service-nav a:last-of-type,
.page-cleanings .mobile-service-nav a:last-of-type,
.page-calibrations .mobile-service-nav a:last-of-type {
  margin-right: 0;
}
@media all and (max-width: 550px) {
  .page-services .mobile-service-nav a,
  .page-repairs .mobile-service-nav a,
  .page-cleanings .mobile-service-nav a,
  .page-calibrations .mobile-service-nav a {
    margin-right: 0;
    margin-bottom: 10px;
  }
}
.page-services .service,
.page-repairs .service,
.page-cleanings .service,
.page-calibrations .service {
  padding: 20px 50px;
}
@media all and (max-width: 600px) {
  .page-services .service,
  .page-repairs .service,
  .page-cleanings .service,
  .page-calibrations .service {
    padding: 20px 0;
  }
}
.page-services .service .service-title,
.page-repairs .service .service-title,
.page-cleanings .service .service-title,
.page-calibrations .service .service-title {
  float: left;
  font-size: 1.5em;
  font-weight: 700;
}
.page-services .service .pricing,
.page-repairs .service .pricing,
.page-cleanings .service .pricing,
.page-calibrations .service .pricing {
  float: right;
  text-align: right;
}
.page-services .service .pricing .service-price,
.page-repairs .service .pricing .service-price,
.page-cleanings .service .pricing .service-price,
.page-calibrations .service .pricing .service-price {
  font-size: 1.5em;
  font-weight: 700;
}
.page-services .service .pricing .detail-text,
.page-repairs .service .pricing .detail-text,
.page-cleanings .service .pricing .detail-text,
.page-calibrations .service .pricing .detail-text {
  color: #999;
}
.page-services .gallery,
.page-repairs .gallery,
.page-cleanings .gallery,
.page-calibrations .gallery {
  display: flex;
  justify-content: space-around;
  margin-top: 50px;
}
@media all and (max-width: 600px) {
  .page-services .gallery,
  .page-repairs .gallery,
  .page-cleanings .gallery,
  .page-calibrations .gallery {
    flex-direction: column;
  }
}
.page-services .gallery img,
.page-repairs .gallery img,
.page-cleanings .gallery img,
.page-calibrations .gallery img {
  width: 30%;
  height: 30%;
}
@media all and (max-width: 600px) {
  .page-services .gallery img,
  .page-repairs .gallery img,
  .page-cleanings .gallery img,
  .page-calibrations .gallery img {
    width: 100%;
    height: 100%;
    margin-bottom: 20px;
  }
}

/*================ page.repairs.liquid ================*/
.page-repairs table {
  width: 100%;
  margin-top: 20px;
}
.page-repairs table tr {
  height: 30px;
}
.page-repairs table tr th {
  color: white;
  background-color: #169cb0;
}
.page-repairs table tr td {
  padding-left: 20px;
}
.page-repairs table tr td:last-of-type {
  padding: 0;
  text-align: center;
  font-weight: 700;
  width: 12rem;
}
.page-repairs table tr:nth-of-type(odd) {
  background-color: #d8d8d8;
}

/*================ page.calibrations.liquid ================*/
/*================ page.cleanings.liquid ================*/
/*================ page.trade-in.liquid ================*/
.page-trade-in .section-summary {
  display: flex;
  align-items: center;
  padding: 30px;
  background-color: #eee;
}
@media all and (max-width: 600px) {
  .page-trade-in .section-summary {
    flex-direction: column;
  }
}
.page-trade-in .section-summary img {
  margin-right: 30px;
}
@media all and (max-width: 600px) {
  .page-trade-in .section-summary img {
    margin-right: 0;
    margin-bottom: 30px;
  }
}
.page-trade-in .section-summary h3 {
  margin-bottom: 15px;
}
@media all and (max-width: 600px) {
  .page-trade-in .section-summary h3 {
    text-align: center;
  }
}
.page-trade-in .section-summary p {
  line-height: 20px;
}
.page-trade-in .section-summary a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 200px;
  height: 40px;
  background-color: #404040;
  border-radius: 5px;
  text-transform: uppercase;
  font-weight: 700;
  color: white;
  margin-top: 15px;
}
@media all and (max-width: 600px) {
  .page-trade-in .section-summary a {
    width: 100%;
  }
}
.page-trade-in .middle {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 50px 0;
  line-height: 30px;
}
.page-trade-in .middle ul.with-bullets {
  list-style: disc;
  padding-left: 20px;
}
.page-trade-in .tribox {
  display: flex;
  align-items: center;
  justify-content: space-around;
}
@media all and (max-width: 600px) {
  .page-trade-in .tribox {
    flex-direction: column;
  }
}
.page-trade-in .tribox .sub-box {
  display: flex;
  align-items: center;
}
.page-trade-in .tribox .sub-box p {
  font-weight: 700;
}
@media all and (max-width: 800px) {
  .page-trade-in .tribox .sub-box {
    flex-direction: column;
  }
  .page-trade-in .tribox .sub-box p {
    text-align: center;
  }
}

/*================ page.contests.liquid ================*/
.page-contests .contest-section-banner {
  width: 100%;
  padding: 10px 20px;
  font-size: 1.2em;
  font-weight: 700;
  background-color: #f49b00;
  color: white;
  margin-bottom: 30px;
}
.page-contests .contest-block-wrapper {
  padding: 0 30px;
}
.page-contests .contest-block-wrapper .contest-block {
  padding: 30px 0;
  border-bottom: 2px solid lightgray;
}
.page-contests .contest-block-wrapper .contest-block:first-of-type {
  padding-top: 0;
}
.page-contests .contest-block-wrapper .contest-block:last-of-type {
  border-bottom: none;
}
.page-contests .contest-block-wrapper .contest-block a {
  display: flex;
}
@media all and (max-width: 720px) {
  .page-contests .contest-block-wrapper .contest-block a {
    flex-direction: column;
  }
}
.page-contests .contest-block-wrapper .contest-block a img {
  width: 250px;
  height: 250px;
  margin-right: 30px;
}
.page-contests .contest-block-wrapper .contest-block a .contest-details {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media all and (max-width: 720px) {
  .page-contests .contest-block-wrapper .contest-block a .contest-details {
    margin-top: 30px;
  }
}
.page-contests
  .contest-block-wrapper
  .contest-block
  a
  .contest-details
  .contest-title {
  font-size: 1.3em;
  font-weight: 700;
  margin-bottom: 15px;
}
.page-contests
  .contest-block-wrapper
  .contest-block
  a
  .contest-details
  .contest-description {
  line-height: 20px;
}
.page-contests
  .contest-block-wrapper
  .contest-block
  a
  .contest-details
  .contest-button {
  width: 200px;
  height: 40px;
  background-color: #404040;
  border-radius: 5px;
  text-transform: uppercase;
  font-weight: 700;
  color: white;
  margin-top: 15px;
}
.page-contests
  .contest-block-wrapper
  .contest-block
  a
  .contest-details
  .contest-button:hover {
  box-shadow: inset 0 0 0 500px rgba(0, 0, 0, 0.4);
}
.page-contests .contest-block-wrapper.previous-contests .contest-block {
  opacity: 0.4;
}
.page-contests .contest-block-wrapper.previous-contests .contest-block:hover {
  opacity: 0.8;
}
.page-contests .modal-trigger {
  background-image: url("/cdn/shop/files/pictureline-contest_banner.jpg?4827130430361052893");
  background-repeat: no-repeat;
  width: 100%;
  height: 250px;
  margin-top: 100px;
}

/*================ page.podcasts.liquid ================*/
.page-podcasts .podcast-logo {
  text-align: center;
  margin-bottom: 50px;
}
.page-podcasts iframe {
  margin-bottom: 20px;
}

/*================ page.pictureline-pros.liquid ================*/
/*================ page.financing.liquid ================*/
.page-financing {
  color: #404040;
  font-size: 1.2em;
}
.page-financing h1 {
  font-weight: 700;
}
.page-financing h2 {
  color: black;
}
.page-financing .how-affirm-works {
  display: flex;
  padding: 20px 0;
  background-color: #eee;
  margin: 40px 0;
}
.page-financing .how-affirm-works .affirm-step {
  width: 25%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 10px;
}
.page-financing .how-affirm-works .affirm-step .step-number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #0fa0ea;
  color: white;
  font-size: 1.3em;
  font-weight: 700;
  border-radius: 50%;
  margin-bottom: 15px;
}
.page-financing .how-affirm-works .affirm-step .step-description {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.page-financing .how-affirm-works .affirm-step .step-description strong {
  text-transform: uppercase;
}
.page-financing .how-affirm-works .affirm-step .step-description p {
  text-align: center;
  margin-top: 15px;
}
.page-financing .tbl-container {
  width: 60%;
  margin: 40px auto;
}
.page-financing .tbl-container .tbl-row {
  display: flex;
  width: 100%;
  height: 40px;
}
.page-financing .tbl-container .tbl-row:nth-child(odd) {
  background-color: #eee;
}
.page-financing .tbl-container .tbl-row.tbl-header {
  height: 50px;
  font-weight: 700;
  background-color: lightgray;
}
.page-financing .tbl-container .tbl-cell {
  width: 40%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-financing .tbl-container .tbl-cell:first-of-type {
  width: 30%;
}
.page-financing .tbl-container .tbl-cell:last-of-type {
  width: 30%;
}
.page-financing ul {
  padding-left: 25px;
  margin-bottom: 30px;
}
.page-financing ul li {
  list-style-type: disc;
  line-height: 20px;
  margin: 10px 0;
}
.page-financing .disclosure {
  width: 70%;
  font-size: 0.8em;
  color: #999;
  margin: 20px auto;
  text-align: center;
}

/*================ page.corporate.liquid ================*/
/*================ page.edu.liquid ================*/
/*================ page.pictureline-pros.liquid ================*/
.page-pictureline-pros .pro-description {
  text-align: center;
  width: 80%;
  margin: 0 auto 30px;
}
@media all and (max-width: 50px) {
  .page-pictureline-pros .pro-description {
    width: 100%;
  }
}
.page-pictureline-pros .pro-description h1 {
  display: block;
  font-size: 2em;
}
.page-pictureline-pros .pro-description p {
  color: #555;
  font-size: 1.1rem;
  line-height: 18px;
}
.page-pictureline-pros .pro-grid {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media all and (max-width: 720px) {
  .page-pictureline-pros .pro-grid {
    justify-content: space-around;
  }
}
.page-pictureline-pros .pro-grid .pro {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 10px 20px;
}
.page-pictureline-pros .pro-grid .pro a {
  display: inline-block;
}
.page-pictureline-pros .pro-grid .pro a:hover img {
  opacity: 0.9;
}
.page-pictureline-pros .pro-grid .pro a img {
  background-color: white;
  width: 200px;
  height: 200px;
}
.page-pictureline-pros .pro-grid .pro a span {
  font-weight: 700;
  margin-bottom: 10px;
}
.page-pictureline-pros .pro-grid .pro-placeholder {
  height: 200px;
  width: 200px;
  margin: 0 10px 20px;
}

.pro-modal {
  cursor: pointer;
  transition: 0.3s;
}

.pro-modal:hover {
  opacity: 0.7;
}

/* The Modal (background) */
.modal {
  display: none;
  /* Hidden by default */
  position: fixed;
  /* Stay in place */
  z-index: 1;
  /* Sit on top */
  padding-top: 8rem;
  /* Location of the box */
  left: 0;
  top: 0;
  width: 100%;
  /* Full width */
  height: 100%;
  /* Full height */
  overflow: auto;
  /* Enable scroll if needed */
  background-color: black;
  /* Fallback color */
  background-color: rgba(0, 0, 0, 0.9);
  /* Black w/ opacity */
}

/* Modal Content (image) */
.modal-content {
  margin: auto;
  display: block;
  max-height: 80%;
  max-width: 90%;
}

/* Add Animation */
.modal-content {
  -webkit-animation-name: zoom;
  -webkit-animation-duration: 0.6s;
  animation-name: zoom;
  animation-duration: 0.6s;
}

@-webkit-keyframes zoom {
  from {
    -webkit-transform: scale(0);
  }

  to {
    -webkit-transform: scale(1);
  }
}

@keyframes zoom {
  from {
    transform: scale(0);
  }

  to {
    transform: scale(1);
  }
}

/* The Close Button */
.close {
  position: absolute;
  top: 4rem;
  right: 2rem;
  color: #f1f1f1;
  font-size: 40px;
  font-weight: bold;
  transition: 0.3s;
}

.close:hover,
.close:focus {
  color: #bbb;
  text-decoration: none;
  cursor: pointer;
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 700px) {
  .modal-content {
    width: 100%;
  }
}
/*================ page.pro-template.liquid ================*/
.page-pro-template .pro-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.page-pro-template .pro-header .pro-name {
  margin-top: 10px;
}
.page-pro-template .pro-header .pro-name h1 {
  text-transform: uppercase;
  font-size: 2em;
  font-weight: 700;
  display: inline;
  margin-right: 10px;
  color: #404040;
}
@media only screen and (max-width: 749px) {
  .page-pro-template .pro-header .pro-name h1 {
    display: block;
  }
}
.page-pro-template .pro-header .pro-name .location {
  text-transform: uppercase;
  font-size: 1em;
  font-weight: 400;
  display: inline;
  color: #888;
}
@media only screen and (max-width: 749px) {
  .page-pro-template .pro-header .pro-name .location {
    display: block;
  }
}
.page-pro-template .pro-header .pro-links a {
  margin-right: 10px;
}
.page-pro-template .pro-header .pro-links a .icon {
  width: 22px;
  height: 22px;
  fill: darkgray;
}
.page-pro-template .pro-header .pro-links a:last-of-type {
  margin-right: 0;
}
.page-pro-template .pro-header .pro-links a:hover .icon {
  fill: #404040;
}
.page-pro-template .header-image {
  position: relative;
}
.page-pro-template .header-image .head-shot {
  position: absolute;
  top: 15px;
  left: 20px;
  height: 200px;
  border-radius: 50%;
  border: 5px solid white;
}
@media only screen and (max-width: 749px) {
  .page-pro-template .header-image .head-shot {
    position: relative;
    display: block;
    height: 150px;
    top: 0;
    left: 0;
    margin: 20px auto;
  }
}
.page-pro-template .schtuff-container {
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
  width: 100%;
}
@media only screen and (max-width: 749px) {
  .page-pro-template .schtuff-container {
    flex-direction: column;
  }
}
.page-pro-template .schtuff-container .about-pro {
  padding: 20px;
  background-color: #f4f4f4;
  width: 48%;
  color: #555;
  font-size: 1.1rem;
  line-height: 20px;
}
@media only screen and (max-width: 749px) {
  .page-pro-template .schtuff-container .about-pro {
    padding: 50px 20px 20px;
    margin-top: -60px;
    width: 100%;
  }
}
.page-pro-template .schtuff-container .about-pro .quote {
  font-size: 1.5em;
}
.page-pro-template .schtuff-container .about-pro .biography {
  margin-bottom: 0px;
}
.page-pro-template .schtuff-container .podcast {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 48%;
}
@media only screen and (max-width: 749px) {
  .page-pro-template .schtuff-container .podcast {
    width: 100%;
    margin-top: 30px;
  }
}
.page-pro-template .schtuff-container .podcast .hr {
  height: 20px;
  width: 100%;
  border-bottom: 1px solid #999;
}
.page-pro-template .schtuff-container .podcast img {
  max-height: 40px;
  margin-bottom: 10px;
  width: auto;
  margin-bottom: 10px;
  margin-top: -20px;
  background-color: white;
  padding: 0 10px;
  box-sizing: content-box;
}
.page-pro-template .schtuff-container .podcast iframe {
  align-self: flex-end;
}
.page-pro-template .pro-section-header {
  clear: both;
  padding: 15px;
  font-size: 1.4em;
  font-weight: 700;
  background-color: #f4f4f4;
  color: #404040;
  border-bottom: 3px solid #404040;
  margin: 30px 0;
}
.page-pro-template .whats-in-my-bag-collection {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}
.page-pro-template .whats-in-my-bag-collection .item {
  width: 20%;
  padding: 20px;
}
@media all and (min-width: 991px) {
  .page-pro-template .whats-in-my-bag-collection .item {
    width: 20%;
  }
}
@media all and (min-width: 701px) and (max-width: 990px) {
  .page-pro-template .whats-in-my-bag-collection .item {
    width: 33%;
  }
}
@media all and (min-width: 551px) and (max-width: 700px) {
  .page-pro-template .whats-in-my-bag-collection .item {
    width: 50%;
  }
}
@media all and (max-width: 550px) {
  .page-pro-template .whats-in-my-bag-collection .item {
    width: 100%;
  }
}
.page-pro-template .whats-in-my-bag-collection .item a {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
}
.page-pro-template .whats-in-my-bag-collection .item a .product-image {
  display: flex;
  align-items: center;
  flex-grow: 1;
  margin-bottom: 10px;
}
.page-pro-template .whats-in-my-bag-collection .item a .product-image img {
  max-width: 120px;
  max-height: 120px;
}
.page-pro-template .whats-in-my-bag-collection .item a .vert-spacer {
  flex: 1;
}
.page-pro-template .whats-in-my-bag-collection .item a .product-title {
  height: 30px;
  text-align: center;
  color: #777;
}
.page-pro-template .whats-in-my-bag-collection .item a:hover .product-title {
  color: #404040;
}
.page-pro-template .pro-gallery {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}
.page-pro-template .pro-gallery .image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30%;
  margin-bottom: 50px;
}
@media only screen and (max-width: 749px) {
  .page-pro-template .pro-gallery .image {
    width: 100%;
  }
}
/*================ Category Blocks ================*/
.homepage-categories {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  /* height: 300px; */
  /* background-color: #EEE; */
  margin-bottom: 50px;
}

.category-block {
  font-size: 1.2em;
  text-transform: uppercase;
  width: 23%;
  color: #404040;
  text-align: center;
  border: 1px solid #eee;
  padding: 1%;
  margin: 1%;
  transition: transform 0.2s;
}
@media all and (min-width: 551px) and (max-width: 700px) {
  .category-block {
    width: 48%;
  }
}
@media all and (max-width: 550px) {
  .category-block {
    width: 100%;
  }
}

.category-block:hover {
  border: 1px solid #ccc;
  transform: scale(1.05);
}

/*! AUDIT */
/*================ Related Products ================*/
.related-container-title {
  display: flex;
  height: 50px;
  align-items: center;
  justify-content: center;
  text-transform: uppercase;
  border-bottom: 3px solid #404040;
  margin-bottom: 15px;
  background-color: #f4f4f4;
  font-weight: 700;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  color: #666;
}
.related-item h4 {
  text-decoration: underline;
  margin-bottom: 10px;
  font-weight: 700;
}
n .related-item-empty {
  height: 2px;
  border-bottom: 2px solid lightgray;
  margin-bottom: 15px;
}
.related-item {
  display: block;
  border: 1px solid #eee;
  border-radius: 5px;
  padding: 15px;
  position: relative;
  margin-bottom: 15px;
}
.related-item h4 {
  text-decoration: none;
}
.related-item .related-item-info {
  position: relative;
  display: flex;
  flex-direction: row;
}
.related-item .related-item-info .related-image {
  float: left;
  width: 75px;
  margin-right: 10px;
  text-align: center;
}
.related-item .related-item-info .related-image img {
  max-height: 75px;
  margin: 0 auto;
}
.related-item .related-item-info .sku-price-button {
  flex: 1;
  display: flex;
  flex-direction: column;
  text-align: right;
}
.related-item .related-item-info .sku-price-button .vertical-spacer {
  flex: 1;
}
.related-item .related-item-info .sku-price-button button {
  height: 30px;
  margin-left: 20px;
  border-radius: 5px;
  border: none;
  font-size: 0.8em;
  font-weight: 700;
  background-color: #b72025;
  color: white;
  text-transform: uppercase;
}
.related-item:hover {
  cursor: pointer;
  border: 1px solid #ccc;
}
/*================ page.careers.liquid ================*/
.page-careers {
  color: #404040;
  line-height: 1.5rem;
}
.page-careers .careers-header {
  display: flex;
  margin-bottom: 30px;
}
@media all and (max-width: 990px) {
  .page-careers .careers-header {
    flex-direction: column;
  }
}
.page-careers .careers-header img {
  width: 50%;
  height: 50%;
}
@media all and (max-width: 990px) {
  .page-careers .careers-header img {
    width: 100%;
    height: 100%;
  }
}
.page-careers .careers-header div {
  width: 50%;
  display: flex;
  flex-direction: column;
  padding-left: 50px;
  justify-content: center;
  margin-top: -3%;
}
@media all and (max-width: 990px) {
  .page-careers .careers-header div {
    width: 100%;
    padding-left: 0;
    margin-top: 15px;
  }
}
.page-careers .position {
  margin-bottom: 50px;
  padding-bottom: 20px;
  background-color: #f2f2f2;
  font-size: 18px;
  line-height: 1.5 rem;
}
.page-careers .position > * {
  padding: 0 20px;
}
.page-careers .position h3,
.page-careers .position h4 {
  margin-bottom: 10px;
}
.page-careers .position ul {
  padding-left: 25px;
  margin-bottom: 20px;
}
.page-careers .position ul li {
  margin-left: 20px;
  list-style-type: disc;
  font-size: 18px;
  line-height: 1.5rem;
}
.page-careers .position .title {
  color: #404040;
  padding: 20px;
  margin-bottom: 15px;
  background-color: lightgray;
  font-size: 1.4em;
}
.page-careers .position .info p {
  margin: 0;
  font-size: 0.9em;
  font-style: italic;
}
/*================ page.testimonials.liquid ================*/
.page-testimonials .testimonial {
  background-color: #eee;
  padding: 10px;
  clear: both;
  margin-bottom: 75px;
  z-index: -5;
}
.page-testimonials .testimonial .outline {
  padding: 20px;
  border: 2px solid white;
}
.page-testimonials .testimonial .outline .info .photographer {
  font-size: 1.8em;
  font-weight: 700;
}
.page-testimonials .testimonial .outline .info a {
  margin-left: 10px;
  color: #707070;
  cursor: pointer;
}
.page-testimonials .testimonial .outline .info h4 {
  margin-top: 20px;
  font-size: 1.4em;
}
.page-testimonials .testimonial .outline .info h4 .quote {
  position: relative;
  padding: 8px 30px;
  border-left: 5px solid #aaa;
  z-index: 100;
  color: #888;
}
.page-testimonials .testimonial .outline .info h4 .quote:before {
  content: "\201C";
  position: absolute;
  top: -6px;
  left: 5px;
  color: #aaa;
  font-size: 2.5em;
  z-index: -1;
}
.page-testimonials .testimonial .outline .info .summary {
  margin-top: 20px;
  color: #404040;
}
.page-testimonials .testimonial:nth-child(odd) img {
  float: right;
  margin-left: 20px;
  margin-bottom: 50px;
}
.page-testimonials .testimonial:nth-child(even) img {
  float: left;
  margin-right: 20px;
  margin-bottom: 50px;
}
/*================ event / class page ================*/
.event-details {
  display: flex;
  background-color: #eee;
  margin-bottom: 30px;
  padding: 20px 0;
  color: #909090;
}
@media all and (max-width: 750px) {
  .event-details {
    flex-direction: column;
  }
}
.event-details .detail {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid gray;
  padding: 10px 20px;
}
@media all and (max-width: 750px) {
  .event-details .detail {
    border-right: none;
    justify-content: flex-start;
    padding-left: 20px;
  }
}
.event-details .detail:last-of-type {
  border-right: none;
}
.event-details .detail img {
  margin-right: 15px;
}
.event-details .detail .detail-value {
  display: block;
  color: #707070;
  font-size: 18px;
  font-weight: 700;
}

/*================ page.employee.liquid ================*/
.page-employee {
  .employee-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;

    @media all and (max-width: 720px) {
      justify-content: space-around;
    }

    .employee {
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: center;
      /* margin: 0 10px 20px; */

      img {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 60;
        width: 163px;
        height: 198px;
        border: 1px solid #eee;
      }
      .placeholder {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 60;
        width: 163px;
        height: 198px;
        border: 1px solid #eee;
      }
      .employee-name {
        display: flex;
        align-items: center;
        justify-content: center;
        // padding-bottom: 20px;
        z-index: 50;
        width: 163px;
        height: 198px;
        background-color: lightgray;
        opacity: 0.8;
        font-size: 1.4em;
        font-weight: 700;
        color: #404040;
        border: 1px solid #eee;

        &.clear {
          background-color: white;
        }

        &.no-border {
          border: none;
        }
      }

      &:hover .employee-name {
        z-index: 70;
      }
    }
  }

  .credit {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2em;
    margin-top: 10px;
    color: grey;

    .icon-pline-camera {
      fill: grey;
      margin: -4px 5px 0 0;
    }

    a {
      text-decoration: underline;
    }
  }
}

/*================ page.returns.liquid ================*/
.page-returns {
  color: #404040;
  font-size: 1.1rem;
  line-height: 20px;
}
.page-returns .return-notice {
  padding: 15px 20px;
  background-color: rgba(255, 165, 165, 0.76);
  text-align: center;
  font-weight: 700;
  margin-bottom: 15px;
}
.page-returns .return-content {
  display: flex;
}
.page-returns .return-content .right-content {
  min-width: 300px;
  margin-left: 30px;
  background-color: #f4f4f4;
  padding: 20px 30px;
}
@media all and (max-width: 900px) {
  .page-returns .return-content {
    flex-direction: column;
  }
  .page-returns .return-content .right-content {
    width: 100%;
    margin-left: 0;
    margin-top: 20px;
  }
}
.page-returns .return-content h2 {
  font-size: 1.1em;
  color: #4785cf;
  font-weight: 700;
  margin-top: 15px;
  text-transform: uppercase;
}
.page-returns .return-content ul {
  padding-left: 25px;
}
.page-returns .return-content ul li {
  list-style-type: disc;
}
/*================ page.shipping.liquid ================*/
.page-shipping .container-box {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media all and (max-width: 800px) {
  .page-shipping .container-box {
    flex-direction: column;
  }
}
.page-shipping .container-box .outer-box {
  display: flex;
  width: 32%;
  padding: 10px;
  background-color: lightgray;
  margin-bottom: 20px;
}
@media all and (max-width: 800px) {
  .page-shipping .container-box .outer-box {
    width: 100%;
  }
}
.page-shipping .container-box .outer-box .inner-box {
  display: flex;
  align-items: center;
  flex-direction: column;
  border: 2px solid white;
  padding: 20px;
}
.page-shipping .container-box .outer-box .inner-box .flex-spacer {
  flex: 1;
}
.page-shipping .container-box .outer-box .inner-box p {
  text-align: center;
  line-height: 20px;
}
.page-shipping .container-box .carrier-box {
  display: flex;
  flex-direction: column;
  padding: 15px;
  background-color: lightgray;
  width: 49%;
  font-weight: bold;
  margin-bottom: 20px;
}
@media all and (max-width: 800px) {
  .page-shipping .container-box .carrier-box {
    width: 100%;
  }
}
.page-shipping .container-box .carrier-box .horz-boxes {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-top: 15px;
}
.page-shipping .container-box .carrier-box .horz-boxes img {
  display: block;
  padding-right: 30px;
}
.page-shipping .container-box .carrier-box .horz-boxes ul {
  list-style-type: disc;
}
.page-shipping .red-highlight {
  color: #ba2f34;
  font-weight: bold;
}
.page-shipping .map {
  display: flex;
  justify-content: center;
}
.page-shipping .question {
  font-weight: bold;
}

/*================ Mail in Rebate ================*/
.line-through {
  text-decoration: line-through;
}
.green-money {
  color: #00ad60;
}
.rebate-text {
  color: #aaa;
  font-style: italic;
  width: 100%;
}
/*================= Vendor Blocks =================*/

.vendor-block-container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 1140px;
  // margin: 20px 1% 20px;
  margin: 20px 0 30px;
}
.vendor-block {
  display: block;
  position: relative;
  float: left;
  // background-color: #222;
  width: 15%;
  padding-bottom: 15%;
  float: left;
  height: 0;

  // FOR CYBER MONDAY
  // background-image: url("/cdn/shop/files/CM_backgroundtexture2_x300_bfbfa0dc-ddd4-45a6-bac0-efe9bcd06059.png?44507");
  // background-position: center;
  // background-repeat: no-repeat;
  // background-size: cover;

  &:hover {
    // background-color: #111;
  }
}

.vendor-block::after {
  content: "";
  // background: url("/cdn/shop/files/CM_backgroundtexture2_x300_bfbfa0dc-ddd4-45a6-bac0-efe9bcd06059.png?44507");
  /* background: url("/cdn/shop/files/newyears-gift-box_copy.png?v=1640534560"); */

  background: var(--bg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  // opacity: 0.6;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  // z-index: -1;
}

.vendor-block a {
  display: flex;
  align-items: flex-end;
  justify-content: center;

  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  // padding: 10px;
  color: white;
  font-size: 1.1em;
  font-weight: 600;

  z-index: 2;
}

.vendor-block a .inner-block {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  // width: 100%;
  height: 100%;
  width: 80%;
  // height: 60%;
  //height: var(--inner-block-height);
  // border: 3px solid #777;
  padding: 5px;
}
.vendor-block a .inner-block span {
  display: block;
  // color: #777;
  color: #ddd;
  text-transform: uppercase;
}
.vendor-block a .inner-block .icon {
  width: 100%;
  margin: 10px 0;
}

@media (min-width: 640px) and (max-width: 1000px) {
  .vendor-block-container {
    flex-wrap: wrap;
  }
  .vendor-block {
    width: 26%;
    padding-bottom: 26%;
    margin-bottom: 25px;
  }
}
@media (min-width: 440px) and (max-width: 639px) {
  .vendor-block-container {
    flex-wrap: wrap;
  }
  .vendor-block {
    width: 45%;
    padding-bottom: 45%;
    margin-bottom: 25px;
  }
}
@media (max-width: 439px) {
  .vendor-block-container {
    flex-wrap: wrap;
    max-width: 300px;
    margin: 15px auto;
  }
  .vendor-block {
    width: 145px;
    /* padding-bottom: 100%; */
    /* margin-bottom: 25px; */
    /* padding: 10px; */
    height: 145px;
    margin: 2.5px;
  }
}

/* @media (min-width: 1200px) {
  .vendor-block {
    width: 16.66%;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .vendor-block-container {
    max-width: 970px;
  }
  .vendor-block {
    width: 16.66%;
  }
}
@media (min-width: 480px) and (max-width: 991px) {
  .vendor-block-container {
      max-width: 750px;
  }
  .vendor-block {
      width: 16.66%;
  }
}
@media (max-width: 479px) {
  .vendor-block-container {
    margin-top: 10px;
  }
  .vendor-block {
    width: 33.3%;
    margin-top: -30px;
    padding: 20px;
  }
} */

#template--15215531491433__custom_liquid_JxUnqQ .section {
  margin: 20px 0;
}

/* ==================== Location Stock Availability ==================== */

.location-stock-availability {
  margin-top: 0;
  margin-bottom: 0;
  display: inline-block;
}

/* Removed .location-stock-buttons since we only have one button now */

.location-stock-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px;
  line-height: 42px;
  border-radius: 2px;
  text-align: left;
  font-weight: var(--text-font-bolder-weight);
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 14px));
  cursor: pointer;
  transition: background 0.25s ease-in-out, color 0.25s ease-in-out, box-shadow 0.25s ease-in-out;
  min-width: 160px;
  border: 1px solid var(--border-color);
  background: var(--secondary-background);
  color: var(--text-color);
  pointer-events: auto;
  z-index: 1;
}

.location-stock-button:hover {
  background: rgba(var(--border-color-rgb), 0.5);
  color: var(--text-color);
}

/* Removed .location-stock-button--online styles since we removed that button */

.location-stock-button--instore {
  border-color: var(--accent-color);
}

.location-stock-button__text {
  flex: 1;
  margin-right: 8px;
}

.location-stock-button__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.location-stock-button__icon svg {
  width: 100%;
  height: 100%;
}

.location-stock-button__icon--check svg {
  color: #00c200;
}

.location-stock-button__icon--cross svg {
  color: var(--text-color);
  opacity: 0.5;
}

.location-stock-button__icon--question svg {
  color: var(--accent-color);
}

/* Product Page Specific - removed since we moved it to product-meta */
/* Hide any old location-stock containers that might still exist below buy buttons */
.product-meta__location-stock {
  display: none !important;
  visibility: hidden !important;
  margin-top: 0;
  margin-bottom: 0;
}

/* Collection Page Specific */
.product-item__location-stock {
  margin-top: 8px;
}

.product-item__location-stock .location-stock-buttons {
  gap: 8px;
}

.product-item__location-stock .location-stock-button {
  min-width: 140px;
  padding: 8px 12px;
  font-size: 13px;
}

/* ==================== Location Stock Modal - High-End Design ==================== */

/* Ensure modal appears above product description - only increase modal z-index, don't modify description */

/* Ensure parent containers don't trap the modal in a lower stacking context */
/* The modal is inside .card--sticky which creates a stacking context, so we need to ensure it can escape */
.product-form {
  position: relative !important;
  z-index: auto !important;
}

.product-meta__location-stock {
  position: static !important;
  z-index: auto !important;
  isolation: auto !important;
}

/* Ensure the modal can escape the sticky card's stacking context */
.card--sticky .location-stock-modal.modal {
  z-index: 2147483647 !important;
  position: fixed !important;
}

/* Remove dark overlay background */
.location-stock-modal.modal::before {
  display: none !important;
}

/* Ensure modal is visible when aria-hidden="false" - use very high z-index to appear above product description */
/* Note: Product description cards may have sticky positioning which creates stacking context */
.location-stock-modal.modal {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 2147483647 !important; /* Maximum z-index value */
  margin: 0 !important;
  background: transparent !important;
  pointer-events: none !important;
}

.location-stock-modal.modal[aria-hidden="false"] {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  z-index: 2147483647 !important; /* Maximum z-index value */
}

.location-stock-modal.modal[aria-hidden="true"] {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.location-stock-modal.modal .modal__dialog {
  position: relative !important;
  width: 90% !important;
  max-width: 700px !important;
  height: auto !important;
  max-height: calc(100vh - 80px) !important;
  background: #ffffff !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
  border-radius: 8px !important;
  overflow: auto !important;
  -webkit-overflow-scrolling: touch !important;
  transform: scale(1) !important;
  z-index: 2147483647 !important; /* Maximum z-index value */
  pointer-events: auto !important;
  margin: 40px auto !important;
}

/* Allow clicking outside modal to close it */
.location-stock-modal.modal[aria-hidden="false"] > *:not(.modal__dialog) {
  pointer-events: auto !important;
}

@media screen and (min-width: 641px) {
  .location-stock-modal.modal .modal__dialog {
    width: 580px !important;
    max-width: 700px !important;
  }
}

/* Modal Header - Override theme styles */
.location-stock-modal.modal .location-stock-modal__header.modal__header {
  position: relative !important;
  padding: 28px 50px 28px 28px !important;
  background: #ffffff !important;
  border-bottom: 2px solid #e5e5e5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.location-stock-modal__product-information {
  flex: 1;
  padding-right: 40px;
}

.location-stock-modal__product-title {
  margin: 0 !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #ba2f34 !important;
  text-align: left !important;
  line-height: 1.4 !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
  letter-spacing: -0.02em;
}

.location-stock-modal__variant-title {
  margin: 6px 0 0 0 !important;
  font-size: 14px !important;
  color: #666666 !important;
  font-weight: 400 !important;
}

.location-stock-modal__close {
  position: absolute !important;
  top: 24px !important;
  right: 24px !important;
  padding: 8px !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  color: #333333 !important;
  z-index: 2147483647 !important; /* Maximum z-index value */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 4px !important;
  transition: background-color 0.2s ease !important;
  pointer-events: auto !important;
}

.location-stock-modal__close:hover {
  background-color: #f5f5f5 !important;
}

.location-stock-modal__close svg {
  width: 20px !important;
  height: 20px !important;
  pointer-events: none !important;
}

/* Modal Content - Override theme styles */
.location-stock-modal.modal .location-stock-modal__content.modal__content {
  padding: 0 !important;
  background: #ffffff !important;
}

/* Store Availability List - Grid Layout - Override theme styles */
.location-stock-modal .store-availabilities-list {
  margin: 0 !important;
  padding: 0 !important;
}

.location-stock-modal .store-availability-list__item {
  padding: 24px 28px !important;
  border-bottom: 1px solid #e5e5e5 !important;
  background: #ffffff !important;
  transition: background-color 0.2s ease !important;
  margin: 0 !important;
  margin-top: 0 !important;
  padding-top: 24px !important;
}

.location-stock-modal .store-availability-list__item:hover {
  background-color: #fafafa !important;
}

.location-stock-modal .store-availability-list__item:last-child {
  border-bottom: none !important;
}

/* Header Row - Store Name and Status */
.location-stock-modal .store-availability-list__header-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 16px !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

.location-stock-modal .store-availability-list__location {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  margin: 0 !important;
  margin-bottom: 0 !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
  letter-spacing: -0.01em !important;
}

.location-stock-modal .store-availability-list__status {
  display: flex !important;
  align-items: center !important;
  pointer-events: auto !important;
}

/* Status Badge */
.location-stock-modal .store-availability-list__status-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 12px !important;
  border-radius: 4px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}

.location-stock-modal .store-availability-list__status-badge svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  margin-right: 0 !important;
}

.location-stock-modal .store-availability-list__status-badge--in-stock {
  background-color: #e8f5e9 !important;
  color: #2e7d32 !important;
}

.location-stock-modal .store-availability-list__status-badge--in-stock .store-availability-list__status-text {
  color: #2e7d32 !important;
  font-weight: 600 !important;
}

.location-stock-modal .store-availability-list__status-badge--in-stock svg {
  color: #2e7d32 !important;
}

.location-stock-modal .store-availability-list__status-badge--out-of-stock {
  background-color: #ffebee !important;
  color: #c62828 !important;
}

.location-stock-modal .store-availability-list__status-badge--out-of-stock .store-availability-list__status-text {
  color: #c62828 !important;
}

.location-stock-modal .store-availability-list__status-badge--call-to-order {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 12px !important;
  border-radius: 4px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
  background-color: #fff3cd !important;
  color: #856404 !important;
  border: 1px solid #ffc107 !important;
  text-decoration: none !important;
}

.location-stock-modal .store-availability-list__status-badge--call-to-order .store-availability-list__status-text {
  color: #856404 !important;
  font-weight: 600 !important;
}

/* Make "Call to Order" badge clickable - when it's an <a> tag */
.location-stock-modal .store-availability-list__status-badge--call-to-order--clickable,
.location-stock-modal a.store-availability-list__status-badge--call-to-order {
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  pointer-events: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 12px !important;
  border-radius: 4px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
  background-color: #fff3cd !important;
  color: #856404 !important;
  border: 1px solid #ffc107 !important;
  position: relative !important;
  z-index: 10 !important;
}

.location-stock-modal .store-availability-list__status-badge--call-to-order--clickable:hover,
.location-stock-modal a.store-availability-list__status-badge--call-to-order:hover {
  background-color: #ffc107 !important;
  color: #856404 !important;
  border-color: #ff9800 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
  text-decoration: none !important;
}

.location-stock-modal .store-availability-list__status-badge--call-to-order--clickable:active,
.location-stock-modal a.store-availability-list__status-badge--call-to-order:active {
  transform: translateY(0) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) !important;
}

.location-stock-modal .store-availability-list__status-badge--call-to-order--clickable .store-availability-list__status-text,
.location-stock-modal a.store-availability-list__status-badge--call-to-order .store-availability-list__status-text {
  color: #856404 !important;
  font-weight: 600 !important;
}

.location-stock-modal .store-availability-list__status-badge--pre-order {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 12px !important;
  border-radius: 4px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
  background-color: #e8f5e9 !important;
  color: #2e7d32 !important;
  border: 1px solid #4caf50 !important;
  text-decoration: none !important;
  position: relative !important;
  z-index: 10 !important;
}

.location-stock-modal .store-availability-list__status-badge--pre-order .store-availability-list__status-text {
  color: #2e7d32 !important;
  font-weight: 600 !important;
}

.location-stock-modal .store-availability-list__status-badge--pre-order--clickable,
.location-stock-modal a.store-availability-list__status-badge--pre-order {
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  pointer-events: auto !important;
}

.location-stock-modal .store-availability-list__status-badge--pre-order--clickable:hover,
.location-stock-modal a.store-availability-list__status-badge--pre-order:hover {
  background-color: #4caf50 !important;
  color: #ffffff !important;
  border-color: #4caf50 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
  text-decoration: none !important;
}

.location-stock-modal .store-availability-list__status-badge--pre-order--clickable:active,
.location-stock-modal a.store-availability-list__status-badge--pre-order:active {
  transform: translateY(0) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) !important;
}

.location-stock-modal .store-availability-list__status-badge--unknown {
  background-color: #f5f5f5 !important;
  color: #757575 !important;
}

.location-stock-modal .store-availability-list__status-text {
  font-weight: 600 !important;
}

/* Details Section - Override theme styles */
.location-stock-modal .store-availability-list__details {
  margin-top: 12px !important;
}

.location-stock-modal .store-availability-list__address {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #333333 !important;
  margin-bottom: 12px !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}

.location-stock-modal .store-availability-list__address p {
  margin: 0 0 4px 0 !important;
}

.location-stock-modal .store-availability-list__item-info {
  margin-top: 0 !important;
  font-size: 14px !important;
}

.location-stock-modal .store-availability-list__contact {
  line-height: 1.7 !important;
}

.location-stock-modal .store-availability-list__contact p {
  margin: 0 0 4px 0 !important;
}

/* Phone Section with Call to Reserve */
.location-stock-modal .store-availability-list__phone {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-top: 8px !important;
}

.location-stock-modal .store-availability-list__phone-link {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #ba2f34 !important;
  text-decoration: none !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
  transition: color 0.2s ease !important;
}

.location-stock-modal .store-availability-list__phone-link:hover {
  color: #8a2327 !important;
  text-decoration: underline !important;
}

.location-stock-modal .store-availability-list__phone-label {
  font-size: 13px !important;
  color: #666666 !important;
  font-style: italic !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}

/* Responsive Design */
@media (max-width: 640px) {
  .location-stock-modal__header {
    padding: 20px 45px 20px 20px;
  }
  
  .location-stock-modal__product-title {
    font-size: 18px;
  }
  
  .location-stock-modal .store-availability-list__item {
    padding: 20px;
  }
  
  .location-stock-modal .store-availability-list__header-row {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .location-stock-modal .store-availability-list__location {
    font-size: 16px;
  }
}

/* Badge Styles */
.location-stock-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
    padding: 6px 12px;
  }

/* ContactUs Section - Remove spacing to match live theme */
#ContactUs__Wrapper {
  margin-bottom: 0 !important;
}

section[data-section-type="html"]:has(#ContactUs__Wrapper),
.shopify-section:has(#ContactUs__Wrapper) {
  margin-bottom: 0 !important;
}
  border-radius: 4px;
  font-size: 13px;
  font-weight: 500;
}

.location-stock-badge--in-stock {
  background-color: #e8f5e9;
  color: #2e7d32;
}

.location-stock-badge--in-stock svg {
  color: #00C200;
  width: 16px;
  height: 16px;
}

.location-stock-badge--out-of-stock {
  background-color: #ffebee;
  color: #c62828;
}

.location-stock-badge--out-of-stock svg {
  color: #FD1A20;
  width: 16px;
  height: 16px;
}

.location-stock-badge--unknown {
  background-color: #f5f5f5;
  color: #757575;
}

/* Responsive Styles */
@media (max-width: 640px) {
  .location-stock-buttons {
    flex-direction: column;
    gap: 8px;
  }
  
  .location-stock-button {
    width: 100%;
    min-width: unset;
  }

  .location-stock-button {
    width: 100%;
    min-width: auto;
  }

  .location-stock-modal__content {
    padding: 16px;
  }

  .location-stock-table {
    font-size: 13px;
  }

  .location-stock-table__header,
  .location-stock-table__cell {
    padding: 10px 8px;
  }

  .location-stock-table__cell--address,
  .location-stock-table__cell--phone {
    min-width: auto;
  }

  /* Stack table on mobile */
}
