.webshop-listing-page{background:#fffdfa}
.webshop-listing-page .header nav .active:after{right:0}
.shop-kicker{margin:0;color:#9f835e;font:600 10px/1.4 var(--heading);letter-spacing:.15em;text-transform:uppercase}

.shop-toolbar{padding:25px 0;border-bottom:1px solid #ded2c6;background:#fffdfa}
.shop-toolbar-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px}
.shop-search{height:50px;padding:0 17px;display:flex;align-items:center;border:1px solid #cfc2b5;background:#fffdfa}
.shop-search input{width:100%;height:100%;border:0;outline:0;background:transparent;color:#362e2a;font:400 13px var(--body)}
.shop-search input::placeholder{color:#8d8178}
.shop-search span{color:var(--brand);font:500 20px var(--heading)}
.shop-view-filters{display:flex;align-items:center;gap:8px}
.shop-view-filters button{min-height:40px;padding:0 16px;border:1px solid #d8ccc0;background:#fffdfa;color:#776b64;font:600 8px var(--heading);letter-spacing:.07em;text-transform:uppercase}
.shop-view-filters button.active{border-color:var(--brand);background:var(--brand);color:#fff}

.availability-bar{padding:38px 0 41px;border-top:1px solid #ded2c6;border-bottom:1px solid #ded2c6;background:#fffdfa}
.availability-bar-inner{display:grid;grid-template-columns:.64fr 1.36fr;align-items:center;gap:80px}
.availability-bar h2{margin:10px 0 0;color:#382f2b;font:600 22px/1.2 var(--heading)}
.availability-bar h2 em{color:var(--brand);font-style:normal}
.availability-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.availability-legend p{margin:0;padding-left:25px;position:relative}
.legend-dot{position:absolute;width:10px;height:10px;left:0;top:2px;border-radius:50%}
.legend-dot.available{background:var(--accent)}
.legend-dot.dated{border:2px solid var(--brand);background:#fffdfa}
.legend-dot.soon{background:#cfc2b5}
.availability-legend b{display:block;color:#3d342f;font:600 10px var(--heading);text-transform:uppercase}
.availability-legend small{display:block;margin-top:5px;color:#7b7069;font:400 10px/1.45 var(--body)}

.shop-section{padding:105px 0 118px}
.shop-section-heading{display:grid;grid-template-columns:1fr 420px;align-items:end;gap:90px}
.shop-section-heading h2{margin:13px 0 0;color:#312925;font:400 56px/1 var(--display)}
.shop-section-heading h2 em{color:var(--brand);font-style:italic}
.shop-section-heading>p{margin:0 0 5px;color:#5d534d;font:400 15px/1.75 var(--body)}
.category-grid{margin-top:55px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.shop-category-card{min-width:0;display:flex;flex-direction:column;border:1px solid #ded3c7;background:#fffdfa;transition:transform .25s ease,box-shadow .25s ease}
a.shop-category-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #452a2412}
.shop-category-card figure{height:265px;margin:0;position:relative;overflow:visible;background:#e9dfd3}
.shop-category-card figure>img{height:100%;object-fit:cover}
.shop-category-card .product-image img{object-fit:contain;padding:20px;mix-blend-mode:multiply}
.typographic-evergreen{display:grid;place-items:center;overflow:hidden!important;color:#fff}
.typographic-evergreen:before{content:"";position:absolute;width:210px;height:210px;border:1px solid #fff2;border-radius:50%}
.typographic-evergreen .evergreen-letter{font:400 142px/.8 var(--display);opacity:.18}
.typographic-evergreen>b{position:absolute;font:400 30px/1 var(--display)}
.bonbon-panel{background:linear-gradient(145deg,#7d4a50,#4f2930)!important}
.treats-panel{background:linear-gradient(145deg,#a99465,#796841)!important}
.availability-label{position:absolute;z-index:3;left:19px;bottom:-15px;padding:9px 11px;background:var(--accent);color:#fff;font:600 8px var(--heading);letter-spacing:.09em;text-transform:uppercase}
.shop-category-card>div{min-height:225px;padding:35px 23px 24px;display:flex;flex-direction:column}
.shop-category-card small,.season-feature-copy>small{color:#9a7e5a;font:600 8px var(--heading);letter-spacing:.13em;text-transform:uppercase}
.shop-category-card h3{margin:10px 0 13px;color:#332b27;font:600 22px/1.13 var(--heading);letter-spacing:-.015em}
.shop-category-card p{margin:0;color:#71665f;font:400 13px/1.65 var(--body)}
.category-action,.category-locked{margin-top:auto;padding-top:22px;display:flex;align-items:center;justify-content:space-between;color:var(--brand);font:600 8px var(--heading);letter-spacing:.08em;text-transform:uppercase}
.category-action b{font-size:14px}
.category-locked{color:#8d8178}
.category-locked b{font-size:15px;font-weight:400}

.shop-seasonal{background:#f4ede4}
.season-now{margin-top:58px}
.season-feature-card{min-height:470px;display:grid;grid-template-columns:1.3fr .7fr;background:var(--brand);color:#fff;transition:transform .25s ease,box-shadow .25s ease}
.season-feature-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #452a2420}
.season-feature-card figure{min-height:470px;margin:0;overflow:hidden}
.season-feature-card figure img{height:100%;object-fit:cover}
.season-feature-copy{padding:53px 48px;display:flex;flex-direction:column;align-items:flex-start}
.season-feature-copy .availability-label{position:static;margin-bottom:45px}
.season-feature-copy>small{color:#d7be87}
.season-feature-copy h3{margin:12px 0 18px;color:#fffaf5;font:400 53px/.95 var(--display)}
.season-feature-copy p{margin:0;color:#f1e4d8d5;font:400 15px/1.75 var(--body)}
.season-feature-copy .category-action{width:100%;color:#fff9ed}
.seasonal-grid{margin-top:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.seasonal-grid .shop-category-card figure{height:315px;overflow:visible}
.seasonal-grid .shop-category-card>div{min-height:245px}
.is-dated figure>img,.is-soon figure>img{filter:saturate(.55) contrast(.92);opacity:.72}
.is-dated .availability-label{background:#f5eee5;color:var(--brand);box-shadow:inset 0 0 0 1px #5a30365c}
.is-soon .availability-label{background:var(--brand);color:#fff}
.seasonal-grid .wide-soon{grid-column:1/-1;display:grid;grid-template-columns:.78fr 2.22fr}
.seasonal-grid .wide-soon figure{height:300px}
.seasonal-grid .wide-soon>div{min-height:300px;padding:46px 38px 34px}
.seasonal-grid .wide-soon h3{font-size:28px}
.seasonal-grid .wide-soon p{max-width:620px}
.typographic-halloween{display:grid;place-items:center;overflow:hidden!important;background:linear-gradient(145deg,#4c272d,#7b4344)!important;color:#f3dfb5}
.typographic-halloween:before{content:"";position:absolute;width:230px;height:230px;border:1px solid #d9c18c33;border-radius:50%}
.typographic-halloween .halloween-number{font:400 132px/.8 var(--display);opacity:.25}
.typographic-halloween>b{position:absolute;font:400 40px/1 var(--display)}

.season-explainer{padding:98px 0 104px;background:#a08c5e;color:#fff}
.season-explainer-inner{display:grid;grid-template-columns:1fr .9fr;align-items:end;gap:100px}
.season-explainer .shop-kicker{color:#f0ddb0}
.season-explainer h2{margin:13px 0 0;color:#fffaf5;font:400 55px/1 var(--display)}
.season-explainer h2 em{color:#f3e5c4;font-style:italic}
.season-explainer-inner>div:last-child p{margin:0;color:#fff9ecdf;font:400 15px/1.75 var(--body)}
.season-explainer-inner>div:last-child p+p{margin-top:17px}

@media(max-width:1100px){
  .shop-section-heading{gap:55px}
  .category-grid{grid-template-columns:1fr 1fr}
  .availability-bar-inner{grid-template-columns:1fr;gap:28px}
}

@media(max-width:900px){
  .shop-toolbar-inner{grid-template-columns:1fr;gap:13px}
  .shop-view-filters{overflow-x:auto;padding-bottom:3px}
  .shop-view-filters button{flex:0 0 auto}
  .availability-legend{grid-template-columns:1fr 1fr 1fr}
  .shop-section-heading,.season-explainer-inner{grid-template-columns:1fr;gap:28px}
  .shop-section-heading>p,.season-explainer-inner>div:last-child{max-width:680px}
  .season-feature-card{grid-template-columns:1fr}
  .season-feature-card figure{height:500px}
  .seasonal-grid{grid-template-columns:1fr 1fr}
  .seasonal-grid .wide-soon{grid-column:1/-1;grid-template-columns:1fr 1fr}
}

@media(max-width:620px){
  .shop-kicker{font-size:9px}
  .shop-toolbar{padding:18px 0 20px}
  .shop-toolbar-inner{gap:11px}
  .shop-view-filters{scrollbar-width:none}
  .shop-view-filters::-webkit-scrollbar{display:none}
  .availability-bar{padding:31px 0 34px}
  .availability-bar h2{font-size:19px}
  .availability-legend{grid-template-columns:1fr;gap:18px}
  .availability-legend p{padding-bottom:17px;border-bottom:1px solid #e0d6cc}
  .availability-legend p:last-child{padding-bottom:0;border-bottom:0}
  .shop-section{padding:76px 0 82px}
  .shop-section-heading h2{font-size:42px}
  .shop-section-heading>p{font-size:14px}
  .category-grid,.seasonal-grid{margin-top:41px;grid-template-columns:1fr;gap:16px}
  .seasonal-grid .wide-soon{grid-column:auto;display:flex}
  .shop-category-card figure,.seasonal-grid .shop-category-card figure{height:285px}
  .seasonal-grid .wide-soon figure{height:285px}
  .shop-category-card>div,.seasonal-grid .shop-category-card>div{min-height:215px;padding:34px 21px 22px}
  .seasonal-grid .wide-soon>div{min-height:215px;padding:34px 21px 22px}
  .shop-category-card h3{font-size:21px}
  .season-now{margin-top:42px}
  .season-feature-card figure{min-height:0;height:330px}
  .season-feature-copy{padding:38px 24px 34px}
  .season-feature-copy .availability-label{margin-bottom:32px}
  .season-feature-copy h3{font-size:44px}
  .season-explainer{padding:76px 0 82px}
  .season-explainer h2{font-size:43px}
  .season-explainer-inner>div:last-child p{font-size:14px}
}
