/** Shopify CDN: Minification failed

Line 709:12 Unexpected "-->"
Line 753:10 Unexpected "-->"

**/
.SoldOutAttribute {
  background: pink;
}

a.branding-link img.without-name{
  width: 130px !important;   /* pick your size */
  height: auto !important;
  max-width: 100% !important;
  display: block !important;
}



.Article__Wrapper video{
  max-width:100% !important;
}

.mobile-home-photo {display: none;}
.desktop-home-photo {display: block;}

.weather {
    display: block;
    position: absolute;
    bottom: 50px;
    left: 50px;
    color: #fff;
    font-size: 14px;
}

.template-account #main{
  padding: 20px;
}

#mute-button {
    position: absolute;
    font-size: 14px;
    line-height: 24px;
    bottom: 40px;
    right: 40px;
    z-index: 1;
    background-color: rgb(255 255 255 / 10%);
    color: #fff;
    padding: 11px 15px;
    border: none;
    cursor: pointer;
    border-radius: 100px;
    border: 1px solid rgb(255 255 255 / 23%);
      transition: all .25s ease-in-out;
    -moz-transition: all .25s ease-in-out;
    -webkit-transition: all .25s ease-in-out;
  }

#mute-button-mobile {
    display: none;
  }

#mute-button:hover {
    background-color: rgb(255 255 255 / 25%);
    cursor: pointer;
    border: 1px solid rgb(255 255 255 / 50%);
      transition: all .25s ease-in-out;
    -moz-transition: all .25s ease-in-out;
    -webkit-transition: all .25s ease-in-out;
  }
.shop-menu {
  display: flex; /* Use flexbox for alignment */
  justify-content: center; /* Center horizontally */
  margin: 0 auto; /* Ensure the menu stays centered */
  margin-top:32px;
}

.shop-menu ul {
  list-style: none; /* Remove bullet points */
  padding: 0;
  margin: 0;
  display: flex; /* Align items horizontally */
  gap: 20px; /* Add 20px space between items */
  justify-content: center; /* Center the menu */
}

.shop-menu li {
  display: inline; /* Ensure items stay inline */
  padding:10px;
}

.stockists img {
  max-width:75px;
  width:75px;
  display: block; float:left;
  border-radius: 8px;
  margin-right: 10px;
}

.blue {color: #18203b;}

.shop-menu a {
  text-decoration: none; /* Remove underline from links */
  color: #18203b;
  padding-bottom: 5px; /* Optional padding for clickable area */
  transition: color 0.3s ease; /* Smooth transition for hover */
}

.shop-menu a:hover {
  color: #18203b; /* Change color on hover */
  border-bottom: 2px solid #18203b;
}

.shop-menu .active {
  color: #18203b; /* Active state color */
  border-bottom: 2px solid #18203b;
}
.ArticleItem h2 {
  display:block;
  padding-left: 12px;
}

.ArticleItem { border: 1px solid #18203b;
             margin-bottom: 30px;}

.Article img {
  margin-bottom: 10px;
}

.ArticleList .Grid__Cell {
  margin-bottom: 20px;
}

.Blog {
  padding: 20px;
}

.Blog .Container {
    margin: 0 auto;
    padding: 0px;
}

.list-container {
    display:block;
    float:left;
    width: 100%;
    justify-content: space-between;
    margin-top: 150px;
    max-width: 320px;
    width: 100%;
    margin: 20px;
  padding-top: 40px;
}

.container.stockists-page { 
  max-width: 720px;
  margin: 0 auto;
}


.list-container li{
    list-style-type: none;
    margin-bottom: 12px;
    color: #b1b1b1;

}

.list-container li a{
    width: 100%;
    display: inline-block;
    float: left;
    color: #18203b;
    border: 1px solid #f3f3f3;
    padding: 12px;
    line-height: 12px;
    margin-bottom: 20px;
    transition: all .25s;
    border-radius: 6px;
}

.list-container li a .city{
    color: #c2c2c2;
}

.shop-name {
  padding-top: 0px;
    display: block;
}

.list-container li a:hover{
    background: #f3f3f3;
    transition: all .25s;
}

.ProductItem__Vendor, .ProductItem__Title {
  text-transform: lowercase !important;
}

.collections-page .c4{
    padding: 15px;
    margin-top: 15px;
}

.collections-page h2{
  padding: 15px;
  text-align: center;
}

.collections-page .CollectionCard {
  display: block;
  color: inherit;
  text-decoration: none;
}

.collections-page .CollectionCard__Image {
  display: block;
  overflow: hidden;
}

.collections-page .CollectionCard__Image img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform .6s ease;
}

