/** Shopify CDN: Minification failed

Line 1741:0 Unexpected "}"
Line 5787:72 Expected identifier but found whitespace
Line 5829:0 All "@import" rules must come first

**/
/*---------------- Fonts ------------------*/
@import url('https://fonts.googleapis.com/css2?family=Albert+Sans:ital,wght@0,400;0,450;0,500;1,400&display=swap');

@font-face {
  font-family: 'Founders Grotesk';
  src: url('FoundersGrotesk-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* AUGUST THEME: final global desktop nav spacer lock.
   Header__LinkSpacer is duplicate text used by the theme for sizing/hover
   mechanics. It must never render visibly, especially after scroll/header
   color locks. Keep it hidden globally while preserving its layout box. */
@media screen and (min-width: 1008px) {
  .Header .Header__MainNav .Header__LinkSpacer,
  .Header .Header__MainNav .Header__LinkSpacer *,
  html body .Header .Header__MainNav .Header__LinkSpacer,
  html body .Header .Header__MainNav .Header__LinkSpacer *,
  html.is-willbo-header-scrolled body .Header .Header__MainNav .Header__LinkSpacer,
  html.is-willbo-header-scrolled body .Header .Header__MainNav .Header__LinkSpacer *,
  html body.template-index .Header .Header__MainNav .Header__LinkSpacer,
  html body.template-index .Header .Header__MainNav .Header__LinkSpacer *,
  html body.template-index .Header:hover .Header__MainNav .Header__LinkSpacer,
  html body.template-index .Header:hover .Header__MainNav .Header__LinkSpacer *,
  html body.template-index .Header:focus-within .Header__MainNav .Header__LinkSpacer,
  html body.template-index .Header:focus-within .Header__MainNav .Header__LinkSpacer * {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    opacity: 0 !important;
    visibility: hidden !important;
    text-shadow: none !important;
    pointer-events: none !important;
  }
}

@font-face {
  font-family: 'Founders Grotesk';
  src: url('FoundersGrotesk-Regular-3.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Founders Grotesk';
  src: url('FoundersGrotesk-Medium-2.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Founders Grotesk';
  src: url('FoundersGrotesk-Semibold-4.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Tiempos Text';
  src: url('TestTiemposFine-Regular-BF66457a50e8bc9.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Tiempos Text';
  src: url('TestTiemposFine-RegularItalic-BF66457a50e36f9-2.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Tiempos Headline';
  src: url('TestTiemposHeadline-Light-BF66457a50df5a0-3.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Tiempos Headline';
  src: url('TestTiemposHeadline-LightItalic-BF66457a5088153-4.otf') format('opentype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Tiempos Headline';
  src: url('TestTiemposHeadline-Regular-BF66457a508e31a-5.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Tiempos Headline';
  src: url('TestTiemposHeadline-RegularItalic-BF66457a5091d70-6.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'FuturaMaxiCGDemiRegular';
  src: url('futura-maxi-cg-demi-regular.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'HelveticaNeue';
  src: url( 'HelveticaNeue.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'HelveticaNeueMedium';
  src: url( 'HelveticaNeueMedium.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Sabon';
  src: url('Sabon.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'GT America Medium';
  src: url( 'GT-America-Standard-Medium-Trial.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

body {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

.Heading {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

body.overflow-hidden {
  overflow: hidden;
}

.Button {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

.flex-container {
  display: flex !important;
}

.flex-wrap {
  flex-wrap: wrap;
}

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

.align-center {
  align-items: center;
}

.text-center {
  text-align: center;
}

.margin-auto {
  margin: auto;
}

.none-list-style {
  list-style: none;
}

.hidden {
  display: none;
}

.full-width {
  width: 100%;
}

.shopify-section--bordered+.shopify-section--bordered {
  border: none;
}

@media screen and (min-width: 641px) {
  .pw-100 {
    padding: 0 50px;
  }
}

@media screen and (min-width: 1140px) {
  .pw-100 {
    padding: 0 100px;
  }
}

.scroll-lock {
  overflow: hidden;
}

.NewsletterPopup {
  text-align: left;
  height: 100vh;
  z-index: 9999;
  bottom: 0;
  right: 0;
  top: 0;
  left: unset;
  padding-top: 44px;
}

.NewsletterPopup .Button:not([disabled]):hover {
  color: #fff;
}

.NewsletterPopup__Content {
  margin-top: 20px;
  font-size: 14px;
}

.NewsletterPopup .select-people-items {
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
}

#newsletter-popup .Alert-success {
  padding: 0;
}

#newsletter-popup .Alert-success p {
  text-transform: uppercase;
  font-weight: 700
}

#newsletter-popup .discount-code {
  text-align: center;
  border: solid 2px #333;
  padding: 10px 15px;
  font-weight: 700;
  position: relative;
}

#newsletter-popup .discount-code .copy-icon {
  position: absolute;
  right: 10px;
  cursor: pointer;
}

.select-people-item {
  font-size: 14px;
  display: flex;
  align-items: center;
}

.select-people-item .select-people-label {
  margin-left: 5px;
}

#newsletter-popup .discount-code .copied-message {
  position: absolute;
  right: -15px;
  top: 85%;
  background: #333;
  color: #fff;
  font-weight: 400;
  padding: 5px 10px;
  border-radius: 7px;
}

.NewsletterPopup .Heading {
  font-size: 16px;
  margin-bottom: 13px;
}

@media screen and (min-width: 641px) {
  .features--heading-large .custom-shopify-section--bordered .u-h1, 
  .features--heading-large .custom-shopify-section--bordered .Rte h1 {
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 5px;
  }

  .features--heading-large .custom-shopify-section--bordered .u-h2, 
  .features--heading-large .custom-shopify-section--bordered .Rte h2 {
    font-size: 20px;
  }
}

.ProductItem__Title {
  text-transform: unset !important;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

.ProductItem__Title a {
  font-size: 14px;
  font-weight: 500;
}

.ProductItem__Info {
  padding-top: 16px;
}

.ProductItem__Info .ProductItem__Title {
  margin-bottom: 5px;
}

.ProductItem__PriceList {
  font-size: 14px;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

.ProductItem__Info .ProductItem__PriceList + .ProductItem__PriceList,
.ProductItem__ColorAvailability {
  margin-top: 4px;
}

.ProductItem__Info .ProductItem__Label {
  display: inline-block;
  margin-top: 6px;
}

.ProductItem__PriceList.Text--subdued {
  color: #c4c4c4;
}

.ProductItem__Label  {
 font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
  text-align: left;
  /* margin: auto; */
}

.Header__MainNav .ProductItem__ViewButton {
  font-size: 0.85rem;
  color: #c4c4c4;
  text-transform: capitalize;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

.features--heading-normal .u-h6, 
.features--heading-normal .Rte h6, 
.features--heading-normal .u-h7, 
.features--heading-normal .u-h8 {
 font-size: 12px;
 font-weight: 525;
}

.HorizontalList__Item .cart-item {
  position: relative;
}
/*---------------- Featured collection ---------------*/

.custom-shopify-section--bordered .SectionHeader,
.shopify-section--menu-explorer .SectionHeader {
  padding: 0 50px;
}
.custom-shopify-section--bordered .SectionHeader__Heading,
.shopify-section--menu-explorer .SectionHeader__Heading {
  font-weight: 700;
  margin-bottom: 5px;
}

.custom-shopify-section--bordered .SectionHeader .Container[data-desktop-count="3"],
.shopify-section--menu-explorer .SectionHeader .Container[data-desktop-count="3"]
 {
  padding-left: var(--horizontal-spacing-four-products-per-row);
  margin-left: calc(-1 * var(--horizontal-spacing-four-products-per-row));
  margin-bottom: var(--vertical-spacing-four-products-per-row);
}

.custom-shopify-section--bordered .Mobile.ProductList--grid {
  display: none;
}

.custom-shopify-section--bordered .ProductList--grid .Grid__Cell .ProductItem__Info .ProductItem__Title {
  margin-bottom: 0;
}

.custom-shopify-section--bordered .ProductList--grid .Grid__Cell .ProductItem__Info .ProductItem__Title,
.custom-shopify-section--bordered .ProductList--grid .Grid__Cell .ProductItem__Info .ProductItem__PriceList,
.custom-shopify-section--bordered .ProductList--grid .Grid__Cell .ProductItem__Info .ProductItem__PriceList {
  line-height: 20px;
}

.CollectionInner .ProductItem__Info .ProductItem__Title,
.CollectionInner .ProductItem__Info .ProductItem__PriceList,
.CollectionInner .ProductItem__Info .ProductItem__PriceList {
  line-height: 20px;
}



/*.custom-shopify-section--bordered .ProductItem__Wrapper .AspectRatio {  
  height: 0;
  padding-bottom: 100% !important;
  overflow: hidden;
}

.custom-shopify-section--bordered .ProductItem__Wrapper .AspectRatio .Image--lazyLoaded.Image--fadeIn {
  width: 100%;
  height: auto;
  top: 50%;
  transform: translateY(-50%);
  object-fit: none;
}*/

.AspectRatio--square > img, 
.AspectRatio--short > img, 
.AspectRatio--tall > img {
  -o-object-fit: cover;
  object-fit: cover;
}

@media screen and (min-width: 768px) {
  .custom-shopify-section--bordered .ProductList--carousel {
    margin: 0 45px;
  }

  .custom-shopify-section--bordered .ProductList--carousel .flickity-prev-next-button.previous {
    right: 72px;
    left: unset;
  }

  .custom-shopify-section--bordered .ProductList--carousel .flickity-prev-next-button.next {
    right: 20px;
  }

  .custom-shopify-section--bordered .ProductList--carousel .flickity-prev-next-button {
    top: -55px;
  }
}

/* @media screen and (min-width: 1140px) {
  .custom-shopify-section--bordered .ProductList--carousel .Carousel__Cell {
    width: 33.3%;
  }
} */

@media screen and (min-width: 641px) and (max-width: 1007px) {
  .custom-shopify-section--bordered .ProductList--carousel .Carousel__Cell:first-child {
    margin-left: 10px;
  }
}

@media screen and (min-width: 641px) and (max-width: 1139px) {
  .custom-shopify-section--bordered .ProductList--carousel {
    margin: 0 5px;
  }
}

/*-------------- Blog page --------------*/
#section-blog-template header.PageHeader {
  max-width: 1260px;
  margin: 50px auto;
  margin-bottom: 20px;
}

#section-blog-template header.PageHeader .SectionHeader__Heading {
  font-size: 18px;
  font-weight: 700;
}

.Blog__TagList .HorizontalList__Item a {
  color: #c4c4c4;
  text-transform: unset;
}

#section-blog-template .ArticleListWrapper {
  padding-top: 30px;
}

#section-blog-template .ArticleListWrapper .ArticleList {
  margin-left: -24px !important;
}

#section-blog-template .ArticleListWrapper .ImageHero {
  position: relative;
  width: 100%;
  padding-top: 66.67%;
}

#section-blog-template .ArticleListWrapper .ImageHero .SectionHeader__Heading a {
  font-weight: 700;
}
#section-blog-template .ArticleListWrapper .ImageHero .SectionHeader .SectionHeader__ButtonWrapper {
  margin-top: -10px;
}
#section-blog-template .ArticleListWrapper .ImageHero .SectionHeader .SectionHeader__ButtonWrapper a {
  font-size: 12px;
  text-transform: uppercase;
}

.ArticleItem__ImageWrapper {
  position: relative;
  width: 100%;
  padding-top: 100%;
}
.ArticleItem__Content .ArticleItem__Category {
  font-size: 12px;
  color: #c4c4c4;
  margin-bottom: 0;
}
.ArticleItem__Content .ArticleItem__Title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 0;
}
.ArticleItem__Content .ArticleItem__Excerpt,
.ArticleItem__Content .ArticleItem__Link {
  font-size: 12px;
  margin-bottom: 0;
  text-transform: uppercase;
}
.ArticleItem__Content .ArticleItem__Link:before {
  content: unset;
}
.ArticleItem__Content .ArticleItem__Excerpt {
  text-transform: unset;
}
.Article {
  max-width: 1260px;
  margin: auto;
}

.Article__Wrapper .Article__Header {
  margin-bottom: 30px;
}

.ArticleToolbar {
  display: none;
}
.Article__ImageWrapper {
  margin: auto;
  margin-top: 50px;
  position: relative;
  width: 100%;
  padding-top: 66.67%;
  background-image: unset !important;
}

.Article__ImageWrapper .Article__Image {
  position: absolute;
}

.Article__ImageWrapper + .Article__Wrapper {
  margin-top: 45px;
}

.Article .Article__Wrapper {
  max-width: 1260px;
  padding: 40px 0;
  margin-bottom: 0;
}

.Article .ArticleNav {
  padding: 0;
  width: 100%;
}

.article__backyard .ArticleNav {
  margin-top: 50px;
}

.ArticleListWrapper.grid__podcasts,
.ArticleListWrapper.grid__backyard {
  max-width: unset;
}

.ArticleListWrapper.grid__podcasts .Grid--m>.Grid__Cell {
  padding-left: 24px;
}

.Article .Article__Wrapper .Article__Content .Article__Header .Article__Meta {
  font-size: 12px;
  color: #c4c4c4;
  margin-bottom: 5px;
}
.Article .Article__Wrapper .Article__Content .Article__Header .Article__Title {
  font-weight: 700;
}

#shopify-section-article-template-1 .Article,
#shopify-section-article-template-2 .Article,
.Article.article__backyard {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
#shopify-section-article-template-1 .Article .Article__ImageWrapper,
#shopify-section-article-template-2 .Article .Article__ImageWrapper,
.Article.article__backyard .Article__ImageWrapper {
  flex: 1 1 50%;
  padding-top: 50%;
}
#shopify-section-article-template-1 .Article .Article__Wrapper,
#shopify-section-article-template-2 .Article .Article__Wrapper,
.Article.article__backyard .Article__Wrapper {
  flex: 1 1 50%;
  padding: 0 50px;
  margin-top: 50px;
}
#shopify-section-article-template-1 .Article .Article__listen-links,
#shopify-section-article-template-2 .Article .Article__listen-links,
.Article.article__backyard .Article__listen-links {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}
#shopify-section-article-template-1 .Article .Article__listen-links .listen-links--item,
#shopify-section-article-template-2 .Article .Article__listen-links .listen-links--item,
.Article.article__backyard .Article__listen-links .listen-links--item {
  font-size: 12px;
  color: #235EA5;
}

.simple-image.article-backyard {
  max-width: 1260px;
  margin: auto;
  margin-top: 50px;
}

.Slideshow__Content--middleLeft .ButtonGroup>a, 
.Slideshow__Content--bottomLeft .ButtonGroup>a {
  text-decoration: underline;
}

.SectionHeader:not(:only-child) {
  margin-bottom: 0;
}

/* .custom-shopify-section--bordered .ProductList--carousel .slick-arrow {
  width: 43px;
  height: 40px;
  position: absolute;
  top: 0;
  right: 3%;
  z-index: 9;
  pointer-events: all;
  padding: 10px;
  border-radius: 20px;
  box-shadow: 1px 2px 11px 0px #c4c4c4;
  background-color: #fff;
  cursor: pointer;
}

.custom-shopify-section--bordered .ProductList--carousel .Icon--media-arrow-left {
  right: 7%;
}

.custom-shopify-section--bordered .ProductList--carousel .slick-list {
  overflow-x: auto;
}

.custom-shopify-section--bordered .ProductList--carousel .slick-list::-webkit-scrollbar {
  height: 1px;
  background: #dddad0;
  width: 4px;
}
.custom-shopify-section--bordered .ProductList--carousel .slick-list::-webkit-scrollbar-thumb {
  background: #333;
  border-radius: 2px;
}
.custom-shopify-section--bordered .ProductList--carousel .slick-list::-webkit-scrollbar-track {
  background: #333;
} */

@media screen and (min-width: 641px) and (max-width: 1139px) {
  .custom-shopify-section--bordered .SectionHeader, .shopify-section--menu-explorer .SectionHeader {
    padding: 0 24px;
  }
}

@media screen and (max-width: 1139px) {
  .shopify-section--menu-explorer .Linklist--grid {
    display: flex;
    margin-left: 20px !important;
    margin-right: 20px;
  }
  .shopify-section--menu-explorer .Linklist--grid .Grid__Cell {
    width: 33.3%;
    padding-left: 0 !important;
  }
  .shopify-section--menu-explorer .Linklist--grid .Grid__Cell:nth-child(3n+1) {
    margin-right: 0;
  }
  .shopify-section--menu-explorer .Linklist--grid .Grid__Cell:nth-child(3n+2) {
    margin-right: 0;
    margin-left: 0;
  }
  .shopify-section--menu-explorer .Linklist--grid .Grid__Cell:nth-child(3n) {
    margin-left: 0;
  }
  
  .shopify-section--menu-explorer {
  	padding-top: 1px;
  }
}

/* AUGUST THEME: hard fallback for tablet drawer Stories rows.
   Prestige can keep submenu anchors inline at the 1024px tablet breakpoint;
   these scoped rules force the Stories index back into the premium row system. */
@media screen and (max-width: 1139px) {
  .SidebarMenu .WillboMobileNav__StoryIndex,
  #sidebar-menu .WillboMobileNav__StoryIndex,
  #shopify-section-sidebar-menu .WillboMobileNav__StoryIndex {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 44px 42px 0 !important;
    margin: 0 !important;
  }

  .SidebarMenu .WillboMobileNav__StoryRow,
  #sidebar-menu .WillboMobileNav__StoryRow,
  #shopify-section-sidebar-menu .WillboMobileNav__StoryRow {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 46px !important;
    gap: 16px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    text-decoration: none !important;
  }

  .SidebarMenu .WillboMobileNav__StoryNum,
  #sidebar-menu .WillboMobileNav__StoryNum,
  #shopify-section-sidebar-menu .WillboMobileNav__StoryNum {
    display: inline-block !important;
    min-width: 25px !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 0.08em !important;
    line-height: 1.25 !important;
    color: rgba(17, 17, 17, 0.42) !important;
  }

  .SidebarMenu .WillboMobileNav__StoryTitle,
  #sidebar-menu .WillboMobileNav__StoryTitle,
  #shopify-section-sidebar-menu .WillboMobileNav__StoryTitle {
    flex: 1 1 auto !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 14.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.125em !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
    color: var(--w-black, #111111) !important;
  }

  .SidebarMenu .WillboMobileNav__StoryArrow,
  #sidebar-menu .WillboMobileNav__StoryArrow,
  #shopify-section-sidebar-menu .WillboMobileNav__StoryArrow {
    margin-left: auto !important;
    font-size: 12px !important;
    line-height: 1 !important;
    color: rgba(17, 17, 17, 0.45) !important;
  }
}

@media screen and (max-width: 640px) {
  .custom-shopify-section--bordered .SectionHeader, 
  .shopify-section--menu-explorer .SectionHeader {
    padding: 0 20px;
  }
  .custom-shopify-section--bordered .SectionHeader__Heading,
  .shopify-section--menu-explorer .SectionHeader__Heading {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 5px;
  }
  .custom-shopify-section--bordered .SectionHeader__SubHeading,
  .shopify-section--menu-explorer .SectionHeader__SubHeading {
    font-size: 12px;
  }

  .LinkItem__Info .Linklist--item {
    letter-spacing: 0px;
    line-break: anywhere;
    padding: 10px;
  }
  .custom-shopify-section--bordered .ProductList--grid {
    display: none;
  }
  .custom-shopify-section--bordered .Mobile.ProductList--grid {
    display: block;
    padding-bottom: 40px;
  }
  
  .custom-shopify-section--bordered .Mobile.ProductList--grid .slick-arrow {
  	width: 15px;
    height: 15px;
    position: absolute;
    top: 3%;
    z-index: 9;
    pointer-events: all;
  }
  
  .custom-shopify-section--bordered .Mobile.ProductList--grid .slick-disabled {
  	opacity: .3;
  }
  
  .custom-shopify-section--bordered .Mobile.ProductList--grid .Icon--media-arrow-left {
  	right: 50px;
    top: -5%;
  }
  
  .custom-shopify-section--bordered .Mobile.ProductList--grid .Icon--media-arrow-right {
  	right: 10px;
    top: -5%;
  }

  .custom-shopify-section--bordered .ProductList--carousel {
    display: none;
  }

  .custom-shopify-section--bordered .Mobile.ProductList--grid .slick-slide .Grid__Cell .ProductItem__Info {
    padding-left: 0;
    text-align: center;
  }

  /*.custom-shopify-section--bordered .Mobile.ProductList--grid .slick-slide.slick-current .Grid__Cell .ProductItem__Info {
    padding-left: 20px;
  }*/

  .custom-shopify-section--bordered .Mobile.ProductList--grid .slick-slide:last-child .Grid__Cell .ProductItem__Info {
    /*padding-left: 0 !important;*/
  }

  .custom-shopify-section--bordered .Mobile.ProductList--grid .Grid__Cell {
    padding-left: 0;
  }
  .custom-shopify-section--bordered .ProductListWrapper {
    overflow: unset;
  }
  #section-blog-template .Container {
    padding: 0 17px;
  }

  #section-blog-template header.PageHeader {
    margin: 20px auto;
  }

  #section-blog-template header.PageHeader .SectionHeader__Heading {
    font-size: 16px;
    margin-bottom: 0;
  }
  .ArticleItem__Content .ArticleItem__Title {
    font-size: 18px;
    letter-spacing: 0;
  }

  .Blog__TagList {
    margin-left: 0;
    margin-right: 0;
  }
  .Blog__TagList .HorizontalList__Item {
    margin-left: 0;
    margin-top: 0;
  }
  .Article__ImageWrapper {
    margin-top: 0;
  }
  .Article .Article__Wrapper,
  .Article .ArticleNav {
    padding: 30px 20px;
  }
  .Article .Article__Wrapper .Article__Content .Article__Header .Article__Title {
    font-size: 20px;
    letter-spacing: 0;
  }
  #shopify-section-article-template-1 .Article,
  #shopify-section-article-template-2 .Article,
  .Article.article__backyard {
    padding: 0 17px;
    padding-top: 17px;
  }
  #shopify-section-article-template-1 .Article .Article__Wrapper,
  #shopify-section-article-template-2 .Article .Article__Wrapper,
  .Article.article__backyard .Article__Wrapper {
    flex: 1 1 100%;
    padding: 0;
    margin-bottom: 50px;
    margin-top: 0;
  }
  #shopify-section-article-template-1 .Article .Article__ImageWrapper,
  #shopify-section-article-template-2 .Article .Article__ImageWrapper,
  .Article.article__backyard .Article__ImageWrapper {
    padding-top: 100%;
    flex: 1 1 100%;
    margin-bottom: 22px;
  }

  .custom-blog-template .ArticleListWrapper.grid__podcasts .Grid--m>.Grid__Cell {
    padding-left: 0;
  }
  
  .shopify-section--menu-explorer .Linklist--grid .Grid__Cell {
  	width: 100%;
    margin: 0 !important;
  }
  
  .shopify-section--menu-explorer .Linklist--grid .Grid__Cell .Linklist--item {
  	font-size: 20px;
  }
  
  .shopify-section--menu-explorer .Linklist--grid {
  	display: block;
    margin: 20px !important;
  }
  
  .shopify-section--menu-explorer .Section--spacingNormal {
  	margin-bottom: 0;
  }
  
  .SectionHeader__Heading.u-h6 {
  	line-height: 15px;
  }
}
/*---------------- Link Explore section ---------------*/

.Linklist--removeMargin[data-desktop-count="4"], 
.Linklist--removeMargin[data-desktop-count="3"] {
  margin-bottom: calc(-1 * var(--vertical-spacing-four-products-per-row));
}

@media screen and (min-width: 641px) {
  .Linklist--removeMargin {
    margin-bottom: -50px;
  }
}

.Linklist--grid[data-desktop-count="4"], 
.Linklist--grid[data-desktop-count="3"] {
  margin-left: calc(-1 * var(--horizontal-spacing-four-products-per-row));
  margin-left: 0;
}

@media screen and (min-width: 641px) {
  .Linklist--grid {
    padding: 0 24px;
    margin-left: -24px;
  }
}

@media screen and (min-width: 1140px) {
  .Linklist--grid {
    padding: 0 50px;
  }
}

.Linklist--grid[data-desktop-count="4"] > .Grid__Cell, 
.Linklist--grid[data-desktop-count="3"] > .Grid__Cell {
  padding-left: var(--horizontal-spacing-four-products-per-row);
  margin-bottom: var(--vertical-spacing-four-products-per-row);
  padding-left: 0;
}

.LinkItem__Info {
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 12px));
  border: none;
  position: relative;
  height: 0;
  width: 100%;
  padding-top: 100%;
}

.LinkItem__Info .Linklist--item {
  position: absolute;
  top: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.LinkItem__Info .Linklist--item .LinkItem__Title {
  z-index: 6;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.LinkItem__Info:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  z-index: 3;
  transition: all .3s ease;
}

.LinkItem__Info:hover::before {
  opacity: 0.3;
}

.LinkItem__Info--left {
  text-align: left;
}

.LinkItem__Info--center {
  text-align: center;
}

.LinkItem__Title {
  display: block;
  margin-bottom: 4px;
  font-size: 22px;
  font-weight: 700;
}

.template-collection .ImageHero,
.template-index .ImageHero {
  position: relative;
  padding-bottom: 74.25%;
  height: 0;
}

.ImageHero iframe[src] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 640px) {
  .template-collection .ImageHero,
  .template-index .ImageHero {
    padding-bottom: 100%;
  }

  .LinkItem__Info {
    padding-top: 56.58%;
    margin-bottom: 10px;
  }

  .LinkItem__Info .Linklist--item {
    letter-spacing: 0;
    padding: 0;
  }

  .LinkItem__Info .Linklist--item .LinkItem__Title {
    letter-spacing: 0;
    font-size: 25px;
    width: 100%;
  }
}

@media screen and (max-width: 400px) {
  .ImageHero--small {
    min-height: 270px;
  }
}

/*---------------- Slide show section ---------------*/
.Slideshow__Content .SectionHeader .u-h2 {
  font-size: 28px;
  margin-bottom: 5px;
}

.Slideshow__Content .SectionHeader .u-h1 {
  margin-top: 5px;
}

.Slideshow__Content .SectionHeader .u-h4 {
  margin-bottom: 0;
}

.Slideshow__Content .SectionHeader .u-h6 {
  margin-top: 10px;
  text-transform: unset;
}

@media screen and (max-width: 640px) {
  .Slideshow__Content .SectionHeader .u-h2 {
    font-size: 16px;
  }
  .Slideshow__Content .SectionHeader .u-h1 {
    font-size: 20px;
    font-weight: 700;
  }
  .Slideshow__Content {
    padding: 0 20px;
    bottom: 28px;
  }
}


@media screen and (min-width: 1008px){
	.Slideshow__Content {
      padding: 0 50px;
      bottom: 28px;
      max-width: 65%;
	}

  .Slideshow__Content--bottomCenter {
    max-width: 100%;
  }
}

h2.SectionHeader__Heading.SectionHeader__Heading--emphasize.Heading.u-h1 {
    margin: 0;
    letter-spacing: 0;
    line-height: 1.0em;
    font-weight: 600;
}

.SectionHeader__ButtonWrapper {
    margin-top: 20px;
}

a.ButtonGroup__Item {
    margin-top: 0 !important;
    font-size: 15px;
    color: white;
    line-height: 1.0em;
}

/*----------2 Column Images Section------------*/
.two-column__Image {
  object-fit: cover;
}

.two-column-images-container .image-item {
  height: 100%;
  overflow: hidden;
}

.two-column-images-container .image-item-link {
  flex: 0 0 50%;
}

.two-column-images-container .image-item > .overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .3;
}

.two-column-images-container .image-item-link:first-child>.image-item>img {
  padding-right: 5px;
}

.two-column-images-container .image-item-link:first-child>.image-item>.overlay {
  margin-left: -5px;
}

.two-column-images-container .image-item-link:last-child>.image-item>img {
  padding-left: 5px;
}

.two-column-images-container .image-item-link:last-child>.image-item>.overlay {
  margin-left: 5px;
}

.two-column-images-container .image-item__Heading {
  margin-bottom: 0;
}

.two-column-images-container .SectionHeader__ButtonWrapper {
  margin-top: 10px;
}

.ImageBlock__Content {
  position: absolute;
  padding: 0 50px;
  bottom: 28px;
  max-width: 65%;
}

.ImageBlock__Content--middleLeft,
.ImageBlock__Content--bottomLeft {
  text-align: left;
}

.ImageBlock__Content--middleLeft .ButtonGroup,
.ImageBlock__Content--bottomLeft .ButtonGroup {
  justify-content: flex-start;
}

.ImageBlock__Content--middleRight,
.ImageBlock__Content--middleRight {
  text-align: right;
}

.ImageBlock__Content--middleRight .ButtonGroup,
.ImageBlock__Content--bottomRight .ButtonGroup {
  justify-content: flex-end;
}

.ImageBlock__Content--bottomLeft,
.ImageBlock__Content--bottomCenter,
.ImageBlock__Content--bottomRight {
  top: auto;
  bottom: 28px;
  left: 0;
  transform: none;
}

@media screen and (min-width: 1140px) {
  .two-column-images-container.Container {
      padding: 0 50px;
  }
}

@media screen and (max-width: 640px) {
  .two-column-images-container .image-item-link {
    flex: 0 0 100%;
  }

  .ImageBlock__Content--bottomLeft,
  .ImageBlock__Content--bottomCenter,
  .ImageBlock__Content--bottomRight {
    top: auto;
    bottom: 28px;
    left: 0;
    transform: none;
    padding-left: 20px;
  }

  .two-column-images-container .image-item-link:first-child {
    margin-bottom: 30px;
  }

  .two-column-images-container .image-item-link:first-child>.image-item>img {
    padding-right: 0;
  }

  .two-column-images-container .image-item-link:last-child>.image-item>img {
    padding-left: 0;
  }
}

/*----------2 Column Products Section------------*/
.two-column__Product-Image {
  object-fit: cover;
}

.two-column-featured-products-container .image-item {
  height: 100%;
  overflow: hidden;
}

.two-column-featured-products-container .image-item-link {
  flex: 0 0 50%;
}

.two-column-featured-products-container .image-item > .overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .3;
}

.two-column-featured-products-container .image-item-link:first-child>.image-item>img {
  padding-right: 5px;
}

.two-column-featured-products-container .image-item-link:first-child>.image-item>.overlay {
  margin-left: -5px;
}

.two-column-featured-products-container .image-item-link:last-child>.image-item>img {
  padding-left: 5px;
}

.two-column-featured-products-container .image-item-link:last-child>.image-item>.overlay {
  margin-left: 5px;
}

.two-column-featured-products-container .image-item__Heading {
  margin-bottom: 0;
}

.two-column-featured-products-container .SectionHeader__ButtonWrapper {
  margin-top: 10px;
}

.two-column-featured-products-container .ImageBlock__Content {
  position: relative;
  max-width: unset;
  padding: 10px 0;
  bottom: unset;
}

.two-column-featured-products-container .ButtonGroup__Item {
  text-decoration: underline;
  margin: 0;
}

.two-column-featured-products-container .image-item-link:last-child>.ImageBlock__Content .ButtonGroup__Item {
  margin-left: 5px;
}

.two-column-featured-products-container .image-item-link__product-link {
  margin-top: 10px;
  display: block;
}

.two-column-featured-products-container .image-item-link:last-child>.image-item-link__product-link {
  margin-left: 5px;
}

@media screen and (max-width: 640px) {
  .two-column-featured-products-container .image-item-link {
    flex: 0 0 100%;
  }

  .two-column-featured-products-container .image-item-link:first-child>.image-item>img {
    padding-right: 0;
  }

  .two-column-featured-products-container .image-item-link:last-child>.image-item>img {
    padding-left: 0;
  }

  .two-column-featured-products-container .image-item-link:first-child {
    margin-bottom: 65px;
  }

  .two-column-featured-products-container .image-item-link:last-child>.image-item-link__product-link {
    margin-left: 0;
  }
}

/************ Landscape featured product section **************/
.landscape-featured-products-container .image-item img {
  height: 700px;
  width: 100%;
  object-fit: cover;
  object-position: center;
}

.full-width .landscape-featured-products-container .section-contents {
  position: relative;
  width: 100%;
  padding: 0 100px;
}

.landscape-featured-products-container .ImageBlock__Content {
  position: unset;
  padding: 0;
  max-width: unset;
  margin-right: 20px;
}

.landscape-featured-products-container .overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: .3;
}

.landscape-featured-products-container .SectionHeader__ButtonWrapper {
  margin-top: 10px;
}

.landscape-featured-products-container .SectionHeader__ButtonWrapper .ButtonGroup__Item {
  text-decoration: underline;
}

@media screen and (min-width: 1140px) {
  .two-column-featured-products-container {
    padding: 0 100px !important;
  }
}

@media screen and (max-width: 640px) {
  .landscape-featured-products-container .image-item img {
    height: 300px;
  }

  .landscape-featured-products-container .section-contents {
    padding: 0 20px;
  }

  .full-width .landscape-featured-products-container .section-contents {
    padding: 0 24px;
  }
}

/*----------------- Custom Rich Text section ------------------*/

.shopify-section--bordered>.Section--spacingNormal.rich-text-custom {
  padding-bottom: 0;
  /* margin-bottom: -30px; */
}

.rich-text-custom .FeatureText__Content {
  max-width: unset;
}

.rich-text-custom .FeatureText__ContentWrapper {
  padding-left: 50px;
  padding-right: 50px;
}

.Button--link {
  text-decoration: underline;
}

.rich-text-custom .SectionHeader__Heading.SectionHeader__Heading,
.rich-text-custom .SectionHeader__SubHeading.SectionHeader__SubHeading {
  margin-bottom: 0.5em;
}

.rich-text-custom .SectionHeader__SubHeading.SectionHeader__SubHeading {
  font-size: 16px;
}

.rich-text-custom .FeatureText .SectionHeader__Description {
  margin-top: 0;
  margin-bottom: 0.5em;
}

.rich-text-custom .SectionHeader__Description.content-full-width {
  max-width: 100%;
}

@media screen and (max-width: 640px) {
  .rich-text-custom .FeatureText__ContentWrapper {
    padding-left: 24px;
    padding-right: 24px;
  }
}

/*-------------- Text with image overlay --------------*/
@media screen and (max-width: 640px) {
  .image-with-text-overlay-our-story {
    padding: 0;
  } 
}

/*------------------- Custom rich text with image section -------------------*/
.Heading.Capitalize {
  text-transform: capitalize;
}

.Section.text-with-image-our-story {
  margin-bottom: 85px;
}

@media screen and (min-width: 641px) {
  .FeatureText--withImage .FeatureText__ContentWrapper {
    padding: 0;
    padding-left: 24px;
  }
}

@media screen and (max-width: 640px) {
  .text-with-image-our-story {
    margin-top: 45px;
  }

  .text-with-image-our-story .Container {
    padding: 0;
  }

  .text-with-image-our-story .FeatureText__ContentWrapper {
    text-align: left;
  }

  .text-with-image-our-story .SectionHeader__Heading {
    font-size: 18px;
  }

  .text-with-image-our-story .Container {
    display: flex;
    flex-wrap: wrap;
  }

  .text-with-image-our-story .Container .FeatureText__ContentWrapper {
    order: 1;
    flex: 0 0 100%;
  }

  .text-with-image-our-story .Container .FeatureText__ImageWrapper {
    order: 2;
    flex: 0 0 100%;
  }
}

/*--------------------- Product List Carousel ----------------------*/
.ProductList--carousel .Carousel__Cell {
  padding-bottom: 25px;
}

/*---------------- Drawer menu ----------------*/

.SidebarMenu .Drawer__Content .Drawer__Container .u-h6 {
  font-size: 13px;
}

.SidebarMenu .Drawer__Content .Drawer__Container .u-h7 {
  font-size: 12px;
}

.SidebarMenu .Drawer__Content .Drawer__Container .Linklist__Item .Link {
  font-size: 13px;
}

/*---------------- Search box ----------------*/

@media screen and (max-width: 640px) {
  .Search__SearchBar .Search__Input {
    font-size: 12px;
  }
}

/*---------------- Collection Filter ----------------*/

@media screen and (max-width: 640px) {
  .CollectionToolbar .CollectionToolbar__Group .CollectionToolbar__Item {
    font-size: 12px;
    text-align: right;
    padding-right: 20px;
  }
}

/*---------------- Collection Page ----------------*/
.ProductList .ProductItem__Image {
  object-fit: cover;
}

.ProductList-custom--grid[data-desktop-count="4"] {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.ProductList-custom--grid[data-desktop-count="2"] {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

@media screen and (max-width: 640px) {
  .CollectionInner {
    margin-top: 0;
  }

  .ProductList-custom--grid {
    grid-template-columns: 1fr 1fr !important;
  }

  .ProductList-custom--grid.ProductList--grid>.Grid__Cell {
    width: 100%;
  }

  .ProductList-custom--grid.ProductList--grid>.lifestyle-img {
    grid-column: span 2;
    grid-row: span 2;
  }

  .template-collection .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info {
    padding-left: 10px !important;
  }

  .ProductList-custom--grid .lifestyle-img img {
    width: 100%;
    object-fit: cover;
  }
}
 
@media screen and (min-width: 1008px) {
  .ProductList-custom--grid .Grid__Cell {
    width: 100%;
  }
  
  .ProductList-custom--grid .lifestyle-img {
    grid-column: span 2;
    grid-row: span 2
  }

  .ProductList-custom--grid .lifestyle-img img {
    width: 100%;
    height: calc(100% - 80px);
    object-fit: cover;
  }
}

/*---------------- our-story page ---------------*/
.Wrapper {
  max-width: 1160px;
  margin: 50px auto;
  display: table;
}

#shopify-section-background-video-our-story .background-video {
  margin-top: 50px;
}

@media screen and (min-width: 901px) and (max-width: 1139px) {
  .Wrapper {
    padding: 0 24px;
  }

  #shopify-section-background-video-our-story .ImageHero--large {
    min-height: 600px !important;
  }
}

@media screen and (min-width: 600px) and (max-width: 900px) {
  .Wrapper {
    padding: 0 24px;
  }

  #shopify-section-background-video-our-story .ImageHero--large {
    min-height: 400px !important;
  }
}

@media only screen and (max-width: 640px) {
  .Wrapper {
    margin: 50px 0;
  }

  div#shopify-section-text-with-image-our-story .FeatureText__Content, 
  div#shopify-section-text-with-image-our-story .SectionHeader__Description {
    max-width: unset !important;
  }
}

@media only screen and (min-width: 768px) {
  #section-image-with-text-overlay-our-story .ImageHero {
    position: relative;
    width: 100%;
    padding-top: 40%;
  }
	div#shopify-section-image-with-text-overlay-our-story .ImageHero__ContentOverlay {
      position: absolute;
      top: 45%;
      width: 100%;
	}
	.image-with-text-our-story .Grid.Grid--m.Grid--center {
		display: flex;
		align-items: center;
		justify-content: center;
	}
  .FeatureText--withImage .FeatureText__ImageWrapper {
    padding: 70px;
    padding-right: 50px;
  }
}
div#shopify-section-image-with-text-overlay-our-story h2.SectionHeader__Heading.Heading.u-h1, div#shopify-section-image-with-text-overlay-our-story-2 h2.SectionHeader__Heading.Heading.u-h1, div#shopify-section-image-with-text-overlay-our-story-3 h2.SectionHeader__Heading.Heading.u-h1, div#shopify-section-image-with-text-overlay-our-story-4 h2.SectionHeader__Heading.Heading.u-h1 {
	font-size: 28px;
	line-height: 50px;
  text-transform: none;
}
div#shopify-section-image-with-text-overlay-our-story-2 .ImageHero__ContentOverlay, div#shopify-section-image-with-text-overlay-our-story-3 .ImageHero__ContentOverlay, div#shopify-section-image-with-text-overlay-our-story-4 .ImageHero__ContentOverlay {
	flex-basis: auto;
}
.three-column-our-story, .image-with-text-our-story {
	max-width: 1160px;
	margin: 0 auto;
	padding: 70px 50px;
}

div#shopify-section-custom-html-our-story p {
	max-width: 1080px;
	margin: 0 auto;
	font-size: 32px;
	line-height: 48px;
  padding: 0;
	padding-bottom: 20px;
}

div#shopify-section-custom-html-our-story a {
	margin: 0 20px;
	margin-top: 8px;
}
div#shopify-section-text-with-image-our-story .FeatureText__Content, div#shopify-section-text-with-image-our-story .SectionHeader__Description {
	max-width: 430px;
	margin: 0 auto;
	font-size: 20px;
	line-height: 42px;
}
#shopify-section-text-with-image-our-story p{
	text-align: justify;
  font-size: 16px;
  line-height: 24px;
}
#shopify-section-text-with-image-our-story h2.SectionHeader__Heading.Heading.u-h1 {
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 600;
}
.three-column-our-story p {
  margin-bottom: 30px;
  text-align:justify;
  font-size: 14px;
}
.three-column-our-story .Grid__Cell.\31 \/2--tablet.\31 \/3--lap-and-up {
    text-align: justify;
  }
}
/* div#shopify-section-three-column-our-story {
	background: #ededed;
} */
.image-with-text-our-story h2 {
	font-size: 1rem;
  
}
.three-column-our-story p.title {
	font-size: 1rem;
	line-height: 1.625rem;
	letter-spacing: 0;
	font-weight: 600;
	margin-top: 25px;
	margin-bottom: 20px;
}
.our-story footer#section-footer {
    margin-top: 0px;
}
@media only screen and (max-width: 640px) {
  #shopify-section-text-with-image-our-story .FeatureText--withImage .FeatureText__ContentWrapper {
    padding-top: 40px;
    padding-bottom: 0;
    padding-right: 0;
    text-align: left;
  }

  #section-image-with-text-overlay-our-story .ImageHero {
    position: relative;
    width: 100%;
    padding-top: 66.67%;
    min-height: unset;
  }
  #section-image-with-text-overlay-our-story .ImageHero .ImageHero__ContentOverlay {
    position: absolute;
    top: 42%;
    max-width: 350px;
  }
  div#shopify-section-image-with-text-overlay-our-story h2.SectionHeader__Heading.Heading.u-h1, div#shopify-section-image-with-text-overlay-our-story-2 h2.SectionHeader__Heading.Heading.u-h1, div#shopify-section-image-with-text-overlay-our-story-3 h2.SectionHeader__Heading.Heading.u-h1, div#shopify-section-image-with-text-overlay-our-story-4 h2.SectionHeader__Heading.Heading.u-h1 {
    font-size: 16px;
      line-height: 32px;
  }
  div#shopify-section-custom-html-our-story p,div#shopify-section-text-with-image-our-story p{
    font-size: 16px;
    line-height: 25px;
    
  }
  div#shopify-section-custom-html-our-story a {
    margin: 0 15px;
    margin-top: 8px;
    font-size: 14px;
  }

  .FeatureText {
    text-align: left;
  }
  .FeatureText__ImageWrapper {
    padding: 50px;
  }
  #section-image-with-text-overlay-our-story-2 .ImageHero {
    min-height: 250px;
  }
  .three-column-our-story p {
    padding: 0 24px;
  }

  .image-with-text-our-story .Grid--m {
    margin-left: 0;
  }
  .image-with-text-our-story .Grid--m .Grid__Cell {
    padding-left: 0;
  }
  .image-with-text-our-story .Grid--m .Grid__Cell h2 {
    margin-top: 30px;
  }
  .image-with-text-our-story .Grid--m .Grid__Cell h2,
  .image-with-text-our-story .Grid--m .Grid__Cell p {
    padding: 0 24px;
  }

  .three-column-our-story, 
  .image-with-text-our-story {
    padding: 30px 0;
    padding-bottom: 0;
  }
  .three-column-our-story .Grid--m .Grid__Cell img {
    padding: 0 24px;
  }
  .three-column-our-story p.title {
    margin-top: 20px;
    margin-bottom: 5px;
  }
  #shopify-section-background-video-our-story {
    padding: 10px 0;
  }

  #shopify-section-background-video-our-story .background-video {
    margin-top: 0;
    margin-bottom: 50px;
  }

  #shopify-section-background-video-our-story .ImageHero--large {
    min-height: unset;
    display: block;
    position: relative;
    height: 0;
    padding-bottom: 56.45%;
    line-height: 0;
  }
  .ImageHero--large iframe[src] {
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
  }

  .our-story-footer .footer__content-wrapper {
    padding: 0 24px;
  }
  .our-story-footer .cs-footer__list-header {
    margin-bottom: 20px;
  }
  #shopify-section-our-story-footer {
    margin-bottom: 50px;
  }
}

@media only screen and (min-width: 600px) {
  #shopify-section-background-video-our-story .ImageHero--large {
    min-height: 650px;
    max-width: 1160px;
    margin: auto;
    padding: 0;
  }
}

@media only screen and (min-width: 1008px) and (max-width: 1139px) {
  .three-column-our-story, 
  .image-with-text-our-story {
    padding: 60px 24px;
  }
}

@media only screen and (min-width: 641px) and (max-width: 1007px) {
  .three-column-our-story p {
    padding: 0 24px;
  }
  .image-with-text-our-story .Grid.Grid--m.Grid--center {
    margin-left: 0;
  }

  .image-with-text-our-story .Grid.Grid--m.Grid--center .Grid__Cell:first-child {
    padding-left: 24px;
  }

  .image-with-text-our-story .Grid.Grid--m.Grid--center .Grid__Cell:last-child {
    padding-right: 24px;
  }

  #shopify-section-custom-html-our-story .Container {
    padding: 0 24px;
  }

  #shopify-section-custom-html-our-story .Container {
    padding-left: 0;
    padding-right: 0;
  }
}

.our-story-footer .Container {
  padding: unset;
}

.our-story-footer .Faq__Icon {
  left: unset;
  right: 0;
}
.our-story-footer .Faq__ItemWrapper {
  padding-left: 0;
}
.our-story-footer .cs-footer__list-header {
  color: #c4c4c4;
  font-weight: 600;
}

.our-story-footer .Faq__Question {
  font-weight: 600;
}
.our-story-footer .Faq__Answer {
  font-size: 14px;
}

.our-story-footer .Faq__Item[aria-expanded=true] .Faq__ItemWrapper .Faq__Question {
  color: #bf8e04;
}

.cs-footer__list-header {
    margin-top: 0;
    margin-bottom: 30px;
}
.cs-footer__list {
    padding-left: 0;
    margin-top: 0;
}
.cs-footer__list-item {
    list-style: none;
    margin-bottom: 30px;
}
.footer__content-wrapper {
    padding: 70px 50px;
    max-width: 1260px;
    justify-content: space-between;
    width: 100%;
    margin: 0 auto;
  	padding-bottom: 0;
}
@media only screen and (min-width: 640px){
/*.cs-footer__list-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}*/

.cs-footer__list-header {
    margin-right: auto;
    margin-bottom: 0;
}
.cs-footer__list {
    display: flex;
    margin-bottom: 0;
    margin-left: auto;
    justify-content: space-between;
    align-items: center;
}
  .cs-footer__list-item {
    margin-bottom: 0;
    margin: 0 15px;
}
}
a.btn.Button.Button--primary {
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    min-width: 150px;
    border-radius: 0px;
    border-width: 1px;
    border-style: solid;
    font-size: 10px;
    text-align: center;
    text-transform: uppercase;
    transition: all .2s ease;
    letter-spacing: .72px;
    line-height: 1;
    padding: 12px;
    cursor: pointer;
}
.btn.Button.Button--primary::before,a.Button.Button--primary.i-w-t::before{
    border-radius: 0px;
}
a.Button.Button--primary.i-w-t {
    justify-content: center;
    align-items: center;
    width: auto;
    min-width: 150px;
    max-width: 160px;
    border-radius: 30px;
    border-width: 1px;
    border-style: solid;
    font-size: 12px;
    font-family: AlteHaasGroteskRegular,sans-serif;
    text-align: center;
    text-transform: uppercase;
    transition: all .2s ease;
    letter-spacing: .72px;
    line-height: 1;
    padding: 12px;
    cursor: pointer;
  	max-width: 160px;
}
footer#section-footer {
  margin-top: 0px;
  padding: 0 50px;
  padding-top: 50px;
}

footer#section-footer .Container {
  border-top: solid 1px #c4c4c4;
  border-bottom: solid 1px #c4c4c4;
  padding: 50px 0;
}

.Footer__Inner {
  justify-content: flex-start;
}

.Footer__Inner .Footer__Block {
  font-size: 14px;
  text-transform: uppercase;
  border-right: 1px solid #c4c4c4;
  width: 25%;
}

.Footer__Inner .Footer__Block:last-child {
  border: none;
}

.klaviyo-form-XrjuxD form {
  border: none !important;
}

.klaviyo-form {
  margin-bottom: 20px;
  font-family: AlteHaasGroteskRegular,sans-serif !important;
}

.klaviyo-form p {
  font-family: AlteHaasGroteskRegular,sans-serif !important;
}

.footer__logo .Footer__StoreName {
  width: 100%;
  display: block;
  margin-left: 10px;
  margin-top: 10px;
}

.Footer {
  border-top: unset !important;
}

@media only screen and (max-width: 640px) {
  footer#section-footer {
    padding: 0 20px;
  }

  footer#section-footer .Container {
    padding-bottom: 0;
  }
  footer#section-footer .Footer__Block .Footer__Title {
    font-size: 14px;
  }
}

/*------------------- Collection page --------------------*/

.PageHeader--withBackground .SectionHeader__Heading {
  font-weight: 700;
}

.ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
.ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut {
  padding-left: 0;
  padding-top: 0;
  font-family: var(--w-sans, "DM Sans", system-ui, sans-serif) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16.8px !important;
  letter-spacing: 0.01em !important;
  color: #9F2F24 !important;
  text-transform: unset;
  margin-top: 0;
}

.ProductList--grid .ProductItem__Info .ProductItem__Title,
.ProductList--grid .ProductItem__Info .ProductItem__PriceList,
.ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut {
  letter-spacing: 0;
  margin-bottom: 0;
}

.ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
.ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut {
  font-size: 12px !important;
  line-height: 16.8px !important;
  color: #9F2F24 !important;
}

/* Product cards: quiet hover color swatches */
.ProductItem__ColorAvailability {
  position: relative !important;
  min-height: 17px !important;
}

.ProductItem__ColorAvailabilityText {
  display: inline-block !important;
  transition: opacity 180ms ease, transform 180ms ease !important;
}

.WillboProductSwatches {
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(-50%) translateY(2px) !important;
  transition: opacity 180ms ease, transform 180ms ease !important;
}

.WillboProductSwatch {
  display: block !important;
  width: 11px !important;
  height: 11px !important;
  border: 1px solid rgba(17, 17, 17, 0.12) !important;
  border-radius: 0 !important;
  background-position: center !important;
  background-size: cover !important;
}

.WillboProductSwatch--light {
  border-color: rgba(17, 17, 17, 0.22) !important;
}

@media screen and (min-width: 1008px) {
  .ProductItem:hover .ProductItem__ColorAvailabilityText,
  .ProductItem__Wrapper:hover .ProductItem__ColorAvailabilityText {
    opacity: 0 !important;
    transform: translateY(-2px) !important;
  }

  .ProductItem:hover .WillboProductSwatches,
  .ProductItem__Wrapper:hover .WillboProductSwatches {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(-50%) translateY(0) !important;
  }
}

@media screen and (max-width: 1007px) {
  .WillboProductSwatches {
    display: none !important;
  }
}

#collection-filter-drawer .Drawer__Content {
  overflow-y: auto;
}

.CollectionFilters .Drawer__Main {
  padding-top: 0;
}

.filter-wrapper {
  position: absolute;
  width: 100%;
  overflow-x: hidden;
  padding: 25px 25px 40px 25px;
}

.filter-menu__item {
  margin-bottom: 10px;
}
.filter-variant {
  cursor: pointer;
  position: relative;
  height: 40px;
  letter-spacing: .05em;
  border: 1px solid #e5e5e5;
  font-size: .75rem;
  padding-left: 12px;
  padding-right: 41px;
  display: flex;
  align-items: center;
}

.filter-variant__ico {
  width: 39px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
  top: 0;
  padding-right: 1px;
  border-left: 1px solid #e5e5e5;
}
.filter-variant__ico:before {
  content: '';
  display: block;
  height: 1px;
  width: 11px;
  background: #181818;
  position: absolute;
}

.filter-variant__ico:after {
  content: '';
  display: block;
  height: 11px;
  width: 1px;
  background: #181818;
  position: absolute;
  transition: transform .3s;
}

.filter-variant.active-filter-variant .filter-variant__ico:after {
  transform: rotate(-90deg);
}

.filter-variant-list {
  list-style: none;
}
.filter-variant-list .CollectionToolbar__Item--layout {
  width: 100%;
  padding: 10px 10px;
  background: #f7f7f7;
  border: 1px solid #e5e5e5;
  border-top: none;
  text-align: left;
}
.filter-variant-list .CollectionToolbar__LayoutType svg {
  width: 16px;
  height: 16px;
}

.filter-custom-checkbox {
  display: flex;
  height: 100%;
  height: 39px;
  border: 1px solid #e5e5e5;
  border-top: none;
  background: #f7f7f7;
  align-items: center;
  position: relative;
}
.filter-custom-checkbox input[type=checkbox] {
  position: absolute;
  left: -9999px;
}

.filter-custom-checkbox input[type=checkbox]:checked+label, 
.filter-custom-checkbox input[type=checkbox]:not(:checked)+label {
  flex: 1;
  margin-left: 38px;
  padding-left: 12px;
  border-left: 1px solid #e5e5e5;
  font-size: .75rem;
  position: relative;
  height: 100%;
  align-items: center;
  display: flex;
}
.filter-custom-checkbox input[type=checkbox]:checked:checked+label:before, 
.filter-custom-checkbox input[type=checkbox]:not(:checked):checked+label:before {
  background: #181818;
}
.filter-custom-checkbox input[type=checkbox]:checked+label:before, 
.filter-custom-checkbox input[type=checkbox]:not(:checked)+label:before {
  content: '';
  width: 9px;
  height: 9px;
  border-radius: 100%;
  z-index: 10;
  position: absolute;
  border: 1px solid #181818;
  top: 50%;
  left: -25px;
  margin-top: -5px;
}
.applied-filters {
  display: none;
}
.applied-filters__title {
  position: relative;
  height: 40px;
  border: 1px solid #e5e5e5;
  font-size: .75rem;
  padding-left: 12px;
  padding-right: 41px;
  display: flex;
  background: #f7f7f7;
  align-items: center;
}
.remove-all-filters {
  cursor: pointer;
  width: 39px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
  top: 0;
  background: #fff;
  letter-spacing: .05em;
  border-left: 1px solid #e5e5e5;
}

.remove-all-filters svg {
  width: 9px;
}

.applied-filters__list {
  padding: 12px 15px 12px 12px;
  background: #f7f7f7;
  border: 1px solid #e5e5e5;
  border-top: none;
  font-size: .75rem;
}

.applied-filters__list li {
  display: inline;
  letter-spacing: .05em;
}
#collection-filter-drawer {
  z-index: 999;
}

#collection-filter-drawer .Collapsible__Inner {
  visibility: visible;
}

@media screen and (max-width: 640px) {
  .PageHeader--withBackground .SectionHeader__Heading {
    font-size: 17px;
  }
  .PageHeader--withBackground {
    height: 0;
    padding-top: 66.6%;
    min-height: unset;
    position: relative;
  }
  .PageHeader--withBackground .Container {
    position: absolute;
    top: 20%;
    left: 0;
    right: 0;
  }

  /*.template-search .ProductList--grid, 
  .template-collection .ProductList--grid {

  }*/

  .ProductList--grid {
    padding: 0;
    margin-left: -1px;
    margin-right: 0;
  }
  .ProductList--grid .Grid__Cell:nth-child(2n+1) .ProductItem__Wrapper .ProductItem__Info {
    padding-left: 20px;
  }

  .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info {
    padding-left: 20px;
  }

  .ProductList--grid .ProductItem__Info {
    font-size: 14px;
  }
  .custom-shopify-section--bordered .ProductList--grid .Grid__Cell .ProductItem__Wrapper .AspectRatio {
    height: 0;
    padding-top: 125%;
  }
}

/*------------------- Product page --------------------*/

.Product__Gallery--block {
  display: flex;
  flex-wrap: wrap;
  margin-left: 25px;
}

.Product__Gallery.Mobile {
  display: none;
}

.Product__Gallery--block .Product__BlockItem {
  flex: 1 1 50%;
  max-width: 50%;
  padding: 5px;
}

.Product__Gallery--block .Product__BlockItem.full-width {
  flex: 0 0 100%;
  max-width: 100%;
}

.Product__Gallery--block .Product__BlockItem .AspectRatio {  
  height: 0;
  padding-bottom: 125% !important;
  overflow: hidden;
}

.Product__Gallery--block .Product__BlockItem .AspectRatio .Image--fadeIn {
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  object-fit: cover;
}

.Product__InfoWrapper .Product__Info .ProductMeta__Title {
  font-weight: normal;
  text-transform: unset;
}

.Product__InfoWrapper .Product__Info .ProductMeta__PriceList {
  margin-top: 0;
}

.Product__InfoWrapper .Product__Info .ProductForm__Variants {
  display: flex;
  flex-wrap: wrap;
}

.Product__InfoWrapper .Product__Info .ProductForm__Variants .ProductForm__Option--Color {
  order: 1;
  flex: 1 1 100%;
  width: 100%;
}

.Product__InfoWrapper .Product__Info .ProductForm__Variants .ProductForm__Option--Size {
  order: 2;
  flex: 1 1 100%;
}

.Product__InfoWrapper .Product__Info .ProductForm__Variants .ProductForm__Inventory {
  order: 4;
  flex: 1 1 100%;
}

.Product__InfoWrapper .Product__Info .ProductMeta__Price,
.Product__InfoWrapper .Product__Info .ProductForm__Variants .ProductForm__Label,
.Product__InfoWrapper .Product__Info .ProductForm__Variants .ProductForm__SelectedValue,
.Product__InfoWrapper .Product__Info .ProductForm__Variants .ProductForm__Inventory,
.Product__InfoWrapper .Product__Info .ProductForm__Variants .SizeSwatchList,
.Product__InfoWrapper .Product__Info .ProductForm__Variants .TitleSwatchList {
  font-size: 12px;
}

.Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList.Mobile {
  display: none;
}

.Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList li > .ColorSwatch__Radio.is-selected + label:after {
  border: 1px solid #000 !important;
}

.Product__InfoWrapper .usa-tag {
  color: #842700;
}

.product-special-infos {
  display: flex;
  align-items: center;
  font-size: 12px;
}

.product-special-infos .info-item {
  margin: 0 10px;
  text-decoration: underline;
  cursor: pointer;
}

.product-infos-modal--overlay {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .3;
  z-index: 8;
}

.product-infos-modal {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 650px;
  height: 650px;
  transform: translate(-50%, -50%);
  background: #fff;
  z-index: 9;
}

.product-infos-modal .close-modal {
  position: absolute;
  right: 30px;
  top: 20px;
  width: 30px;
  height: 30px;
  display: block;
  cursor: pointer;
}

.product-infos-modal .close-modal::before {
  position: absolute;
  content: '';
  top: 50%;
  left: 3px;
  height: 2px;
  width: 25px;
  transform: rotate(45deg);
  background: #000;
}

.product-infos-modal .close-modal::after {
  position: absolute;
  content: '';
  top: 50%;
  left: 3px;
  height: 2px;
  width: 25px;
  transform: rotate(-45deg);
  background: #000;
}

@media screen and (max-width: 640px) {
  .product-infos-modal {
    width: 350px;
    height: 350px;
  }

  .product-infos-modal .close-modal {
    right: 10px;
    top: 10px;
  }
}

.SizeSwatch__Radio:checked+.SizeSwatch {
  background: #000;
  color: #fff;
}

.SizeSwatchList .SizeSwatch {
  min-width: 50px;
  min-height: 50px;
  padding: unset;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  border-color: #000;
}

.SizeSwatchList .SizeSwatch.sold-out {
  pointer-events: none;
  background: #f7f7f7;
  color: #c4c4c4;
}

.TitleSwatchList .TitleSwatch {
  min-width: 50px;
  min-height: 50px;
  padding: unset;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding: 0 5px;
}

.TitleSwatch__Radio {
  display: none;
}

.Product__InfoWrapper .Product__Info .ProductForm__Variants label.ColorSwatch {
  background-size: cover;
  background-position: center;
  width: 50px;
  height: 50px;
}

.Product__Tabs .Collapsible {
  padding: 0;
}

.Product__Tabs .Collapsible__Button {
  font-size: 12px;
  padding: 15px 0;
}

.Product__Tabs .Collapsible__Content {
  padding-right: 0px;
  padding-bottom: 20px;
}

.Product {
  max-width: 100%;
}

.Product .Product__Wrapper {
  max-width: 65%;
  margin-top: 25px;
}

.Product .Product__Wrapper .Product__InfoWrapper {
  width: 35%;
  margin-top: 5px;
}

.Product .Product__Wrapper .Product__InfoWrapper .Product__Info {
  width: 78%;
}

.ColorSwatch__Radio.is-active + .ColorSwatch:after {
  border: 1px solid currentColor !important;
}

.Search__InputIconWrapper,
.Search__Input::placeholder {
  color: #c4c4c4;
  font-size: 11px;
}
.Search__Input {
  font-size: 11px;
}
.TableWrapper table {
  width: 100% !important;
  font-size: 14px;
}
.TableWrapper table tr td {
  width: auto !important;
  padding: 5px 10px;
}


/* Product Swatch */
@media screen and (min-width: 1008px) {
  ul.HorizontalList.HorizontalList--spacingTight {
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
    padding: 8px;

  }
}

ul.HorizontalList.HorizontalList--spacingTight .HorizontalList__Item {
  margin: 0 5px 5px 5px;

}


@media screen and (min-width: 641px) {
  .features--heading-large .u-h4, .features--heading-large .Rte h4 {
    font-size: 18px;
  }
}

@media screen and (min-width: 641px) and (max-width: 1007px) {
  .Product .Product__Wrapper {
    max-width: 100%;
    overflow: hidden;
  }
  .Product .Product__Wrapper .Product__InfoWrapper {
    width: 100%;
  }
  .Product__Gallery--block {
    margin-right: 20px;
  }

  .Product .Product__Wrapper .Product__InfoWrapper .Product__Info {
    width: 100%;
    max-width: unset;
  }
  .Product .Product__Wrapper .Product__InfoWrapper .Product__Info .Container {
    padding: 0 25px;
  }

  .Product__InfoWrapper .Product__Info .ProductMeta__Title,
  .Product__InfoWrapper .Product__Info .ProductMeta__PriceList {
    text-align: left;
  }

  footer#section-footer {
    padding: 0 25px;
  }
}

@media screen and (max-width: 640px) {
  .TableWrapper {
    width: 100%;
    margin-left: unset;
    margin-right: unset;
  }
  .TableWrapper table {
    font-size: 10px;
  }
  .TableWrapper table tr td {
    padding: 5px;
  }
  .Product__Gallery--block {
    display: none;
  }

  .Product__Gallery.Mobile {
    display: block;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList {
    display: none;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList.Mobile {
    display: block;
    width: 100%;
    margin: auto;
    text-align: center;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList.Mobile .HorizontalList__Item {
    padding: 5px 0;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList.Mobile .ColorSwatch--large {
    width: 50px;
    height: 50px;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList.Mobile.grid .HorizontalList__Item {
    margin: 0;
    width: 25%;
  }
  .Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList.Mobile.grid .ColorSwatch--large {
    width: 70px;
    height: 70px;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList.Mobile.grid {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList.Mobile .slick-track{
    display: flex;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .ColorSwatchList.Mobile .slick-slide {
    max-width: 91px;
    min-width: 90px;
  }

  .Product .Product__Wrapper {
    max-width: 100%;
    margin-top: 0;
    overflow: hidden;
  }
  .Product .Product__Wrapper .Product__InfoWrapper {
    width: 100%;
  }
  .Product .Product__Wrapper .Product__InfoWrapper .Product__Info {
    width: 100%;
    max-width: unset;
  }
  .Product .Product__Wrapper .Mobile.Product__Gallery .Product__SlideItem .AspectRatio {
    height: 0;
    padding-top: 125%;
  }

  .Product .Product__Wrapper .Mobile.Product__Gallery .Product__SlideItem .AspectRatio > img {
    object-fit: cover;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .SizeSwatchList {
    display: flex;
    flex-wrap: wrap;
    margin-left: -4px;
    margin-right: -4px;
    justify-content: center;
  }

  .Product__InfoWrapper .Product__Info .ProductForm__Variants .SizeSwatchList .HorizontalList__Item {
    width: 50px;
    height: 50px;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }

  .ProductMeta__Description {
    text-align: center;
  }

  .usa-tag {
    text-align: center;
  }

  .product-special-infos {
    text-align: center;
    justify-content: center;
  }

  .ProductForm__Label {
    text-align: center;
  }
}

.SizeSwatchList .HorizontalList__Item.no-setting-color {
  display: block !important;
}

/* Upsell products */
.upsell-products__wrapper {
  margin-top: 50px;
}

.upsell-products__wrapper .upsell-products__heading {
  font-size: 12px;
  margin-bottom: 10px;
}

.upsell-products__item .ImageWrapper {
  height: 0;
  padding-bottom: 38%;
  overflow: hidden;
  position: relative;
  top: 125%;
}

.upsell-products__item .ProductItem {
  margin-bottom: 10px;
}

.upsell-products__item .ImageWrapper .productMedia {
  width: 100%;
  height: 100%;
  top: 0;
  object-fit: cover;
  position: absolute;
}

.upsell-products__item .ProductItem__Wrapper {
  display: flex;
  flex-wrap: wrap;
  cursor: pointer;
}

.upsell-products__item .ProductItem__Wrapper .ImageWrapper {
  flex: 0 0 30%;
}

.upsell-products__item .ProductItem__Wrapper .ProductInfo {
  flex: 0 0 60%;
  padding-left: 10px;
  font-size: 12px;
}

.upsell-products__item .ProductItem__Wrapper .ProductInfo .product-title {
  font-size: 16px;
  font-weight: 500;
  font-family: 'HelveticaNeueMedium' !important;
}

.upsell-products__item .ProductItem__Wrapper .ProductInfo .product-title {
  font-size: 14px;
}

.upsell-products__item .ProductItem__Wrapper .ProductInfo .QuickShop {
  padding-top: 40px;
}

.QuickShopDrawer {
  position: fixed;
  right: -950px;
  top: 0;
  width: 950px;
  height: 100vh;
  z-index: 9999;
  background: #fff;
  overflow-y: auto;
  transition: all .3s ease-in-out;
}

.QuickShopDrawer__Page {
  right: -450px;
  width: 450px;
}

.QuickShopDrawer::-webkit-scrollbar {
  width: 5px;
}

.QuickShopDrawer::-webkit-scrollbar-track {
  background: #f1f1f1;
}

.QuickShopDrawer::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 2px;
}

.selected-upsell-product-wrapper {
  display: flex;
  flex-wrap: wrap;
}

.QuickShopDrawer__Page .selected-upsell-product-wrapper {
  margin-top: 65px;
}

.QuickShopDrawer__Page .ProductMeta-wrapper {
  margin: 0;
  padding: 0 30px;
  margin-bottom: 15px;
}

.QuickShopDrawer__Page .ProductMeta-wrapper .ProductMeta__PriceList {
  margin-top: 5px;
}

.selected-upsell-product-wrapper .product-image-wrapper {
  flex: 0 0 60%;
  display: flex;
  flex-wrap: wrap;
}

.QuickShopDrawer__Page .selected-upsell-product-wrapper .product-image-wrapper {
  flex: 0 0 100%;
  flex-wrap: nowrap;
  overflow-x: scroll;
}

.QuickShopDrawer__Page .selected-upsell-product-wrapper .product-image-wrapper::-webkit-scrollbar {
  height: 2px;
}

.QuickShopDrawer__Page .selected-upsell-product-wrapper .product-image-wrapper::-webkit-scrollbar-track {
  background-color: #f1f1f1;
}

.QuickShopDrawer__Page .selected-upsell-product-wrapper .product-image-wrapper::-webkit-scrollbar-thumb {
  border-radius: 1px;
  background: #aaa;
}

.selected-upsell-product-wrapper .product-image-wrapper .product-image {
  flex: 0 0 50%;
}

.QuickShopDrawer__Page .selected-upsell-product-wrapper .product-image-wrapper .product-image {
  flex: 0 0 35%;
  padding: 0 2px;
}

.selected-upsell-product-wrapper .product-image-wrapper .product-image img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

.selected-upsell-product-wrapper .product-info-wrapper {
  flex: 0 0 40%;
  width: 100%;
  top: 0;
  padding-left: 30px;
  padding-right: 30px;
}

.QuickShopDrawer__Page .selected-upsell-product-wrapper .product-info-wrapper {
  flex: 0 0 100%;
}

.selected-upsell-product-wrapper .product-info-wrapper .Product__Info {
  width: auto;
  margin-right: 0;
  margin-left: 0;
  top: calc(var(--header-height));
}

.selected-upsell-product-wrapper .product-info-wrapper .Product__Info .ProductMeta__Price {
  font-size: 12px;
}

.selected-upsell-product-wrapper .product-info-wrapper .productForm__Wrapper {
  margin-top: 20px;
  padding-top: 30px;
  border-top: solid 1px var(--border-color);
}

.productForm__Wrapper .ProductForm__Label {
  font-size: 12px;
}

.productForm__Wrapper ul.HorizontalList.HorizontalList--spacingTight {
  margin-bottom: 20px;
}

.productForm__Wrapper ul.HorizontalList label.ColorSwatch {
  background-size: cover;
  background-position: center;
  width: 50px;
  height: 50px;
}

.ProductForm__AddToCart__Upsell {
  display: flex;
  align-items: center;
  justify-content: center;
}

.QuickShopDrawer.active {
  right: 0;
}

.QuickShopDrawer .close-button {
  position: sticky;
  right: 30px;
  top: 20px;
  width: 30px;
  height: 30px;
  display: block;
  cursor: pointer;
  margin-left: calc(100% - 30px);
}

.QuickShopDrawer__Page .close-button {
  position: absolute;
  right: 20px;
}

.QuickShopDrawer .close-button::before {
  position: absolute;
  content: '';
  top: 50%;
  left: 3px;
  height: 2px;
  width: 25px;
  transform: rotate(45deg);
  background: #000;
}

.QuickShopDrawer .close-button::after {
  position: absolute;
  content: '';
  top: 50%;
  left: 3px;
  height: 2px;
  width: 25px;
  transform: rotate(-45deg);
  background: #000;
}

.QuickShopDrawer-overlay {
  position: fixed;
  z-index: 999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .3;
}

@media screen and (max-width: 640px) {
  .QuickShopDrawer {
    width: 100%;
    padding-top: var(--header-height);
  }

  .QuickShopDrawer__Page .ProductMeta-wrapper .ProductMeta {
    text-align: left;
  }

  .selected-upsell-product-wrapper .product-image-wrapper,
  .selected-upsell-product-wrapper .product-info-wrapper {
    flex: 0 0 100%;
  }

  .selected-upsell-product-wrapper .product-info-wrapper {
    position: relative;
    margin-top: 50px;
  }

  .QuickShopDrawer__Page .selected-upsell-product-wrapper .product-info-wrapper {
    margin-top: 0;
  }

  .QuickShopDrawer__Page .selected-upsell-product-wrapper {
    margin-top: 0;
  }

  .QuickShopDrawer .close-button {
    position: absolute;
    top: -40px;
    right: 20px;
  }

  .QuickShopDrawer__Page .close-button {
    top: 20px;
  }

  .selected-upsell-product-wrapper .product-image-wrapper {
    flex-wrap: nowrap;
    overflow: auto;
  }

  .selected-upsell-product-wrapper .product-image-wrapper .product-image {
    flex: 0 0 70%;
    padding: 0 5px;
  }

  .selected-upsell-product-wrapper .product-image-wrapper .product-image:first {
    padding-left: 0;
  }

  .productForm__Wrapper ul.HorizontalList.HorizontalList--spacingTight {
    text-align: center;
    margin-top: 15px;
  }
}

/*-------------------- Klaviyo form -------------------*/

.klaviyo-form .bimDCF.bimDCF {
  padding: 0 !important;
  border-radius: unset !important;
  border: unset;
  max-width: unset !important;
}

.klaviyo-form .ql-editor p {
  text-align: left !important;
  font-size: 14px !important;
  font-style: italic;
}

.klaviyo-form button.needsclick {
  /* font-size: 12px !important;
  color: #BF4B00 !important;
  font-family: Arial, sans-serif !important; */
  font-weight: 600;
}

.klaviyo-form .cdPqNE.cdPqNE.cdPqNE.cdPqNE.cdPqNE.cdPqNE {
  padding-left: 0 !important;
}

.Footer__Aside {
  justify-content: center !important;
  padding: 0;
  background: #bc8b04;
}

.Footer__Aside .Footer__StoreName {
  font-size: 10px !important;
  font-weight: 500;
  color: #C4C4C4;
}

.features--heading-large .u-h7 {
  font-size: 14px;
}

/*----------- Sidebar-cart ---------------*/

#sidebar-cart {
  z-index: 99999;
}

/*----------------------------- Contributors-profile  -------------------------*/
@media only screen and (min-width: 768px){
  .Contributors-profile-title {
      position: absolute;
      top: 40%;
      left: 50%;
      transform: translate(-50%, -50%);
      color: white;
      text-align: center;
  }
  }
  .Contributors-profile-title{
    text-align: center;
  }
  .Contributors-profile {
      position: relative;
  }
  .Contributors-profile .Article__Image {
    /*display: none;*/
  }
  .Contributors-profile .Article__ImageWrapper {
    height: unset;
    margin-top: 0;
    padding-top: 40%;
  }

  .Contributors-profile .Article__ImageWrapper .Article__Image {
    background-repeat: no-repeat;
    background-size: cover;
  }

  .Contributors-profile-title h1 {
      font-size: 35px;
      font-weight: bold;
      font-family: AlteHaasGroteskRegular, sans-serif;
      margin: 0;
  }
  .Contributors-profile-title p{
    font-family: AlteHaasGroteskRegular, sans-serif;
  }
  .contributors-grid .Image__Wrapper {
    position: relative;
    width: 100%;
    padding-top: 100%;
  }
  .contributors-grid .Image__Wrapper img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  @media only screen and (max-width: 768px){
    .Contributors-profile-title p{
    font-size: 13px;
  }
  .Contributors-profile header.Article__Header {
      text-align: center;
  }
  }
  .Contributors-profile h1.Article__Title.Heading.u-h1 {
      margin-bottom: 0;
  }
  
  /*-------------------------------- contributors page ----------------------------------------*/
  #shopify-section-contributors-img .contributors-img {
    position: relative;
    width: 100%;
    padding-top: 40%;
  }

  .contributors-img img {
    width: 100%;
    position: absolute;
    top: 0;
    height: 100%;
    object-fit: cover;
  }
  .contributors-img-text {
      font-size: 20px;
      margin: 3% 0px;
  }
  .Container-grid-info {
      margin-bottom: 20px;
  }
  .contributors-grid p.title {
      text-align: center;
      font-size: 22px;
      font-weight: bold;
      margin-top: 3%;
      margin-bottom: 0;
      font-family: Arial, sans-serif;
  }
  .contributors-grid p {
      text-align: center;
      font-family: AlteHaasGroteskRegular, sans-serif;
      font-size: 12px;
  }
  @media only screen and (min-width: 768px){
  .Grid.Grid--m.Grid--center .Grid__Cell.\31 \/2.\31 \/3--lap-and-up {
      margin-bottom: 4em;
  }
    .contributors-grid p.title{
      font-size: 18px;
    }
  }
  @media only screen and (max-width: 768px){
    .contributors-grid p.title{
      font-size: 12px;
    }
    .Contributors-profile h1.Article__Title.Heading.u-h1 {
      font-size: 18px;
    }
    .Contributors-profile .Article__Meta {
      font-size: 10px;
    }
  }
  .custom-img-overlay.ThisActive {
      display: inline-block !important;
  }
  #shopify-section-Contributors-filter .Linklist__Item input {
      visibility: hidden;
      display: none;
  }
  #shopify-section-Contributors-filter .Linklist__Item{
    width: 220px;
  }
  #shopify-section-Contributors-filter .Linklist__Item label {
      cursor: pointer;
      font-size: 12px;
      font-family: 'Arial';
    text-transform: uppercase;
      color: #c4c4c4;
     display: flex;
      align-items: center;
      justify-content: space-between;
  }
  .Countributor_grid {
      margin-top: 30px;
  }
  .Countributor_grid p.position {
    color: #c4c4c4;
  }
  li.Linklist__Item.active label {
      font-weight: 300;
  }
  .CollectionFilters .Collapsible__Button {
      font-size: 10px;
      font-weight: 600;
      padding: 10px 0px;
  }
  .CollectionFilters .Collapsible:first-child {
      /*border-top: 1px solid #c4c4c4;*/
  }
  h1.filter-main-title {
      font-size: 12px;
      font-family: 'Arial';
      text-transform: uppercase;
      font-weight: 600;
      letter-spacing: 1.5px;
  }
  .deactiveFilter {
      display: none;
  }
  .CollectionFilters li.Linklist__Item.active label:after {
      content: url(/cdn/shop/files/cancel_1.png?v=1616059915);
  }
  .SortBy-Filter {
      font-size: 10px !important;
      font-weight: 600;
      letter-spacing: 0.1em;
      padding: 10px 0px;
  }


/*-------------------- Mega menu setup ------------------------------ */
.js .features--show-element-staggering .MegaMenu .ProductList--grid .ProductItem {
  visibility: visible;
}
.MegaMenu.Megamenu--shop .featuredProductCarousel .ProductItemMenu__Info .ProductItem__Title {
  font-size: 0.75rem;
  letter-spacing: .05em;
  line-height: 1.41;
  margin: 0;
  color: #000;
  font-weight: normal;
}
.MegaMenu .MegaMenu__Inner {
  max-width: 100%;
  padding: 0px 60px 19px;
  display:flex;
  justify-content: flex-start;
  border-bottom: 1px solid var(--header-border-color);
  flex-direction: column;
  width: 40%;
}
.MegaMenu-1 .MegaMenu__Inner {
  max-width: 100%;
  padding: 0px 40px 20px 60px;
  display:flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 1%;
  border-bottom: 1px solid var(--header-border-color);
  flex-direction: unset;
  width: 55%;
}
.MegaMenu-1 .MegaMenu__Inner .MegaMenu__Inner--menu-wrapper {
  flex: 0 0 24%;
}
.MegaMenu-1 .MegaMenu__Inner .MegaMenu__Inner--menu-wrapper .MegaMenu__Item {
  width: 100%;
}
.MegaMenu__Inner--menu-wrapper .MegaMenu__Item .Linklist {
  opacity: 1 !important;
  animation: unset;
  position: relative;
  left: unset;
  top: unset;
  margin-top: 10px;
}
.MegaMenu-1 .ProductList.ProductList--grid {
  width: 45% !important;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 1%;
}

.MegaMenu-1 .Megamenu_imagesection .Grid__Cell {
  flex: 0 0 40%;
}

.MegaMenu-1 .Megamenu_imagesection .Grid__Cell .Megamenu_ImageInfo {
  position: unset;
  margin-top: 10px;
}
.MegaMenu-1 .Megamenu_imagesection .Grid__Cell .Megamenu_ImageInfo .MegaMenu__PushHeading {
  color: #000;
  font-size: 11px;
}

.MegaMenu .MegaMenu__Item .MegaMenu__Title {
  margin-bottom: 0px;
  font-size: 12px;
  font-weight: normal;
}
.MegaMenu__Item.MegaMenu__Item--fit a:hover {
  color: #000;
}
.MegaMenu .MegaMenu__Item {
  margin: 0px;
  padding: calc(3.33333px + 1px) 10px;
  padding-left: 0;
  padding-right: 0px;
}
.MegaMenu.Megamenu--shop .featuredProductCarousel {
  padding: 25px 0px 0px;
}
.MegaMenu.Megamenu--shop .featuredProductCarousel .ProductItemMenu__Info .ProductItem__ViewButton, .Megamenu_ImageInfo a.MegaMenu__PushViewBtn {
  font-size: 0.75rem;
  color: #000;
  text-transform: capitalize;
}
.Megamenu_ImageInfo .MegaMenu__PushHeading {
  margin-bottom: 0px;
 line-height: normal;
}
.MegaMenu {
overflow: hidden;
}
.MegaMenu__ImageItems .Megamenu_ImageInfo, .MegaMenu.Megamenu--shop .featuredProductCarousel .ProductItemMenu__Info {
  margin-top: 20px;
}

.MegaMenu__ImageItems .Megamenu_ImageInfo .MegaMenu__PushViewBtn {
  font-family: 'HelveticaNeue' !important;
}

.MegaMenu .MegaMenu__ImageItems img {
  object-fit: cover;
}
.MegaMenu.Megamenu--brand {
  padding-bottom: 20px;
}
.MegaMenu .Megamenu_imagesection .Grid__Cell {
  padding-left: 15px;
}
.ProductItemMenu__Wrapper .ProductItem__ImageWrapper img {
  object-fit: cover;
}

.MegaMenu .ProductItemMenu .ProductItemMenu__Wrapper {
  position: relative;
}

.MegaMenu .ProductList--grid {
  padding: 0 21px;
  margin-left: -10px;
  margin-right: -10px;
}

.MegaMenu .Megamenu_imagesection .Grid__Cell {
  padding: 0 10px;
}

@media(min-width:1140px){
/*.MegaMenu__ImageItems .MegaMenu__ImageRation {
  height: 440px;
}*/
}
/* Mobile menu setup */
@media(min-width:1141px){
.Header__FlexItem .Drawer__Close{
  display: none;
}
.Megamenu--journal .Inner_Cell {
  width: 33.33%;
}
.Megamenu--collections .Inner_Cell {
  /*width: 33.33%;*/
}
}

#sidebar-menu {
  z-index: 999;
}

.js .Slideshow__Content .SectionHeader {
  opacity: 1;
}

.SidebarMenu__Nav--secondary .contact-form {
  padding: 10px 20px;
  padding-left: 20px;
  padding-top: 30px;
}

.SidebarMenu__Nav--secondary .contact-form .newsletter-title {
  margin-bottom: 5px;
}

.SidebarMenu__Nav--secondary .contact-form .newsletter-content {
  font-size: 60%;
  font-family: 'SabonItalic';
}

.SidebarMenu__Nav--secondary .contact-form .newsletter__input {
  width: 100%;
  border: none;
  border-bottom: solid 1px #333;
  font-size: 12px;
  padding-bottom: 5px;
}

.SidebarMenu__Nav--secondary .contact-form .newsletter__input::placeholder {
  color: #aaa;
}

.SidebarMenu__Nav--secondary .input-group-btn .btn {
  width: 100%;
  background: #282828;
  color: #fff;
  padding: 5px;
  margin-top: 10px;
  font-size: 12px;
  text-transform: uppercase;
}

@media(max-width:1140px){
  #shopify-section-sidebar-menu .Drawer {
      width: 100vw;
    top: auto;
  }
  .shopify-section--header{
    z-index: 999;
  }
  .Header__Wrapper .Drawer__Close {
    display: none;
  }
  .SidebarMenu.Drawer .SidebarMenu__Nav .Collapsible__arrow::after {
    position: absolute;
    right: 22px;
    top: 50%;
    margin-top: -4px;
  }
  .SidebarMenu.Drawer .SidebarMenu__Nav .Collapsible__arrow::after {
    content: '';
    padding: 4px;
    border: solid #181818;
        border-top-width: medium;
        border-right-width: medium;
        border-bottom-width: medium;
        border-left-width: medium;
    border-top-width: medium;
    border-right-width: medium;
    border-bottom-width: medium;
    border-left-width: medium;
    border-width: 0 2px 2px 0;
    display: inline-block;
    transform: rotate(-45deg);
  }
  .subnav-wrapper {
    position: absolute;
    top: 0;
    visibility: hidden;
    width: 100%;
    left: 0;
    z-index: 100;
    transform: translateX(-100%);
    transition: transform 0.4s ease, visibility linear 0.4s;
    bottom: 0;
  }
  .subnav-wrapper.subnav-mobile-collapse {
    transform: translateX(0);
    visibility: visible;
  }
  .subnav-wrapper .Collapsible__Inner {
    background: white;
    display: block;
    position: relative;
    text-align: center;
    cursor: pointer;
    padding: 10px 0px;
    visibility: visible;
    height: 100%;
  }
  .subnav-wrapper .main-item-back {
    background: white;
    display: block;
    position: relative;
    text-align: center;
    cursor: pointer;
    padding: 16px 20px 20px;
    }
  .subnav-wrapper .main-item-back::before {
    content: '';
    padding: 4px;
    border: solid #181818;
        border-top-width: medium;
        border-right-width: medium;
        border-bottom-width: medium;
        border-left-width: medium;
    border-width: 0 2px 2px 0;
    display: inline-block;
    transform: rotate(135deg);
  }
  .subnav-wrapper .main-item-back::before {
    position: absolute;
    left: 20px;
    top: 50%;
    margin-top: -11px;
  }
  .subnav-wrapper .Collapsible__Content .Collapsible {
    border-bottom: 1px solid var(--border-color);
      margin-left: 0px;
  }
  .subnav-wrapper .Collapsible__Content .Collapsible:first-child{
    border-top: 1px solid var(--border-color);
  }
  #sidebar-menu .Drawer__Container {
    padding-left: 0px;
    padding-right: 0px;
  }
  #sidebar-menu .SidebarMenu__Nav .Collapsible {
    padding-left: 20px;
  }
  #sidebar-menu .SidebarMenu__Nav .Linklist {
    padding-left: 20px;
  }
}

.Slideshow__ImageContainer video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

/* WILLBO: desktop homepage hero video should stay centered in the banner frame. */
@media screen and (min-width: 769px) {
  .Slideshow__Slide .Slideshow__ImageContainer video {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
  }
}

/* WILLBO: mobile homepage hero video should fill the banner frame.
   Prevents portrait mobile videos from letterboxing and leaving a gap below. */
@media screen and (max-width: 768px) {
  .Slideshow__Slide .Slideshow__ImageContainer,
  .Slideshow__Slide .Image_link {
    height: 100% !important;
  }

  .Slideshow__Slide .Slideshow__ImageContainer video {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
  }
}

#section-slideshow .Heading, #section-slideshow .flickity-page-dots {
  z-index: 9;
}

/*--------------- simple page ---------------*/
.shopify-simple-section .simple,
.shopify-simple-image-section .simple-image {
  text-align: center;
  max-width:1250px;
  margin:0 auto;
}
.shopify-simple-section {
  margin-top: calc(.15 * calc(100vh - 61px));
  margin-bottom: calc(.15 * calc(100vh - 61px));
  height: calc(.60 * calc(100vh - 61px));
  position: relative;
  overflow: hidden;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.shopify-simple-section .simple p
{
  line-height: 17px;
  letter-spacing: 0.05em;
  text-align: center;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (max-width: 768px) {
  .shopify-simple-section .SectionHeader__Heading {
    font-size: 16px;
  }
}

/******** footer *************/
.footer__logo {
  display: flex;
  flex-wrap: wrap;
  width: 30%;
  border-right: 1px solid #c4c4c4;
}
.footer__logo img {
  object-fit: contain;
  object-position: top;
  width: 25%;
}
.footer__logo .brand__text {
  max-width: 70%;
  margin-left: 5%;
}
.footer__klaviyo {
  width: 40%;
  border-right: 1px solid #c4c4c4;
}
.klaviyo-form-XrjuxD .kzkVSS.kzkVSS.kzkVSS.kzkVSS.kzkVSS.kzkVSS .ql-editor {
  width: 60%;
}
.emmDqA.emmDqA.emmDqA.emmDqA.emmDqA.emmDqA {
  border: none !important;
  border-bottom: 1px solid #c4c4c4 !important;
  border-radius: unset !important;
}
.ewihEP.ewihEP.ewihEP.ewihEP.ewihEP.ewihEP {
  border: none !important;
  border-bottom: 1px solid #c4c4c4 !important;
  border-radius: unset !important;
}
.LfZuM.LfZuM.LfZuM.LfZuM.LfZuM.LfZuM {
  border: none !important;
  border-bottom: 1px solid #c4c4c4 !important;
  border-radius: unset !important;
}
.jBjzuA.jBjzuA {
  padding: 10px 0 !important;
}
.Footer__Inner .Footer__Block {
  margin-bottom: 0;
  padding-top: 50px;
  padding-bottom: 50px;
  font-size: 12px;
}
.footer__time {
  color: #000;
  text-align: left;
}
.footer__time .current_time {
  color: #235EA5;
  font-size: 30px;
  line-height: 53px;
  max-width: 150px;
  margin: auto;
}

.footer__time .time__wrapper {
  text-align: center;
}

.footer__time .weather {
  margin: auto;
}

footer#section-footer .Container {
  padding: 0;
}
.Footer__Inner + .Footer__Aside {
  padding-bottom: 0;
}
.Footer__Aside .Footer__Copyright {
  padding: 20px 0;
}

.acsb-trigger {
  left: -50px !important;
}

.Footer__Inner p,
.Footer__Inner p span,
.Footer__Inner .Linklist__Item a {
  letter-spacing: 1px !important;
}

.weather {
  max-width: 100px;
}

.bgjOyr.bgjOyr.bgjOyr.bgjOyr.bgjOyr.bgjOyr {
  padding-left: 0 !important;
}
.lcrUBo.lcrUBo.lcrUBo.lcrUBo.lcrUBo.lcrUBo {
  padding-left: 0 !important;
}
.lnviXl.lnviXl {
  padding-top: 4px;
}

.Footer__Inner .Footer__Block--links img,
.Footer__Inner .Footer__Block--links .Footer__StoreName {
  display: none;
  color: #b0b0b0;
}

.Footer__Block--text {
  flex-basis: unset !important;
}

@media only screen and (max-width: 1139px) {
  .Footer__Inner {
    display: flex;
    flex-wrap: wrap;
  }
  .Footer__Inner .Footer__Block.footer__logo {
    width: 100% !important;
    border-bottom: solid 1px #c4c4c4;
    flex: 1 1 100%;
    border-right: none;
  }
  
  .Footer__Inner .Footer__Block.footer__logo img,
  .Footer__Inner .Footer__Block.footer__logo .Footer__StoreName {
  	display: none;
  }
  
  .Footer__Inner .Footer__Block--links img,
  .Footer__Inner .Footer__Block--links .Footer__StoreName {
  	display: block;
  }
  
  .Footer__Inner .Footer__Block--links img {
  	margin-top: 20px;
  }
  
  .Footer__Inner .Footer__Block--links .Footer__StoreName {
  	margin-top: 15px;
    font-size: 10px;
  }
  
 
  
  .Footer__Inner .Footer__Block.footer__klaviyo {
    width: 100% !important;
    border: none;
    margin-top: 0;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    flex: 1 1 100%;
  }
  .Footer__Inner .Footer__Block.footer__time {
    margin-top: 0;
    text-align: right;
  }
  .dHyvRG.dHyvRG {
    max-width: 100% !important;
  }
  .Footer__Inner .Footer__Block {
    flex: 1 1 50%;
  }
  .Footer__Inner .Footer__Block:nth-child(3n) {
    margin-top: 0;
  }
  .klaviyo-form-XrjuxD .kzkVSS.kzkVSS.kzkVSS.kzkVSS.kzkVSS.kzkVSS .ql-editor {
    width: 100%;
  }
}

@media only screen and (min-width: 1140px) and (max-width: 1300px) {
  .Footer__Inner .Footer__Block.Footer__Block--links {
    padding-left: 20px;
    padding-right: 20px
  }
}

/* Footer */
.Footer__Inner .Footer__Block {
  border: none;
}

.Footer__Newsletter .Form__Input {
  border: none;
  border-bottom: solid 1px #333;
}

.Footer__Newsletter .Form__Input::placeholder {
  color: #235EA5;
}

.footer-copyright {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  text-decoration: unset !important;
}

.footer-copyright span {
  width: 15px;
  height: 15px;
  background-color: #235EA5;
  display: block;
  margin-left: 10px;
}

.Footer__Inner .Footer__Social .HorizontalList__Item {
  margin-right: 21px;
  margin-left: 0;
}

.Footer__Aside {
  display: none;
}

@media screen and (max-width: 767px) {
  .Footer__Inner .Footer__Block {
    flex: 1 1 100% !important;
    width: 100% !important;
  }

  .Footer__Inner .Footer__Block .Linklist__Item,
  .Footer__Inner .Footer__Block .Footer__Social,
  .Footer__Inner .Footer__Block .Footer__Title,
  .Footer__Inner .Footer__Block .Footer__Content,
  .Footer__Inner .Footer__Block .Footer__Newsletter {
    text-align: center !important;
  }

  .footer-copyright {
    justify-content: center;
    border-top: solid 1px #c4c4c4;
    padding-top: 12px;
  }

  .Footer__Inner .Footer__Block--newsletter {
    margin-top: 0;
  }
}

@media only screen and (max-width: 767px) {
  .dHyvRG.dHyvRG {
    padding-left: 0 !important;
  }

  .lcrUBo.lcrUBo.lcrUBo.lcrUBo.lcrUBo.lcrUBo {
    padding-left: 0 !important;
  }
  
  .Footer__Inner .Footer__Block {
  	padding-top: 25px;
    padding-bottom: 25px;
  }
}

/********* custom faq page **********/
.faq-template-custom .Container {
  max-width: 1200px;
  border: 1px solid #c4c4c4;
  margin-top: 50px;
  padding: 0;
}
.faq-template-custom .Container .row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.faq-template-custom .Container .row .question__section,
.faq-template-custom .Container .row .answer__section {
  max-width: 50%;
  flex: 0 0 50%;
}
.faq-template-custom .Container .row .question__section {
  border-right: 1px solid #c4c4c4;
}
.faq-template-custom .Container .row .question__section .footer__time {
  padding: 100px 0;
  border-bottom: 1px solid #c4c4c4;
  margin-bottom: 0;
}
.faq-template-custom .Container .row .question__section .bottom__text {
  padding: 0 40px;
  padding-bottom: 50px;
  font-size: 12px;
  color: #c4c4c4;
}
.faq-template-custom .question__wrapper {
  padding: 50px 40px;
}
.faq-template-custom .question__wrapper .question__title {
  display: block;
  margin-bottom: 12px;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: bold;
}
.faq-template-custom .question__wrapper .question__title.is-active {
  color: #C62828;
}
.faq-template-custom .answer__content .default__image {
  display: block;
  margin: auto;
  margin-top: 20%;
}
.faq-template-custom .answer__content .answer {
  padding: 40px;
}

.faq-template-custom .Container.Mobile {
  display: none;
}
.faq-template-custom .footer__time .time__wrapper span {
  text-transform: uppercase;
  font-size: 12px;
}
.faq-template-custom .footer__time .current_time {
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .faq-template-custom {
    padding-left: 15px;
    padding-right: 15px;
  }
  .faq-template-custom .Container.Mobile {
    display: block;
  }
  .faq-template-custom .Container.Desktop {
    display: none;
  }
  .faq-template-custom .Container .row .question__section {
    max-width: 100%;
    flex: 0 0 100%;
    border-right: none;
  }
  .faq-template-custom .footer__time .current_time {
    font-size: 50px;
  }
  .Faq__ItemWrapper {
    padding-left: unset;
  }
  .Faq__Icon {
    left: unset;
    right: 0;
  }
  .Faq__Item .Faq__ItemWrapper .Faq__Question {
    text-transform: uppercase;
    font-weight: 700;
  }
  .Faq__Item[aria-expanded=true] .Faq__ItemWrapper .Faq__Question {
    color: #C62828;
  }
}

/*--------- Custom login page --------------*/
.login-custom .PageContent--fitScreen {
  min-height: unset;
  margin-top: 0;
  margin-bottom: 30px;
}
.login-custom .PageContent--fitScreen .Form {
  padding: 20px;
  border: 1px solid #c4c4c4;
  border-top: none;
}
.customer_form_tabs {
  max-width: 400px;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-top: 80px;
}
.customer_form_tab {
  flex: 0 0 50%;
  width: 50%;
  border: 1px solid #c4c4c4;
  padding: 10px 0;
  text-align: center;
  cursor: pointer;
}
.customer_form_tab.is-active {
  font-weight: 700;
}
.customer_form_tab:first-child {
  border-right: none;
}
.login-custom .Form__Header {
  margin-bottom: 0;
}
.login-custom .Form__Header .Form__Legend {
  text-align: left;
  color: #c4c4c4;
  text-transform: uppercase;
  font-size: 14px;
}
.login-custom .Form__FloatingLabel {
  position: relative;
  opacity: 1;
  left: 0;
  padding-left: 0;
}
.login-custom .Form__Input {
  margin-top: 5px;
  border-color: #c4c4c4;
}
.login-custom .Form__Input::placeholder {
  color: #c4c4c4;
}
.login-custom .Form__ItemHelp {
  position: relative;
  transform: unset;
  float: right;
  color: #c4c4c4;
}
.login-custom .Form__Submit {
  color: #fff;
  border-color: #abcadc;
}
.login-custom .Form__Submit:before {
  background-color: #abcadc
}
.login-custom .Form__FloatingLabel--Checkbox {
  pointer-events: initial;
}
.login-custom .Form__FloatingLabel--Checkbox > a {
  text-decoration: underline;
}
.Form__Checkbox~label::before {
  border-color: #c4c4c4;
}
.Form--spacingTight .Form__Item--Checkbox {
  margin-bottom: 0;
}
.Form__Item input[type=checkbox].Form__Checkbox:checked:checked+label:after, 
.Form__Item input[type=checkbox].Form__Checkbox:not(:checked):checked+label:after {
  content: '';
  position: absolute;
  width: 10px;
  height: 10px;
  display: block;
  left: 2px;
  top: 3px;
  z-index: 13;
  background: #181818;
}
.HorizontalList__Item .Link--primary.sign-in:after {
  content: '';
  background: #bec999;
  position: relative;
  display: inline-block;
  width: 8px;
  height: 8px;
  left: 3px;
}

/*------------ Account page -------------*/
.template-account #main .PageHeader {
  margin-bottom: 0;
  border: 1px solid #c4c4c4;
  padding: 35px;
}
.template-account #main .PageHeader .SectionHeader {
  margin-bottom: 0;
}
.template-account #main .PageHeader .SectionHeader h1 {
  display: block;
  position: relative;
  padding-left: 50px;
}
.template-account #main .PageHeader .SectionHeader h1:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 35px;
  height: 35px;
  background: #bec999;
}
.template-account #main .custom-PageLayout {
  display: flex;
  min-height: 400px;
  border: 1px solid #c4c4c4;
  border-top: none;
}
.template-account #main .custom-PageLayout .custom-PageLayout__Left {
  flex: 0 0 25%;
  border-right: 1px solid #c4c4c4;
  padding: 35px;
}
.template-account #main .custom-PageLayout .custom-PageLayout__Right {
  flex: 0 0 75%;
  padding: 35px;
}
.account__header-list {
  list-style: none;
}
.account__header-list > li {
  margin-bottom: 10px;
  font-weight: 700;
}
.account__header-list > li.is-active {
  color: #C62828;
}
.template-account #main .custom-PageLayout .custom-PageLayout__Right .Segment .Segment__Title {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 15px;
}
.account-content {
  display: none;
}
.account-content.is-active {
  display: block;
}
.AccountAddress p {
  padding-bottom: 0;
}
.Address .Segment__ActionList {
  margin-top: 0;
}
.Address hr {
  margin: 18px 0;
  border-top: none;
  border-color: #dfdfdf;
}
.template-account #main .custom-PageLayout.Mobile {
  display: none;
}

.CollectionToolbar {
  position: unset;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

/********** Text only section ************/

.textonly-section .Container {
  max-width: 1200px;
  line-height: 12px;
}

@media screen and (max-width: 767px) {
  .template-account #main .custom-PageLayout.Mobile {
    display: block;
    margin-bottom: 35px;
  }
  .template-account #main .custom-PageLayout.Desktop {
    display: none;
  }

  .template-account #main .custom-PageLayout {
    min-height: 300px;
  }

  .template-account #main .custom-PageLayout.Mobile .question__wrapper {
    padding: 14px 0;
  }
  .template-account #main .custom-PageLayout.Mobile .Segment__Title {
    margin-top: 0;
    display: none;
  }

  .custom-PageLayout.Mobile .Modal--address {
    width: 80vw;
    height: 80vh;
  }

  .custom-PageLayout.Mobile .Modal--address .Modal__Title {
    margin-top: 10px;
    margin-bottom: 10px;
  }

  .custom-PageLayout.Mobile .Modal--address .Modal__Header {
    margin-bottom: 10px;
  }

  .template-account #main .PageHeader .SectionHeader h1 {
    font-size: 18px;
  }
  
  .textonly-section .SectionHeader__Heading.u-h1 {
  	font-size: 18px;
  }
}

.Mobile.Product__Gallery .flickity-prev-next-button.previous {
  left: 90px;
}

.Mobile.Product__Gallery .flickity-prev-next-button.next {
  right: 90px;
}

.Mobile.Product__Gallery .flickity-prev-next-button {
  box-shadow: unset;
}

.Mobile.Product__Gallery .flickity-prev-next-button svg {
  height: 10px;
}

.Mobile.Product__Gallery .flickity-page-dots {
  margin-top: 10px;
}

.background-video {
  padding: 0 50px;
  margin-top: 85px;
}

.background-video.full-width {
  padding: 0;
}

.background-video .ImageHero {
  padding-bottom: 56.25%;
  min-height: unset;
}



@media screen and (min-width: 641px) and (max-width: 1139px) {
  .background-video {
    padding: 0 24px;
  }
}

@media screen and (max-width: 640px) {
  .background-video {
    padding: 0;
  }
}

/**************** Rich image with text collection ******************/
/*.FeatureText--withImage {
  border-top: solid 1px #c4c4c4;
  border-bottom: solid 1px #c4c4c4;
}*/

.FeatureText--imageRight .FeatureText__ContentWrapper {
  padding-right: 0;
}

.FeatureText--imageLeft .FeatureText__ContentWrapper {
  padding-left: 0;
}

.FeatureText--imageRight .FeatureText__ContentWrapper {
  padding-right: 0;
}

.FeatureText--imageRight .FeatureText__ContentWrapper .FeatureText__Content,
.FeatureText--imageLeft .FeatureText__ContentWrapper .FeatureText__Content {
  max-width: unset;
}

.FeatureText--imageRight .FeatureText__ContentWrapper .FeatureText__Content .SectionHeader__Description,
.FeatureText--imageLeft .FeatureText__ContentWrapper .FeatureText__Content .SectionHeader__Description {
  max-width: 80%;
}

.FeatureText__ContentWrapper .Button--primary::before {
  content: unset;
}

.FeatureText__ContentWrapper .Button {
  color: var(--button-background);
}

.FeatureText--withImage .FeatureText__ImageWrapper {
  padding: 0;
}

.FeatureText--imageRight .AspectRatio,
.FeatureText--imageLeft .AspectRatio {
  --aspect-ratio: 0.75 !important;
  display: flex;
  align-items: center;
  justify-content: center;
}

.FeatureText--imageRight .AspectRatio::before,
.FeatureText--imageLeft .AspectRatio::before {
  padding-bottom: calc(100% * (var(--aspect-ratio)));
}

.FeatureText--imageRight .AspectRatio img,
.FeatureText--imageLeft .AspectRatio img {
  object-fit: cover;
  width: 60%;
  left: unset;
}

.shopify-section--bordered .FeatureText__Content {
  margin-right: auto;
}

.shopify-section--bordered .FeatureText__Content .Link {
  color: #c4c4c4;
  font-style:  italic;
}

.shopify-section--bordered>.Section--spacingNormal.rich-text-with-image {
  margin-top: 85px;
}
  
.shopify-section--bordered .SectionHeader {
  margin-bottom: 20px !important;
}

.rich-text-with-image .FeatureText--withImage {
  padding: 0 50px;
}

@media only screen and (max-width: 640px) {
  .FeatureText--withImage {
    text-align: center;
    border: none;
    margin-left: 20px;
    margin-right: 20px;
  }

  .rich-text-with-image .FeatureText--withImage {
    padding: 0;
  }

  .FeatureText--withImage .FeatureText__ContentWrapper {
    padding-top: 0;
    padding-bottom: 15px;
    padding-left: 0;
    padding-right: 0;
  }

  .FeatureText--imageRight .FeatureText__ContentWrapper .FeatureText__Content .SectionHeader__Description, .FeatureText--imageLeft .FeatureText__ContentWrapper .FeatureText__Content .SectionHeader__Description {
    max-width: 100%;
  }

  .FeatureText--imageRight .AspectRatio img, 
  .FeatureText--imageLeft .AspectRatio img {
    width: 100%;
  }

  .FeatureText--imageRight .AspectRatio::before, 
  .FeatureText--imageLeft .AspectRatio::before {
    padding-bottom: 125%;
  }
}

@media screen and (min-width: 641px) and (max-width: 1007px) {
  .rich-text-with-image .FeatureText--withImage {
    padding: 0 25px;
  }
}

.shopify-section--bordered>.Section--spacingNormal{
  padding: 50px 0;
}

@media screen and (min-width: 1008px) {
  .Section--spacingNormal {
      margin: 85px 0;
  }

  .Section--spacingNormal.background-video {
    margin-top: 85px;
  }
}

.flickity-prev-next-button {
  box-shadow: unset;
}

.flickity-prev-next-button[disabled] {
  opacity: .3;
}

.flickity-prev-next-button:hover svg {
  -webkit-animation: none !important;
  animation: none !important;
}
  
/* Custom password */
.custom-password-header {
  padding: 15px;
  height: 7vh;
}

.custom-password-header .logo {
  text-align: center;
}

.custom-password-footer .email-signup {
  text-align: center;
  margin: auto;
  max-width: 300px;
}

.custom-password-footer .email-signup .contact-form .input-group {
  display: flex;
  align-items: center;
  justify-content: center;
}

.custom-password-footer .email-signup .contact-form .input-group .newsletter__input {
  border: none;
  border-bottom: solid 1px #0e0e0e;
}

.custom-password-footer .email-signup .contact-form .input-group .btn {
  color: #BF4B00;
}

.custom-password {
  height: 75vh;
  position: relative;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.custom-password .background-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.custom-password .password-block {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 9;
  display: flex;
  align-items: center;
  justify-content: center;
}

.custom-password .password-header {
  text-align: center;
  margin-bottom: 70px;
}

.custom-password .password-page__login {
padding: 40px 30px;
text-align: center;
}

.custom-password .password-page__login h3 {
text-transform: uppercase;
}

.custom-password .password-page__login .Form__Group .Form__Input {
padding: 5px 0;
border: none;
border-top: solid 1px #0e0e0e;
border-bottom: solid 1px #0e0e0e;
}

.custom-password .email-signup {
  margin: 20px auto;
  text-align: center;
}

.custom-password .password-login {
  max-width: 130px;
  color: #ca0000;
  margin-right: 0;
}

.custom-password p,
.custom-password .subheader {
  font-weight: 700;
}

.custom-password .subheader {
  font-family: 'Gilroy Heavy';
}

.custom-password p.location {
  margin-bottom: 5px;
  font-family: 'Gilroy Bold';
}

.custom-password p.notification {
  letter-spacing: 3px;
  font-family: 'Gilroy Bold';
}

.custom-password .contact-form {
  margin-top: 40px;
}

.custom-password .contact-form input {
  border-color: #000;
  font-family: 'Gilroy Medium';
}

.custom-password .contact-form .input-group-btn button {
  font-family: 'Gilroy Medium';
  font-size: 13px;
}

.custom-password .note--success {
  color: #000;
  background-color: unset;
  border: none;
  text-align: center;
}

.custom-password-2 {
  display: none;
}

.custom-password-2 .password-block {
  padding: 50px;
  box-shadow: 2px 6px 10px 2px #999;
  position: relative;
}

.custom-password-2 .password-block .close-button {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
}

.custom-password-header-2 {
  padding: 15px;
  height: 15vh;
  z-index: 9;
  position: relative;
}

.custom-password-header-2 .logo {
text-align: center;
}

.custom-password-body {
display: flex;
justify-content: center;
align-items: center;
height: 75vh;
}

.custom-password-body .sign-up-box {
display: flex;
justify-content: center;
align-items: center;
max-width: 1000px;
margin: auto;
border: solid 1px #aaa;
}

.custom-password-body .main-image,
.custom-password-body .email-signup {
flex: 0 0 50%;
width: 50%;
}

.custom-password-body .email-signup {
text-align: center;
padding: 0 5%;
}

.custom-password-body .email-signup p {
line-height: 1.2;
}

.custom-password-body .email-signup .newsletter__input {
padding: 10px 15px;
border-color: #ddd;
border-style: solid;
}

.custom-password-body .email-signup .newsletter__input-group {
display: flex;
justify-content: center;
align-items: center;
}

.custom-password-body .email-signup .newsletter__input-group .btn {
background: #000;
color: #fff;
padding: 8px 20px;
}

.enter-password-btn {
padding-top: 20px;
display: block;
}

.custom-password-2 {
position: absolute;
width: 100%;
height: 100%;
background-image: unset !important;
top: 0;
left: 0;
justify-content: center;
align-items: center;
}

@media screen and (max-width: 767px) {
  .custom-password-body .sign-up-box {
    flex-wrap: wrap;
  }

  .custom-password-body .main-image, 
  .custom-password-body .email-signup {
    flex: 0 0 100%;
    width: 100%;
  }

  .custom-password-body .email-signup {
    text-align: center;
    padding: 10% 4%;
  }
}


.shop-the-look .SectionHeader .Container {
  padding-left: var(--horizontal-spacing-four-products-per-row);
  margin-left: calc(-1 * var(--horizontal-spacing-four-products-per-row));
  margin-bottom: var(--vertical-spacing-four-products-per-row);
}

.shop-the-look .SectionHeader {
  padding: 0 50px;
}

.shop-the-look .SectionHeader .SectionHeader__Heading {
  font-weight: 700;
}

@media screen and (min-width: 1008px) {
  .ShopTheLook__ProductItem .ProductItem__ImageWrapper {
      max-width: 270px;
  }

  .ShopTheLook__Inner {
    align-items: flex-start;
  }

  .ShopTheLook__Inner .flickity-page-dots {
    margin-top: 40px;
  }
}

@media screen and (max-width: 640px) {
  .shop-the-look .SectionHeader {
    padding: 0 20px;
  }

  .shop-the-look .SectionHeader .SectionHeader__Heading {
    font-size: 18px;
  }

  .ShopTheLook__ProductItem .ProductItem__Info {
    text-align: center;
  }

  .ShopTheLook__ProductItem .ProductItem__Label {
    margin: auto;
  }
}

/* Custom newsletter page */
.custom-newsletter .background-video-wrapper {
  position: relative;
}

.custom-newsletter .background-video-wrapper video {
  width: 100%;
}

.custom-newsletter .newsletter-form-wrapper {
  position: absolute;
  z-index: 9;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  padding: 35px 30px;
  text-align: center;
  max-width: 500px;
}

.custom-newsletter-section .custom-newsletter .newsletter-title {
  margin-bottom: 5px;
}

.custom-newsletter .newsletter__input {
  width: 80%;
  text-align: center;
  padding: 8px 12px;
  border: solid 2px #282828;
}

.custom-newsletter .newsletter__input::placeholder {
  color: #aaa;
}

.custom-newsletter .input-group-btn button {
  width: 80%;
  background-color: #282828;
  color: #fff;
  text-transform: uppercase;
  padding: 8px 12px;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .custom-newsletter .newsletter-form-wrapper {
    width: 90%;
  }

  .custom-newsletter .newsletter__input,
  .custom-newsletter .input-group-btn button {
    width: 90%;
  }
}

/* Trading cards page */
.textonly-trading-card .SectionHeader .u-h1 {
  font-size: 35px;
  line-height: 1.2;
  margin-top: 0;
}

.textonly-trading-card .SectionContent {
  margin-bottom: 30px;
  font-family: 'Sabon';
}

.textonly-trading-card .SectionContent .Container {
  line-height: 1.3;
}

.textonly-trading-card .Linklist {
  text-transform: uppercase;
  font-family: 'FuturaMaxiCGDemiRegular';
}

.textonly-trading-card .Linklist .link-list-item {
  padding: 0 15px;
  border-right: solid 1px #fff;
}

.textonly-trading-card .Linklist .link-list-item:last-child {
  border-right: none;
}

.textonly-trading-card .Linklist .link-list-item > a {
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .Slideshow--blog {
    height: 535px !important;
  }
}

/* Shop page */
.collection-list .Wrapper {
  margin: 25px auto;
}

.collection-list .collection-item-wrapper {
  padding: 1.2rem;
}

.collection-list .collection-item {
  position: relative;
}

.collection-list .collection-item img {
  width: 100%;
}

.collection-list .collection-item .collection-title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 32px;
  font-weight: 700;
  opacity: 0;
  transition: all .3s ease-in-out;
  letter-spacing: 3px;
  text-align: center;
}

.collection-list .collection-item:hover .collection-title {
  opacity: 1;
}

.collection-list .footer-logo img.position-left {
  float: left;
}

.collection-list .footer-logo img.position-right {
  float: right;
}

.collection-list .collection-item .video-wrapper {
  width: 100%;
  position: relative;
  padding-top: 56.25%;
  overflow: hidden;
}

.collection-list .collection-item iframe {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
}



@media screen and (max-width: 767px) {
  .collection-list .collection-item-wrapper {
    padding: 0 18px;
    flex: 0 0 100% !important;
    width: 100% !important;
    margin-bottom: 28px;
  }

  .collection-list .footer-logo img {
    float: unset !important;
    margin: auto !important;
    margin-left: 33% !important;
    margin-top: 10% !important;
    width: 33%;
  }

  .collection-list .collection-item .overlay {
      opacity: 0 !important;
  }

  .collection-list .collection-item .collection-title {
    top: unset;
    font-size: 16px;
    opacity: 1;
    text-align: center;
    font-weight: 700;
    position: unset;
    left: unset;
    transform: unset;
    margin-top: 15px;
    letter-spacing: 1.5px;
  }
}

/* Store page */
.image-with-html .section-content .banner-image,
.image-with-html .section-content .banner-html {
  flex: 1 1 50%;
  width: 50%;
}

.image-with-html .section-content .banner-image {
  display: flex;
  align-items: center;
  justify-content: center;
}

.image-with-html .section-content .banner-html {
  padding: 10%;
}

.banner-slider {
  max-width: 1160px;
  margin: auto;
}

@media screen and (max-width: 767px) {
  .image-with-html .section-content .banner-image, 
  .image-with-html .section-content .banner-html {
    flex: 1 1 100%;
    width: 100%;
  }
}

/* Custom Blog page */
.custom-blog-template .Blog .Container {
  padding: 0 100px;
}

.custom-blog-template .Blog .blog-nav {
  border: solid 1px #000;
}

.custom-blog-template .Blog .blog-nav .blog-template-title {
  flex: 0 0 16.7%;
  width: 16.7%;
  padding: 10px 30px;
}

.custom-blog-template .Blog .blog-nav .blog-nav__items {
  padding: 0 30px;
}

.custom-blog-template .Blog .blog-nav .blog-nav__item {
  margin-right: 30px;
}

.custom-blog-template .Blog .blog-nav .blog-nav__item a {
  font-size: 13px;
  margin-left: 15px;
  position: relative;
}

.custom-blog-template .Blog .blog-nav .blog-nav__item a::after {
  content: '';
  position: absolute;
  left: -15px;
  top: 4px;
  width: 7px;
  height: 7px;
  border: solid 1px #000;
  border-radius: 3px;
}

.custom-blog-template .Blog .blog-nav .blog-nav__item.selected-item a::after {
  background: #000;
}

.custom-blog-template .Blog .ArticleItem__first {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 50px;
}

.custom-blog-template .Blog .ArticleItem .ArticleItem__ImageWrapper {
  padding-top: 66.7%;
}

/*.custom-blog-template .Blog .ArticleItem__Content .date_tag,
.custom-blog-template .Blog .ArticleItem__Content .ArticleItem__Title {
  text-align: center;
}*/

.custom-blog-template .Blog .ArticleItem__first .ArticleItem__ImageWrapper {
  padding-top: 33.3%;
}

.custom-blog-template .Blog .ArticleItem__first .ArticleItem__ImageWrapper,
.custom-blog-template .Blog .ArticleItem__first .ArticleItem__Content {
  flex: 0 0 50%;
  width: 50%;
}

.custom-blog-template .Blog .ArticleItem__first .ArticleItem__Content {
  text-align: center;
  padding: 0 50px;
}

.ArticleItem__Content .ArticleItem__Date {
  color: #c4c4c4;
}

.custom-blog-template .Blog .Pagination {
  border: solid 1px #000;
}

.custom-blog-template .Blog .Pagination .Pagination__NavItem {
  padding-left: 10px;
  padding-right: 10px;
}

.custom-blog-template .Blog .Pagination .Pagination__NavItem.is-active {
  border-bottom: none;
  box-shadow: unset;
  color: #FF6347;
}

.custom-blog-template .Blog .Pagination .Pagination__NavItem[title='Next page'],
.custom-blog-template .Blog .Pagination .Pagination__NavItem[title='Previous page'] {
  display: none;
}

@media screen and (max-width: 767px) {
  .custom-blog-template .Blog .Container {
    padding: 0;
  }

  .custom-blog-template .Blog .ArticleItem__first .ArticleItem__ImageWrapper, 
  .custom-blog-template .Blog .ArticleItem__first .ArticleItem__Content {
    flex: 0 0 100%;
    width: 100%;
  }

  .custom-blog-template .Blog .ArticleItem__first .ArticleItem__ImageWrapper {
    padding-top: 66.7%;
  }

  .custom-blog-template .Blog .ArticleItem__first,
  .custom-blog-template .Blog .ArticleItem {
    margin-bottom: 20px;
  }

  .custom-blog-template .Blog .ArticleItem .ArticleItem__Content {
    text-align: center;
    max-width: 90%;
    margin: auto;
    margin-right: 12px;
  }

  .custom-blog-template .Blog .blog-nav .blog-template-title {
    flex: 0 0 20%;
    width: 20%;
    padding: 10px 12px;
  }

  .custom-blog-template .Blog .blog-nav .blog-template-title .SectionHeader__Heading {
    font-size: 11px;
    margin-bottom: 0;
  }

  .custom-blog-template .Blog .blog-nav .blog-nav__items {
    overflow: hidden;
    overflow-x: auto;
  }

  .custom-blog-template .Blog .blog-nav .blog-nav__item a {
    font-size: 11px;
    white-space: nowrap;
  }

  .custom-blog-template .Blog .blog-nav .blog-nav__item a::after {
    top: 3px;
  }
}

/* Podcast */
.custom-blog-template .SectionHeader {
  text-align: center;
}
.supports-hover .Link--primary:hover, .Link--primary.is-active {
  color: #FF6347!important;
}
.ArticleItem__ImageWrapper {
  margin-bottom: 15px;
}
.ArticleList .Grid__Cell {
  margin-bottom: 20px;
}

/* Films blog: align typography with the refined Stories editorial system. */
.custom-blog-template .Blog--video {
  font-family: var(--w-sans) !important;
}

.custom-blog-template .Blog--video .Container {
  padding: 0 50px !important;
  max-width: none !important;
}

.custom-blog-template .Blog--video .PageHeader {
  display: none !important;
}

.custom-blog-template .Blog--video .blog-nav {
  border: 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 24px !important;
  padding: 0 12px !important;
}

.custom-blog-template .Blog--video .blog-template-title {
  background: transparent !important;
  flex: 0 0 auto !important;
  width: auto !important;
  padding: 0 !important;
}

.custom-blog-template .Blog--video .blog-template-title .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: clamp(56px, 11vw, 156px) !important;
  font-weight: 300 !important;
  letter-spacing: -0.065em !important;
  line-height: 0.86 !important;
  text-transform: none !important;
  color: var(--w-black, #111111) !important;
  margin: 0 !important;
}

.custom-blog-template .Blog--video .blog-nav__items {
  padding: 0 !important;
  gap: 16px !important;
  border-top: 1px solid rgba(17,17,17,0.22) !important;
  padding-top: 10px !important;
}

.custom-blog-template .Blog--video .blog-nav__item {
  margin-right: 0 !important;
}

.custom-blog-template .Blog--video .blog-nav__item a {
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--w-mid, #888580) !important;
  margin-left: 0 !important;
}

.custom-blog-template .Blog--video .blog-nav__item a::after {
  display: none !important;
}

.custom-blog-template .Blog--video .blog-nav__item.selected-item a {
  color: var(--w-black, #111111) !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.42fr) minmax(320px, 0.58fr) !important;
  min-height: min(68vw, 720px) !important;
  margin: 0 0 54px !important;
  border-top: 1px solid rgba(17,17,17,0.9) !important;
  border-bottom: 1px solid rgba(17,17,17,0.9) !important;
  background: #f7f4ee !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Media {
  position: relative !important;
  display: block !important;
  min-height: 520px !important;
  overflow: hidden !important;
  color: #ffffff !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  filter: saturate(0.92) contrast(1.04) !important;
  transform: scale(1.01) !important;
  transition: transform 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Media:hover .WillboFilmsHero__Img {
  transform: scale(1.035) !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(17,17,17,0.02), rgba(17,17,17,0.18)) !important;
  pointer-events: none !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Play {
  position: absolute !important;
  left: 22px !important;
  bottom: 20px !important;
  z-index: 2 !important;
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.85) !important;
  border-radius: 999px !important;
  padding: 10px 13px 10px 15px !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Copy {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  padding: 28px 28px 30px !important;
  border-left: 1px solid rgba(17,17,17,0.9) !important;
  color: var(--w-black, #111111) !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Copy::before {
  content: none !important;
  display: none !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Kicker {
  display: none !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Title,
.custom-blog-template .Blog--video .WillboFilmsHero__Title a {
  font-family: var(--w-sans) !important;
  font-size: clamp(28px, 3.5vw, 54px) !important;
  font-weight: 300 !important;
  letter-spacing: -0.035em !important;
  line-height: 0.98 !important;
  text-transform: none !important;
  color: var(--w-black, #111111) !important;
  margin: 0 !important;
  text-decoration: none !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Deck {
  font-family: var(--w-sans) !important;
  font-size: 15px !important;
  font-weight: 300 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.75 !important;
  color: var(--w-mid, #888580) !important;
  max-width: 360px !important;
  margin: 18px 0 22px !important;
}

.custom-blog-template .Blog--video .WillboFilmsHero__Link {
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--w-black, #111111) !important;
  text-decoration: none !important;
}

.custom-blog-template .Blog--video .ArticleListWrapper {
  padding-bottom: 100px !important;
}

.custom-blog-template .Blog--video .ArticleItem__Content {
  font-family: var(--w-sans) !important;
}

.custom-blog-template .Blog--video .ArticleItem__Title,
.custom-blog-template .Blog--video .ArticleItem__Title a {
  font-family: var(--w-sans) !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.35 !important;
  text-transform: none !important;
  color: var(--w-black, #111111) !important;
}

.custom-blog-template .Blog--video .ArticleItem__Excerpt {
  font-family: var(--w-sans) !important;
  font-size: 15px !important;
  font-weight: 300 !important;
  line-height: 1.75 !important;
  letter-spacing: 0.01em !important;
  color: var(--w-mid, #888580) !important;
}

.custom-blog-template .Blog--video .ArticleItem__Link {
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--w-black, #111111) !important;
  text-decoration: none !important;
}

@media screen and (max-width: 767px) {
  .custom-blog-template .Blog--video .Container {
    padding: 0 16px !important;
  }

  .custom-blog-template .Blog--video .PageHeader {
    margin: 18px 0 18px !important;
  }

  .custom-blog-template .Blog--video .blog-nav {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 18px !important;
    padding: 0 16px !important;
  }

  .custom-blog-template .Blog--video .blog-template-title {
    flex: 0 0 auto !important;
    width: auto !important;
  }

  .custom-blog-template .Blog--video .blog-template-title .SectionHeader__Heading {
    font-size: clamp(54px, 19vw, 82px) !important;
  }

  .custom-blog-template .Blog--video .blog-nav__items {
    overflow-x: auto !important;
    width: 100% !important;
  }

  .custom-blog-template .Blog--video .WillboFilmsHero {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
    margin-bottom: 38px !important;
  }

  .custom-blog-template .Blog--video .WillboFilmsHero__Media {
    min-height: 0 !important;
    aspect-ratio: 4 / 5 !important;
  }

  .custom-blog-template .Blog--video .WillboFilmsHero__Copy {
    min-height: 360px !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(17,17,17,0.9) !important;
    padding: 90px 20px 24px !important;
  }

  .custom-blog-template .Blog--video .ArticleItem__Title,
  .custom-blog-template .Blog--video .ArticleItem__Title a {
    font-size: 15px !important;
  }

  .custom-blog-template .Blog--video .ArticleItem__Excerpt {
    font-size: 14px !important;
  }
}
.Grid--m {
  margin-left: -20px;
}
@media screen and (min-width: 1140px) {
  .Grid--m {
      margin-left: -20px;
  }
  .Grid--m>.Grid__Cell {
    padding-left: 20px;
  }
  .Container {
    padding: 0 20px;
  }
  .Slideshow.Container {
    padding: 0 50px;
  }
}
@media screen and (min-width: 1008px) {
  .ArticleList--withFeatured .Grid__Cell:first-child {
      margin-bottom: 0;
  }
  .ArticleList .Grid__Cell {
    margin-bottom: 20px;
  }
}
.Grid--m>.Grid__Cell {
  padding-left: 20px;
}

/* Custom Article template */
.article-section .Container {
  padding: 0 100px;
}

.article-section p {
  font-family: var(--willbo-editorial-font, "Sabon", "EB Garamond", Georgia, serif) !important;
}

.bg-image-article-section .bg-image-article {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.bg-image-article-section .video-wrapper {
  width: 100%;
  position: relative;
  padding-top: 56.25%;
  overflow: hidden;
}

.bg-image-article-section .video-wrapper iframe {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
}

.article-infos-section .article-infos-wrapper .article-date-tag,
.article-infos-section .article-infos-wrapper .article-author {
  color: #c4c4c4;
}

.article-infos-section .article-infos-wrapper .article-date-tag {
  text-transform: uppercase;
}

.article-infos-section .article-infos-wrapper .article-title {
  letter-spacing: normal;
  font-weight: 700;
}

.article-image-grid-section .article-image-grid-wrapper .ProductList--grid {
  padding: 0;
}

.article-image-grid-section .article-image-grid-wrapper .ProductList--grid>.Grid__Cell {
  margin-bottom: 24px;
}

.article-quote-section .article-quote-wrapper .Heading p {
  font-family: 'HelveticaNeue';
  font-size: 30px;
  letter-spacing: normal;
  font-weight: 700;
  line-height: 1.2;
}

.article-quote-section .article-quote-wrapper .quote-author {
  font-size: 20px;
  color: #c4c4c4;
}

.article-slide-item__image {
  position: relative;
  padding-top: 66.7%;
}

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

.article-slide-item__alt-text {
  font-size: 20px;
  margin-top: 20px;
}

.article-slider-wrapper .slick-dots {
  bottom: -40px;
}

.article-slider-wrapper .slick-dots > li > button {
  border: solid 1px #000;
  border-radius: 20px;
  color: #000;
  background: transparent;
  width: 15px;
  height: 15px;
}

.article-slider-wrapper .slick-dots > li.slick-active > button {
  background: #000;
}

.article-slider-wrapper .slick-dots > li > button:before {
  content: unset;
}

.article-action-buttons.Container {
  padding: 0 100px;
  margin-top: 80px;
}

.article-action-buttons-wrapper {
  justify-content: space-between;
  border-top: solid 1px #000;
  padding-top: 30px;
}

.article-action-button {
  flex: 0 0 33.3%;
  width: 33.3%;
}

.article-action-button.previous-button {
  text-align: left;
}

.article-action-button.next-button {
  text-align: right;
}

.article-action-button.scroll-top-button {
  text-align: center;
}

.article-action-buttons .scroll-top-button a {
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .article-section .Container,
  .article-action-buttons.Container {
    padding: 0 18px;
  }

  .bg-image-article-section .bg-image-article {
    height: 40vh !important;
  }

  .article-infos-section .article-infos-wrapper .article-title {
    font-size: 20px;
  }

  .article-infos-section .article-infos-wrapper .article-date-tag {
    font-size: 13px;
  }

  .article-quote-section .article-quote-wrapper .Heading p {
    font-size: 20px;
  }

  .article-quote-section .article-quote-wrapper .quote-author {
    font-size: 16px;
  }

  .article-slide-item__alt-text {
    font-size: 17px;
  }
}







.MegaMenu .featuredProductCarousel {width: 64%;}
.MegaMenu .ProductList.ProductList--grid {width: 64%;}
.MegaMenu {display: flex;}
.MegaMenu__Inner {
  flex-direction: column;
  position: relative;
  width: 40%;
  margin: unset;
  border:none !important;
}
.MegaMenu__Inner .Linklist{
  animation: 0s linear 0.1s forwards delayedHide ;
  opacity:0;
}
.MegaMenu__Inner .MegaMenu__Item:hover .Linklist { animation: 0s linear 0.4s forwards delayedShow ;opacity:1;}
@keyframes delayedShow {
  to {
    visibility: visible;
  }
}
@keyframes delayedHide {
  to {
    visibility: hidden;
  }
}
.MegaMenu__Inner .Linklist {position: absolute;left: 40%;top: 30px;}
.MegaMenu .MegaMenu__Item {width: 36%;}
.MegaMenu__Inner .Linklist__Item {margin: 0;}

.MegaMenu__Inner .Link.Link--secondary {
	font-size: 12px;
	padding: calc(3.33333px + 1px) 10px;
	padding-left: 0;
	padding-right: 0;
  letter-spacing:1px;
}
.MegaMenu .Megamenu_ImageInfo {position: absolute;bottom: 6px;left: 4%;}
.MegaMenu .MegaMenu__ImageItems {position: relative;}
.Megamenu_ImageInfo .MegaMenu__PushHeading,
.MegaMenu__ImageItems .Megamenu_ImageInfo .MegaMenu__PushViewBtn{color: #fff;}
.MegaMenu__Inner.twm_menu {width: 20%;}
.megatwm {width: 80%;display: flex;}
.megatwm .twm_text {width: 60%;padding-right: 10%;padding-left: 5%;}
.twm_image {width: 40%;padding: 0 5%;}
.twm_image img{width:100%}
.AnnouncementBar__Wrapper .AnnouncementBar__Content.Heading {font-size: 12px;}
.AnnouncementBar__Wrapper {padding: 6px 15px;}

.social-media-menu .HorizontalList__Item {
	color: #bab8b4;
	margin-right: 5px !important;
	font-size: 10px;
}
.social-media-menu {float: right;margin-top:20px;}
#section-footer {padding-top: 0 !important;border: 1px solid #000 !important;}
footer#section-footer .Container {border-top: none;border-bottom: none;}
.footer-copyright {
	display: inline-block;
	width: 100%;
	text-align: right;
	margin-top: 20px;
  color: #bab8b4;
}
.Footer__Block--image .Footer__tilte {color: red;margin-top: 30px;}
.Footer__Block--image {border-left: 1px solid #000 !important;border-right: 1px solid #000 !important;}
.newsletter-btn {
	position: absolute;
	right: 3px;
	top: 0;
	z-index: 99;
	padding: 4px 10px;
	display: flex;
	align-items: center;
	gap: 10px;
}
.newsletter-action {position: relative;}
.page-date {
	display: inline-block;
	width: 100%;
	text-align: center;
	font-weight: bold;
}
.Drawer__Main .subnav-wrapper .Collapsible__Inner{padding:0;}
.Linklist--spacingLoose .Linklist__Item {margin-bottom: 8px;}
.SidebarMenu__Nav--secondary .contact-form {padding-top: 20px;}
/* .all-sunmenu{display:none;} */
.Megamenu--lookbook .MegaMenu__Inner {display: none;}
.Megamenu--lookbook .ProductList.ProductList--grid {width: 100%;}
.Megamenu--lookbook .Megamenu_imagesection .Grid__Cell {width: 20%;}
html.stickymenuenable #shopify-section-sidebar-menu .Drawer{top: 55px;}

@media only screen and (max-width: 768px) {
  .Footer__Inner {flex-direction: column; }
  .footer-copyright {text-align: center;}
  .social-media-menu{float: unset;width: 100%;}
  .Footer__Inner .Footer__Block{border: none !important;margin-top: 0;}.
}

.flickity-viewport {
  overflow-x: auto;
}

.flickity-viewport::-webkit-scrollbar {
  height: 1px;
  background: #dddad0;
  width: 4px;
}

/* .flickity-viewport::-webkit-scrollbar-button {
  display: none;
} */
.flickity-slider::-webkit-scrollbar-track {
  background: #dddad0;
}

.flickity-viewport::-webkit-scrollbar-thumb {
  background: #333;
  border-radius: 2px;
}

.flickity-slider .Carousel__Cell .ProductItem {
  padding: 0px;
}



/* ============================================================
   WILLBO â MAY SPORT LAUNCH
   Clean brand layer. Noah NYC editorial Ã Buck Mason utility.
   Rules: 
   - Never override html/body margin/padding/layout
   - Never override position on Prestige structural elements
   - Use specific selectors, not broad tag overrides
   - !important only where Prestige inline styles must be beaten
   ============================================================ */

/* âââ 1. GOOGLE FONTS + CSS VARS âââââââââââââââââââââââââââ */
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;1,400;1,500&family=DM+Sans:wght@300;400;500&display=swap');

:root {
  --w-black:  #111111;
  --w-white:  #FFFFFF;
  --w-cream:  #F5F3EE;
  --w-sand:   #E8E4DC;
  --w-mid:    #888580;
  --w-border: #D9D5CC;
  --w-nav-h:  72px;
  --w-pad:    48px;
  --w-gap:    80px;
  --w-serif:  'Tiempos Text', 'Sabon', 'EB Garamond', Georgia, serif;
  --w-sans:   'Founders Grotesk', 'GT America Medium', 'HelveticaNeue', 'Albert Sans', 'DM Sans', system-ui, sans-serif;
  --w-nav-sans: 'Founders Grotesk', 'GT America Medium', 'HelveticaNeue', 'Albert Sans', 'DM Sans', system-ui, sans-serif;
  --w-editorial-serif: 'Tiempos Headline', 'Tiempos Text', 'Sabon', 'EB Garamond', Georgia, serif;
  --w-editorial-text-serif: 'Tiempos Text', 'Sabon', 'EB Garamond', Georgia, serif;
}

/* âââ 2. ANNOUNCEMENT BAR âââââââââââââââââââââââââââââââââââ */
.AnnouncementBar {
  background: var(--w-black) !important;
  border-bottom: none !important;
}
.AnnouncementBar__Message {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 300;
  letter-spacing: 0.01em;
  text-transform: none;
  color: var(--w-white) !important;
}

/* âââ 3. HEADER / NAV âââââââââââââââââââââââââââââââââââââââ */
/* Suppress Prestige's LinkSpacer underline â we use our own ::after */
.Header__LinkSpacer::after {
  display: none !important;
}

/* âââ HEADER: transparent over hero, white on hover/scroll âââââââââââââââââ
   Default (homepage, at top): transparent bg, white text/icons
   On hover OR after scrolling (stickymenuenable): white bg, dark text
   All other templates: always solid white
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* âââ HEADER BASE ââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.Header {
  background: var(--w-white) !important;
  border-bottom: 1px solid var(--w-black) !important;
  box-shadow: none !important;
  height: var(--w-nav-h);
  min-height: var(--w-nav-h);
}

/* âââ TRANSPARENT HEADER (homepage only) âââââââââââââââââââââââââââââââ
   Technique: ::before pseudo-element holds the white bg and fades in.
   This way text/logo snap to their color instantly while only the
   background panel animates â identical to how Moncler does it.
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* Slide slideshow up behind header */
.template-index #shopify-section-slideshow,
.template-index .shopify-section--slideshow {
  margin-top: calc(-1 * var(--w-nav-h)) !important;
}

/* Header: transparent base, relative so ::before can sit behind content */
.template-index .Header {
  background: transparent !important;
  border-bottom: 1px solid transparent !important;
  position: relative !important;
  z-index: 100 !important;
}

/* ::before is the white panel â starts invisible, fades in on hover/scroll */
.template-index .Header::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--w-white) !important;
  border-bottom: 1px solid var(--w-black) !important;
  opacity: 0 !important;
  transition: opacity 0.18s ease-out !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* Header wrapper must sit above the ::before panel */
.template-index .Header .Header__Wrapper {
  position: relative !important;
  z-index: 1 !important;
}

/* White text/logo in transparent state */
.template-index .Header a,
.template-index .Header .Heading,
.template-index .Header .Header__MainNav .HorizontalList__Item > a,
.template-index .Header .Header__SecondaryNav a,
.template-index .Header .Header__CartCount,
.template-index .Header .Header__Logo,
.template-index .Header .Header__LogoLink {
  color: var(--w-white) !important;
}
.template-index .Header .Header__Icon svg,
.template-index .Header .Header__Icon path,
.template-index .Header .Header__Icon use {
  fill: var(--w-white) !important;
  stroke: var(--w-white) !important;
}
.template-index .Header .Header__LogoImage--primary {
  filter: brightness(0) invert(1) !important;
  transition: filter 0.18s ease-out !important;
}

/* ON HOVER: fade white panel in */
.template-index .Header:hover::before {
  opacity: 1 !important;
}
/* On hover: snap text to dark (no text transition â matches Moncler) */
.template-index .Header:hover a,
.template-index .Header:hover .Heading,
.template-index .Header:hover .Header__MainNav .HorizontalList__Item > a,
.template-index .Header:hover .Header__SecondaryNav a,
.template-index .Header:hover .Header__CartCount,
.template-index .Header:hover .Header__Logo,
.template-index .Header:hover .Header__LogoLink {
  color: var(--w-black) !important;
}
.template-index .Header:hover .Header__Icon svg,
.template-index .Header:hover .Header__Icon path,
.template-index .Header:hover .Header__Icon use {
  fill: var(--w-black) !important;
  stroke: var(--w-black) !important;
}
.template-index .Header:hover .Header__LogoImage--primary {
  filter: none !important;
}

/* ON SCROLL (stickymenuenable): same white panel, stays solid */
.stickymenuenable .template-index .Header::before,
.template-index .stickymenuenable .Header::before {
  opacity: 1 !important;
  transition: none !important;
}
.stickymenuenable .template-index .Header a,
.stickymenuenable .template-index .Header .Heading,
.stickymenuenable .template-index .Header .Header__MainNav .HorizontalList__Item > a,
.stickymenuenable .template-index .Header .Header__SecondaryNav a,
.stickymenuenable .template-index .Header .Header__CartCount,
.stickymenuenable .template-index .Header .Header__Logo,
.stickymenuenable .template-index .Header .Header__LogoLink,
.template-index .stickymenuenable .Header a,
.template-index .stickymenuenable .Header .Heading,
.template-index .stickymenuenable .Header .Header__MainNav .HorizontalList__Item > a,
.template-index .stickymenuenable .Header .Header__SecondaryNav a,
.template-index .stickymenuenable .Header .Header__CartCount,
.template-index .stickymenuenable .Header .Header__Logo,
.template-index .stickymenuenable .Header .Header__LogoLink {
  color: var(--w-black) !important;
}
.stickymenuenable .template-index .Header .Header__Icon svg,
.stickymenuenable .template-index .Header .Header__Icon path,
.template-index .stickymenuenable .Header .Header__Icon svg,
.template-index .stickymenuenable .Header .Header__Icon path {
  fill: var(--w-black) !important;
  stroke: var(--w-black) !important;
}
.stickymenuenable .template-index .Header .Header__LogoImage--primary,
.template-index .stickymenuenable .Header .Header__LogoImage--primary {
  filter: none !important;
}
.Header__Wrapper {
  height: var(--w-nav-h);
  padding: 0 48px !important; /* align nav edges to mega menu 48px side padding */
}

@media (max-width: 768px) {
  .Header__Wrapper {
    padding: 0 20px !important; /* mobile: hug edges like live site */
  }
}

/* Nav links â DM Sans 11px uppercase spaced */
.Header__MainNav .HorizontalList__Item > a,
.Header__MainNav .HorizontalList__Item > button {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--w-black);
  text-decoration: none;
  padding: 0 10px;
  background: none;
  border: none;
  cursor: pointer;
  position: relative;
}

/* Animated underline on hover */
.Header__MainNav .HorizontalList__Item > a::after,
.Header__MainNav .HorizontalList__Item > button::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 10px;
  right: 10px;
  height: 1px;
  background: var(--w-black);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.22s ease;
}
.Header__MainNav .HorizontalList__Item > a:hover::after,
.Header__MainNav .HorizontalList__Item > button:hover::after {
  transform: scaleX(1);
}

/* Right-side nav items â including STORES / ACCOUNT which Prestige marks Text--subdued */
.Header__FlexActions a,
.Header__Actions a,
.Header .Text--subdued.Link--primary,
.Header .Link--primary.Text--subdued {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  text-decoration: none !important;
}

/* âââ 4. MEGA MENU ââââââââââââââââââââââââââââââââââââââââââ */
.MegaMenu,
.MegaMenu-1 {
  background: #ffffff !important;
  border-top: none !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.07);
  margin-top: -1px !important; /* close the 1px gap between header border and dropdown */
  position: absolute !important;
  z-index: 9998 !important;
}

/* Column titles */
.MegaMenu__Title.Heading,
.MegaMenu-1 .MegaMenu__Title {
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: var(--w-mid) !important;
  border-bottom: 1px solid var(--w-border);
  padding-bottom: 10px;
  margin-bottom: 16px;
}

/* Mega menu links */
.MegaMenu .Linklist__Item a,
.MegaMenu-1 .Linklist__Item a {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  letter-spacing: 0.02em !important;
  color: var(--w-black) !important;
  text-decoration: none;
  padding: 6px 0;
  display: block;
  transition: opacity 0.15s ease;
}
.MegaMenu .Linklist__Item a:hover,
.MegaMenu-1 .Linklist__Item a:hover {
  opacity: 0.45;
}

/* Push image captions */
.MegaMenu__PushHeading {
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
}

/* âââ 5. MOBILE NAV DRAWER ââââââââââââââââââââââââââââââââââ */
#NavDrawer,
.Drawer--leftEdge {
  background: var(--w-cream) !important;
  width: min(92vw, 400px) !important;
}

/* Mobile primary links â EB Garamond large */
#NavDrawer .Linklist > .Linklist__Item > a {
  font-family: var(--w-sans) !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  color: var(--w-black) !important;
  text-decoration: none;
  padding: 10px 24px;
  display: block;
  line-height: 1.3;
}

/* Mobile sub-links */
#NavDrawer .Linklist .Linklist__Item .Linklist__Item a {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  letter-spacing: 0.02em !important;
  color: var(--w-mid) !important;
  padding: 6px 32px;
  display: block;
}

.Drawer__Header {
  border-bottom: 1px solid var(--w-border);
}

/* âââ 6. BUTTONS ââââââââââââââââââââââââââââââââââââââââââââ */
/* ATC / primary */
.ProductForm__AddToCart,
.Button--primary {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  background: var(--w-black) !important;
  color: var(--w-white) !important;
  border: none !important;
  border-radius: 0 !important;
  height: 52px !important;
  cursor: pointer;
  transition: background 0.2s ease;
}
.ProductForm__AddToCart:hover,
.Button--primary:hover {
  background: #333 !important;
}

/* Secondary outline */
.Button--secondary {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  background: transparent !important;
  color: var(--w-black) !important;
  border: 1px solid var(--w-black) !important;
  border-radius: 0 !important;
  transition: background 0.2s ease, color 0.2s ease;
}
.Button--secondary:hover {
  background: var(--w-black) !important;
  color: var(--w-white) !important;
}

/* Clean text link â Moncler / Noah style */
.willbo-text-link {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--w-black);
  text-decoration: none;
  background: none;
  border: none;
  padding: 0;
  display: inline-block;
  position: relative;
  cursor: pointer;
}
.willbo-text-link::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.22s ease;
}
.willbo-text-link:hover::after {
  transform: scaleX(1);
}

/* âââ 7. HOMEPAGE HERO / SLIDESHOW ââââââââââââââââââââââââââ */
/* Full bleed, no side gaps */
#shopify-section-slideshow .Container,
.shopify-section--slideshow .Container {
  max-width: 100%;
  padding: 0;
  margin: 0;
}

/* Hero text â Noah style bottom-left */
.Slideshow__Content {
  text-align: left;
}
.Slideshow__Heading {
  font-family: var(--w-sans) !important;
  font-size: clamp(36px, 5vw, 68px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.08 !important;
}
.Slideshow__SubContent {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  letter-spacing: 0.04em !important;
}

/* âââ 8. SECTION HEADERS ââââââââââââââââââââââââââââââââââââ */
.SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
}

/* âââ 9. PRODUCT GRID âââââââââââââââââââââââââââââââââââââââ */
/* Tight gap, 4-up on desktop */
.ProductList {
  gap: 2px !important;
}

/* âââ PRODUCT IMAGE HOVER â clean crossfade + scale ââââââââ */
/* Prestige's default is an opacity swap but no scale.
   We upgrade to: alternate fades in + subtle scale-up on primary,
   matching the Cherry LA homepage featured product feel.
   No clip-path (it creates visible polygon seam lines). */

/* Container clips the scale overflow */
.ProductItem__ImageWrapper {
  overflow: hidden !important;
  position: relative !important;
}

/* Primary image â subtle zoom out on hover (scale down slightly) */
.ProductItem__Image:not(.ProductItem__Image--alternate) {
  transition: opacity 0.35s ease, transform 0.55s ease !important;
  will-change: transform, opacity !important;
  transform: scale(1) !important;
}
@media (hover: hover) {
  .ProductItem__ImageWrapper--withAlternateImage:hover .ProductItem__Image:not(.ProductItem__Image--alternate) {
    opacity: 0 !important;
    transform: scale(1.04) !important;
  }
}

/* Alternate image â fades in clean, no scale */
.ProductItem__Image--alternate {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  opacity: 0 !important;
  transform: scale(1.04) !important;
  transition: opacity 0.35s ease, transform 0.55s ease !important;
  will-change: opacity, transform !important;
  z-index: 2 !important;
  clip-path: none !important;
}
@media (hover: hover) {
  .ProductItem__ImageWrapper--withAlternateImage:hover .ProductItem__Image--alternate {
    opacity: 1 !important;
    transform: scale(1) !important;
  }
}

/* Touch devices â keep alternate hidden entirely */
@media (hover: none) {
  .ProductItem__Image--alternate {
    display: none !important;
  }
}

/* Product title â DM Sans small uppercase */
/* Product card â Moncler style: compact, sentence case, clear hierarchy */
.ProductItem__Title {
  font-family: var(--w-sans) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  color: var(--w-black) !important;
  margin: 0 0 2px 0 !important;
  line-height: 1.4 !important;
}
.ProductItem__Title a {
  color: var(--w-black) !important;
  text-decoration: none !important;
}

/* Price */
.ProductItem__PriceList.Heading,
.ProductItem__PriceList {
  font-family: var(--w-sans) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  margin: 0 0 2px 0 !important;
  line-height: 1.4 !important;
}
.ProductItem__Price {
  font-family: var(--w-sans) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: var(--w-black) !important;
  letter-spacing: 0.01em !important;
}

/* Color count â muted grey, smaller */
.ProductItem__PriceList.Text--subdued {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 300 !important;
  color: var(--w-mid) !important;
  letter-spacing: 0.01em !important;
  margin: 0 !important;
  line-height: 1.4 !important;
}

/* âââ 10. TWO-COLUMN EDITORIAL SECTIONS âââââââââââââââââââââ */
/* Prestige classes: .two-column-images-container .two-column__Image */
.two-column-images-container {
  display: flex !important;
  flex-wrap: nowrap;
  gap: 2px;
  width: 100%;
}
.two-column__Image {
  overflow: hidden;
  flex: 1 1 50%;
  min-height: 0;
}
.two-column__Image img {
  transition: transform 0.55s ease;
  will-change: transform;
}
.two-column__Image:hover img {
  transform: scale(1.03);
}

/* Remove box from CTA overlay text */
.two-column__Content .Button,
.two-column__Content .Button--primary {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  height: auto !important;
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--w-white) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* âââ 11. PRODUCT PAGE (PDP) ââââââââââââââââââââââââââââââââ */
.ProductMeta__Vendor {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--w-mid) !important;
}
.ProductMeta__Title {
  font-family: var(--w-sans) !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.15 !important;
  color: var(--w-black) !important;
}
.ProductMeta__PriceList {
  font-family: var(--w-sans) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}

/* Size selectors â sharp bordered squares */
.SizeSwatches__Item {
  border-radius: 0 !important;
}
.SizeSwatches__Label {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  border-radius: 0 !important;
}

/* Product accordions */
.Collapsible__Button {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}
.Collapsible__Content {
  font-family: var(--w-sans) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  line-height: 1.7 !important;
  color: var(--w-mid) !important;
}

/* âââ 12. FOOTER ââââââââââââââââââââââââââââââââââââââââââââ */
.Footer {
  background: #f7f8f3 !important;
  border-top: 1px solid var(--w-border);
}
.Footer__Title {
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--w-mid) !important;
}
.Footer__Linklist a {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  color: var(--w-black) !important;
  text-decoration: none;
  transition: opacity 0.15s ease;
}
.Footer__Linklist a:hover {
  opacity: 0.45;
}

/* âââ 13. ANNOUNCEMENT BAR â PRESTIGE SPECIFICS âââââââââââââ */
.AnnouncementBar__Wrapper {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 300 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  color: var(--w-white) !important;
}
/* All text/links inside the bar â force white */
.AnnouncementBar a,
.AnnouncementBar p,
.AnnouncementBar span,
.AnnouncementBar .Heading,
.AnnouncementBar__Content {
  color: var(--w-white) !important;
  text-transform: none !important;
}

/* âââ 14. SALE TAGS âââââââââââââââââââââââââââââââââââââââââ */
.SaleTag {
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  letter-spacing: 0.1em !important;
  background: var(--w-black) !important;
  color: var(--w-white) !important;
  border-radius: 0 !important;
}

/* âââ 15. SHOP MEGA MENU â Moncler exact spec âââââââââââââ */
/*
   Moncler measurements from screenshot:
   - bg: warm off-white #F5F5F3
   - menu height: ~650px (very tall, generous air)
   - inner padding: 36px top, 48px left/right
   - col header: 14px, weight 400, title case, mb 28px
   - links: 14px, weight 300, line-height 2.2 (~30px gap)
   - col gap: ~180px between columns
   - image: flush right, ~300px wide, tall portrait
   - caption: 13px, centered, weight 300, mt 14px
*/

/* Outer wrapper */
.WillboShopMenu.MegaMenu.Megamenu--shop {
  background: #F5F3EE !important;
  border-top: none !important;
  padding: 0 !important;
  width: 100% !important;
  left: 0 !important;
  box-shadow: none !important;
}

/* Inner layout — Moncler-leaning: quiet columns left, single image pushed right */
.WillboShopMenu__Inner {
  display: block !important;
  position: relative !important;
  align-items: start !important;
  padding: 34px 36px 44px 48px !important;
  gap: 0 !important;
  min-height: 560px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Columns container — airy editorial rhythm */
.WillboShopMenu__Cols {
  display: flex !important;
  flex-direction: row !important;
  gap: clamp(78px, 8.5vw, 138px) !important;
  width: auto !important;
  flex: none !important;
  padding: 0 clamp(390px, 31vw, 470px) 0 0 !important;
  align-items: flex-start !important;
}

/* Single column */
.WillboShopMenu__Col {
  display: flex !important;
  flex-direction: column !important;
  min-width: 130px !important;
}

/* Column header — quiet editorial bucket label */
.WillboShopMenu__ColHead {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 15.5px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.005em !important;
  text-transform: none !important;
  color: var(--w-black) !important;
  margin: 0 0 17px 0 !important;
}

/* List â tight, ~1.6 line-height */
.WillboShopMenu__List {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}

/* Sub-links â 13px, tighter line-height than the header */
.WillboShopMenu__Link {
  font-family: var(--w-sans) !important;
  font-size: 14.5px !important;
  font-weight: 400 !important;
  line-height: 1.72 !important;
  letter-spacing: 0.005em !important;
  text-transform: none !important;
  color: var(--w-black) !important;
  text-decoration: none !important;
  display: inline-block !important;
  position: relative !important;
}
.WillboShopMenu__Link::after {
  content: '' !important;
  position: absolute !important;
  bottom: 2px !important;
  left: 0 !important;
  width: 0 !important;
  height: 1px !important;
  background: var(--w-black) !important;
  transition: width 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.WillboShopMenu__Link:hover::after {
  width: 100% !important;
}

/* Featured image â flush right, full menu height, Moncler-style */
.WillboShopMenu__Feature {
  position: absolute !important;
  top: 34px !important;
  right: 36px !important;
  flex: none !important;
  width: clamp(300px, 24vw, 350px) !important;
  max-width: none !important;
  margin: 0 !important;
  align-self: auto !important;
  overflow: visible !important;
}
.WillboShopMenu__FeatureLink {
  display: flex !important;
  flex-direction: column !important;
  text-decoration: none !important;
  color: var(--w-black) !important;
  height: auto !important;
}
.WillboShopMenu__FeatureImg {
  flex: none !important;
  width: 100% !important;
  aspect-ratio: 3 / 4 !important;
  overflow: hidden !important;
  display: block !important;
  min-height: 0 !important;
}
.WillboShopMenu__FeatureImg img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  transition: transform 0.55s ease !important;
}
.WillboShopMenu__FeatureLink:hover .WillboShopMenu__FeatureImg img {
  transform: scale(1.03) !important;
}

/* Moncler-inspired single-image hero treatment */
.WillboShopMenu__Feature--pair {
  position: absolute !important;
  top: 34px !important;
  right: 36px !important;
  flex: none !important;
  width: clamp(325px, 26vw, 380px) !important;
  max-width: none !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  overflow: visible !important;
}
.WillboShopMenu__Feature--pair .WillboShopMenu__FeatureLink {
  flex: none !important;
  min-width: 0 !important;    /* prevent flex blowout */
  height: auto !important;
}
.WillboShopMenu__Feature--pair .WillboShopMenu__FeatureLink:nth-child(n+2) {
  display: none !important;
}

/* Caption â centered below image, matches column header size */
.WillboShopMenu__FeatureCaption {
  font-family: var(--w-sans) !important;
  font-size: 14.5px !important;
  font-weight: 400 !important;
  letter-spacing: 0.005em !important;
  text-transform: none !important;
  color: var(--w-black) !important;
  text-align: center !important;
  padding: 10px 0 24px !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
}

/* ─── 16. EXPLORE MEGA MENU — Moncler-style static world grid ─── */

.WillboExpWrap {
  width: 100% !important;
  display: block !important;
  position: relative !important;
  padding: 24px 30px 26px !important;
  background: #F5F3EE !important;
}

/* Outer wrapper â pure white, full bleed */
.WillboExpMenuOuter.MegaMenu.Megamenu--experience {
  background: #F5F3EE !important;
  /* AUGUST THEME: match the Stories/Shop mega menu divider line under the
     nav bar (2026-08-28) - was border-top: none, now consistent 1px
     hairline across all three mega menus. */
  border-top: 1px solid rgba(17, 17, 17, 0.08) !important;
  padding: 0 !important;
  width: 100% !important;
  left: 0 !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.06) !important;
  overflow: visible !important; /* must NOT be hidden â Prestige .MegaMenu clips our progress bar */
  isolation: isolate !important;
  z-index: 9998 !important;
}

/* Static four-tile world grid — no carousel */
.WillboExpStaticGrid {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: minmax(0, 1fr) !important;
  gap: 14px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Legacy scroller hooks retained only for safety if an old block renders elsewhere */
.WillboExpScroller {
  width: 100% !important;
  background: #ffffff !important;
  overflow-x: scroll !important;
  overflow-y: hidden !important;
  padding: 20px 0 0 30px !important;
  box-sizing: border-box !important;
  cursor: grab !important;
  scroll-behavior: auto !important;
  -webkit-user-select: none !important;
  user-select: none !important;
  -ms-overflow-style: none !important;  /* IE/Edge */
  scrollbar-width: none !important;    /* Firefox */
}
.WillboExpScroller::-webkit-scrollbar {
  display: none !important;
}
.WillboExpScroller.is-dragging {
  cursor: grabbing !important;
  scroll-behavior: auto !important;
}

/* Track â flex row, no right padding (last panel bleeds) */
.WillboExpTrack {
  display: flex !important;
  flex-direction: row !important;
  gap: 14px !important;
  width: max-content !important;
  padding: 0 54px 0 0 !important; /* right padding so last card can scroll fully into view */
  margin: 0 !important;
}

/* Panel — equal static tile */
.WillboExpPanel {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  text-decoration: none !important;
  color: var(--w-black) !important;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  overflow: visible !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}

/* Image container — refined rectangle, static like Moncler/Noah editorial modules */
.WillboExpImg {
  width: 100% !important;
  height: 0 !important;
  padding-bottom: 70% !important;
  position: relative !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}
.WillboExpImg img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  transition: transform 0.55s ease !important;
  will-change: transform !important;
}
.WillboExpPanel:hover .WillboExpImg img {
  transform: scale(1.03) !important;
}

/* Label â flush left, 6px top gap */
.WillboExpLabel {
  display: block !important;
  font-family: var(--w-nav-sans, var(--w-sans)) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.045em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  padding: 7px 0 0 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  position: relative !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Animated underline on hover */
.WillboExpLabel::after {
  content: '' !important;
  position: absolute !important;
  bottom: -2px !important;
  left: 0 !important;
  width: 0 !important;
  height: 1px !important;
  background: var(--w-black) !important;
  transition: width 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.WillboExpPanel:hover .WillboExpLabel::after {
  width: 100% !important;
}

.WillboExpConditionsLink {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-top: 24px !important;
  font-family: var(--w-nav-sans, var(--w-sans)) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.045em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  color: rgba(17, 17, 17, 0.72) !important;
  text-decoration: none !important;
  transition: color 160ms ease !important;
}

.WillboExpConditionsLink:hover {
  color: #111111 !important;
}

.WillboExpConditionsLink span {
  font-size: 12px !important;
  line-height: 1 !important;
}



/* Legacy megatwm â hidden */
.megatwm {
  display: none !important;
}

/* âââ 16. MOBILE RESPONSIVE âââââââââââââââââââââââââââââââââ */
@media (max-width: 768px) {
  :root {
    --w-pad: 20px;
    --w-gap: 48px;
  }
  .two-column-images-container {
    flex-wrap: wrap !important;
  }
  .two-column__Image {
    flex: 1 1 100% !important;
  }
  .Slideshow__Heading {
    font-size: clamp(30px, 8vw, 42px) !important;
  }
  .SectionHeader__Heading {
    font-size: 12px !important;
  }
}

/* âââ 17. PRESTIGE TYPOGRAPHY NORMALISATION âââââââââââââââââ */
/* Override Helvetica globally with DM Sans for body copy */
.Body,
.Rte,
.Rte p,
.Rte li,
.ProductMeta__Description {
  font-family: var(--w-sans) !important;
  font-weight: 300 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: var(--w-black) !important;
}
/* Prestige .Text--subdued */
.Text--subdued {
  color: var(--w-mid) !important;
  font-family: var(--w-sans) !important;
}

/* âââ END WILLBO BRAND LAYER ââââââââââââââââââââââââââââââââ */

/* âââ 18. HERO SLIDESHOW BUTTON â CLEAN TEXT LINK ââââââââââ */
/* The Prestige Slideshow renders CTAs as .ButtonGroup__Item.Button
   Override to look like a clean Noah/Moncler text link */
.Slideshow .ButtonGroup__Item.Button,
.Slideshow .ButtonGroup__Item.Button--primary,
.SectionHeader__ButtonWrapper .ButtonGroup__Item.Button {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  height: auto !important;
  min-height: auto !important;
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--w-white) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  position: relative !important;
}
/* Animated underline */
.Slideshow .ButtonGroup__Item.Button::after,
.SectionHeader__ButtonWrapper .ButtonGroup__Item.Button::after {
  content: '' !important;
  position: absolute !important;
  bottom: -3px !important;
  left: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: var(--w-white) !important;
  transform: scaleX(1) !important; /* always visible on hero */
}
.Slideshow .ButtonGroup__Item.Button:hover::after,
.SectionHeader__ButtonWrapper .ButtonGroup__Item.Button:hover::after {
  transform: scaleX(0.6) !important;
  transform-origin: left !important;
  transition: transform 0.22s ease !important;
}

/* ButtonGroup wrapper â left-align, no stretching */
.Slideshow .SectionHeader__ButtonWrapper,
.Slideshow .ButtonGroup {
  justify-content: flex-start !important;
  background: transparent !important;
  padding: 0 !important;
  margin-top: 20px !important;
}

/* âââ 19. SLIDESHOW SCROLL ARROW (RoundButton) ââââââââââââââ */
/* Hide the round scroll-down button completely â it's causing
   the red outline artifact on the left edge */
.Slideshow__ScrollButton,
.RoundButton.RoundButton--medium {
  display: none !important;
}

/* Mobile: full viewport height hero */
@media screen and (max-width: 767px) {
  .Slideshow__Slide,
  .Slideshow__Carousel,
  .Slideshow--fullScreen .Slideshow__Slide,
  .Slideshow--fullScreen .Slideshow__Carousel {
    height: 100svh !important;
    max-height: 100svh !important;
    min-height: 100svh !important;
  }
}

/* Also hide any leftover round button borders */
.Slideshow__Carousel--withScrollButton {
  padding-bottom: 0 !important;
}

/* âââ 20. FLICKITY PREV/NEXT ARROWS (if enabled) âââââââââââ */
.flickity-prev-next-button {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  width: 20px !important;
  height: 20px !important;
  padding: 0 !important;
}
.flickity-prev-next-button svg,
.flickity-prev-next-button .flickity-button-icon {
  fill: var(--w-black) !important;
  width: 12px !important;
  height: 12px !important;
}

/* Reposition to align with NEW ARRIVALS text baseline */
.custom-shopify-section--bordered .ProductList--carousel .flickity-prev-next-button {
  top: -52px !important;
}
.custom-shopify-section--bordered .ProductList--carousel .flickity-prev-next-button.previous {
  right: 36px !important;
}
.custom-shopify-section--bordered .ProductList--carousel .flickity-prev-next-button.next {
  right: 8px !important;
}

/* âââ END ADDITIONS âââââââââââââââââââââââââââââââââââââââââ */

/* âââ Remove legacy WillboMenuOverlay from DOM âââââââââââââ */
.WillboMenuOverlay {
  display: none !important;
  pointer-events: none !important;
}

/* =============================================================
   WILLBO â HOMEPAGE SPACING NORMALIZATION
   Goal: consistent 60px top/bottom rhythm across all sections.
   
   Root cause from audit:
   - Prestige .Section default = margin: 85px top/bottom (too large)
   - .text_with_image (FIRST LIGHT) adds extra 50px padding on top
   - Second slideshow (collage) has zero margin â slams into section above
   - SectionHeader Container has margin-bottom: 40px (ok, keep)
   ============================================================= */

/* âââ SECTION BASE RHYTHM âââââââââââââââââââââââââââââââââââ */
/* Normalize all Prestige .Section margins to 60px.
   This targets the SECTION element inside each .shopify-section wrapper. */
.shopify-section > .Section,
.shopify-section > section.Section {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

/* Spacing-variant classes Prestige uses â normalize all of them */
.Section--spacingNormal,
.Section--spacingLarge,
.Section--spacingExtraLarge {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Kill Prestige bordered section padding that stacks on top of margins */
.shopify-section--bordered > .Section--spacingNormal {
  padding: 0 !important;
}

/* âââ FIRST LIGHT â WillboEditorial full-bleed âââââââââââââââââââ */
/* Kill all section padding/margin */
#shopify-section-text_with_image_UhhwbR > .Section,
.shopify-section--bordered > .Section--spacingNormal.rich-text-with-image {
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  overflow: visible !important;
  position: relative !important;
  z-index: 0 !important;
}
#shopify-section-text_with_image_UhhwbR {
  position: relative !important;
  z-index: 0 !important;
  display: block !important;
  overflow: visible !important;
}

/* Full-bleed background image container â fixed 680px */
.WillboEditorial {
  position: relative !important;
  width: 100% !important;
  height: 680px !important;
  display: block !important;
  clear: both !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  display: block !important;
}

/* Bottom gradient â subtle, only bottom 45% */
.WillboEditorial__Overlay {
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(to top, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.08) 45%, transparent 100%) !important;
  z-index: 1 !important;
}

/* Content row â bottom-left heading, bottom-right text+cta */
.WillboEditorial__Content {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  padding: 48px 48px 52px !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 40px !important;
  z-index: 2 !important;
}

/* Heading â large, bottom-left */
.WillboEditorial__Heading {
  font-family: var(--w-sans) !important;
  font-size: 42px !important;
  font-weight: 300 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  margin: 0 !important;
  line-height: 1.1 !important;
  flex-shrink: 0 !important;
}

/* Right column â body + CTA */
.WillboEditorial__Right {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 20px !important;
  max-width: 480px !important;
}

.WillboEditorial__Body,
.WillboEditorial__Body p {
  font-family: var(--w-sans) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  line-height: 1.7 !important;
  color: rgba(255,255,255,0.88) !important;
  margin: 0 !important;
}

/* CTA link */
.WillboEditorial__Cta {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(255,255,255,0.6) !important;
  padding: 0 0 3px !important;
  display: inline-block !important;
  transition: border-color 0.2s ease !important;
}

.WillboEditorial__Cta:hover {
  border-bottom-color: #fff !important;
}


/* âââ FIX: SECOND SLIDESHOW (collage banner) ââââââââââââââââ */
/* The full-bleed collage slideshow between FIRST LIGHT and EXPLORE
   has zero margins â it slams directly into the section above.
   Add 60px breathing room. */
#shopify-section-1647342459f7f5938e {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

/* âââ FULL-BLEED SECTIONS: no side margins ââââââââââââââââââ */
/* The hero slideshow and full-bleed image sections should stay flush */
#shopify-section-slideshow,
.shopify-section--slideshow {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Two-column image sections are also full-bleed â no vertical margin
   except what their inner .Section wrapper provides */
#shopify-section-2_column_images_9pAHBT > .Section,
.shopify-section > .Section--spacingNormal > .two-column-images-container {
  overflow: visible !important;
  height: auto !important;
}
#shopify-section-2_column_images_9pAHBT {
  overflow: visible !important;
  height: auto !important;
  display: block !important;
}
@media (max-width: 768px) {
  #shopify-section-2_column_images_9pAHBT {
    padding-top: 0 !important;
    padding-bottom: 40px !important;
  }
}

/* âââ SECTION HEADER â CONTENT GAP âââââââââââââââââââââââââ */
/* Prestige SectionHeader has no bottom padding â the gap to the
   product grid/content below comes from the Container margin-bottom:40px.
   Normalize this to 28px for a tighter, more editorial feel. */
.SectionHeader + .Container,
.SectionHeader ~ .Container {
  margin-top: 28px !important;
}

/* âââ PRODUCT CAROUSEL (NEW ARRIVALS) ââââââââââââââââââââââ */
/* The carousel inner section has no margin of its own â it relies on
   the outer .Section margin. Keep the 60px from above.
   But the carousel prev/next buttons add visual height â ensure
   consistent bottom margin. */
#shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 > .Section {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

/* âââ EXPLORE SECTION âââââââââââââââââââââââââââââââââââââââ */
#shopify-section-16170468159d5a789a > .Section {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

/* âââ FOOTER ââââââââââââââââââââââââââââââââââââââââââââââââ */
/* Keep footer flush â no extra top margin beyond its own padding */
#shopify-section-footer {
  margin-top: 0 !important;
}

/* âââ LEFT/RIGHT PADDING CONSISTENCY âââââââââââââââââââââââ */
/* All section headings and content containers get the same 48px
   side padding on desktop (already set in :root as --w-pad: 48px).
   Enforce it explicitly on SectionHeader to match product grids. */
.SectionHeader {
  padding-left: 48px !important;
  padding-right: 48px !important;
}
.SectionHeader__Container {
  padding-left: 0 !important;  /* SectionHeader already has padding */
  padding-right: 0 !important;
}

/* Product list / carousel content â match the same 48px */
.Section > .Container {
  padding-left: 48px !important;
  padding-right: 48px !important;
}

/* Inset two-column images â 48px side padding, small gap between, like Noah */
.Section--spacingNormal > .two-column-images-container,
.Section > .two-column-images-container {
  padding-left: 48px !important;
  padding-right: 48px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  gap: 8px !important;
  display: flex !important;
}

@media (max-width: 768px) {
  .Section--spacingNormal > .two-column-images-container,
  .Section > .two-column-images-container,
  div.two-column-images-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 0 !important;
    flex-direction: column !important;
    flex-wrap: wrap !important;
    height: auto !important;
    overflow: visible !important;
  }
  /* Each image link: 16px side inset + 8px bottom gap */
  .two-column-images-container .image-item-link {
    display: block !important;
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
    margin: 0 16px 8px 16px !important;
  }
  .two-column-images-container .image-item-link:last-child {
    margin-bottom: 0 !important;
  }
  /* AspectRatio wrapper fills the inset link width */
  .two-column-images-container .image-item.AspectRatio {
    width: 100% !important;
    max-width: 100% !important;
    padding-bottom: 90% !important;
    position: relative !important;
    overflow: hidden !important;
  }
  .two-column-images-container .image-item.AspectRatio::before {
    display: none !important;
  }
  .two-column-images-container .image-item img,
  .two-column-images-container .image-item .two-column__Image {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
}

/* âââ MOBILE ââââââââââââââââââââââââââââââââââââââââââââââââ */
@media (max-width: 768px) {
  .shopify-section > .Section,
  .shopify-section > section.Section,
  .Section--spacingNormal,
  .Section--spacingLarge {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
  }
  .SectionHeader {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .Section > .Container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  #shopify-section-1647342459f7f5938e {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
  }
}

/* âââ END SPACING NORMALIZATION âââââââââââââââââââââââââââââ */

/* âââ PER-SECTION SPACING (single source of truth) âââââââ */

/* New Arrivals: wrapper padding controls gap after hero */
#shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 {
  padding-top: 60px !important;
  padding-bottom: 0 !important;
}
@media (max-width: 768px) {
  #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 {
    padding-top: 32px !important;
    padding-bottom: 0 !important;
  }
}
#shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 > section.Section,
#shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 > .Section {
  padding: 0 !important;
  margin: 0 !important;
}

/* Explore: tight gap above (First Light margin-bottom handles most of it), 60px below */
#shopify-section-16170468159d5a789a {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

@media (max-width: 768px) {
  #shopify-section-16170468159d5a789a {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
}
#shopify-section-16170468159d5a789a > section.Section,
#shopify-section-16170468159d5a789a > .Section {
  padding: 0 !important;
  margin: 0 !important;
}

/* Footer */
#shopify-section-footer {
  margin-top: 0 !important;
}
.Footer {
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

/* âââ END PER-SECTION SPACING âââââââââââââââââââââââââââââ */


/* âââ 17. HERO SLIDESHOW â Editorial CTA âââââââââââââââââââ */
/*
   Bottom-left overlay: eyebrow + large serif headline + underlined CTA link.
   Matches Noah / Moncler editorial style.
   Content set in Theme Editor â Slideshow â Slide:
     - Subheading = eyebrow (e.g. "May Sport Launch")
     - Heading = hero headline (e.g. "Clay and Dune")
     - Button 1 text = CTA (e.g. "Shop all new sport")
     - Content position = Bottom left
*/

/* âââ SLIDESHOW HERO: fixed height container âââââââââââââââââââââââââââââ
   Override the theme's "Show full-screen images" 100vh behaviour.
   Desktop: 680px  |  Mobile: 520px
   Images fill the container via object-fit: cover.
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.Slideshow__Slide {
  position: relative !important;
  height: calc(100svh - 40px) !important;
  /* mobile override below */
  max-height: calc(100svh - 40px) !important;
  min-height: unset !important;
}

/* Inner carousel wrapper â also cap height so nothing bleeds */
.Slideshow__Carousel,
.Slideshow--fullScreen .Slideshow__Slide,
.Slideshow--fullScreen .Slideshow__Carousel {
  height: calc(100svh - 40px) !important;
  max-height: calc(100svh - 40px) !important;
  min-height: unset !important;
}

/* Images inside slides fill the fixed container */
.Slideshow__Slide img,
.Slideshow__Slide .Image__Wrapper,
.Slideshow__Slide .Image__Wrapper img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Image__Wrapper â some Prestige versions use padding-top trick; override */
.Slideshow__Slide .Image__Wrapper {
  padding-top: 0 !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
}

@media (max-width: 768px) {
  .Slideshow__Slide,
  .Slideshow__Carousel,
  .Slideshow--fullScreen .Slideshow__Slide,
  .Slideshow--fullScreen .Slideshow__Carousel {
    height: calc(100svh - 28px) !important;
    max-height: calc(100svh - 28px) !important;
    min-height: calc(100svh - 28px) !important;
  }
}

/* Content overlay â bottom-left, aligned to 48px site padding */
.Slideshow__Content {
  position: absolute !important;
  z-index: 2 !important;
  padding: 0 0 44px 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  max-width: 55% !important;
  text-align: left !important;
  color: #ffffff !important;
}
.Slideshow__Content--bottomLeft,
.Slideshow__Content--middleLeft {
  left: 0 !important;
  right: auto !important;
}

/* Kill any Container / inner wrapper offset the theme adds */
.Slideshow__Content > *,
.Slideshow__Content .SectionHeader {
  margin-left: 0 !important;
  padding-left: 0 !important;
}

/* Align text to match NEW ARRIVALS / page container left edge */
.Slideshow__Content .SectionHeader,
.Slideshow__Content .ButtonGroup {
  padding-left: 57px !important;
}
.Slideshow__Content--bottomCenter,
.Slideshow__Content--middleCenter {
  left: 50% !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
  max-width: 70% !important;
}

/* Force white on all slide text â overrides Prestige's inline color setting */
.Slideshow__Content,
.Slideshow__Content .SectionHeader,
.Slideshow__Content .SectionHeader * {
  color: #ffffff !important;
}

/* Eyebrow â DM Sans 11px uppercase, spaced */
.Slideshow__Content .SectionHeader .u-h4 {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.2 !important;
}

/* Hero headline â EB Garamond, editorial JMM energy, mixed case */
.Slideshow__Content .SectionHeader .u-h1 {
  font-family: var(--w-sans) !important;
  font-size: 34px !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.08 !important;
  margin: 0 0 14px 0 !important;
  text-transform: none !important;
}

/* CTA â plain underlined text link, white */
.Slideshow__Content .SectionHeader__ButtonWrapper {
  margin-top: 0 !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}
.Slideshow__Content .ButtonGroup {
  margin: 0 !important;
  padding: 0 !important;
}
.Slideshow__Content .ButtonGroup__Item.Button,
.Slideshow__Content .ButtonGroup > a {
  all: unset !important;
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
  text-decoration-thickness: 1px !important;
  cursor: pointer !important;
  transition: opacity 0.2s ease !important;
  display: inline !important;
}
.Slideshow__Content .ButtonGroup__Item.Button:hover,
.Slideshow__Content .ButtonGroup > a:hover {
  opacity: 0.65 !important;
}

/* Kill Prestige's button ::before pseudo-element + wide underline */
.Slideshow__Content .ButtonGroup__Item.Button::before,
.Slideshow__Content .ButtonGroup__Item.Button::after {
  display: none !important;
}

/* Mobile adjustments */
@media screen and (max-width: 640px) {
  .Slideshow__Content {
    top: auto !important;
    bottom: 0 !important;
    padding: 0 0 28px 0 !important;
    max-width: 100% !important;
  }
  .Slideshow__Content .SectionHeader,
  .Slideshow__Content .ButtonGroup {
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-left: 0 !important;
  }
  .Slideshow__Content .ButtonGroup,
  .Slideshow__Content .ButtonGroup__Item,
  .Slideshow__Content .SectionHeader__ButtonWrapper {
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-align: left !important;
  }
  .Slideshow__Content .SectionHeader .u-h4 {
    font-size: 9px !important;
    letter-spacing: 0.16em !important;
    margin-bottom: 5px !important;
  }
  .Slideshow__Content .SectionHeader .u-h1 {
    font-size: 22px !important;
    line-height: 1.1 !important;
    margin-bottom: 10px !important;
  }
  .Slideshow__Content .ButtonGroup__Item.Button,
  .Slideshow__Content .ButtonGroup > a {
    font-size: 9px !important;
    letter-spacing: 0.14em !important;
  }
}

/* âââ END HERO SLIDESHOW âââââââââââââââââââââââââââââââââââ */


/* âââ 18. COLLECTION PAGE HEADER ââââââââââââââââââââââââââââ
   Moncler-style: no banner image, clean left-aligned title.
   Willbo custom header element â always rendered, no conditions.
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* Willbo collection title header */
.WillboCollectionHeader {
  background: var(--w-white);
  padding: 24px 0 16px 0;
}

.WillboCollectionHeader__Inner {
  padding-left: var(--w-pad);
  padding-right: var(--w-pad);
}

.WillboCollectionHeader__Title {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

/* Mobile */
@media screen and (max-width: 640px) {
  .WillboCollectionHeader {
    padding: 16px 0 12px 0;
  }
  .WillboCollectionHeader__Inner {
    padding-left: 24px;
    padding-right: 24px;
  }
}

/* Willbo collection intro â premium shopping header */
.WillboCollectionHero {
  position: relative !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border-bottom: 1px solid #e6e2da !important;
  padding: clamp(36px, 4.8vw, 64px) 0 20px !important;
}

.WillboCollectionHero--withImage {
  min-height: clamp(320px, 42vw, 520px) !important;
  display: flex !important;
  align-items: flex-end !important;
  color: #ffffff !important;
}

.WillboCollectionHero__Media {
  position: absolute !important;
  inset: 0 !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: 0 !important;
}

.WillboCollectionHero__Media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.28)) !important;
}

.WillboCollectionHero__Inner {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  padding: 0 clamp(24px, 4.2vw, 64px) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  column-gap: 40px !important;
  row-gap: 18px !important;
  align-items: end !important;
}

.WillboCollectionHero__Copy {
  max-width: 680px !important;
}

.WillboCollectionHero__Kicker {
  margin: 0 0 12px !important;
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #817d75 !important;
}

.WillboCollectionHero--withImage .WillboCollectionHero__Kicker,
.WillboCollectionHero--withImage .WillboCollectionHero__Meta,
.WillboCollectionHero--withImage .WillboCollectionHero__Tag {
  color: rgba(255,255,255,0.76) !important;
}

.WillboCollectionHero__Title {
  margin: 0 !important;
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: clamp(22px, 2vw, 32px) !important;
  line-height: 1.05 !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
}

.WillboCollectionHero--withImage .WillboCollectionHero__Title {
  color: #ffffff !important;
}

.WillboCollectionHero__Description {
  margin: 16px 0 0 !important;
  max-width: 560px !important;
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
  font-weight: 300 !important;
  color: #5f5b54 !important;
}

.WillboCollectionHero--withImage .WillboCollectionHero__Description {
  color: rgba(255,255,255,0.82) !important;
}

.WillboCollectionHero__Meta {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 5px !important;
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 9px !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: #817d75 !important;
  white-space: nowrap !important;
}

.WillboCollectionHero__Tags {
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  padding-top: 6px !important;
}

.WillboCollectionHero__Tags::-webkit-scrollbar {
  display: none !important;
}

.WillboCollectionHero__Tag {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 0 15px !important;
  border: 1px solid #ded9cf !important;
  border-radius: 4px !important;
  background: transparent !important;
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 8px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: #6f6a62 !important;
  text-decoration: none !important;
  transition: border-color 0.18s ease, color 0.18s ease, background 0.18s ease !important;
}

.WillboCollectionHero__Tag:hover,
.WillboCollectionHero__Tag.is-active {
  border-color: #111111 !important;
  color: #111111 !important;
  background: #ffffff !important;
}

.WillboCollectionHero--withImage .WillboCollectionHero__Tag {
  border-color: rgba(255,255,255,0.38) !important;
}

.WillboCollectionHero--withImage .WillboCollectionHero__Tag:hover,
.WillboCollectionHero--withImage .WillboCollectionHero__Tag.is-active {
  border-color: #ffffff !important;
  color: #ffffff !important;
}

.template-collection .CollectionToolbar {
  position: relative !important;
  top: 0 !important;
  bottom: auto !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 54px !important;
  padding: 0 clamp(24px, 4.2vw, 64px) !important;
  border-top: none !important;
  border-bottom: 1px solid #e6e2da !important;
  background: #ffffff !important;
  width: 100% !important;
  max-width: 100vw !important;
  box-sizing: border-box !important;
}

.template-collection .CollectionToolbar__Group {
  margin-left: auto !important;
  display: flex !important;
  align-items: stretch !important;
  order: 2 !important;
}

.template-collection .CollectionToolbar__Item {
  height: 54px !important;
  padding: 0 20px !important;
  border-left: 1px solid #e6e2da !important;
  border-right: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 8px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: #6f6a62 !important;
  background: transparent !important;
  transition: color 0.18s ease, background 0.18s ease !important;
}

.template-collection .CollectionToolbar__Item:hover {
  color: #111111 !important;
  background: #fbfaf8 !important;
}

.template-collection .CollectionToolbar__Item--layout {
  order: 1 !important;
  margin-right: auto !important;
  border-left: none !important;
  padding-left: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
}

.template-collection .CollectionToolbar__LayoutSwitch {
  align-items: center !important;
  gap: 14px !important;
}

.template-collection .CollectionToolbar__LayoutSwitch.hidden-tablet-and-up {
  display: none !important;
}

.template-collection .CollectionToolbar__LayoutSwitch.hidden-phone {
  display: flex !important;
}

.template-collection .CollectionToolbar__LayoutType {
  width: 18px !important;
  height: 18px !important;
  padding: 0 !important;
  opacity: 0.35 !important;
  transition: opacity 0.18s ease !important;
}

.template-collection .CollectionToolbar__LayoutType svg {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
}

.template-collection .CollectionToolbar__LayoutType.is-active,
.template-collection .CollectionToolbar__LayoutType:hover {
  opacity: 1 !important;
}

@media screen and (max-width: 640px) {
  .WillboCollectionHero {
    padding: 28px 0 8px !important;
    border-bottom: none !important;
  }

  .WillboCollectionHero__Inner {
    padding: 0 16px !important;
    grid-template-columns: 1fr !important;
    row-gap: 12px !important;
    text-align: left !important;
  }

  .WillboCollectionHero__Kicker {
    margin-bottom: 10px !important;
    font-size: 8px !important;
  }

  .WillboCollectionHero__Title {
    font-size: 19px !important;
    letter-spacing: 0.13em !important;
  }

  .WillboCollectionHero__Description {
    font-size: 12px !important;
    line-height: 1.65 !important;
  }

  .WillboCollectionHero__Meta {
    align-items: flex-start !important;
    flex-direction: row !important;
    gap: 12px !important;
    font-size: 8px !important;
    white-space: normal !important;
  }

  .WillboCollectionHero__Tags {
    margin-left: -16px !important;
    margin-right: -16px !important;
    padding: 2px 16px 0 !important;
  }

  .WillboCollectionHero__Tag {
    min-height: 28px !important;
    padding: 0 14px !important;
    font-size: 8px !important;
    border-radius: 4px !important;
  }

  .template-collection .CollectionToolbar {
    min-height: 0 !important;
    padding: 0 !important;
    flex-wrap: wrap !important;
    overflow: hidden !important;
    box-shadow: 0 1px 0 0 #dbdbdb !important;
  }

  .template-collection .CollectionToolbar__Group {
    display: flex !important;
    width: 100% !important;
    margin: 0 !important;
    order: 1 !important;
    flex: 0 0 100% !important;
    align-items: stretch !important;
  }

  .template-collection .CollectionToolbar__Item {
    flex: 1 1 50% !important;
    height: 52px !important;
    padding: 0 !important;
    border-left: none !important;
    border-right: 1px solid #e6e2da !important;
    font-size: 9px !important;
    letter-spacing: 0.17em !important;
    text-align: center !important;
  }

  .template-collection .CollectionToolbar__Item:last-child {
    border-right: none !important;
  }

  .template-collection .CollectionToolbar__Item--layout {
    order: 2 !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    height: 32px !important;
    padding: 0 16px !important;
    margin: 0 !important;
    border-top: none !important;
    border-right: none !important;
    border-left: none !important;
    justify-content: flex-start !important;
    display: flex !important;
  }

  .template-collection .CollectionToolbar__LayoutSwitch.hidden-tablet-and-up {
    display: flex !important;
  }

  .template-collection .CollectionToolbar__LayoutSwitch.hidden-phone {
    display: none !important;
  }

  .template-collection .CollectionToolbar__LayoutSwitch {
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  .template-collection .CollectionToolbar__LayoutType {
    width: 16px !important;
    height: 16px !important;
  }

  .template-collection .CollectionToolbar__LayoutType svg {
    width: 16px !important;
    height: 16px !important;
  }

  .template-collection .ProductList[data-mobile-count="1"] > .Grid__Cell {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  .template-collection .ProductList[data-mobile-count="2"] > .Grid__Cell {
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
  }
}

/* Collection pages WITH banner image â title matches hero EB Garamond style */
.PageHeader--withBackground .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: 34px !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.08 !important;
  text-transform: none !important;
  color: #ffffff !important;
  margin: 0 !important;
}

@media screen and (max-width: 640px) {
  .PageHeader--withBackground .SectionHeader__Heading {
    font-size: 28px !important;
  }
}

/* âââ END COLLECTION PAGE HEADER ââââââââââââââââââââââââââ */


/* âââ 19. HOMEPAGE SECTION REFINEMENTS âââââââââââââââ
   Premium spacing, typography for homepage sections.
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* --- Brand Moment: "Made in America" text block --- */
.Section--textonly-custom {
  padding: 64px 0 !important;
}
.Section--textonly-custom .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  margin-bottom: 8px !important;
}
.Section--textonly-custom .Rte p {
  font-family: var(--w-sans) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  font-style: italic !important;
  letter-spacing: 0.02em !important;
  color: var(--w-mid) !important;
  margin: 0 !important;
}

/* --- Shop The Look: section title --- */
.Section--shopTheLook .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
}

/* --- 2-Column Category Images: positioning --- */
/* Container is absolute bottom-left. Normalize both padding sources
   so left distance == bottom distance (32px each). */
.two-column-images-container .ImageBlock__Content {
  bottom: 32px !important;
  top: auto !important;
  transform: none !important;
  padding-left: 0 !important;  /* kill the 50px default */
}
.two-column-images-container .ImageBlock__Content .SectionHeader {
  padding-left: 32px !important;  /* single source of truth for left offset */
}

@media (max-width: 768px) {
  .two-column-images-container .ImageBlock__Content,
  .two-column-images-container .ImageBlock__Content--middleLeft,
  .two-column-images-container .ImageBlock__Content--bottomLeft {
    bottom: 28px !important;
    top: auto !important;
    transform: none !important;
  }
}

/* --- 2-Column Category Images: label treatment --- */
/* Target the real DOM classes: image-item__Heading + image-item-link */
.two-column-images-container .image-item__Heading,
.two-column-images-container .Heading.u-h6 {
  font-family: var(--w-sans) !important;
  font-size: clamp(22px, 2.4vw, 34px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  line-height: 1.1 !important;
  color: var(--w-white) !important;
}

/* "SHOP âº" CTA link */
.two-column-images-container .image-item-link,
.two-column__Content .Button,
.two-column__Content .Button--primary {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--w-white) !important;
  text-decoration: none !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

/* --- Text with Image (First Light editorial): refine --- */
.rich-text-with-image .SectionHeader__Heading,
.Section--textWithImage .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  line-height: 1.15 !important;
  color: var(--w-black) !important;
}
.rich-text-with-image .Rte p,
.Section--textWithImage .Rte p {
  font-family: var(--w-sans) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  line-height: 1.7 !important;
  color: var(--w-black) !important;
}
.rich-text-with-image .Rte p em,
.Section--textWithImage .Rte p em {
  font-family: var(--w-sans) !important;
  font-style: italic !important;
}
.rich-text-with-image .Button,
.rich-text-with-image .Button--primary,
.Section--textWithImage .ButtonGroup .Button {
  all: unset !important;
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
  text-decoration-thickness: 1px !important;
  cursor: pointer !important;
  margin-top: 20px !important;
  display: inline-block !important;
}
.rich-text-with-image .Button:hover,
.rich-text-with-image .Button--primary:hover,
.Section--textWithImage .ButtonGroup .Button:hover {
  opacity: 0.6 !important;
}
.rich-text-with-image .Button::before,
.rich-text-with-image .Button::after,
.rich-text-with-image .Button--primary::before,
.rich-text-with-image .Button--primary::after,
.Section--textWithImage .ButtonGroup .Button::before,
.Section--textWithImage .ButtonGroup .Button::after {
  display: none !important;
}

/* --- Blog Posts / Journal: editorial grid --- */
.Section--blogPosts .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  color: var(--w-black) !important;
}
.Section--blogPosts .ArticleItem__Title {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
}
.Section--blogPosts .ArticleItem__Excerpt {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  line-height: 1.6 !important;
  color: var(--w-mid) !important;
}
.Section--blogPosts .ArticleItem__Category {
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--w-mid) !important;
}
.Section--blogPosts .SectionFooter .Button {
  all: unset !important;
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
  text-decoration-thickness: 1px !important;
  cursor: pointer !important;
}
.Section--blogPosts .SectionFooter .Button:hover {
  opacity: 0.6 !important;
}
.Section--blogPosts .SectionFooter .Button::before,
.Section--blogPosts .SectionFooter .Button::after {
  display: none !important;
}

/* --- Explore / Menu Explorer: title treatment --- */
.shopify-section--menu-explorer .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
}
.shopify-section--menu-explorer .Linklist--item,
.shopify-section--menu-explorer .MenuExplorerItem__Title {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* Keep bottom homepage Explore labels beneath the open header mega menu. */
.template-index .shopify-section--menu-explorer {
  position: relative !important;
  z-index: 0 !important;
  isolation: isolate !important;
}

.template-index .shopify-section--menu-explorer .Linklist--item,
.template-index .shopify-section--menu-explorer .LinkItem__Info,
.template-index .shopify-section--menu-explorer .LinkItem__Title,
.template-index .shopify-section--menu-explorer .LinkItem__Title.Heading,
.template-index .shopify-section--menu-explorer .MenuExplorerItem__Title {
  z-index: 0 !important;
}

/* âââ END HOMEPAGE SECTION REFINEMENTS âââââââââââââââââ */

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   WILLBO MOBILE NAV v4 â Full-screen, desktop-parity
   JS: Submenubtn class â subnav-mobile-collapse slide
       data-group-toggle â inline accordion for children
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* âââ Full-screen drawer ââââââââââââââââââââââââââââââââââââââ */
#sidebar-menu.WillboMobileNav,
#shopify-section-sidebar-menu .WillboMobileNav.Drawer {
  width: 100vw !important;
  max-width: 100vw !important;
  height: 100% !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  top: 0 !important;
  left: 0 !important;
  background: var(--w-white) !important;
  border-right: none !important;
  transform: translateX(-100%) !important;
  transition: transform 0.42s cubic-bezier(0.4, 0, 0.2, 1) !important;
  will-change: transform !important;
}
#sidebar-menu.WillboMobileNav[aria-hidden="false"],
#shopify-section-sidebar-menu .WillboMobileNav.Drawer[aria-hidden="false"] {
  transform: translateX(0) !important;
}
.PageOverlay {
  transition: opacity 0.42s cubic-bezier(0.4, 0, 0.2, 1) !important;
  will-change: opacity !important;
}
/* Hide Prestige's header X */
.Header__Wrapper .sidebar-menu-open.Drawer__Close {
  display: none !important;
}
.WillboMobileNav .Drawer__Content {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  overflow: hidden !important;
  position: relative !important;
}

/* âââ Top bar âââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboMobileNav__TopBar {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  height: 64px !important;
  flex-shrink: 0 !important;
  padding: 0 24px !important;
  border-bottom: 1px solid var(--w-border) !important;
  background: var(--w-white) !important;
}
.WillboMobileNav__TopLogo {
  display: flex !important;
  align-items: center !important;
  text-decoration: none !important;
}
.WillboMobileNav__TopLogo img {
  height: 26px !important;
  width: auto !important;
  display: block !important;
}
.WillboMobileNav__TopLogoText {
  font-family: var(--w-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  color: var(--w-black) !important;
}
.WillboMobileNav__CloseBtn {
  position: absolute !important;
  right: 20px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: none !important;
  border: none !important;
  padding: 10px !important;
  cursor: pointer !important;
  color: var(--w-black) !important;
  display: flex !important;
  align-items: center !important;
  transition: opacity 0.2s ease !important;
}
.WillboMobileNav__CloseBtn:hover { opacity: 0.4 !important; }

/* âââ Scrollable main âââââââââââââââââââââââââââââââââââââââââ */
.WillboMobileNav__Main {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  min-height: 0 !important;
  overflow-y: hidden !important;
  
  position: relative !important;
  padding: 0 0 150px !important;
}

/* âââ Primary nav âââââââââââââââââââââââââââââââââââââââââââââ */
.WillboMobileNav__PrimaryNav {
  padding: 16px 0 0 !important;
  flex-shrink: 0 !important;
}
.WillboMobileNav__Item {
  border-bottom: none !important;
  opacity: 0;
  transform: none !important;
  transition: opacity 0.28s ease;
}
#sidebar-menu.WillboMobileNav[aria-hidden="false"] .WillboMobileNav__Item {
  opacity: 1;
  transform: none !important;
}
#sidebar-menu.WillboMobileNav[aria-hidden="false"] .WillboMobileNav__Item:nth-child(1) { transition-delay: 0.14s; }
#sidebar-menu.WillboMobileNav[aria-hidden="false"] .WillboMobileNav__Item:nth-child(2) { transition-delay: 0.20s; }
#sidebar-menu.WillboMobileNav[aria-hidden="false"] .WillboMobileNav__Item:nth-child(3) { transition-delay: 0.26s; }
#sidebar-menu.WillboMobileNav[aria-hidden="false"] .WillboMobileNav__Item:nth-child(n+4) { transition-delay: 0.30s; }

/* âââ Primary trigger âââââââââââââââââââââââââââââââââââââââââ */
.WillboMobileNav__Trigger {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 16px 24px !important;
  background: none !important;
  border: none !important;
  border-bottom: none !important;
  cursor: pointer !important;
  text-align: left !important;
  text-decoration: none !important;
  color: var(--w-black) !important;
}
.WillboMobileNav__TriggerLabel {
  font-family: var(--w-sans) !important;
  font-size: 18px !important;
  font-weight: 300 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  line-height: 1 !important;
}
.WillboMobileNav__Arrow {
  flex-shrink: 0 !important;
  color: var(--w-mid) !important;
  width: 10px !important;
  height: 10px !important;
}

/* âââ Sub-panel âââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboMobileNav .subnav-wrapper {
  background: #ffffff !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: -webkit-fill-available !important;
  height: 100dvh !important;
  z-index: 1000 !important;
  transition: transform 0.38s cubic-bezier(0.4, 0, 0.2, 1),
              visibility linear 0.38s !important;
  will-change: transform !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}
.WillboMobileNav .subnav-wrapper .Collapsible__Inner {
  background: var(--w-white) !important;
  padding: 0 !important;
  text-align: left !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior: contain !important;
  display: flex !important;
  flex-direction: column !important;
}

/* âââ Sub-panel top bar (back + title) ââââââââââââââââââââââââ */
.WillboMobileNav .main-item-back {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  width: 100% !important;
  padding: 0 24px !important;
  height: 52px !important;
  background: none !important;
  border: none !important;
  border-bottom: none !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
}
.WillboMobileNav .main-item-back::before { display: none !important; }
/* Back arrow SVG â pinned left, label centered */
.WillboMobileNav .main-item-back > svg:first-child {
  position: absolute !important;
  left: 24px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
.WillboMobileNav__BackLabel {
  font-family: var(--w-sans) !important;
  font-size: 18px !important;
  font-weight: 300 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
}

/* âââ EXPLORE tile grid âââââââââââââââââââââââââââââââââââââââ */
.WillboMobileNav__ExpGrid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 2px !important;
  padding: 16px 16px 40px !important;
}
.WillboMobileNav__ExpTile {
  display: block !important;
  text-decoration: none !important;
  color: var(--w-black) !important;
}
.WillboMobileNav__ExpTileImg {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  background: var(--w-sand) !important;
  position: relative !important;
}
.WillboMobileNav__ExpTileImg img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  transition: transform 0.45s ease !important;
}
.WillboMobileNav__ExpTile:hover .WillboMobileNav__ExpTileImg img {
  transform: scale(1.03) !important;
}
.WillboMobileNav__ExpTileLabel {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  padding: 8px 0 12px !important;
  text-align: left !important;
}

/* âââ SHOP editorial image ââââââââââââââââââââââââââââââââââââ */
.WillboMobileNav__FeatureCard {
  display: block !important;
  
  
  
  margin: 8px 16px 16px !important;
  text-decoration: none !important;
  color: var(--w-black) !important;
}
.WillboMobileNav__FeatureImg {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  
  overflow: hidden !important;
  background: var(--w-sand) !important;
  position: relative !important;
}
.WillboMobileNav__FeatureImg img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  transition: transform 0.5s ease !important;
}
.WillboMobileNav__FeatureCard:hover .WillboMobileNav__FeatureImg img {
  transform: scale(1.02) !important;
}
.WillboMobileNav__FeatureCard--explore {
  margin-top: 34px !important;
}
.WillboMobileNav__FeatureMeta {
  display: block !important;
}
.WillboMobileNav__FeatureKicker {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
  color: rgba(17, 17, 17, 0.48) !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
}
.WillboMobileNav__FeatureCaption {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

/* âââ Sub-links âââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboMobileNav__SubLinks {
  padding: 8px 0 24px !important;
  display: flex !important;
  flex-direction: column !important;
}
.WillboMobileNav__SubLink {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  text-decoration: none !important;
  padding: 14px 24px !important;
  border-bottom: none !important;
  transition: opacity 0.15s !important;
}
.WillboMobileNav__SubLink:hover { opacity: 0.45 !important; }

/* Mobile menu: Moncler-inspired editorial index for AUGUST THEME */
.WillboMobileNav__QuickAccess {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  padding: 18px 24px 0 !important;
  margin-top: 4px !important;
  flex-shrink: 0 !important;
}

.WillboMobileNav__QuickLink {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 34px !important;
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.14em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: var(--w-mid) !important;
  transition: color 0.18s ease, opacity 0.18s ease !important;
}

.WillboMobileNav__QuickLink::after {
  content: "" !important;
  display: block !important;
  width: 5px !important;
  height: 5px !important;
  border-top: 1px solid currentColor !important;
  border-right: 1px solid currentColor !important;
  transform: rotate(45deg) !important;
  opacity: 0.45 !important;
}

.WillboMobileNav__QuickLink:hover {
  color: var(--w-black) !important;
  opacity: 0.72 !important;
}

.WillboMobileNav__MenuFeature {
  display: block !important;
  margin: 46px 24px 0 !important;
  padding-top: 0 !important;
  text-decoration: none !important;
  color: var(--w-black) !important;
  flex-shrink: 0 !important;
}

.WillboMobileNav__MenuFeatureImage {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  background: #f5f2ec !important;
}

.WillboMobileNav__MenuFeatureImage img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
}

.WillboMobileNav__MenuFeatureText {
  display: grid !important;
  grid-template-columns: minmax(72px, 0.34fr) 1fr !important;
  gap: 14px !important;
  align-items: start !important;
  padding-top: 11px !important;
}

.WillboMobileNav__MenuFeatureKicker,
.WillboMobileNav__MenuFeatureHeading {
  display: block !important;
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
}

.WillboMobileNav__MenuFeatureKicker {
  font-size: 9px !important;
  font-weight: 400 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.35 !important;
  color: var(--w-mid) !important;
}

.WillboMobileNav__MenuFeatureHeading {
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.11em !important;
  line-height: 1.45 !important;
}

/* âââ Shop column accordion âââââââââââââââââââââââââââââââââââ */
.WillboMobileNav__ShopCols {
  padding: 0 0 4px !important;
}
.WillboMobileNav__ShopCol {
  border-bottom: none !important;
}
.WillboMobileNav__ColTrigger {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 11px 24px !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  text-align: left !important;
}
.WillboMobileNav__ColLabel {
  font-family: var(--w-sans) !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
}
.WillboMobileNav__ColChevron {
  flex-shrink: 0 !important;
  color: var(--w-mid) !important;
  transition: transform 0.2s ease !important;
}
.WillboMobileNav__ShopCol.is-open .WillboMobileNav__ColChevron {
  transform: rotate(180deg) !important;
}
.WillboMobileNav__ColChildren {
  max-height: 0;
  overflow: hidden !important;
  transition: max-height 0.28s ease !important;
  background: #ffffff !important;
  padding: 0 !important;
}
.WillboMobileNav__ColChild {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 12px !important;
  font-weight: 300 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  text-decoration: none !important;
  padding: 7px 24px 7px 36px !important;
  border-bottom: none !important;
  transition: opacity 0.15s !important;
}
.WillboMobileNav__ColChild:last-child { border-bottom: none !important; }
.WillboMobileNav__ColChild:hover { opacity: 0.45 !important; }

/* âââ Explore: editorial index panel ââââââââââââââââââââââââââ */
.WillboMobileNav__ExplorIndex {
  display: flex !important;
  flex-direction: column !important;
  padding: 0 0 8px 0 !important;
}
.WillboMobileNav__ExploreRow {
  display: flex !important;
  align-items: baseline !important;
  padding: 14px 24px !important;
  border: none !important;
  text-decoration: none !important;
  color: var(--w-black) !important;
  gap: 14px !important;
  transition: opacity 0.18s ease !important;
}
.WillboMobileNav__ExploreRow:hover {
  opacity: 0.45 !important;
}
.WillboMobileNav__ExploreNum {
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  color: var(--w-mid) !important;
  min-width: 22px !important;
  flex-shrink: 0 !important;
}
.WillboMobileNav__ExploreTitle {
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  color: var(--w-black) !important;
  flex: 1 !important;
}
.WillboMobileNav__ExploreArrow {
  display: none !important;
}
.WillboMobileNav__ExploreFooter {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 20px 24px 8px !important;
}
.WillboMobileNav__ExploreWordmark {
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  color: var(--w-mid) !important;
}
.WillboMobileNav__ExploreIssue {
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: 11px !important;
  font-weight: 300 !important;
  letter-spacing: 0.08em !important;
  color: var(--w-mid) !important;
}

/* âââ Utility nav (bottom) ââââââââââââââââââââââââââââââââââââ */
.WillboMobileNav__Utility {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  margin-top: 0 !important;
  padding: 18px 42px max(22px, env(safe-area-inset-bottom)) !important;
  border-top: 1px solid var(--w-border) !important;
  background: var(--w-white) !important;
  z-index: 2 !important;
}
.WillboMobileNav__UtilityList {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 4px 20px !important;
}
.WillboMobileNav__UtilityLink {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--w-mid) !important;
  text-decoration: none !important;
  padding: 6px 0 !important;
  transition: color 0.15s !important;
}
.WillboMobileNav__UtilityLink:hover { color: var(--w-black) !important; }

.WillboMobileNav__Signature {
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

.WillboMobileNav__SignatureTitle,
.WillboMobileNav__SignatureLine,
.WillboMobileNav__SignatureMeta {
  margin: 0 !important;
  font-family: var(--w-nav-sans, var(--w-sans)) !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
}

.WillboMobileNav__SignatureTitle {
  font-size: 10px !important;
  line-height: 1.25 !important;
  letter-spacing: 0.18em !important;
  color: var(--w-black) !important;
}

.WillboMobileNav__SignatureLine {
  margin-top: 3px !important;
  font-size: 9px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.16em !important;
  color: rgba(17, 17, 17, 0.52) !important;
}

.WillboMobileNav__SignatureMeta {
  margin-top: 7px !important;
  font-size: 7.5px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.18em !important;
  color: rgba(17, 17, 17, 0.42) !important;
}

/* âââ Social footer â hidden, replaced by wordmark âââââââââââ */
.WillboMobileNav__Social,
.SidebarMenu__Social {
  display: none !important;
}



/* âââ Group (sub-link with children) ââââââââââââââââââââââââââ */
.WillboMobileNav__Group { border-bottom: none !important; }
.WillboMobileNav__GroupTrigger {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 16px 24px !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  text-align: left !important;
}
.WillboMobileNav__GroupLabel {
  font-family: var(--w-sans) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  flex: 1 !important;
}
.WillboMobileNav__GroupChevron {
  flex-shrink: 0 !important;
  color: var(--w-mid) !important;
  transition: transform 0.2s ease !important;
}
.WillboMobileNav__Group.is-open .WillboMobileNav__GroupChevron {
  transform: rotate(180deg) !important;
}
.WillboMobileNav__GroupChildren {
  max-height: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.25s ease !important;
  background: #ffffff !important;
  padding: 0 !important;
}
.WillboMobileNav__ChildLink {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 12px !important;
  font-weight: 300 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--w-black) !important;
  text-decoration: none !important;
  padding: 7px 24px 7px 36px !important;
  border-bottom: none !important;
  transition: opacity 0.15s !important;
}
.WillboMobileNav__ChildLink:last-child { border-bottom: none !important; }
.WillboMobileNav__ChildLink:hover { opacity: 0.45 !important; }


/* âââ iOS Safari sub-panel fix âââââââââââââââââââââââââââââââ */
/* Safari chrome eats ~100px â shrink image on short viewports */
@media screen and (max-height: 750px) {
  .WillboMobileNav__FeatureImg {
    aspect-ratio: 16 / 9 !important;
  }
  .WillboMobileNav__QuickLink {
    min-height: 30px !important;
    font-size: 10px !important;
  }
  .WillboMobileNav__QuickAccess {
    gap: 1px !important;
    padding-top: 13px !important;
    margin-top: 2px !important;
  }
  .WillboMobileNav__MenuFeature {
    margin-top: 30px !important;
  }
  .WillboMobileNav__MenuFeatureImage {
    aspect-ratio: 2 / 1 !important;
  }
  .WillboMobileNav .main-item-back {
    height: 44px !important;
  }
  .WillboMobileNav__ColTrigger {
    padding: 9px 24px !important;
  }
  .WillboMobileNav__FeatureCard {
    margin: 6px 16px 12px !important;
  }
}
@media screen and (max-height: 670px) {
  .WillboMobileNav__FeatureImg {
    aspect-ratio: 2 / 1 !important;
  }
  .WillboMobileNav__MenuFeatureImage {
    display: none !important;
  }
  .WillboMobileNav__MenuFeatureText {
    padding-top: 0 !important;
  }
}


/* Hide COLLECTIONS from mobile nav â consistent with desktop */
.WillboMobileNav__Item[data-nav="collections"] {
  display: none !important;
}

/* âââ END WILLBO MOBILE NAV âââââââââââââââââââââââââââââââââââ */


/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   WILLBO FOOTER
   5-column layout: Stores | Western Conditions | Brand | Newsletter | Links
   Background: --w-cream (#F5F3EE), separated by top rust/red border line
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.WillboFooter {
  background: #F5F3EE;
  border-top: 2.5px solid #8B2A1A; /* rust red line matching design */
  font-family: var(--w-sans);
  color: var(--w-black);
}

.WillboFooter__Inner {
  display: grid;
  grid-template-columns: 1.1fr 1fr 0.9fr 1fr 1fr;
  gap: 0;
  border-bottom: 1px solid var(--w-border);
}

/* ââ Column shared ââ */
.WillboFooter__Col {
  padding: 36px 32px 24px;
  border-right: 1px solid var(--w-border);
}
.WillboFooter__Col:last-child {
  border-right: none;
}

/* ââ Col title ââ */
.WillboFooter__ColTitle {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--w-black);
  margin: 0 0 16px 0;
}
.WillboFooter__ColTitleLink {
  display: inline-block;
  text-decoration: none;
  transition: opacity 0.18s ease;
}
.WillboFooter__ColTitleLink:hover {
  opacity: 0.62;
}

/* ââ COL 1: STORES ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboFooter__Store {
  margin-bottom: 20px;
}
.WillboFooter__StoreName {
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin: 0 0 6px 0;
  color: var(--w-black);
}
.WillboFooter__StoreAddress,
.WillboFooter__StorePhone {
  font-size: 11px;
  font-weight: 300;
  line-height: 1.6;
  color: var(--w-black);
  margin: 0 0 2px 0;
}
.WillboFooter__StoreEmail {
  font-size: 11px;
  font-weight: 300;
  color: var(--w-black);
  margin: 16px 0 0 0;
}
.WillboFooter__StoreEmail a,
.WillboFooter__StorePhone a {
  color: var(--w-black);
  text-decoration: none;
  border-bottom: 1px solid var(--w-border);
  transition: border-color 0.15s ease;
}
.WillboFooter__StoreEmail a:hover,
.WillboFooter__StorePhone a:hover {
  border-color: var(--w-black);
}

/* ââ COL 2: WESTERN CONDITIONS ââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboFooter__WeatherList {
  list-style: none;
  margin: 0 0 20px 0;
  padding: 0;
}
.WillboFooter__WeatherItem {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 2px 0 0 0;
  font-size: 11px;
  font-weight: 300;
}
.WillboFooter__WeatherDot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}
.WillboFooter__WeatherDot--red   { background: #A84B35; } /* burnt sienna â warm but restrained */
.WillboFooter__WeatherDot--blue  { background: #3D6478; } /* deep slate ocean */
.WillboFooter__WeatherDot--green { background: #4A7057; } /* muted olive coast */
.WillboFooter__WeatherDot--gold  { background: #B07D3A; } /* raw amber leather */

.WillboFooter__WeatherLocation {
  flex: 1;
  color: var(--w-black);
}
.WillboFooter__WeatherTemp {
  font-weight: 400;
  color: var(--w-black);
  min-width: 28px;
  text-align: right;
}
.WillboFooter__WeatherTime {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: var(--w-black);
  text-align: center;
  margin: 8px 0 0 0;
}

/* ââ COL 3: BRAND CENTER âââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboFooter__Col--brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 20px;
}
.WillboFooter__BrandIcon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.WillboFooter__BrandSvg {
  width: 72px;
  height: 60px;
}
.WillboFooter__BrandImg {
  width: 80px;
  height: auto;
  object-fit: contain;
}
.WillboFooter__BrandTagline {
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #8B2A1A; /* rust red â matches border */
  margin: 0;
  line-height: 1.6;
}

/* ââ COL 4: NEWSLETTER âââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboFooter__NewsletterSub {
  font-size: 10px;
  font-weight: 300;
  line-height: 1.7;
  color: var(--w-mid);
  margin: 0 0 20px 0;
}
.WillboFooter__NewsletterRow {
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid var(--w-black);
  gap: 0;
}
.WillboFooter__NewsletterInput {
  flex: 1;
  background: transparent;
  border: none;
  outline: none;
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 300;
  color: var(--w-black);
  padding: 8px 0;
  appearance: none;
  -webkit-appearance: none;
}
.WillboFooter__NewsletterInput::placeholder {
  color: var(--w-mid);
}
.WillboFooter__NewsletterBtn {
  background: transparent;
  border: none;
  outline: none;
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--w-black);
  cursor: pointer;
  padding: 8px 0 8px 12px;
  white-space: nowrap;
  transition: opacity 0.15s ease;
}
.WillboFooter__NewsletterBtn:hover {
  opacity: 0.6;
}
.WillboFooter__NewsletterSuccess {
  font-size: 10px;
  font-weight: 300;
  color: var(--w-mid);
  margin: 10px 0 0 0;
}

/* ââ COL 5: LINKS ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboFooter__LinksGrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 16px;
}
.WillboFooter__LinkCol {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.WillboFooter__Link {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 300;
  color: var(--w-black);
  text-decoration: none;
  transition: opacity 0.15s ease;
}

button.WillboFooter__Link {
  font-size: 11px !important;
  font-family: var(--w-sans) !important;
  font-weight: 300 !important;
  line-height: inherit !important;
  display: block;
  margin: 0 !important;
  text-align: left !important;
}
.WillboFooter__Link:hover {
  opacity: 0.5;
}

/* ââ Bottom bar ââ */
.WillboFooter__BottomBar {
  padding: 16px 32px;
}
.WillboFooter__Copyright {
  font-size: 10px;
  font-weight: 300;
  color: var(--w-mid);
  margin: 0;
  letter-spacing: 0.04em;
}

/* ââ Hide default Prestige footer on homepage when Willbo footer is present ââ */
.shopify-section--footer:has(+ .shopify-section .WillboFooter),
.shopify-section--footer ~ .shopify-section .WillboFooter ~ .shopify-section--footer {
  display: none;
}



/* ââ Hide Prestige built-in footer (replaced by WillboFooter section) ââ */
#shopify-section-footer,
.Footer__Aside {
  display: none !important;
}


/* ââ Fix: hide visually-hidden label that Prestige renders large ââ */
.WillboFooter__NewsletterForm label,
.WillboFooter__NewsletterForm .visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  font-size: 0 !important;
}

/* ââ Ensure input font stays small and correct ââ */
.WillboFooter__NewsletterInput,
.WillboFooter__NewsletterInput[type="email"] {
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 300 !important;
  line-height: 1 !important;
}


/* ââ Per-location sub-data rows ââ */
.WillboFooter__SubRow {
  list-style: none;
  padding: 0 0 0 17px;
  margin: 0;
}
.WillboFooter__SubLabel {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 300;
  letter-spacing: 0.04em;
  color: var(--w-black);
  opacity: 0.55; /* subtle â secondary to temp */
}


/* ââ Newsletter col: push form to bottom so it aligns with store email ââ */
.WillboFooter__Col--newsletter {
  display: flex !important;
  flex-direction: column !important;
  padding-bottom: 54px !important;
}
.WillboFooter__NewsletterForm {
  margin-top: auto !important;
}

/* âââ Hide LOOKBOOK nav item (featured inside EXPLORE instead) âââ */
.HorizontalList__Item[data-nav="lookbook"] {
  display: none !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   WILLBO LOOKBOOKS INDEX â seasonal archive
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.shopify-section--willbo-lookbooks-index {
  background: #fff;
}

.WillboLookbooksIndex {
  max-width: 1280px;
  margin: 0 auto;
  padding: 96px 40px 128px;
  color: var(--w-black);
}

.WillboLookbooksIndex__Header {
  max-width: 620px;
  margin: 0 0 74px;
}

.WillboLookbooksIndex__Kicker {
  margin: 0 0 18px;
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.55);
}

.WillboLookbooksIndex__Title {
  margin: 0;
  font-family: var(--w-sans);
  font-size: clamp(30px, 4vw, 56px);
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: 0.02em;
  text-transform: none;
}

.WillboLookbooksIndex__Deck {
  max-width: 520px;
  margin-top: 22px;
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  line-height: 1.65;
  letter-spacing: 0.02em;
  color: rgba(17, 17, 17, 0.66);
}

.WillboLookbooksIndex__Deck p {
  margin: 0;
}

.WillboLookbooksIndex__List {
  border-top: 1px solid rgba(17, 17, 17, 0.16);
}

/* Refined visual archive index â Noah-style image cards */
.WillboLookbooksIndex {
  max-width: 1480px;
  margin-left: auto;
  margin-right: auto;
  padding: 48px 24px 96px;
}

.WillboLookbooksIndex__Header {
  display: none !important;
}

.WillboLookbooksIndex__Kicker,
.WillboLookbooksIndex__Deck {
  display: none;
}

.WillboLookbooksIndex__Title {
  font-size: clamp(22px, 2.2vw, 34px);
  line-height: 1.1;
  letter-spacing: -0.01em;
}

.WillboLookbooksIndex__Grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(34px, 4vw, 58px) 28px;
}

.WillboLookbooksIndex__Card {
  display: block;
  text-decoration: none;
  color: var(--w-black);
}

.WillboLookbooksIndex__ImageWrap {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #f4f3f0;
}

.WillboLookbooksIndex__Image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transition: transform 0.45s ease;
}

.WillboLookbooksIndex__Card:hover .WillboLookbooksIndex__Image {
  transform: scale(1.025);
}

.WillboLookbooksIndex__ImagePlaceholder {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  font-family: var(--w-sans);
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.42);
}

.WillboLookbooksIndex__Meta {
  display: block;
  margin-top: 12px;
}

.WillboLookbooksIndex__Name {
  display: block;
  font-size: clamp(15px, 1.15vw, 19px);
  line-height: 1.1;
  letter-spacing: 0.01em;
}

.WillboLookbooksIndex__Sub {
  display: block;
  margin-top: 8px;
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 0.12em;
  line-height: 1.4;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.48);
}

.WillboLookbooksIndex__Sub span {
  margin: 0 6px;
}

.WillboLookbooksIndex__Row {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) minmax(120px, auto) 28px;
  gap: 28px;
  align-items: center;
  min-height: 84px;
  padding: 24px 0;
  border-bottom: 1px solid rgba(17, 17, 17, 0.16);
  text-decoration: none;
  color: var(--w-black);
}

.WillboLookbooksIndex__Num,
.WillboLookbooksIndex__Season,
.WillboLookbooksIndex__Arrow {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.48);
}

.WillboLookbooksIndex__Main {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.WillboLookbooksIndex__Name {
  font-family: var(--w-sans);
  font-size: clamp(18px, 2.2vw, 30px);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: 0.01em;
}

.WillboLookbooksIndex__Note {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.48);
}

.WillboLookbooksIndex__Season {
  justify-self: end;
  white-space: nowrap;
}

.WillboLookbooksIndex__Arrow {
  justify-self: end;
  transition: transform 0.24s ease;
}

.WillboLookbooksIndex__Row:hover .WillboLookbooksIndex__Arrow {
  transform: translateX(4px);
}

@media (max-width: 768px) {
  .WillboLookbooksIndex {
    padding: 56px 20px 86px;
  }

  .WillboLookbooksIndex__Header {
    margin-bottom: 44px;
  }

  .WillboLookbooksIndex__Title {
    font-size: 30px;
  }

  .WillboLookbooksIndex__Row {
    grid-template-columns: 34px minmax(0, 1fr) 22px;
    gap: 14px;
    min-height: 76px;
    padding: 20px 0;
  }

  .WillboLookbooksIndex__Season {
    display: none;
  }

  .WillboLookbooksIndex__Name {
    font-size: 19px;
  }
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   WILLBO LOOKBOOKS â image-forward editorial archive
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.shopify-section--willbo-lookbooks {
  background: #fff;
}

.WillboLookbooks {
  max-width: 1680px;
  margin: 0 auto;
  padding: 92px 40px 120px;
  color: var(--w-black);
}

.WillboLookbooks__Header {
  display: grid;
  grid-template-columns: minmax(180px, 0.55fr) minmax(0, 1.45fr);
  column-gap: clamp(36px, 7vw, 120px);
  align-items: end;
  max-width: 1180px;
  margin: 0 0 78px;
}

.WillboLookbooks__Kicker {
  margin: 0;
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.58);
}

.WillboLookbooks__Title {
  margin: 0;
  font-family: var(--w-sans);
  font-size: clamp(24px, 3.2vw, 52px);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.04;
  text-transform: none;
}

.WillboLookbooks__Deck {
  grid-column: 2;
  max-width: 520px;
  margin-top: 22px;
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  line-height: 1.65;
  letter-spacing: 0.02em;
  color: rgba(17, 17, 17, 0.68);
}

.WillboLookbooks__Deck p {
  margin: 0;
}

.WillboLookbooks__Grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(16px, 1.7vw, 28px);
  align-items: start;
}

.WillboLookbooks__Item {
  grid-column: span 4;
  margin: 0;
}

.WillboLookbooks__Item--wide {
  grid-column: span 6;
}

.WillboLookbooks__Item--full {
  grid-column: 1 / -1;
}

.WillboLookbooks__ImageWrap,
.WillboLookbooks__Placeholder {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #f4f3f0;
}

.WillboLookbooks__Item--portrait .WillboLookbooks__ImageWrap,
.WillboLookbooks__Item--portrait .WillboLookbooks__Placeholder {
  aspect-ratio: 4 / 5;
}

.WillboLookbooks__Item--landscape .WillboLookbooks__ImageWrap,
.WillboLookbooks__Item--landscape .WillboLookbooks__Placeholder {
  aspect-ratio: 16 / 11;
}

.WillboLookbooks__Item--square .WillboLookbooks__ImageWrap,
.WillboLookbooks__Item--square .WillboLookbooks__Placeholder {
  aspect-ratio: 1 / 1;
}

.WillboLookbooks__Item--natural .WillboLookbooks__ImageWrap {
  aspect-ratio: auto;
}

.WillboLookbooks__Image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.WillboLookbooks__Item--natural .WillboLookbooks__Image {
  height: auto;
  object-fit: contain;
}

.WillboLookbooks__Placeholder {
  display: grid;
  place-items: center;
  min-height: 360px;
  border: 1px solid rgba(17, 17, 17, 0.08);
}

.WillboLookbooks__Placeholder span {
  font-family: var(--w-sans);
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.45);
}

.WillboLookbooks__Caption {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin-top: 10px;
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 0.12em;
  line-height: 1.45;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.52);
}

.WillboLookbooks__Caption em {
  font-style: normal;
  text-align: right;
}

/* Individual lookbook: quieter Tom Adler-style journal header */
.WillboLookbooks__Header {
  max-width: 680px !important;
  margin: 0 0 46px !important;
  display: block !important;
}

.WillboLookbooks__Kicker {
  display: none !important;
}

.WillboLookbooks__Title {
  max-width: 760px !important;
  font-size: clamp(25px, 2.65vw, 40px) !important;
  font-weight: 400 !important;
  line-height: 1.06 !important;
  letter-spacing: 0.005em !important;
}

.WillboLookbooks__Deck {
  max-width: 560px !important;
  margin-top: 15px !important;
  font-size: 12px !important;
  line-height: 1.65 !important;
  letter-spacing: 0.025em !important;
  color: rgba(17, 17, 17, 0.58) !important;
}

.WillboLookbooks__Caption {
  display: none !important;
}

@media (min-width: 990px) {
  .WillboLookbooks--editorial .WillboLookbooks__Item:nth-child(4n + 2) {
    margin-top: 84px;
  }

  .WillboLookbooks--editorial .WillboLookbooks__Item:nth-child(4n + 3) {
    margin-top: 22px;
  }

  .WillboLookbooks--uniform .WillboLookbooks__Item:nth-child(n) {
    margin-top: 0;
  }

  .WillboLookbooks--full-bleed {
    max-width: none;
    padding-left: 16px;
    padding-right: 16px;
  }

  .WillboLookbooks--full-bleed .WillboLookbooks__Header {
    max-width: 1680px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 989px) {
  .WillboLookbooks {
    padding: 68px 24px 88px;
  }

  .WillboLookbooks__Header {
    display: block !important;
    margin-bottom: 36px !important;
  }

  .WillboLookbooks__Kicker {
    margin: 0 0 14px !important;
  }

  .WillboLookbooks__Title {
    font-size: 29px !important;
    line-height: 1.08 !important;
  }

  .WillboLookbooks__Deck {
    margin-top: 14px !important;
    max-width: none !important;
  }

  .WillboLookbooks__Grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }

  .WillboLookbooks__Item {
    grid-column: span 1;
    margin-bottom: 0;
  }

  .WillboLookbooks__Item--wide,
  .WillboLookbooks__Item--full {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .WillboLookbooks {
    padding: 46px 16px 72px;
  }

  .WillboLookbooks__Title {
    font-size: 25px;
  }

  .WillboLookbooksIndex {
    padding: 36px 16px 72px;
  }

  .WillboLookbooksIndex__Header {
    margin-bottom: 26px;
  }

  .WillboLookbooksIndex__Grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .WillboLookbooksIndex__Title {
    font-size: 24px;
  }

  .WillboLookbooks__Grid {
    display: block;
  }

  .WillboLookbooks__Item {
    margin-bottom: 16px;
  }

  .WillboLookbooks__Caption {
    display: block;
  }

  .WillboLookbooks__Caption em {
    display: block;
    margin-top: 3px;
    text-align: left;
  }
}

/* ââ Final Lookbooks refinements: image archive + uniform image pages ââ */
.WillboLookbooksIndex__Grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(34px, 4vw, 58px) 28px !important;
  border: 0 !important;
}

.WillboLookbooksIndex__Card {
  display: block !important;
  text-decoration: none !important;
  color: var(--w-black) !important;
}

.WillboLookbooksIndex__ImageWrap {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 5 !important;
  overflow: hidden !important;
  background: #f4f3f0 !important;
}

.WillboLookbooksIndex__Image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}

.WillboLookbooksIndex__Meta {
  display: block !important;
  margin-top: 12px !important;
}

.WillboLookbooksIndex__Name {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: clamp(15px, 1.15vw, 19px) !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  letter-spacing: 0.01em !important;
}

.WillboLookbooksIndex__Sub {
  display: block !important;
  margin-top: 7px !important;
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  line-height: 1.4 !important;
  text-transform: uppercase !important;
  color: rgba(17, 17, 17, 0.48) !important;
}

.WillboLookbooks--uniform .WillboLookbooks__Item {
  grid-column: span 4 !important;
}

.WillboLookbooks--uniform .WillboLookbooks__Item--wide {
  grid-column: span 6 !important;
}

.WillboLookbooks--uniform .WillboLookbooks__Item--full {
  grid-column: 1 / -1 !important;
}

.WillboLookbooks--full-bleed {
  max-width: none !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
}

@media (max-width: 989px) {
  .WillboLookbooksIndex__Grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .WillboLookbooks--uniform .WillboLookbooks__Item,
  .WillboLookbooks--uniform .WillboLookbooks__Item--wide {
    grid-column: span 1 !important;
  }

  .WillboLookbooks--uniform .WillboLookbooks__Item--full {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 640px) {
  .WillboLookbooksIndex {
    padding: 24px 16px 72px;
  }

  .WillboLookbooksIndex__Grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   MOBILE RESPONSIVE â all breakpoints added April 14 2026
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

@media (max-width: 768px) {

  /* âââ FIRST LIGHT â stack to single column on mobile âââ */
  .WillboEditorial {
    height: 560px !important;
  }
  .WillboEditorial__Content {
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    padding: 28px 24px 36px !important;
    gap: 16px !important;
  }
  .WillboEditorial__Heading {
    font-size: 28px !important;
  }
  .WillboEditorial__Right {
    max-width: 100% !important;
    gap: 14px !important;
  }
  .WillboEditorial__Body,
  .WillboEditorial__Body p {
    font-size: 13px !important;
    line-height: 1.6 !important;
  }

  /* âââ FOOTER â stack to 2-col then 1-col on mobile âââ */
  .WillboFooter__Inner {
    grid-template-columns: 1fr 1fr !important;
  }
  /* Stores col spans full width on mobile */
  .WillboFooter__Col:nth-child(1) {
    grid-column: 1 / -1 !important;
    border-right: none !important;
    border-bottom: 1px solid var(--w-border) !important;
  }
  /* Weather col full width */
  .WillboFooter__Col:nth-child(2) {
    grid-column: 1 / -1 !important;
    border-right: none !important;
    border-bottom: 1px solid var(--w-border) !important;
  }
  /* Newsletter + brand side by side */
  .WillboFooter__Col:nth-child(3),
  .WillboFooter__Col:nth-child(4) {
    border-bottom: 1px solid var(--w-border) !important;
  }
  .WillboFooter__Col:nth-child(3) {
    border-right: 1px solid var(--w-border) !important;
  }
  .WillboFooter__Col:nth-child(4) {
    border-right: none !important;
  }
  /* Links col full width */
  .WillboFooter__Col:nth-child(5) {
    grid-column: 1 / -1 !important;
    border-right: none !important;
  }
  /* Tighten col padding on mobile â 36px â 20px top, 24px â 16px bottom */
  .WillboFooter__Col {
    padding: 20px 20px 16px !important;
  }
  .WillboFooter__ColTitle {
    margin-bottom: 12px !important;
  }
  .WillboFooter__Col--newsletter {
    padding-bottom: 16px !important;
  }
  /* Bottom bar */
  .WillboFooter__BottomBar {
    flex-direction: column !important;
    gap: 8px !important;
    text-align: center !important;
    padding: 20px 24px !important;
  }
  /* Links grid 2-col on mobile */
  .WillboFooter__LinksGrid {
    grid-template-columns: 1fr 1fr !important;
    gap: 4px 20px !important;
  }
  .WillboFooter__LinkCol {
    gap: 10px !important;
  }
  .WillboFooter__Link {
    font-size: 10px !important;
    line-height: 1.2 !important;
  }

  /* âââ HERO SLIDESHOW â CTA text size âââ */
  .Slideshow__Content {
    max-width: 80% !important;
    padding: 0 0 36px 0 !important;
  }

  /* âââ NAV SPACING â tighter on mobile âââ */
  .Header__Wrapper {
    padding: 0 16px !important;
  }
}

/* Extra small â single column footer */
@media (max-width: 480px) {
  .WillboFooter__Inner {
    grid-template-columns: 1fr !important;
  }
  .WillboFooter__Col {
    border-right: none !important;
    border-bottom: 1px solid var(--w-border) !important;
  }
  .WillboFooter__Col:nth-child(3) {
    border-right: none !important;
  }
  .WillboEditorial {
    height: 480px !important;
  }
  .WillboEditorial__Heading {
    font-size: 24px !important;
  }
}

/* =============================================================================
   WILLBO PRODUCT PAGE â Phase 1 Redesign
   Cherry LA layout + Moncler precision
   Target: sections/product-template.liquid + snippets/product-meta + product-form
   ============================================================================= */

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   1. PAGE LAYOUT â Cherry LA exact model
   LEFT:  50%, normal flow, images stacked vertically, gap between
   RIGHT: 50%, static column â inner .Product__Info is sticky
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* Outer wrapper â full width grid, no padding, no max-width cap.
   Prestige sets .Product .Product__Wrapper { max-width: 65% } â must kill that. */
.Product .Product__Wrapper,
.Product__Wrapper {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: start !important;
  gap: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  margin-top: 0 !important;
  overflow: visible !important;
}

/* CRITICAL FIX: Hide Prestige's mobile carousel on desktop â it was taking grid col 2
   and pushing .Product__InfoWrapper off-screen to a 3rd row */
.Mobile.Product__Gallery {
  display: none !important;
}

/* LEFT â Gallery column: full width, normal flow.
   Prestige sets margin-left:25px and display:flex on .Product__Gallery--block â kill both. */
.Product__Gallery,
.Product__Gallery--block {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #F5F3EE !important;
  display: block !important;
}

/* Stack all images vertically â single column grid, no gap, flush edge-to-edge.
   Prestige uses flex + 50% items for 2-up layout â we override to single column. */
.Product__Gallery--block {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
  flex-wrap: unset !important;
}

/* Kill Prestige's 50% flex constraint on each block item */
.Product__Gallery--block .Product__BlockItem,
.Product__Gallery--block .Product__BlockItem--image,
.Product__Gallery--block .Product__BlockItem.full-width {
  flex: none !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Each image block fills full column width, natural aspect ratio */
.Product__BlockItem--image,
.Product__BlockItem {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
}

/* AspectRatio â Two competing overrides needed:
   1. Prestige's own CSS sets .Product__Gallery--block .Product__BlockItem .AspectRatio { padding-bottom: 125% !important }
   2. Prestige's template sets an inline style: style="padding-bottom: X%"
   We beat #1 with higher specificity. We beat #2 by switching the container to
   aspect-ratio + explicit height so padding-bottom no longer drives the frame size. */
.Product__Gallery--block .Product__BlockItem .AspectRatio,
.Product__Gallery--block .Product__BlockItem .AspectRatio--withFallback {
  position: relative !important;
  width: 100% !important;
  /* Use CSS aspect-ratio instead of the padding-bottom trick.
     This takes precedence over padding-bottom for sizing the box. */
  aspect-ratio: 4 / 5 !important; /* 1080Ã1350 portrait â matches collection photography */
  height: auto !important;
  padding-bottom: 0 !important; /* defeat both Prestige CSS and inline style */
  overflow: hidden !important;
}

.Product__Gallery--block .Product__BlockItem img,
.Product__Gallery--block .Product__BlockItem .AspectRatio img,
.Product__Gallery--block .Product__BlockItem .AspectRatio--withFallback img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center top !important;
  transform: none !important; /* kill Prestige's translateY(-50%) */
}

/* Desktop carousel (fallback) â show as stacked, no flickity chrome */
.Product__Slideshow {
  width: 100% !important;
}

.Product__SlideItem {
  width: 100% !important;
  display: block !important;
}

.Product__SlideItem img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* Hide carousel dots/thumbnails/arrows on desktop */
.Product__SlideshowNav,
.Product__SlideshowMobileNav,
.Product__ActionList {
  display: none !important;
}

/* Ensure no ancestor breaks sticky â overflow:hidden on any ancestor kills position:sticky */
.Product,
.Product .Product__Wrapper,
.Product__Wrapper {
  overflow: visible !important;
}

/* RIGHT â outer column: sticky viewport-height scroll container.
   Sticks to nav bottom, fills remaining viewport, scrolls internally.
   Left side scrolls the page (images). Right side scrolls itself. */
.Product .Product__Wrapper .Product__InfoWrapper,
.Product__InfoWrapper {
  width: 100% !important;
  max-width: 100% !important;
  position: sticky !important;
  top: var(--w-nav-h, 72px) !important;
  height: calc(100vh - var(--w-nav-h, 72px)) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 0 !important;
  background: #FFFFFF !important;
  border-left: none !important;
  box-sizing: border-box !important;
  align-self: start !important;
  /* Hide scrollbar visually but keep it functional */
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}
.Product .Product__Wrapper .Product__InfoWrapper::-webkit-scrollbar,
.Product__InfoWrapper::-webkit-scrollbar {
  display: none !important;
}

/* RIGHT inner â normal flow inside the scroll container. No longer sticky itself. */
.Product .Product__Wrapper .Product__InfoWrapper .Product__Info,
.Product__Info {
  position: relative !important;
  top: auto !important;
  overflow: visible !important;
  padding: 56px 56px 56px 52px !important;
  box-sizing: border-box !important;
  max-width: 100% !important;
}

.Product__Info .Container {
  padding: 0 !important;
  max-width: 100% !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   2. TYPOGRAPHY â DM Sans, clean hierarchy
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* Title + Price on same row */
.ProductMeta {
  margin-bottom: 0 !important;
}

.ProductMeta__Title {
  font-family: "DM Sans", sans-serif !important;
  font-size: 20px !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
  color: #111111 !important;
  line-height: 1.3 !important;
  text-transform: none !important;
  margin: 0 0 4px 0 !important;
  display: inline !important;
}

.ProductMeta__PriceList {
  display: inline !important;
  float: right !important;
  margin: 0 !important;
}

.ProductMeta__Price {
  font-family: "DM Sans", sans-serif !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #111111 !important;
  letter-spacing: 0 !important;
}

/* Clear float after title+price row */
.ProductMeta::after {
  content: "" !important;
  display: table !important;
  clear: both !important;
}

/* Hairline divider after title/price */
.ProductMeta__PriceList::after {
  content: "" !important;
  display: block !important;
  clear: both !important;
}

/* Description text */
.ProductMeta__Description,
.ProductMeta__Description .Rte,
.ProductMeta__Description p {
  font-family: "DM Sans", sans-serif !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  line-height: 1.7 !important;
  color: #444444 !important;
  letter-spacing: 0 !important;
}

.ProductMeta__Description {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: none !important;
}

/* Vendor â hide or mute */
.ProductMeta__Vendor {
  display: none !important;
}

/* Info/Fit Guide links */
.product-special-infos {
  font-family: "DM Sans", sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  color: #888580 !important;
  letter-spacing: 0.08em !important;
  margin: 16px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.product-special-infos__title {
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  font-size: 10px !important;
}

.info-item {
  font-family: "DM Sans", sans-serif !important;
  font-size: 11px !important;
  color: #111111 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
  text-decoration-color: #D9D5CC !important;
  letter-spacing: 0.02em !important;
}

.info-item:hover {
  text-decoration-color: #111111 !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   3. OPTION LABELS â tracked small caps
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.ProductForm__Option {
  margin-top: 20px !important;
}

.ProductForm__Label {
  font-family: "DM Sans", sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: #888580 !important;
  display: block !important;
  margin-bottom: 10px !important;
}

/* Hairline above variants section */
.ProductForm__Variants {
  margin-top: 20px !important;
  padding-top: 20px !important;
  border-top: 1px solid var(--w-border, #D9D5CC) !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   4. COLOR SWATCHES â rectangular chips (Cherry LA style)
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.ColorSwatchList {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  justify-content: flex-start !important; /* desktop: left-aligned */
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
}

.ColorSwatchList .HorizontalList__Item {
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 auto !important; /* prevent items from stretching/growing */
}

/* Hide the Mobile duplicate swatch list on desktop â our flex override was un-hiding it */
.ColorSwatchList.Mobile {
  display: none !important;
}

/* Hide Prestige's floating tooltip on color swatches â color name shows in label instead */
.ColorSwatch[data-tooltip]::before,
.ColorSwatch[data-tooltip]::after,
[data-tooltip].ColorSwatch::before,
[data-tooltip].ColorSwatch::after {
  display: none !important;
}

/* Also hide any injected tooltip/popover div Prestige appends near swatches */
.Tooltip,
.ColorSwatch__Tooltip,
.swatch-tooltip {
  display: none !important;
}

/* Hide the radio input */
.ColorSwatch__Radio {
  display: none !important;
}

/* Square swatch â small enough for 8 across, contain so full product shows */
.ColorSwatch.ColorSwatch--large {
  display: block !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 2px !important;
  border: 1px solid rgba(0,0,0,0.12) !important;
  cursor: pointer !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-color: #F5F3EE !important;
  transition: border-color 0.15s ease !important;
  position: relative !important;
  box-sizing: border-box !important;
}

.ColorSwatch.ColorSwatch--large:hover {
  border-color: #111111 !important;
}

/* Selected state â single clean black border only */
.ColorSwatch__Radio:checked + .ColorSwatch.ColorSwatch--large {
  border: 1px solid #111111 !important;
  outline: none !important;
  box-shadow: none !important;
}

/* White swatch â needs visible border */
.ColorSwatch.ColorSwatch--white {
  border-color: #D9D5CC !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   5. SIZE SELECTOR â circular pills, clean states
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.SizeSwatchList {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.SizeSwatchList .HorizontalList__Item {
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide radio */
.SizeSwatch__Radio {
  display: none !important;
}

/* Size pill â rectangles */
.SizeSwatch {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 52px !important;
  height: 40px !important;
  padding: 0 14px !important;
  border-radius: 0 !important;
  border: 1px solid #D9D5CC !important;
  background: #FFFFFF !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  color: #111111 !important;
  cursor: pointer !important;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
  text-transform: uppercase !important;
  user-select: none !important;
}

.SizeSwatch:hover {
  border-color: #111111 !important;
}

/* Selected */
.SizeSwatch__Radio:checked + .SizeSwatch {
  background: #111111 !important;
  border-color: #111111 !important;
  color: #FFFFFF !important;
}

/* Unavailable / sold out */
.SizeSwatch.sold-out {
  color: #888580 !important;
  border-color: #E8E4DC !important;
  cursor: not-allowed !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Strikethrough line through sold out pill */
.SizeSwatch.sold-out::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 10% !important;
  width: 80% !important;
  height: 1px !important;
  background: #D9D5CC !important;
  transform: rotate(-30deg) !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   6. ADD TO CART BUTTON â full width, #111, sharp, tracked
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.ProductForm__AddToCart.Button {
  width: 100% !important;
  height: 52px !important;
  background: #111111 !important;
  border: none !important;
  border-radius: 0 !important;
  color: #FFFFFF !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 0.2s ease !important;
  margin-top: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.ProductForm__AddToCart.Button:hover:not(:disabled) {
  background: #333333 !important;
}

.ProductForm__AddToCart.Button:disabled {
  background: #888580 !important;
  cursor: not-allowed !important;
}

/* Remove Prestige's secondary button style */
.ProductForm__AddToCart.Button--secondary {
  background: #111111 !important;
  color: #FFFFFF !important;
  border-color: #111111 !important;
}

/* Payment button (Shop Pay etc) â subtle below CTA */
.shopify-payment-button {
  margin-top: 10px !important;
}

.shopify-payment-button__button {
  border-radius: 0 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.1em !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   7. ACCORDIONS â hairline separators, + icon, clean type
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.Product__Tabs {
  margin-top: 28px !important;
  border-top: 1px solid var(--w-border, #D9D5CC) !important;
}

.Collapsible--large {
  border-bottom: 1px solid var(--w-border, #D9D5CC) !important;
  margin: 0 !important;
}

.Collapsible__Button.Heading {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 16px 0 !important;
  background: transparent !important;
  border: none !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  cursor: pointer !important;
  text-align: left !important;
}

.Collapsible__Button.Heading:hover {
  color: #888580 !important;
}

/* The + indicator */
.Collapsible__Plus {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  position: relative !important;
  font-size: 0 !important;
}

.Collapsible__Plus::before,
.Collapsible__Plus::after {
  content: "" !important;
  position: absolute !important;
  background: #111111 !important;
  transition: transform 0.2s ease, opacity 0.2s ease !important;
}

.Collapsible__Plus::before {
  width: 10px !important;
  height: 1px !important;
}

.Collapsible__Plus::after {
  width: 1px !important;
  height: 10px !important;
}

/* When expanded â + becomes Ã */
.Collapsible__Button[aria-expanded="true"] .Collapsible__Plus::after {
  transform: rotate(90deg) !important;
  opacity: 0 !important;
}

/* Accordion body text */
.Collapsible__Content .Rte,
.Collapsible__Content p,
.Collapsible__Content li {
  font-family: "DM Sans", sans-serif !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  line-height: 1.7 !important;
  color: #444444 !important;
  letter-spacing: 0 !important;
}

.Collapsible__Content {
  padding-bottom: 16px !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   8. BACK LINK / BREADCRUMB
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.Product__Info .Breadcrumb,
.Product__Info nav[aria-label="breadcrumb"],
.Product__InfoWrapper .Breadcrumb {
  font-family: "DM Sans", sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #888580 !important;
  margin-bottom: 20px !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   9. GENERAL PRESTIGE CLEANUP on product page
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* Remove default Prestige product padding */
.Product {
  padding-bottom: 0 !important;
}

.Product__InfoWrapper .ProductMeta__Description .Rte a {
  color: #111111 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

/* USA-made tag */
.usa-tag {
  font-family: "DM Sans", sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: #888580 !important;
  margin: 12px 0 0 0 !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   10. MOBILE â contained carousel + stacked info
   Mr Porter / Cherry LA style: bounded image zone,
   dot pagination below, then all product info stacked clean.
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

@media (max-width: 999px) {

  /* ââ 1. Zero out all top spacing so image starts right below nav ââ */
  .Product {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .Product .Product__Wrapper,
  .Product__Wrapper {
    display: block !important;
    grid-template-columns: unset !important;
    gap: 0 !important;
    overflow: visible !important;
    max-width: 100vw !important;
    padding: 0 !important;
    margin-top: 0 !important;
  }
  /* Kill any shopify section top padding on product page */
  .shopify-section .Product,
  [data-section-type="product"] {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  /* ââ 2. Hide desktop stacked block gallery ââ */
  .Product__Gallery--block {
    display: none !important;
  }

  /* ââ 3. Mobile carousel wrapper ââ */
  .Mobile.Product__Gallery {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    overflow: visible !important;
    background: transparent !important;
  }

  /* Carousel slideshow: full width, clips cleanly */
  .Mobile.Product__Gallery .Product__Slideshow,
  .Mobile.Product__Gallery .Carousel {
    width: 100% !important;
    overflow: hidden !important;
    margin-bottom: 0 !important;
    background: transparent !important;
  }

  /* Each slide full width */
  .Mobile.Product__Gallery .Product__SlideItem {
    width: 100% !important;
  }

  /* 1080Ã1350 = 125% ratio. Prestige uses padding-TOP not padding-bottom â
     must zero padding-top and use padding-bottom to avoid double height. */
  .Mobile.Product__Gallery .AspectRatio,
  .Mobile.Product__Gallery .AspectRatio--withFallback,
  .Product .Product__Wrapper .Mobile.Product__Gallery .Product__SlideItem .AspectRatio {
    width: 100% !important;
    padding-top: 0 !important;
    padding-bottom: 125% !important;
    height: 0 !important;
    position: relative !important;
    overflow: hidden !important;
    background: transparent !important;
  }

  .Mobile.Product__Gallery img,
  .Mobile.Product__Gallery .AspectRatio img,
  .Mobile.Product__Gallery .AspectRatio--withFallback img,
  .Product .Product__Wrapper .Mobile.Product__Gallery .Product__SlideItem .AspectRatio > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  /* ââ 4. Flickity dots â hidden, scroll bar on left handles navigation ââ */
  .Mobile.Product__Gallery .flickity-page-dots {
    display: flex !important;
    position: relative !important;
    bottom: auto !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 10px 0 0 0 !important;
    padding: 0 !important;
    justify-content: center !important;
    align-items: start !important;
    gap: 6px !important;
    list-style: none !important;
  }
  .Mobile.Product__Gallery .flickity-page-dots-DISABLED {
    bottom: -28px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    list-style: none !important;
  }
  .Mobile.Product__Gallery .flickity-page-dots .dot {
    width: 5px !important;
    height: 5px !important;
    border-radius: 50% !important;
    background: #D9D5CC !important;
    opacity: 1 !important;
    margin: 0 !important;
    float: none !important;
    display: inline-block !important;
    transition: background 0.2s !important;
  }
  .Mobile.Product__Gallery .flickity-page-dots .dot.is-selected {
    background: #111111 !important;
  }
  .Mobile.Product__Gallery .flickity-prev-next-button {
    display: none !important;
  }

  /* ââ 5. Info wrapper: static, no extra padding ââ */
  /* Override desktop sticky panel â full specificity match to beat desktop rule */
  .Product .Product__Wrapper .Product__InfoWrapper,
  .Product__InfoWrapper {
    display: block !important;
    width: 100% !important;
    position: static !important;
    background: #ffffff !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-y: visible !important;
    overflow-x: visible !important;
    padding: 0 !important;
    border: none !important;
    top: auto !important;
  }

  /* Info panel: 22px sides matches Cherry LA reference.
     Must match desktop rule specificity: .Product .Product__Wrapper .Product__InfoWrapper .Product__Info */
  .Product .Product__Wrapper .Product__InfoWrapper .Product__Info,
  .Product__Info {
    position: static !important;
    max-height: none !important;
    overflow-y: visible !important;
    padding: 12px 22px 32px 22px !important; /* tight bottom â no excess gap before Style With */
    box-sizing: border-box !important;
    width: 100% !important;
  }

  /* All children stay within the 16px inset, no bleed */
  .Product__Info .Container,
  .Product__Info .ProductMeta,
  .Product__Info .ProductForm,
  .Product__Info .ProductForm__Outer,
  .Product__Info .ProductForm__Inner,
  .Product__Info .ProductForm__Variants,
  .Product__Info .WillboAccordions,
  .Product__Info .shopify-payment-button,
  .Product__Info [data-shopify="payment-button"] {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* Override Prestige's high-specificity 25px container padding */
  .Product .Product__Wrapper .Product__InfoWrapper .Product__Info .Container,
  .Product .Product__Wrapper .Product__InfoWrapper .Product__Info .Container--extraNarrow,
  .Product__Info .Container,
  .Product__Info .Container--extraNarrow {
    padding: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  /* ââ 6. Title + price: sticky just below nav â sticks when images scroll away ââ */
  /* InfoWrapper is now position:static, so sticky here works relative to page scroll.
     top:72px = nav height, so bar locks just below the nav as user scrolls past images. */
  .ProductMeta {
    position: sticky !important;
    top: 72px !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 200 !important;
    background: #ffffff !important;
    border-bottom: 1px solid var(--w-border, #D9D5CC) !important;
    padding: 14px 22px !important;
    margin: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }
  /* Undo any wrapper margin-top we added previously */
  .Product__Wrapper {
    margin-top: 0 !important;
  }
  /* Break the desktop flex row so title + price stack vertically */
  .ProductMeta__TitleWrapper,
  .ProductMeta__Title + .ProductMeta__PriceList,
  .ProductMeta__Wrapper {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-bottom: 0 !important;
  }
  .ProductMeta__Title {
    display: block !important;
    float: none !important;
    width: 100% !important;
    font-size: 18px !important;
    letter-spacing: 0.01em !important;
    line-height: 1.2 !important;
    margin: 0 0 4px 0 !important;
    text-align: center !important;
  }
  .ProductMeta__PriceList,
  .ProductMeta__Price,
  .ProductMeta__PriceList .Price {
    display: block !important;
    float: none !important;
    width: 100% !important;
    font-size: 15px !important;
    text-align: center !important;
    margin-bottom: 0 !important;
  }
  /* Thin divider line below title/price */
  .ProductMeta__Bottom,
  .ProductMeta + hr,
  .ProductMeta__Separator {
    margin: 10px 0 !important;
  }

  /* ââ 7. Form options: center labels + swatch rows ââ */
  .ProductForm__Option {
    margin-top: 14px !important;
    margin-bottom: 0 !important;
  }
  .ProductForm__Label {
    display: block !important;
    text-align: left !important;
    font-size: 10px !important;
    letter-spacing: 0.12em !important;
    margin-bottom: 8px !important;
    margin-top: 0 !important;
  }

  /* ââ 8. Color swatches: centred row ââ */
  .ColorSwatchList:not(.Mobile) {
    display: none !important;
  }
  .Mobile.ColorSwatchList {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    width: 100% !important;
  }
  .Mobile.ColorSwatchList .HorizontalList__Item {
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    width: auto !important;
  }
  .ColorSwatch.ColorSwatch--large {
    width: 60px !important;
    height: 60px !important;
  }

  /* ââ 9. Size pills: left-aligned row ââ */
  .SizeSwatchList {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    margin-top: 0 !important;
  }
  .SizeSwatch {
    min-width: 44px !important;
    height: 36px !important;
    font-size: 11px !important;
  }

  /* ââ 10. ATC button ââ */
  .ProductForm__AddToCart.Button {
    width: 100% !important;
    margin-top: 16px !important;
    height: 50px !important;
    box-sizing: border-box !important;
  }

  /* ââ 11. Accordions â must not be clipped on mobile ââ */
  .WillboAccordions {
    margin-top: 12px !important;
    overflow: visible !important;
  }
  .WillboAccordion {
    overflow: visible !important;
  }
  .WillboAccordion__Body {
    overflow: visible !important;
    /* No max-height cap â full content always shows */
    max-height: none !important;
  }
  .WillboAccordion__Body.is-open {
    display: block !important;
    overflow: visible !important;
  }
  .WillboAccordion__Trigger {
    padding: 12px 0 !important;
    font-size: 11px !important;
  }

  /* ââ 13. Style With section ââ */
  .WillboStyleWith {
    padding: 32px 16px 40px !important;
    margin-top: 0 !important;
  }
  /* Kill any ghost margin/padding between accordions and style-with */
  .WillboAccordions + *,
  .Product__Info > *:last-child {
    margin-bottom: 0 !important;
  }
}

/* âââ Style With Section âââ */
.WillboStyleWith {
  padding: 64px 48px !important;
}
.WillboStyleWith__Heading {
  font-family: "DM Sans", sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  margin-bottom: 24px !important;
  text-align: center !important;
}

/* âââ Mobile Sticky ATC Bar âââ */
.WillboStickyATC {
  display: none;
}

@media (max-width: 999px) {
  .WillboStickyATC {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 900 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 14px !important;
    min-height: 64px !important;
    padding: 10px 16px calc(10px + env(safe-area-inset-bottom)) !important;
    background: rgba(248, 247, 243, 0.96) !important;
    border-top: 1px solid #D9D5CC !important;
    box-shadow: 0 -8px 22px rgba(30, 28, 23, 0.08) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    transform: translateY(110%) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: transform 220ms ease, opacity 220ms ease !important;
  }

  .WillboStickyATC.is-visible {
    transform: translateY(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .WillboStickyATC__Meta {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
  }

  .WillboStickyATC__Title,
  .WillboStickyATC__Price {
    font-family: "Albert Sans", "DM Sans", system-ui, sans-serif !important;
    color: #1E1C17 !important;
  }

  .WillboStickyATC__Title {
    font-size: 12px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .WillboStickyATC__Price {
    font-size: 12px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.01em !important;
    opacity: 0.76 !important;
  }

  .WillboStickyATC__Button {
    min-width: 132px !important;
    height: 42px !important;
    padding: 0 18px !important;
    border: 1px solid #111111 !important;
    background: #111111 !important;
    color: #FFFFFF !important;
    font-family: "Albert Sans", "DM Sans", system-ui, sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.14em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
  }
}

/* AUGUST THEME: PDP mobile conversion polish.
   Keep the hero/product information premium, but avoid pushing the primary
   purchase action too far below the first viewport on product pages. */
@media (max-width: 767px) {
  .Product .Product__Wrapper .Mobile.Product__Gallery .Product__SlideItem .AspectRatio,
  .Mobile.Product__Gallery .AspectRatio,
  .Mobile.Product__Gallery .AspectRatio--withFallback {
    padding-bottom: 110% !important;
  }

  .Product .Product__Wrapper .Product__InfoWrapper .Product__Info,
  .Product__Info {
    padding-top: 8px !important;
  }

  .ProductMeta {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

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

  .ProductForm__Label {
    margin-bottom: 6px !important;
  }

  .ColorSwatch.ColorSwatch--large {
    width: 54px !important;
    height: 54px !important;
  }

  .ProductForm__AddToCart.Button {
    height: 48px !important;
    margin-top: 12px !important;
  }
}


/* ============================================================
   WILLBO: Product Page Accordions â ALD style
   Bottom border only, tight, collapsed by default
   ============================================================ */

.WillboAccordions {
  margin-top: 20px;
}

.WillboAccordion {
  border-bottom: 1px solid #D9D5CC;
}

.WillboAccordion__Trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 14px 0;
  background: none;
  border: none;
  cursor: pointer;
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #111111;
  text-align: left;
}

.WillboAccordion__Icon {
  font-size: 16px;
  font-weight: 300;
  line-height: 1;
  transition: transform 0.2s ease;
  flex-shrink: 0;
}

.WillboAccordion__Trigger[aria-expanded="true"] .WillboAccordion__Icon {
  transform: rotate(45deg);
}

/* Body â hidden by default */
.WillboAccordion__Body {
  display: none;
  padding-bottom: 16px;
}

.WillboAccordion__Body.is-open {
  display: block;
}

.WillboAccordion__Content,
.WillboAccordion__Content p,
.WillboAccordion__Content li {
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.7;
  color: #444444;
  letter-spacing: 0;
}

/* Kill Prestige ::after ring on selected color swatch */
.ColorSwatch__Radio.is-active + .ColorSwatch::after,
.ColorSwatch__Radio:checked + .ColorSwatch::after,
.ColorSwatch__Radio:checked + .ColorSwatch.ColorSwatch--large::after {
  display: none !important;
}

/* ââ NUCLEAR: Mobile product info Container padding kill ââââââââââââââââââ
   Prestige sets .Container { padding: 0 24px } with no media query.
   This override must be at base level AFTER prestige to win the cascade. */
.Product__Info .Container,
.Product__Info .Container--extraNarrow,
.Product__InfoWrapper .Container,
.Product__InfoWrapper .Container--extraNarrow {
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}

/* ââ Collection page: responsive view switcher split ââ */
@media (max-width: 999px) {
  .template-collection .CollectionToolbar__LayoutSwitch.hidden-phone,
  .template-collection button[data-grid-type="desktop"] {
    display: none !important;
  }

  .template-collection .CollectionToolbar__Item--layout,
  .template-collection .CollectionToolbar__LayoutSwitch.hidden-tablet-and-up {
    display: flex !important;
  }
}

/* Static Explore menu: remove legacy slider controls/rail */
.WillboExpControls {
  display: none !important;
}

.WillboExpArrow {
  display: none !important;
  appearance: none !important;
  width: 18px !important;
  height: 16px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-family: var(--w-nav-sans, var(--w-sans)) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  opacity: 0.58 !important;
  transition:
    opacity 180ms ease,
    transform 220ms cubic-bezier(0.5, 0, 0.5, 1) !important;
  pointer-events: auto !important;
}

.WillboExpArrow:hover {
  opacity: 1 !important;
}

.WillboExpArrow--prev:hover {
  transform: translateX(-2px) !important;
}

.WillboExpArrow--next:hover {
  transform: translateX(2px) !important;
}

.WillboExpArrow:disabled {
  opacity: 0.18 !important;
  cursor: default !important;
  transform: none !important;
}

.WillboExpBar {
  display: none !important;
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  height: 1px !important;
  background: #d8d6d0 !important;
  overflow: hidden !important;
  z-index: 10 !important;
  pointer-events: none !important;
}

.WillboExpBarFill {
  display: none !important;
  position: absolute !important;
  top: 0 !important;
  left: 0; /* JS drives this â no !important so inline style wins */
  height: 1px !important;
  width: 26% !important; /* quiet Noah-style thumb */
  background: #111111 !important;
  transition: left 260ms cubic-bezier(0.5, 0, 0.5, 1) !important;
  will-change: left !important;
}

/* âââ Hat Size Guide âââ */
.WillboHatSizeGuide {
  padding: 4px 0 8px;
}
.WillboHatSizeGuide__Measure {
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #888580;
  line-height: 1.6;
  margin: 0 0 20px;
}
.WillboHatSizeGuide__Table {
  width: 100%;
  border-collapse: collapse;
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  letter-spacing: 0.06em;
}
.WillboHatSizeGuide__Table thead th {
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #111111;
  padding: 0 0 10px;
  border-bottom: 1px solid #D9D5CC;
  text-align: left;
}
.WillboHatSizeGuide__Table thead th:first-child {
  width: 28%;
}
.WillboHatSizeGuide__Table tbody tr {
  border-bottom: 1px solid #E8E4DC;
}
.WillboHatSizeGuide__Table tbody tr:last-child {
  border-bottom: none;
}
.WillboHatSizeGuide__Table tbody td {
  padding: 11px 0;
  color: #111111;
  font-weight: 300;
  vertical-align: middle;
}
.WillboHatSizeGuide__Label {
  font-weight: 500 !important;
  letter-spacing: 0.12em;
  color: #888580 !important;
  font-size: 10px !important;
  text-transform: uppercase;
}
.WillboHatSizeGuide__Note {
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  font-weight: 400;
  color: #888580;
  margin: 16px 0 0;
  font-style: italic;
  letter-spacing: 0.02em;
}

/* âââ Hat Fit Guide â visual spectrum bars âââ */
.WillboFitGuide {
  padding: 4px 0 20px;
}
.WillboFitGuide__StyleRow {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}
.WillboFitGuide__StyleLabel {
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #111111;
  white-space: nowrap;
}
.WillboFitGuide__StyleChip {
  display: inline-block;
  padding: 4px 12px;
  border: 1px solid #111111;
  font-family: "DM Sans", sans-serif;
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #111111;
}
.WillboFitGuide__Attr {
  margin-bottom: 20px;
}
.WillboFitGuide__AttrName {
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #111111;
  margin-bottom: 10px;
}
/* Track: grey base, black fill left of pill via linear-gradient */
.WillboFitGuide__Track {
  position: relative;
  height: 3px;
  border-radius: 0;
  margin-bottom: 8px;
  /* filled dynamically via inline style background */
  background: #D9D5CC;
}
.WillboFitGuide__Pill {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #111111;
  border: 2px solid #ffffff;
  box-shadow: 0 1px 4px rgba(0,0,0,0.2);
}
.WillboFitGuide__Labels {
  display: flex;
  justify-content: space-between;
  font-family: "DM Sans", sans-serif;
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #888580;
}
.WillboFitGuide__Divider {
  border: none;
  border-top: 1px solid #D9D5CC;
  margin: 24px 0;
}
/* Size table â grey background block */
.WillboHatSizeGuide {
  background: #F5F3EE;
  padding: 18px 16px 16px;
}
.WillboHatSizeGuide__Measure {
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  font-weight: 400;
  color: #888580;
  line-height: 1.6;
  margin: 0 0 16px;
}
.WillboHatSizeGuide__Table {
  width: 100%;
  border-collapse: collapse;
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  letter-spacing: 0.04em;
}
.WillboHatSizeGuide__Table thead th {
  font-size: 9px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #888580;
  padding: 0 0 8px;
  border-bottom: 1px solid #D9D5CC;
  text-align: left;
}
.WillboHatSizeGuide__Table thead th:first-child {
  width: 26%;
}
.WillboHatSizeGuide__Table tbody tr {
  border-bottom: 1px solid #E8E4DC;
}
.WillboHatSizeGuide__Table tbody tr:last-child {
  border-bottom: none;
}
.WillboHatSizeGuide__Table tbody td {
  padding: 9px 0;
  color: #111111;
  font-weight: 300;
  font-size: 11px;
}
.WillboHatSizeGuide__Label {
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #888580 !important;
}
.WillboHatSizeGuide__Note {
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 400;
  color: #888580;
  margin: 12px 0 0;
  font-style: italic;
}


/* accordion-expanded class no longer needed â right panel is its own scroll container */

/* Remove border line under product title / price row */
.ProductMeta,
.ProductMeta__Wrapper,
.ProductMeta__TitleWrapper {
  border-bottom: none !important;
}
.ProductMeta::after,
.ProductMeta__Wrapper::after,
.ProductMeta__TitleWrapper::after {
  border: none !important;
}




/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   WILLBO STORIES â Editorial blog index
   Surfer's Journal / Tom Adler feel
   Editorial masthead (kicker + oversized title + rule + blurb) â 3-col grid
   White background, DM Sans, restrained type hierarchy
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* ââ PAGE WRAPPER âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.willbo-stories-section {
  background: #ffffff;
  border: none !important;
  outline: none !important;
}

.WillboStories {
  font-family: var(--w-sans);
  background: #ffffff;
  min-height: 60vh;
}

/* ââ HERO âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboStories__Hero {
  position: relative;
  margin: 24px 24px 0;
  overflow: hidden;
}

.WillboStories__HeroImgWrap {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 7;
  overflow: hidden;
  min-height: 320px;
  max-height: 600px;
}

.WillboStories__HeroImg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.WillboStories__HeroText {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.WillboStories__HeroTitle {
  font-family: var(--w-sans);
  font-size: clamp(40px, 6vw, 80px);
  font-weight: 300;
  letter-spacing: -0.03em;
  line-height: 1;
  color: #ffffff;
  margin: 0;
}

/* ââ BLURB ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboStories__Blurb {
  padding: 40px 24px 56px;
}

.WillboStories__Blurb p {
  font-family: var(--w-sans);
  font-size: 15px;
  font-weight: 300;
  line-height: 1.75;
  color: var(--w-mid, #888580);
  max-width: 600px;
  margin: 0;
  letter-spacing: 0.01em;
}

/* ââ GRID âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboStories__Grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 10px;
  row-gap: 56px;
  padding: 0 24px 100px;
}

/* ââ CARD âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboStories__Card {
  display: flex;
  flex-direction: column;
}

.WillboStories__CardLink {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
}

.WillboStories__CardImgWrap {
  display: block;
  overflow: hidden;
  aspect-ratio: 3 / 2;
  margin-bottom: 12px;
  background: var(--w-sand, #E8E4DC);
}

.WillboStories__CardImgPlaceholder {
  width: 100%;
  height: 100%;
  background: var(--w-sand, #E8E4DC);
}

.WillboStories__CardImg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.WillboStories__CardLink:hover .WillboStories__CardImg {
  transform: scale(1.03);
}

/* ââ CARD TEXT ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboStories__CardBody {
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 0;
}

.WillboStories__CardTag {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.22em;
  color: var(--w-mid, #888580);
  display: block;
  text-transform: uppercase;
}

.WillboStories__CardTitle {
  font-family: var(--w-sans);
  font-size: 16px;
  font-weight: 300;
  letter-spacing: -0.01em;
  line-height: 1.35;
  margin: 0;
  color: var(--w-black, #111111);
}

.WillboStories__CardDate {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 0.14em;
  color: var(--w-mid, #888580);
  text-transform: uppercase;
}

/* ââ EMPTY ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboStories__Empty {
  padding: 80px 64px 120px;
  text-align: center;
  font-size: 13px;
  font-family: var(--w-sans);
  color: var(--w-mid);
  letter-spacing: 0.1em;
}

/* ââ PAGINATION âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboStories__Pagination {
  padding: 0 64px 80px;
  text-align: center;
}

/* ââ TABLET âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
@media screen and (max-width: 999px) {
  .WillboStories__Hero {
    margin: 16px 0 0;
  }

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

  .WillboStories__HeroText {
    bottom: 24px;
    left: 24px;
    text-align: left;
  }

  .WillboStories__Blurb {
    padding: 32px 16px 48px;
  }

  .WillboStories__Grid {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 16px;
    row-gap: 64px;
    padding: 0 16px 80px;
  }
}

/* ââ MOBILE âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
@media screen and (max-width: 599px) {
  .WillboStories__Hero {
    margin: 0;
  }

  .WillboStories__HeroImgWrap {
    aspect-ratio: 4 / 3;
  }

  .WillboStories__HeroTitle {
    font-size: clamp(32px, 8vw, 48px);
  }

  .WillboStories__HeroText {
    bottom: 20px;
    left: 20px;
  }

  .WillboStories__Blurb {
    padding: 28px 20px 44px;
  }

  .WillboStories__Blurb p {
    font-size: 14px;
  }

  .WillboStories__Grid {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 36px;
    padding: 0 0 64px;
  }

  .WillboStories__CardBody {
    padding: 0 16px;
  }

  .WillboStories__CardTitle {
    font-size: 15px;
  }
}

/* ââ END WILLBO STORIES âââââââââââââââââââââââââââââââââââââââââââââââââââââ */


/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   WILLBO EXPERIENCE â Editorial event calendar
   Hero + Upcoming / Past split list
   Surfer's Journal editorial feel â date, image, title, description
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* ââ PAGE WRAPPER âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.willbo-experience-section {
  background: #ffffff;
  border: none !important;
  outline: none !important;
}

.WillboExperience {
  font-family: var(--w-sans);
  background: #ffffff;
  min-height: 60vh;
}

/* ââ HERO âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboExp__Hero {
  position: relative;
  margin: 24px 24px 0;
  overflow: hidden;
}

.WillboExp__HeroImgWrap {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 7;
  overflow: hidden;
  min-height: 320px;
  max-height: 600px;
}

.WillboExp__HeroImg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.WillboExp__HeroText {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.WillboExp__HeroTitle {
  font-family: var(--w-sans);
  font-size: clamp(40px, 6vw, 80px);
  font-weight: 300;
  letter-spacing: -0.03em;
  line-height: 1;
  color: #ffffff;
  margin: 0;
}

/* No-image masthead fallback */
.WillboExp__MastheadText {
  padding: 72px 24px 0;
  text-align: center;
}

.WillboExp__MastheadTitle {
  font-family: var(--w-sans);
  font-size: clamp(40px, 6vw, 80px);
  font-weight: 300;
  letter-spacing: -0.03em;
  line-height: 1;
  color: var(--w-black, #111111);
  margin: 0;
}

/* ââ BLURB ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboExp__Blurb {
  padding: 40px 24px 56px;
}

.WillboExp__Blurb p {
  font-family: var(--w-sans);
  font-size: 15px;
  font-weight: 300;
  line-height: 1.75;
  color: var(--w-mid, #888580);
  max-width: 600px;
  margin: 0;
  letter-spacing: 0.01em;
}

/* ââ SECTION (upcoming / past) ââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboExp__Section {
  padding: 0 24px 80px;
}

.WillboExp__Section--past {
  padding-top: 16px;
}

.WillboExp__SectionHeader {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 40px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--w-border, #D9D5CC);
}

.WillboExp__SectionLabel {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--w-black, #111111);
  white-space: nowrap;
}

.WillboExp__SectionRule {
  flex: 1;
  height: 0;
}

/* ── EVENT LIST — 2-col editorial grid (Option A) ─────────────────────────── */
.WillboExp__List {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 40px;
  row-gap: 64px;
}

/* ── EVENT ITEM — stacked: date eyebrow → image → body ────────────────────── */
.WillboExp__Item {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 0;
  border-bottom: none;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.25s ease;
}

.WillboExp__Item:hover {
  opacity: 0.85;
}

.WillboExp__Item:hover .WillboExp__ItemImg {
  transform: scale(1.02);
}

.WillboExp__Item--past {
  opacity: 0.55;
}

.WillboExp__Item--past:hover {
  opacity: 0.8;
}

/* ── DATE EYEBROW (horizontal above image) ────────────────────────────────── */
.WillboExp__ItemDate {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  gap: 12px;
  padding-top: 0;
  padding-bottom: 4px;
  border-bottom: 1px solid var(--w-border, #D9D5CC);
  padding-bottom: 12px;
}

.WillboExp__ItemMonth {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.22em;
  color: var(--w-black, #111111);
  display: block;
  margin-bottom: 0;
  text-transform: uppercase;
}

.WillboExp__ItemDay {
  font-family: var(--w-sans);
  font-size: 32px;
  font-weight: 300;
  letter-spacing: -0.01em;
  line-height: 1;
  color: var(--w-black, #111111);
}

/* ── IMAGE — big 4:3 hero ─────────────────────────────────────────────────── */
.WillboExp__ItemImgWrap {
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--w-sand, #E8E4DC);
  width: 100%;
}

.WillboExp__ItemImg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

/* ── BODY — title, excerpt, CTA ───────────────────────────────────────────── */
.WillboExp__ItemBody {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-top: 4px;
}

.WillboExp__ItemTitle {
  font-family: var(--w-sans);
  font-size: 22px;
  font-weight: 300;
  letter-spacing: -0.01em;
  line-height: 1.25;
  color: var(--w-black, #111111);
  margin: 0;
}

.WillboExp__ItemExcerpt {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  line-height: 1.65;
  color: var(--w-mid, #888580);
  margin: 0;
  max-width: 100%;
}

.WillboExp__ItemCta {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--w-black, #111111);
  margin-top: 4px;
}

.WillboExp__ItemCta--rsvp {
  font-weight: 700;
  border-bottom: 1px solid currentColor;
  padding-bottom: 2px;
  align-self: flex-start;
}

/* ── EMPTY ────────────────────────────────────────────────────────────────── */
.WillboExp__Empty {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-mid, #888580);
  letter-spacing: 0.08em;
  padding: 24px 0 48px;
}

/* ── TABLET (<=999px still 2-col, tighter) ────────────────────────────────── */
@media screen and (max-width: 999px) {
  .WillboExp__Hero {
    margin: 16px 16px 0;
  }
  .WillboExp__List {
    column-gap: 24px;
    row-gap: 48px;
  }
  .WillboExp__ItemTitle {
    font-size: 18px;
  }
  .WillboExp__ItemDay {
    font-size: 28px;
  }
}

/* ── MOBILE (<=749px collapse to 1 col, Noah-style) ───────────────────────── */
@media screen and (max-width: 749px) {
  .WillboExp__List {
    grid-template-columns: 1fr;
    row-gap: 40px;
  }
  .WillboExp__Item {
    gap: 16px;
  }
  .WillboExp__ItemTitle {
    font-size: 20px;
  }
  .WillboExp__ItemDay {
    font-size: 32px;
  }
  .WillboExp__ItemDate {
    padding-bottom: 10px;
  }
}

/* ── SMALL MOBILE ─────────────────────────────────────────────────────────── */
@media screen and (max-width: 599px) {
  .WillboExp__Hero {
    margin: 0;
  }
  .WillboExp__Blurb {
    padding: 24px 20px 28px;
  }
  .WillboExp__SectionHeader {
    margin-bottom: 24px;
  }
  .WillboExp__Section {
    padding: 0 20px 60px;
  }
  .WillboExp__ItemTitle {
    font-size: 18px;
  }
}


/* ââ END WILLBO EXPERIENCE ââââââââââââââââââââââââââââââââââââââââââââââââââ */


/* ââ WILLBO EVENT ARTICLE ââââââââââââââââââââââââââââââââââââââââââââââââââââ
   Individual event page â Tom Adler / ALD editorial restraint
   No Prestige toolbar / comments / share buttons
   ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.WillboEventArticle {
  background: var(--w-white, #ffffff);
  padding-bottom: 120px;
}

/* Inner container â constrains everything to the same width column */
.WillboEA__Inner {
  max-width: 1440px;
  margin: 0 auto;
  overflow: hidden; /* prevents hero bleed past right edge */
}

/* ââ BACK LINK âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboEA__Back {
  padding: 40px 48px 0;  /* generous top â breathes under the nav */
}

.WillboEA__BackLink {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
  text-decoration: none;
  transition: color 0.2s ease;
}

.WillboEA__BackLink:hover {
  color: var(--w-black, #111111);
}

.WillboEA__BackArrow {
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0;
  line-height: 1;
  opacity: 0.6;
}

/* ââ HERO IMAGE ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboEA__HeroWrap {
  position: relative;
  margin: 20px 48px 0;
  aspect-ratio: 16 / 7;
  min-height: 320px;
  max-height: 600px;
  overflow: hidden;
  background: var(--w-sand, #E8E4DC);
}

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

/* Badge â minimal, no box, just quiet type sitting on the image */
.WillboEA__HeroBadge {
  position: absolute;
  bottom: 18px;
  left: 20px;
  font-family: var(--w-sans);
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--w-white, #ffffff);
  /* soft text shadow so it reads over any photo */
  text-shadow: 0 1px 8px rgba(0,0,0,0.45);
}

.WillboEA__HeroBadge--past {
  opacity: 0.6;
}

/* ââ META BLOCK ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
/* Desktop: title left, date block right â uses the negative space */
.WillboEA__Meta {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 48px;
  padding: 52px 48px 0;
  align-items: start;
}

/* Left column: title, excerpt, CTA */
.WillboEA__MetaRight {
  display: flex;
  flex-direction: column;
  gap: 16px;
  /* stays in DOM order first â grid order handles position */
  order: 1;
}

/* Right column: date sits in the white space */
.WillboEA__DateBlock {
  order: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-end;  /* right-aligned text */
  padding-top: 8px;
  border-top: 1px solid var(--w-border, #D9D5CC);
  min-width: 120px;
}

.WillboEA__DateMonth {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.26em;
  color: var(--w-mid, #888580);
  display: block;
  margin-bottom: 4px;
  margin-top: 12px;
  text-align: right;
}

.WillboEA__DateDay {
  font-family: var(--w-sans);
  font-size: 110px;
  font-weight: 200;
  letter-spacing: -0.05em;
  line-height: 0.85;
  color: var(--w-black, #111111);
  display: block;
  margin-bottom: 8px;
  text-align: right;
}

.WillboEA__DateYear {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: #C0392B;  /* red accent */
  display: block;
  text-align: right;
  margin-top: 6px;
}

.WillboEA__Title {
  font-family: var(--w-sans);
  font-size: clamp(26px, 3.6vw, 48px);
  font-weight: 300;
  letter-spacing: -0.025em;
  line-height: 1.08;
  color: var(--w-black, #111111);
  margin: 0;
}

.WillboEA__Excerpt {
  font-family: var(--w-sans);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.7;
  color: var(--w-mid, #888580);
  margin: 0;
  max-width: 520px;
}

/* ââ TICKET CTA ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboEA__CtaWrap {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-top: 4px;
  flex-wrap: wrap;
}

/* Outlined button â ALD / Tom Adler restraint */
.WillboEA__CtaBtn {
  display: inline-block;
  background: transparent;
  color: var(--w-black, #111111);
  border: 1px solid var(--w-black, #111111);
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 11px 28px;
  transition: background 0.2s ease, color 0.2s ease;
  white-space: nowrap;
}

.WillboEA__CtaBtn:hover {
  background: var(--w-black, #111111);
  color: var(--w-white, #ffffff);
}

.WillboEA__CtaBtn--closed {
  position: relative;
  color: var(--w-mid, #888580);
  border-color: var(--w-border, #D9D5CC);
  cursor: default;
  pointer-events: none;
}

.WillboEA__CtaBtn--closed::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  top: 50%;
  height: 1px;
  background: currentColor;
  transform: translateY(-50%);
  opacity: 0.75;
}

.WillboEA__CtaBtn--closed:hover {
  background: transparent;
  color: var(--w-mid, #888580);
}

.WillboEA__CtaNote {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 300;
  color: var(--w-mid, #888580);
  letter-spacing: 0.06em;
}

/* ââ RULE ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboEA__Rule {
  height: 1px;
  background: var(--w-border, #D9D5CC);
  margin: 56px 48px 56px 48px;  /* even top and bottom breathing room */
}

/* ââ BODY CONTENT ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboEA__Body {
  padding: 0 48px 0 128px;  /* 80px date col + 40px gap + 8px optical indent */
  max-width: 860px;
}

.WillboEA__Body p,
.WillboEA__Body li {
  font-family: var(--w-sans);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  color: var(--w-black, #111111);
  margin: 0 0 20px;
}

.WillboEA__Body h2 {
  font-family: var(--w-sans);
  font-size: 18px;
  font-weight: 300;
  letter-spacing: -0.01em;
  color: var(--w-black, #111111);
  margin: 44px 0 14px;
}

.WillboEA__Body h3 {
  font-family: var(--w-sans);
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
  margin: 36px 0 10px;
}

.WillboEA__Body a {
  color: var(--w-black, #111111);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: var(--w-border, #D9D5CC);
}

.WillboEA__Body img {
  width: 100%;
  height: auto;
  display: block;
  margin: 36px 0;
}

/* ââ BOTTOM BACK âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboEA__BottomBack {
  padding: 64px 48px 0;
}

/* ââ TABLET ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
@media screen and (max-width: 999px) {
  .WillboEA__Back,
  .WillboEA__BottomBack {
    padding-left: 32px;
    padding-right: 32px;
  }

  .WillboEA__HeroWrap {
    margin: 20px 32px 0;
  }

  .WillboEA__Meta {
    padding: 40px 32px 0;
    gap: 32px;
  }

  .WillboEA__DateDay {
    font-size: 80px;
  }

  .WillboEA__Rule {
    margin: 36px 32px;
  }

  .WillboEA__Body {
    padding: 0 32px;
  }
}

/* ââ MOBILE ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
@media screen and (max-width: 599px) {
  .WillboEA__Back {
    padding: 28px 20px 0;
  }

  .WillboEA__BottomBack {
    padding-left: 20px;
    padding-right: 20px;
  }

  /* Hero: full bleed on mobile, 4:3 ratio */
  .WillboEA__HeroWrap {
    margin: 16px 0 0;
    aspect-ratio: 4 / 3;
  }

  /* Meta block: single column, date row sits cleanly above the title */
  .WillboEA__Meta {
    display: flex;
    flex-direction: column;
    padding: 28px 20px 0;
    gap: 0;
  }

  /* Date row first on mobile â small, spaced, above the title */
  .WillboEA__DateBlock {
    order: 1;
    flex-direction: row;
    align-items: baseline;
    gap: 8px;
    border-top: none;
    border-bottom: 1px solid var(--w-border, #D9D5CC);
    padding-top: 0;
    padding-bottom: 14px;
    margin-bottom: 20px;
    min-width: unset;
  }

  .WillboEA__DateMonth {
    font-size: 9px;
    margin-top: 0;
    margin-bottom: 0;
    text-align: left;
    letter-spacing: 0.22em;
  }

  /* Day: medium size â editorial but not overpowering */
  .WillboEA__DateDay {
    font-size: 28px;
    font-weight: 300;
    margin-bottom: 0;
    text-align: left;
    line-height: 1;
  }

  /* Year in red â stays visible on mobile */
  .WillboEA__DateYear {
    display: block;
    font-size: 9px;
    letter-spacing: 0.16em;
    margin-top: 0;
    text-align: left;
    color: #C0392B;
  }

  /* Title right after date row */
  .WillboEA__MetaRight {
    order: 2;
  }

  .WillboEA__Title {
    font-size: clamp(22px, 7vw, 32px);
  }

  /* Rule: even 40px above and below */
  .WillboEA__Rule {
    margin: 40px 20px;
  }

  .WillboEA__Body {
    padding: 0 20px;
  }

  /* CTA: auto width, left-aligned on mobile */
  .WillboEA__CtaBtn {
    width: auto;
    display: inline-block;
    text-align: center;
    padding: 14px 40px;
  }

  .WillboEA__CtaWrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin-top: 16px;
  }

  .WillboEA__CtaNote {
    text-align: center;
  }
}

/* ââ END WILLBO EVENT ARTICLE ââââââââââââââââââââââââââââââââââââââââââââââââ */

/* MOBILE STICKY TITLE â handled by position:fixed on .ProductMeta in mobile media query */


/* ââ SEARCH BAR ââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.Search__Inner {
  padding: 0 !important;
  margin: 0 !important;
}

.Search__SearchBar {
  padding: 0 18px !important;
  margin: 0 !important;
  height: var(--w-nav-h, 72px);
  display: flex;
  align-items: center;
  border-top: none !important;
}

.Search {
  margin-top: 0 !important;
  border-top: none !important;
}

/* ââ LINKLIST LABELS (OUR STORY / STORES / JOURNAL) ââââââââââââââââââ */
.LinkItem__Title.Heading {
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
}

/* ââ WILLBO CIRCLE âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

.WillboCircle {
  overflow: hidden;
}

/* ââ Opening spread â full-bleed, breaks out of page padding ââââââââââââââ */
.WillboCircle__Spread {
  width: calc(100% + 80px);
  margin-left: -40px;
  aspect-ratio: 16 / 7;
  min-height: 300px;
  max-height: 600px;
  overflow: hidden;
  margin-bottom: 0;
}

.WillboCircle__SpreadImg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 40%;
  display: block;
}

/* ââ Chapter heading â rule / CIRCLE / rule ââââââââââââââââââââââââââââââââ */
.WillboCircle__Chapter {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 28px 0 24px;
}

.WillboCircle__ChapterRule {
  flex: 1;
  height: 1px;
  background: var(--w-border, #D9D5CC);
}

.WillboCircle__ChapterTitle {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.28em;
  color: var(--w-black, #111);
  white-space: nowrap;
  flex-shrink: 0;
}

/* ââ Athletes wrapper ââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboCircle__Athletes {
  padding: 0 0 80px;
}

/* ââ Athlete card â text LEFT 33% / photo RIGHT 67%, locked landscape ââââââ */
.WillboCircle__Athlete {
  display: grid;
  grid-template-columns: 33% 67%;
  overflow: hidden;
}

/* ââ Text panel â LEFT, cream bg, generous internal padding âââââââââââââââ */
.WillboCircle__Panel {
  background: var(--w-cream, #F5F3EE);
  padding: 40px 40px 40px 48px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 0;
  overflow: hidden;
}

/* ââ Foot â bio + CTA flow naturally after Q&A, no push ââââââââââââââââââ */
.WillboCircle__Foot {
  margin-top: 0;
  padding-top: 0;
}

/* ââ Name â very large, very light, at the very top âââââââââââââââââââââââ */
.WillboCircle__Name {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: clamp(40px, 3.6vw, 72px);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: var(--w-black, #111);
  margin: 0 0 12px;
  line-height: 1.0;
}

/* ââ Descriptor ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboCircle__Descriptor {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 300;
  letter-spacing: 0.02em;
  color: #C0392B;
  margin: 0 0 20px;
}

/* ââ Q&A âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboCircle__QA {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 16px;
}

.WillboCircle__QItem {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.WillboCircle__Q {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 12px;
  font-weight: 500;
  color: var(--w-black, #111);
  margin: 0;
}

.WillboCircle__A {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 12px;
  font-weight: 300;
  line-height: 1.85;
  color: var(--w-mid, #888580);
  margin: 0;
}

/* ââ Bio â primary athlete description, flows from descriptor âââââââââââââââ */
.WillboCircle__Bio {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 13px;
  font-weight: 300;
  line-height: 1.85;
  color: var(--w-mid, #888580);
  margin: 0 0 16px;
}

/* ââ CTA â solid black button, restrained left-aligned fixed width âââââââââ */
.WillboCircle__CTA {
  display: inline-block;
  padding: 13px 24px;
  background: var(--w-black, #111);
  color: var(--w-white, #fff);
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-decoration: none;
  text-align: center;
  transition: opacity 0.2s ease;
  align-self: flex-start;
}

.WillboCircle__CTA:hover { opacity: 0.65; }

/* ââ Photo col â RIGHT, landscape aspect ratio, wall-to-wall ââââââââââââââ */
.WillboCircle__Photo {
  overflow: hidden;
  background: var(--w-sand, #E8E4DC);
  aspect-ratio: 4 / 3;
}

.WillboCircle__Photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
  filter: saturate(0.9) contrast(1.03);
  transition: transform 1.2s ease;
}

.WillboCircle__Athlete:hover .WillboCircle__Photo img {
  transform: scale(1.02);
}

/* ââ Mobile ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
@media screen and (max-width: 767px) {
  .WillboCircle__Spread {
    width: 100%;
    margin-left: 0;
    aspect-ratio: 4 / 3;
    max-height: none;
  }

  .WillboCircle__Chapter {
    padding: 20px 0 16px;
  }

  .WillboCircle__Athletes {
    padding: 0 0 60px;
  }

  /* Stack: photo top, text below */
  .WillboCircle__Athlete {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    min-height: unset;
    max-height: none;
    overflow: visible;
  }

  /* Photo goes first (row 1) on mobile */
  .WillboCircle__Photo {
    order: -1;
    aspect-ratio: 3 / 4;
  }

  .WillboCircle__Panel {
    padding: 32px 24px 48px;
    justify-content: flex-start;
    overflow: visible;
  }

  .WillboCircle__Foot {
    margin-top: 28px;
    padding-top: 0;
  }

  .WillboCircle__Name {
    font-size: clamp(36px, 10vw, 52px);
  }

  .WillboCircle__Descriptor {
    margin-bottom: 24px;
  }

  .WillboCircle__QA {
    display: flex;
    margin-bottom: 16px;
  }
}

/* ââ END WILLBO CIRCLE âââââââââââââââââââââââââââââââââââââââââââââââââââââââ */


/* ââ WILLBO PROFILE ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* ââ 1. Hero â full bleed, tucks to nav âââââââââââââââââââââââââââââââââââ */
.WillboProfile__Hero {
  position: relative;
  width: calc(100% + 80px);
  margin-left: -40px;
  margin-top: 0;
  aspect-ratio: 21 / 9;
  overflow: hidden;
}

.WillboProfile__HeroImg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  filter: saturate(0.88) contrast(1.05);
}

.WillboProfile__HeroOverlay {
  position: absolute;
  bottom: 48px;
  left: 64px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.WillboProfile__HeroName {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: clamp(48px, 5vw, 88px);
  font-weight: 300;
  letter-spacing: 0;
  color: var(--w-white, #fff);
  margin: 0 0 8px;
  line-height: 1.0;
  text-shadow: 0 2px 24px rgba(0,0,0,0.3);
  display: block;
  margin-left: -4px;
}

.WillboProfile__HeroDescriptor {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: clamp(20px, 2vw, 36px);
  font-weight: 300;
  letter-spacing: 0;
  color: #C0392B;
  margin: 0;
  text-transform: none;
  display: block;
}

/* ââ 2. Vitals row âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboProfile__Vitals {
  display: flex;
  gap: 0;
  margin-top: 0;
  padding-left: 40px;
  border-top: 1px solid var(--w-border);
  border-bottom: none;
}

.WillboProfile__Rule {
  height: 1px;
  background: var(--w-border);
  margin: 0 40px;
}

.WillboProfile__Vital {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 40px 24px 36px;
  border-right: 1px solid var(--w-border, #D9D5CC);
}

.WillboProfile__Vital:first-child {
  padding-left: 0;
}

.WillboProfile__Vital:last-child {
  border-right: none;
  padding-right: 0;
}

.WillboProfile__VitalLabel {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
}

.WillboProfile__VitalValue {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-black, #111);
  letter-spacing: 0.01em;
}

/* ââ 3. Feature bio ââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboProfile__Body {
  padding: 96px 0 0;
  display: flex;
  justify-content: center;
}

.WillboProfile__BodyInner {
  width: 58%;
}

.WillboProfile__BodyInner p {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 15px;
  font-weight: 300;
  line-height: 1.9;
  color: var(--w-black, #111);
  margin: 0 0 24px;
}

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

/* ââ 4. Pull quote âââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboProfile__PullQuote {
  padding: 100px 0;
  display: flex;
  justify-content: center;
}

.WillboProfile__Quote {
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: clamp(22px, 2.4vw, 36px);
  font-weight: 300 !important;
  font-style: normal !important;
  line-height: 1.45;
  color: var(--w-black, #111);
  letter-spacing: -0.01em;
  text-align: center;
  max-width: 680px;
  margin: 0;
  font-style: italic;
}

/* ââ 5. Q&A ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboProfile__QA {
  padding: 80px 40px 0;
}

.WillboProfile__QAInner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px 80px;
}

.WillboProfile__QItem {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.WillboProfile__Q {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--w-black, #111);
  margin: 0;
  text-transform: uppercase;
}

.WillboProfile__A {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.85;
  color: var(--w-mid, #888580);
  margin: 0;
}

/* ââ 6. Gallery strip ââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboProfile__Gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  margin-top: 72px;
  width: calc(100% + 80px);
  margin-left: -40px;
}

.WillboProfile__GalleryItem {
  aspect-ratio: 3 / 4;
  overflow: hidden;
}

.WillboProfile__GalleryItem img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(0.85) contrast(1.04);
}

/* ââ 7. Quiver ticker ââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboProfile__QuiverTicker {
  display: inline-block;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.WillboProfile__QuiverTicker--out {
  opacity: 0;
  transform: translateY(-6px);
}

.WillboProfile__QuiverTicker--in {
  opacity: 1;
  transform: translateY(0);
  animation: quiverFadeIn 0.4s ease forwards;
}

@keyframes quiverFadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ââ 8. Video ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboProfile__Video {
  padding: 80px 40px 40px;
}

.WillboProfile__VideoLabel {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
  margin: 0 0 20px;
}

.WillboProfile__VideoEmbed {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* 16:9 */
  background: var(--w-black, #111111);
}

.WillboProfile__VideoEmbed iframe,
.WillboProfile__VideoEmbed video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
  object-fit: cover;
  display: block;
}

/* ââ 8. Back link ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboProfile__Back {
  padding: 64px 0 96px 40px;
  border-top: 1px solid var(--w-border, #D9D5CC);
  margin-top: 40px;
}

.WillboProfile__BackLink {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: var(--w-black, #111);
  text-decoration: none;
  text-transform: uppercase;
}

.WillboProfile__BackLink:hover {
  opacity: 0.5;
}

/* ââ Mobile ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
@media screen and (max-width: 767px) {
  .WillboProfile__Hero {
    width: 100%;
    margin-left: 0;
    aspect-ratio: 4 / 3;
  }

  .WillboProfile__HeroOverlay {
    bottom: 24px;
    left: 20px;
  }

  .WillboProfile__HeroName {
    font-size: clamp(28px, 8vw, 44px);
    margin-left: -2px;
  }

  .WillboProfile__HeroDescriptor {
    font-size: clamp(14px, 4vw, 22px);
  }

  .WillboProfile__Vitals {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 18px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .WillboProfile__Vital {
    position: relative;
    width: 100%;
    padding: 22px 0 20px;
    border-right: none;
    border-bottom: none;
  }

  .WillboProfile__Vital--pursuits {
    grid-column: 2;
    grid-row: 2;
  }

  .WillboProfile__Vital--quiver {
    grid-column: 1 / -1;
    grid-row: 3;
    border-bottom: none !important;
    padding-bottom: 24px !important;
  }

  .WillboProfile__Vital:not(.WillboProfile__Vital--quiver) {
    border-bottom: 1px solid var(--w-border, #D9D5CC);
  }

  .WillboProfile__Vital:first-child::after,
  .WillboProfile__Vital:nth-child(3)::after {
    content: "";
    position: absolute;
    left: 100%;
    bottom: -1px;
    width: 18px;
    border-bottom: 1px solid var(--w-border, #D9D5CC);
  }

  .WillboProfile__Vital--quiver .WillboProfile__VitalValue {
    max-width: 100%;
  }

  .WillboProfile__VitalLabel {
    font-size: 10px;
    letter-spacing: 0.17em;
  }

  .WillboProfile__VitalValue {
    font-size: 18px;
    line-height: 1.35;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  /* Rule sits outside vitals with matching side padding */
  .WillboProfile__Rule {
    margin: 0 20px;
  }

  .WillboProfile__Body {
    padding: 48px 20px 0;
    justify-content: flex-start;
  }

  .WillboProfile__BodyInner {
    width: 100%;
  }

  .WillboProfile__PullQuote {
    padding: 48px 20px;
  }

  .WillboProfile__QA {
    padding: 56px 20px 0;
  }

  .WillboProfile__QAInner {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .WillboProfile__Gallery {
    grid-template-columns: repeat(2, 1fr);
    width: 100%;
    margin-left: 0;
    margin-top: 48px;
  }

  .WillboProfile__Video {
    padding: 56px 20px 56px;
  }

  .WillboProfile__Back {
    padding: 40px 0 60px 20px;
    margin-top: 48px;
  }
}

/* ââ END WILLBO PROFILE ââââââââââââââââââââââââââââââââââââââââââââââââââââââ */


/* ââ WILLBO TRADING CARDS ââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* ââ 1. Hero âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboTC__Hero {
  position: relative;
  width: 100%;
  aspect-ratio: 21 / 9;
  overflow: hidden;
  background: var(--w-black, #111111);
}

.WillboTC__HeroImg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.WillboTC__HeroPlaceholder {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #111 100%);
}

.WillboTC__HeroVideo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

/* ââ Intro band (below video) ââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboTC__Intro {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  padding: 56px 40px 64px;
  border-bottom: 1px solid var(--w-border, #D9D5CC);
}

.WillboTC__IntroLeft {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.WillboTC__IntroRight {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 24px;
}

.WillboTC__HeroEyebrow {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #C0392B;
  margin: 0 0 12px;
}

.WillboTC__HeroTitle {
  font-family: var(--w-sans, "DM Sans", sans-serif) !important;
  font-size: clamp(22px, 2.2vw, 36px);
  font-weight: 400;
  font-style: normal !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--w-black, #111111);
  line-height: 1;
  margin: 0;
}

.WillboTC__HeroSub {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: clamp(13px, 1.1vw, 15px);
  font-weight: 300;
  line-height: 1.65;
  color: var(--w-mid, #888580);
  margin: 0;
}

.WillboTC__HeroLinks {
  display: flex;
  gap: 12px;
  align-items: center;
}

.WillboTC__ListenBtn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 10px 20px;
  border: 1px solid var(--w-black, #111111);
  color: var(--w-black, #111111);
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}

.WillboTC__ListenBtn:hover {
  background: var(--w-black, #111111);
  color: var(--w-white, #ffffff);
}

/* ââ 2. Episode Grid âââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboTC__Grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  border-left: 1px solid var(--w-border, #D9D5CC);
  border-top: 1px solid var(--w-border, #D9D5CC);
  margin: 64px 40px 96px;
}

/* ââ 3. Card âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboTC__Card {
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--w-border, #D9D5CC);
  border-bottom: 1px solid var(--w-border, #D9D5CC);
  transition: background 0.2s ease;
}

.WillboTC__Card:hover {
  background: var(--w-cream, #F5F3EE);
}

/* Image */
.WillboTC__CardImgWrap {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  display: block;
  background: var(--w-sand, #E8E4DC);
}

.WillboTC__CardImg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.5s ease;
}

.WillboTC__Card:hover .WillboTC__CardImg {
  transform: scale(1.03);
}

.WillboTC__CardImgPlaceholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, var(--w-sand, #E8E4DC) 0%, var(--w-border, #D9D5CC) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.WillboTC__CardImgOverlay {
  position: absolute;
  top: 14px;
  left: 14px;
  background: var(--w-white, #ffffff);
  padding: 4px 8px;
}

.WillboTC__CardImgOverlay .WillboTC__CardEpNum {
  color: var(--w-black, #111111);
  text-shadow: none;
  font-size: 9px;
  letter-spacing: 0.18em;
}

.WillboTC__CardEpNum {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.16em;
  color: var(--w-white, #ffffff);
  text-shadow: 0 1px 6px rgba(0,0,0,0.5);
}

.WillboTC__CardImgPlaceholder .WillboTC__CardEpNum {
  font-size: 13px;
  color: var(--w-mid, #888580);
  text-shadow: none;
}

/* Card body */
.WillboTC__CardBody {
  padding: 24px 28px 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1;
}

/* Guest name + descriptor */
.WillboTC__CardMeta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.WillboTC__CardName {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: clamp(22px, 2vw, 32px);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: var(--w-black, #111111);
  margin: 0;
  line-height: 1.1;
}

.WillboTC__CardDescriptor {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #C0392B;
  margin: 0;
  text-transform: uppercase;
}

/* Vitals */
.WillboTC__CardVitals {
  display: flex;
  gap: 0;
  border-top: 1px solid var(--w-border, #D9D5CC);
  padding-top: 14px;
}

.WillboTC__CardVital {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-right: 16px;
}

.WillboTC__CardVital + .WillboTC__CardVital {
  padding-left: 16px;
  padding-right: 0;
  border-left: 1px solid var(--w-border, #D9D5CC);
}

.WillboTC__CardVitalLabel {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
}

.WillboTC__CardVitalValue {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-black, #111111);
}

/* Excerpt */
.WillboTC__CardExcerpt {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 13px;
  font-weight: 300;
  line-height: 1.6;
  color: var(--w-mid, #888580);
  margin: 0;
}

/* Actions */
.WillboTC__CardActions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid var(--w-border, #D9D5CC);
}

.WillboTC__CardRead {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--w-black, #111111);
  text-decoration: none;
  border-bottom: 1px solid var(--w-black, #111111);
  padding-bottom: 1px;
  transition: color 0.2s ease;
}

.WillboTC__CardRead:hover {
  color: var(--w-mid, #888580);
  border-color: var(--w-mid, #888580);
}

.WillboTC__CardListen {
  display: flex;
  gap: 12px;
  align-items: center;
}

.WillboTC__CardListenLink {
  color: var(--w-mid, #888580);
  transition: color 0.2s ease;
  display: flex;
  align-items: center;
}

.WillboTC__CardListenLink:hover {
  color: var(--w-black, #111111);
}

/* ââ Tablet âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
@media screen and (max-width: 999px) {
  .WillboTC__Hero {
    aspect-ratio: 16 / 9;
  }

  .WillboTC__Intro {
    padding: 40px 24px 48px;
    gap: 32px;
  }

  .WillboTC__Grid {
    margin: 48px 24px 72px;
  }
}

/* ââ Mobile âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
@media screen and (max-width: 767px) {
  .WillboTC__Hero {
    aspect-ratio: 4 / 3;
  }

  .WillboTC__HeroOverlay {
    padding: 0 20px 32px;
  }

  .WillboTC__Intro {
    grid-template-columns: 1fr;
    padding: 32px 20px 40px;
    gap: 20px;
  }

  .WillboTC__HeroTitle {
    font-size: clamp(18px, 5vw, 26px);
  }

  .WillboTC__HeroSub {
    font-size: 13px;
    margin-bottom: 20px;
  }

  .WillboTC__HeroLinks {
    gap: 10px;
  }

  .WillboTC__ListenBtn {
    font-size: 10px;
    padding: 9px 16px;
  }

  .WillboTC__Grid {
    grid-template-columns: 1fr;
    margin: 32px 0 64px;
    border-left: none;
    border-top: none;
  }

  .WillboTC__Card {
    border-right: none;
    border-left: none;
  }

  .WillboTC__CardImgWrap {
    aspect-ratio: 3 / 2;
  }

  .WillboTC__CardBody {
    padding: 20px 20px 24px;
    gap: 14px;
  }

  .WillboTC__CardName {
    font-size: clamp(24px, 7vw, 32px);
  }
}

/* ââ END WILLBO TRADING CARDS ââââââââââââââââââââââââââââââââââââââââââââââââ */


/* ââ WILLBO TC ARTICLE âââââââââââââââââââââââââââââââââââââââââââââââââââââââ */

/* ââ Hero âââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboTCA {
  font-family: var(--w-sans);
  color: var(--w-black);
  background: var(--w-white);
}

.WillboTCA__Hero {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 7;
  overflow: hidden;
  background: #f4f1ea;
  /* Fixed container â every episode hero is identical size regardless of image */
}

@media (max-width: 767px) {
  .WillboTCA__Hero {
    aspect-ratio: auto;
    overflow: visible;
    background: #f4f1ea;
  }
}

.WillboTCA__HeroImg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

.WillboTCA__HeroPlaceholder {
  position: absolute;
  inset: 0;
  background: var(--w-black);
}

.WillboTCA__HeroOverlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 48px 48px;
  background: linear-gradient(
    to top,
    rgba(0,0,0,0.58) 0%,
    rgba(0,0,0,0.20) 44%,
    rgba(0,0,0,0.00) 100%
  );
  max-width: min(780px, 62vw);
}

@media (max-width: 767px) {
  .WillboTCA__HeroImg {
    position: relative;
    inset: auto;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    object-position: center center;
    background: #f4f1ea;
  }
}

@media (min-width: 768px) and (max-width: 980px) {
  .WillboTCA__HeroOverlay {
    max-width: 50vw;
    padding: 36px 32px;
  }

  .WillboTCA__HeroName {
    font-size: clamp(30px, 4vw, 42px);
  }
}

@media (max-width: 767px) {
  .WillboTCA__HeroOverlay {
    position: relative;
    inset: auto;
    padding: 26px 20px 30px;
    background: var(--w-black);
    max-width: 100%;
  }
}

.WillboTCA__HeroEyebrow {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.70);
  margin: 0 0 10px;
  padding: 0;
}

.WillboTCA__HeroName {
  font-family: var(--w-sans);
  font-size: clamp(34px, 4.3vw, 58px);
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.04;
  color: var(--w-white);
  margin: 0 0 10px -4px;
  padding: 0;
}

.WillboTCA__HeroDesc {
  font-family: var(--w-sans);
  font-size: clamp(13px, 1.2vw, 16px);
  font-weight: 400;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: #C0392B;
  margin: 0;
}

/* ââ Vitals Row âââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboTCA__Vitals {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  padding-left: 40px;
  border-top: 1px solid var(--w-border);
}

@media (max-width: 767px) {
  .WillboTCA__Vitals {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding-left: 20px;
    padding-right: 20px;
  }
}

.WillboTCA__Vital {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 40px 24px 36px;
  border-right: 1px solid var(--w-border);
}

.WillboTCA__Vital:first-child {
  padding-left: 0;
}

.WillboTCA__Vital:last-child {
  border-right: none;
  padding-right: 0;
}

@media (max-width: 767px) {
  .WillboTCA__Vital {
    padding: 20px 16px 16px 0;
    border-right: none !important;
    border-bottom: 1px solid var(--w-border);
  }

  /* Remove bottom border from last row (both cells) */
  .WillboTCA__Vital:last-child,
  .WillboTCA__Vital:nth-last-child(2) {
    border-bottom: none;
  }
}

.WillboTCA__VitalLabel {
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--w-mid);
  display: block;
}

.WillboTCA__VitalValue {
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0.01em;
  color: var(--w-black);
  display: block;
  min-height: 1.4em;
}

/* ââ Known For ticker âââââââââââââââââââââââââââââââââââââââââ */
.WillboTCA__Ticker {
  transition: opacity 0.28s ease, transform 0.28s ease;
}

.WillboTCA__Ticker--out {
  opacity: 0;
  transform: translateY(-6px);
}

.WillboTCA__Ticker--in {
  animation: tcaTick 0.38s ease forwards;
}

@keyframes tcaTick {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ââ Listen Buttons âââââââââââââââââââââââââââââââââââââââââââ */
.WillboTCA__Listen {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 28px 40px;
  border-bottom: 1px solid var(--w-border);
}

@media (max-width: 767px) {
  .WillboTCA__Listen {
    padding: 22px 20px;
    gap: 8px;
  }
}

.WillboTCA__ListenLabel {
  flex: 0 0 100%;
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--w-mid);
  margin-bottom: 2px;
}

.WillboTCA__ListenBtn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--w-black);
  background: transparent;
  border: 1px solid var(--w-black);
  padding: 11px 22px;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}

.WillboTCA__ListenBtn:hover {
  background: var(--w-black);
  color: var(--w-white);
  text-decoration: none;
}

/* ââ Rule âââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboTCA__Rule {
  height: 1px;
  background: var(--w-border);
  margin: 0 40px;
  display: none;
}

@media (max-width: 767px) {
  .WillboTCA__Rule {
    margin: 0 20px;
  }
}

/* ââ Body Content âââââââââââââââââââââââââââââââââââââââââââââ */
.WillboTCA__Body {
  padding: 96px 0 0;
  display: flex;
  justify-content: center;
}

.WillboTCA__BodyInner {
  width: min(700px, calc(100% - 80px));
  max-width: 72ch;
  padding-bottom: 80px;
}

@media (max-width: 767px) {
  .WillboTCA__Body {
    padding: 48px 20px 0;
    justify-content: flex-start;
  }

  .WillboTCA__BodyInner {
    width: 100%;
    padding-bottom: 60px;
  }
}

.WillboTCA__BodyInner p,
.WillboTCA__BodyInner li {
  font-family: var(--w-sans);
  font-size: 15px;
  font-weight: 300;
  line-height: 1.9;
  color: var(--w-black);
  margin: 0 0 24px;
}

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

.WillboTCA__BodyInner h2,
.WillboTCA__BodyInner h3 {
  font-family: var(--w-sans);
  font-size: clamp(18px, 1.6vw, 22px);
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--w-black);
  margin: 2.4em 0 0.8em;
}

.WillboTCA__BodyInner blockquote {
  border-left: 2px solid var(--w-black);
  margin: 2em 0;
  padding: 4px 0 4px 24px;
  font-size: clamp(16px, 1.5vw, 20px);
  font-weight: 300;
  font-style: normal !important;
  color: var(--w-black);
  line-height: 1.6;
}

.WillboTCA__BodyInner blockquote p {
  font-size: inherit;
  font-style: normal !important;
  margin: 0;
}

/* ââ Back Link ââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboTCA__Back {
  padding: 0 40px 64px;
}

@media (max-width: 767px) {
  .WillboTCA__Back {
    padding: 0 20px 48px;
  }
}

.WillboTCA__BackLink {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--w-mid);
  text-decoration: none;
  transition: color 0.2s ease;
}

.WillboTCA__BackLink:hover {
  color: var(--w-black);
  text-decoration: none;
}

/* ââ END WILLBO TC ARTICLE âââââââââââââââââââââââââââââââââââââââââââââââââââ */



/* ââ Last section before footer â kill excess bottom margin on mobile ââ */
@media (max-width: 768px) {
  .shopify-section:last-of-type .Section--spacingNormal,
  .shopify-section:last-of-type .Section--spacingLarge,
  .shopify-section:last-of-type > section,
  .shopify-section:last-of-type > .Section {
    margin-bottom: 0 !important;
  }
}


/* ââ Mobile New Arrivals: custom nav inline with heading ââ */

/* Hide the Slick-injected arrows entirely on mobile */
@media (max-width: 640px) {
  .custom-shopify-section--bordered .Mobile.ProductList--grid .slick-arrow,
  .custom-shopify-section--bordered .Mobile.ProductList--grid .Icon--media-arrow-left,
  .custom-shopify-section--bordered .Mobile.ProductList--grid .Icon--media-arrow-right {
    display: none !important;
  }
}

/* WillboSlickNav â hidden on desktop, shown inline on mobile */
.WillboSlickNav {
  display: none;
}
@media (max-width: 640px) {
  .WillboSlickNav {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-left: auto;
    padding-right: 20px;
    margin-bottom: 2px;
  }
  .WillboSlickNav__Prev,
  .WillboSlickNav__Next {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    cursor: pointer;
    line-height: 0;
    color: var(--w-black);
    opacity: 1;
    transition: opacity 0.2s;
  }
  /* SectionHeader flex so nav sits on same row as heading */
  .custom-shopify-section--bordered .SectionHeader {
    display: flex !important;
    align-items: center !important;
  }
  .custom-shopify-section--bordered .SectionHeader .SectionHeader__Container {
    flex: 1 !important;
  }
}


/* ============================================================
   WILLBO FAQ  (willbo-faq.liquid)
   ============================================================ */

/* ââ Shared clock âââââââââââââââââââââââââââââââââââââââââââ */
.WillboFAQ__Clock {
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin-bottom: 32px;
}
.WillboFAQ__ClockTime {
  font-family: var(--w-sans);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.08em;
  color: var(--w-black);
  font-variant-numeric: tabular-nums;
}
.WillboFAQ__ClockCity {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 300;
  letter-spacing: 0.10em;
  color: var(--w-mid);
  text-transform: uppercase;
}

/* ââ Desktop layout âââââââââââââââââââââââââââââââââââââââââ */
.WillboFAQ {
  padding-top: calc(var(--w-nav-h) + 40px);
  padding-bottom: 80px;
  min-height: 100vh;
}
.WillboFAQ__Mobile { display: none; }
.WillboFAQ__Desktop {
  display: flex;
  align-items: flex-start;
  gap: 0;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 40px;
}

/* Sidebar */
.WillboFAQ__Sidebar {
  flex: 0 0 240px;
  padding-right: 40px;
  position: sticky;
  top: calc(var(--w-nav-h) + 40px);
}
.WillboFAQ__Nav {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 40px;
}
.WillboFAQ__NavLink {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  text-align: left;
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.10em;
  color: var(--w-mid);
  text-transform: uppercase;
  padding: 10px 0;
  border-bottom: 1px solid var(--w-border);
  transition: color 0.2s;
  line-height: 1;
}
.WillboFAQ__NavLink:first-child { border-top: 1px solid var(--w-border); }
.WillboFAQ__NavLink:hover {
  color: var(--w-black);
}
.WillboFAQ__NavLink.is-active {
  color: var(--w-black);
  font-weight: 500;
  letter-spacing: 0.08em;
}
.WillboFAQ__BottomText {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 300;
  letter-spacing: 0.05em;
  color: var(--w-mid);
  line-height: 1.6;
}

/* Content pane */
.WillboFAQ__Content {
  flex: 1;
  min-width: 0;
  padding-left: 40px;
  border-left: 1px solid var(--w-border);
}
.WillboFAQ__DefaultImage {
  width: 100%;
  max-width: 560px;
  aspect-ratio: 3/4;
  object-fit: cover;
  display: block;
}
.WillboFAQ__DefaultImage.is-hidden { display: none; }

.WillboFAQ__Panel { display: none; }
.WillboFAQ__Panel.is-active { display: block; }

.WillboFAQ__PanelTitle {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.12em;
  color: var(--w-mid);
  text-transform: uppercase;
  margin: 0 0 28px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--w-border);
}
.WillboFAQ__PanelBody {
  font-family: var(--w-sans);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.75;
  color: var(--w-black);
  max-width: 680px;
}
.WillboFAQ__PanelBody p { margin: 0 0 16px; }
.WillboFAQ__PanelBody h6 {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.06em;
  margin: 24px 0 8px;
}
.WillboFAQ__PanelBody a {
  color: var(--w-black);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ââ Mobile layout ââââââââââââââââââââââââââââââââââââââââââ */
@media (max-width: 767px) {
  .WillboFAQ__Desktop { display: none; }
  .WillboFAQ__Mobile  { display: block; }

  .WillboFAQ {
    padding-top: calc(var(--w-nav-h) + 24px);
    padding-bottom: 60px;
  }
  .WillboFAQ__MobileClock {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin: 0 20px 24px;
  }
  .WillboFAQ__MobileClock .WillboFAQ__ClockTime { font-size: 12px; }
  .WillboFAQ__MobileClock .WillboFAQ__ClockCity { font-size: 11px; }

  .WillboFAQ__Accordion {
    border-top: 1px solid var(--w-border);
  }
  .WillboFAQ__AccItem {
    border-bottom: 1px solid var(--w-border);
    padding: 0 20px;
  }
  .WillboFAQ__AccTrigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    background: none;
    border: none;
    padding: 16px 0;
    cursor: pointer;
    gap: 12px;
  }
  .WillboFAQ__AccLabel {
    font-family: var(--w-sans);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.10em;
    color: var(--w-black);
    text-transform: uppercase;
    text-align: left;
  }
  .WillboFAQ__AccIcon {
    flex-shrink: 0;
    color: var(--w-mid);
    transition: transform 0.25s ease;
    line-height: 0;
  }
  .WillboFAQ__AccItem[aria-expanded="true"] .WillboFAQ__AccIcon {
    transform: rotate(180deg);
  }
  .WillboFAQ__AccBody {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
  }
  .WillboFAQ__AccBodyInner {
    font-family: var(--w-sans);
    font-size: 13px;
    font-weight: 300;
    line-height: 1.75;
    color: var(--w-black);
    padding-bottom: 20px;
  }
  .WillboFAQ__AccBodyInner p { margin: 0 0 12px; }
  .WillboFAQ__AccBodyInner h6 {
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.04em;
    margin: 16px 0 6px;
  }
  .WillboFAQ__AccBodyInner a {
    color: var(--w-black);
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .WillboFAQ__BottomText--mobile {
    margin: 24px 20px 0;
    font-family: var(--w-sans);
    font-size: 11px;
    font-weight: 300;
    color: var(--w-mid);
    line-height: 1.6;
  }
}


/* ============================================================
   WILLBO CONTACT  (willbo-contact.liquid)
   ============================================================ */

.WillboContact {
  padding-top: calc(var(--w-nav-h) + 40px);
  padding-bottom: 80px;
  min-height: 100vh;
}
.WillboContact__Inner {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 0;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 40px;
}

/* Info panel */
.WillboContact__Info {
  padding-right: 40px;
  position: sticky;
  top: calc(var(--w-nav-h) + 40px);
  align-self: start;
}
.WillboContact__Clock {
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin-bottom: 24px;
}
.WillboContact__ClockTime {
  font-family: var(--w-sans);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.08em;
  color: var(--w-black);
  font-variant-numeric: tabular-nums;
}
.WillboContact__ClockCity {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 300;
  letter-spacing: 0.10em;
  color: var(--w-mid);
}
.WillboContact__Divider {
  height: 1px;
  background: var(--w-border);
  margin-bottom: 28px;
}
.WillboContact__Heading {
  font-family: var(--w-sans);
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.06em;
  color: var(--w-black);
  text-transform: uppercase;
  margin: 0 0 10px;
}
.WillboContact__Subheading {
  font-family: var(--w-sans);
  font-size: 12px;
  font-weight: 300;
  color: var(--w-mid);
  line-height: 1.65;
  margin: 0 0 32px;
  letter-spacing: 0.02em;
}
.WillboContact__Details {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.WillboContact__DetailRow {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 14px 0;
  border-bottom: 1px solid var(--w-border);
}
.WillboContact__DetailRow:first-child {
  border-top: 1px solid var(--w-border);
}
.WillboContact__DetailLabel {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.12em;
  color: var(--w-mid);
  text-transform: uppercase;
}
.WillboContact__DetailValue {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-black);
  text-decoration: none;
  letter-spacing: 0.02em;
  line-height: 1.5;
  white-space: pre-line;
}
a.WillboContact__DetailValue:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.WillboContact__MailCta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 22px;
  min-width: 150px;
  padding: 11px 18px 10px;
  border: 1px solid var(--w-black);
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--w-black);
  background: transparent;
  transition: background 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}
.WillboContact__MailCta:hover {
  background: var(--w-black);
  color: var(--w-white);
}

/* Form panel */
.WillboContact__FormWrap {
  padding-left: 40px;
  border-left: 1px solid var(--w-border);
}
.WillboContactTracker {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.72fr);
  gap: 30px;
  align-items: end;
  margin-bottom: 38px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--w-border);
}
.WillboContactTracker__Kicker {
  margin: 0 0 12px;
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
  color: var(--w-mid);
}
.WillboContactTracker__Copy h2 {
  margin: 0 0 8px;
  font-family: var(--w-sans);
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--w-black);
}
.WillboContactTracker__Copy p:last-child {
  max-width: 360px;
  margin: 0;
  font-family: var(--w-sans);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.02em;
  line-height: 1.62;
  color: var(--w-mid);
}
.WillboContactTracker__Form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
}
.WillboContactTracker__Input {
  width: 100%;
  height: 38px;
  padding: 0;
  border: 0;
  border-bottom: 1px solid var(--w-black);
  border-radius: 0;
  background: transparent;
  font-family: var(--w-sans);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.02em;
  color: var(--w-black);
  outline: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.WillboContactTracker__Input::placeholder {
  color: var(--w-mid);
}
.WillboContactTracker__Button {
  height: 38px;
  padding: 0 18px;
  border: 1px solid var(--w-black);
  border-radius: 0;
  background: transparent;
  color: var(--w-black);
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}
.WillboContactTracker__Button:hover {
  background: var(--w-black);
  color: var(--w-white);
}
.WillboContact__Success {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-black);
  letter-spacing: 0.03em;
  padding: 20px 0;
  border-bottom: 1px solid var(--w-border);
  margin-bottom: 32px;
}
.WillboContact__Errors {
  font-family: var(--w-sans);
  font-size: 12px;
  color: #c0392b;
  margin-bottom: 20px;
}
.WillboContact__Errors p { margin: 0 0 6px; }

.WillboContact__Fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 24px;
  margin-bottom: 32px;
}
.WillboContact__Field--full { grid-column: 1 / -1; }

.WillboContact__Label {
  display: block;
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.12em;
  color: var(--w-mid);
  text-transform: uppercase;
  margin-bottom: 8px;
}
.WillboContact__Input {
  width: 100%;
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--w-border);
  border-radius: 0;
  padding: 10px 0;
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-black);
  letter-spacing: 0.02em;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  transition: border-color 0.2s;
  box-sizing: border-box;
}
.WillboContact__Input:focus {
  border-bottom-color: var(--w-black);
}
.WillboContact__Input--textarea {
  resize: none;
  line-height: 1.65;
}
.WillboContact__Input--select {
  cursor: pointer;
  padding-right: 28px;
}
.WillboContact__Select {
  position: relative;
}
.WillboContact__SelectArrow {
  position: absolute;
  right: 0;
  bottom: 13px;
  pointer-events: none;
  color: var(--w-mid);
  line-height: 0;
}

.WillboContact__Submit {
  background: var(--w-black);
  color: var(--w-white);
  border: none;
  padding: 14px 40px;
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  cursor: pointer;
  transition: opacity 0.2s;
}
.WillboContact__Submit:hover { opacity: 0.82; }

/* ââ Mobile contact âââââââââââââââââââââââââââââââââââââââââ */
@media (max-width: 767px) {
  .WillboContact__Inner {
    grid-template-columns: 1fr;
    padding: 0 20px;
    gap: 40px;
  }
  .WillboContact {
    padding-top: calc(var(--w-nav-h) + 24px);
    padding-bottom: 60px;
  }
  .WillboContact__Info {
    position: static;
    padding-right: 0;
  }
  .WillboContact__FormWrap {
    padding-left: 0;
    border-left: none;
    border-top: 1px solid var(--w-border);
    padding-top: 40px;
  }
  .WillboContactTracker {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 32px;
    padding-bottom: 28px;
  }
  .WillboContactTracker__Form {
    grid-template-columns: 1fr auto;
    gap: 10px;
  }
  .WillboContactTracker__Button {
    padding: 0 15px;
  }
  .WillboContact__Fields {
    grid-template-columns: 1fr;
  }
  .WillboContact__Field--half,
  .WillboContact__Field--full {
    grid-column: 1;
  }
  .WillboContact__Submit {
    width: 100%;
    padding: 14px;
  }
  .WillboContact__MailCta {
    width: 100%;
    margin-top: 20px;
  }
}


/* ============================================================
   WILLBO POLICY PAGES
   Native Shopify policy templates â refined editorial styling
   ============================================================ */

.shopify-policy__container {
  max-width: 960px !important;
  margin: 0 auto !important;
  padding: calc(var(--w-nav-h) + 70px) 28px 96px !important;
  color: var(--w-black);
}
.shopify-policy__title {
  max-width: 760px;
  margin: 0 auto 34px !important;
  text-align: left !important;
}
.shopify-policy__title h1 {
  margin: 0 !important;
  font-family: var(--w-sans);
  font-size: clamp(18px, 2.1vw, 28px) !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.22 !important;
  text-transform: uppercase;
  color: var(--w-black);
}
.shopify-policy__body {
  max-width: 760px;
  margin: 0 auto !important;
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0.015em;
  line-height: 1.78;
  color: var(--w-black);
}
.shopify-policy__body .rte,
.shopify-policy__body .Rte,
.shopify-policy__body {
  font-size: 13px;
  line-height: 1.78;
}
.shopify-policy__body p,
.shopify-policy__body li {
  margin-bottom: 16px;
}
.shopify-policy__body h2,
.shopify-policy__body h3,
.shopify-policy__body h4 {
  margin: 34px 0 12px;
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  line-height: 1.4;
  text-transform: uppercase;
  color: var(--w-black);
}
.shopify-policy__body ul,
.shopify-policy__body ol {
  margin: 0 0 20px 18px;
  padding: 0;
}
.shopify-policy__body a {
  color: var(--w-black);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.shopify-policy__body table {
  width: 100%;
  border-collapse: collapse;
  margin: 28px 0;
  font-size: 12px;
}
.shopify-policy__body th,
.shopify-policy__body td {
  padding: 12px 0;
  border-bottom: 1px solid var(--w-border);
  text-align: left;
  vertical-align: top;
}

.WillboShippingTracker {
  max-width: 760px;
  margin: 0 auto 50px;
  padding: 30px 0 28px;
  border-top: 1px solid var(--w-border);
  border-bottom: 1px solid var(--w-border);
}
.WillboTrackerHiddenLabel {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.WillboShippingTracker__Kicker {
  margin-bottom: 22px;
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
  color: var(--w-mid);
}
.WillboShippingTracker__Grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.72fr);
  gap: 54px;
  align-items: center;
}
.WillboShippingTracker__Copy h2 {
  margin: 0 0 8px;
  font-family: var(--w-sans);
  font-size: 17px;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 1.25;
  text-transform: uppercase;
  color: var(--w-black);
}
.WillboShippingTracker__Copy p {
  max-width: 430px;
  margin: 0;
  font-family: var(--w-sans);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.02em;
  line-height: 1.65;
  color: var(--w-mid);
}
.WillboShippingTracker__Form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 92px;
  gap: 14px;
  align-items: center;
}
.WillboShippingTracker__Input {
  width: 100%;
  height: 38px;
  padding: 0;
  border: 0;
  border-bottom: 1px solid var(--w-black);
  border-radius: 0;
  background: transparent;
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0.02em;
  color: var(--w-black);
  outline: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.WillboShippingTracker__Input::placeholder {
  color: var(--w-mid);
}
.WillboShippingTracker__Button {
  height: 38px;
  padding: 0 18px;
  border: 1px solid var(--w-black);
  border-radius: 0;
  background: var(--w-black);
  color: var(--w-white);
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1;
  text-transform: uppercase;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.WillboShippingTracker__Button:hover {
  opacity: 0.82;
}
.WillboShippingTracker__Footer {
  display: flex;
  justify-content: space-between;
  gap: 54px;
  margin-top: 20px;
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 300;
  letter-spacing: 0.08em;
  line-height: 1.55;
  text-transform: uppercase;
  color: var(--w-mid);
}
.WillboShippingTracker__Footer a {
  color: var(--w-black);
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}

@media (max-width: 767px) {
  .shopify-policy__container {
    padding: calc(var(--w-nav-h) + 38px) 20px 68px !important;
  }
  .shopify-policy__title {
    margin-bottom: 26px !important;
  }
  .shopify-policy__title h1 {
    font-size: 18px !important;
    letter-spacing: 0.07em !important;
  }
  .shopify-policy__body {
    font-size: 12.5px;
    line-height: 1.72;
  }
  .WillboShippingTracker {
    margin-bottom: 38px;
    padding: 24px 0 22px;
  }
  .WillboShippingTracker__Kicker {
    margin-bottom: 18px;
  }
  .WillboShippingTracker__Grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .WillboShippingTracker__Copy h2 {
    font-size: 16px;
  }
  .WillboShippingTracker__Copy p {
    max-width: none;
  }
  .WillboShippingTracker__Form {
    grid-template-columns: minmax(0, 1fr) 84px;
    gap: 10px;
  }
  .WillboShippingTracker__Button {
    padding: 0 16px;
  }
  .WillboShippingTracker__Footer {
    flex-direction: column;
    gap: 8px;
  }
}


/* ============================================================
   THE CLUBHOUSE  (willbo-clubhouse.liquid)
   VIP portal â immersive private room
   ============================================================ */

/* ââ VIP PORTAL ââââââââââââââââââââââââââââââââââââââââââââ */
.WillboClubhouse {
  background: var(--w-black);
  min-height: 100vh;
  color: var(--w-white);
}

/* Hero */
/* ââ VIP Portal ââââââââââââââââââââââââââââââââââââââ */
.WillboClubhouse {
  background: var(--w-cream);
  color: var(--w-black);
}

/* 1. Hero */
.WillboClubhouse__Hero {
  position: relative;
  height: 100svh;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
}
.WillboClubhouse__HeroImg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.WillboClubhouse__HeroOverlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.1) 60%, transparent 100%);
}
.WillboClubhouse__HeroContent {
  position: relative;
  z-index: 2;
  padding: 0 clamp(32px, 6vw, 80px) clamp(48px, 7vw, 80px);
}
.WillboClubhouse__HeroEyebrow {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.22em;
  color: #4ade80;
  text-transform: uppercase;
  margin: 0 0 16px;
}
.WillboClubhouse__HeroTitle {
  font-family: var(--w-sans);
  font-size: clamp(40px, 7vw, 80px);
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--w-white);
  margin: 0 0 12px;
  line-height: 1;
}
.WillboClubhouse__HeroSub {
  font-family: var(--w-sans);
  font-size: 14px;
  font-weight: 300;
  color: rgba(255,255,255,0.6);
  margin: 0;
  letter-spacing: 0.04em;
}

/* 2. Member Strip */
.WillboClubhouse__MemberStrip {
  background: #111;
  padding: 14px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.WillboClubhouse__StripDot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #4ade80;
  flex-shrink: 0;
}
.WillboClubhouse__StripText {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.75);
  text-transform: uppercase;
  text-align: center;
}
.WillboClubhouse__StripText strong {
  color: #4ade80;
  font-weight: 500;
}

/* 3. Founder's Letter */
.WillboClubhouse__Letter {
  padding: 0;
  background: #f5f3ee;
  display: grid;
  grid-template-columns: 14px 1fr auto;
  min-height: 320px;
  overflow: hidden;
}
/* Left spine â color bar, swappable monthly */
.WillboClubhouse__LetterSpine {
  background: var(--letter-spine, #c0392b);
  width: 14px;
  min-height: 100%;
}
/* Center â the text content */
.WillboClubhouse__LetterContent {
  padding: clamp(40px, 5vw, 64px) clamp(32px, 5vw, 64px);
}
.WillboClubhouse__LetterInner {
  max-width: 680px;
}
/* Right â issue number, rotated */
.WillboClubhouse__LetterIssue {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 clamp(32px, 4vw, 64px);
  user-select: none;
}
.WillboClubhouse__LetterIssueNum {
  font-family: var(--w-sans);
  font-size: clamp(64px, 10vw, 140px);
  font-weight: 300;
  letter-spacing: -0.04em;
  line-height: 1;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  transform: rotate(180deg);
  color: #c0392b;
  opacity: 0.18;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .WillboClubhouse__Letter {
    grid-template-columns: 6px 1fr 0px;
    min-height: auto;
    overflow: hidden;
  }
  .WillboClubhouse__LetterSpine {
    width: 6px;
    background: var(--letter-spine, #c0392b) !important;
  }
  .WillboClubhouse__LetterContent {
    padding: clamp(28px, 5vw, 48px) 20px;
  }
  /* Issue number â rotated, ghosted, peeks from right edge on mobile */
  .WillboClubhouse__LetterIssue {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    padding: 0 0 16px 0;
    overflow: visible;
    width: 0;
  }
  .WillboClubhouse__LetterIssueNum {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transform: rotate(180deg);
    font-size: clamp(48px, 12vw, 72px);
    font-weight: 300;
    letter-spacing: -0.03em;
    opacity: 0.18;
    white-space: nowrap;
    margin-left: -36px;
  }
}
.WillboClubhouse__LetterMeta {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 20px;
}
.WillboClubhouse__LetterLabel {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.26em;
  color: var(--w-mid);
  text-transform: uppercase;
}
.WillboClubhouse__LetterDate {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 0.18em;
  color: var(--w-mid);
  text-transform: uppercase;
}
.WillboClubhouse__LetterRule {
  width: 100%;
  height: 1px;
  background: var(--w-border);
  margin-bottom: 36px;
}
.WillboClubhouse__LetterTitle {
  font-family: var(--w-sans);
  font-size: clamp(22px, 3.5vw, 40px);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: var(--w-black);
  margin: 0 0 28px;
  line-height: 1.2;
}
.WillboClubhouse__LetterBody {
  font-family: var(--w-sans);
  font-size: 15px;
  font-weight: 300;
  color: #444;
  line-height: 1.8;
  margin-bottom: 28px;
}
.WillboClubhouse__LetterBody p { margin: 0 0 16px; }
.WillboClubhouse__LetterSig {
  font-family: var(--w-sans);
  font-size: 14px;
  font-weight: 400;
  color: var(--w-mid);
  font-style: italic;
  margin: 0;
}
.WillboClubhouse__LetterLink {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  color: var(--w-black);
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid var(--w-black);
  padding-bottom: 2px;
  transition: opacity 0.2s;
}
.WillboClubhouse__LetterLink:hover { opacity: 0.5; }

/* 4. Member Collection */
.WillboClubhouse__Shop {
  padding: clamp(40px, 5vw, 64px) 48px;
  background: var(--w-white);
}
.WillboClubhouse__ShopHeader {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 48px;
  gap: 16px;
  flex-wrap: wrap;
}
.WillboClubhouse__ShopLabel {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.26em;
  color: var(--w-mid);
  text-transform: uppercase;
  display: block;
  margin-bottom: 10px;
}
.WillboClubhouse__ShopTitle {
  font-family: var(--w-sans);
  font-size: clamp(24px, 3.5vw, 44px);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: var(--w-black);
  margin: 0;
  line-height: 1;
}
.WillboClubhouse__ShopTag {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.16em;
  color: #4ade80;
  text-transform: uppercase;
}
.WillboClubhouse__Grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
}
.WillboClubhouse__Card {
  text-decoration: none;
  color: inherit;
  display: block;
}
.WillboClubhouse__CardImg {
  aspect-ratio: 3/4;
  overflow: hidden;
  background: var(--w-sand);
}
.WillboClubhouse__CardImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.WillboClubhouse__Card:hover .WillboClubhouse__CardImg img {
  transform: scale(1.03);
}
.WillboClubhouse__CardInfo {
  padding: 14px 0 20px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.WillboClubhouse__CardName {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.01em;
  color: var(--w-black);
}
.WillboClubhouse__CardPricing {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
}
.WillboClubhouse__CardMemberRow {
  display: flex;
  align-items: baseline;
  gap: 6px;
}
.WillboClubhouse__CardMemberLabel {
  font-family: var(--w-sans);
  font-size: 12px;
  font-weight: 300;
  color: var(--w-mid);
  letter-spacing: 0.02em;
}
.WillboClubhouse__CardMember {
  font-family: var(--w-sans);
  font-size: 12px;
  font-weight: 400;
  color: var(--w-black);
}
.WillboClubhouse__CardRetail {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 300;
  color: #c0bbb5;
  text-decoration: line-through;
  text-decoration-color: #c0bbb5;
}
.WillboClubhouse__ShopEmpty p {
  font-family: var(--w-sans);
  font-size: 13px;
  color: var(--w-mid);
}

/* 5. Journal */
.WillboClubhouse__Journal {
  padding: clamp(40px, 5vw, 64px) clamp(20px, 5vw, 80px);
  background: #f5f3ee;
}
.WillboClubhouse__JournalHeader {
  margin-bottom: 32px;
}
.WillboClubhouse__JournalLabel {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.26em;
  color: var(--w-mid);
  text-transform: uppercase;
  display: block;
  margin-bottom: 10px;
}
.WillboClubhouse__JournalTitle {
  font-family: var(--w-sans);
  font-size: clamp(24px, 3.5vw, 44px);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: var(--w-black);
  margin: 0 0 16px;
  line-height: 1;
}
.WillboClubhouse__JournalRule {
  width: 100%;
  height: 1px;
  background: var(--w-border);
}
.WillboClubhouse__JournalGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
.WillboClubhouse__JournalCard {
  text-decoration: none;
  color: inherit;
  display: block;
}
.WillboClubhouse__JournalImg {
  aspect-ratio: 3/2;
  overflow: hidden;
  background: var(--w-sand);
  margin-bottom: 20px;
}
.WillboClubhouse__JournalImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.WillboClubhouse__JournalCard:hover .WillboClubhouse__JournalImg img {
  transform: scale(1.03);
}
.WillboClubhouse__JournalImgEmpty {
  aspect-ratio: 3/2;
  background: var(--w-sand);
  margin-bottom: 20px;
}
.WillboClubhouse__JournalDate {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 0.18em;
  color: var(--w-mid);
  text-transform: uppercase;
  display: block;
  margin-bottom: 10px;
}
.WillboClubhouse__JournalCardTitle {
  font-family: var(--w-sans);
  font-size: 16px;
  font-weight: 400;
  color: var(--w-black);
  margin: 0 0 10px;
  line-height: 1.35;
}
.WillboClubhouse__JournalExcerpt {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-mid);
  line-height: 1.65;
  margin: 0 0 14px;
}
.WillboClubhouse__JournalRead {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.14em;
  color: var(--w-black);
  text-transform: uppercase;
}
.WillboClubhouse__JournalEmpty {
  padding: 40px 0;
}
.WillboClubhouse__JournalEmptyText {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-mid);
  font-style: italic;
}

/* 6. The Circle */
/* ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   HERO MEMBER STAMP
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboClubhouse__HeroStamp {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.45); /* faint â library card energy, not a headline */
  margin-top: 14px;
  display: block;
}

/* ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   THE READING ROOM
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboClubhouse__Reading {
  padding: clamp(40px, 5vw, 64px) clamp(20px, 5vw, 48px);
  background: var(--w-cream);
}
.WillboClubhouse__ReadingHeader {
  margin-bottom: 28px;
}
.WillboClubhouse__ReadingLabel {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--w-mid);
  display: block;
  margin-bottom: 12px;
}
.WillboClubhouse__ReadingTitle {
  font-family: var(--w-sans);
  font-size: clamp(22px, 3vw, 36px);
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--w-black);
  margin: 0 0 24px;
  line-height: 1.15;
}
.WillboClubhouse__ReadingRule {
  width: 100%;
  height: 1px;
  background: var(--w-border);
}
/* 4-col grid on desktop, 2-col tablet, 1-col mobile */
.WillboClubhouse__ReadingGrid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border-top: 1px solid var(--w-border);
}
.WillboClubhouse__ReadingItem {
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--w-border);
  text-decoration: none;
  color: var(--w-black);
  transition: opacity 0.2s ease;
  position: relative;
  overflow: hidden;
}
.WillboClubhouse__ReadingItem:last-child { border-right: none; }
.WillboClubhouse__ReadingItem:hover { opacity: 0.75; }
/* Photo â 3:2 landscape, full bleed top of card */
.WillboClubhouse__ReadingImg {
  width: 100%;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: var(--w-sand);
  flex-shrink: 0;
}
.WillboClubhouse__ReadingImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}
.WillboClubhouse__ReadingItem:hover .WillboClubhouse__ReadingImg img {
  transform: scale(1.04);
}
/* Text body below photo */
.WillboClubhouse__ReadingBody {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 20px 24px 24px;
  border-top: 1px solid var(--w-border);
}
.WillboClubhouse__ReadingCat {
  font-family: var(--w-sans);
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--w-mid);
  margin-bottom: 14px;
  display: block;
}
.WillboClubhouse__ReadingItemTitle {
  font-family: var(--w-sans);
  font-size: clamp(13px, 1.2vw, 16px);
  font-weight: 400;
  letter-spacing: -0.01em;
  color: var(--w-black);
  line-height: 1.35;
  margin-bottom: 10px;
  flex: 1;
}
.WillboClubhouse__ReadingItemDesc {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 300;
  color: var(--w-mid);
  line-height: 1.6;
  margin-bottom: 20px;
}
.WillboClubhouse__ReadingArrow {
  font-size: 12px;
  color: var(--w-mid);
  display: block;
  margin-top: auto;
}
@media (max-width: 1024px) {
  .WillboClubhouse__ReadingGrid {
    grid-template-columns: repeat(2, 1fr);
  }
  .WillboClubhouse__ReadingItem:nth-child(2) { border-right: none; }
  .WillboClubhouse__ReadingItem:nth-child(3) { border-top: 1px solid var(--w-border); border-right: 1px solid var(--w-border); }
  .WillboClubhouse__ReadingItem:nth-child(4) { border-top: 1px solid var(--w-border); border-right: none; }
}
@media (max-width: 640px) {
  .WillboClubhouse__Reading { padding: 48px 0; }
  .WillboClubhouse__ReadingHeader { padding: 0 20px; }
  .WillboClubhouse__ReadingGrid {
    grid-template-columns: 1fr;
  }
  .WillboClubhouse__ReadingItem {
    border-right: none !important;
    border-top: none !important;
    border-bottom: 1px solid var(--w-border);
  }
  .WillboClubhouse__ReadingItem:last-child { border-bottom: none; }
  .WillboClubhouse__ReadingBody { padding: 16px 20px 20px; }
}

/* ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   MEMBER SPOTLIGHT
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboClubhouse__Spotlight {
  padding: clamp(40px, 5vw, 64px) 48px;
  background: var(--w-cream);
  border-top: 1px solid var(--w-border);
}
.WillboClubhouse__SpotlightInner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(40px, 6vw, 96px);
  align-items: start;
  max-width: 1100px;
}
/* Photo â portrait crop, Surfer's Journal column feel */
.WillboClubhouse__SpotlightPhoto {
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--w-sand);
}
.WillboClubhouse__SpotlightPhoto img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}
.WillboClubhouse__Spotlight:hover .WillboClubhouse__SpotlightPhoto img {
  transform: scale(1.02);
}
/* Content side */
.WillboClubhouse__SpotlightContent {
  padding: 16px 0;
}
.WillboClubhouse__SpotlightLabel {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--w-mid);
  display: block;
  margin-bottom: 20px;
}
.WillboClubhouse__SpotlightName {
  font-family: var(--w-sans);
  font-size: clamp(28px, 4vw, 52px);
  font-weight: 300;
  letter-spacing: -0.03em;
  color: var(--w-black);
  margin: 0 0 8px;
  line-height: 1.05;
  text-transform: uppercase;
}
.WillboClubhouse__SpotlightLocation {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #c0392b;
  margin: 0 0 36px;
}
/* The Line â bold editorial opener, who they are */
.WillboClubhouse__SpotlightLine {
  font-family: var(--w-sans);
  font-size: clamp(15px, 1.4vw, 18px);
  font-weight: 400;
  letter-spacing: -0.01em;
  color: var(--w-black);
  line-height: 1.55;
  margin: 0 0 16px;
}
/* The Connection â why they belong, in WillBo voice */
.WillboClubhouse__SpotlightConnection {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-mid);
  line-height: 1.7;
  margin: 0 0 32px;
}
/* Pull Quote â their words, italic, with attribution */
.WillboClubhouse__SpotlightQuote {
  font-family: var(--w-sans);
  font-size: clamp(16px, 1.8vw, 22px);
  font-weight: 300;
  font-style: italic;
  letter-spacing: -0.01em;
  color: var(--w-black);
  line-height: 1.5;
  margin: 0;
  padding: 0;
  border: none;
  display: block;
}
.WillboClubhouse__SpotlightAttribution {
  display: block;
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--w-mid);
  margin-top: 12px;
}
/* Mobile: stack photo above text */
@media (max-width: 767px) {
  .WillboClubhouse__Spotlight { padding: 36px 20px; }
  .WillboClubhouse__SpotlightInner {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .WillboClubhouse__SpotlightPhoto {
    aspect-ratio: 4 / 5; /* portrait on mobile â matches desktop */
  }
}

/* Portal footer removed â site-wide footer handles bottom of page */

/* Mobile */
@media (max-width: 767px) {
  .WillboClubhouse__Grid {
    grid-template-columns: repeat(2, 1fr);
  }
  /* Journal â horizontal scroll on mobile, matching collection pattern */
  .WillboClubhouse__Journal {
    padding-left: 0;
    padding-right: 0;
  }
  .WillboClubhouse__JournalHeader {
    padding: 0 20px;
  }
  .WillboClubhouse__JournalGrid {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    gap: 2px;
    padding: 0 20px;
  }
  .WillboClubhouse__JournalGrid::-webkit-scrollbar { display: none; }
  .WillboClubhouse__JournalCard {
    flex: 0 0 75vw;
    max-width: 300px;
    min-width: 220px;
  }
  /* Progress bar beneath journal scroll on mobile */
  .WillboClubhouse__JournalScrollBar {
    display: block;
    margin: 14px 20px 0;
    height: 1px;
    background: #e8e4dc;
    position: relative;
  }
  .WillboClubhouse__JournalScrollThumb {
    position: absolute;
    top: 0; left: 0;
    height: 1px;
    width: 30%;
    background: #888580;
    transition: left 0.2s ease;
  }
  .WillboClubhouse__ShopHeader {
    flex-direction: column;
    align-items: flex-start;
  }
  .WillboClubhouse__LetterInner {
    max-width: 100%;
  }
}

/* ââ The Clubhouse â Gate Wall â Tom Adler book layout ââ */
.WillboClubhouseGate {
  position: relative;
  min-height: 100svh;
  background: #f0ede6;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
/* Full inner layout â photo + text side by side */
.WillboClubhouseGate__Inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 48px;
  padding: clamp(48px, 8vw, 96px) clamp(32px, 6vw, 80px);
  width: 100%;
  max-width: 860px;
}
/* Photo â floated, with generous white margin, feels placed */
.WillboClubhouseGate__PhotoWrap {
  width: 100%;
  max-width: 560px;
  aspect-ratio: 4/3;
  overflow: hidden;
  box-shadow: 0 2px 24px rgba(0,0,0,0.12);
}
.WillboClubhouseGate__Img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  filter: saturate(0.75);
}
.WillboClubhouseGate__ImgPlaceholder {
  width: 100%;
  height: 100%;
  background: #d8d4cc;
}
/* Text block â typewriter dense, tight leading */
.WillboClubhouseGate__TextBlock {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  width: 100%;
  max-width: 560px;
}
.WillboClubhouseGate__CrestImg {
  width: 28px;
  height: auto;
  opacity: 0.5;
  margin-top: 14px;
}
.WillboClubhouseGate__Line {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.12em;
  color: #1a1814;
  text-transform: uppercase;
  line-height: 1.85;
  margin: 0;
}
.WillboClubhouseGate__LineSpacer {
  height: 10px;
  margin: 0;
}
.WillboClubhouseGate__Action {
  display: inline-block;
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.12em;
  color: #1a1814;
  text-transform: uppercase;
  text-decoration: none;
  line-height: 1.85;
  margin: 0;
  transition: opacity 0.2s;
}
.WillboClubhouseGate__Action:hover { opacity: 0.5; }
.WillboClubhouseGate__Action--red {
  color: #c0392b;
}
.WillboClubhouseGate__Action--red:hover { opacity: 0.7; }
.WillboClubhouseGate__ActionSub {
  display: inline-block;
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.12em;
  color: #888580;
  text-transform: uppercase;
  text-decoration: none;
  line-height: 1.85;
  margin: 0;
  transition: opacity 0.2s;
}
.WillboClubhouseGate__ActionSub:hover { opacity: 0.6; }
@media (min-width: 768px) {
  .WillboClubhouseGate__Inner {
    flex-direction: row;
    align-items: flex-start;
    gap: clamp(48px, 6vw, 80px);
  }
  .WillboClubhouseGate__PhotoWrap {
    flex: 1.4;
    max-width: none;
    aspect-ratio: 3/4;
  }
  .WillboClubhouseGate__TextBlock {
    flex: 1;
    max-width: 240px;
    padding-top: 8px;
  }
}
@media (max-width: 767px) {
  .WillboClubhouseGate__PhotoWrap {
    aspect-ratio: 4/3;
  }
}

/* ââ Mobile âââââââââââââââââââââââââââââââââââââââââââââââââ */
@media (max-width: 767px) {
  .WillboClubhouse__HeroContent {
    padding: 0 24px 52px;
  }
  .WillboClubhouse__WelcomeBar { padding: 14px 24px; }
  .WillboClubhouse__WelcomeInner { gap: 12px; }
  .WillboClubhouse__Editorial { padding: 56px 24px; }
  .WillboClubhouse__Products { padding: 0 24px 72px; }
  .WillboClubhouse__Grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .WillboClubhouse__ProductInfo {
    flex-direction: column;
    gap: 6px;
    padding: 12px 14px 16px;
  }
  .WillboClubhouse__Footer { padding: 28px 24px; }
}

/* ââ Green dot easter egg in footer ââââââââââââââââââââââââ */
.WillboFooter__BrandIconLink {
  display: block;
  text-decoration: none;
  outline: none;
  border: none;
  -webkit-tap-highlight-color: transparent;
}
.WillboFooter__BrandIconLink:hover .WillboFooter__BrandImg,
.WillboFooter__BrandIconLink:focus .WillboFooter__BrandImg {
  opacity: 0.85;
  transition: opacity 0.2s;
}

/* ââ Clubhouse Journal Article ââââââââââââââââââââââââââ */
.WillboJournal {
  background: var(--w-white);
}
.WillboJournal__Hero {
  position: relative;
  height: 70svh;
  min-height: 400px;
  display: flex;
  align-items: flex-end;
  background: #0e0d0b;
  overflow: hidden;
}
.WillboJournal__HeroImg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.55) saturate(0.6);
}
.WillboJournal__HeroOverlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.75) 0%, transparent 60%);
}
.WillboJournal__HeroContent {
  position: relative;
  z-index: 2;
  padding: 0 clamp(32px, 6vw, 80px) clamp(40px, 6vw, 64px);
  width: 100%;
}
.WillboJournal__BackLink {
  display: inline-block;
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.18em;
  color: rgba(255,255,255,0.45);
  text-transform: uppercase;
  text-decoration: none;
  margin-bottom: 20px;
  transition: color 0.2s;
}
.WillboJournal__BackLink:hover { color: rgba(255,255,255,0.8); }
.WillboJournal__HeroLabel {
  display: block;
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.26em;
  color: #4ade80;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.WillboJournal__HeroTitle {
  font-family: var(--w-sans);
  font-size: clamp(28px, 5vw, 60px);
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--w-white);
  margin: 0 0 14px;
  line-height: 1.1;
  max-width: 800px;
}
.WillboJournal__HeroMeta {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 300;
  letter-spacing: 0.12em;
  color: rgba(255,255,255,0.4);
  text-transform: uppercase;
  margin: 0;
}
/* Article Body */
.WillboJournal__Body {
  padding: clamp(56px, 8vw, 100px) clamp(32px, 6vw, 80px);
}
.WillboJournal__BodyInner {
  max-width: 680px;
}
.WillboJournal__Letteropener {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 400;
  color: var(--w-mid);
  font-style: italic;
  margin: 0 0 32px;
}
.WillboJournal__Content {
  font-family: var(--w-sans);
  font-size: 16px;
  font-weight: 300;
  color: #333;
  line-height: 1.85;
}
.WillboJournal__Content p { margin: 0 0 24px; }
.WillboJournal__Content h2 {
  font-size: 22px;
  font-weight: 400;
  margin: 40px 0 16px;
  color: var(--w-black);
}
.WillboJournal__Content img {
  width: 100%;
  height: auto;
  margin: 32px 0;
}
.WillboJournal__Sig {
  font-family: var(--w-sans);
  font-size: 15px;
  font-weight: 400;
  font-style: italic;
  color: var(--w-mid);
  margin: 32px 0 0;
}
.WillboJournal__Footer {
  margin-top: 64px;
}
.WillboJournal__FooterRule {
  width: 100%;
  height: 1px;
  background: var(--w-border);
  margin-bottom: 28px;
}
.WillboJournal__FooterRow {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.WillboJournal__FooterBack {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.14em;
  color: var(--w-black);
  text-transform: uppercase;
  text-decoration: none;
  transition: opacity 0.2s;
}
.WillboJournal__FooterBack:hover { opacity: 0.5; }
.WillboJournal__FooterIcon {
  width: 24px;
  height: auto;
  opacity: 0.25;
}
@media (max-width: 767px) {
  .WillboJournal__Body {
    padding: 48px 24px;
  }
  .WillboJournal__BodyInner {
    max-width: 100%;
  }
}

/* âââ CLUBHOUSE PORTAL â FIX PATCH âââââââââââââââââââââââââââââââââââââââââ */

/* Founder's Letter â Read More link */
.WillboClubhouse__LetterReadMore {
  display: inline-block;
  margin-top: 28px;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--w-black);
  text-decoration: none;
  border-bottom: 1px solid rgba(17,17,17,0.25);
  padding-bottom: 2px;
  transition: border-color 0.2s ease;
}
.WillboClubhouse__LetterReadMore:hover {
  border-color: var(--w-black);
}

/* Journal â View All footer */
.WillboClubhouse__JournalFooter {
  margin-top: 40px;
  text-align: center;
}
.WillboClubhouse__JournalViewAll {
  display: inline-block;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--w-black, #111);
  text-decoration: none;
  border-bottom: 1px solid rgba(17,17,17,0.25);
  padding-bottom: 2px;
  margin-bottom: 24px;
  transition: border-color 0.2s ease;
}
.WillboClubhouse__JournalViewAll:hover {
  border-color: var(--w-black, #111);
}


/* âââ MEMBER COLLECTION HEADER â LABEL ROW RESTYLE ââââââââââââââââââââââââ */

/* Label + tag on same row, aligned baseline */
.WillboClubhouse__ShopLabelRow {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 4px;
}

/* Override old ShopHeader flex â no longer space-between */
.WillboClubhouse__ShopHeader {
  display: block;
  margin-bottom: 32px;
}

/* Tag now lives inline next to "CLUBHOUSE" label â quiet, not loud */
.WillboClubhouse__ShopTag {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
  /* remove any green color override from prior rule */
  color: var(--w-mid, #888580) !important;
  position: static;
  background: none;
  border: none;
  padding: 0;
}


/* âââ CLUBHOUSE ANNOUNCEMENT BAR âââââââââââââââââââââââââââââââââââââââââââ */

.WillboClubhouse__AnnoBar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background: #111111;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  height: 36px;
  padding: 0 20px;
}

.WillboClubhouse__AnnoBarText {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.75);
}

.WillboClubhouse__AnnoBarDot {
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #4ade80;
  flex-shrink: 0;
}

/* Push page content down by bar height so nothing hides under it */
body:has(#willbo-clubhouse-bar) {
  padding-top: 36px;
}


/* âââ CLUBHOUSE PAGE â NAV STICKY FIX âââââââââââââââââââââââââââââââââââââ */
/* When the clubhouse bar is present, push the nav down below it */
body:has(#willbo-clubhouse-bar) .Header,
body:has(#willbo-clubhouse-bar) .shopify-section-header,
body:has(#willbo-clubhouse-bar) [data-section-type="header"] {
  position: sticky !important;
  top: 36px !important;
  z-index: 9998 !important;
}

/* Also account for any theme wrapper that holds the header section */
body:has(#willbo-clubhouse-bar) #shopify-section-header {
  position: sticky !important;
  top: 36px !important;
  z-index: 9998 !important;
}


/* âââ VIP CART NOTE ââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
#willbo-vip-cart-note {
  margin-bottom: 10px;
  text-align: center;
}
.WillboVipCartNote {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #4ade80;
  display: inline-block;
}


/* âââ CART DRAWER â PREMIUM SERVICE POLISH âââââââââââââââââââââââââââââââ */
#sidebar-cart .Cart__ShippingNotice {
  border-bottom: 1px solid var(--w-border, #d9d5cc);
}
#sidebar-cart .Cart__ShippingNotice p {
  margin: 0;
  padding: 14px 0 13px;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0.015em;
  line-height: 1.35;
  color: var(--w-mid, #8f8a82);
}
#sidebar-cart .Drawer__Footer {
  padding-top: 24px;
}
#sidebar-cart .Cart__NoteButton {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0.02em;
  line-height: 1.4;
  color: var(--w-black, #111);
}
#sidebar-cart .Cart__Taxes {
  margin-top: 10px;
  margin-bottom: 24px;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.02em;
  line-height: 1.5;
  color: var(--w-mid, #8f8a82);
}
#sidebar-cart .Cart__Checkout {
  min-height: 58px;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.18em;
}

@media (max-width: 767px) {
  #sidebar-cart .Cart__ShippingNotice p {
    font-size: 12.5px;
    padding: 13px 0 12px;
  }
  #sidebar-cart .Drawer__Footer {
    padding-top: 22px;
  }
  #sidebar-cart .Cart__Taxes {
    margin-bottom: 22px;
  }
}


/* âââ MEMBER COLLECTION â CAROUSEL OVERRIDES âââââââââââââââââââââââââââââââ */

/* Section wrapper â match Prestige section spacing + 48px side padding */
.WillboClubhouse__Shop {
  padding: clamp(48px, 7vw, 96px) 0 !important; /* override old padding â Prestige handles inner */
  background: var(--w-white);
}

/* Section header sits inside the 48px grid */
.WillboClubhouse__ShopSectionHeader {
  padding-left: 48px !important;
  padding-right: 48px !important;
}

/* Desktop carousel card sizing â 3 visible at once with peek */
.WillboClubhouse__Carousel.Desktop .Carousel__Cell {
  width: calc(33.333% - 2px);
}

/* Card image ratio â keep 3/4 portrait */
.WillboClubhouse__Card .WillboClubhouse__CardImg {
  aspect-ratio: 3/4;
  overflow: hidden;
  background: var(--w-sand);
}
.WillboClubhouse__Card .WillboClubhouse__CardImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.WillboClubhouse__Card:hover .WillboClubhouse__CardImg img {
  transform: scale(1.03);
}

/* Card info â match existing member pricing styles */
.WillboClubhouse__Card .WillboClubhouse__CardInfo {
  padding: 12px 0 0;
}
.WillboClubhouse__Card .WillboClubhouse__CardName {
  display: block;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.14em;
  color: var(--w-black);
  margin-bottom: 6px;
}
.WillboClubhouse__Card .WillboClubhouse__CardPricing {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.WillboClubhouse__Card .WillboClubhouse__CardMemberRow {
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.WillboClubhouse__Card .WillboClubhouse__CardMemberLabel {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 300;
  color: var(--w-mid);
}
.WillboClubhouse__Card .WillboClubhouse__CardMember {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 11px;
  font-weight: 400;
  color: var(--w-black);
}
.WillboClubhouse__Card .WillboClubhouse__CardRetail {
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-size: 10px;
  font-weight: 300;
  color: #c0bbb5;
  text-decoration: line-through;
}

/* Mobile: Slick slider shows 2 cards */
@media (max-width: 767px) {
  .WillboClubhouse__ShopSectionHeader {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}


/* âââ MEMBER COLLECTION â HEADER + SCROLLBAR FIX âââââââââââââââââââââââââââ */

/* Make header flex row: label+title left, arrows right */
.WillboClubhouse__ShopSectionHeader {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  padding-bottom: 24px !important;
}

.WillboClubhouse__ShopSectionHeader .SectionHeader__Container {
  flex: 1 1 auto;
}

/* Keep arrows on same row, vertically centered */
.WillboClubhouse__ShopSectionHeader .WillboSlickNav {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 16px;
}

/* Hide native scrollbar on the carousel track */
.WillboClubhouse__Carousel.Desktop,
.WillboClubhouse__Carousel.Desktop .ProductList--carousel {
  overflow-x: auto;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE */
}
.WillboClubhouse__Carousel.Desktop::-webkit-scrollbar,
.WillboClubhouse__Carousel.Desktop .ProductList--carousel::-webkit-scrollbar {
  display: none;
}

/* Also hide on Prestige's Carousel wrapper */
.WillboClubhouse__Shop .Carousel {
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.WillboClubhouse__Shop .Carousel::-webkit-scrollbar {
  display: none;
}

/* Remove the bottom scrollbar line that Prestige adds */
.WillboClubhouse__Shop .ProductList--carousel::after,
.WillboClubhouse__Shop .Carousel::after {
  display: none !important;
}


/* âââ MEMBER COLLECTION â CLEAN CSS SCROLL (replaces carousel) âââââââââââââ */

.WillboClubhouse__Shop {
  padding: clamp(48px, 7vw, 96px) 0 !important;
  background: var(--w-white);
}

/* Header: label+title left, arrows right â 48px side padding matches nav */
.WillboClubhouse__ShopHeader {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  padding: 0 48px 24px !important;
  margin-bottom: 0 !important;
}

/* Arrow buttons */
.WillboClubhouse__ShopArrows {
  display: flex;
  align-items: center;
  gap: 20px;
  padding-bottom: 4px;
}
.WillboClubhouse__ShopArrow {
  background: none;
  border: none;
  padding: 4px;
  cursor: pointer;
  color: var(--w-black);
  line-height: 1;
  transition: opacity 0.2s ease;
}
.WillboClubhouse__ShopArrow:hover { opacity: 0.5; }

/* ScrollWrap â position:relative so masks can anchor to it */
.WillboClubhouse__ScrollWrap {
  width: 100%;
  position: relative;
}
/* Left + right masks â white rectangles that sit over cards bleeding into gutters */
.WillboClubhouse__ScrollWrap::before,
.WillboClubhouse__ScrollWrap::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 20px; /* stops above progress bar */
  width: 48px;
  z-index: 2;
  pointer-events: none;
}
.WillboClubhouse__ScrollWrap::before {
  left: 0;
  background: var(--w-white);
}
.WillboClubhouse__ScrollWrap::after {
  right: 0;
  background: var(--w-white);
}

/* Scroll track â pure free-scroll */
.WillboClubhouse__ScrollTrack {
  display: flex;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  gap: 2px;
  padding-left: 48px;  /* initial indent â first card starts at gutter */
  padding-right: 48px; /* right breathing room */
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.WillboClubhouse__ScrollTrack::-webkit-scrollbar {
  display: none;
}
.WillboClubhouse__ScrollTrack .WillboClubhouse__Card:first-child { margin-left: 0; }
.WillboClubhouse__ScrollTrack .WillboClubhouse__Card:last-child  { margin-right: 0; }

/* Each card â 4 visible on desktop, calc against full viewport */
.WillboClubhouse__ScrollTrack .WillboClubhouse__Card {
  flex: 0 0 calc(25vw - 26px); /* ~4 cards: 4Ã25vw minus gaps/margins */
  max-width: 320px;
  min-width: 200px;
  text-decoration: none;
  color: inherit;
  display: block;
}

/* ââ Progress bar â matches home page Custom Collections aesthetic ââ */
.WillboClubhouse__ProgressBar {
  position: relative;
  margin: 16px 48px 0;
  height: 1px;
  background: #e8e4dc; /* light sand â matches home page track */
}
.WillboClubhouse__ProgressThumb {
  position: absolute;
  top: 0;
  left: 0;
  height: 1px;
  background: #888580; /* mid-grey â matches home page Prestige thumb, not full black */
  transition: left 0.2s ease, width 0.2s ease;
  will-change: left, width;
}

/* Mobile: show ~2 cards */
@media (max-width: 767px) {
  .WillboClubhouse__ShopHeader {
    padding: 0 20px 20px !important;
    text-align: left;
    align-items: flex-start !important;
  }
  .WillboClubhouse__ShopArrows { display: none; }
  .WillboClubhouse__ScrollWrap::before,
  .WillboClubhouse__ScrollWrap::after { width: 20px; }
  .WillboClubhouse__ScrollTrack {
    padding-left: 20px;
    padding-right: 20px;
  }
  .WillboClubhouse__ScrollTrack .WillboClubhouse__Card {
    flex: 0 0 calc(50vw - 12px);
    max-width: none;
  }
  .WillboClubhouse__ProgressBar {
    margin-left: 20px;
    margin-right: 20px;
  }
}

/* Tablet: show 3 */
@media (min-width: 768px) and (max-width: 1024px) {
  .WillboClubhouse__ScrollTrack .WillboClubhouse__Card {
    flex: 0 0 calc(33.333vw - 18px);
    max-width: none;
  }
}


/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   CLUBHOUSE JOURNAL INDEX PAGE (blog.clubhouse-journal)
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboClubhouseJournal {
  background: var(--w-cream);
  min-height: 80vh;
  padding: clamp(48px, 6vw, 80px) clamp(32px, 6vw, 80px);
}
.WillboClubhouseJournal__Header {
  max-width: 800px;
  margin-bottom: 40px;
}
.WillboClubhouseJournal__Back {
  font-family: var(--w-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--w-mid);
  text-decoration: none;
  display: inline-block;
  margin-bottom: 28px;
  transition: color 0.2s;
}
.WillboClubhouseJournal__Back:hover { color: var(--w-black); }
.WillboClubhouseJournal__Label {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.26em;
  color: var(--w-mid);
  text-transform: uppercase;
  display: block;
  margin-bottom: 10px;
}
.WillboClubhouseJournal__Title {
  font-family: var(--w-sans);
  font-size: clamp(28px, 4vw, 56px);
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--w-black);
  margin: 0 0 16px;
  line-height: 1.05;
}
.WillboClubhouseJournal__Blurb {
  font-family: var(--w-sans);
  font-size: 14px;
  font-weight: 300;
  color: var(--w-mid);
  line-height: 1.7;
  margin: 0 0 24px;
  max-width: 560px;
}
.WillboClubhouseJournal__Rule {
  width: 100%;
  height: 1px;
  background: var(--w-border);
  margin-top: 8px;
}
/* Grid â 3 col desktop, 2 tablet, 1 mobile */
.WillboClubhouseJournal__Grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 32px;
}
@media (max-width: 900px) {
  .WillboClubhouseJournal__Grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .WillboClubhouseJournal__Grid { grid-template-columns: 1fr; gap: 32px; }
}
.WillboClubhouseJournal__Card {
  text-decoration: none;
  color: inherit;
  display: block;
}
.WillboClubhouseJournal__CardImg {
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: var(--w-sand);
  margin-bottom: 16px;
}
.WillboClubhouseJournal__CardImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.WillboClubhouseJournal__Card:hover .WillboClubhouseJournal__CardImg img {
  transform: scale(1.03);
}
.WillboClubhouseJournal__CardImgEmpty {
  width: 100%;
  height: 100%;
  background: var(--w-sand);
}
.WillboClubhouseJournal__CardBody { padding: 0; }
.WillboClubhouseJournal__CardDate {
  font-family: var(--w-sans);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.2em;
  color: var(--w-mid);
  display: block;
  margin-bottom: 8px;
}
.WillboClubhouseJournal__CardTitle {
  font-family: var(--w-sans);
  font-size: clamp(16px, 1.8vw, 22px);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: var(--w-black);
  margin: 0 0 10px;
  line-height: 1.2;
}
.WillboClubhouseJournal__CardExcerpt {
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-mid);
  line-height: 1.65;
  margin: 0 0 12px;
}
.WillboClubhouseJournal__CardRead {
  font-family: var(--w-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--w-black);
  text-transform: uppercase;
}
.WillboClubhouseJournal__Empty {
  padding: 60px 0;
  font-family: var(--w-sans);
  font-size: 13px;
  font-weight: 300;
  color: var(--w-mid);
  font-style: italic;
}
.WillboClubhouseJournal__Pagination {
  margin-top: 64px;
  text-align: center;
}


/* ============================================================
   PARAGON SPORTS â Agency Lookbook Page
   willbo-paragon.liquid
   ============================================================ */

.WillboParagon {
  background: var(--w-cream, #F5F3EE);
  min-height: 100vh;
  font-family: var(--w-sans, "DM Sans", sans-serif);
}

/* ââ Gate Wall âââââââââââââââââââââââââââââââââââââââââââââââ */
.WillboParagon__Gate {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  padding: 40px 24px;
  background: var(--w-cream, #F5F3EE);
}

.WillboParagon__GateInner {
  width: 100%;
  max-width: 420px;
  text-align: center;
}

.WillboParagon__GateLogo {
  margin: 0 auto 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.WillboParagon__GateLabel {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
  margin-bottom: 12px;
}

.WillboParagon__GateHeading {
  font-size: clamp(22px, 4vw, 28px);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: var(--w-black, #111111);
  margin: 0 0 10px;
  line-height: 1.2;
}

.WillboParagon__GateSub {
  font-size: 13px;
  font-weight: 300;
  color: var(--w-mid, #888580);
  margin: 0 0 36px;
  line-height: 1.6;
}

.WillboParagon__GateForm {
  width: 100%;
}

.WillboParagon__GateInputWrap {
  display: flex;
  gap: 0;
  border: 1px solid var(--w-border, #D9D5CC);
  background: #fff;
  overflow: hidden;
}

.WillboParagon__GateInput {
  flex: 1;
  padding: 14px 18px;
  font-size: 13px;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  font-weight: 400;
  color: var(--w-black, #111111);
  background: transparent;
  border: none;
  outline: none;
  letter-spacing: 0.05em;
}

.WillboParagon__GateInput::placeholder {
  color: var(--w-mid, #888580);
  letter-spacing: 0.08em;
  font-size: 12px;
}

.WillboParagon__GateBtn {
  padding: 14px 22px;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #fff;
  background: var(--w-black, #111111);
  border: none;
  cursor: pointer;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  transition: opacity 0.2s;
  white-space: nowrap;
}

.WillboParagon__GateBtn:hover {
  opacity: 0.8;
}

.WillboParagon__GateError {
  display: none;
  font-size: 11px;
  color: #c0392b;
  margin: 10px 0 0;
  letter-spacing: 0.04em;
}

.WillboParagon__GateContact {
  margin: 28px 0 0;
  font-size: 12px;
  color: var(--w-mid, #888580);
}

.WillboParagon__GateContact a {
  color: var(--w-black, #111111);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ââ Lookbook Header âââââââââââââââââââââââââââââââââââââââââ */
.WillboParagon__Header {
  padding: 48px 48px 0;
  max-width: 1400px;
  margin: 0 auto;
}

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

.WillboParagon__HeaderLogoWrap {
  display: flex;
  align-items: center;
}

.WillboParagon__LogoutBtn {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
  background: none;
  border: none;
  cursor: pointer;
  font-family: var(--w-sans, "DM Sans", sans-serif);
  transition: color 0.2s;
  padding: 0;
}

.WillboParagon__LogoutBtn:hover {
  color: var(--w-black, #111111);
}

.WillboParagon__HeaderDivider {
  width: 100%;
  height: 1px;
  background: var(--w-border, #D9D5CC);
  margin-bottom: 24px;
}

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

.WillboParagon__HeaderLabel {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
}

.WillboParagon__HeaderSeason {
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--w-mid, #888580);
}

.WillboParagon__LookbookHeading {
  font-size: clamp(28px, 5vw, 48px);
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--w-black, #111111);
  margin: 0 0 10px;
  line-height: 1.1;
}

.WillboParagon__LookbookSub {
  font-size: 14px;
  font-weight: 300;
  color: var(--w-mid, #888580);
  margin: 0 0 48px;
  line-height: 1.6;
  max-width: 480px;
}

/* ââ Product Grid ââââââââââââââââââââââââââââââââââââââââââââ */
.WillboParagon__Grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  padding: 0 48px 2px;
  max-width: 1400px;
  margin: 0 auto;
}

.WillboParagon__Card {
  background: #fff;
  display: flex;
  flex-direction: column;
}

.WillboParagon__CardImageWrap {
  position: relative;
  aspect-ratio: 3/4;
  overflow: hidden;
  background: var(--w-sand, #E8E4DC);
}

.WillboParagon__CardImage,
.WillboParagon__CardImageHover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.5s ease;
}

.WillboParagon__CardImageHover {
  opacity: 0;
}

.WillboParagon__Card:hover .WillboParagon__CardImageHover {
  opacity: 1;
}

.WillboParagon__CardInfo {
  padding: 20px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1;
  justify-content: space-between;
}

.WillboParagon__CardType {
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.15em;
  color: var(--w-mid, #888580);
  margin: 0 0 4px;
}

.WillboParagon__CardTitle {
  font-size: 15px;
  font-weight: 400;
  color: var(--w-black, #111111);
  margin: 0;
  letter-spacing: -0.01em;
  line-height: 1.3;
}

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

.WillboParagon__CardPrice {
  font-size: 13px;
  font-weight: 400;
  color: var(--w-black, #111111);
  letter-spacing: 0.02em;
}

.WillboParagon__InquireBtn {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--w-black, #111111);
  border: 1px solid var(--w-border, #D9D5CC);
  padding: 9px 16px;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
  white-space: nowrap;
}

.WillboParagon__InquireBtn:hover {
  background: var(--w-black, #111111);
  color: #fff;
  border-color: var(--w-black, #111111);
}

/* ââ Empty State âââââââââââââââââââââââââââââââââââââââââââââ */
.WillboParagon__Empty {
  padding: 80px 48px;
  text-align: center;
  color: var(--w-mid, #888580);
  font-size: 14px;
  font-weight: 300;
}

/* ââ Footer Strip ââââââââââââââââââââââââââââââââââââââââââââ */
.WillboParagon__FooterStrip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 48px;
  margin-top: 64px;
  border-top: 1px solid var(--w-border, #D9D5CC);
  font-size: 11px;
  color: var(--w-mid, #888580);
  letter-spacing: 0.04em;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.WillboParagon__FooterStrip a {
  color: var(--w-mid, #888580);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ââ Mobile ââââââââââââââââââââââââââââââââââââââââââââââââââ */
@media (max-width: 768px) {
  .WillboParagon__Header {
    padding: 32px 20px 0;
  }

  .WillboParagon__LookbookSub {
    margin-bottom: 32px;
  }

  .WillboParagon__Grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2px;
    padding: 0 0 2px;
  }

  .WillboParagon__CardInfo {
    padding: 16px 16px 20px;
  }

  .WillboParagon__CardBottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .WillboParagon__InquireBtn {
    width: 100%;
    text-align: center;
  }

  .WillboParagon__FooterStrip {
    flex-direction: column;
    gap: 8px;
    text-align: center;
    padding: 24px 20px;
    margin-top: 40px;
  }
}

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

.WillboParagon__GateLogoImg {
  width: 64px;
  height: auto;
  display: block;
}

.WillboParagon__HeaderLogoImg {
  width: 48px;
  height: auto;
  display: block;
}


/* ============================================================
   MATERIAL GUIDE â Product Page Accordion
   Matches WillboFitGuide editorial style
   ============================================================ */

.WillboMaterialGuide {
  padding: 4px 0 20px;
}

/* Fabric card header */
.WillboMaterialGuide__Card {
  margin-bottom: 24px;
}

.WillboMaterialGuide__FabricName {
  font-family: "DM Sans", sans-serif;
  font-size: 15px;
  font-weight: 400;
  color: #111111;
  letter-spacing: -0.01em;
  margin: 0 0 6px;
}

.WillboMaterialGuide__Meta {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 0;
}

.WillboMaterialGuide__MetaItem {
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #888580;
}

.WillboMaterialGuide__MetaDot {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #D9D5CC;
  flex-shrink: 0;
}

.WillboMaterialGuide__Divider {
  border: none;
  border-top: 1px solid #E8E4DC;
  margin: 0 0 20px;
}

/* Attribute bars â reuses same pill/track logic as FitGuide */
.WillboMaterialGuide__Attr {
  margin-bottom: 20px;
}

.WillboMaterialGuide__AttrName {
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #111111;
  margin-bottom: 10px;
}

.WillboMaterialGuide__Track {
  position: relative;
  height: 3px;
  border-radius: 0;
  margin-bottom: 8px;
  background: #D9D5CC;
}

.WillboMaterialGuide__Pill {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #111111;
  border: 2px solid #ffffff;
  box-shadow: 0 1px 4px rgba(0,0,0,0.2);
}

.WillboMaterialGuide__Labels {
  display: flex;
  justify-content: space-between;
  font-family: "DM Sans", sans-serif;
  font-size: 9px;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #888580;
}

/* âââ Hide COLLECTIONS nav item on desktop (not part of main nav) âââ */
.HorizontalList__Item[data-nav="collections"] {
  display: none !important;
}

/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
   WILLBO PODCASTS â Audio journal landing
   Keeps the banner film, cleans the episode archive below
   âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */
.Blog--podcasts {
  font-family: var(--w-sans) !important;
  background: #ffffff !important;
}

.Blog--podcasts .Container {
  max-width: none !important;
  padding: 0 24px !important;
}

.Blog--podcasts .PageHeader {
  margin: 58px 0 0 !important;
}

.Blog--podcasts .SectionHeader {
  text-align: left !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.82fr) minmax(300px, 0.18fr) !important;
  column-gap: 40px !important;
  align-items: end !important;
  border-bottom: 1px solid rgba(17,17,17,0.9) !important;
  padding-bottom: 18px !important;
}

.Blog--podcasts .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: clamp(54px, 10vw, 142px) !important;
  font-weight: 300 !important;
  letter-spacing: -0.065em !important;
  line-height: 0.86 !important;
  text-transform: none !important;
  color: var(--w-black, #111111) !important;
  margin: 0 !important;
}

.Blog--podcasts .SectionHeader::after {
  content: "Conversations, recordings, and field notes from the Willbo circle." !important;
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  line-height: 1.6 !important;
  text-transform: uppercase !important;
  color: var(--w-mid, #888580) !important;
  max-width: 280px !important;
}

.Blog--podcasts .WillboPodcastIntro {
  display: grid !important;
  grid-template-columns: minmax(180px, 0.25fr) minmax(0, 0.55fr) minmax(180px, 0.2fr) !important;
  gap: 28px !important;
  align-items: start !important;
  padding: 22px 0 72px !important;
}

.Blog--podcasts .WillboPodcastIntro__Kicker,
.Blog--podcasts .WillboPodcastIntro__Meta {
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  line-height: 1.45 !important;
  text-transform: uppercase !important;
  color: var(--w-mid, #888580) !important;
}

.Blog--podcasts .WillboPodcastIntro__Meta {
  text-align: right !important;
}

.Blog--podcasts .WillboPodcastIntro__Text {
  font-family: var(--w-sans) !important;
  font-size: clamp(18px, 2.1vw, 30px) !important;
  font-weight: 300 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.22 !important;
  color: var(--w-black, #111111) !important;
  margin: 0 !important;
  max-width: 780px !important;
}

.Blog--podcasts .WillboPodcastGrid {
  padding: 0 0 110px !important;
}

.Blog--podcasts .WillboPodcastGrid .ArticleList {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  column-gap: 20px !important;
  row-gap: 56px !important;
  margin: 0 !important;
}

.Blog--podcasts .WillboPodcastCard {
  grid-column: span 4 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.44fr) minmax(0, 0.56fr) !important;
  gap: 16px !important;
  align-items: start !important;
  padding-top: 18px !important;
  border-top: 1px solid rgba(17,17,17,0.22) !important;
}

.Blog--podcasts .WillboPodcastCard--lead {
  grid-column: span 12 !important;
  grid-template-columns: minmax(0, 0.56fr) minmax(0, 0.44fr) !important;
  gap: 28px !important;
  padding: 24px 0 !important;
  border-top: 1px solid rgba(17,17,17,0.9) !important;
  border-bottom: 1px solid rgba(17,17,17,0.9) !important;
}

.Blog--podcasts .WillboPodcastCard__ImageLink {
  display: block !important;
  overflow: hidden !important;
  background: var(--w-sand, #E8E4DC) !important;
  aspect-ratio: 1 / 1 !important;
}

.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__ImageLink {
  aspect-ratio: 16 / 9 !important;
}

.Blog--podcasts .WillboPodcastCard__Image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  filter: saturate(0.96) contrast(1.02) !important;
  transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

.Blog--podcasts .WillboPodcastCard:hover .WillboPodcastCard__Image {
  transform: scale(1.035) !important;
}

.Blog--podcasts .WillboPodcastCard__Body {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
}

.Blog--podcasts .WillboPodcastCard__Eyebrow {
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
  color: var(--w-mid, #888580) !important;
  margin-bottom: 12px !important;
}

.Blog--podcasts .WillboPodcastCard__Title,
.Blog--podcasts .WillboPodcastCard__Title a {
  font-family: var(--w-sans) !important;
  font-size: 18px !important;
  font-weight: 300 !important;
  letter-spacing: -0.018em !important;
  line-height: 1.18 !important;
  text-transform: none !important;
  color: var(--w-black, #111111) !important;
  margin: 0 !important;
  text-decoration: none !important;
}

.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title,
.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title a {
  font-size: clamp(34px, 4.8vw, 70px) !important;
  letter-spacing: -0.045em !important;
  line-height: 0.96 !important;
}

.Blog--podcasts .WillboPodcastCard__Excerpt {
  font-family: var(--w-sans) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.65 !important;
  color: var(--w-mid, #888580) !important;
  margin: 10px 0 18px !important;
}

.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Excerpt {
  font-size: 15px !important;
  line-height: 1.75 !important;
  max-width: 460px !important;
  margin-top: 18px !important;
}

.Blog--podcasts .WillboPodcastCard__Link {
  margin-top: auto !important;
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--w-black, #111111) !important;
  text-decoration: none !important;
}

.Blog--podcasts .Pagination {
  border: 0 !important;
  padding-bottom: 80px !important;
}

@media screen and (max-width: 999px) {
  .Blog--podcasts .SectionHeader,
  .Blog--podcasts .WillboPodcastIntro {
    grid-template-columns: 1fr !important;
  }

  .Blog--podcasts .SectionHeader::after,
  .Blog--podcasts .WillboPodcastIntro__Meta {
    text-align: left !important;
  }

  .Blog--podcasts .WillboPodcastGrid .ArticleList {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .Blog--podcasts .WillboPodcastCard,
  .Blog--podcasts .WillboPodcastCard--lead {
    grid-column: span 1 !important;
    grid-template-columns: 1fr !important;
  }

  .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__ImageLink {
    aspect-ratio: 1 / 1 !important;
  }
}

@media screen and (max-width: 599px) {
  .Blog--podcasts .Container {
    padding: 0 16px !important;
    overflow: hidden !important;
  }

  .Blog--podcasts .PageHeader {
    margin: 38px 0 0 !important;
  }

  .Blog--podcasts .SectionHeader__Heading {
    font-size: clamp(48px, 17vw, 76px) !important;
  }

  .Blog--podcasts .WillboPodcastIntro {
    gap: 18px !important;
    padding: 18px 0 48px !important;
  }

  .Blog--podcasts .WillboPodcastIntro__Text {
    font-size: 20px !important;
  }

  .Blog--podcasts .WillboPodcastGrid .ArticleList,
  .Blog--podcasts .WillboPodcastGrid .ArticleList.ArticleList--withFeatured {
    grid-template-columns: 1fr !important;
    row-gap: 38px !important;
    width: 100% !important;
    margin-left: 0 !important;
  }

  .Blog--podcasts .WillboPodcastCard {
    grid-template-columns: minmax(0, 0.38fr) minmax(0, 0.62fr) !important;
    gap: 14px !important;
    width: 100% !important;
    margin-left: 0 !important;
  }

  .Blog--podcasts .WillboPodcastCard--lead {
    grid-template-columns: 1fr !important;
  }

  .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title,
  .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title a {
    font-size: 34px !important;
  }

  .Blog--podcasts .WillboPodcastCard__Title,
  .Blog--podcasts .WillboPodcastCard__Title a {
    font-size: 16px !important;
  }
}

@media screen and (max-width: 599px) {
  body.template-blog .Blog--podcasts .WillboPodcastGrid .ArticleList.ArticleList--withFeatured {
    margin-left: 0 !important;
  }

  body.template-blog .Blog--podcasts .WillboPodcastCard--lead,
  body.template-blog .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title {
    transform: translateX(0) !important;
  }
}

/* Podcasts reset: quieter Noah / Surfer's Journal archive treatment. */
.Blog--podcasts .Container {
  max-width: none !important;
  padding: 0 50px !important;
}

.Blog--podcasts .PageHeader {
  margin: 54px 0 34px !important;
}

.Blog--podcasts .SectionHeader {
  display: block !important;
  text-align: left !important;
  border: 0 !important;
  padding: 0 !important;
}

.Blog--podcasts .SectionHeader::after {
  display: none !important;
  content: none !important;
}

.Blog--podcasts .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  font-size: clamp(34px, 4.6vw, 64px) !important;
  font-weight: 300 !important;
  letter-spacing: -0.045em !important;
  line-height: 0.98 !important;
  text-transform: none !important;
  color: var(--w-black, #111111) !important;
  margin: 0 !important;
}

.Blog--podcasts .WillboPodcastIntro {
  display: none !important;
}

.Blog--podcasts .WillboPodcastGrid {
  padding: 0 0 110px !important;
}

.Blog--podcasts .WillboPodcastGrid .ArticleList,
.Blog--podcasts .WillboPodcastGrid .ArticleList.ArticleList--withFeatured {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  column-gap: 20px !important;
  row-gap: 58px !important;
  margin: 0 !important;
  width: 100% !important;
}

.Blog--podcasts .WillboPodcastCard,
.Blog--podcasts .WillboPodcastCard--lead {
  display: block !important;
  grid-column: auto !important;
  padding: 0 !important;
  border: 0 !important;
}

.Blog--podcasts .WillboPodcastCard__ImageLink,
.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__ImageLink {
  display: block !important;
  aspect-ratio: 3 / 2 !important;
  overflow: hidden !important;
  margin: 0 0 12px !important;
  background: var(--w-sand, #E8E4DC) !important;
}

.Blog--podcasts .WillboPodcastCard__Image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  filter: none !important;
  transform: none !important;
  transition: opacity 0.25s ease !important;
}

.Blog--podcasts .WillboPodcastCard:hover .WillboPodcastCard__Image {
  transform: none !important;
  opacity: 0.92 !important;
}

.Blog--podcasts .WillboPodcastCard__Body {
  display: block !important;
  min-height: 0 !important;
}

.Blog--podcasts .WillboPodcastCard__Eyebrow {
  display: block !important;
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.2em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
  color: var(--w-mid, #888580) !important;
  margin: 0 0 7px !important;
}

.Blog--podcasts .WillboPodcastCard__Title,
.Blog--podcasts .WillboPodcastCard__Title a,
.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title,
.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title a {
  font-family: var(--w-sans) !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.35 !important;
  text-transform: none !important;
  color: var(--w-black, #111111) !important;
  margin: 0 !important;
  text-decoration: none !important;
}

.Blog--podcasts .WillboPodcastCard__Excerpt,
.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Excerpt {
  font-family: var(--w-sans) !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.6 !important;
  color: var(--w-mid, #888580) !important;
  margin: 6px 0 9px !important;
  max-width: 440px !important;
}

.Blog--podcasts .WillboPodcastCard__Link {
  display: inline-block !important;
  margin: 0 !important;
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: var(--w-black, #111111) !important;
  text-decoration: none !important;
}

@media screen and (max-width: 999px) {
  .Blog--podcasts .WillboPodcastGrid .ArticleList,
  .Blog--podcasts .WillboPodcastGrid .ArticleList.ArticleList--withFeatured {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 599px) {
  .Blog--podcasts .Container {
    padding: 0 16px !important;
  }

  .Blog--podcasts .PageHeader {
    margin: 38px 0 26px !important;
  }

  .Blog--podcasts .SectionHeader__Heading {
    font-size: clamp(34px, 13vw, 52px) !important;
  }

  .Blog--podcasts .WillboPodcastGrid .ArticleList,
  .Blog--podcasts .WillboPodcastGrid .ArticleList.ArticleList--withFeatured {
    grid-template-columns: 1fr !important;
    row-gap: 36px !important;
    margin-left: 0 !important;
  }
}

body.template-blog .Blog--podcasts .WillboPodcastGrid > .ArticleList {
  margin-left: 0 !important;
  transform: none !important;
}

/* Podcast landing hero: quiet editorial black band */
body.template-blog #section-slideshow-blog .Slideshow--blog {
  background: #0b0b0b !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Content {
  padding: 28px 24px 30px !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Content .SectionHeader {
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 9px !important;
  text-align: center !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Content .SectionHeader__Heading {
  font-family: var(--w-sans) !important;
  color: #ffffff !important;
  margin: 0 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Content .SectionHeader__Heading.u-h4 {
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.24em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
  opacity: 0.48 !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Content .SectionHeader__Heading.u-h1 {
  max-width: 560px !important;
  font-size: clamp(14px, 1.25vw, 18px) !important;
  font-weight: 300 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.55 !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Content .SectionHeader__Heading.u-h6 {
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.6 !important;
  text-transform: uppercase !important;
  opacity: 0.82 !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Content .SectionHeader__Heading.u-h6 p {
  margin: 0 !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Content a {
  color: #ffffff !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 4px !important;
}

@media screen and (max-width: 640px) {
  body.template-blog #section-slideshow-blog .Slideshow__Content {
    padding: 24px 18px 26px !important;
  }

  body.template-blog #section-slideshow-blog .Slideshow__Content .SectionHeader {
    gap: 8px !important;
  }

  body.template-blog #section-slideshow-blog .Slideshow__Content .SectionHeader__Heading.u-h1 {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }
}

/* Trading Cards intro band: consistent, quiet typography */
body.template-blog #shopify-section-textonly-trading-card {
  background: #0b0b0b !important;
  color: #ffffff !important;
}

body.template-blog #shopify-section-textonly-trading-card .textonly-trading-card {
  margin: 0 !important;
  padding: 46px 0 24px !important;
  background: #0b0b0b !important;
}

body.template-blog #shopify-section-textonly-trading-card .SectionHeader,
body.template-blog #shopify-section-textonly-trading-card .SectionContent,
body.template-blog #shopify-section-textonly-trading-card .Linklist {
  margin: 0 !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-family: var(--w-sans) !important;
  text-align: center !important;
}

body.template-blog #shopify-section-textonly-trading-card .Container {
  max-width: 680px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

body.template-blog #shopify-section-textonly-trading-card .SectionHeader__Heading {
  margin: 0 0 12px !important;
  font-family: var(--w-sans) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.24em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  opacity: 0.48 !important;
}

body.template-blog #shopify-section-textonly-trading-card .SectionContent {
  margin: 0 auto 18px !important;
}

body.template-blog #shopify-section-textonly-trading-card .SectionContent,
body.template-blog #shopify-section-textonly-trading-card .SectionContent p {
  font-family: var(--w-sans) !important;
  font-size: clamp(14px, 1.15vw, 17px) !important;
  font-weight: 300 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.55 !important;
  color: #ffffff !important;
}

body.template-blog #shopify-section-textonly-trading-card .SectionContent p {
  margin: 0 !important;
}

body.template-blog #shopify-section-textonly-trading-card .Linklist,
body.template-blog #shopify-section-textonly-trading-card .Linklist span,
body.template-blog #shopify-section-textonly-trading-card .Linklist a {
  font-family: var(--w-sans) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.6 !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
}

body.template-blog #shopify-section-textonly-trading-card .Linklist .link-list-item {
  padding: 0 10px !important;
}

body.template-blog #shopify-section-textonly-trading-card .Linklist a {
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 4px !important;
}

@media screen and (max-width: 640px) {
  body.template-blog #shopify-section-textonly-trading-card .textonly-trading-card {
    padding: 38px 0 20px !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .Container {
    padding: 0 18px !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .Linklist .link-list-item {
    padding: 0 6px !important;
  }
}

/* Our Story: keep the hero cinematic without burying the editorial opener */
body.our-story .Slideshow--blog,
body.our-story .Slideshow--blog .Slideshow__Carousel,
body.our-story .Slideshow--blog .flickity-viewport,
body.our-story .Slideshow--blog .flickity-slider,
body.our-story .Slideshow--blog .Slideshow__Slide,
body.our-story .Slideshow--blog .Image_link,
body.our-story .Slideshow--blog .Slideshow__ImageContainer {
  height: clamp(560px, 74vh, 780px) !important;
}

body.our-story .Slideshow--blog .Slideshow__ImageContainer {
  padding-bottom: 0 !important;
}

body.our-story .Slideshow--blog .Slideshow__Image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

@media screen and (max-width: 640px) {
  body.our-story .Slideshow--blog,
  body.our-story .Slideshow--blog .Slideshow__Carousel,
  body.our-story .Slideshow--blog .flickity-viewport,
  body.our-story .Slideshow--blog .flickity-slider,
  body.our-story .Slideshow--blog .Slideshow__Slide,
  body.our-story .Slideshow--blog .Image_link,
  body.our-story .Slideshow--blog .Slideshow__ImageContainer {
    height: 72vh !important;
    min-height: 520px !important;
    max-height: 680px !important;
  }
}

/* Trading Cards: remove the stray grey spacer between the hero and intro band. */
body.template-blog #section-slideshow-blog,
body.template-blog #section-slideshow-blog .Slideshow--blog,
body.template-blog #section-slideshow-blog .Slideshow__Carousel,
body.template-blog #section-slideshow-blog .flickity-viewport,
body.template-blog #section-slideshow-blog .flickity-slider,
body.template-blog #section-slideshow-blog .Slideshow__Slide,
body.template-blog #section-slideshow-blog .Image_link,
body.template-blog #section-slideshow-blog .Slideshow__ImageContainer {
  height: clamp(420px, 43vw, 560px) !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Image,
body.template-blog #section-slideshow-blog video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

body.template-blog #section-slideshow-blog .Slideshow__Content {
  display: none !important;
}

body.template-blog #shopify-section-textonly-trading-card,
body.template-blog #shopify-section-textonly-trading-card .textonly-trading-card {
  background: #0b0b0b !important;
  margin-top: 0 !important;
}

/* Trading Cards landing: keep hero artwork and intro copy in separate sections.
   The page may render as either a blog template or page preview in Shopify, so
   scope from the Trading Cards intro section instead of relying only on body classes. */
body:has(#shopify-section-textonly-trading-card) #section-slideshow-blog,
body:has(#shopify-section-textonly-trading-card) #section-slideshow-blog .Slideshow--blog,
body:has(#shopify-section-textonly-trading-card) #section-slideshow-blog .Slideshow__Carousel,
body:has(#shopify-section-textonly-trading-card) #section-slideshow-blog .flickity-viewport,
body:has(#shopify-section-textonly-trading-card) #section-slideshow-blog .flickity-slider,
body:has(#shopify-section-textonly-trading-card) #section-slideshow-blog .Slideshow__Slide,
body:has(#shopify-section-textonly-trading-card) #section-slideshow-blog .Image_link,
body:has(#shopify-section-textonly-trading-card) #section-slideshow-blog .Slideshow__ImageContainer {
  height: clamp(420px, 43vw, 560px) !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
}

body:has(#shopify-section-textonly-trading-card) #section-slideshow-blog .Slideshow__Content {
  display: none !important;
}

/* WILLBO â Variant-level Back In Stock notify */
.WillboBackInStock {
  margin-top: 14px;
}

.WillboBisActive .ProductForm__AddToCart {
  display: none !important;
}

.WillboBackInStock[hidden],
.WillboBackInStock__Panel[hidden] {
  display: none !important;
}

.WillboBackInStock__Trigger {
  border-color: #7f211b !important;
  background: #7f211b !important;
  color: #fff !important;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.WillboBackInStock__Trigger:hover {
  border-color: #681a15 !important;
  background: #681a15 !important;
  color: #fff !important;
}

.WillboBackInStock__Panel {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(17, 17, 17, .12);
}

.WillboBackInStock.is-success .WillboBackInStock__Panel {
  padding: 13px 14px 12px;
  border: 1px solid rgba(127, 33, 27, .22);
  background: rgba(127, 33, 27, .045);
}

.WillboBackInStock.is-success .WillboBackInStock__Trigger {
  border-color: #111 !important;
  background: #111 !important;
  color: #fff !important;
}

.WillboBackInStock__Text,
.WillboBackInStock__Message {
  margin: 0;
  font-size: 11px;
  line-height: 1.55;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: rgba(17, 17, 17, .62);
}

.WillboBackInStock__Row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  margin-top: 10px;
}

.WillboBackInStock.is-success .WillboBackInStock__Row {
  display: none;
}

.WillboBackInStock__Input {
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid rgba(17, 17, 17, .18);
  border-radius: 0;
  background: #fff;
  color: #111;
  font-size: 12px;
  letter-spacing: .03em;
}

.WillboBackInStock__Input:focus {
  border-color: #111;
  outline: none;
}

.WillboBackInStock__Submit {
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid #111;
  background: #111;
  color: #fff;
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.WillboBackInStock__Submit:disabled {
  opacity: .55;
  cursor: wait;
}

.WillboBackInStock__Message {
  margin-top: 9px;
}

.WillboBackInStock.is-success .WillboBackInStock__Message {
  margin-top: 0;
  color: #111;
}

.WillboBackInStock.is-success .WillboBackInStock__Message:before {
  content: "â";
  display: inline-block;
  margin-right: 7px;
  color: #7f211b;
  font-size: 12px;
}

.WillboBackInStock.is-error .WillboBackInStock__Message {
  color: #7f211b;
}

@media screen and (max-width: 640px) {
  body.template-blog #section-slideshow-blog,
  body.template-blog #section-slideshow-blog .Slideshow--blog,
  body.template-blog #section-slideshow-blog .Slideshow__Carousel,
  body.template-blog #section-slideshow-blog .flickity-viewport,
  body.template-blog #section-slideshow-blog .flickity-slider,
  body.template-blog #section-slideshow-blog .Slideshow__Slide,
  body.template-blog #section-slideshow-blog .Image_link,
  body.template-blog #section-slideshow-blog .Slideshow__ImageContainer {
    height: clamp(430px, 62vh, 560px) !important;
  }
}

/* WILLBO: bottom Explore tiles remain fully clickable.
   The visual hover overlay should not intercept clicks from the linked image card. */
.shopify-section--menu-explorer .LinkItem__Info::before {
  pointer-events: none !important;
}

.shopify-section--menu-explorer .Linklist--item {
  pointer-events: auto !important;
  cursor: pointer !important;
}

.shopify-section--menu-explorer .LinkItem__Title {
  pointer-events: none !important;
}

/* ==========================================================================
   WILLBO AUGUST THEME POLISH
   Direction: Salt commerce restraint + WILLBO California editorial warmth.
   Keep this layer at the end of custom.css so it can be tuned safely.
   ========================================================================== */

:root {
  --willbo-ink: #111111;
  --willbo-soft-ink: rgba(17, 17, 17, 0.64);
  --willbo-muted-ink: rgba(17, 17, 17, 0.46);
  --willbo-rule: rgba(17, 17, 17, 0.12);
  --willbo-paper: #f6f3ed;
  --willbo-paper-soft: #faf8f3;
  --willbo-label-font: var(--w-sans);
  --willbo-body-font: var(--w-sans);
  --willbo-editorial-font: "Sabon", "EB Garamond", Georgia, serif;
}

body {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body,
.Text--subdued,
.Rte,
.ProductMeta,
.ProductForm,
.Footer,
.Drawer {
  font-family: var(--willbo-body-font) !important;
}

/* Salt-inspired restraint: small, consistent label language */
.Header__MainNav a,
.Header__SecondaryNav a,
.Header__Icon,
.SidebarMenu a,
.WillboMobileNav__ColLabel,
.WillboMobileNav__ColChild,
.CollectionToolbar,
.CollectionToolbar a,
.CollectionToolbar button,
.Pagination,
.Breadcrumb,
.ProductItem__Title,
.ProductItem__PriceList,
.ProductItem__ColorCount,
.ProductItem__SoldOut,
.ProductMeta__PriceList,
.ProductMeta__Sku,
.ProductForm__OptionName,
.ProductForm__Label,
.ArticleItem__Category,
.ArticleItem__Link,
.WillboPodcastCard__Eyebrow,
.WillboPodcastCard__Link,
.WillboCircle__Kicker,
.WillboCircle__Pursuits,
.WillboCircle__FamilyLine,
.WillboCircle__MetaLine,
.WillboCircle__CTA {
  font-family: var(--willbo-label-font) !important;
  letter-spacing: 0.085em !important;
  text-transform: uppercase;
  font-weight: 400 !important;
}

.Header__MainNav a,
.Header__SecondaryNav a,
.Header__Icon {
  font-size: 11px !important;
  line-height: 1.2 !important;
}

/* Keep storytelling readable. Labels can be uppercase, paragraphs should breathe. */
.Rte p,
.Article__Body p,
.PageContent p,
.ProductMeta__Description,
.WillboCircle__Copy,
.WillboStoryBuilder p,
.WillboPodcastCard__Excerpt {
  letter-spacing: 0.005em;
  line-height: 1.72;
}

/* Clean two-tier CTA system */
.Button,
.shopify-payment-button__button,
.ProductForm__AddToCart,
.Cart__Checkout,
.Drawer__Footer .Button,
.Form__Submit {
  min-height: 46px;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--willbo-label-font) !important;
  font-size: 10px !important;
  letter-spacing: 0.105em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
}

.Button--primary,
.ProductForm__AddToCart,
.Cart__Checkout,
.Form__Submit {
  background: var(--willbo-ink) !important;
  border-color: var(--willbo-ink) !important;
  color: #ffffff !important;
}

.Button--secondary,
.Button--outline,
.Button:not(.Button--primary):not(.ProductForm__AddToCart):not(.Cart__Checkout) {
  background: transparent;
  color: var(--willbo-ink);
  border-color: var(--willbo-rule);
}

@media (-moz-touch-enabled: 0), (hover: hover) {
  .Button--primary:hover,
  .ProductForm__AddToCart:hover,
  .Cart__Checkout:hover,
  .Form__Submit:hover {
    background: #2a2a2a !important;
    border-color: #2a2a2a !important;
  }

  .Button--secondary:hover,
  .Button--outline:hover {
    border-color: var(--willbo-ink) !important;
  }
}

/* Product grid polish: calmer, more optical, more scannable */
.ProductListWrapper {
  color: var(--willbo-ink);
}

.ProductList--grid .Grid__Cell {
  margin-bottom: clamp(30px, 4vw, 54px);
}

.ProductItem {
  text-align: left;
}

.ProductItem__Wrapper,
.ProductItem__ImageWrapper {
  background: var(--willbo-paper-soft);
}

.ProductItem__Info {
  margin-top: 13px !important;
  padding-top: 0 !important;
}

.ProductItem__Title {
  margin-bottom: 4px !important;
  font-size: 10.5px !important;
  line-height: 1.35 !important;
  color: var(--willbo-ink) !important;
}

.ProductItem__PriceList,
.ProductItem__ColorCount,
.ProductItem__SoldOut {
  font-size: 10px !important;
  line-height: 1.4 !important;
  color: var(--willbo-muted-ink) !important;
}

.ProductItem__ColorSwatchList {
  gap: 6px;
}

.ProductItem__ColorSwatchList .ColorSwatch {
  width: 13px !important;
  height: 13px !important;
  border-radius: 0 !important;
  box-shadow: inset 0 0 0 1px rgba(17, 17, 17, 0.14);
}

/* Collection headers and filter systems: less shout, more shop-floor precision */
.CollectionMain,
.CollectionInner,
.CollectionToolbar,
.WillboCollectionHeader {
  background: #ffffff;
}

.WillboCollectionHeader__Title,
.CollectionHeader__Title,
.PageHeader .SectionHeader__Heading {
  font-family: var(--willbo-body-font) !important;
  letter-spacing: -0.015em !important;
  text-transform: uppercase;
  font-weight: 400 !important;
}

.WillboCollectionHeader__Filter,
.WillboCollectionHeader__ViewButton,
.CollectionToolbar__Item,
.CollectionToolbar__Group button,
.CollectionToolbar__Group a {
  border-radius: 0 !important;
  letter-spacing: 0.085em !important;
}

/* Editorial cards: cleaner Noah/Salt restraint without losing WILLBO warmth */
.ArticleItem,
.WillboPodcastCard {
  color: var(--willbo-ink);
}

.ArticleItem__ImageWrapper,
.WillboPodcastCard__ImageLink {
  background: var(--willbo-paper-soft);
}

.ArticleItem__Title,
.WillboPodcastCard__Title {
  font-family: var(--willbo-body-font) !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.2 !important;
  color: var(--willbo-ink) !important;
}

.ArticleItem__Excerpt,
.WillboPodcastCard__Excerpt {
  color: var(--willbo-soft-ink) !important;
}

.ArticleItem__Link,
.WillboPodcastCard__Link {
  color: var(--willbo-ink) !important;
  border-bottom: 1px solid currentColor;
  text-decoration: none !important;
  padding-bottom: 2px;
}

/* Circle landing inherits the more disciplined system while staying warm. */
.WillboCircle--Landing .WillboCircle__Heading {
  letter-spacing: -0.025em !important;
}

.WillboCircle--Landing .WillboCircle__Copy {
  color: var(--willbo-soft-ink) !important;
}

.WillboCircle--Landing .WillboCircle__Photo {
  background: var(--willbo-paper);
}

@media screen and (min-width: 900px) {
  .WillboCircle--Landing .WillboCircle__Athletes:has(.WillboCircle__Athlete:only-child) {
    grid-template-columns: minmax(280px, 440px) !important;
    justify-content: center;
  }
}

/* AUGUST THEME: Circle landing refinement.
   Keep the opening image truly full-bleed, then make each member feel like one
   connected editorial card rather than a separated image + description stack. */
.WillboCircle--Landing .WillboCircle__Spread {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

.WillboCircle--Landing .WillboCircle__SpreadImg {
  width: 100% !important;
  max-width: none !important;
}

.WillboCircle--Landing .WillboCircle__Athletes {
  padding-left: var(--willbo-page-gutter, 40px);
  padding-right: var(--willbo-page-gutter, 40px);
  padding-bottom: clamp(32px, 4vw, 56px) !important;
  display: grid;
  gap: 32px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 440px)) !important;
  justify-content: center;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}

.WillboCircle--Landing .WillboCircle__Athlete {
  max-width: 1040px;
  margin-left: auto;
  margin-right: auto;
  background: var(--w-cream, #F5F3EE);
  display: grid;
  gap: 0;
  overflow: hidden;
}

.WillboCircle--Landing .WillboCircle__Photo,
.WillboCircle--Landing .WillboCircle__PhotoLink,
.WillboCircle--Landing .WillboCircle__Panel {
  min-width: 0;
}

.WillboCircle--Landing .WillboCircle__PhotoLink,
.WillboCircle--Landing .WillboCircle__Photo,
.WillboCircle--Landing .WillboCircle__Panel {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.WillboCircle--Landing .WillboCircle__Panel {
  border-top: 0 !important;
}

@media screen and (min-width: 900px) {
  .WillboCircle--Landing .WillboCircle__Athletes:has(.WillboCircle__Athlete:only-child) {
    display: grid !important;
    grid-template-columns: minmax(0, 440px) !important;
    justify-content: center;
  }

  .WillboCircle--Landing .WillboCircle__Athlete {
    width: 100%;
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "media"
      "copy";
    align-items: start;
  }

  .WillboCircle--Landing .WillboCircle__Photo {
    grid-area: media;
    order: initial !important;
    aspect-ratio: 1 / 1.05 !important;
    min-height: 0;
    max-height: none;
    height: auto;
  }

  .WillboCircle--Landing .WillboCircle__PhotoLink {
    grid-area: media;
    display: block;
    height: auto;
  }

  .WillboCircle--Landing .WillboCircle__Panel {
    grid-area: copy;
    padding: 42px 48px 48px;
    justify-content: center;
  }

  .WillboCircle--Landing .WillboCircle__Name {
    font-size: clamp(27px, 2.1vw, 34px);
  }

  .WillboCircle--Landing .WillboCircle__Bio {
    font-size: 15px;
    line-height: 1.72;
    margin-bottom: 28px;
  }

  .WillboCircle--Landing .WillboCircle__CTA {
    background: transparent !important;
    color: var(--w-black, #111111) !important;
    border: 0 !important;
    border-bottom: 1px solid currentColor !important;
    box-shadow: none !important;
    display: inline-block !important;
    width: auto !important;
    padding: 0 0 7px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    font-size: 11px;
    letter-spacing: 0.12em;
    align-self: flex-start;
    position: relative;
  }
}

.WillboCircle--Landing .WillboCircle__CTA::before,
.WillboCircle--Landing .WillboCircle__CTA::after {
  display: none !important;
  content: none !important;
}

.WillboCircle--Landing .WillboCircle__CTA {
  text-decoration: none !important;
  background-image: none !important;
}

.WillboCircle--Landing .WillboCircle__CTA span,
.WillboCircle--Landing .WillboCircle__CTA .Link {
  text-decoration: none !important;
  background-image: none !important;
  border-bottom: 0 !important;
}

.WillboCircle--Landing .WillboCircle__CTA {
  border-bottom: 1px solid currentColor !important;
}

/* AUGUST THEME: Circle profile readability.
   Keep Maddix/member profile typography premium, but make all profile text
   read black for stronger editorial contrast. */
.WillboProfile,
.WillboProfile p,
.WillboProfile a,
.WillboProfile span,
.WillboProfile h1,
.WillboProfile h2,
.WillboProfile h3,
.WillboProfile__BodyInner p,
.WillboProfile__Quote,
.WillboProfile__VitalLabel,
.WillboProfile__VitalValue,
.WillboProfile__Q,
.WillboProfile__A,
.WillboProfile__VideoLabel,
.WillboProfile__BackLink,
.WillboProfile__LogoStory,
.WillboProfile__LogoStory p,
.WillboProfile__LogoStory span,
.WillboProfile__LogoStory a,
.WillboProfile__Collection,
.WillboProfile__Collection p,
.WillboProfile__Collection a,
.WillboProfile__EditorialPhoto,
.WillboProfile__EditorialPhoto figcaption {
  color: var(--w-black, #111111) !important;
}

@media screen and (max-width: 899px) {
  .WillboCircle--Landing .WillboCircle__Athletes {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 36px !important;
  }

  .WillboCircle--Landing .WillboCircle__Athlete {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "media"
      "copy";
  }

  .WillboCircle--Landing .WillboCircle__Photo {
    grid-area: media;
    order: initial !important;
  }

  .WillboCircle--Landing .WillboCircle__PhotoLink {
    grid-area: media;
    display: block;
  }

  .WillboCircle--Landing .WillboCircle__Panel {
    grid-area: copy;
    padding: 32px 24px 44px;
  }

  .WillboCircle--Landing .WillboCircle__CTA {
    background: transparent !important;
    color: var(--w-black, #111111) !important;
    border: 0 !important;
    border-bottom: 1px solid currentColor !important;
    box-shadow: none !important;
    display: inline-block !important;
    width: auto !important;
    padding: 0 0 7px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    font-size: 11px;
    letter-spacing: 0.12em;
    position: relative;
  }
}

/* Product card correction: keep collection grids clean white, not warm blocks. */
.ProductItem,
.ProductItem__Wrapper,
.ProductItem__ImageWrapper,
.ProductItem__Info {
  background: #ffffff !important;
}

.ProductItem__Title,
.ProductItem__Title a {
  font-family: var(--willbo-body-font) !important;
  font-weight: 400 !important;
  letter-spacing: 0.012em !important;
  text-transform: none !important;
  color: var(--willbo-ink) !important;
}

.ProductItem__PriceList,
.ProductItem__ColorCount,
.ProductItem__SoldOut {
  font-family: var(--willbo-body-font) !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  color: rgba(17, 17, 17, 0.52) !important;
}

/* Trading Cards — final premium series treatment for AUGUST THEME.
   The page should read like a branded editorial series, not a stock blog archive. */
body.template-blog .Blog--podcasts {
  background: #ffffff !important;
}

body.template-blog #shopify-section-textonly-trading-card .textonly-trading-card {
  padding: clamp(44px, 5.8vw, 74px) 0 clamp(36px, 4.4vw, 56px) !important;
}

body.template-blog #shopify-section-textonly-trading-card .Container {
  max-width: 760px !important;
}

body.template-blog #shopify-section-textonly-trading-card .SectionHeader__Heading {
  margin-bottom: 18px !important;
  font-family: var(--willbo-label-font, var(--w-sans)) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.24em !important;
  opacity: 0.62 !important;
}

body.template-blog #shopify-section-textonly-trading-card .SectionContent,
body.template-blog #shopify-section-textonly-trading-card .SectionContent p {
  max-width: 660px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-family: var(--willbo-body-font, var(--w-sans)) !important;
  font-size: clamp(15px, 1.28vw, 19px) !important;
  font-weight: 300 !important;
  letter-spacing: 0.005em !important;
  line-height: 1.72 !important;
}

body.template-blog #shopify-section-textonly-trading-card .Linklist {
  margin-top: 22px !important;
}

body.template-blog .Blog--podcasts .Container {
  max-width: none !important;
  padding-left: clamp(20px, 4vw, 56px) !important;
  padding-right: clamp(20px, 4vw, 56px) !important;
}

body.template-blog .Blog--podcasts .PageHeader {
  display: none !important;
}

body.template-blog .Blog--podcasts .WillboPodcastGrid {
  margin: 0 !important;
  padding: clamp(42px, 5vw, 72px) 0 clamp(72px, 7vw, 112px) !important;
}

body.template-blog .Blog--podcasts .WillboPodcastGrid .ArticleList,
body.template-blog .Blog--podcasts .WillboPodcastGrid .ArticleList.ArticleList--withFeatured,
body.template-blog .Blog--podcasts .WillboPodcastGrid > .ArticleList {
  width: 100% !important;
  max-width: 1360px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: clamp(28px, 4vw, 64px) !important;
  row-gap: clamp(42px, 5vw, 76px) !important;
  transform: none !important;
}

body.template-blog .Blog--podcasts .WillboPodcastCard,
body.template-blog .Blog--podcasts .WillboPodcastCard--lead {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 18px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.template-blog .Blog--podcasts .WillboPodcastCard__ImageLink,
body.template-blog .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__ImageLink {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  background: #f5f3ee !important;
}

body.template-blog .Blog--podcasts .WillboPodcastCard__Image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1.001);
  transition: transform 650ms cubic-bezier(0.16, 1, 0.3, 1), opacity 220ms ease !important;
}

@media (-moz-touch-enabled: 0), (hover: hover) {
  body.template-blog .Blog--podcasts .WillboPodcastCard:hover .WillboPodcastCard__Image {
    transform: scale(1.025) !important;
  }
}

body.template-blog .Blog--podcasts .WillboPodcastCard__Body {
  max-width: 560px !important;
  padding: 0 !important;
  gap: 9px !important;
}

body.template-blog .Blog--podcasts .WillboPodcastCard__Eyebrow {
  font-family: var(--willbo-label-font, var(--w-sans)) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: rgba(17, 17, 17, 0.48) !important;
}

body.template-blog .Blog--podcasts .WillboPodcastCard__Title,
body.template-blog .Blog--podcasts .WillboPodcastCard__Title a,
body.template-blog .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title,
body.template-blog .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title a {
  margin: 0 !important;
  font-family: var(--willbo-body-font, var(--w-sans)) !important;
  font-size: clamp(22px, 2vw, 30px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.018em !important;
  line-height: 1.08 !important;
  text-transform: none !important;
  color: #111111 !important;
}

body.template-blog .Blog--podcasts .WillboPodcastCard__Excerpt,
body.template-blog .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Excerpt {
  max-width: 48ch !important;
  margin: 2px 0 0 !important;
  font-family: var(--willbo-body-font, var(--w-sans)) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  letter-spacing: 0.003em !important;
  line-height: 1.72 !important;
  color: rgba(17, 17, 17, 0.58) !important;
}

body.template-blog .Blog--podcasts .WillboPodcastCard__Link {
  width: max-content !important;
  margin-top: 7px !important;
  font-family: var(--willbo-label-font, var(--w-sans)) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  border-bottom: 1px solid currentColor !important;
  padding-bottom: 3px !important;
}

/* Trading Cards article — keep the mobile hero cinematic, never letterboxed. */
@media screen and (max-width: 767px) {
  .WillboTCA__Hero {
    aspect-ratio: 4 / 5 !important;
    overflow: hidden !important;
    background: #111111 !important;
  }

  .WillboTCA__HeroImg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: auto !important;
    object-fit: cover !important;
    object-position: center top !important;
    background: #111111 !important;
  }

  .WillboTCA__HeroOverlay {
    position: absolute !important;
    inset: auto 0 0 0 !important;
    padding: 28px 20px 30px !important;
    background: linear-gradient(to top, rgba(0,0,0,0.78), rgba(0,0,0,0.18), rgba(0,0,0,0)) !important;
  }

  .WillboTCA__HeroName {
    font-size: clamp(34px, 10vw, 44px) !important;
    line-height: 1.03 !important;
  }

  body.template-blog .Blog--podcasts .WillboPodcastGrid {
    padding: 34px 0 72px !important;
  }

  body.template-blog .Blog--podcasts .WillboPodcastGrid .ArticleList,
  body.template-blog .Blog--podcasts .WillboPodcastGrid .ArticleList.ArticleList--withFeatured,
  body.template-blog .Blog--podcasts .WillboPodcastGrid > .ArticleList {
    grid-template-columns: 1fr !important;
    row-gap: 42px !important;
  }

  body.template-blog .Blog--podcasts .WillboPodcastCard__ImageLink,
  body.template-blog .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__ImageLink {
    aspect-ratio: 4 / 5 !important;
  }

  body.template-blog .Blog--podcasts .WillboPodcastCard__Title,
  body.template-blog .Blog--podcasts .WillboPodcastCard__Title a {
    font-size: clamp(22px, 7vw, 30px) !important;
  }
}

/* Homepage spacing correction: align product rows with section headers and promo tiles. */
@media screen and (min-width: 750px) {
  #shopify-section-featured_collections_custom_pe6WyH .ProductList.ProductList--carousel,
  #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .ProductList.ProductList--carousel {
    margin-left: 48px !important;
    margin-right: 48px !important;
  }
}

/* Homepage rhythm correction: reduce floaty gaps and align section labels with content. */
@media screen and (min-width: 750px) {
  /* Promo tiles should lead into Sport without an oversized blank band. */
  #shopify-section-2_column_images_9pAHBT > section.Section,
  #shopify-section-2_column_images_9pAHBT > .Section {
    margin-top: 60px !important;
    margin-bottom: 34px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 > section.Section,
  #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 > .Section {
    margin-top: 0 !important;
    margin-bottom: 60px !important;
  }

  #shopify-section-featured_collections_custom_pe6WyH .SectionHeader,
  #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .SectionHeader {
    margin-bottom: 18px !important;
  }

  /* Explore should feel intentionally placed after Clay & Dune, not stuck to it. */
  #shopify-section-16170468159d5a789a {
    padding-top: 48px !important;
    padding-bottom: 0 !important;
  }

  #shopify-section-16170468159d5a789a > section.Section,
  #shopify-section-16170468159d5a789a > .Section {
    margin-top: 0 !important;
    margin-bottom: 60px !important;
  }

  #shopify-section-16170468159d5a789a .SectionHeader {
    margin-bottom: 26px !important;
  }

  #shopify-section-16170468159d5a789a .LinkListWrapper,
  #shopify-section-16170468159d5a789a .Linklist--grid {
    margin-top: 0 !important;
  }
}

@media screen and (max-width: 749px) {
  #shopify-section-2_column_images_9pAHBT > section.Section,
  #shopify-section-2_column_images_9pAHBT > .Section {
    margin-top: 40px !important;
    margin-bottom: 28px !important;
  }

  #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 {
    padding-top: 0 !important;
  }

  #shopify-section-16170468159d5a789a {
    padding-top: 36px !important;
  }

  #shopify-section-16170468159d5a789a .SectionHeader {
    margin-bottom: 20px !important;
  }
}

@media screen and (max-width: 749px) {
  .Header__MainNav a,
  .Header__SecondaryNav a,
  .Header__Icon,
  .WillboMobileNav__ColLabel,
  .WillboMobileNav__ColChild {
    font-size: 10px !important;
  }

  .Button,
  .shopify-payment-button__button,
  .ProductForm__AddToCart,
  .Cart__Checkout,
  .Drawer__Footer .Button,
  .Form__Submit {
    min-height: 44px;
  }

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

  .ProductItem__Title,
  .ProductItem__PriceList,
  .ProductItem__ColorCount,
  .ProductItem__SoldOut {
    font-size: 9.5px !important;
  }
}

/* AUGUST THEME: mobile homepage rhythm normalization
   Keeps desktop untouched while making mobile section spacing feel intentional and consistent. */
@media screen and (max-width: 749px) {
  body.template-index #shopify-section-slideshow {
    margin-bottom: 38px !important;
  }

  body.template-index #shopify-section-featured_collections_custom_pe6WyH,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.template-index #shopify-section-featured_collections_custom_pe6WyH > section.Section,
  body.template-index #shopify-section-featured_collections_custom_pe6WyH > .Section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 > section.Section,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 > .Section {
    margin-top: 0 !important;
    margin-bottom: 16px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.template-index #shopify-section-featured_collections_custom_pe6WyH .SectionHeader,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .SectionHeader {
    margin-bottom: 16px !important;
  }

  /* Mobile homepage section header lock:
     Lifestyle, Sport, and Explore should read as one refined system. */
  body.template-index #shopify-section-featured_collections_custom_pe6WyH .SectionHeader,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .SectionHeader,
  body.template-index #shopify-section-16170468159d5a789a .SectionHeader {
    display: flex !important;
    align-items: center !important;
    min-height: 54px !important;
    padding: 0 36px !important;
    margin: 0 0 16px !important;
  }

  body.template-index #shopify-section-featured_collections_custom_pe6WyH .SectionHeader__Container,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .SectionHeader__Container,
  body.template-index #shopify-section-16170468159d5a789a .SectionHeader__Container,
  body.template-index #shopify-section-16170468159d5a789a .SectionHeader > .Container {
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
  }

  body.template-index #shopify-section-featured_collections_custom_pe6WyH .SectionHeader__Heading,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .SectionHeader__Heading,
  body.template-index #shopify-section-16170468159d5a789a .SectionHeader__Heading {
    margin: 0 !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: var(--w-black) !important;
  }

  body.template-index #shopify-section-featured_collections_custom_pe6WyH .WillboSlickNav,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .WillboSlickNav {
    align-self: center !important;
    margin: 0 0 0 auto !important;
    padding-right: 0 !important;
  }

  body.template-index #shopify-section-featured_collections_custom_pe6WyH .Mobile.ProductList--grid,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .Mobile.ProductList--grid {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  body.template-index #shopify-section-featured_collections_custom_pe6WyH .ProductList--carousel .Carousel__Cell,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .ProductList--carousel .Carousel__Cell {
    padding-bottom: 0 !important;
  }

  body.template-index #shopify-section-2_column_images_9pAHBT > section.Section,
  body.template-index #shopify-section-2_column_images_9pAHBT > .Section {
    margin-top: -42px !important;
    margin-bottom: 30px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.template-index #shopify-section-2_column_images_9pAHBT > section.Section--spacingNormal {
    margin-top: 0 !important;
    margin-bottom: 30px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.template-index #shopify-section-text_with_image_UhhwbR > section.Section,
  body.template-index #shopify-section-text_with_image_UhhwbR > .Section {
    margin-top: 0 !important;
    margin-bottom: 30px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.template-index #shopify-section-16170468159d5a789a {
    padding-top: 28px !important;
    padding-bottom: 0 !important;
  }

  body.template-index #shopify-section-16170468159d5a789a > section.Section,
  body.template-index #shopify-section-16170468159d5a789a > .Section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.template-index #shopify-section-16170468159d5a789a .SectionHeader {
    margin-bottom: 16px !important;
  }

  body.template-index #shopify-section-willbo_journal_community_august .WillboJournalCommunity {
    padding-top: 42px !important;
    padding-bottom: 54px !important;
  }
}

/* AUGUST THEME: final desktop SHOP mega-menu typography lock
   Moncler-inspired: Title Case, larger quiet text, one consistent voice. */
@media screen and (min-width: 1008px) {
  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__ColHead,
  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Link,
  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureCaption,
  li[data-nav="shop"] .WillboShopMenu__ColHead,
  li[data-nav="shop"] .WillboShopMenu__Link,
  li[data-nav="shop"] .WillboShopMenu__FeatureCaption,
  li[data-nav="shop"] .WillboShopMenu__FeatureCaption * {
    font-family: var(--w-nav-sans) !important;
    font-size: 15.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.65 !important;
    text-transform: capitalize !important;
    color: var(--w-black) !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__ColHead {
    margin-bottom: 18px !important;
    font-weight: 500 !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureCaption {
    padding-top: 13px !important;
    line-height: 1.45 !important;
  }

  .Header__Wrapper .Header__MainNav,
  .Header__Wrapper .Header__SecondaryNav,
  .Header__Wrapper .Header__MainNav .Heading,
  .Header__Wrapper .Header__SecondaryNav .Heading,
  .Header__Wrapper .Header__LinkSpacer,
  .Header__Wrapper .Header__Icon,
  .Header__Wrapper .HorizontalList__Item > a {
    font-family: var(--w-nav-sans) !important;
  }
}

@media screen and (max-width: 1007px) {
  #sidebar-menu.WillboMobileNav,
  #shopify-section-sidebar-menu .WillboMobileNav.Drawer {
    --willbo-label-font: var(--w-nav-sans) !important;
  }

  #sidebar-menu.WillboMobileNav,
  #shopify-section-sidebar-menu .WillboMobileNav.Drawer,
  .WillboMobileNav__Trigger,
  .WillboMobileNav__TriggerLabel,
  .WillboMobileNav__PanelTitle,
  .WillboMobileNav__SubLink,
  .WillboMobileNav__ColHead,
  .WillboMobileNav__ColLabel,
  .WillboMobileNav__ColHeadText,
  .WillboMobileNav__ColChild,
  .WillboMobileNav__FeatureCaption,
  .WillboMobileNav__MenuFeatureKicker,
  .WillboMobileNav__MenuFeatureHeading,
  .WillboMobileNav__Utility,
  .WillboMobileNav__UtilityLink,
  .WillboMobileNav__Signature {
    font-family: var(--w-nav-sans) !important;
  }

  #sidebar-menu.WillboMobileNav .WillboMobileNav__ColChild,
  #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ColChild,
  #sidebar-menu.WillboMobileNav .WillboMobileNav__ColLabel,
  #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ColLabel,
  .SidebarMenu .WillboMobileNav__ColChild,
  .SidebarMenu .WillboMobileNav__ColLabel {
    font-family: var(--w-nav-sans) !important;
  }

  #sidebar-menu.WillboMobileNav .WillboMobileNav__ColChild,
  #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ColChild {
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: 0.08em !important;
    text-transform: capitalize !important;
  }
}

/* AUGUST THEME: collection-header reduction.
   ALD-style utility: title, count, quiet filter links, and a compact
   view/filter/sort toolbar. No heavy category pills at the top of shopping. */
.template-collection .WillboCollectionHero {
  padding: clamp(24px, 3.1vw, 42px) 0 12px !important;
  border-bottom: none !important;
}

.template-collection .WillboCollectionHero__Inner {
  grid-template-columns: minmax(0, 1fr) auto !important;
  row-gap: 14px !important;
  align-items: start !important;
}

.template-collection .WillboCollectionHero__Kicker,
.template-collection .WillboCollectionHero__Description {
  display: none !important;
}

.template-collection .WillboCollectionHero__Title {
  font-size: clamp(22px, 2.05vw, 31px) !important;
  line-height: 1.08 !important;
  letter-spacing: 0.12em !important;
}

.template-collection .WillboCollectionHero__Meta {
  align-items: flex-end !important;
  gap: 0 !important;
  padding-top: 4px !important;
  color: rgba(17, 17, 17, 0.48) !important;
}

.template-collection .WillboCollectionHero__Tags {
  gap: clamp(18px, 2.2vw, 30px) !important;
  padding-top: 10px !important;
  margin: 0 !important;
}

.template-collection .WillboCollectionHero__Tag {
  min-height: 0 !important;
  padding: 0 0 5px !important;
  border: 0 !important;
  border-bottom: 1px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(17, 17, 17, 0.48) !important;
  letter-spacing: 0.14em !important;
}

.template-collection .WillboCollectionHero__Tag:hover,
.template-collection .WillboCollectionHero__Tag.is-active {
  background: transparent !important;
  color: #111111 !important;
  border-bottom-color: currentColor !important;
}

.template-collection .CollectionToolbar {
  min-height: 48px !important;
  border-top: 1px solid #e6e2da !important;
  border-bottom: 1px solid #e6e2da !important;
}

@media screen and (max-width: 640px) {
  .template-collection .WillboCollectionHero {
    padding: 24px 0 10px !important;
  }

  .template-collection .WillboCollectionHero__Inner {
    padding: 0 18px !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    row-gap: 14px !important;
  }

  .template-collection .WillboCollectionHero__Title {
    font-size: 20px !important;
    letter-spacing: 0.15em !important;
  }

  .template-collection .WillboCollectionHero__Meta {
    justify-self: end !important;
    align-items: flex-end !important;
    padding-top: 5px !important;
    font-size: 8px !important;
    white-space: nowrap !important;
  }

  .template-collection .WillboCollectionHero__Tags {
    grid-column: 1 / -1 !important;
    margin-left: -18px !important;
    margin-right: -18px !important;
    padding: 2px 18px 0 !important;
    gap: 22px !important;
  }

  .template-collection .WillboCollectionHero__Tag {
    min-height: 0 !important;
    padding: 0 0 5px !important;
    border: 0 !important;
    border-bottom: 1px solid transparent !important;
    border-radius: 0 !important;
    font-size: 8px !important;
    letter-spacing: 0.13em !important;
  }

  .template-collection .CollectionToolbar {
    min-height: 48px !important;
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    grid-template-areas: "layout actions" !important;
    align-items: center !important;
    padding: 0 18px !important;
    flex-wrap: nowrap !important;
    overflow: visible !important;
    box-shadow: none !important;
  }

  .template-collection .CollectionToolbar__Item--layout {
    grid-area: layout !important;
    width: auto !important;
    height: 48px !important;
    flex: 0 0 auto !important;
    padding: 0 !important;
    justify-content: flex-start !important;
  }

  .template-collection .CollectionToolbar__Group {
    grid-area: actions !important;
    width: auto !important;
    flex: 0 0 auto !important;
    justify-self: end !important;
    margin-left: 0 !important;
    display: flex !important;
  }

  .template-collection .CollectionToolbar__Item {
    height: 48px !important;
    flex: 0 0 auto !important;
    padding: 0 0 0 28px !important;
    border: 0 !important;
    font-size: 8px !important;
    letter-spacing: 0.16em !important;
  }

  .template-collection .CollectionToolbar__LayoutSwitch {
    gap: 12px !important;
  }
}

/* AUGUST THEME: premium collection utility polish.
   Keep the top of collection pages quiet: no style count, no sort chrome,
   smaller view controls, and consistent left/right gutters. */
.template-collection .WillboCollectionHero__Meta,
.template-collection .CollectionToolbar__Item--sort {
  display: none !important;
}

.template-collection .WillboCollectionHero__Inner {
  grid-template-columns: minmax(0, 1fr) !important;
}

.template-collection .CollectionToolbar {
  padding-inline: clamp(24px, 4.2vw, 64px) !important;
  min-height: 42px !important;
}

.template-collection .CollectionToolbar__Item--layout {
  justify-content: flex-start !important;
}

.template-collection .CollectionToolbar__LayoutSwitch {
  gap: 10px !important;
}

.template-collection .CollectionToolbar__LayoutType {
  width: 14px !important;
  height: 14px !important;
  opacity: 0.34 !important;
}

.template-collection .CollectionToolbar__LayoutType svg {
  width: 14px !important;
  height: 14px !important;
}

.template-collection .CollectionToolbar__LayoutType.is-active,
.template-collection .CollectionToolbar__LayoutType:hover {
  opacity: 1 !important;
}

@media screen and (max-width: 640px) {
  .template-collection .WillboCollectionHero {
    padding-bottom: 8px !important;
  }

  .template-collection .CollectionToolbar {
    min-height: 40px !important;
    padding-inline: 18px !important;
    grid-template-columns: auto 1fr !important;
    grid-template-areas: "layout actions" !important;
  }

  .template-collection .CollectionToolbar__Item--layout,
  .template-collection .CollectionToolbar__Item {
    height: 40px !important;
  }

  .template-collection .CollectionToolbar__Group {
    justify-self: end !important;
    display: flex !important;
  }

  .template-collection .CollectionToolbar__Item--filter {
    padding-left: 0 !important;
  }

  .template-collection .CollectionToolbar__LayoutSwitch {
    gap: 9px !important;
  }

  .template-collection .CollectionToolbar__LayoutType,
  .template-collection .CollectionToolbar__LayoutType svg {
    width: 12px !important;
    height: 12px !important;
  }

  .template-collection .CollectionToolbar__LayoutType {
    padding: 0 !important;
    margin: 0 !important;
    min-width: 12px !important;
    min-height: 12px !important;
  }
}

/* AUGUST THEME: mobile collection toolbar rail alignment.
   The view switch should begin on the same left gutter as the collection title
   and hamburger icon, not centered inside the old toolbar cell. */
@media screen and (max-width: 640px) {
  .template-collection .CollectionToolbar__Item--layout {
    justify-self: start !important;
    justify-content: flex-start !important;
    align-items: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .template-collection .CollectionToolbar__LayoutSwitch,
  .template-collection .CollectionToolbar__Item--layout .CollectionToolbar__LayoutSwitch {
    justify-content: flex-start !important;
    align-items: center !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .template-collection .CollectionToolbar__LayoutSwitch .CollectionToolbar__LayoutType:first-child {
    margin-left: 0 !important;
  }
}

/* AUGUST THEME: unified premium mobile submenu system */
@media screen and (max-width: 1007px) {
  #sidebar-menu.WillboMobileNav,
  #shopify-section-sidebar-menu .WillboMobileNav.Drawer {
    --willbo-mobile-menu-x: 42px;
    --willbo-mobile-title-size: 18px;
    --willbo-mobile-link-size: 14.5px;
    --willbo-mobile-child-size: 12.5px;
    --willbo-mobile-letter: 0.125em;
  }

  #sidebar-menu.WillboMobileNav .WillboMobileNav__Item,
  #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__Item {
    transform: none !important;
    will-change: auto !important;
  }

  .WillboMobileNav .main-item-back {
    height: 96px !important;
    padding: 0 var(--willbo-mobile-menu-x) !important;
    align-items: flex-end !important;
    padding-bottom: 22px !important;
  }

  .WillboMobileNav .main-item-back > svg:first-child {
    left: var(--willbo-mobile-menu-x) !important;
    width: 13px !important;
    height: 13px !important;
    top: auto !important;
    bottom: 26px !important;
    transform: none !important;
  }

  .WillboMobileNav__BackLabel {
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: var(--willbo-mobile-title-size) !important;
    font-weight: 400 !important;
    letter-spacing: 0.13em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
  }

  .WillboMobileNav__ShopCols,
  .WillboMobileNav__SubLinks,
  .WillboMobileNav__StoryIndex,
  .WillboMobileNav__ExplorIndex,
  .WillboMobileNav__ExploreLinks {
    padding: 44px var(--willbo-mobile-menu-x) 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  .WillboMobileNav__ColTrigger,
  .WillboMobileNav__SubLink,
  .WillboMobileNav__StoryRow,
  .WillboMobileNav__ExploreRow,
  .WillboMobileNav__ExploreLink {
    min-height: 46px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    border: 0 !important;
    text-decoration: none !important;
  }

  .WillboMobileNav__ColTrigger {
    justify-content: space-between !important;
  }

  .WillboMobileNav__SubLink,
  .WillboMobileNav__StoryRow,
  .WillboMobileNav__ExploreRow,
  .WillboMobileNav__ExploreLink {
    justify-content: flex-start !important;
  }

  .WillboMobileNav__ColLabel,
  .WillboMobileNav__SubLink,
  .WillboMobileNav__StoryTitle,
  .WillboMobileNav__ExploreTitle,
  .WillboMobileNav__ExploreLink {
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: var(--willbo-mobile-link-size) !important;
    font-weight: 400 !important;
    letter-spacing: var(--willbo-mobile-letter) !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
    color: var(--w-black) !important;
  }

  .WillboMobileNav__StoryRow,
  .WillboMobileNav__ExploreRow {
    gap: 16px !important;
    align-items: center !important;
  }

  .WillboMobileNav__StoryNum,
  .WillboMobileNav__ExploreNum {
    min-width: 25px !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 0.08em !important;
    line-height: 1.25 !important;
    color: rgba(17, 17, 17, 0.42) !important;
  }

  .WillboMobileNav__StoryTitle,
  .WillboMobileNav__ExploreTitle {
    flex: 1 1 auto !important;
    letter-spacing: var(--willbo-mobile-letter) !important;
  }

  .WillboMobileNav__StoryArrow,
  .WillboMobileNav__ExploreArrow {
    margin-left: auto !important;
    font-size: 12px !important;
    line-height: 1 !important;
    color: rgba(17, 17, 17, 0.45) !important;
  }

  .WillboMobileNav__ExploreLink {
    text-decoration: none !important;
  }

  .WillboMobileNav__ColChevron {
    width: 10px !important;
    height: 10px !important;
    color: rgba(17, 17, 17, 0.48) !important;
  }

  .WillboMobileNav__ColChildren {
    padding: 0 !important;
  }

  .WillboMobileNav__ColChild {
    padding: 8px 0 8px 18px !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: var(--willbo-mobile-child-size) !important;
    font-weight: 400 !important;
    letter-spacing: 0.105em !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    color: rgba(17, 17, 17, 0.72) !important;
  }

  .WillboMobileNav__FeatureCard {
    margin: 42px var(--willbo-mobile-menu-x) 18px !important;
  }

  .WillboMobileNav__FeatureCard--explore {
    margin-top: 34px !important;
  }

  .WillboMobileNav__FeatureKicker {
    margin-top: 12px !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 9px !important;
    font-weight: 400 !important;
    letter-spacing: 0.16em !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    color: var(--w-mid) !important;
  }

  .WillboMobileNav__FeatureCaption {
    margin-top: 8px !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.11em !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    color: var(--w-black) !important;
  }

  .WillboMobileNav__ExploreFooter {
    padding: 38px var(--willbo-mobile-menu-x) 0 !important;
    justify-content: flex-start !important;
  }

  .WillboMobileNav__ExploreIssue {
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.12em !important;
    line-height: 1.4 !important;
    color: rgba(17, 17, 17, 0.48) !important;
  }

  #sidebar-menu.WillboMobileNav .WillboMobileNav__SubLink,
  #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__SubLink {
    letter-spacing: var(--willbo-mobile-letter) !important;
  }
}

/* AUGUST THEME: WILLBO two-font system
   Founders Grotesk = commerce, navigation, utility.
   Tiempos Text = editorial story, journal, circle, brand moments.
   Note: the stack includes current theme fallbacks until licensed webfont
   assets are uploaded to Shopify. */
:root {
  --willbo-commerce-font: var(--w-sans);
  /* AUGUST THEME FIX: story-builder editorial copy (WillboFest, etc.) was
     rendering in a serif font that doesn't match the rest of the site.
     Point editorial type at the site's sans-serif stack for consistency. */
  --willbo-editorial-font: var(--w-sans);
  --willbo-editorial-text-font: var(--w-sans);
}

body,
.ProductMeta,
.ProductForm,
.ProductItem,
.CollectionToolbar,
.CollectionMain,
.Header,
.Footer,
.Drawer,
.Button,
.shopify-payment-button__button,
.ProductForm__AddToCart,
.Cart,
.CartItem,
.Popover,
.Modal,
.Form,
.Rte,
.PageContent {
  font-family: var(--willbo-commerce-font) !important;
}

.Article__Title,
.Article .Article__Wrapper .Article__Content .Article__Header .Article__Title,
.Article__Content h1,
.Article__Content h2,
.Article__Content h3,
.Article__Body h1,
.Article__Body h2,
.Article__Body h3,
.ArticleItem__Title,
.custom-blog-template .ArticleItem__Title,
.custom-blog-template .ArticleItem__Title a,
.Section--blogPosts .ArticleItem__Title,
.WillboStoryBuilder h1,
.WillboStoryBuilder h2,
.WillboStoryBuilder h3,
.WillboStoryBuilder blockquote,
.WillboCircle__Name,
.WillboCircle__Bio,
.WillboCircle__A,
.WillboProfile__HeroName,
.WillboProfile__BodyInner p,
.WillboProfile__Quote,
.WillboProfile__A,
.WillboClubhouse__JournalTitle,
.WillboClubhouse__JournalCardTitle,
body.template-page .PageHeader .SectionHeader__Heading,
body.template-article .Article__Title {
  font-family: var(--willbo-editorial-font) !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
}

.Article__Content p,
.Article__Body p,
.WillboStoryBuilder p,
.WillboCircle__Bio,
.WillboCircle__A,
.WillboProfile__BodyInner p,
.WillboProfile__A,
.WillboClubhouse__JournalExcerpt,
body.template-page .Rte p {
  font-family: var(--willbo-editorial-text-font, var(--willbo-editorial-font)) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.72 !important;
}

.ArticleItem__Category,
.ArticleItem__Date,
.ArticleItem__Link,
.WillboCircle__Kicker,
.WillboCircle__Descriptor,
.WillboCircle__Q,
.WillboCircle__CTA,
.WillboProfile__HeroDescriptor,
.WillboProfile__VitalLabel,
.WillboProfile__VitalValue,
.WillboProfile__Q,
.WillboProfile__BackLink,
.WillboProfile__VideoLabel,
.WillboClubhouse__JournalLabel,
.WillboClubhouse__JournalDate,
.WillboClubhouse__JournalRead,
.WillboStoryBuilder .Button,
.WillboStoryBuilder a.Button {
  font-family: var(--willbo-commerce-font) !important;
}

/* AUGUST THEME: Maddix hero title exception.
   The page body stays black, but the hero ID should read like a bold red
   WILLBO title mark over the image. */
.WillboProfile__HeroName,
.WillboProfile .WillboProfile__HeroName {
  font-family: var(--willbo-commerce-font, var(--w-sans, sans-serif)) !important;
  font-size: clamp(50px, 5.2vw, 94px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.035em !important;
  line-height: 0.92 !important;
  color: #FFFFFF !important;
  text-transform: none !important;
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.22) !important;
}

.WillboProfile__HeroDescriptor,
.WillboProfile .WillboProfile__HeroDescriptor {
  font-family: var(--willbo-commerce-font, var(--w-sans, sans-serif)) !important;
  font-size: clamp(18px, 1.9vw, 34px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.05 !important;
  color: #F5B21B !important;
  text-transform: none !important;
  text-shadow: 0 1px 16px rgba(0, 0, 0, 0.18) !important;
}

@media screen and (max-width: 767px) {
  .WillboProfile__HeroName,
  .WillboProfile .WillboProfile__HeroName {
    font-size: clamp(28px, 8vw, 44px) !important;
  }

  .WillboProfile__HeroDescriptor,
  .WillboProfile .WillboProfile__HeroDescriptor {
    font-size: clamp(16px, 5vw, 24px) !important;
  }
}

/* AUGUST THEME: Maddix profile editorial readability.
   Sabon needs a little more size to feel intentional on the profile story,
   while interview prompts should separate clearly from the answers. */
.WillboProfile__BodyInner {
  width: min(72%, 1180px) !important;
}

.WillboProfile__BodyInner p,
.WillboProfile .WillboProfile__BodyInner p {
  font-family: var(--willbo-editorial-font, Sabon, Georgia, serif) !important;
  font-size: clamp(17px, 1.05vw, 19px) !important;
  line-height: 1.9 !important;
  color: var(--w-black, #111111) !important;
}

.WillboProfile__Q,
.WillboProfile .WillboProfile__Q {
  font-family: var(--willbo-commerce-font, var(--w-sans, sans-serif)) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.075em !important;
  line-height: 1.35 !important;
  color: var(--w-black, #111111) !important;
}

.WillboProfile__A,
.WillboProfile .WillboProfile__A {
  font-family: var(--willbo-editorial-font, Sabon, Georgia, serif) !important;
  font-size: clamp(15px, 0.9vw, 16px) !important;
  line-height: 1.85 !important;
  color: var(--w-black, #111111) !important;
}

@media screen and (max-width: 767px) {
  .WillboProfile__BodyInner {
    width: 100% !important;
  }

  .WillboProfile__BodyInner p,
  .WillboProfile .WillboProfile__BodyInner p {
    font-size: 17px !important;
  }

  .WillboProfile__A,
  .WillboProfile .WillboProfile__A {
    font-size: 15.5px !important;
  }
}

/* AUGUST THEME: premium mega-menu motion + Stories editorial lane
   Moncler-inspired movement, Willbo editorial restraint. */
@media screen and (min-width: 1008px) {
  .Header__MainNav .HorizontalList__Item > .MegaMenu {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    visibility: hidden;
    pointer-events: none;
    transition:
      max-height 400ms cubic-bezier(0.5, 0, 0.5, 1),
      opacity 400ms cubic-bezier(0.5, 0, 0.5, 1),
      visibility 0s linear 400ms;
    will-change: max-height, opacity;
  }

  .Header__MainNav .HorizontalList__Item:hover > .MegaMenu,
  .Header__MainNav .HorizontalList__Item > .MegaMenu[aria-hidden="false"] {
    max-height: 560px;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition:
      max-height 400ms cubic-bezier(0.5, 0, 0.5, 1),
      opacity 400ms cubic-bezier(0.5, 0, 0.5, 1),
      visibility 0s linear 0s;
  }

  .Header__MainNav .HorizontalList__Item:hover > .WillboShopMenu.MegaMenu,
  .Header__MainNav .HorizontalList__Item > .WillboShopMenu.MegaMenu[aria-hidden="false"] {
    max-height: 650px;
  }

  /* Keep Shop commerce-first: immediate and quiet.
     Stories + Explore keep the slower editorial reveal. */
  .Header__MainNav .HorizontalList__Item > .WillboShopMenu.MegaMenu {
    transition: none !important;
    will-change: auto !important;
  }

  .Header__MainNav .HorizontalList__Item:hover > .WillboShopMenu.MegaMenu,
  .Header__MainNav .HorizontalList__Item > .WillboShopMenu.MegaMenu[aria-hidden="false"] {
    transition: none !important;
  }

  .Header__MainNav .HorizontalList__Item:hover > .WillboStoriesMega.MegaMenu,
  .Header__MainNav .HorizontalList__Item > .WillboStoriesMega.MegaMenu[aria-hidden="false"] {
    max-height: 650px;
  }

  .Header__MainNav .HorizontalList__Item:hover > .WillboExpMenuOuter.MegaMenu,
  .Header__MainNav .HorizontalList__Item > .WillboExpMenuOuter.MegaMenu[aria-hidden="false"] {
    max-height: 365px;
  }

  .Header__MainNav .HorizontalList__Item > .MegaMenu .WillboShopMenu__Col,
  .Header__MainNav .HorizontalList__Item > .MegaMenu .WillboShopMenu__Feature,
  .Header__MainNav .HorizontalList__Item > .MegaMenu .WillboExpPanel,
  .Header__MainNav .HorizontalList__Item > .MegaMenu .WillboStoriesMega__Feature,
  .Header__MainNav .HorizontalList__Item > .MegaMenu .WillboStoriesMega__Nav {
    opacity: 1;
    transform: translateY(0);
    transition:
      color 100ms ease-in-out,
      background-color 100ms ease-in-out;
  }

  .WillboStoriesMega.MegaMenu {
    background: #F5F3EE !important;
    border-top: none !important;
    box-shadow: none !important;
    left: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }

  .WillboStoriesMega__Inner {
    display: block !important;
    position: relative !important;
    align-items: start !important;
    padding: 34px 36px 44px 48px !important;
    gap: 0 !important;
    background: #F5F3EE !important;
    min-height: 560px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .WillboStoriesMega__Nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    width: auto !important;
    max-width: 260px !important;
  }

  .WillboStoriesMega__Editorial {
    position: absolute !important;
    left: clamp(330px, 31vw, 470px) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    max-width: 360px !important;
    color: var(--w-black) !important;
  }

  .WillboStoriesMega__EditorialKicker {
    display: block !important;
    margin: 0 0 18px !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.04em !important;
    line-height: 1.45 !important;
    text-transform: uppercase !important;
    color: rgba(17, 17, 17, 0.56) !important;
  }

  .WillboStoriesMega__EditorialCopy {
    margin: 0 !important;
    max-width: 34ch !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: clamp(18px, 1.35vw, 22px) !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em !important;
    line-height: 1.35 !important;
    color: rgba(17, 17, 17, 0.82) !important;
    text-transform: none !important;
  }

  .WillboStoriesMega__Kicker {
    display: block !important;
    margin: 0 0 18px 0 !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 15.5px !important;
    font-weight: 500 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.65 !important;
    color: var(--w-black) !important;
    text-transform: capitalize !important;
  }

  .WillboStoriesMega__NavLink {
    display: block !important;
    width: auto !important;
    margin: 0 0 7px 0 !important;
    padding: 0 !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 15.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.65 !important;
    color: var(--w-black) !important;
    text-decoration: none !important;
    text-transform: capitalize !important;
    position: relative !important;
  }

  .WillboStoriesMega__NavLink::after,
  .WillboStoriesMega__ViewAll::after {
    content: '' !important;
    position: absolute !important;
    bottom: 2px !important;
    left: 0 !important;
    width: 0 !important;
    height: 1px !important;
    background: var(--w-black) !important;
    transition: width 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  }

  .WillboStoriesMega__NavLink:hover::after,
  .WillboStoriesMega__ViewAll:hover::after {
    width: 100% !important;
  }

  .WillboStoriesMega__ViewAll {
    display: inline-block !important;
    margin-top: 26px !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 15.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.65 !important;
    color: var(--w-black) !important;
    text-decoration: none !important;
    text-transform: capitalize !important;
    position: relative !important;
  }

  .WillboStoriesMega__Note {
    display: block !important;
    max-width: 24ch !important;
    margin-top: 46px !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 13.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.55 !important;
    color: rgba(17, 17, 17, 0.58) !important;
    text-transform: none !important;
  }

  .WillboStoriesMega__Feature {
    position: absolute !important;
    top: 34px !important;
    right: 36px !important;
    display: flex !important;
    flex-direction: column !important;
    width: clamp(300px, 24vw, 350px) !important;
    max-width: none !important;
    margin: 0 !important;
    color: var(--w-black) !important;
    text-decoration: none !important;
    overflow: visible !important;
  }

  .WillboStoriesMega__FeatureImage {
    aspect-ratio: 3 / 4 !important;
    width: 100% !important;
    overflow: hidden !important;
    background: #f4f2ed !important;
    flex: none !important;
  }

  .WillboStoriesMega__FeatureImage img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transition: transform 680ms cubic-bezier(0.16, 1, 0.3, 1) !important;
  }

  .WillboStoriesMega__Feature:hover .WillboStoriesMega__FeatureImage img {
    transform: scale(1.02) !important;
  }

  .WillboStoriesMega__FeatureText {
    display: block !important;
    padding: 13px 0 24px !important;
    text-align: center !important;
  }

  .WillboStoriesMega__FeatureTitle {
    display: block !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 15.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.45 !important;
    color: var(--w-black) !important;
    text-transform: capitalize !important;
  }

  .WillboStoriesMega__FeatureCopy {
    display: block !important;
    max-width: 34ch !important;
    margin: 2px auto 0 !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 13.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.45 !important;
    color: rgba(17, 17, 17, 0.62) !important;
    text-transform: none !important;
  }

  .Header__MainNav .HorizontalList--spacingExtraLoose > .HorizontalList__Item > a {
    position: relative !important;
    text-decoration: none !important;
    transition:
      color 100ms ease-in-out,
      text-underline-offset 400ms cubic-bezier(0.5, 0, 0.5, 1) !important;
  }

  .Header__MainNav .HorizontalList--spacingExtraLoose > .HorizontalList__Item > a::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    bottom: -6px !important;
    width: 100% !important;
    height: 1px !important;
    background: currentColor !important;
    opacity: 0.85 !important;
    transform: translateX(-50%) scaleX(0) !important;
    transform-origin: center center !important;
    transition: transform 400ms cubic-bezier(0.5, 0, 0.5, 1) !important;
  }

  .Header__MainNav .HorizontalList--spacingExtraLoose > .HorizontalList__Item:hover > a::after,
  .Header__MainNav .HorizontalList--spacingExtraLoose > .HorizontalList__Item > a[aria-expanded="true"]::after,
  .Header__MainNav .HorizontalList--spacingExtraLoose > .HorizontalList__Item > a[aria-current="page"]::after {
    transform: translateX(-50%) scaleX(1) !important;
  }
}

/* AUGUST THEME: Stories menu editorial desk refinement */
@media screen and (min-width: 1008px) {
  .WillboStoriesMega__Inner {
    padding: 34px 36px 44px 48px !important;
    min-height: 560px !important;
  }

  .WillboStoriesMega__Feature {
    justify-self: end !important;
    width: clamp(300px, 24vw, 350px) !important;
  }

  .WillboStoriesMega__FeatureImage {
    aspect-ratio: 3 / 4 !important;
  }

  .WillboStoriesMega__FeatureTitle,
  .WillboStoriesMega__FeatureCopy {
    text-align: center !important;
  }

  .WillboStoriesMega__NavLink:first-of-type {
    padding-top: 0 !important;
  }

  .WillboStoriesMega__Editorial {
    left: clamp(318px, 30vw, 460px) !important;
  }
}

/* AUGUST THEME: tighten desktop primary nav spacing */
@media screen and (min-width: 1008px) {
  .Header__MainNav .HorizontalList--spacingExtraLoose {
    display: flex !important;
    align-items: center !important;
    gap: 28px !important;
  }

  .Header__MainNav .HorizontalList--spacingExtraLoose > .HorizontalList__Item {
    margin: 0 !important;
  }

  .Header__MainNav .HorizontalList--spacingExtraLoose > .HorizontalList__Item > a {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .Header__MainNav .HorizontalList--spacingExtraLoose > .HorizontalList__Item > a::after {
    left: 50% !important;
    right: auto !important;
  }
}

/* AUGUST THEME: Stories mega menu — tighter California journal treatment */
@media screen and (min-width: 1008px) {
  .Header__MainNav .HorizontalList__Item:hover > .WillboStoriesMega.MegaMenu,
  .Header__MainNav .HorizontalList__Item > .WillboStoriesMega.MegaMenu[aria-hidden="false"] {
    max-height: 485px !important;
  }

  .WillboStoriesMega.MegaMenu {
    border-top: 1px solid rgba(17, 17, 17, 0.08) !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.08) !important;
  }

  .WillboStoriesMega__Inner {
    display: grid !important;
    grid-template-columns: 210px minmax(300px, 430px) minmax(270px, 340px) !important;
    column-gap: clamp(48px, 8vw, 132px) !important;
    align-items: start !important;
    padding: 38px 48px 34px !important;
    min-height: 420px !important;
    max-width: 1480px !important;
    margin: 0 auto !important;
  }

  .WillboStoriesMega__Nav,
  .WillboStoriesMega__Editorial,
  .WillboStoriesMega__Feature {
    position: static !important;
    transform: none !important;
    inset: auto !important;
  }

  .WillboStoriesMega__Nav {
    max-width: 210px !important;
    padding-top: 0 !important;
  }

  .WillboStoriesMega__Kicker {
    margin-bottom: 18px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.35 !important;
  }

  .WillboStoriesMega__NavLink,
  .WillboStoriesMega__ViewAll {
    font-size: 14px !important;
    line-height: 1.55 !important;
    letter-spacing: 0.01em !important;
  }

  .WillboStoriesMega__NavLink {
    margin-bottom: 5px !important;
  }

  .WillboStoriesMega__ViewAll {
    margin-top: 22px !important;
  }

  .WillboStoriesMega__Note {
    max-width: 22ch !important;
    margin-top: 40px !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: rgba(17, 17, 17, 0.52) !important;
  }

  .WillboStoriesMega__Editorial {
    max-width: 410px !important;
    align-self: center !important;
    padding-bottom: 28px !important;
  }

  .WillboStoriesMega__EditorialKicker {
    margin-bottom: 14px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.18em !important;
    line-height: 1.2 !important;
    color: rgba(17, 17, 17, 0.48) !important;
  }

  .WillboStoriesMega__EditorialCopy {
    max-width: 30ch !important;
    font-size: clamp(17px, 1.15vw, 19px) !important;
    font-weight: 400 !important;
    letter-spacing: -0.012em !important;
    line-height: 1.42 !important;
    color: rgba(17, 17, 17, 0.78) !important;
  }

  .WillboStoriesMega__Feature {
    width: 100% !important;
    max-width: 330px !important;
    justify-self: end !important;
    align-self: start !important;
  }

  .WillboStoriesMega__FeatureImage {
    aspect-ratio: 1 / 1 !important;
    background: #f3f0e9 !important;
  }

  .WillboStoriesMega__FeatureText {
    padding: 12px 0 0 !important;
    text-align: left !important;
  }

  .WillboStoriesMega__FeatureTitle {
    font-size: 14px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.01em !important;
    text-align: left !important;
  }

  .WillboStoriesMega__FeatureCopy {
    max-width: 28ch !important;
    margin: 3px 0 0 !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    color: rgba(17, 17, 17, 0.52) !important;
    text-align: left !important;
  }
}

/* AUGUST THEME: Stories mega menu — editorial stack refinement */
@media screen and (min-width: 1008px) {
  .Header__MainNav .HorizontalList__Item:hover > .WillboStoriesMega.MegaMenu,
  .Header__MainNav .HorizontalList__Item > .WillboStoriesMega.MegaMenu[aria-hidden="false"] {
    max-height: 500px !important;
  }

  .WillboStoriesMega__Inner {
    grid-template-columns: minmax(260px, 340px) minmax(600px, 760px) !important;
    justify-content: space-between !important;
    column-gap: clamp(72px, 12vw, 180px) !important;
    padding: 42px 56px 38px !important;
    min-height: 430px !important;
  }

  .WillboStoriesMega__Nav {
    max-width: 340px !important;
  }

  .WillboStoriesMega__Kicker,
  .WillboStoriesMega__NavLink,
  .WillboStoriesMega__ViewAll {
    font-size: 15.5px !important;
    letter-spacing: 0.005em !important;
  }

  .WillboStoriesMega__Kicker {
    margin-bottom: 19px !important;
    font-weight: 500 !important;
  }

  .WillboStoriesMega__NavLink {
    margin-bottom: 6px !important;
  }

  .WillboStoriesMega__ViewAll {
    margin-top: 24px !important;
  }

  .WillboStoriesMega__Note {
    max-width: 30ch !important;
    margin-top: 46px !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    color: rgba(17, 17, 17, 0.58) !important;
  }

  .WillboStoriesMega__Stamp {
    display: block !important;
    margin-top: 34px !important;
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.14em !important;
    line-height: 1.55 !important;
    color: rgba(17, 17, 17, 0.46) !important;
    text-transform: uppercase !important;
  }

  .WillboStoriesMega__Editorial {
    display: none !important;
  }

  .WillboStoriesMega__Features {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    justify-self: end !important;
    width: min(58vw, 760px) !important;
    max-width: 760px !important;
  }

  .WillboStoriesMega__Features .WillboStoriesMega__Feature {
    position: static !important;
    transform: none !important;
    inset: auto !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: none !important;
    justify-self: auto !important;
    align-self: start !important;
    color: var(--w-black) !important;
    text-decoration: none !important;
  }

  .WillboStoriesMega__Features .WillboStoriesMega__FeatureImage {
    aspect-ratio: 1 / 1 !important;
    width: 100% !important;
    background: #f3f0e9 !important;
  }

  .WillboStoriesMega__Feature--secondary .WillboStoriesMega__FeatureImage {
    background: #f7f5ef !important;
  }

  .WillboStoriesMega__Features .WillboStoriesMega__FeatureText {
    padding: 12px 0 0 !important;
    text-align: center !important;
  }

  .WillboStoriesMega__Features .WillboStoriesMega__FeatureTitle {
    font-size: 14.5px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.005em !important;
    text-align: center !important;
  }

  .WillboStoriesMega__Features .WillboStoriesMega__FeatureCopy {
    max-width: 30ch !important;
    margin: 3px auto 0 !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    color: rgba(17, 17, 17, 0.54) !important;
    text-align: center !important;
  }
}

/* AUGUST THEME: force Stories menu type hierarchy above Prestige/nav defaults */
@media screen and (min-width: 1008px) {
  .Header__MainNav .WillboStoriesMega.MegaMenu .WillboStoriesMega__Nav > .WillboStoriesMega__Kicker {
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 15.5px !important;
    font-weight: 500 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.45 !important;
    text-transform: capitalize !important;
  }

  .Header__MainNav .WillboStoriesMega.MegaMenu .WillboStoriesMega__Nav > a.WillboStoriesMega__NavLink,
  .Header__MainNav .WillboStoriesMega.MegaMenu .WillboStoriesMega__Nav > a.WillboStoriesMega__ViewAll {
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 15.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.62 !important;
    text-transform: capitalize !important;
  }

  .Header__MainNav .WillboStoriesMega.MegaMenu .WillboStoriesMega__Nav > a.WillboStoriesMega__NavLink {
    margin-bottom: 7px !important;
  }

  .Header__MainNav .WillboStoriesMega.MegaMenu .WillboStoriesMega__Nav > a.WillboStoriesMega__ViewAll {
    margin-top: 25px !important;
  }
}

/* AUGUST THEME: Trading Cards landing and article polish */
.Blog--podcasts .SectionHeader__Heading,
.Blog--podcasts .SectionHeader__Heading.Heading,
.Blog--podcasts .SectionHeader__Heading.u-h5 {
  display: block !important;
  font-family: var(--w-nav-sans, var(--w-sans)) !important;
  font-size: clamp(40px, 5.8vw, 78px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.045em !important;
  line-height: 0.96 !important;
  text-transform: none !important;
  color: var(--w-black, #111111) !important;
}

.Blog--podcasts .WillboPodcastCard__Eyebrow {
  font-size: 10.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.35 !important;
}

.Blog--podcasts .WillboPodcastCard__Title,
.Blog--podcasts .WillboPodcastCard__Title a,
.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title,
.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title a {
  font-size: clamp(18px, 1.45vw, 23px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.018em !important;
  line-height: 1.22 !important;
  text-transform: none !important;
}

.Blog--podcasts .WillboPodcastCard__Excerpt,
.Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Excerpt {
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.58 !important;
  color: rgba(17, 17, 17, 0.62) !important;
}

.Blog--podcasts .WillboPodcastCard__Link {
  font-size: 10px !important;
  letter-spacing: 0.16em !important;
}

.WillboTCA__HeroName {
  text-transform: none !important;
}

.WillboTCA__VitalValue {
  font-weight: 400 !important;
  line-height: 1.45 !important;
}

@media (max-width: 767px) {
  .WillboTCA__Hero {
    aspect-ratio: 4 / 5 !important;
    overflow: hidden !important;
    background: #111111 !important;
  }

  .WillboTCA__HeroImg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: auto !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: #111111 !important;
  }

  .WillboTCA__HeroOverlay {
    position: absolute !important;
    inset: 0 !important;
    justify-content: flex-end !important;
    padding: 28px 20px 30px !important;
    background: linear-gradient(
      to top,
      rgba(0,0,0,0.68) 0%,
      rgba(0,0,0,0.24) 50%,
      rgba(0,0,0,0.00) 100%
    ) !important;
  }

  .Blog--podcasts .SectionHeader__Heading,
  .Blog--podcasts .SectionHeader__Heading.Heading,
  .Blog--podcasts .SectionHeader__Heading.u-h5 {
    font-size: clamp(38px, 13vw, 56px) !important;
    letter-spacing: -0.04em !important;
  }

  .Blog--podcasts .WillboPodcastCard__Title,
  .Blog--podcasts .WillboPodcastCard__Title a,
  .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title,
  .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__Title a {
    font-size: 18px !important;
  }
}

/* AUGUST THEME: Trading Cards QA fixes
   Protect square card artwork on mobile, strengthen episode CTAs, and suppress
   the theme's legacy prev/next artifact on this custom article experience. */
@media (max-width: 767px) {
  body.template-blog .Blog--podcasts .WillboPodcastCard__ImageLink,
  body.template-blog .Blog--podcasts .WillboPodcastCard--lead .WillboPodcastCard__ImageLink {
    aspect-ratio: 1 / 1 !important;
    background: #f4f1ea !important;
  }

  body.template-blog .Blog--podcasts .WillboPodcastCard__Image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #f4f1ea !important;
  }

  body.template-blog .Blog--podcasts .WillboPodcastCard__Link {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 44px !important;
    padding: 12px 0 !important;
    line-height: 1 !important;
  }
}

.WillboTCA__HeroName {
  font-size: clamp(38px, 4.8vw, 64px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.025em !important;
}

.WillboTCA__BodyInner p,
.WillboTCA__BodyInner li {
  font-size: clamp(15px, 1.05vw, 17px) !important;
  line-height: 1.82 !important;
}

.WillboTCA__ListenBtn {
  min-height: 44px !important;
  padding: 13px 22px !important;
  line-height: 1.1 !important;
}

.willbo-tc-article-section .ArticleNav,
.willbo-tc-article-section .ArticleToolbar {
  display: none !important;
}

@media (max-width: 767px) {
  .WillboTCA__HeroName {
    font-size: clamp(32px, 10vw, 46px) !important;
  }

  .WillboTCA__Listen {
    gap: 10px !important;
  }

  .WillboTCA__ListenBtn {
    width: 100% !important;
    justify-content: center !important;
    min-height: 48px !important;
  }
}

/* AUGUST THEME: legacy Trading Cards episode article CTA bridge.
   Some existing episodes, including The Quiksilver Story, still use the older
   custom article template. Give those listen links the same premium tap-target
   treatment without changing the article assignment or content. */
#shopify-section-article-template-1 .Article .Article__listen-links,
#shopify-section-article-template-2 .Article .Article__listen-links {
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 12px !important;
  margin-top: 28px !important;
}

#shopify-section-article-template-1 .Article .Article__listen-links .listen-links--item,
#shopify-section-article-template-2 .Article .Article__listen-links .listen-links--item {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 13px 22px !important;
  border: 1px solid var(--w-black, #111111) !important;
  color: var(--w-black, #111111) !important;
  background: transparent !important;
  font-family: var(--w-sans, var(--willbo-commerce-font, sans-serif)) !important;
  font-size: 10.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}

#shopify-section-article-template-1 .Article .Article__listen-links .listen-links--item:hover,
#shopify-section-article-template-2 .Article .Article__listen-links .listen-links--item:hover {
  background: var(--w-black, #111111) !important;
  color: var(--w-white, #ffffff) !important;
  text-decoration: none !important;
}

body.template-article .ArticleToolbar__Nav {
  display: none !important;
}

@media (max-width: 767px) {
  #shopify-section-article-template-1 .Article .Article__listen-links,
  #shopify-section-article-template-2 .Article .Article__listen-links {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  #shopify-section-article-template-1 .Article .Article__listen-links .listen-links--item,
  #shopify-section-article-template-2 .Article .Article__listen-links .listen-links--item {
    width: 100% !important;
    min-height: 48px !important;
  }
}

/* AUGUST THEME: Trading Cards series intro.
   Replaces the generic podcast-show black band with a quieter editorial
   statement, place stamp, moving cast-of-characters ticker, and refined links. */
.textonly-trading-card {
  background: #f4f1ea !important;
  border-top: 1px solid rgba(31,29,24,0.10) !important;
  border-bottom: 1px solid rgba(31,29,24,0.10) !important;
}

.textonly-trading-card.Section--spacingNormal {
  padding: 0 !important;
}

.WillboTradingIntro {
  padding: clamp(56px, 6.6vw, 104px) 0 clamp(54px, 5.8vw, 92px) !important;
}

.WillboTradingIntro .Container {
  max-width: 1180px !important;
}

.WillboTradingIntro__Grid {
  display: grid !important;
  grid-template-columns: minmax(160px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(36px, 7vw, 112px) !important;
  align-items: start !important;
}

.WillboTradingIntro__Eyebrow,
.WillboTradingIntro__Stamp,
.WillboTradingIntro__ListenLabel,
.WillboTradingIntro__Links a {
  font-family: var(--w-sans, var(--willbo-commerce-font, sans-serif)) !important;
  font-size: 10.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  line-height: 1.4 !important;
  text-transform: uppercase !important;
}

.WillboTradingIntro__Eyebrow {
  margin: 0 0 22px !important;
  color: rgba(30,28,23,0.82) !important;
}

.WillboTradingIntro__Stamp {
  max-width: 160px !important;
  margin: 0 !important;
  color: rgba(30,28,23,0.46) !important;
}

.WillboTradingIntro__Copy {
  max-width: 690px !important;
}

.WillboTradingIntro__Copy p {
  margin: 0 !important;
  font-family: var(--willbo-editorial-font, var(--w-serif, serif)) !important;
  font-size: clamp(20px, 2vw, 30px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.018em !important;
  line-height: 1.32 !important;
  color: rgba(30,28,23,0.92) !important;
  text-transform: none !important;
}

.WillboTradingIntro__Ticker {
  width: min(720px, 100%) !important;
  margin: clamp(26px, 3vw, 42px) 0 0 !important;
  overflow: hidden !important;
  border-top: 1px solid rgba(30,28,23,0.16) !important;
  border-bottom: 1px solid rgba(30,28,23,0.16) !important;
  white-space: nowrap !important;
}

.WillboTradingIntro__TickerTrack {
  display: inline-flex !important;
  width: max-content !important;
  align-items: center !important;
  gap: 0 !important;
  animation: willboTradingTicker 32s linear infinite !important;
  will-change: transform !important;
}

.WillboTradingIntro__TickerTrack span {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 15px 34px 14px 0 !important;
  font-family: var(--w-sans, var(--willbo-commerce-font, sans-serif)) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.2em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  color: rgba(30,28,23,0.62) !important;
}

.WillboTradingIntro__TickerTrack span::after {
  content: "" !important;
  width: 3px !important;
  height: 3px !important;
  margin-left: 34px !important;
  border-radius: 999px !important;
  background: rgba(30,28,23,0.28) !important;
}

@keyframes willboTradingTicker {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-50%, 0, 0); }
}

.WillboTradingIntro__Links.Linklist {
  margin-top: clamp(24px, 3vw, 38px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  color: rgba(30,28,23,0.72) !important;
}

.WillboTradingIntro__ListenLabel {
  color: rgba(30,28,23,0.44) !important;
  margin-right: 2px !important;
}

.WillboTradingIntro__Links .link-list-item {
  margin: 0 !important;
}

.WillboTradingIntro__Links a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 38px !important;
  padding: 0 2px !important;
  color: rgba(30,28,23,0.84) !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(30,28,23,0.34) !important;
}

.WillboTradingIntro__Links a:hover {
  color: #111111 !important;
  border-bottom-color: #111111 !important;
}

@media (max-width: 767px) {
  .WillboTradingIntro {
    padding: 48px 0 50px !important;
  }

  .WillboTradingIntro__Grid {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  .WillboTradingIntro__Stamp {
    max-width: none !important;
  }

  .WillboTradingIntro__Copy p {
    font-size: clamp(19px, 6vw, 25px) !important;
    line-height: 1.34 !important;
  }

  .WillboTradingIntro__Ticker {
    width: 100% !important;
    margin-top: 28px !important;
  }

  .WillboTradingIntro__TickerTrack {
    animation-duration: 24s !important;
  }

  .WillboTradingIntro__TickerTrack span {
    padding-right: 28px !important;
    font-size: 10px !important;
  }

  .WillboTradingIntro__TickerTrack span::after {
    margin-left: 28px !important;
  }

  .WillboTradingIntro__Links.Linklist {
    flex-wrap: wrap !important;
    gap: 10px 14px !important;
    margin-top: 26px !important;
  }

  .WillboTradingIntro__ListenLabel {
    flex: 0 0 100% !important;
  }

  .WillboTradingIntro__Links a {
    min-height: 44px !important;
  }
}

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

/* AUGUST THEME QA PATCH: final cascade guard for the Trading Cards intro.
   Older blog-specific rules above force a black section and wide mobile grid;
   keep this scoped to the Trading Cards section so the rest of Stories remains untouched. */
body.template-blog #shopify-section-textonly-trading-card,
body.template-blog #shopify-section-textonly-trading-card .textonly-trading-card,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro {
  background: #f4f1ea !important;
  background-color: #f4f1ea !important;
  color: #1e1c17 !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro *,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro *::before,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro *::after {
  box-sizing: border-box !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.34fr) minmax(0, 0.66fr) !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Meta,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Main,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Copy,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Ticker,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links {
  max-width: 100% !important;
  min-width: 0 !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Copy p {
  overflow-wrap: anywhere !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Eyebrow {
  color: rgba(30,28,23,0.82) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Stamp,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__ListenLabel {
  color: rgba(30,28,23,0.46) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Copy p {
  color: rgba(30,28,23,0.92) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Ticker {
  border-color: rgba(30,28,23,0.16) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__TickerTrack span {
  color: rgba(30,28,23,0.62) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__TickerTrack span::after {
  background: rgba(30,28,23,0.28) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links a {
  color: rgba(30,28,23,0.84) !important;
  border-bottom-color: rgba(30,28,23,0.34) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links a:hover {
  color: #111111 !important;
  border-bottom-color: #111111 !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist span.WillboTradingIntro__ListenLabel,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links .WillboTradingIntro__ListenLabel {
  color: rgba(30,28,23,0.50) !important;
}

@media (max-width: 767px) {
  body.template-blog #shopify-section-textonly-trading-card,
  body.template-blog #shopify-section-textonly-trading-card .textonly-trading-card,
  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro,
  body.template-blog #shopify-section-textonly-trading-card .Container {
    width: 100% !important;
    max-width: 100vw !important;
    overflow-x: clip !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 30px !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Copy p {
    max-width: 100% !important;
    white-space: normal !important;
  }
}

/* AUGUST THEME: compact Trading Cards strip.
   Tightens the podcast intro so it reads closer to the Maddix/Circle horizontal
   editorial rhythm instead of a full oversized feature section. */
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro {
  padding: clamp(34px, 3.6vw, 52px) 0 clamp(34px, 3.4vw, 50px) !important;
}

body.template-blog #shopify-section-textonly-trading-card .textonly-trading-card.Section,
body.template-blog #shopify-section-textonly-trading-card .textonly-trading-card.Section--spacingNormal {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro .Container {
  max-width: 1040px !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Grid {
  grid-template-columns: minmax(150px, 0.30fr) minmax(0, 0.70fr) !important;
  gap: clamp(34px, 5vw, 86px) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Eyebrow {
  margin-bottom: 18px !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Copy {
  max-width: 620px !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Copy p {
  font-size: clamp(18px, 1.45vw, 24px) !important;
  line-height: 1.34 !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Ticker {
  width: min(620px, 100%) !important;
  margin-top: clamp(20px, 2vw, 28px) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__TickerTrack span {
  padding-top: 12px !important;
  padding-bottom: 11px !important;
  font-size: 10.5px !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist {
  margin-top: clamp(18px, 2vw, 26px) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links a {
  min-height: 32px !important;
}

@media (max-width: 767px) {
  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro {
    padding: 34px 0 36px !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Eyebrow {
    margin-bottom: 12px !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Copy p {
    font-size: clamp(17px, 5.2vw, 21px) !important;
    line-height: 1.34 !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Ticker {
    margin-top: 20px !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist {
    margin-top: 18px !important;
  }
}

/* AUGUST THEME: best-in-class framework polish lock.
   This layer preserves the approved WILLBO direction while tightening the
   scalable system: commerce in SHOP, editorial in STORIES, brand world in
   EXPLORE. Keep this block intentionally small and structural. */

:root {
  --willbo-system-side: clamp(24px, 4.1vw, 64px);
  --willbo-system-wide: min(1480px, calc(100vw - (var(--willbo-system-side) * 2)));
  --willbo-system-rule: rgba(30, 28, 23, 0.13);
  --willbo-system-muted: rgba(30, 28, 23, 0.56);
  --willbo-system-ink: #1e1c17;
}

@media screen and (min-width: 1008px) {
  .Header__MainNav .HorizontalList {
    display: flex !important;
    align-items: center !important;
    gap: clamp(20px, 2.15vw, 32px) !important;
  }

  .Header__MainNav .HorizontalList__Item {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .Header__MainNav .Heading,
  .Header__MainNav .HorizontalList__Item > a {
    font-weight: 400 !important;
    letter-spacing: 0.045em !important;
    line-height: 1.15 !important;
  }

  .Header__MainNav .HorizontalList__Item:hover > a,
  .Header__MainNav .HorizontalList__Item.is-expanded > a {
    opacity: 0.64 !important;
  }

  .WillboMegaShop,
  .WillboMegaStories,
  .WillboMegaExplore {
    border-top: 1px solid var(--willbo-system-rule) !important;
  }

  .WillboMegaShop a,
  .WillboMegaStories a,
  .WillboMegaExplore a {
    text-decoration: none !important;
    text-underline-offset: 0.2em !important;
  }

  .WillboMegaShop a:hover,
  .WillboMegaStories a:hover,
  .WillboMegaExplore a:hover {
    opacity: 0.62 !important;
  }

  .WillboMegaShop__Title,
  .WillboMegaStories__NavTitle,
  .WillboMegaExplore__Title,
  .WillboMegaExplore__TileLabel {
    font-weight: 500 !important;
    letter-spacing: 0.035em !important;
  }

  .WillboMegaStories__Nav,
  .WillboMegaExplore__Grid,
  .WillboMegaShop__Grid {
    max-width: var(--willbo-system-wide) !important;
  }
}

@media screen and (min-width: 641px) {
  body.template-index .SectionHeader {
    margin-bottom: clamp(22px, 2.35vw, 34px) !important;
  }

  body.template-index .SectionHeader__Heading.u-h6,
  body.template-index .SectionHeader__Heading.Heading.u-h6 {
    font-size: 12.5px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.18em !important;
    font-weight: 400 !important;
  }

  body.template-index .shopify-section--menu-explorer .SectionHeader,
  body.template-index .custom-shopify-section--bordered .SectionHeader {
    padding-left: var(--willbo-system-side) !important;
    padding-right: var(--willbo-system-side) !important;
  }
}

@media screen and (max-width: 1007px) {
  #sidebar-menu.WillboMobileNav,
  #shopify-section-sidebar-menu .WillboMobileNav.Drawer {
    --willbo-mobile-menu-x: clamp(32px, 9.6vw, 46px);
  }

  .WillboMobileNav__Trigger,
  .WillboMobileNav__ColTrigger,
  .WillboMobileNav__SubLink,
  .WillboMobileNav__StoryRow,
  .WillboMobileNav__ExploreRow,
  .WillboMobileNav__ExploreLink {
    min-height: 50px !important;
  }

  .WillboMobileNav__TriggerLabel,
  .WillboMobileNav__ColLabel,
  .WillboMobileNav__SubLink,
  .WillboMobileNav__StoryTitle,
  .WillboMobileNav__ExploreTitle,
  .WillboMobileNav__ExploreLink {
    font-weight: 400 !important;
    letter-spacing: 0.12em !important;
  }

  .WillboMobileNav__StoryNum {
    color: rgba(30, 28, 23, 0.42) !important;
  }

  .WillboMobileNav__ExploreNum {
    display: none !important;
  }
}

@media screen and (max-width: 640px) {
  body.template-index .SectionHeader {
    margin-bottom: 16px !important;
  }

  body.template-index .SectionHeader__Heading.u-h6,
  body.template-index .SectionHeader__Heading.Heading.u-h6 {
    font-size: 13px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.18em !important;
    font-weight: 400 !important;
  }

  body.template-index .shopify-section--menu-explorer,
  body.template-index .custom-shopify-section--bordered {
    margin-top: 0 !important;
  }
}

/* AUGUST THEME: All Stories editorial hub.
   /pages/stories is the umbrella for Journal, Films, and Trading Cards. */
.WillboStoriesHub {
  --stories-hub-x: clamp(22px, 4.2vw, 64px);
  --stories-hub-max: 1480px;
  --stories-hub-line: rgba(30, 28, 23, 0.13);
  --stories-hub-muted: rgba(30, 28, 23, 0.58);
  --stories-hub-ink: #1e1c17;
  background: #fff !important;
  color: var(--stories-hub-ink) !important;
}

.WillboStoriesHub a {
  color: inherit !important;
  text-decoration: none !important;
}

.WillboStoriesHub__Inner {
  width: min(var(--stories-hub-max), 100%);
  margin: 0 auto !important;
  padding: clamp(52px, 6vw, 92px) var(--stories-hub-x) clamp(72px, 8vw, 120px) !important;
}

.WillboStoriesHub__Masthead {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.55fr) auto;
  gap: clamp(28px, 5vw, 86px) !important;
  align-items: end !important;
  padding-bottom: clamp(32px, 4vw, 58px) !important;
  border-bottom: 1px solid var(--stories-hub-line) !important;
}

.WillboStoriesHub__Kicker,
.WillboStoriesHub__Stamp,
.WillboStoriesHub__LaneHeader,
.WillboStoriesHub__ChannelNum,
.WillboStoriesHub__CardMeta,
.WillboStoriesHub__CardLink {
  font-size: 10px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
}

.WillboStoriesHub__Kicker,
.WillboStoriesHub__Stamp,
.WillboStoriesHub__Intro,
.WillboStoriesHub__Channel em,
.WillboStoriesHub__CardMeta,
.WillboStoriesHub__Empty {
  color: var(--stories-hub-muted) !important;
}

.WillboStoriesHub__Kicker,
.WillboStoriesHub__Title,
.WillboStoriesHub__Intro,
.WillboStoriesHub__Stamp,
.WillboStoriesHub__LaneHeader p,
.WillboStoriesHub__CardMeta,
.WillboStoriesHub__CardTitle {
  margin: 0 !important;
}

.WillboStoriesHub__Title {
  max-width: 720px !important;
  font-size: clamp(30px, 4.4vw, 64px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.035em !important;
  font-weight: 400 !important;
  text-transform: none !important;
}

.WillboStoriesHub__Kicker {
  margin-bottom: clamp(16px, 2vw, 24px) !important;
}

.WillboStoriesHub__Intro {
  max-width: 500px !important;
  font-size: clamp(14px, 1.05vw, 16px) !important;
  line-height: 1.72 !important;
}

.WillboStoriesHub__Stamp {
  writing-mode: vertical-rl !important;
  transform: rotate(180deg) !important;
  white-space: nowrap !important;
}

.WillboStoriesHub__Channels {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  border-bottom: 1px solid var(--stories-hub-line) !important;
}

.WillboStoriesHub__Channel {
  display: grid !important;
  grid-template-columns: 48px minmax(0, 1fr) !important;
  gap: clamp(16px, 2vw, 28px) !important;
  min-height: 164px !important;
  padding: clamp(28px, 3.2vw, 46px) clamp(20px, 2.4vw, 34px) clamp(30px, 3vw, 44px) 0 !important;
  border-right: 1px solid var(--stories-hub-line) !important;
  transition: opacity 220ms ease !important;
}

.WillboStoriesHub__Channel:last-child {
  border-right: none !important;
}

.WillboStoriesHub__Channel:hover {
  opacity: 0.62 !important;
}

.WillboStoriesHub__Channel strong {
  display: block !important;
  margin-bottom: 10px !important;
  font-size: clamp(18px, 1.45vw, 24px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.012em !important;
  font-weight: 400 !important;
}

.WillboStoriesHub__Channel em {
  display: block !important;
  max-width: 280px !important;
  font-style: normal !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

.WillboStoriesHub__Lanes {
  display: grid !important;
  gap: clamp(48px, 6vw, 86px) !important;
  padding-top: clamp(46px, 5.4vw, 82px) !important;
}

.WillboStoriesHub__LaneHeader {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 20px !important;
  padding-bottom: 18px !important;
  margin-bottom: clamp(20px, 2.6vw, 34px) !important;
  border-bottom: 1px solid var(--stories-hub-line) !important;
}

.WillboStoriesHub__LaneHeader a,
.WillboStoriesHub__CardLink {
  border-bottom: 1px solid currentColor !important;
  padding-bottom: 2px !important;
}

.WillboStoriesHub__Grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(22px, 2.8vw, 42px) !important;
}

.WillboStoriesHub__Card {
  min-width: 0 !important;
}

.WillboStoriesHub__CardImageLink {
  display: block !important;
  overflow: hidden !important;
  background: #f4f0e8 !important;
}

.WillboStoriesHub__CardImage,
.WillboStoriesHub__CardPlaceholder {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
  transition: transform 700ms cubic-bezier(0.2, 0.65, 0.2, 1) !important;
}

.WillboStoriesHub__Card:hover .WillboStoriesHub__CardImage {
  transform: scale(1.025) !important;
}

.WillboStoriesHub__CardCopy {
  padding-top: 16px !important;
}

.WillboStoriesHub__CardMeta {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin-bottom: 10px !important;
}

.WillboStoriesHub__CardTitle,
.WillboStoriesHub__CardTitle a {
  font-size: clamp(17px, 1.35vw, 22px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.012em !important;
  font-weight: 400 !important;
}

.WillboStoriesHub__CardLink {
  display: inline-block !important;
  margin-top: 14px !important;
}

.WillboStoriesHub__Empty {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}

@media screen and (max-width: 1007px) {
  .WillboStoriesHub__Masthead {
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
  }

  .WillboStoriesHub__Stamp {
    writing-mode: horizontal-tb !important;
    transform: none !important;
  }

  .WillboStoriesHub__Channels,
  .WillboStoriesHub__Grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .WillboStoriesHub__Channel {
    min-height: auto !important;
    border-right: none !important;
    border-bottom: 1px solid var(--stories-hub-line) !important;
    padding: 24px 0 !important;
  }
}

@media screen and (max-width: 640px) {
  .WillboStoriesHub__Inner {
    padding-top: 44px !important;
    padding-bottom: 70px !important;
  }

  .WillboStoriesHub__Title {
    font-size: clamp(30px, 10vw, 42px) !important;
  }

  .WillboStoriesHub__Intro {
    font-size: 14px !important;
  }

  .WillboStoriesHub__Channel {
    grid-template-columns: 38px minmax(0, 1fr) !important;
  }
}

/* AUGUST THEME: Trading Cards mobile link alignment.
   Keep desktop editorial links left-aligned, but center podcast/listen links on
   mobile so the Trading Cards blog and episode pages feel balanced. */
@media screen and (max-width: 767px) {
  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist {
    justify-content: center !important;
    text-align: center !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links .link-list-item {
    display: inline-flex !important;
    justify-content: center !important;
  }

  body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__ListenLabel {
    flex: 0 0 100% !important;
    width: 100% !important;
    margin-right: 0 !important;
    text-align: center !important;
  }

  #shopify-section-article-template-1 .Article .Article__listen-links,
  #shopify-section-article-template-2 .Article .Article__listen-links {
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  #shopify-section-article-template-1 .Article .Article__listen-links .listen-links--item,
  #shopify-section-article-template-2 .Article .Article__listen-links .listen-links--item {
    width: auto !important;
    min-width: 168px !important;
  }
}

/* AUGUST THEME: final pre-launch QA guardrails.
   1) Trading Cards links should show one deliberate rule only.
   2) Journal featured-to-grid rhythm should feel tighter and less stock-blog. */
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist a,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist a.Link,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist .link-list-item a,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist .link-list-item a.Link {
  text-decoration: none !important;
  box-shadow: none !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(30,28,23,0.34) !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist a::before,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist a::after,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist .link-list-item a::before,
body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist .link-list-item a::after {
  display: none !important;
  content: none !important;
}

body.template-blog #shopify-section-textonly-trading-card .WillboTradingIntro__Links.Linklist a:hover {
  border-bottom-color: #111111 !important;
}

body.template-blog.custom-blog-template:not(.template-blog--podcasts) .ArticleListWrapper {
  margin-top: clamp(26px, 4vw, 54px) !important;
}

body.template-blog.custom-blog-template:not(.template-blog--podcasts) .ArticleItem__first {
  margin-bottom: clamp(28px, 4.2vw, 56px) !important;
}

@media screen and (max-width: 767px) {
  body.template-blog.custom-blog-template:not(.template-blog--podcasts) .ArticleListWrapper {
    margin-top: 28px !important;
  }

body.template-blog.custom-blog-template:not(.template-blog--podcasts) .ArticleItem__first {
    margin-bottom: 30px !important;
  }
}

/* =============================================================================
   AUGUST THEME: PREMIUM CONSISTENCY PASS
   A single override layer for ALD/Moncler-level grid discipline, navigation type,
   cart drawer rhythm, and image-overlay legibility. Keep this late in the cascade.
   ============================================================================= */
:root {
  --willbo-page-gutter-desktop: 48px;
  --willbo-page-gutter-mobile: 18px;
  --willbo-nav-label-size: 10px;
  --willbo-nav-label-weight: 500;
  --willbo-nav-label-tracking: 0.14em;
}

@media screen and (min-width: 1141px) {
  .Header__Wrapper {
    padding-left: var(--willbo-page-gutter-desktop) !important;
    padding-right: var(--willbo-page-gutter-desktop) !important;
  }

  .template-collection .WillboCollectionHero__Inner,
  .template-collection .CollectionToolbar,
  .template-collection .ProductListWrapper,
  .template-collection .ProductList,
  .template-page .PageHeader .Container,
  .WillboCircle,
  .WillboCircle__Inner,
  .WillboProfile__Vitals,
  .WillboProfile__Rule,
  .WillboProfile__BodyInner {
    padding-left: var(--willbo-page-gutter-desktop) !important;
    padding-right: var(--willbo-page-gutter-desktop) !important;
  }

  .WillboProfile__Vitals {
    margin-left: 0 !important;
  }

  .WillboProfile__Rule {
    margin-left: var(--willbo-page-gutter-desktop) !important;
    margin-right: var(--willbo-page-gutter-desktop) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

.Header__MainNav .HorizontalList__Item > a,
.Header__MainNav .HorizontalList__Item > a.Heading,
.Header__MainNav .HorizontalList__Item > a.Link,
.Header__SecondaryNav a,
.Header__SecondaryNav a.Heading,
.Header__SecondaryNav a.Link,
.Header__SecondaryNav .HorizontalList__Item > a,
.Header__SecondaryNav .HorizontalList__Item > a.Heading,
.Header__SecondaryNav .HorizontalList__Item > a.Link,
.Header__CartCount,
.Header .Header__Icon,
.MegaMenu a,
.SidebarMenu .Drawer__Container .u-h6,
.SidebarMenu .Drawer__Container .u-h7,
.SidebarMenu .Linklist__Item .Link,
.subnav-wrapper .main-item-back,
.subnav-wrapper .Collapsible__Button {
  font-family: var(--willbo-commerce-font, var(--w-sans, "DM Sans", sans-serif)) !important;
  font-size: var(--willbo-nav-label-size) !important;
  font-weight: var(--willbo-nav-label-weight) !important;
  letter-spacing: var(--willbo-nav-label-tracking) !important;
  text-transform: uppercase !important;
}

.Header__MainNav .HorizontalList__Item > a.Heading.u-h6,
.Header__SecondaryNav .HorizontalList__Item > a.Heading.u-h8,
.Header__SecondaryNav .HorizontalList__Item > a.Link.u-h8,
.Header__SecondaryNav .HorizontalList__Item > a.Text--subdued.u-h8 {
  font-size: var(--willbo-nav-label-size) !important;
  font-weight: var(--willbo-nav-label-weight) !important;
  letter-spacing: var(--willbo-nav-label-tracking) !important;
  line-height: 1.2 !important;
}

.Header__MainNav .HorizontalList__Item,
.Header__SecondaryNav .HorizontalList__Item {
  margin-left: 18px !important;
  margin-right: 18px !important;
}

@media screen and (max-width: 1140px) {
  .Header__Wrapper {
    padding-left: var(--willbo-page-gutter-mobile) !important;
    padding-right: var(--willbo-page-gutter-mobile) !important;
  }

  #sidebar-menu .Drawer__Container,
  #sidebar-menu .SidebarMenu__Nav .Collapsible,
  #sidebar-menu .SidebarMenu__Nav .Linklist,
  .subnav-wrapper .main-item-back {
    padding-left: var(--willbo-page-gutter-mobile) !important;
    padding-right: var(--willbo-page-gutter-mobile) !important;
  }

  .SidebarMenu .Drawer__Content .Drawer__Container .Linklist__Item .Link,
  .SidebarMenu .Drawer__Content .Drawer__Container .u-h6,
  .SidebarMenu .Drawer__Content .Drawer__Container .u-h7 {
    font-size: 11px !important;
    line-height: 1.2 !important;
  }
}

#sidebar-cart.Drawer,
#sidebar-cart .Drawer__Content,
#sidebar-cart form.Cart {
  display: flex !important;
  flex-direction: column !important;
}

#sidebar-cart .Drawer__Content,
#sidebar-cart form.Cart {
  min-height: 0 !important;
  flex: 1 1 auto !important;
}

#sidebar-cart .Drawer__Main {
  flex: 0 0 auto !important;
  padding-bottom: 0 !important;
}

#sidebar-cart .Drawer__Footer {
  margin-top: 24px !important;
  flex: 0 0 auto !important;
  padding-top: 22px !important;
}

#sidebar-cart .CartItem {
  margin-bottom: 18px !important;
}

#sidebar-cart .Cart__ShippingNotice + .Drawer__Main,
#sidebar-cart .Cart__ItemList {
  margin-bottom: 0 !important;
}

@media screen and (max-width: 767px) {
  #sidebar-cart .Drawer__Footer {
    margin-top: 20px !important;
    padding-top: 20px !important;
  }
}

.WillboProfile__Hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.30) 0%, rgba(0, 0, 0, 0.14) 28%, rgba(0, 0, 0, 0) 58%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.22) 0%, rgba(0, 0, 0, 0) 42%) !important;
  z-index: 1 !important;
}

.WillboProfile__HeroOverlay {
  z-index: 2 !important;
}

.WillboProfile__HeroDescriptor,
.WillboProfile .WillboProfile__HeroDescriptor {
  text-shadow:
    0 1px 2px rgba(0, 0, 0, 0.42),
    0 8px 26px rgba(0, 0, 0, 0.38) !important;
}

/* AUGUST THEME: desktop collection utility row.
   ALD-style restraint: remove the framed toolbar band so product imagery owns
   the page; keep view controls and FILTER as quiet black utility actions. */
@media screen and (min-width: 641px) {
  .template-collection .CollectionToolbar {
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  .template-collection .CollectionToolbar__Item,
  .template-collection .CollectionToolbar__Group,
  .template-collection .CollectionToolbar__Item--filter {
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  .template-collection .CollectionToolbar__Item:hover,
  .template-collection .CollectionToolbar__Item:focus,
  .template-collection .CollectionToolbar__Item:focus-visible,
  .template-collection .CollectionToolbar__Item:active,
  .template-collection .CollectionToolbar__LayoutType:hover,
  .template-collection .CollectionToolbar__LayoutType:focus,
  .template-collection .CollectionToolbar__LayoutType:focus-visible,
  .template-collection .CollectionToolbar__LayoutType:active {
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  .template-collection .CollectionToolbar__Item--filter {
    color: #111111 !important;
    opacity: 1 !important;
  }

  .template-collection .CollectionToolbar__LayoutType,
  .template-collection .CollectionToolbar__LayoutType svg {
    color: #111111 !important;
  }

  .template-collection .CollectionToolbar__LayoutType {
    opacity: 1 !important;
  }
}

/* AUGUST THEME: desktop Shop mega-menu luxury refinement.
   Closer to Moncler's restraint: quieter type, warmer canvas, wider negative
   space, and a taller editorial feature image. */
@media screen and (min-width: 1008px) {
  .WillboShopMenu.MegaMenu.Megamenu--shop,
  .Header__MainNav .HorizontalList__Item > .WillboShopMenu.MegaMenu {
    background: #F5F3EE !important;
    /* AUGUST THEME: match the Stories/Explore mega menu divider line under
       the nav bar (2026-08-28) - was border-top: 0, now consistent 1px
       hairline across all three mega menus. */
    border-top: 1px solid rgba(17, 17, 17, 0.08) !important;
    box-shadow: none !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Inner,
  li[data-nav="shop"] .WillboShopMenu__Inner {
    padding: 40px 48px 76px 48px !important;
    min-height: 620px !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Cols,
  li[data-nav="shop"] .WillboShopMenu__Cols {
    gap: clamp(96px, 10.5vw, 168px) !important;
    padding-right: clamp(410px, 34vw, 520px) !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Col,
  li[data-nav="shop"] .WillboShopMenu__Col {
    min-width: 116px !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__ColHead,
  li[data-nav="shop"] .WillboShopMenu__ColHead {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    letter-spacing: 0.01em !important;
    margin-bottom: 20px !important;
    color: #111111 !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Link,
  li[data-nav="shop"] .WillboShopMenu__Link {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.62 !important;
    letter-spacing: 0.01em !important;
    color: #111111 !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Link::after,
  li[data-nav="shop"] .WillboShopMenu__Link::after {
    bottom: 1px !important;
    height: 1px !important;
    background: rgba(17, 17, 17, 0.82) !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Feature,
  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Feature--pair,
  li[data-nav="shop"] .WillboShopMenu__Feature,
  li[data-nav="shop"] .WillboShopMenu__Feature--pair {
    top: 40px !important;
    right: 48px !important;
    width: clamp(330px, 25vw, 388px) !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureImg,
  li[data-nav="shop"] .WillboShopMenu__FeatureImg {
    aspect-ratio: 2 / 3 !important;
    background: #F5F3EE !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureImg img,
  li[data-nav="shop"] .WillboShopMenu__FeatureImg img {
    object-position: center center !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureCaption,
  li[data-nav="shop"] .WillboShopMenu__FeatureCaption,
  li[data-nav="shop"] .WillboShopMenu__FeatureCaption * {
    font-size: 13.5px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    letter-spacing: 0.01em !important;
    color: #111111 !important;
    padding: 13px 0 34px !important;
  }
}

/* AUGUST THEME: brand font final lock.
   Commerce stays precise and utilitarian; editorial moments carry the softer
   literary voice. */
body,
.Header,
.Header__MainNav,
.Header__SecondaryNav,
.MegaMenu,
.WillboMobileNav,
.AnnouncementBar,
.template-collection,
.template-product,
.ProductItem,
.ProductMeta,
.ProductForm,
.CollectionToolbar,
.CollectionMain,
.Cart,
.CartItem,
.Drawer,
.Button,
.shopify-payment-button__button,
.Form,
.Footer {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
}

.Article__Title,
.Article__Content h1,
.Article__Content h2,
.Article__Content h3,
.Article__Body h1,
.Article__Body h2,
.Article__Body h3,
.ArticleItem__Title,
.custom-blog-template .ArticleItem__Title,
.custom-blog-template .ArticleItem__Title a,
.Section--blogPosts .ArticleItem__Title,
.WillboStoryBuilder h1,
.WillboStoryBuilder h2,
.WillboStoryBuilder h3,
.WillboStoryBuilder blockquote,
.WillboCircle__Name,
.WillboCircle__Bio,
.WillboCircle__A,
.WillboProfile__HeroName,
.WillboProfile__BodyInner p,
.WillboProfile__Quote,
.WillboProfile__A,
.WillboClubhouse__JournalTitle,
.WillboClubhouse__JournalCardTitle,
.WillboClubhouse__JournalExcerpt,
body.template-page .PageHeader .SectionHeader__Heading,
body.template-page .Rte p,
body.template-article .Article__Title {
  font-family: var(--willbo-editorial-font, var(--w-editorial-serif)) !important;
}

.Article__Content p,
.Article__Body p,
.WillboStoryBuilder p,
.WillboCircle__Bio,
.WillboCircle__A,
.WillboProfile__BodyInner p,
.WillboProfile__A,
.WillboClubhouse__JournalExcerpt,
body.template-page .Rte p {
  font-family: var(--willbo-editorial-text-font, var(--w-editorial-text-serif)) !important;
}

/* AUGUST THEME: homepage desktop Explore title alignment.
   The bottom Explore rail uses a different section template than Lifestyle/Sport,
   so remove its extra inner header inset to keep the title on the same premium
   desktop rhythm as the surrounding homepage modules. */
@media screen and (min-width: 750px) {
  body.template-index #shopify-section-16170468159d5a789a .SectionHeader > .Container,
  body.template-index #shopify-section-16170468159d5a789a .SectionHeader__Container,
  body.template-index #shopify-section-16170468159d5a789a .SectionHeader .Container[data-desktop-count="3"] {
    padding-left: 0 !important;
    margin-left: 0 !important;
    max-width: none !important;
  }
}

/* AUGUST THEME: homepage mobile rhythm final lock.
   Align collection headers to the site gutter and normalize the promo-to-Sport
   transition so stacked commerce modules use one premium vertical cadence. */
@media screen and (max-width: 749px) {
  body.template-index #shopify-section-featured_collections_custom_pe6WyH .SectionHeader,
  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 .SectionHeader,
  body.template-index #shopify-section-16170468159d5a789a .SectionHeader {
    padding-left: var(--willbo-page-gutter-mobile, 18px) !important;
    padding-right: var(--willbo-page-gutter-mobile, 18px) !important;
  }

  body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8 {
    margin-top: -32px !important;
  }
}

/* AUGUST THEME: Founders Grotesk optical sizing refinement.
   Founders reads more elegant and slightly smaller than Albert Sans at the
   same numeric size. Lift only utility/navigation/product-label roles so the
   site stays premium, legible, and controlled rather than globally enlarged. */
.Header__MainNav a,
.Header__MainNav button,
.Header__SecondaryNav a,
.Header__Icon,
.Header .Heading.u-h6,
.Header .Heading.u-h8 {
  font-size: 12px !important;
  line-height: 1.15 !important;
  letter-spacing: 0.12em !important;
  font-weight: 400 !important;
}

.WillboShopMenu__ColHead,
.WillboShopMenu__Link {
  font-size: 15px !important;
  line-height: 1.62 !important;
}

.WillboShopMenu__FeatureCaption,
li[data-nav="shop"] .WillboShopMenu__FeatureCaption,
li[data-nav="shop"] .WillboShopMenu__FeatureCaption * {
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.CollectionToolbar,
.CollectionToolbar a,
.CollectionToolbar button,
.CollectionToolbar__Item,
.CollectionToolbar__Item--filter,
.CollectionToolbar__LayoutType {
  font-size: 12px !important;
  line-height: 1.2 !important;
}

.ProductItem__Title,
.ProductItem__Title a,
.ProductItem__PriceList,
.ProductItem__Price,
.ProductItem__ColorCount,
.ProductItem__SoldOut {
  font-size: 12.5px !important;
  line-height: 1.35 !important;
}

@media screen and (max-width: 1007px) {
  .WillboMobileNav__Trigger,
  .WillboMobileNav__TriggerLabel,
  .WillboMobileNav__PanelTitle,
  .WillboMobileNav__SubLink,
  .WillboMobileNav__ColHead,
  .WillboMobileNav__ColLabel,
  .WillboMobileNav__ColHeadText,
  .WillboMobileNav__ColChild,
  .WillboMobileNav__QuickLink,
  .WillboMobileNav__Utility,
  .WillboMobileNav__UtilityLink,
  .WillboMobileNav__Signature {
    font-size: 12px !important;
    line-height: 1.25 !important;
  }

  .WillboMobileNav__SubLink,
  .WillboMobileNav__ColHead,
  .WillboMobileNav__ColHeadText {
    font-size: 16px !important;
    line-height: 1.25 !important;
  }

  .WillboMobileNav__MenuFeatureKicker,
  .WillboMobileNav__FeatureKicker {
    font-size: 10px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.14em !important;
  }

  .WillboMobileNav__MenuFeatureHeading,
  .WillboMobileNav__FeatureCaption {
    font-size: 12px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.10em !important;
  }
}

@media screen and (max-width: 749px) {
  .ProductItem__Title,
  .ProductItem__Title a,
  .ProductItem__PriceList,
  .ProductItem__Price,
  .ProductItem__ColorCount,
  .ProductItem__SoldOut {
    font-size: 11px !important;
    line-height: 1.35 !important;
  }
}

/* AUGUST THEME: Founders optical-size hard lock.
   Prestige utility classes and older WillBo overrides set some labels back to
   8-10px. Keep this as the final cascade layer so the new brand type scale
   renders consistently in the August draft. */
@media screen and (min-width: 1008px) {
  .Header__Wrapper .Header__MainNav,
  .Header__Wrapper .Header__SecondaryNav,
  .Header__Wrapper .Header__MainNav .Heading,
  .Header__Wrapper .Header__SecondaryNav .Heading,
  .Header__Wrapper .Header__MainNav .Heading *,
  .Header__Wrapper .Header__SecondaryNav .Heading *,
  .Header__Wrapper .Header__MainNav a,
  .Header__Wrapper .Header__MainNav button,
  .Header__Wrapper .Header__MainNav span,
  .Header__Wrapper .Header__MainNav .Header__LinkSpacer,
  .Header__Wrapper .Header__SecondaryNav a,
  .Header__Wrapper .Header__SecondaryNav a.Link,
  .Header__Wrapper .Header__SecondaryNav a.Heading,
  .Header__Wrapper .Header__SecondaryNav a.u-h8,
  .Header__Wrapper .Header__SecondaryNav .Link,
  .Header__Wrapper .Header__SecondaryNav span,
  .Header__Wrapper .HorizontalList__Item > a,
  .Header__Wrapper .HorizontalList__Item > button,
  .Header__Wrapper .HorizontalList__Item > span,
  .Header__Wrapper .Link,
  .Header__Wrapper .u-h6,
  .Header__Wrapper .u-h8 {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.115em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__ColHead,
  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Link,
  li[data-nav="shop"] .WillboShopMenu__ColHead,
  li[data-nav="shop"] .WillboShopMenu__Link {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 15px !important;
    line-height: 1.62 !important;
    letter-spacing: 0.01em !important;
    font-weight: 400 !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureCaption,
  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureCaption *,
  li[data-nav="shop"] .WillboShopMenu__FeatureCaption,
  li[data-nav="shop"] .WillboShopMenu__FeatureCaption * {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    letter-spacing: 0.01em !important;
    font-weight: 400 !important;
  }

  body.template-collection .CollectionToolbar,
  body.template-collection .CollectionToolbar .Heading,
  body.template-collection .CollectionToolbar .u-h6,
  body.template-collection .CollectionToolbar .u-h8,
  body.template-collection .CollectionToolbar a,
  body.template-collection .CollectionToolbar button,
  body.template-collection .CollectionToolbar span,
  body.template-collection .CollectionToolbar__Item,
  body.template-collection .CollectionToolbar__Item--filter,
  body.template-collection .CollectionToolbar__LayoutType,
  body.template-collection .CollectionToolbar__LayoutSwitch,
  body.template-collection .WillboCollectionTabs,
  body.template-collection .WillboCollectionTabs *,
  body.template-collection .CollectionFilters,
  body.template-collection .CollectionFilters *,
  body.template-collection .WillboCollectionHero__Tags,
  body.template-collection .WillboCollectionHero__Tags *,
  body.template-collection .WillboCollectionHero__Tag,
  body.template-collection .WillboCollectionHero__Tag *,
  body.template-collection a.WillboCollectionHero__Tag,
  body.template-collection button.WillboCollectionHero__Tag {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 12.5px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.095em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
  }
}

/* AUGUST THEME: Founders product-card legibility lift.
   Founders is narrow and refined; product names/prices need a little more
   optical presence so collection modules hold up next to luxury references. */
@media screen and (min-width: 1008px) {
  .ProductList--grid .ProductItem__Info,
  .ProductList--grid .ProductItem__Title,
  .ProductList--grid .ProductItem__Title a,
  .ProductList--grid .ProductItem__PriceList,
  .ProductList--grid .ProductItem__Price,
  .ProductList--grid .ProductItem__ColorCount,
  .ProductList--grid .ProductItem__SoldOut,
  .CollectionInner .ProductItem__Info,
  .CollectionInner .ProductItem__Title,
  .CollectionInner .ProductItem__Title a,
  .CollectionInner .ProductItem__PriceList,
  .CollectionInner .ProductItem__Price,
  .CollectionInner .ProductItem__ColorCount,
  .CollectionInner .ProductItem__SoldOut,
  .custom-shopify-section--bordered .ProductItem__Info,
  .custom-shopify-section--bordered .ProductItem__Title,
  .custom-shopify-section--bordered .ProductItem__Title a,
  .custom-shopify-section--bordered .ProductItem__PriceList,
  .template-index .ProductItem__Info,
  .template-index .ProductItem__Title,
  .template-index .ProductItem__Title a,
  .template-index .ProductItem__PriceList,
  .template-index .ProductItem__Price,
  body.template-collection .ProductItem__Info,
  body.template-collection .ProductItem__Title,
  body.template-collection .ProductItem__Title a,
  body.template-collection .ProductItem__PriceList,
  body.template-collection .ProductItem__Price {
    font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
    font-size: 14px !important;
    line-height: 1.34 !important;
    letter-spacing: 0.045em !important;
    font-weight: 400 !important;
  }

  .ProductItem__ColorCount,
  .ProductItem__SoldOut {
    color: rgba(17, 17, 17, 0.62) !important;
  }
}

@media screen and (max-width: 1007px) {
  .ProductList--grid .ProductItem__Title,
  .ProductList--grid .ProductItem__Title a,
  .ProductList--grid .ProductItem__PriceList,
  .ProductList--grid .ProductItem__Price,
  .CollectionInner .ProductItem__Title,
  .CollectionInner .ProductItem__Title a,
  .CollectionInner .ProductItem__PriceList,
  .CollectionInner .ProductItem__Price,
  body.template-collection .ProductItem__Title,
  body.template-collection .ProductItem__Title a,
  body.template-collection .ProductItem__PriceList,
  body.template-collection .ProductItem__Price,
  .template-index .ProductItem__Title,
  .template-index .ProductItem__Title a,
  .template-index .ProductItem__PriceList,
  .template-index .ProductItem__Price {
    font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
    font-size: 12px !important;
    line-height: 1.34 !important;
    letter-spacing: 0.045em !important;
    font-weight: 400 !important;
  }
}

/* AUGUST THEME: final right-nav parity lock.
   STORES / ACCOUNT are leaf u-h8 anchors, unlike SHOP / STORIES / EXPLORE
   which render an inner span. Target the exact leaf anchors last so both nav
   groups share one visible optical size. */
@media screen and (min-width: 1008px) {
  html body .Header .Header__Wrapper .Header__SecondaryNav a.Heading.Link.Link--primary.Text--subdued.u-h8,
  html body .Header .Header__Wrapper .Header__SecondaryNav .HorizontalList__Item > a.Heading.Link.Link--primary.Text--subdued.u-h8,
  html body .Header__SecondaryNav a.Heading.Link.Link--primary.Text--subdued.u-h8,
  html body .Header__SecondaryNav .HorizontalList__Item > a.Heading.Link.Link--primary.Text--subdued.u-h8 {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.115em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
  }
}

/* AUGUST THEME: Founders legibility correction.
   Real device review showed Founders still reading too small. Increase the
   customer-facing commerce layer to a Moncler-grade readable scale while
   preserving restrained weights, tracking, and whitespace. */
@media screen and (min-width: 1008px) {
  html body .Header__Wrapper .Header__MainNav,
  html body .Header__Wrapper .Header__SecondaryNav,
  html body .Header__Wrapper .Header__MainNav a,
  html body .Header__Wrapper .Header__MainNav a *,
  html body .Header__Wrapper .Header__MainNav button,
  html body .Header__Wrapper .Header__MainNav button *,
  html body .Header__Wrapper .Header__SecondaryNav a,
  html body .Header__Wrapper .Header__SecondaryNav a *,
  html body .Header__Wrapper .HorizontalList__Item > a,
  html body .Header__Wrapper .HorizontalList__Item > a *,
  html body .Header__Wrapper .HorizontalList__Item > button,
  html body .Header__Wrapper .HorizontalList__Item > button *,
  html body .Header__Wrapper .Heading,
  html body .Header__Wrapper .Heading *,
  html body .Header__Wrapper .u-h6,
  html body .Header__Wrapper .u-h8,
  html body .Header__SecondaryNav a.Heading.Link.Link--primary.Text--subdued.u-h8,
  html body .Header__SecondaryNav .HorizontalList__Item > a.Heading.Link.Link--primary.Text--subdued.u-h8 {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.10em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
  }

  html body .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__ColHead,
  html body .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Link,
  html body li[data-nav="shop"] .WillboShopMenu__ColHead,
  html body li[data-nav="shop"] .WillboShopMenu__Link {
    font-size: 16px !important;
    line-height: 1.58 !important;
    letter-spacing: 0.005em !important;
  }

  html body .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureCaption,
  html body .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureCaption *,
  html body li[data-nav="shop"] .WillboShopMenu__FeatureCaption,
  html body li[data-nav="shop"] .WillboShopMenu__FeatureCaption * {
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  html body .ProductList--grid .ProductItem__Title,
  html body .ProductList--grid .ProductItem__Title a,
  html body .ProductList--grid .ProductItem__PriceList,
  html body .ProductList--grid .ProductItem__Price,
  html body .ProductList--grid .ProductItem__ColorCount,
  html body .ProductList--grid .ProductItem__SoldOut,
  html body .CollectionInner .ProductItem__Title,
  html body .CollectionInner .ProductItem__Title a,
  html body .CollectionInner .ProductItem__PriceList,
  html body .CollectionInner .ProductItem__Price,
  html body .CollectionInner .ProductItem__ColorCount,
  html body .CollectionInner .ProductItem__SoldOut,
  html body .template-index .ProductItem__Title,
  html body .template-index .ProductItem__Title a,
  html body .template-index .ProductItem__PriceList,
  html body .template-index .ProductItem__Price,
  html body.template-collection .ProductItem__Title,
  html body.template-collection .ProductItem__Title a,
  html body.template-collection .ProductItem__PriceList,
  html body.template-collection .ProductItem__Price,
  html body.template-collection .ProductItem__ColorCount,
  html body.template-collection .ProductItem__SoldOut {
    font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
    font-size: 15.5px !important;
    line-height: 1.34 !important;
    letter-spacing: 0.025em !important;
    font-weight: 400 !important;
  }

  html body.template-collection .CollectionToolbar,
  html body.template-collection .CollectionToolbar *,
  html body.template-collection .WillboCollectionHero__Tag,
  html body.template-collection .WillboCollectionHero__Tag *,
  html body.template-collection .WillboCollectionHero__Tags,
  html body.template-collection .WillboCollectionHero__Tags * {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 13.5px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.085em !important;
  }
}

/* AUGUST THEME: premium product-card information hierarchy.
   Product photography should lead. The name is primary, price is secondary,
   color availability is tertiary, and sold-out state is informative but quiet. */
html body .ProductItem__Info {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
}

html body .ProductItem__Info .ProductItem__Title,
html body .ProductItem__Info .ProductItem__Title a {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
  font-weight: 400 !important;
  color: #111111 !important;
  text-transform: none !important;
  letter-spacing: 0.012em !important;
}

html body .ProductItem__Info .ProductItem__PriceList,
html body .ProductItem__Info .ProductItem__Price,
html body .ProductItem__Info .ProductItem__PriceList.Text--subdued {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
  font-weight: 400 !important;
  color: rgba(17, 17, 17, 0.58) !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

html body .ProductItem__Info .ProductItem__ColorCount {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
  font-weight: 400 !important;
  color: rgba(17, 17, 17, 0.42) !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

html body .ProductItem__Info .ProductItem__SoldOut,
html body .ProductItem__Info .ProductItem__SoldOut.Text--subdued {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
  font-weight: 400 !important;
  color: #8F3A2E !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

@media screen and (min-width: 1008px) {
  html body .ProductItem__Info .ProductItem__Title,
  html body .ProductItem__Info .ProductItem__Title a {
    font-size: 15.5px !important;
    line-height: 1.32 !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList,
  html body .ProductItem__Info .ProductItem__Price,
  html body .ProductItem__Info .ProductItem__PriceList.Text--subdued {
    font-size: 14px !important;
    line-height: 1.34 !important;
    margin-top: 6px !important;
  }

  html body .ProductItem__Info .ProductItem__ColorCount {
    font-size: 13px !important;
    line-height: 1.34 !important;
    margin-top: 5px !important;
  }

  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductItem__Info .ProductItem__SoldOut.Text--subdued {
    font-size: 13px !important;
    line-height: 1.34 !important;
    margin-top: 6px !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .ProductItem__Info .ProductItem__Title,
  html body .ProductItem__Info .ProductItem__Title a {
    font-size: 14px !important;
    line-height: 1.32 !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList,
  html body .ProductItem__Info .ProductItem__Price,
  html body .ProductItem__Info .ProductItem__PriceList.Text--subdued {
    font-size: 13px !important;
    line-height: 1.34 !important;
    margin-top: 5px !important;
  }

  html body .ProductItem__Info .ProductItem__ColorCount {
    font-size: 12.5px !important;
    line-height: 1.34 !important;
    margin-top: 4px !important;
  }

  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductItem__Info .ProductItem__SoldOut.Text--subdued {
    font-size: 12.5px !important;
    line-height: 1.34 !important;
    margin-top: 5px !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .WillboMobileNav__Trigger,
  html body .WillboMobileNav__TriggerLabel,
  html body .WillboMobileNav__PanelTitle,
  html body .WillboMobileNav__Utility,
  html body .WillboMobileNav__UtilityLink,
  html body .WillboMobileNav__Signature {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    letter-spacing: 0.10em !important;
    font-weight: 400 !important;
  }

  html body .WillboMobileNav__SubLink,
  html body .WillboMobileNav__ExploreLink,
  html body .WillboMobileNav__StoryRow,
  html body .WillboMobileNav__ColHead,
  html body .WillboMobileNav__ColHeadText {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    letter-spacing: 0.08em !important;
    font-weight: 400 !important;
  }

  html body .WillboMobileNav__ColChild,
  html body .WillboMobileNav__QuickLink {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.09em !important;
    font-weight: 400 !important;
  }

  html body .WillboMobileNav__MenuFeatureKicker,
  html body .WillboMobileNav__FeatureKicker {
    font-size: 12px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.11em !important;
  }

  html body .WillboMobileNav__MenuFeatureHeading,
  html body .WillboMobileNav__FeatureCaption {
    font-size: 14px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.075em !important;
  }

  html body.template-index .SectionHeader__Heading,
  html body.template-index .SectionHeader__Heading.Heading,
  html body.template-collection .CollectionMain .SectionHeader__Heading,
  html body.template-collection .CollectionHero .SectionHeader__Heading {
    font-size: 18px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.12em !important;
  }

  html body .ProductList--grid .ProductItem__Title,
  html body .ProductList--grid .ProductItem__Title a,
  html body .ProductList--grid .ProductItem__PriceList,
  html body .ProductList--grid .ProductItem__Price,
  html body .ProductList--grid .ProductItem__ColorCount,
  html body .ProductList--grid .ProductItem__SoldOut,
  html body .CollectionInner .ProductItem__Title,
  html body .CollectionInner .ProductItem__Title a,
  html body .CollectionInner .ProductItem__PriceList,
  html body .CollectionInner .ProductItem__Price,
  html body .CollectionInner .ProductItem__ColorCount,
  html body .CollectionInner .ProductItem__SoldOut,
  html body .template-index .ProductItem__Title,
  html body .template-index .ProductItem__Title a,
  html body .template-index .ProductItem__PriceList,
  html body .template-index .ProductItem__Price,
  html body .template-index .ProductItem__ColorCount,
  html body.template-collection .ProductItem__Title,
  html body.template-collection .ProductItem__Title a,
  html body.template-collection .ProductItem__PriceList,
  html body.template-collection .ProductItem__Price,
  html body.template-collection .ProductItem__ColorCount,
  html body.template-collection .ProductItem__SoldOut {
    font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
    font-size: 14px !important;
    line-height: 1.34 !important;
    letter-spacing: 0.02em !important;
    font-weight: 400 !important;
  }
}

/* AUGUST THEME: mobile Founders consistency lock.
   Use the STORIES drawer row scale as the source of truth. SHOP was reading
   too small and EXPLORE too large, so all primary mobile menu rows now share
   one exact optical baseline. Editorial-card captions stay secondary. */
@media screen and (max-width: 1007px) {
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__SubPanel .WillboMobileNav__PanelTitle,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__SubPanel .WillboMobileNav__PanelTitle,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__PanelTitle,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__PanelTitle {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.14em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
  }

  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__Trigger,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__TriggerLabel,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__Trigger,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__TriggerLabel,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__StoryRow,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__StoryRow *,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__StoryRow,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__StoryRow *,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ExploreLink,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ExploreLink,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ColHead,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ColHead *,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ColHeadText,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ColHead,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ColHead *,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ColHeadText,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__SubLink,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__SubLink {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.105em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
  }

  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ShopCols .WillboMobileNav__ColLabel,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ShopCols .WillboMobileNav__ColLabel *,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ShopCols .WillboMobileNav__ColLabel,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ShopCols .WillboMobileNav__ColLabel * {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.105em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
  }

  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__StoryIndex,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__StoryIndex {
    font-size: 12px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.08em !important;
    color: rgba(17, 17, 17, 0.42) !important;
  }

  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__FeatureKicker,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__FeatureKicker,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__MenuFeatureKicker,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__MenuFeatureKicker {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.11em !important;
    font-weight: 400 !important;
    color: rgba(17, 17, 17, 0.50) !important;
    text-transform: uppercase !important;
  }

  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__FeatureCaption,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__FeatureCaption,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__MenuFeatureHeading,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__MenuFeatureHeading {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 13px !important;
    line-height: 1.38 !important;
    letter-spacing: 0.08em !important;
    font-weight: 400 !important;
    color: #111111 !important;
    text-transform: uppercase !important;
  }

  html body .ProductItem__Info,
  html body .ProductItem__Title,
  html body .ProductItem__Title a,
  html body .ProductItem__PriceList,
  html body .ProductItem__Price,
  html body .ProductItem__ColorCount,
  html body .ProductItem__SoldOut,
  html body .ProductMeta,
  html body .ProductMeta__Title,
  html body .ProductMeta__PriceList,
  html body .ProductForm__OptionName,
  html body .ProductForm__Label,
  html body .ProductForm__SelectedValue,
  html body .ProductForm__QuantitySelector,
  html body .ProductForm__AddToCart,
  html body .Product__Accordion,
  html body .Product__Accordion *,
  html body .CartItem,
  html body .CartItem *,
  html body .Drawer__Footer,
  html body .Drawer__Footer * {
    font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
    font-size: 13px !important;
    line-height: 1.38 !important;
    letter-spacing: 0.025em !important;
    font-weight: 400 !important;
  }

  html body .ProductItem__Title,
  html body .ProductItem__Title a,
  html body .ProductMeta__Title {
    font-size: 14px !important;
    line-height: 1.34 !important;
    letter-spacing: 0.018em !important;
  }
}

/* AUGUST THEME: final desktop legibility parity.
   Close the last desktop gaps: keep all nav labels at the intended 14px
   optical size and bring homepage carousel product cards up to the same
   15.5px commerce-card standard used on collection grids. */
@media screen and (min-width: 1008px) {
  html body .Header .Header__Wrapper .Header__MainNav a,
  html body .Header .Header__Wrapper .Header__MainNav a *,
  html body .Header .Header__Wrapper .Header__MainNav button,
  html body .Header .Header__Wrapper .Header__MainNav button *,
  html body .Header .Header__Wrapper .Header__MainNav .Header__LinkSpacer,
  html body .Header .Header__Wrapper .Header__MainNav .Header__LinkSpacer *,
  html body .Header .Header__Wrapper .Header__SecondaryNav a,
  html body .Header .Header__Wrapper .Header__SecondaryNav a *,
  html body .Header .Header__Wrapper .Header__SecondaryNav .Header__LinkSpacer,
  html body .Header .Header__Wrapper .Header__SecondaryNav .Header__LinkSpacer *,
  html body .Header__SecondaryNav a.Heading.Link.Link--primary.Text--subdued.u-h8,
  html body .Header__SecondaryNav .HorizontalList__Item > a.Heading.Link.Link--primary.Text--subdued.u-h8 {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.10em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
  }

  html body.template-index .ProductItem__Info,
  html body.template-index .ProductItem__Info *,
  html body.template-index .ProductItem__Title,
  html body.template-index .ProductItem__Title *,
  html body.template-index .ProductItem__Title a,
  html body.template-index .ProductItem__PriceList,
  html body.template-index .ProductItem__PriceList *,
  html body.template-index .ProductItem__Price,
  html body.template-index .ProductItem__ColorCount,
  html body.template-index .ProductItem__SoldOut {
    font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
    font-size: 15.5px !important;
    line-height: 1.34 !important;
    letter-spacing: 0.025em !important;
    font-weight: 400 !important;
  }
}

/* AUGUST THEME: exact final desktop utility parity.
   These are the remaining leaf utility anchors/buttons that use Prestige
   heading helpers; pin them to the same visual size as their neighboring
   desktop controls. */
@media screen and (min-width: 1008px) {
  html body .Header .Header__Wrapper .Header__SecondaryNav a.Heading.Link.Link--primary.Text--subdued.u-h8,
  html body .Header .Header__Wrapper .Header__SecondaryNav .HorizontalList__Item > a.Heading.Link.Link--primary.Text--subdued.u-h8,
  html body.template-index .Header .Header__Wrapper .Header__SecondaryNav a.Heading.Link.Link--primary.Text--subdued.u-h8,
  html body.template-index .Header .Header__Wrapper .Header__SecondaryNav .HorizontalList__Item > a.Heading.Link.Link--primary.Text--subdued.u-h8 {
    font-size: 14px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.10em !important;
  }

  html body.template-collection .CollectionToolbar button.CollectionToolbar__Item--filter,
  html body.template-collection .CollectionToolbar .CollectionToolbar__Item--filter,
  html body.template-collection .CollectionToolbar__Group button.CollectionToolbar__Item--filter.Heading.Text--subdued.u-h6,
  html body.template-collection .CollectionToolbar__Item.CollectionToolbar__Item--filter.Heading.Text--subdued.u-h6 {
    font-size: 13.5px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.085em !important;
  }
}

/* AUGUST THEME: mobile SHOP nested link legibility.
   Keep nested collection links subordinate to the 16px primary rows, but lift
   them above caption/fine-print territory so the drawer feels deliberate. */
@media screen and (max-width: 1007px) {
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ShopCols .WillboMobileNav__ColChild,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ShopCols .WillboMobileNav__ColChild *,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ShopCols .WillboMobileNav__ColChild,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ShopCols .WillboMobileNav__ColChild * {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    letter-spacing: 0.075em !important;
    font-weight: 400 !important;
    text-transform: none !important;
    color: rgba(17, 17, 17, 0.72) !important;
  }
}

/* AUGUST THEME: final product-card hierarchy lock.
   Keep the commerce-card information stack consistent everywhere after the
   larger Founders legibility passes: product name leads, price steps down,
   color availability recedes, sold-out state is visible but not loud. */
html body .ProductItem__Info .ProductItem__Title,
html body .ProductItem__Info .ProductItem__Title *,
html body .ProductItem__Info .ProductItem__Title a {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
  font-weight: 400 !important;
  color: #111111 !important;
  text-transform: none !important;
  letter-spacing: 0.012em !important;
}

html body .ProductItem__Info .ProductItem__PriceList,
html body .ProductItem__Info .ProductItem__PriceList *,
html body .ProductItem__Info .ProductItem__Price,
html body .ProductItem__Info .ProductItem__Price *,
html body .ProductItem__Info .ProductItem__PriceList.Text--subdued {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
  font-weight: 400 !important;
  color: rgba(17, 17, 17, 0.58) !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

html body .ProductItem__Info .ProductItem__ColorCount,
html body .ProductItem__Info .ProductItem__ColorCount * {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
  font-weight: 400 !important;
  color: rgba(17, 17, 17, 0.42) !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

html body .ProductItem__Info .ProductItem__SoldOut,
html body .ProductItem__Info .ProductItem__SoldOut *,
html body .ProductItem__Info .ProductItem__SoldOut.Text--subdued {
  font-family: var(--willbo-commerce-font, var(--w-sans)) !important;
  font-weight: 400 !important;
  color: #8F3A2E !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

@media screen and (min-width: 1008px) {
  html body .ProductItem__Info .ProductItem__Title,
  html body .ProductItem__Info .ProductItem__Title *,
  html body .ProductItem__Info .ProductItem__Title a {
    font-size: 15.5px !important;
    line-height: 1.32 !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList,
  html body .ProductItem__Info .ProductItem__PriceList *,
  html body .ProductItem__Info .ProductItem__Price,
  html body .ProductItem__Info .ProductItem__Price *,
  html body .ProductItem__Info .ProductItem__PriceList.Text--subdued {
    font-size: 14px !important;
    line-height: 1.34 !important;
  }

  html body .ProductItem__Info .ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorCount *,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductItem__Info .ProductItem__SoldOut *,
  html body .ProductItem__Info .ProductItem__SoldOut.Text--subdued {
    font-size: 13px !important;
    line-height: 1.34 !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .ProductItem__Info .ProductItem__Title,
  html body .ProductItem__Info .ProductItem__Title *,
  html body .ProductItem__Info .ProductItem__Title a {
    font-size: 14px !important;
    line-height: 1.32 !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList,
  html body .ProductItem__Info .ProductItem__PriceList *,
  html body .ProductItem__Info .ProductItem__Price,
  html body .ProductItem__Info .ProductItem__Price *,
  html body .ProductItem__Info .ProductItem__PriceList.Text--subdued {
    font-size: 13px !important;
    line-height: 1.34 !important;
  }

  html body .ProductItem__Info .ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorCount *,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductItem__Info .ProductItem__SoldOut *,
  html body .ProductItem__Info .ProductItem__SoldOut.Text--subdued {
    font-size: 12.5px !important;
    line-height: 1.34 !important;
  }
}

/* AUGUST THEME: absolute final product-card tertiary override.
   Collection and carousel cards both reuse ProductItem__PriceList for the
   colors-available row, so target the combined classes and inner text hooks
   after every other product-card sizing rule. */
@media screen and (min-width: 1008px) {
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorAvailabilityText,
  html body .ProductItem__Info .ProductItem__ColorCountText,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount *,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability * {
    font-size: 13px !important;
    line-height: 1.34 !important;
    color: rgba(17, 17, 17, 0.42) !important;
    letter-spacing: 0.01em !important;
    font-weight: 400 !important;
    text-transform: none !important;
  }

  html body .ProductItem__Info .ProductItem__Label.ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__Label.ProductItem__SoldOut,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductItem__Info .ProductItem__SoldOut * {
    font-size: 13px !important;
    line-height: 1.34 !important;
    color: #9F2F24 !important;
    letter-spacing: 0.01em !important;
    font-weight: 400 !important;
    text-transform: none !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorAvailabilityText,
  html body .ProductItem__Info .ProductItem__ColorCountText,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount *,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability * {
    font-size: 12.5px !important;
    line-height: 1.34 !important;
    color: rgba(17, 17, 17, 0.42) !important;
    letter-spacing: 0.01em !important;
    font-weight: 400 !important;
    text-transform: none !important;
  }

  html body .ProductItem__Info .ProductItem__Label.ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__Label.ProductItem__SoldOut,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductItem__Info .ProductItem__SoldOut * {
    font-size: 12.5px !important;
    line-height: 1.34 !important;
    color: #9F2F24 !important;
    letter-spacing: 0.01em !important;
    font-weight: 400 !important;
    text-transform: none !important;
  }
}

/* AUGUST THEME: sold-out hierarchy final specificity lock.
   Match the older grid/carousel ancestor selectors so sold-out is not pinned
   to the legacy 12px helper size. */
@media screen and (min-width: 1008px) {
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut {
    font-size: 13px !important;
    line-height: 1.34 !important;
    color: #9F2F24 !important;
    letter-spacing: 0.01em !important;
    font-weight: 400 !important;
    text-transform: none !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut {
    font-size: 12.5px !important;
    line-height: 1.34 !important;
    color: #9F2F24 !important;
    letter-spacing: 0.01em !important;
    font-weight: 400 !important;
    text-transform: none !important;
  }
}

/* AUGUST THEME: desktop primary nav optical parity.
   The left primary nav uses u-h6 anchors with Header__LinkSpacer text, while
   STORES / ACCOUNT use leaf u-h8 anchors. Lock the rendered left labels to
   the same size, tracking, weight, and transform as the right utility labels. */
@media screen and (min-width: 1008px) {
  html body .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6,
  html body .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6.Link,
  html body .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer,
  html body .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 > span,
  html body.template-index .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6,
  html body.template-index .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6.Link,
  html body.template-index .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer,
  html body.template-index .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 > span {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.10em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    color: #111111 !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* AUGUST THEME: product-card even vertical stack.
   Real-device review showed the hierarchy was right, but the cadence felt
   uneven. Use one consistent gap per breakpoint across name, price, variants,
   and sold-out so the card reads cleaner and more premium. */
@media screen and (min-width: 1008px) {
  html body .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability),
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut {
    margin-top: 8px !important;
    margin-bottom: 0 !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability),
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut {
    margin-top: 7px !important;
    margin-bottom: 0 !important;
  }
}

/* AUGUST THEME: desktop nav color/hover regression fix.
   Keep the 14px left-nav parity, but do not force black over the homepage
   hero and do not reveal Prestige's duplicate Header__LinkSpacer text. */
@media screen and (min-width: 1008px) {
  html body .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6,
  html body.template-index .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 {
    font-family: var(--w-nav-sans, var(--willbo-commerce-font, sans-serif)) !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.10em !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    opacity: 1 !important;
    transform: none !important;
  }

  html body .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .Header__LinkSpacer,
  html body.template-index .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .Header__LinkSpacer {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    text-shadow: none !important;
  }

  html body.template-index .Header:not(:hover) .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 {
    color: var(--w-white) !important;
    -webkit-text-fill-color: var(--w-white) !important;
  }

  html body.template-index .Header:hover .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6,
  html body:not(.template-index) .Header .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 {
    color: var(--w-black, #111111) !important;
    -webkit-text-fill-color: var(--w-black, #111111) !important;
  }
}

/* AUGUST THEME: final product-card even-gap correction.
   Price -> Colors was still inheriting the older compact 3px tertiary gap.
   Force the middle transition to the same even rhythm requested on real-device
   review while leaving typography hierarchy untouched. */
@media screen and (min-width: 1008px) {
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount {
    margin-top: 8px !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount {
    margin-top: 7px !important;
  }
}

/* AUGUST THEME: product-card vertical rhythm lock.
   Tighten the information stack so name + price read as one premium commerce
   unit, with color availability as a quiet tertiary line below. */
html body .ProductItem__Info .ProductItem__Title,
html body .ProductItem__Info .ProductItem__Title a {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

html body .ProductItem__Info .ProductItem__PriceList,
html body .ProductItem__Info .ProductItem__ColorAvailability,
html body .ProductItem__Info .ProductItem__ColorCount,
html body .ProductItem__Info .ProductItem__Label--soldOut,
html body .ProductItem__Info .ProductItem__SoldOut {
  margin-bottom: 0 !important;
}

@media screen and (min-width: 1008px) {
  html body .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability) {
    margin-top: 8px !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount {
    margin-top: 3px !important;
  }

  html body .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__SoldOut {
    margin-top: 8px !important;
  }

  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut {
    margin-top: 8px !important;
  }
}

/* AUGUST THEME: Moncler-tight product-card information stack.
   Keep the existing title / price / color hierarchy, but compress the vertical
   cadence so product name, price, color availability, and sold-out state read
   as one premium commerce unit instead of separated lines. */
html body .ProductItem__Info .ProductItem__Title,
html body .ProductItem__Info .ProductItem__Title a,
html body .ProductItem__Info .ProductItem__PriceList,
html body .ProductItem__Info .ProductItem__ColorCount,
html body .ProductItem__Info .ProductItem__ColorAvailability,
html body .ProductItem__Info .ProductItem__Label--soldOut,
html body .ProductItem__Info .ProductItem__SoldOut {
  margin-bottom: 0 !important;
}

@media screen and (min-width: 1008px) {
  html body .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability) {
    margin-top: 5px !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount {
    margin-top: 3px !important;
  }

  html body .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut {
    margin-top: 6px !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability) {
    margin-top: 4px !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount {
    margin-top: 2px !important;
  }

  html body .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut {
    margin-top: 5px !important;
  }
}

/* AUGUST THEME: absolute final mobile Sport-to-Clay spacing lock.
   This must remain after earlier one-off Sport spacing rules so the outer
   SPORT section itself owns the handoff to CLAY & DUNE instead of relying on
   incidental inner product-card padding. */
@media screen and (max-width: 749px) {
  html body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8.custom-shopify-section--bordered {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 20px !important;
  }
}

/* AUGUST THEME: final mobile homepage rhythm reset.
   Replace the stacked one-off mobile homepage spacing overrides with one
   coherent cadence: no negative section overlap, clean section hand-offs,
   a deliberate Sport-to-Clay pause, and a tighter Clay-to-Explore transition.
   Mobile homepage only. */
@media screen and (max-width: 749px) {
  html body.template-index #shopify-section-slideshow {
    margin-bottom: 40px !important;
  }

  html body.template-index #shopify-section-featured_collections_custom_pe6WyH.custom-shopify-section--bordered {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  html body.template-index #shopify-section-featured_collections_custom_pe6WyH.custom-shopify-section--bordered > section.Section,
  html body.template-index #shopify-section-featured_collections_custom_pe6WyH.custom-shopify-section--bordered > .Section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  html body.template-index #shopify-section-2_column_images_9pAHBT.shopify-section--two-column-images {
    margin-top: 0 !important;
    margin-bottom: 40px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  html body.template-index #shopify-section-2_column_images_9pAHBT.shopify-section--two-column-images > section.Section,
  html body.template-index #shopify-section-2_column_images_9pAHBT.shopify-section--two-column-images > .Section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  html body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8.custom-shopify-section--bordered {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 20px !important;
  }

  html body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8.custom-shopify-section--bordered > section.Section,
  html body.template-index #shopify-section-d3c9d38e-608c-456b-83a3-1dbc29b3efc8.custom-shopify-section--bordered > .Section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  html body.template-index #shopify-section-text_with_image_UhhwbR.shopify-section--bordered {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  html body.template-index #shopify-section-text_with_image_UhhwbR.shopify-section--bordered > section.Section,
  html body.template-index #shopify-section-text_with_image_UhhwbR.shopify-section--bordered > .Section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  html body.template-index #shopify-section-text_with_image_UhhwbR .WillboEditorial__Content {
    padding-bottom: 36px !important;
  }

  html body.template-index #shopify-section-16170468159d5a789a.shopify-section--menu-explorer {
    margin-top: 0 !important;
    margin-bottom: 40px !important;
    padding-top: 16px !important;
    padding-bottom: 0 !important;
  }

  html body.template-index #shopify-section-16170468159d5a789a.shopify-section--menu-explorer > section.Section,
  html body.template-index #shopify-section-16170468159d5a789a.shopify-section--menu-explorer > .Section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  html body.template-index #shopify-section-16170468159d5a789a.shopify-section--menu-explorer .SectionHeader {
    margin-bottom: 16px !important;
  }

  html body.template-index #shopify-section-featured_collections_custom_pe6WyH.custom-shopify-section--bordered > .Section--spacingNormal,
  html body.template-index #shopify-section-featured_collections_custom_pe6WyH.custom-shopify-section--bordered > section.Section--spacingNormal {
    padding-bottom: 0 !important;
  }
}

/* AUGUST THEME: desktop header hover color lock.
   A legacy global .supports-hover .Link--primary:hover rule uses tomato/red
   with !important. Keep that from bleeding into the premium desktop header:
   header nav hover/active states should be clean black on the white header or
   mega-menu surface, not accent red. */
@media screen and (min-width: 1008px) {
  html.supports-hover body .Header .Header__MainNav .Link--primary:hover,
  html.supports-hover body .Header .Header__MainNav .Link--primary:hover *,
  html.supports-hover body .Header .Header__MainNav .Link--primary.is-active,
  html.supports-hover body .Header .Header__MainNav .Link--primary.is-active *,
  html.supports-hover body .Header .Header__SecondaryNav .Link--primary:hover,
  html.supports-hover body .Header .Header__SecondaryNav .Link--primary:hover *,
  html.supports-hover body .Header .Header__SecondaryNav .Link--primary.is-active,
  html.supports-hover body .Header .Header__SecondaryNav .Link--primary.is-active *,
  html.supports-hover body .Header .Header__MainNav .Link--primary:hover .Header__LinkSpacer,
  html.supports-hover body .Header .Header__MainNav .Link--primary:hover .Header__LinkSpacer *,
  html.supports-hover body .Header .Header__MainNav .Link--primary.is-active .Header__LinkSpacer,
  html.supports-hover body .Header .Header__MainNav .Link--primary.is-active .Header__LinkSpacer *,
  html.supports-hover body .Header .Header__SecondaryNav .Link--primary:hover .Header__LinkSpacer,
  html.supports-hover body .Header .Header__SecondaryNav .Link--primary:hover .Header__LinkSpacer *,
  html.supports-hover body .Header .Header__SecondaryNav .Link--primary.is-active .Header__LinkSpacer,
  html.supports-hover body .Header .Header__SecondaryNav .Link--primary.is-active .Header__LinkSpacer * {
    color: #111111 !important;
  }
}

/* AUGUST THEME: mobile homepage collection section exit spacing.
   Real-device review showed the second home collection section (SPORT) felt
   too tight to the editorial block beneath it. Add a deliberate pause after
   the mobile product carousel without changing the internal product-card
   name / price / variant rhythm. */
@media screen and (max-width: 640px) {
  html body.template-index .custom-shopify-section--bordered {
    padding-bottom: 54px !important;
  }

  html body.template-index .custom-shopify-section--bordered .ProductListWrapper,
  html body.template-index .custom-shopify-section--bordered .Mobile.ProductList--grid {
    margin-bottom: 0 !important;
  }

  html body.template-index .custom-shopify-section--bordered + .shopify-section,
  html body.template-index .custom-shopify-section--bordered + .shopify-section--menu-explorer {
    margin-top: 0 !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability) {
    margin-top: 4px !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailabilityText,
  html body .ProductItem__Info .ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorCountText,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount {
    margin-top: 2px !important;
  }

  html body .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__SoldOut {
    margin-top: 5px !important;
  }

  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut {
    margin-top: 5px !important;
  }
}

/* AUGUST THEME: absolute final Moncler-tight product-card stack lock.
   Keep product name and price as a tight primary pair, then let the
   variant/color line step down beneath them like the Moncler reference.
   This block intentionally sits last so earlier PriceList / ColorCount /
   sold-out label rules cannot loosen or flatten the hierarchy. */
html body .ProductItem__Info .ProductItem__Title,
html body .ProductItem__Info .ProductItem__PriceList,
html body .ProductItem__Info .ProductItem__Price,
html body .ProductItem__Info .ProductItem__ColorAvailability,
html body .ProductItem__Info .ProductItem__ColorAvailabilityText,
html body .ProductItem__Info .ProductItem__ColorCount,
html body .ProductItem__Info .ProductItem__ColorCountText,
html body .ProductItem__Info .ProductItem__Label--soldOut,
html body .ProductItem__Info .ProductItem__SoldOut {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

html body .ProductItem__Info .ProductItem__Title,
html body .ProductItem__Info .ProductItem__Title *,
html body .ProductItem__Info .ProductItem__PriceList,
html body .ProductItem__Info .ProductItem__PriceList *,
html body .ProductItem__Info .ProductItem__Price,
html body .ProductItem__Info .ProductItem__Price *,
html body .ProductItem__Info .ProductItem__ColorAvailability,
html body .ProductItem__Info .ProductItem__ColorAvailability *,
html body .ProductItem__Info .ProductItem__ColorAvailabilityText,
html body .ProductItem__Info .ProductItem__ColorAvailabilityText *,
html body .ProductItem__Info .ProductItem__ColorCount,
html body .ProductItem__Info .ProductItem__ColorCount *,
html body .ProductItem__Info .ProductItem__ColorCountText,
html body .ProductItem__Info .ProductItem__ColorCountText *,
html body .ProductItem__Info .ProductItem__Label--soldOut,
html body .ProductItem__Info .ProductItem__Label--soldOut *,
html body .ProductItem__Info .ProductItem__SoldOut,
html body .ProductItem__Info .ProductItem__SoldOut * {
  line-height: 1.12 !important;
}

@media screen and (min-width: 1008px) {
  html body .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability),
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability),
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability) {
    margin-top: 2px !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailabilityText,
  html body .ProductItem__Info .ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorCountText,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount {
    margin-top: 5px !important;
  }

  html body .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut {
    margin-top: 4px !important;
  }
}

@media screen and (max-width: 1007px) {
  html body .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability),
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability),
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList:not(.ProductItem__ColorCount):not(.ProductItem__ColorAvailability) {
    margin-top: 1px !important;
  }

  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailability.ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorAvailability,
  html body .ProductItem__Info .ProductItem__ColorAvailabilityText,
  html body .ProductItem__Info .ProductItem__ColorCount,
  html body .ProductItem__Info .ProductItem__ColorCountText,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--grid .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorAvailability,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__PriceList.ProductItem__ColorCount {
    margin-top: 4px !important;
  }

  html body .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductItem__Info .ProductItem__SoldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .Grid__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .Carousel__Cell .ProductItem__Wrapper .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut,
  html body .ProductList--grid .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut,
  html body .ProductList--carousel .ProductItem__Info .ProductItem__Label--soldOut.ProductItem__SoldOut {
    margin-top: 3px !important;
  }
}

/* AUGUST THEME: announcement bar editor-color restore.
   The theme editor writes the selected background/text colors onto
   #section-announcement. Do not repaint the inner AnnouncementBar black; keep
   it transparent so the merchant-selected section background shows through. */
#section-announcement .AnnouncementBar {
  background: transparent !important;
  color: inherit !important;
}

#section-announcement .AnnouncementBar__Wrapper,
#section-announcement .AnnouncementBar__Content,
#section-announcement .AnnouncementBar__Content.Heading,
#section-announcement .AnnouncementBar__Content a,
#section-announcement .AnnouncementBar a,
#section-announcement .AnnouncementBar p,
#section-announcement .AnnouncementBar span {
  color: inherit !important;
}

/* AUGUST THEME: desktop solid/sticky header visibility lock.
   On scroll the header becomes a white/solid surface, but SHOP / STORIES /
   EXPLORE can retain the transparent-header white color and disappear. Keep
   every desktop nav label/icon black immediately whenever the header is in a
   solid, fixed, sticky, hovered, or non-transparent state. */
@media screen and (min-width: 1008px) {
  html body .Header:hover .Header__MainNav,
  html body .Header:hover .Header__MainNav *,
  html body .Header:hover .Header__SecondaryNav,
  html body .Header:hover .Header__SecondaryNav *,
  html body .Header:hover .Header__Icon,
  html body .Header:hover .Header__Icon *,
  html body .Header.is-fixed .Header__MainNav,
  html body .Header.is-fixed .Header__MainNav *,
  html body .Header.is-fixed .Header__SecondaryNav,
  html body .Header.is-fixed .Header__SecondaryNav *,
  html body .Header.is-fixed .Header__Icon,
  html body .Header.is-fixed .Header__Icon *,
  html body .Header.is-sticky .Header__MainNav,
  html body .Header.is-sticky .Header__MainNav *,
  html body .Header.is-sticky .Header__SecondaryNav,
  html body .Header.is-sticky .Header__SecondaryNav *,
  html body .Header.is-sticky .Header__Icon,
  html body .Header.is-sticky .Header__Icon *,
  html body .Header.Header--fixed .Header__MainNav,
  html body .Header.Header--fixed .Header__MainNav *,
  html body .Header.Header--fixed .Header__SecondaryNav,
  html body .Header.Header--fixed .Header__SecondaryNav *,
  html body .Header.Header--fixed .Header__Icon,
  html body .Header.Header--fixed .Header__Icon *,
  html body .Header.Header--sticky .Header__MainNav,
  html body .Header.Header--sticky .Header__MainNav *,
  html body .Header.Header--sticky .Header__SecondaryNav,
  html body .Header.Header--sticky .Header__SecondaryNav *,
  html body .Header.Header--sticky .Header__Icon,
  html body .Header.Header--sticky .Header__Icon *,
  html body .Header.Header--initialized:not(.Header--transparent) .Header__MainNav,
  html body .Header.Header--initialized:not(.Header--transparent) .Header__MainNav *,
  html body .Header.Header--initialized:not(.Header--transparent) .Header__SecondaryNav,
  html body .Header.Header--initialized:not(.Header--transparent) .Header__SecondaryNav *,
  html body .Header.Header--initialized:not(.Header--transparent) .Header__Icon,
  html body .Header.Header--initialized:not(.Header--transparent) .Header__Icon *,
  html body .Header:not(.Header--transparent) .Header__MainNav,
  html body .Header:not(.Header--transparent) .Header__MainNav *,
  html body .Header:not(.Header--transparent) .Header__SecondaryNav,
  html body .Header:not(.Header--transparent) .Header__SecondaryNav *,
  html body .Header:not(.Header--transparent) .Header__Icon,
  html body .Header:not(.Header--transparent) .Header__Icon *,
  html body .Header__Wrapper[style*="background"] .Header__MainNav,
  html body .Header__Wrapper[style*="background"] .Header__MainNav *,
  html body .Header__Wrapper[style*="background"] .Header__SecondaryNav,
  html body .Header__Wrapper[style*="background"] .Header__SecondaryNav *,
  html body .Header__Wrapper[style*="background"] .Header__Icon,
  html body .Header__Wrapper[style*="background"] .Header__Icon *,
  html.is-willbo-header-scrolled body .Header .Header__MainNav,
  html.is-willbo-header-scrolled body .Header .Header__MainNav *,
  html.is-willbo-header-scrolled body .Header .Header__SecondaryNav,
  html.is-willbo-header-scrolled body .Header .Header__SecondaryNav *,
  html.is-willbo-header-scrolled body .Header .Header__Icon,
  html.is-willbo-header-scrolled body .Header .Header__Icon *,
  html.is-willbo-header-scrolled body .Header .HorizontalList__Item > a,
  html.is-willbo-header-scrolled body .Header .HorizontalList__Item > a *,
  html.is-willbo-header-scrolled body .Header .HorizontalList__Item > button,
  html.is-willbo-header-scrolled body .Header .HorizontalList__Item > button *,
  html.is-willbo-header-scrolled body .Header .Header__LinkSpacer,
  html.is-willbo-header-scrolled body .Header .Header__LinkSpacer *,
  html.is-willbo-header-scrolled body .Header .Header__MainNav .HorizontalList__Item[data-nav] > a.Heading.u-h6,
  html.is-willbo-header-scrolled body .Header .Header__MainNav .HorizontalList__Item[data-nav] > a.Heading.u-h6 *,
  html.is-willbo-header-scrolled body .Header .Header__MainNav .HorizontalList__Item[data-nav] > a.Heading.u-h6 .Header__LinkSpacer,
  html.is-willbo-header-scrolled body .Header .Header__MainNav .HorizontalList__Item[data-nav] > a.Heading.u-h6 .Header__LinkSpacer *,
  html.is-willbo-header-scrolled body.template-index .Header:not(:hover) .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6,
  html.is-willbo-header-scrolled body.template-index .Header:not(:hover) .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 *,
  html.is-willbo-header-scrolled body.template-index .Header:not(:hover) .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 .Header__LinkSpacer,
  html.is-willbo-header-scrolled body.template-index .Header:not(:hover) .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6 .Header__LinkSpacer * {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    fill: #111111 !important;
    stroke: #111111 !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-shadow: none !important;
    mix-blend-mode: normal !important;
  }

  /* AUGUST THEME: search icon must always render as an outline (magnifying
     glass), never a solid filled circle. The broad Header__Icon fill lock
     above forces fill on every icon's inner shape when the header is not
     transparent (i.e. on every page except the homepage at rest). Because
     the search icon's circle/handle paths ship with fill="none" by design,
     that broad rule was solid-filling it. This higher-specificity rule wins
     the cascade and restores fill:none sitewide, on every page/template. */
  html body .Header .Header__Icon[data-action="toggle-search"] svg,
  html body .Header .Header__Icon[data-action="toggle-search"] svg *,
  html body .Header a[data-action="toggle-search"] svg,
  html body .Header a[data-action="toggle-search"] svg * {
    fill: none !important;
    stroke: currentColor !important;
  }

  /* AUGUST THEME: real-desktop header visibility lock.
     The transparent-homepage rule intentionally keeps the left nav/logo white
     over the hero at rest. But the instant the header is scrolled, hovered,
     keyboard-focused, or displaying a mega-menu/dropdown, the header must read
     as a solid commerce nav: white surface, black text/icons. This repeats the
     exact homepage-not-hover selector so it cannot keep SHOP/STORIES/EXPLORE
     white over the white menu/header panel. */
  html.is-willbo-header-scrolled body.template-index .Header::before,
  html body.template-index .Header:hover::before,
  html body.template-index .Header:focus-within::before {
    opacity: 1 !important;
    background: #ffffff !important;
    transition: none !important;
  }

  /* AUGUST THEME: mega/dropdown open — header panel matches the cream menu
     panel underneath it (no white-to-cream seam), on the homepage's ::before
     transparency layer. */
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"])::before,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"])::before {
    opacity: 1 !important;
    background: #F5F3EE !important;
    transition: none !important;
  }

  html.is-willbo-header-scrolled body.template-index .Header,
  html.is-willbo-header-scrolled body.template-index .Header .Header__Wrapper,
  html body.template-index .Header:hover,
  html body.template-index .Header:hover .Header__Wrapper,
  html body.template-index .Header:focus-within,
  html body.template-index .Header:focus-within .Header__Wrapper {
    background-color: #ffffff !important;
    color: #111111 !important;
  }

  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]),
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) .Header__Wrapper,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]),
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) .Header__Wrapper {
    background-color: #F5F3EE !important;
    color: #111111 !important;
  }

  /* AUGUST THEME: same seamless header treatment on every non-homepage
     template, where .Header is normally a permanent solid white bar
     (see base .Header rule) with no state-based logic at all. */
  html body:not(.template-index) .Header:has(.MegaMenu[aria-hidden="false"]),
  html body:not(.template-index) .Header:has(.MegaMenu[aria-hidden="false"]) .Header__Wrapper,
  html body:not(.template-index) .Header:has(.DropdownMenu[aria-hidden="false"]),
  html body:not(.template-index) .Header:has(.DropdownMenu[aria-hidden="false"]) .Header__Wrapper {
    background: #F5F3EE !important;
    border-bottom-color: #F5F3EE !important;
    color: #111111 !important;
  }

  html.is-willbo-header-scrolled body.template-index .Header a,
  html.is-willbo-header-scrolled body.template-index .Header a *,
  html.is-willbo-header-scrolled body.template-index .Header button,
  html.is-willbo-header-scrolled body.template-index .Header button *,
  html.is-willbo-header-scrolled body.template-index .Header .Heading,
  html.is-willbo-header-scrolled body.template-index .Header .Heading *,
  html.is-willbo-header-scrolled body.template-index .Header .Header__Logo,
  html.is-willbo-header-scrolled body.template-index .Header .Header__LogoLink,
  html.is-willbo-header-scrolled body.template-index .Header .Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6,
  html.is-willbo-header-scrolled body.template-index .Header:not(:hover) .Header__Wrapper nav.Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6,
  html body.template-index .Header:hover a,
  html body.template-index .Header:hover a *,
  html body.template-index .Header:hover button,
  html body.template-index .Header:hover button *,
  html body.template-index .Header:hover .Heading,
  html body.template-index .Header:hover .Heading *,
  html body.template-index .Header:hover .Header__Logo,
  html body.template-index .Header:hover .Header__LogoLink,
  html body.template-index .Header:hover .Header__MainNav.hidden-pocket.hidden-lap .HorizontalList > .HorizontalList__Item > a.Heading.u-h6,
  html body.template-index .Header:focus-within a,
  html body.template-index .Header:focus-within a *,
  html body.template-index .Header:focus-within button,
  html body.template-index .Header:focus-within button *,
  html body.template-index .Header:focus-within .Heading,
  html body.template-index .Header:focus-within .Heading *,
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) a,
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) a *,
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) button,
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) button *,
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) .Heading,
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) .Heading *,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) a,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) a *,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) button,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) button *,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) .Heading,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) .Heading * {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-shadow: none !important;
    mix-blend-mode: normal !important;
  }

  html.is-willbo-header-scrolled body.template-index .Header svg,
  html.is-willbo-header-scrolled body.template-index .Header svg *,
  html body.template-index .Header:hover svg,
  html body.template-index .Header:hover svg *,
  html body.template-index .Header:focus-within svg,
  html body.template-index .Header:focus-within svg *,
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) svg,
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) svg *,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) svg,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) svg * {
    color: #111111 !important;
    fill: #111111 !important;
    stroke: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
  }

  html.is-willbo-header-scrolled body.template-index .Header .Header__LogoImage--primary,
  html body.template-index .Header:hover .Header__LogoImage--primary,
  html body.template-index .Header:focus-within .Header__LogoImage--primary,
  html body.template-index .Header:has(.MegaMenu[aria-hidden="false"]) .Header__LogoImage--primary,
  html body.template-index .Header:has(.DropdownMenu[aria-hidden="false"]) .Header__LogoImage--primary {
    filter: none !important;
  }

  /* AUGUST THEME: open mega-menu must create a real white header bar.
     Real-device screenshot showed the menu panel open while the header strip
     still showed the hero image behind it. Force the header section/header/
     wrapper themselves to white whenever any desktop menu is open, even if the
     menu is positioned outside the hovered header box by Prestige JS/CSS. */
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .shopify-section--header,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .shopify-section--header,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) #shopify-section-header,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) #shopify-section-header,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header__Wrapper,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header__Wrapper {
    background: #F5F3EE !important;
    background-color: #F5F3EE !important;
    color: #111111 !important;
  }

  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header::before,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header::before {
    opacity: 1 !important;
    background: #F5F3EE !important;
    background-color: #F5F3EE !important;
    transition: none !important;
  }

  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .shopify-section--header,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .shopify-section--header,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) #shopify-section-header,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) #shopify-section-header {
    background: #F5F3EE !important;
    background-color: #F5F3EE !important;
  }

  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header a,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header a *,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header button,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header button *,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Heading,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Heading *,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__Logo,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__LogoLink,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header a,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header a *,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header button,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header button *,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header .Heading,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header .Heading *,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header .Header__Logo,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header .Header__LogoLink {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-shadow: none !important;
    mix-blend-mode: normal !important;
  }

  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header svg,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header svg *,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header svg,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header svg * {
    color: #111111 !important;
    fill: #111111 !important;
    stroke: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
  }

  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__LogoImage--primary,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header .Header__LogoImage--primary {
    filter: none !important;
  }

  /* AUGUST THEME: prevent stale aria state from pinning EXPLORE open.
     Prestige can leave aria-hidden="false" on a menu after hover/click state
     changes. Do not let that attribute alone hold a mega menu open on desktop;
     require actual hover/focus or the short-lived JS intent state. */
  html body.template-index .Header__MainNav .HorizontalList__Item:not(:hover):not(:focus-within):not(.is-willbo-nav-open) > .MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item:not(:hover):not(:focus-within):not(.is-willbo-nav-open) > .DropdownMenu {
    max-height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html body.template-index .Header__MainNav .HorizontalList__Item:hover > .MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item:focus-within > .MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item.is-willbo-nav-open > .MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item:hover > .DropdownMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item:focus-within > .DropdownMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item.is-willbo-nav-open > .DropdownMenu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  html body.template-index .Header__MainNav .HorizontalList__Item:hover > .WillboExpMenuOuter.MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item:focus-within > .WillboExpMenuOuter.MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item.is-willbo-nav-open > .WillboExpMenuOuter.MegaMenu {
    max-height: 365px !important;
  }

  html body.template-index .Header__MainNav .HorizontalList__Item:hover > .WillboStoriesMega.MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item:focus-within > .WillboStoriesMega.MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item:hover > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item:focus-within > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item.is-willbo-nav-open > .WillboStoriesMega.MegaMenu,
  html body.template-index .Header__MainNav .HorizontalList__Item.is-willbo-nav-open > .WillboShopMenu.MegaMenu {
    max-height: 650px !important;
  }

  html body.template-index:not(:has(.Header__MainNav .HorizontalList__Item:hover > .MegaMenu)):not(:has(.Header__MainNav .HorizontalList__Item:focus-within > .MegaMenu)):not(:has(.Header__MainNav .HorizontalList__Item:hover > .DropdownMenu)):not(:has(.Header__MainNav .HorizontalList__Item:focus-within > .DropdownMenu)) .Header:not(:hover):not(:focus-within) {
    background-color: transparent !important;
  }

  html body.template-index:not(:has(.Header__MainNav .HorizontalList__Item:hover > .MegaMenu)):not(:has(.Header__MainNav .HorizontalList__Item:focus-within > .MegaMenu)):not(:has(.Header__MainNav .HorizontalList__Item:hover > .DropdownMenu)):not(:has(.Header__MainNav .HorizontalList__Item:focus-within > .DropdownMenu)) .Header:not(:hover):not(:focus-within) .Header__Wrapper {
    background-color: transparent !important;
  }

  /* AUGUST THEME: never show Prestige duplicate nav spacer text.
     Header__LinkSpacer is an invisible sizing/hover-swap helper. Broad header
     color overrides can accidentally reveal it, making nav labels look doubled
     or warped while scrolling/hovering. Keep the spacer hidden in every state. */
  html body.template-index .Header .Header__MainNav .Header__LinkSpacer,
  html body.template-index .Header .Header__MainNav .Header__LinkSpacer *,
  html.is-willbo-header-scrolled body.template-index .Header .Header__MainNav .Header__LinkSpacer,
  html.is-willbo-header-scrolled body.template-index .Header .Header__MainNav .Header__LinkSpacer *,
  html body.template-index .Header:hover .Header__MainNav .Header__LinkSpacer,
  html body.template-index .Header:hover .Header__MainNav .Header__LinkSpacer *,
  html body.template-index .Header:focus-within .Header__MainNav .Header__LinkSpacer,
  html body.template-index .Header:focus-within .Header__MainNav .Header__LinkSpacer *,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__MainNav .Header__LinkSpacer,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__MainNav .Header__LinkSpacer *,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header .Header__MainNav .Header__LinkSpacer,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header .Header__MainNav .Header__LinkSpacer * {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    opacity: 0 !important;
    visibility: hidden !important;
    text-shadow: none !important;
  }

  /* AUGUST THEME: desktop Stories menu text-column alignment.
     Left-align the Stories text stack to the STORIES top-nav label so the
     panel reads intentional and editorial instead of floating/clipped. */
  html body.template-index .Header__MainNav li[data-nav="stories"] > .WillboStoriesMega.MegaMenu .WillboStoriesMega__Nav {
    width: 280px !important;
    max-width: 280px !important;
    min-width: 280px !important;
    transform: translateX(63px) !important;
  }

  html body.template-index .Header__MainNav li[data-nav="stories"] > .WillboStoriesMega.MegaMenu .WillboStoriesMega__Inner {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* AUGUST THEME: Stories menu premium close/open motion.
     Avoid the small hover-off glitch caused by animating max-height while
     Shopify/Prestige updates aria state. The actual visible motion should be
     opacity + a subtle translate, with max-height switched instantly. */
  html body.template-index .Header__MainNav li[data-nav="stories"] > .WillboStoriesMega.MegaMenu {
    transform: translateY(-8px) !important;
    transition:
      opacity 180ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 220ms cubic-bezier(0.16, 1, 0.3, 1),
      visibility 0s linear 220ms,
      max-height 0s linear 220ms !important;
    will-change: opacity, transform !important;
  }

  html body.template-index .Header__MainNav li[data-nav="stories"]:hover > .WillboStoriesMega.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="stories"]:focus-within > .WillboStoriesMega.MegaMenu {
    transform: translateY(0) !important;
    transition:
      opacity 160ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 200ms cubic-bezier(0.16, 1, 0.3, 1),
      visibility 0s linear 0s,
      max-height 0s linear 0s !important;
  }

  html:not(.is-willbo-header-scrolled) body.template-index:not(:has(.Header__MainNav .HorizontalList__Item:hover > .MegaMenu)):not(:has(.Header__MainNav .HorizontalList__Item:focus-within > .MegaMenu)):not(:has(.Header__MainNav .HorizontalList__Item:hover > .DropdownMenu)):not(:has(.Header__MainNav .HorizontalList__Item:focus-within > .DropdownMenu)) .Header:not(:hover):not(:focus-within),
  html:not(.is-willbo-header-scrolled) body.template-index:not(:has(.Header__MainNav .HorizontalList__Item:hover > .MegaMenu)):not(:has(.Header__MainNav .HorizontalList__Item:focus-within > .MegaMenu)):not(:has(.Header__MainNav .HorizontalList__Item:hover > .DropdownMenu)):not(:has(.Header__MainNav .HorizontalList__Item:focus-within > .DropdownMenu)) .Header:not(:hover):not(:focus-within) .Header__Wrapper {
    background-color: transparent !important;
  }

  /* AUGUST THEME: unify desktop mega-menu panel color.
     SHOP had a warmer off-white (#fbfaf7) while STORIES/EXPLORE rendered white.
     Keep every desktop mega-panel on the same clean white surface. */
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Inner,
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Cols,
  html body.template-index .Header__MainNav li[data-nav="stories"] > .WillboStoriesMega.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="stories"] > .WillboStoriesMega.MegaMenu .WillboStoriesMega__Inner,
  html body.template-index .Header__MainNav li[data-nav="explore"] > .WillboExpMenuOuter.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="explore"] > .WillboExpMenuOuter.MegaMenu .WillboExpWrap {
    background: #F5F3EE !important;
    background-color: #F5F3EE !important;
  }
}

/* AUGUST THEME: final desktop mega-menu motion parity.
   EXPLORE already has the soft premium reveal Robbie likes. Force SHOP and
   STORIES to use that same opacity/max-height timing instead of the older
   instant Shop transition or the newer Stories-only translate timing. */
@media screen and (min-width: 1008px) {
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="stories"] > .WillboStoriesMega.MegaMenu {
    transform: none !important;
    transition:
      max-height 400ms cubic-bezier(0.5, 0, 0.5, 1),
      opacity 400ms cubic-bezier(0.5, 0, 0.5, 1),
      visibility 0s linear 400ms !important;
    will-change: max-height, opacity !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"]:hover > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="shop"]:focus-within > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="shop"].is-willbo-nav-open > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="stories"]:hover > .WillboStoriesMega.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="stories"]:focus-within > .WillboStoriesMega.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="stories"].is-willbo-nav-open > .WillboStoriesMega.MegaMenu {
    transform: none !important;
    transition:
      max-height 400ms cubic-bezier(0.5, 0, 0.5, 1),
      opacity 400ms cubic-bezier(0.5, 0, 0.5, 1),
      visibility 0s linear 0s !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__ColHead {
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 15.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.45 !important;
    text-transform: capitalize !important;
    color: #111111 !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Link {
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 15.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.62 !important;
    text-transform: capitalize !important;
  }
}

/* AUGUST THEME: absolute final nav spacer lock.
   Must remain the last custom.css rule so scroll/open/header color rules cannot
   re-reveal Prestige's duplicate Header__LinkSpacer text. */
/* AUGUST THEME: final premium menu polish.
   Keep the approved Stories/Explore behavior, then normalize Shop spacing,
   typography, and mobile tap comfort so the full menu system feels intentional. */
@media screen and (min-width: 1008px) {
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Inner,
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__FeatureImg {
    background: #F5F3EE !important;
    background-color: #F5F3EE !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"]:hover > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="shop"]:focus-within > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="shop"].is-willbo-nav-open > .WillboShopMenu.MegaMenu {
    max-height: 724px !important;
  }

  html body.template-index .Header__MainNav li[data-nav="stories"] > .WillboStoriesMega.MegaMenu .WillboStoriesMega__Kicker {
    display: none !important;
  }

  html body.template-index .Header__MainNav li[data-nav="stories"] > .WillboStoriesMega.MegaMenu .WillboStoriesMega__Nav {
    padding-top: 0 !important;
  }

  html body.template-index .Header__MainNav li[data-nav="stories"] > .WillboStoriesMega.MegaMenu .WillboStoriesMega__NavLink:first-of-type {
    margin-top: 0 !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Inner {
    display: grid !important;
    grid-template-columns: minmax(620px, 700px) clamp(370px, 27vw, 430px) !important;
    column-gap: clamp(64px, 6vw, 96px) !important;
    justify-content: space-between !important;
    align-items: start !important;
    padding: 40px clamp(48px, 4vw, 64px) 64px 48px !important;
    min-height: 650px !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Cols {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(132px, max-content)) !important;
    justify-content: space-between !important;
    gap: clamp(56px, 6vw, 104px) !important;
    width: min(100%, 720px) !important;
    padding: 0 !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Feature,
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Feature--pair {
    position: static !important;
    width: 100% !important;
    max-width: 440px !important;
    justify-self: end !important;
    align-self: start !important;
    margin: 0 !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__ColHead,
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Link,
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__FeatureCaption,
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__FeatureCaption * {
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
    font-size: 15.5px !important;
    letter-spacing: 0.005em !important;
    color: #111111 !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__ColHead {
    font-size: 16.5px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    margin-bottom: 18px !important;
    text-transform: capitalize !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Link {
    font-weight: 400 !important;
    line-height: 1.62 !important;
    text-transform: capitalize !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__FeatureCaption {
    padding: 16px 0 74px !important;
  }

  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__FeatureCaption * {
    padding: 0 !important;
  }

  html body .AnnouncementBar__Content,
  html body .AnnouncementBar__Content.Heading,
  html body .Drawer__Title,
  html body .Drawer__Title.Heading,
  html body .Cart__Empty,
  html body .Cart__Empty.Heading,
  html body .Search__Input,
  html body .Search__Input.Heading,
  html body .WillboJournalCommunity__Heading {
    font-family: var(--w-nav-sans, var(--w-sans)) !important;
  }
}

@media screen and (max-width: 1007px) {
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__SubLink,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ColChild,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__StoryRow,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ExploreRow,
  html body #sidebar-menu.WillboMobileNav .WillboMobileNav__ExploreLink,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__SubLink,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ColChild,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__StoryRow,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ExploreRow,
  html body #shopify-section-sidebar-menu .WillboMobileNav.Drawer .WillboMobileNav__ExploreLink {
    min-height: 46px !important;
    align-items: center !important;
  }
}

@media screen and (min-width: 1008px) {
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav *,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__Icon,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__Icon *,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__CartCount {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    stroke: currentColor !important;
    text-shadow: none !important;
  }

  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__Icon svg,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__Icon svg * {
    color: #ffffff !important;
    stroke: currentColor !important;
  }

  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__Icon[data-action="toggle-search"] svg,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__Icon[data-action="toggle-search"] svg *,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) a[data-action="toggle-search"] svg,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) a[data-action="toggle-search"] svg * {
    fill: none !important;
    stroke: currentColor !important;
  }

  html body.template-index .Header .Header__Icon[data-action="toggle-search"] svg,
  html body.template-index .Header .Header__Icon[data-action="toggle-search"] svg *,
  html body.template-index .Header a[data-action="toggle-search"] svg,
  html body.template-index .Header a[data-action="toggle-search"] svg * {
    fill: none !important;
    stroke: currentColor !important;
  }

  html body.template-index .Header:not(:hover):not(:focus-within) .Header__Icon[data-action="toggle-search"],
  html body.template-index .Header:not(:hover):not(:focus-within) a[data-action="toggle-search"] {
    color: #ffffff !important;
  }

  html.is-willbo-header-scrolled body.template-index .Header .Header__Icon[data-action="toggle-search"],
  html.is-willbo-header-scrolled body.template-index .Header a[data-action="toggle-search"],
  html body.template-index .Header:hover .Header__Icon[data-action="toggle-search"],
  html body.template-index .Header:hover a[data-action="toggle-search"],
  html body.template-index .Header:focus-within .Header__Icon[data-action="toggle-search"],
  html body.template-index .Header:focus-within a[data-action="toggle-search"],
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__Icon[data-action="toggle-search"],
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header a[data-action="toggle-search"] {
    color: #111111 !important;
  }

  html body .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer,
  html body .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer *,
  html.is-willbo-header-scrolled body .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer,
  html.is-willbo-header-scrolled body .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer *,
  html body.template-index .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer,
  html body.template-index .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer *,
  html body.template-index .Header:hover .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer,
  html body.template-index .Header:hover .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer *,
  html body.template-index .Header:focus-within .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer,
  html body.template-index .Header:focus-within .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer *,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer *,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer,
  html body.template-index:has(.Header__MainNav .DropdownMenu[aria-hidden="false"]) .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer * {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    display: none !important;
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    text-shadow: none !important;
    pointer-events: none !important;
  }

  html body .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer::before,
  html body .Header .Header__MainNav .HorizontalList__Item > a.Heading.u-h6 > .Header__LinkSpacer::after {
    display: none !important;
    content: none !important;
  }
}

/* AUGUST THEME: final utility icon color + search outline lock.
   Keep the right-side utilities white over the transparent hero, then black
   when the header becomes solid. The desktop search SVG is outline art, so its
   fill must remain none; otherwise theme.css fills the circle into a blob. */
@media screen and (min-width: 1008px) {
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav .HorizontalList__Item > a,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav .Heading,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav .Link,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav .Text--subdued,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav .cart-item,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav .cart-item *,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav .Header__CartCount {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav svg,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav svg *,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav path,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav circle,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav use {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
  }

  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav a[data-action="toggle-search"] svg,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav a[data-action="toggle-search"] svg *,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav a[data-action="toggle-search"] path,
  html:not(.is-willbo-header-scrolled) body.template-index .Header:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav a[data-action="toggle-search"] circle {
    fill: none !important;
    stroke: #ffffff !important;
  }

  html.is-willbo-header-scrolled body.template-index .Header .Header__SecondaryNav a[data-action="toggle-search"] svg,
  html.is-willbo-header-scrolled body.template-index .Header .Header__SecondaryNav a[data-action="toggle-search"] svg *,
  html.is-willbo-header-scrolled body.template-index .Header .Header__SecondaryNav a[data-action="toggle-search"] path,
  html.is-willbo-header-scrolled body.template-index .Header .Header__SecondaryNav a[data-action="toggle-search"] circle,
  html body.template-index .Header:hover .Header__SecondaryNav a[data-action="toggle-search"] svg,
  html body.template-index .Header:hover .Header__SecondaryNav a[data-action="toggle-search"] svg *,
  html body.template-index .Header:hover .Header__SecondaryNav a[data-action="toggle-search"] path,
  html body.template-index .Header:hover .Header__SecondaryNav a[data-action="toggle-search"] circle,
  html body.template-index .Header:focus-within .Header__SecondaryNav a[data-action="toggle-search"] svg,
  html body.template-index .Header:focus-within .Header__SecondaryNav a[data-action="toggle-search"] svg *,
  html body.template-index .Header:focus-within .Header__SecondaryNav a[data-action="toggle-search"] path,
  html body.template-index .Header:focus-within .Header__SecondaryNav a[data-action="toggle-search"] circle,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__SecondaryNav a[data-action="toggle-search"] svg,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__SecondaryNav a[data-action="toggle-search"] svg *,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__SecondaryNav a[data-action="toggle-search"] path,
  html body.template-index:has(.Header__MainNav .MegaMenu[aria-hidden="false"]) .Header .Header__SecondaryNav a[data-action="toggle-search"] circle {
    fill: none !important;
    stroke: #111111 !important;
  }

  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav a,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav span,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__Icon,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__CartCount {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav svg,
  html:not(.is-willbo-header-scrolled) body.template-index .Search[aria-hidden="true"] + .Header.Header--transparent:not(:hover):not(:focus-within):not(:has(.MegaMenu[aria-hidden="false"])) .Header__SecondaryNav svg * {
    color: #ffffff !important;
    stroke: currentColor !important;
  }

  html body.template-index .Header .Header__SecondaryNav a[data-action="toggle-search"] svg,
  html body.template-index .Header .Header__SecondaryNav a[data-action="toggle-search"] svg *,
  html body.template-index .Header .Header__Icon[data-action="toggle-search"] svg,
  html body.template-index .Header .Header__Icon[data-action="toggle-search"] svg *,
  html body .Header .Header__SecondaryNav a[data-action="toggle-search"] svg,
  html body .Header .Header__SecondaryNav a[data-action="toggle-search"] svg *,
  html body .Header .Header__Icon[data-action="toggle-search"] svg,
  html body .Header .Header__Icon[data-action="toggle-search"] svg * {
    fill: none !important;
    stroke: currentColor !important;
  }
}

/* AUGUST THEME: premium footer readability + column alignment.
   Bring the footer closer to the header/menu polish: readable microcopy,
   consistent column starts, and restrained hierarchy instead of tiny labels. */
@media screen and (min-width: 1008px) {
  html body .WillboFooter__Inner {
    align-items: stretch !important;
  }

  html body .WillboFooter__Col {
    padding-top: 38px !important;
    padding-bottom: 34px !important;
  }

  html body .WillboFooter__Inner > .WillboFooter__Col:nth-child(2) {
    padding-top: 31px !important;
  }

  html body .WillboFooter__ColTitle,
  html body .WillboFooter__StoreName {
    font-size: 10.5px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.12em !important;
    font-weight: 500 !important;
    margin-top: 0 !important;
    margin-bottom: 18px !important;
  }

  html body .WillboFooter__StoreName {
    margin-bottom: 10px !important;
  }

  html body .WillboFooter__StoreAddress,
  html body .WillboFooter__StorePhone,
  html body .WillboFooter__StoreEmail,
  html body .WillboFooter__Link,
  html body .WillboFooter__NewsletterSub,
  html body .WillboFooter__NewsletterInput {
    font-size: 12px !important;
    line-height: 1.62 !important;
    letter-spacing: 0.01em !important;
  }

  html body .WillboFooter__Store {
    margin-bottom: 26px !important;
  }

  html body .WillboFooter__WeatherList {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  html body .WillboFooter__WeatherItem {
    display: grid !important;
    grid-template-columns: 8px minmax(0, 1fr) 36px !important;
    column-gap: 12px !important;
    align-items: baseline !important;
    padding: 0 0 12px 0 !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    letter-spacing: 0.01em !important;
  }

  html body .WillboFooter__WeatherDot {
    width: 7px !important;
    height: 7px !important;
    margin-top: 4px !important;
  }

  html body .WillboFooter__WeatherLocation,
  html body .WillboFooter__WeatherTemp {
    font-size: 12px !important;
    line-height: 1.45 !important;
    letter-spacing: 0.01em !important;
  }

  html body .WillboFooter__WeatherTemp {
    min-width: 36px !important;
    text-align: right !important;
  }

  html body .WillboFooter__WeatherMeta,
  html body .WillboFooter__WeatherSub,
  html body .WillboFooter__WeatherDetail,
  html body .WillboFooter__WeatherItem small,
  html body .WillboFooter__WeatherItem span:not(.WillboFooter__WeatherDot):not(.WillboFooter__WeatherLocation):not(.WillboFooter__WeatherTemp) {
    font-size: 11px !important;
    line-height: 1.5 !important;
    letter-spacing: 0.01em !important;
    color: rgba(17, 17, 17, 0.54) !important;
  }

  html body .WillboFooter__NewsletterSub {
    max-width: 220px !important;
    margin-top: 0 !important;
    margin-bottom: 94px !important;
    color: rgba(17, 17, 17, 0.54) !important;
  }

  html body .WillboFooter__NewsletterRow {
    margin-top: 0 !important;
  }

  html body .WillboFooter__LinksGrid {
    padding-top: 0 !important;
  }

  html body .WillboFooter__LinkCol {
    gap: 10px !important;
  }
}

/* AUGUST THEME: premium product-card variant reveal.
   Remove the explanatory "X colors available" copy from product cards while
   preserving the quiet hover-reveal color squares. The grid should read more
   editorial at rest, with variant detail appearing only on intent. */
html body .ProductItem__Info .ProductItem__ColorAvailabilityText,
html body .ProductItem__Info .ProductItem__ColorCountText,
html body .ProductItem__Info .ProductItem__ColorCount {
  display: none !important;
}

html body .ProductItem__Info .ProductItem__ColorAvailability {
  display: block !important;
  min-height: 17px !important;
  height: 17px !important;
  margin-top: 4px !important;
  position: relative !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

html body .ProductItem__Info .ProductItem__ColorAvailability .WillboProductSwatches {
  display: flex !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

@media screen and (min-width: 1008px) {
  html body .ProductItem:hover .ProductItem__ColorAvailability .WillboProductSwatches,
  html body .ProductItem__Wrapper:hover .ProductItem__ColorAvailability .WillboProductSwatches {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(-50%) translateY(0) !important;
  }
}

/* AUGUST THEME: homepage custom collection card breathing room.
   With the "colors available" copy removed, the product name/price stack needs
   a slightly more deliberate pause below the image, especially on mobile. */
html body.template-index .custom-shopify-section--bordered .ProductItem__Info {
  margin-top: 18px !important;
}

@media screen and (max-width: 1007px) {
  html body.template-index .custom-shopify-section--bordered .ProductItem__Info {
    margin-top: 22px !important;
  }
}
/* AUGUST THEME: tighten Western Conditions metric grouping.
   Keep the footer airy overall, but make each muted weather metric feel
   attached to its location instead of floating as a separate row. */
@media screen and (min-width: 1008px) {
  html body .WillboFooter__WeatherItem {
    row-gap: 2px !important;
    padding-bottom: 3px !important;
  }

  html body .WillboFooter__WeatherMeta,
  html body .WillboFooter__WeatherSub,
  html body .WillboFooter__WeatherDetail,
  html body .WillboFooter__WeatherItem small,
  html body .WillboFooter__WeatherItem span:not(.WillboFooter__WeatherDot):not(.WillboFooter__WeatherLocation):not(.WillboFooter__WeatherTemp) {
    grid-column: 2 / 4 !important;
    margin-top: -1px !important;
    padding-top: 0 !important;
    line-height: 1.28 !important;
  }

  html body .WillboFooter__SubRow {
    padding-left: 17px !important;
    margin: -2px 0 9px 0 !important;
    font-size: 10px !important;
    line-height: 12.8px !important;
  }

  html body .WillboFooter__SubLabel {
    display: block !important;
    font-size: 10px !important;
    line-height: 12.8px !important;
    letter-spacing: 0.04em !important;
    color: rgba(17, 17, 17, 0.55) !important;
    opacity: 1 !important;
  }
}

/* AUGUST THEME: tighten newsletter footer composition.
   The form should feel connected to the community copy, while the email field
   and subscribe action read as one compact premium unit instead of a stretched
   full-column control. */
@media screen and (min-width: 1008px) {
  html body .WillboFooter__Col--newsletter {
    justify-content: flex-start !important;
  }

  html body .WillboFooter__NewsletterSub {
    max-width: 260px !important;
    margin-bottom: 0 !important;
    line-height: 1.62 !important;
  }

  html body .WillboFooter__NewsletterForm {
    width: 100% !important;
    max-width: 340px !important;
    margin-top: 52px !important;
  }

  html body .WillboFooter__NewsletterRow {
    align-items: center !important;
    gap: 24px !important;
  }

  html body .WillboFooter__NewsletterInput,
  html body .WillboFooter__NewsletterInput[type="email"] {
    padding: 7px 0 9px !important;
    line-height: 1.2 !important;
  }

  html body .WillboFooter__NewsletterBtn {
    padding: 7px 0 9px 0 !important;
    line-height: 1.2 !important;
  }
}

/* AUGUST THEME: global desktop mega-menu state guard.
   The homepage already had a stale-aria protection layer, but content pages
   such as The Circle can inherit Prestige/current-link state and arrive with
   EXPLORE visually open. Keep active nav styling separate from menu visibility:
   mega menus should only display from intentional hover/focus/JS intent, never
   from aria-hidden="false" or current-page state alone. */
@media screen and (min-width: 1008px) {
  html body .Header__MainNav .HorizontalList__Item:not(:hover):not(:focus-within):not(.is-willbo-nav-open) > .MegaMenu,
  html body .Header__MainNav .HorizontalList__Item:not(:hover):not(:focus-within):not(.is-willbo-nav-open) > .DropdownMenu {
    max-height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition:
      max-height 400ms cubic-bezier(0.5, 0, 0.5, 1),
      opacity 400ms cubic-bezier(0.5, 0, 0.5, 1),
      visibility 0s linear 400ms !important;
  }

  html body .Header__MainNav .HorizontalList__Item:hover > .MegaMenu,
  html body .Header__MainNav .HorizontalList__Item:focus-within > .MegaMenu,
  html body .Header__MainNav .HorizontalList__Item.is-willbo-nav-open > .MegaMenu,
  html body .Header__MainNav .HorizontalList__Item:hover > .DropdownMenu,
  html body .Header__MainNav .HorizontalList__Item:focus-within > .DropdownMenu,
  html body .Header__MainNav .HorizontalList__Item.is-willbo-nav-open > .DropdownMenu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transition:
      max-height 400ms cubic-bezier(0.5, 0, 0.5, 1),
      opacity 400ms cubic-bezier(0.5, 0, 0.5, 1),
      visibility 0s linear 0s !important;
  }

  html body .Header__MainNav li[data-nav="explore"]:hover > .WillboExpMenuOuter.MegaMenu,
  html body .Header__MainNav li[data-nav="explore"]:focus-within > .WillboExpMenuOuter.MegaMenu,
  html body .Header__MainNav li[data-nav="explore"].is-willbo-nav-open > .WillboExpMenuOuter.MegaMenu {
    max-height: 365px !important;
  }

  html body .Header__MainNav li[data-nav="shop"]:hover > .WillboShopMenu.MegaMenu,
  html body .Header__MainNav li[data-nav="shop"]:focus-within > .WillboShopMenu.MegaMenu,
  html body .Header__MainNav li[data-nav="shop"].is-willbo-nav-open > .WillboShopMenu.MegaMenu {
    max-height: 724px !important;
  }

  html body .Header__MainNav li[data-nav="stories"]:hover > .WillboStoriesMega.MegaMenu,
  html body .Header__MainNav li[data-nav="stories"]:focus-within > .WillboStoriesMega.MegaMenu,
  html body .Header__MainNav li[data-nav="stories"].is-willbo-nav-open > .WillboStoriesMega.MegaMenu {
    max-height: 650px !important;
  }

  /* Escape keeps focus on the top-level trigger without letting the existing
     :focus-within visibility rule immediately reopen the panel. */
  html body .Header__MainNav .HorizontalList__Item.is-willbo-nav-escape-closed > .MegaMenu,
  html body .Header__MainNav .HorizontalList__Item.is-willbo-nav-escape-closed > .DropdownMenu {
    max-height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

/* ═══════════════════════════════════════════════════════════════════════
   AUGUST THEME: SHOP mega menu — Moncler-proportioned resize (2026-08-28)
   Founder feedback: SHOP desktop mega menu is "too large vertically" and
   "hard to navigate off of" — wants it to "feel very moncler" (tight,
   editorial, content-hugging — not sprawling with dead white space).

   Root cause: the panel's real content (3 text columns of short links +
   one portrait feature image/caption) only needs ~230-280px of height, but
   two separate CSS layers force a ~620-650px min-height on
   .WillboShopMenu__Inner, an oversized ~380-390px-wide feature image
   (~520-570px tall at 3:4), a leftover 74px caption bottom-padding hack
   (homepage layer only), and a 724px open-state max-height ceiling.

   TWO layers render this menu depending on template:
   - Homepage (body.template-index): CSS grid layer, ~line 23882-23996.
   - Every other template (collection, PDP, The Circle, etc.): older
     legacy flex/absolute layer, ~line 21728-21812 (not scoped to
     body.template-index, so it is what actually wins there).
   Both are overridden below, using higher source order + matching
   !important specificity, so SHOP now looks the same tight, restrained,
   Moncler proportion on every page template.
   ═══════════════════════════════════════════════════════════════════════ */
@media screen and (min-width: 1008px) {

  /* ── Homepage grid layer override ─────────────────────────────────── */

  /* Shrink forced min-height and tighten bottom padding so the panel's
     real height comes from its content (text columns vs. image+caption),
     not an arbitrary minimum. 650px → 360px; 64px bottom padding → 42px. */
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Inner {
    min-height: 360px !important;
    padding: 40px clamp(48px, 4vw, 64px) 42px 48px !important;
    align-items: start !important;
  }

  /* Keep text columns and image column top-aligned — a shared top edge
     reads as one intentional editorial grid rather than two mismatched
     blocks (tested align-items: center here, but it pushed the shorter
     text columns down away from the image's top edge, which looked
     lopsided rather than balanced — top alignment is the Moncler read). */
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Cols {
    align-items: flex-start !important;
  }

  /* Feature image: ~390px wide (~520px tall) → 260px wide (~347px tall),
     nudged up slightly per founder feedback to 285px wide (~380px tall
     at the same 3:4 aspect-ratio) — still restrained/portrait/Moncler-
     scaled, just a touch bigger. */
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Feature,
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__Feature--pair {
    max-width: 325px !important;
    align-self: start !important;
  }

  /* A later legacy-layer rule (not scoped to template-index) sets this to
     2/3, which is taller than the intended 3:4 — restore 3:4 explicitly
     here so the shrunk 260px-wide image lands at ~347px tall, not 390px. */
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__FeatureImg {
    aspect-ratio: 3 / 4 !important;
  }

  /* Caption bottom padding: 74px (leftover hack) → 18px, matching the
     14px top padding scale instead of forcing extra dead space below. */
  html body.template-index .Header__MainNav li[data-nav="shop"] > .WillboShopMenu.MegaMenu .WillboShopMenu__FeatureCaption {
    padding: 14px 0 18px !important;
  }

  /* Open-state transition ceiling: 724px → 490px → nudged to 535px to
     accommodate the slightly larger 285px-wide (~380px tall) feature
     image without clipping the caption below it. */
  html body.template-index .Header__MainNav li[data-nav="shop"]:hover > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="shop"]:focus-within > .WillboShopMenu.MegaMenu,
  html body.template-index .Header__MainNav li[data-nav="shop"].is-willbo-nav-open > .WillboShopMenu.MegaMenu {
    max-height: 590px !important;
  }

  /* ── Legacy non-homepage layer override (collection, PDP, The Circle,
     and any other non-index template — confirmed via browser inspection
     that this flex/absolute layer, not the grid layer, renders here) ── */

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Inner,
  li[data-nav="shop"] .WillboShopMenu__Inner {
    /* This legacy layer positions .WillboShopMenu__Feature with
       position: absolute (top: 40px, out of normal flow), so Inner's own
       box does not naturally grow to contain it — min-height must be set
       explicitly to the image column's full extent (40px top offset +
       401px feature column height [347px 3:4 image + 54px caption] +
       ~20px breathing room) or the caption gets clipped by the panel's
       overflow:hidden. Measured/confirmed via browser: without this,
       caption text was cut off on non-homepage templates
       (e.g. /pages/the-circle). */
    min-height: 555px !important;
    padding: 40px 48px 42px 48px !important;
    align-items: flex-start !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Cols,
  li[data-nav="shop"] .WillboShopMenu__Cols {
    /* Reserve just enough right-hand space for the 325px-wide feature
       image (was reserving up to 360px for a ~285px image). */
    padding-right: clamp(360px, 26vw, 400px) !important;
    align-items: flex-start !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Feature,
  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__Feature--pair,
  li[data-nav="shop"] .WillboShopMenu__Feature,
  li[data-nav="shop"] .WillboShopMenu__Feature--pair {
    width: 325px !important;
  }

  /* Restore 3:4 (this legacy layer itself sets 2/3 a few rules earlier,
     which reads taller/narrower than intended at the new smaller width). */
  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureImg,
  li[data-nav="shop"] .WillboShopMenu__FeatureImg {
    aspect-ratio: 3 / 4 !important;
  }

  .WillboShopMenu.MegaMenu.Megamenu--shop .WillboShopMenu__FeatureCaption,
  li[data-nav="shop"] .WillboShopMenu__FeatureCaption,
  li[data-nav="shop"] .WillboShopMenu__FeatureCaption * {
    padding: 14px 0 18px !important;
  }

  /* Same open-state ceiling as the homepage layer — both occurrences
     updated to the identical new value so SHOP renders consistently
     between the homepage and every other template. */
  html body .Header__MainNav li[data-nav="shop"]:hover > .WillboShopMenu.MegaMenu,
  html body .Header__MainNav li[data-nav="shop"]:focus-within > .WillboShopMenu.MegaMenu,
  html body .Header__MainNav li[data-nav="shop"].is-willbo-nav-open > .WillboShopMenu.MegaMenu {
    max-height: 590px !important;
  }
}

/* ═══════════════════════════════════════════════════════════════════════
   AUGUST THEME: calm the bouncy product-card hover crossfade (2026-08-28)
   Founder feedback: hovering product grid cards feels bouncy/flickery, not
   premium — compared unfavorably to moncler.com's quiet single crossfade.

   ROOT CAUSE (confirmed via Playwright event/transition instrumentation
   against the live draft preview, not just guessed from CSS):
   - This is NOT a JS re-triggering bug, NOT a swatch-overlaps-image layout
     shift, and NOT literal CSS overshoot/elastic easing. Both product
     images are absolutely positioned inside `.AspectRatio` (theme.css),
     the `.WillboProductSwatches` row lives in `.ProductItem__Info`, ~18px
     *below* the image wrapper's bounding box — it never sits under the
     cursor while hovering the photo, and a synthetic, perfectly-still
     Playwright cursor produces exactly ONE mouseenter/mouseleave pair with
     zero re-firing for as long as it stays still, so there is no feedback
     loop.
   - What IS real: the tall image wrapper's bottom edge (a very natural
     resting spot for a cursor scanning the grid) is an ordinary hover
     boundary — nudging the pointer by only a couple of pixels across that
     edge repeatedly toggles :hover on/off, which is completely normal
     browser behavior and inaudible on subtle hover effects. It becomes
     the visible "bounce" here because the original rule (line ~6264-6309
     above) pairs a full opacity swap with a 4% scale change using two
     DIFFERENT durations (opacity 0.35s vs. transform 0.55s). Each time the
     boundary flicker reverses the hover state, the transform is caught
     mid-flight (there is a ~200ms window where opacity has already
     finished but the scale is still animating), so the scale keeps
     reversing direction before it settles — that repeated mid-flight
     reversal is what reads as an elastic "bounce" between the two
     product photos.

   FIX: make the crossfade calm and resilient to boundary micro-flicker —
   opacity and transform now share one duration/easing so they always
   finish together (no mid-flight reversal artifacts to compound), the
   scale delta is reduced from a showy 4% to a subtle ~2% (Moncler-like
   restraint), and the duration is nudged up slightly (0.55s → 0.4s,
   single ease-out on BOTH properties) so quick pointer movement reads as
   one smooth settle rather than a snap. This is a plain CSS :hover fix —
   no new JS file, no theme-layout script tag required — so it ships
   immediately with zero wiring risk and fully addresses the confirmed
   root cause (the duration mismatch was the entire mechanism that made a
   normal boundary hover-toggle look like a bounce).
   Scope is strictly `.ProductItem__Image` / `.ProductItem__Image--alternate`
   crossfade — SHOP mega menu, mobile nav, PDP gallery/zoom, and cart drawer
   are untouched. ═══════════════════════════════════════════════════════ */

/* Equal duration + single easing for BOTH properties on BOTH images so a
   quick re-hover during the transition never catches transform and
   opacity out of sync with each other. */
.ProductItem__Image:not(.ProductItem__Image--alternate) {
  transition: opacity 0.4s ease-out, transform 0.4s ease-out !important;
  transform: scale(1) !important;
}

.ProductItem__Image--alternate {
  transition: opacity 0.4s ease-out, transform 0.4s ease-out !important;
  transform: scale(1.02) !important;
}

@media (hover: hover) {
  /* Subtle ~2% scale (was 4%) — quiet, Moncler-restrained zoom instead of
     a showy pop, and now moving on the SAME clock as the opacity fade, so
     a quick boundary re-toggle can no longer catch the scale mid-flight
     and reverse it — that mid-flight reversal was the actual "bounce". */
  .ProductItem__ImageWrapper--withAlternateImage:hover .ProductItem__Image:not(.ProductItem__Image--alternate) {
    opacity: 0 !important;
    transform: scale(1.02) !important;
  }

  .ProductItem__ImageWrapper--withAlternateImage:hover .ProductItem__Image--alternate {
    opacity: 1 !important;
    transform: scale(1) !important;
  }
}

/* AUGUST THEME: search icon global outline fix (all viewports).
   The earlier fix only lived inside a min-width:1008px block, so phones/
   narrow windows never got it and the magnifying glass still rendered as
   a solid filled dot. This final, unscoped, end-of-file rule forces the
   outline look on every breakpoint, header state, and page. */
html body .Header .Header__Icon[data-action="toggle-search"] svg,
html body .Header .Header__Icon[data-action="toggle-search"] svg *,
html body .Header a[data-action="toggle-search"] svg,
html body .Header a[data-action="toggle-search"] svg *,
html body .Header__SecondaryNav a[data-action="toggle-search"] svg,
html body .Header__SecondaryNav a[data-action="toggle-search"] svg *,
html body #sidebar-menu a[data-action="toggle-search"] svg,
html body #sidebar-menu a[data-action="toggle-search"] svg * {
  fill: none !important;
  stroke: currentColor !important;
}
