/* pints in the freezer */
.pints{background:var(--lime);padding:64px 0 0;position:relative}
.pints > .wave{margin-top:64px}
.pints-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:start}
.pints-head{display:flex;flex-direction:column;gap:14px}
.pints-tag{align-self:flex-start;margin:0;padding:6px 14px;border-radius:999px;background:var(--ink);color:var(--lime);font-size:14px;font-weight:700;transform:rotate(-3deg)}
.pints-head h2{margin:0;color:var(--ink)}
.pints-sub{margin:0;font-size:18px;color:var(--ink);max-width:34ch}
.pint-list{list-style:none;margin:0;padding:0;display:inline-flex;flex-direction:column;align-items:stretch;gap:12px;max-width:100%}
.pint{display:inline-flex;align-items:center;gap:10px;box-sizing:border-box;min-width:240px;max-width:100%;padding:14px 32px;background:#FFFFFF;border:3px solid var(--ink);border-radius:999px;font-family:'DM Sans',sans-serif;font-weight:800;font-size:20px;line-height:1.2;color:var(--ink);transition:transform .2s}
.pint:hover{transform:rotate(-1.5deg)}
.pint-tags{display:flex;gap:4px;flex:none}
.pint-tag{padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:var(--soft);color:var(--ink)}
.pint-tag.vegan{background:#D7F0C8}
.pint.skeleton{height:56px;width:260px;background:rgba(255,255,255,.55);border-style:dashed}
.pint-empty{margin:0;padding:18px 20px;border-radius:18px;background:rgba(255,255,255,.7);border:2.5px dashed var(--ink);font-weight:700}
.pint-empty[hidden],.pint-list[hidden]{display:none}
.pints-foot{grid-column:1 / -1;margin:0;font-size:14px;font-weight:700;color:var(--muted)}
@media (max-width:860px){
  .pints{padding-top:48px}
  .pints > .wave{margin-top:48px}
  .pints-wrap{grid-template-columns:1fr;gap:24px}
}
/* big "Request a booking" button in the party section */
.book-col{justify-content:center}
.book-big{display:flex;flex-direction:column;align-items:center;gap:18px;padding:32px 28px 30px;border-radius:36px;background:var(--lime);box-shadow:0 10px 0 var(--pink);text-decoration:none;color:var(--ink);transform:rotate(1.5deg);transition:transform .2s ease,box-shadow .2s ease}
.book-big:hover,.book-big:focus-visible{transform:rotate(0) scale(1.03);box-shadow:0 14px 0 var(--pink)}
.book-big:focus-visible{outline:3px solid #FFFFFF;outline-offset:4px}
.book-cart{display:block;width:100%;max-width:440px;height:auto;animation:cartroll 3.4s ease-in-out infinite}
.book-big:hover .book-cart{animation:cupjiggle .6s ease-in-out infinite}
@keyframes cartroll{0%,100%{transform:translateX(-8px) rotate(-1deg)}50%{transform:translateX(8px) rotate(1deg)}}
.book-label{font-family:'Fraunces',serif;font-weight:900;font-size:clamp(30px,3.6vw,46px);line-height:1;text-align:center;font-variation-settings:'SOFT' 100}
@media (prefers-reduced-motion:reduce){.book-cart,.book-big:hover .book-cart{animation:none}}


/* cart section: pastel baby blue */
.ink-band.cart-blue{background:#C6E2F7;color:#1A1014}
.cart-blue .big.lime{color:#1A1014}
.cart-blue .lead.light{color:#3E2A33}
.cart-blue p.sec-badge{border-color:#1A1014;box-shadow:0 4px 0 #1A1014}
.cart-blue .occasions li{border-color:#1A1014;color:#1A1014;background:transparent}
.cart-blue .occasions li:nth-child(2){background:#FE4871}
.cart-blue .occasions li:nth-child(3){background:#FFFFFF}
.cart-blue .occasions li:nth-child(4){background:#E4F229}
.cart-blue .book-big{background:none;box-shadow:none;padding:0;border-radius:0;transform:none;gap:40px}
.cart-blue .book-big:hover,.cart-blue .book-big:focus-visible{transform:none;box-shadow:none}
.cart-blue .book-big:focus-visible{outline:3px solid #1A1014}
.cart-blue .book-cart{filter:drop-shadow(0 12px 0 rgba(26,16,20,.18))}
.cart-blue .book-label{display:inline-flex;align-items:center;justify-content:center;gap:.3em;min-height:86px;padding:0 46px;border-radius:999px;background:#1A1014;color:#E4F229;border:3px solid #1A1014;box-shadow:0 7px 0 #FE4871;font-family:'Fraunces',Georgia,serif;font-weight:900;font-size:36px;letter-spacing:-.01em;-webkit-text-stroke:.6px #E4F229;transform:rotate(-2deg);transition:transform .2s ease,box-shadow .2s ease}
.cart-blue .book-big:hover .book-label{transform:rotate(0) scale(1.04);box-shadow:0 10px 0 #FE4871}
@media (max-width:600px){.cart-blue .book-label{font-size:27px;min-height:70px;padding:0 30px}.cart-blue .book-big{gap:30px}}
/* pints: almost-gone tag, and wrap neatly on phones */
.pint-tag.gone{background:var(--c-gone-ink,#FFB347);border:1.5px solid #1A1014;display:inline-flex;align-items:center;gap:5px}
.pint-tag.gone::before{content:"";width:7px;height:7px;border-radius:50%;background:#1A1014;animation:gonedot 1s ease-in-out infinite}
@keyframes gonedot{0%,100%{opacity:1}50%{opacity:.25}}
@media (prefers-reduced-motion:reduce){.pint-tag.gone::before{animation:none}}
@media (max-width:600px){
  .pint-list{display:flex;width:100%}
  .pint{flex-wrap:wrap;row-gap:6px;min-width:0;width:100%;padding:12px 20px;font-size:18px;border-radius:28px}
  .pint > span:first-child{min-width:0;overflow-wrap:anywhere}
  .pint-tags{flex-wrap:wrap}
}
/* pint badges match the flavour cards */
.pint-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pint-tag{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;border:2px solid #1A1014;box-shadow:0 2px 0 #1A1014;font-size:12px;font-weight:700;text-transform:none;letter-spacing:0;line-height:1.2;white-space:nowrap;color:#FFFFFF;transform:rotate(-2deg)}
.pint-tag:nth-child(even){transform:rotate(2deg)}
.pint-tag.fotw{background:var(--c-fotw-ink,#8A5AD6);color:#FFFFFF}
.pint-tag.fotw::before{content:"\2605";color:#FFE45C;width:auto;height:auto;background:none;border-radius:0;animation:none}
.pint-tag.new{background:var(--c-new-ink,#1F6FD0);color:#FFFFFF}
.pint-tag.new::before{content:"\2726"}
.pint-tag.gone{background:var(--c-gone-ink,#F07A1A);color:#1A1014;border:2px solid #1A1014}
.pint-tag.vegan{background:var(--c-vegan-ink,#2E7D2C);color:#FFFFFF}
@media (max-width:600px){.pint-tag{font-size:11px;padding:3px 8px}}
/* pint badges wrap */
@media (max-width:600px){.pint-tags{flex:1 1 auto;min-width:0;max-width:100%}}

/* pints: two columns on computers only; every pill in the list is as wide as the longest name + badge, all on one line */
@media (min-width:1100px){
  .pints-wrap{grid-template-columns:minmax(260px,1fr) minmax(0,max-content);gap:48px}
  .pints-wrap.pints-stack{grid-template-columns:minmax(0,1fr);gap:28px}
  .pint-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;width:max-content;max-width:none}
  .pint-list.one-col{grid-template-columns:minmax(0,1fr)}
  .pint{width:100%;min-width:0;padding:14px 24px;white-space:nowrap;flex-wrap:nowrap}
  .pint-tags{flex:none;flex-wrap:nowrap}
}