.collections-page .CollectionCard__Title {
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 4px;
  transition: text-decoration-color .3s ease;
}

@media (hover: hover) {
  .collections-page .CollectionCard:hover .CollectionCard__Image img {
    transform: scale(1.04);
  }

  .collections-page .CollectionCard:hover .CollectionCard__Title {
    text-decoration-color: currentColor;
  }
}

.collections-page .CollectionCard:focus-visible .CollectionCard__Image img {
  transform: scale(1.04);
}

.collections-page .CollectionCard:focus-visible .CollectionCard__Title {
  text-decoration-color: currentColor;
}

@media (prefers-reduced-motion: reduce) {
  .collections-page .CollectionCard__Image img,
  .collections-page .CollectionCard__Title {
    transition: none;
  }
}



.column-left {
    display:block;
    float:left;
    margin-left: 5%;
    width: 40%; /* Adjust the width as needed */
}

.column-right {
    display:block;
    float:left;
    width: 100%; /* Adjust the width as needed */
}

.shopify-payment-button__more-options {
  display: none !important;
}

.empty-cart-img img {
  max-width: 110px;
      position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    bottom: 20px;
}

.login-img img {
  max-width: 110px;
}

.ProductMeta__Description, .ProductMeta__Text {
    margin: 0px 0 !important;
    text-align: left;
}
.accordion-wrap {
  margin-top: 40px;
  border-bottom: 1px solid #f1f1f1;
}
.accordion {
  width: 100%;
}

.accordion-links a {
  text-decoration: underline;
}

.free {
  text-align: center;
  font-size: 14px;
  color: #aaa;
  font-style: italic;
  margin-top: 10px;
}

.accordion-item {
  margin-bottom: 0px;
}

.accordion-header {
  border-top: 1px solid #f1f1f1;
  color: #18203b;
  padding: 15px;
  cursor: pointer;
  position: relative;
}

.accordion-header:hover {
  background-color: #f9f9f9;
}

.accordion-content {
  background-color: #fff;
  padding: 10px;
  display: none;
}

.accordion-item.active .accordion-content {
  display: block;
}

.accordion-header i {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
      color: #c6c6c6;
}

.accordion-item.active .accordion-header i {
  transform: translateY(-50%) rotate(180deg);
}






.shops li {
  width:50%;
  display: block;
  float: left;
  padding: 10px;
}

.shops li img {
  border-radius: 6px;
  margin-bottom: 8px;
  /* filter: url(filters.svg#grayscale); Firefox 3.5+ */
      filter: gray; /* IE5+ */
      -webkit-filter: grayscale(1); /* Webkit Nightlies & Chrome Canary */
      -webkit-transition: all .3s ease-in-out;
}

.shops li img:hover {
      filter: none;
      -webkit-filter: grayscale(0);
      -webkit-transform: scale(1);
}


.shops li h2 {
    width: auto;
    display: inline-block;
    float: left;
    text-align: left;
    font-size: 14px;
}

.shops li h2::after {
    content: '–'; 
}

.shops li p {
    width: 50%;
    display: inline-block;
    float:left;
    text-align: left;
    font-size: 14px;
  color: #b1b1b1;
}

.container {
  display: flex;
  flex-direction: row;
}

.left {
  width: 50%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;

}

.centered-text {
  text-align: center;
  margin: auto;
  
}

.centered-text img{
    max-width: 74px;
    margin-bottom: 10px;
  margin: 0 auto;
  margin: 40px;
}

.centered-text a{
  text-decoration: underline;
}

.right {
  width: 50%;
  overflow-y: scroll;
  padding-top: 20px;
  margin-left: 50%;
}


.info-bg-img {
  background-image: url("/cdn/shop/files/bg.jpg?v=1675115633");
  height: 92vh;
  width: 100%;
  display: block;
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center center;
}

.Footer__Copyright a {
  font-size: 12px !important;
  color: #c2c2c2;
}

.Footer__Copyright .pearl_quote {
  font-size: 12px !important;
  color: #c2c2c2;
}

.about-info {
  position: absolute;
  margin: auto;
  right: 0;
  left: 0;
  max-width: 500px;
  top: 50%;
  transform: translateY(-50%);
  background-color: #fff;
  border: 10px solid white;
  box-shadow: inset 0 0 0 2px #25214B;
}

.about-info p{
  padding: 30px;
  padding-top: 20px;
}

.small-info {
    color: #c3c3c3;
    font-size: 12px;
    text-decoration: underline;
}

.Password__Logo {
  width: 80px !important;
  max-width:80px !important;
}

.help-menu {
    margin: 0 auto;
    text-align: center;
    background-color: #fff;
    margin-top:40px;
}

.help-menu a {
  padding: 8px 12px;
  margin-left: 8px;
  margin-right:8px;
  font-size: 15px;
  color: #18203b;
  border: 1px solid #dcdcdc;
  transition: all .2s ease-in-out;
}

.help-menu a:hover {
  border: 1px solid #18203b;
}

.help-page .help-menu a:nth-child(1) {
  color: #18203b;
  border: 1px solid #18203b;

}
.terms-page .help-menu a:nth-child(2) {
  color: #18203b;
  border: 1px solid #18203b;

}
.privacy-page .help-menu a:nth-child(3) {
  color: #18203b;
  border: 1px solid #18203b;

}
.contact-page .help-menu a:nth-child(4) {
  color: #18203b;
  border: 1px solid #18203b;

}

.ProductItem__Info {
    margin-top: 10px !important;
}


.ArticleItem__ImageWrapper img {
      -webkit-transition: all .3s ease-in-out;
      filter: grayscale(0%);
}

.ArticleItem__ImageWrapper img:hover {

      -webkit-transform: scale(1.04);
      filter: grayscale(1000%);
}

.ArticleItem__Excerpt {
  display: none;
}

.Blog .SectionHeader__Heading {
  display: none;
}

.Article .Article__MetaItem {
  display: none;
}

.ProductItem__Vendor, .ProductItem__Title {
    font-size: .75rem;
    margin-bottom: 0px !important;
}

.features--show-price-on-hover .ProductItem__PriceList--showOnHover {
    font-size: .75rem;
}

.ProductItem__SizeList {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 10px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
  font-size: .75rem;
}

.ProductItem__Info--center .ProductItem__SizeList {
  justify-content: center;
}

.ProductItem__Size--soldOut {
  text-decoration: line-through;
  opacity: .45;
}

/* Like the price, sizes appear on hover where hover is available (space is kept, so the grid doesn't shift) */
@media (hover: hover) {
  .ProductItem__SizeList {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .35s ease-in-out, transform .35s ease-in-out;
  }

  .ProductItem:hover .ProductItem__SizeList,
  .ProductItem:focus-within .ProductItem__SizeList {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ProductItem__SizeList {
    transform: none !important;
    transition: none;
  }
}

/* Phones: no sizes in the grid and tighter rows */
@media screen and (max-width: 640px) {
  .ProductItem__SizeList {
    display: none;
  }

  .ProductList--grid > .Grid__Cell {
    margin-bottom: 20px;
  }

  .ProductList--grid.ProductList--removeMargin {
    margin-bottom: -20px !important;
  }

  /* Images run edge to edge with a thin gutter; title and price are inset */
  .CollectionMain .CollectionInner {
    margin-top: 4px;
  }

  .CollectionInner .ProductList--grid,
  [data-section-type="featured-collections"] .ProductList--grid {
    padding: 0;
    margin-left: -4px;
  }

  .CollectionInner .ProductList--grid > .Grid__Cell,
  [data-section-type="featured-collections"] .ProductList--grid > .Grid__Cell {
    padding-left: 4px;
  }

  .CollectionInner .ProductList--grid .ProductItem__Info,
  [data-section-type="featured-collections"] .ProductList--grid .ProductItem__Info {
    padding: 0 10px;
  }
}

/* Tablet and desktop: slimmer side margins and tighter gutters */
@media screen and (min-width: 641px) {
  .CollectionInner .ProductList--grid {
    padding: 0 20px;
    margin-left: -8px;
  }

  .CollectionInner .ProductList--grid > .Grid__Cell {
    padding-left: 8px;
    margin-bottom: 24px;
  }

  .CollectionInner .ProductList--grid.ProductList--removeMargin {
    margin-bottom: -24px !important;
  }
}

.ProductItem__Label {
    font-size: .75rem !important;
}

.template-index .SectionHeader {
  display: none !important;
}

.supports-sticky .Search[aria-hidden=true]+.Header--transparent .Header__Icon svg {
    filter: drop-shadow(0 0px rgba(0,0,0,0)) !important;
}

.Icon--search { display: none !important;}


.Button--secondary {
    color: #fff !important;
    border: 1px solid #262626 !important;
    background: #262626 !important;
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: bold;
}
  

.Button[disabled]{
    cursor: not-allowed;
    background: white !important;
    color: #262626 !important;

}

.Button--primary {
    color: #fff !important;
    border: 1px solid #262626 !important;
    background: #262626 !important;
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: bold;
}




<!-- FOOTER -->
.Footer {
    padding: 25px 0 40px !important;
    border-top: 5px solid #000 !important;
    position: relative !important;
}

.pearl-footer {
    width: 100%;
    display: block;
    text-align: center;
    padding-top: 0px;
    position: relative !important;
}

.footer-logo-image img {
  margin: 0 auto !important;
  max-width: 140px;
  width: 140px;
  margin-bottom: 10px !important
}

.pearl-footer ul {
  display: block;
  width: 100%;
  text-align: center;
}

.pearl-footer a {
    display: inline;
    margin: 6px;
    font-size: .75rem;
}


.navy-bg {
  background-color: #18203b;
}

.white {
  color: #fff;
}


<!-- GRID -->

.shop-grid{margin:0 auto; max-width:100%; width:100%;} 
.g100{margin:0 auto; max-width:100%; width:100%;} 
.g1500{margin:0 auto; max-width:1500px; width:100%;}
.g1400{margin:0 auto; max-width:1400px; width:100%;}
.g1200{margin:0 auto; max-width:1200px; width:100%;}
.g1140{margin:0 auto; max-width:1140px; width:100%;}
.g1024{margin:0 auto; max-width:1024px; width:100%;}
.g960{margin:0 auto; max-width:960px; width:100%;}
.row{width:100%; margin:0 auto;}
.c1{width:8.33%;}
.c2{width:16.66%;}
.c3{width:25%;}
.c4{width:33.33%;}
.c5{width:41.66%;}
.c6{width:50%;}
.c7{width:58.33%;}
.c8{width:66.66%;}
.c9{width:75%;}
.c10{width:83.33%;}
.c11{width:91.66%;}
.c12{width:100%; min-height:1px; float:left; position:relative;}
.c1,.c2,.c3,.c4,.c5,.c6,.c7,.c8,.c9,.c10,.c11,.c1-5,.c1-8 {
	min-height:1px; 
	float:left; 
	position:relative;
}

.centered{float: none; margin: auto;}
.left {float: left;}
.right {float: right;}
.text-left {text-align: left;}
.text-right {text-align: right;}
.text-center {text-align: center;}
.pad-left40 { padding-left:40px;}
.pad-right40 { padding-right:40px;}
.pad10 { padding: 10px;}
.spacer {display: block; width: 100%; height:60px;}

.shops .c4 {
  padding: 20px;
}

.shops .c3 {
  padding: 10px;
  padding-bottom: 75px;
  text-align: center;
}

.mobile-menu img {
    max-width: 40px;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    bottom: 20px;
  }



/* Media query for iPad and tablets */
@media handheld, only screen and (max-width: 768px), only screen and (max-device-width: 768px) and (orientation:portrait){
	.row{margin-bottom:0!important}

	.c1,.c2,.c3,.c4,.c5,.c6,.c7,.c8,.c9,.c10,.c11,.c12,.c1-5,.c1-8{
		width:100%;
		margin-right:0;
		margin-left:0;
		margin-bottom:20px; 
		padding:0px;
	}

  .mobile-home-photo {display: block !important;}
  .desktop-home-photo {display: none;}

  #section-template--16677695324417__custom_html_GWXpiN .Container {
    padding: 0px !important;
  }

  .features--heading-large .u-h1, .features--heading-large .Rte h1 {
    font-size: 16px !important;
  }

    .weather {
      color: #fff;
      bottom: 20px;
    left: 20px;
  }

    .ode-flowers {
      margin-bottom: -60px !important;
      margin-top: -20px !important;
    }

    .ode-flowers img {
      max-width: 250px;
      margin: 0 auto;
      float: none;
      display: inherit;
    }

    .column-right {
      display: block;
      float: none;
      width: 95%;
      margin: 0 auto;
  }

    .list-container {
      max-width: 100%;
      margin: 0px !important;
  }

    .help-menu {
      margin-top:10px;
  }
    
    .help-menu a {
        padding: 6px 10px;
        margin-left: 4px;
        margin-right: 4px;
        font-size: 14px;
        color: #18203b;
        border: 1px solid #dcdcdc;
        margin-top: 10px;
        line-height: 19px;
        display: inline-block;
  }
  
    .about-wrapper .Container {
      padding: 0px !important;
    }
    .about-info {
      margin-left: 20px;
      margin-right: 20px;
    }

    .container {
      display: block;
      flex-direction: row;
    }

    .centered-text {
      position: relative;
      top: 0%;
      left: 0%;
      transform: none;
      text-align: center;
      margin-bottom: 60px;
      margin-top: 60px;
    }


    .left {
      width: 100% !important;
      height: auto;
      display: block;
      float: left;
      position: relative;
    }
  
    .right {
      width: 100%;
      display: block;
      float: left;
      overflow-y: scroll;
      padding-top: 20px;
      margin-left: 0%;
      padding-bottom: 100px;
    }

    .shops li h2 {
        width: 100%;
        font-size: 14px;
      margin-bottom: 0px;
    }
    
    .shops li h2::after {
        content: none; 
    }
    
    .shops li p {
        width: 100%;
      color: #b1b1b1;
    }

    .empty-cart-img img {
      max-width: 90px;
  }

  


}

@media screen and (max-width: 960px) {
  .shop-menu {
    display: none; /* Hides the menu on screens 960px and below */
  }
}

/* ------------------------------------------------------------------------------------------------------------------
 * Mobile product page (≤640px): stacked images + fixed bottom bar (snippets/product-mobile-bar.liquid)
 * ------------------------------------------------------------------------------------------------------------------ */

.ProductMobileStack,
.PMDock,
.PMBar,
.PMSheet {
  display: none;
}

@media screen and (max-width: 640px) {
  body.pm-has-bar:not(.pm-bar-docked) {
    padding-bottom: var(--pm-bar-height, 150px);
  }

  /* Shopify's hCaptcha badge (shown after using the back in stock form) would sit on top of the bar */
  body.pm-has-bar:not(.pm-bar-docked) #shop-hcaptcha-badge-container {
    bottom: calc(var(--pm-bar-height, 150px) + 12px) !important;
  }

  html.pm-sheet-open,
  html.pm-sheet-open body {
    overflow: hidden;
  }

  .Product--mobileBar .Product__Gallery,
  .Product--mobileBar .ProductMeta__Vendor,
  .Product--mobileBar .ProductMeta__Title,
  .Product--mobileBar .ProductMeta__PriceList,
  .Product--mobileBar .ProductForm__Variants,
  .Product--mobileBar .ProductForm__AddToCart {
    display: none !important;
  }

  .ProductMobileStack {
    display: flex;
    flex-direction: column;
    gap: 2px;
  }

  .ProductMobileStack__Item[hidden] {
    display: none;
  }

  /* Slot above Shop Pay where the bar docks once the images have been scrolled past */
  .PMDock {
    display: block;
    min-height: var(--pm-bar-height, 150px);
    margin: 0 -24px 4px;
  }

  body.pm-bar-docked .PMDock {
    min-height: 0;
  }

  /* Bar */
  .PMBar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 24px calc(12px + env(safe-area-inset-bottom));
    background: var(--background, #fff);
    border-top: 1px solid var(--text-color, #000);
    color: var(--text-color, #000);
  }

  .PMBar.PMBar--docked {
    position: static;
    z-index: auto;
    padding-bottom: 12px;
    border-top-color: transparent;
  }

  .PMBar__Head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
  }

  .PMBar__Title {
    margin: 0;
    overflow: hidden;
    font-size: 12px;
    letter-spacing: .05em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .PMBar__Price {
    flex-shrink: 0;
    font-size: 12px;
    white-space: nowrap;
  }

  .PMBar__Price .Price {
    color: var(--text-color, #000);
    font-size: 12px !important;
  }

  .PMBar__Price .Price--compareAt {
    margin-left: 6px;
    color: var(--text-color-light, #777);
    text-decoration: line-through;
  }

  .PMBar__Colors {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .PMBar__ColorLabel {
    margin: 0;
    overflow: hidden;
    color: var(--text-color-light, #777);
    font-size: 11px;
    letter-spacing: .05em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .PMBar__ColorLabel span {
    color: var(--text-color, #000);
  }

  .PMBar__ColorList {
    display: flex;
    flex-shrink: 0;
    gap: 6px;
  }

  .PMBar__Color {
    display: block;
    width: 40px;
    height: 40px;
    padding: 2px;
    overflow: hidden;
    border: 1px solid transparent;
    background: none;
    cursor: pointer;
  }

  .PMBar__Color[aria-checked="true"] {
    border-color: var(--text-color, #000);
  }

  .PMBar__Color img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .PMBar__ColorText {
    font-size: 9px;
    text-transform: uppercase;
  }

  .PMBar__Actions {
    display: flex;
    gap: 8px;
  }

  .PMBar__Select,
  .PMBar__Add {
    flex: 1 1 0;
    min-width: 0;
    height: 46px;
  }

  .PMBar__Select {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 0 14px;
    border: 1px solid var(--text-color, #000);
    background: transparent;
    color: var(--text-color, #000);
    font: inherit;
    font-size: 11px;
    letter-spacing: .05em;
    text-transform: uppercase;
    cursor: pointer;
  }

  .PMBar__Select span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .PMBar__Chevron {
    flex-shrink: 0;
  }

  .PMBar__Add.Button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    line-height: 1.2;
  }

  /* Size sheet */
  .PMSheet:not([hidden]) {
    position: fixed;
    inset: 0;
    z-index: 30;
    display: block;
  }

  .PMSheet__Backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .35);
    opacity: 0;
    transition: opacity .25s ease;
  }

  .PMSheet__Panel {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: 80vh;
    overflow-y: auto;
    padding: 18px 16px calc(18px + env(safe-area-inset-bottom));
    background: var(--background, #fff);
    color: var(--text-color, #000);
    transform: translateY(100%);
    transition: transform .25s ease;
  }

  .PMSheet__Panel:focus {
    outline: none;
  }

  .PMSheet.is-open .PMSheet__Backdrop {
    opacity: 1;
  }

  .PMSheet.is-open .PMSheet__Panel {
    transform: translateY(0);
  }

  .PMSheet__Header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
  }

  .PMSheet__Title {
    margin: 0;
    font-size: 12px;
    letter-spacing: .05em;
    text-transform: uppercase;
  }

  .PMSheet__Close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-right: -10px;
    padding: 0;
    border: 0;
    background: none;
    color: inherit;
    cursor: pointer;
  }

  .PMSheet__List {
    margin: 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid var(--border-color, #e5e5e5);
  }

  .PMSheet__Option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 16px 0;
    border: 0;
    border-bottom: 1px solid var(--border-color, #e5e5e5);
    background: none;
    color: var(--text-color, #000);
    font: inherit;
    font-size: 13px;
    letter-spacing: .05em;
    text-align: left;
    text-transform: uppercase;
    cursor: pointer;
  }

  .PMSheet__Option.is-selected .PMSheet__OptionValue::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-right: 10px;
    border-radius: 50%;
    background: currentColor;
    vertical-align: middle;
  }

  .PMSheet__Option.is-soldOut .PMSheet__OptionValue {
    opacity: .45;
    text-decoration: line-through;
  }

  .PMSheet__OptionStatus {
    color: var(--text-color-light, #777);
    font-size: 11px;
  }

  .PMSheet__SizeChart {
    margin-top: 14px;
    padding: 0;
    border: 0;
    background: none;
    color: inherit;
    font: inherit;
    font-size: 12px;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .PMSheet__Backdrop,
  .PMSheet__Panel {
    transition: none;
  }
}

/* Desktop product page: no pagination dots, images flush with the left edge of the browser */
@media screen and (min-width: 1008px) {
  .Product__Gallery .Product__SlideshowNav--dots {
    display: none !important;
  }

  .Product__Gallery {
    margin-left: 0;
  }
}

/* Desktop product page: transparent header over the first product image (sections/header.liquid, assets/header-pdp-overlay.js) */
@media screen and (min-width: 1008px) {
  body:has(.Header--pdpOverlay):has(.Product__Gallery) .shopify-section--header {
    margin-bottom: calc(-1 * var(--header-height));
  }

  body:has(.Header--pdpOverlay) .Product__Gallery {
    margin-top: 0;
  }

  /* Keep the product info where it was (below the header, aligned with the old 50px gallery offset) */
  body:has(.Header--pdpOverlay) .Product__InfoWrapper {
    top: calc(var(--header-height) + 50px);
    height: calc(100% - var(--header-height) - 50px);
  }

  .Header--pdpOverlay .Header__LogoLink {
    position: relative;
  }

  .Header--pdpOverlay .is-pdp-light,
  .Header--pdpOverlay .Header__LogoImage {
    transition: color .3s ease-in-out, opacity .3s ease-in-out;
  }

  .Search[aria-hidden="true"] + .Header--pdpOverlay:not(.is-pdp-solid):not(:focus-within):not(:has(.is-expanded)) {
    background: transparent;
    box-shadow: none;
  }

  .Search[aria-hidden="true"] + .Header--pdpOverlay:not(.is-pdp-solid):not(:focus-within):not(:has(.is-expanded)) .is-pdp-light {
    color: #fff;
  }

  .Search[aria-hidden="true"] + .Header--pdpOverlay:not(.is-pdp-solid):not(:focus-within):not(:has(.is-expanded)) .is-pdp-light .Header__LogoImage--primary:not(:only-child) {
    opacity: 0;
  }

  .Search[aria-hidden="true"] + .Header--pdpOverlay:not(.is-pdp-solid):not(:focus-within):not(:has(.is-expanded)) .is-pdp-light .Header__LogoImage--transparent {
    opacity: 1;
  }
}

/* ------------------------------------------------------------------------------------------------------------------
 * Mobile collection filter (≤960px, where the shop menu is hidden): side-scrolling category chips above the grid,
 * fixed "Filter" button + bottom sheet with categories and sizes (snippets/collection-mobile-filter.liquid)
 * ------------------------------------------------------------------------------------------------------------------ */

.CMF,
.CMF__Strip {
  display: none;
}

.CMF__Empty {
  margin: 20px 0 40px;
  font-size: 12px;
  text-align: center;
}

@media screen and (max-width: 960px) {
  .CMF {
    display: block;
  }

  body.cmf-has-trigger .CollectionMain {
    padding-bottom: 76px;
  }

  html.cmf-open,
  html.cmf-open body {
    overflow: hidden;
  }

  .CMF__Trigger {
    position: fixed;
    left: 50%;
    bottom: max(calc(16px + env(safe-area-inset-bottom)), calc(16px + var(--cmf-lift, 0px)));
    z-index: 9;
    min-width: 140px;
    height: 44px;
    padding: 0 24px;
    border: 0;
    background: #262626;
    color: #fff;
    font: inherit;
    font-size: 11px;
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
    transform: translateX(-50%);
    transition: opacity .25s ease, transform .25s ease;
  }

  html.cmf-open .CMF__Trigger {
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 12px);
  }

  .CMF__Sheet:not([hidden]) {
    position: fixed;
    inset: 0;
    z-index: 30;
  }

  .CMF__Backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .35);
    opacity: 0;
    transition: opacity .25s ease;
  }

  .CMF__Panel {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: 85vh;
    overflow-y: auto;
    padding: 18px 16px calc(16px + env(safe-area-inset-bottom));
    background: var(--background, #fff);
    color: var(--text-color, #000);
    transform: translateY(100%);
    transition: transform .25s ease;
  }

  .CMF__Panel:focus {
    outline: none;
  }

  .CMF__Sheet.is-open .CMF__Backdrop {
    opacity: 1;
  }

  .CMF__Sheet.is-open .CMF__Panel {
    transform: translateY(0);
  }

  .CMF__Header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
  }

  .CMF__Title,
  .CMF__Label {
    margin: 0;
    font-size: 12px;
    letter-spacing: .05em;
    text-transform: uppercase;
  }

  .CMF__Close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-right: -10px;
    padding: 0;
    border: 0;
    background: none;
    color: inherit;
    cursor: pointer;
  }

  .CMF__Close svg {
    width: 14px;
    height: 14px;
  }

  .CMF__Group {
    padding: 16px 0;
    border-top: 1px solid var(--border-color, #e5e5e5);
  }

  .CMF__Label {
    margin-bottom: 12px;
    color: var(--text-color-light, #777);
    font-size: 11px;
  }

  .CMF__Hint {
    margin-left: 6px;
    text-transform: none;
    letter-spacing: 0;
    opacity: .7;
  }

  .CMF__Categories {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  /* Category chips (top strip and sheet) share the boxed look of the size chips */
  .CMF__Chip,
  .CMF__Category {
    display: inline-flex;
    align-items: center;
    height: 36px;
    padding: 0 14px;
    border: 1px solid var(--border-color, #d9d9d9);
    color: var(--text-color, #000);
    font-size: 12px;
    white-space: nowrap;
    transition: border-color .2s ease, background-color .2s ease, color .2s ease;
  }

  .CMF__Category {
    height: 40px;
    font-size: 13px;
  }

  .CMF__Chip.is-active,
  .CMF__Category.is-active {
    border-color: #262626;
    background: #262626;
    color: #fff;
  }

  .CMF__Strip {
    position: relative;
    display: block;
    margin: 0;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .CMF__Strip::-webkit-scrollbar {
    display: none;
  }

  .CMF__StripList {
    display: flex;
    gap: 6px;
    width: max-content;
    margin: 0;
    padding: 10px 10px 6px;
    list-style: none;
  }

  .CMF__Sizes {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  .CMF__Size {
    min-width: 56px;
    height: 40px;
    padding: 0 12px;
    border: 1px solid var(--border-color, #d9d9d9);
    background: transparent;
    color: var(--text-color, #000);
    font: inherit;
    font-size: 13px;
    cursor: pointer;
  }

  .CMF__Size[aria-pressed="true"] {
    border-color: #262626;
    background: #262626;
    color: #fff;
  }

  .CMF__Actions {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--border-color, #e5e5e5);
  }

  .CMF__Clear {
    padding: 0 4px;
    border: 0;
    background: none;
    color: inherit;
    font: inherit;
    font-size: 12px;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
  }

  .CMF__Apply.Button {
    flex: 1;
    height: 46px;
    padding: 0 12px;
    line-height: 46px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .CMF__Trigger,
  .CMF__Backdrop,
  .CMF__Panel {
    transition: none;
  }
}
