
:root{
  --paper:#FAF6EE;--ink:#241E31;--violet:#5E2BDF;--violet-d:#4520AC;--gold:#F2A007;
  --berry:#C62B5E;--teal:#0A6E61;--card:#FFFFFF;--line:#E5DCC8;
  --muted:#5A5470;--faint:#6E6884;
  --s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--sec:2.5rem;
  --r-s:8px;--r-m:16px;--r-l:20px;--r-pill:999px;
  --sh:4px 4px 0 rgba(36,30,49,.9);--sh-lg:7px 7px 0 rgba(20,12,50,.55);
  --fs-xs:.78rem;--fs-sm:.88rem;--fs-base:1.03rem;--fs-lg:1.3rem;--fs-xl:1.55rem;
  --track:.09em;
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
/* [hidden] must ALWAYS win. Several components below set an author-level
   display (flex / inline-flex) on elements that also carry the hidden
   attribute, and an author display silently overrides the UA stylesheet's
   [hidden]{display:none} — that is how a closed overlay once rendered open
   over the whole page. This single rule is the seatbelt; the overlay rules
   near the end of this sheet add a second, transform/visibility-based one. */
[hidden]{display:none!important}
/* z-index scale (rationalized): page content 0 · sticky mobile buy bar 25 ·
   sticky header 30 · skip link 60 · backdrop 80 · search dialog 90 ·
   cart drawer 95. Nothing else may invent a z-index. */
h1,h2,h3{text-wrap:balance;letter-spacing:-.01em}
.yr-count,.yr-stock,.yr-tile p{font-variant-numeric:tabular-nums}
html{scrollbar-gutter:stable;scroll-behavior:smooth;overflow-x:clip}
::selection{background:var(--gold);color:var(--ink)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);line-height:1.55;font-size:var(--fs-base);overflow-x:clip}
a{color:var(--violet)}
.wrap{max-width:1120px;margin:0 auto;padding:0 18px}
.yr-announce{background:var(--ink);color:#F5EFE0;text-align:center;font-size:.82rem;font-weight:600;letter-spacing:.03em;padding:var(--s2) 14px;min-height:2.35em}
.yr-announce b{color:var(--gold)}
.yr-ann-msg{animation:yr-fade .3s ease both}
header.yr-head{position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:2px solid var(--ink)}
.yr-bar{display:flex;align-items:center;gap:var(--s4);padding-top:12px;padding-bottom:12px;flex-wrap:wrap}
.yr-logo{display:inline-flex;align-items:center;gap:10px;font-weight:900;font-size:var(--fs-xl);letter-spacing:-.02em;color:var(--ink);text-decoration:none}
.yr-logo .r{color:var(--violet)}.yr-logo .dot{color:var(--gold)}
.yr-logomark{width:44px;height:44px;border-radius:50%;flex:none;display:block}
nav.yr-nav{display:flex;gap:4px;flex-wrap:wrap;margin-left:6px}
nav.yr-nav a{color:var(--ink);text-decoration:none;font-weight:700;font-size:.98rem;padding:11px 13px;border-radius:var(--r-pill)}
nav.yr-nav a:hover{background:#EFE7D3}
nav.yr-nav a[aria-current]{background:var(--ink);color:#fff}
.yr-utils{margin-left:auto;display:flex;gap:6px}
.yr-util{position:relative;width:44px;height:44px;border:2px solid var(--ink);border-radius:50%;background:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.yr-util svg{width:19px;height:19px;stroke:var(--ink);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.yr-util:hover{background:#EFE7D3}
.yr-util[aria-disabled="true"]{background:var(--violet);border-color:var(--violet);opacity:1;cursor:not-allowed}
.yr-util[aria-disabled="true"] svg{stroke:#EFE7D3}
.yr-util[aria-disabled="true"]:hover{background:var(--violet-d);border-color:var(--violet-d)}
.yr-count-badge{position:absolute;top:-7px;right:-7px;background:var(--berry);color:#fff;font-size:.68rem;font-weight:800;min-width:21px;height:21px;border-radius:var(--r-pill);display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--paper);padding:0 4px;font-variant-numeric:tabular-nums}
.yr-hero{background:radial-gradient(circle at 12% 18%,rgba(242,160,7,.5) 0 90px,transparent 130px),radial-gradient(circle at 88% 84%,rgba(10,110,97,.4) 0 110px,transparent 160px),linear-gradient(160deg,#3A1D8F,#5E2BDF 60%,#4520AC);color:#fff;padding:52px 0 46px}
.yr-hero .kick{display:inline-block;background:var(--gold);color:var(--ink);font-weight:800;font-size:.74rem;letter-spacing:var(--track);text-transform:uppercase;border-radius:var(--r-pill);padding:4px 12px}
.yr-hero h1{font-size:clamp(2rem,9vw,4.1rem);font-weight:900;line-height:1.02;letter-spacing:-.02em;margin:14px 0 10px}
.yr-hero p.lede{font-size:1.12rem;max-width:620px;margin:0 0 var(--s2);opacity:.95}
.yr-hero p.tag{font-weight:800;font-size:1.02rem;color:var(--gold);margin:0 0 22px}
.yr-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:30px;align-items:center}
@media(max-width:820px){.yr-hero-grid{grid-template-columns:1fr}}
.yr-stats{display:flex;gap:26px;list-style:none;margin:24px 0 0;padding:0;flex-wrap:wrap}
.yr-stats li{font-size:.95rem;opacity:.95}
.yr-stats b{display:block;font-size:1.6rem;font-weight:900;color:var(--gold);line-height:1.1;font-variant-numeric:tabular-nums}
.yr-cta{display:inline-block;background:var(--gold);color:var(--ink);font-weight:800;border-radius:var(--r-pill);padding:12px 24px;text-decoration:none;margin-right:10px;border:2px solid var(--gold)}
.yr-cta.ghost{background:transparent;color:#fff;border-color:#fff}
.yr-cta:hover{filter:brightness(.95)}
section.yr-blk{padding:var(--sec) 0}
h2.yr-sec{font-size:var(--fs-xl);font-weight:900;letter-spacing:-.01em;margin:0 0 6px}
p.yr-sub{margin:0 0 18px;color:var(--muted);max-width:680px}
.yr-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s4)}
.yr-tile{border:2px solid var(--ink);border-radius:18px;padding:22px 18px;text-decoration:none;color:#fff;box-shadow:5px 5px 0 rgba(36,30,49,.9);display:block}
.yr-tile h3{margin:0 0 4px;font-size:var(--fs-lg);font-weight:900}
.yr-tile p{margin:0;font-size:.9rem;opacity:.95}
.yr-tile:hover{transform:translate(-1px,-1px);box-shadow:6px 6px 0 rgba(36,30,49,.9)}
.yr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;align-items:stretch}
.yr-railwrap{display:flex;align-items:center;gap:10px}
.yr-rail{display:flex;align-items:flex-start;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 16px;flex:1;min-width:0}
.yr-rail .yr-card{flex:0 0 272px;scroll-snap-align:start}
.yr-railbtn{flex:none;width:44px;height:44px;border:2px solid var(--ink);border-radius:50%;background:#fff;font-size:1.35rem;font-weight:900;line-height:1;cursor:pointer;font-family:inherit;color:var(--ink);padding:0}
.yr-railbtn:hover{background:#EFE7D3}
.yr-railbtn:active{transform:translateY(1px)}
.yr-kick{display:inline-block;background:var(--gold);color:var(--ink);font-weight:800;font-size:.74rem;letter-spacing:var(--track);text-transform:uppercase;border-radius:var(--r-pill);padding:4px 12px}
.yr-colhero{color:#fff;padding:44px 0 38px}
.yr-colhero h1{font-size:clamp(2rem,5.5vw,3.2rem);font-weight:900;line-height:1.05;letter-spacing:-.02em;margin:14px 0 8px;text-shadow:0 2px 0 rgba(0,0,0,.25)}
.yr-colhero p{margin:0 0 6px;max-width:640px;font-size:1.05rem;text-shadow:0 1px 0 rgba(0,0,0,.3)}
.yr-colhero .count{font-weight:800;color:#FFE1A1;font-variant-numeric:tabular-nums}
.yr-card{background:var(--card);border:2px solid var(--ink);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--sh);transition:transform .2s ease,box-shadow .2s ease}
.yr-card:hover{transform:translateY(-3px);box-shadow:8px 8px 0 rgba(36,30,49,.9)}
.yr-card.crown:hover{box-shadow:10px 10px 0 rgba(20,12,50,.55)}
@keyframes yr-fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.yr-card.yr-in{animation:yr-fade .22s ease both}
.yr-artlink{display:block;text-decoration:none;color:inherit}
.yr-art{height:140px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:2.4rem;letter-spacing:.04em;text-shadow:0 2px 0 rgba(0,0,0,.25);position:relative;overflow:hidden}
.yr-art::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.35) 50%,transparent 68%);transform:translateX(-130%);transition:transform .25s ease;pointer-events:none;z-index:1}
.yr-card:hover .yr-art::before,.yr-product-art:hover .yr-art::before{transform:translateX(130%)}
.yr-art::after{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 2px,transparent 2px 5px);pointer-events:none}
.yr-art.motif-soda::after{background-image:radial-gradient(rgba(255,255,255,.38) 3px,transparent 4.5px),radial-gradient(rgba(255,255,255,.22) 6px,transparent 7.5px),radial-gradient(rgba(255,255,255,.30) 2px,transparent 3.5px),repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 2px,transparent 2px 5px);background-size:46px 46px,74px 74px,30px 30px,auto;background-position:0 0,18px 22px,8px 30px,0 0}
.yr-art.motif-chips::after{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.17) 0 7px,transparent 7px 16px),repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 2px,transparent 2px 5px)}
.yr-art.motif-candy::after{background-image:repeating-conic-gradient(from 0deg at 50% 50%,rgba(255,255,255,.13) 0deg 14deg,transparent 14deg 30deg),repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 2px,transparent 2px 5px)}
.yr-art.big{height:320px;font-size:4.2rem;border:2px solid var(--ink);border-radius:18px;box-shadow:var(--sh-lg)}
.yr-art.big.motif-soda::after{background-size:72px 72px,116px 116px,48px 48px,auto}
.yr-ribbon{position:absolute;top:10px;right:10px;z-index:2;background:var(--gold);color:var(--ink);font-size:.72rem;font-weight:800;letter-spacing:var(--track);text-transform:uppercase;padding:3px 10px;border-radius:var(--r-pill);text-shadow:none;border:2px solid var(--ink)}
.yr-corner{position:absolute;top:17px;left:-42px;width:148px;transform:rotate(-45deg);background:var(--violet);color:#fff;font-size:.64rem;font-weight:800;letter-spacing:var(--track);text-transform:uppercase;text-align:center;padding:4px 0;z-index:2;text-shadow:none;box-shadow:0 2px 0 rgba(0,0,0,.22)}
.yr-card.crown{box-shadow:var(--sh-lg)}
.yr-card.crown .yr-art{height:190px;font-size:3.1rem}
.yr-pad{padding:14px 16px 16px;display:flex;flex-direction:column;gap:7px;flex:1}
.yr-card h3{margin:0;font-size:1.08rem;line-height:1.25}
.yr-card h3 a{color:inherit;text-decoration:none}
.yr-card h3 a:hover{text-decoration:underline}
.yr-card h3 .org{color:#655E7D;font-weight:700;font-size:.86rem}
.yr-origin-line{margin:0 0 4px;font-weight:700;color:var(--muted)}
.yr-hook{margin:0;font-size:.9rem;line-height:1.45;color:#453F5C;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:4.35em}
.yr-blurb{margin:0;font-size:1rem;line-height:1.55;color:#453F5C;max-width:640px}
.yr-badge{align-self:flex-start;font-size:.74rem;font-weight:800;letter-spacing:var(--track);text-transform:uppercase;border-radius:var(--r-pill);padding:3px 11px;color:#fff;background:var(--violet)}
.yr-badge.import-only,.yr-corner.import-only{background:#2563EB}.yr-badge.limited-run,.yr-corner.limited-run{background:var(--berry)}.yr-badge.regional-exclusive,.yr-corner.regional-exclusive{background:var(--teal)}.yr-badge.small-batch,.yr-corner.small-batch{background:#8A5A2B}.yr-badge.gone-but-trading,.yr-corner.gone-but-trading{background:#5B6472}
.yr-reason{margin:0;font-size:.83rem;color:var(--muted)}
.yr-pack{margin:0;font-size:.83rem;font-weight:700}
.yr-price{margin:0;font-weight:900;font-size:1.12rem;font-variant-numeric:tabular-nums}
.yr-price.big{font-size:1.55rem}
.yr-stock{margin:2px 0 0;font-size:var(--fs-xs);color:var(--faint)}
.yr-coll{align-self:flex-start;font-size:.76rem;font-weight:800;border:2px dashed #5B6472;color:#424A58;border-radius:var(--r-s);padding:3px 9px}
.yr-actions{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:auto;padding-top:var(--s2)}
.yr-buy{border:2px solid var(--ink);background:#EFE9DA;color:#6E6884;font-weight:800;border-radius:var(--r-pill);padding:8px 16px;font-size:var(--fs-sm)}
.yr-buy:disabled{cursor:not-allowed;opacity:.85}
.yr-stashbtn{border:2px solid var(--ink);background:var(--violet);color:#fff;font-weight:800;border-radius:var(--r-pill);padding:8px 16px;font-size:var(--fs-sm);cursor:pointer;font-family:inherit}
.yr-stashbtn:hover{background:var(--violet-d)}
.yr-stashbtn:active{transform:translateY(1px)}
.yr-mkt{border:2px solid var(--ink);background:var(--gold);color:var(--ink);font-weight:800;border-radius:var(--r-pill);padding:7px 15px;font-size:.85rem;text-decoration:none}
.yr-mkt.vintage{background:#fff}
.yr-mkt:hover{filter:brightness(.93)}
.yr-mkt:active{transform:translateY(1px)}
.yr-buynote{margin:0;font-size:.76rem;color:var(--faint)}
.yr-alsoline{margin:0;font-size:.85rem;color:var(--muted)}
.yr-auth{margin:0;font-size:.83rem;font-weight:700;color:var(--teal)}
.yr-disc{font-size:.8rem;color:var(--faint);margin:14px 0 0;max-width:760px}
.yr-tierstrip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.yr-tier{border:2px solid var(--ink);border-radius:var(--r-m);background:#fff;padding:var(--s4)}
.yr-tier h3{margin:0 0 5px;font-size:1rem}
.yr-tier p{margin:0;font-size:.87rem;color:#453F5C}
.yr-strip{border-block:2px solid var(--ink);padding:34px 0}
.yr-strip.gold{background:#FCE9BD}.yr-strip.mint{background:#DDF0EA}
.yr-strip h2{margin:0 0 6px;font-size:1.45rem;font-weight:900}
.yr-strip p{margin:0;max-width:720px}
.yr-proof{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--s4)}
.yr-proof>div{background:#fff;border:2px solid var(--ink);border-radius:var(--r-m);padding:18px;box-shadow:var(--sh)}
.yr-proof h3{margin:0 0 6px;font-size:1.02rem}
.yr-proof p{margin:0;font-size:.9rem;color:#453F5C}
.yr-news{background:var(--ink);color:#F5EFE0;border-radius:var(--r-l);padding:28px;text-align:center}
.yr-news h2{margin:0 0 6px;color:#fff}
.yr-news p{margin:0 auto 16px;max-width:520px;opacity:.88}
.yr-news form{display:flex;gap:10px;max-width:480px;margin:0 auto;flex-wrap:wrap;justify-content:center}
.yr-news input{flex:1 1 240px;border:2px solid #fff;border-radius:var(--r-pill);padding:11px 18px;font:inherit;background:#fff;color:var(--ink)}
.yr-news button{border:2px solid var(--gold);background:var(--gold);color:var(--ink);font-weight:800;border-radius:var(--r-pill);padding:11px 22px;cursor:pointer}
.yr-news small{display:block;margin-top:12px;opacity:.82}
.yr-filters{display:flex;gap:var(--s2);flex-wrap:wrap;align-items:center;margin:6px 0 18px}
.yr-flabel{font-weight:800;font-size:var(--fs-sm);color:var(--muted);text-transform:uppercase;letter-spacing:var(--track);margin-left:10px}
.yr-flabel:first-child{margin-left:0}
.yr-fbtn{border:2px solid var(--ink);background:#fff;border-radius:var(--r-pill);padding:6px 15px;min-height:44px;display:inline-flex;align-items:center;font-weight:700;cursor:pointer;font-size:var(--fs-sm);font-family:inherit}
.yr-fbtn:hover{background:#EFE7D3}
.yr-fbtn:active{transform:translateY(1px)}
.yr-fbtn.on{background:var(--ink);color:#fff}
.yr-count{color:var(--faint);font-size:.9rem;margin-left:2px}
.yr-sortsel{font:inherit;font-weight:700;color:var(--ink);background:#fff;border:2px solid var(--ink);border-radius:var(--r-pill);padding:6px 14px;min-height:44px;cursor:pointer}
.yr-sortsel:hover{background:#EFE7D3}
.yr-sharewrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:2px}
.yr-sharebtn{display:inline-flex;align-items:center;gap:8px;min-height:44px;border:2px solid var(--ink);background:#fff;color:var(--ink);font-weight:800;border-radius:var(--r-pill);padding:8px 16px;font-size:var(--fs-sm);cursor:pointer;font-family:inherit}
.yr-sharebtn svg{width:18px;height:18px;stroke:var(--ink);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.yr-sharebtn:hover{background:#EFE7D3}
.yr-sharebtn:active{transform:translateY(1px)}
.yr-share-note{font-size:var(--fs-sm);font-weight:700;color:var(--teal)}
.yr-empty{border:2px dashed #B9B0D0;border-radius:var(--r-m);background:#fff;color:var(--muted);padding:var(--s5);text-align:center;max-width:680px}
.yr-mkt,.yr-fbtn,.yr-tile,.yr-cta,.yr-util,.yr-buy,.yr-stashbtn,.yr-news button,.yr-railbtn,.yr-paypal-btn{transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease,filter .18s ease}
.yr-payrow{display:flex;gap:var(--s2);flex-wrap:wrap;align-items:center;margin:0 0 18px}
.yr-paylabel{font-size:var(--fs-sm);font-weight:800;letter-spacing:var(--track);text-transform:uppercase;color:var(--muted)}
.yr-chip{border:2px solid var(--ink);background:#fff;border-radius:var(--r-pill);padding:6px 14px;font-weight:800;font-size:var(--fs-sm);min-height:36px;display:inline-flex;align-items:center}
a.yr-chip{color:var(--ink);text-decoration:none}
a.yr-chip:hover{background:#EFE7D3}
.yr-faq{border:2px solid var(--ink);border-radius:var(--r-m);background:#fff;margin:0 0 12px;max-width:720px}
.yr-faq summary{cursor:pointer;font-weight:800;padding:10px 16px;min-height:44px;display:flex;align-items:center}
.yr-faq[open] summary{border-bottom:2px solid var(--line)}
.yr-faq p{margin:0;padding:2px 16px 14px;color:#453F5C;max-width:none}
h1.yr-page{font-size:clamp(1.9rem,5vw,2.7rem);font-weight:900;letter-spacing:-.02em;margin:26px 0 4px}
.yr-crumb{margin:22px 0 4px;font-size:var(--fs-sm);color:var(--muted)}
.yr-crumb a{font-weight:700}
.yr-crumb [aria-current]{font-weight:800;color:var(--ink)}
.yr-product{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:start;margin:14px 0 6px}
@media(max-width:820px){.yr-product{grid-template-columns:1fr}}
.yr-product-art .yr-art{width:100%}
.yr-buy-panel{position:sticky;top:92px;max-height:calc(100dvh - 104px);overflow-y:auto;display:flex;flex-direction:column;gap:9px;align-items:flex-start;padding-bottom:4px}
.yr-buy-panel h1.yr-page{margin-top:2px}
.yr-buy-panel .yr-actions{margin-top:2px}
.yr-product-main{display:flex;flex-direction:column;gap:6px;min-width:0}
.yr-product-main .yr-lede{margin-top:2px}
.yr-acc{border:2px solid var(--ink);border-radius:var(--r-m);background:#fff;margin:0 0 12px}
.yr-acc summary{cursor:pointer;font-weight:800;padding:10px 16px;min-height:44px;display:flex;align-items:center}
.yr-acc[open] summary{border-bottom:2px solid var(--line)}
.yr-acc .yr-acc-body{padding:4px 16px 14px}
.yr-acc .yr-acc-body p{margin:0 0 8px;color:#453F5C}
.yr-acc .yr-acc-body p:last-child{margin-bottom:0}
.yr-acc .yr-facts{max-width:none}
.yr-qtyrow{display:flex;align-items:center;gap:12px;margin-top:2px}
.yr-qtylabel{font-weight:800;font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:var(--track);color:var(--muted)}
.yr-qtyrow .yr-qty button{width:40px;height:40px}
.yr-mobilebar{display:none}
@media(max-width:820px){
  .yr-buy-panel{position:static}
  .yr-mobilebar{display:flex;align-items:center;gap:12px;position:sticky;bottom:0;z-index:25;background:var(--paper);border-top:2px solid var(--ink);padding:10px 2px calc(10px + env(safe-area-inset-bottom));margin-top:10px}
  main{padding-bottom:env(safe-area-inset-bottom)}
  .yr-mobilebar .nm{font-weight:800;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .yr-mobilebar .yr-stashbtn{flex:none}
}
/* Round 12.2: compact phone header. The sticky desktop header measured
223px tall at 390px (logo row + nav wrapped to two rows + utils orphaned
on a third). At phone widths the header goes NON-sticky — even compacted
it would sit on ~15% of the viewport permanently, and item pages already
carry the sticky bottom buy bar — the logo row keeps the utils beside the
logo, and the nav becomes ONE horizontally scrollable row (scrollbar
hidden) under them. Desktop (>=821px) is untouched: 72px, sticky. */
@media(max-width:820px){
  header.yr-head{position:static}
  .yr-bar{row-gap:10px}
  nav.yr-nav{order:1;flex:1 1 100%;flex-wrap:nowrap;overflow-x:auto;margin-left:0;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  nav.yr-nav::-webkit-scrollbar{display:none}
  nav.yr-nav a{flex:none;white-space:nowrap;padding-top:9px;padding-bottom:9px}
}
.yr-facts{border-collapse:collapse;width:100%;max-width:560px;margin:6px 0}
.yr-facts th,.yr-facts td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:.95rem}
.yr-facts th{width:110px;color:var(--muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--track);padding-top:10px}
.yr-facts td{overflow-wrap:anywhere}
.yr-lede{font-size:1.08rem;color:#453F5C;max-width:720px}
.yr-jump{font-size:var(--fs-sm);color:var(--muted)}
.yr-jump a{font-weight:700}
.yr-prose p{max-width:720px}
.yr-prose h2{font-size:var(--fs-lg);font-weight:900;margin:30px 0 8px}
.yr-prose h3{font-size:1.05rem;font-weight:800;margin:20px 0 4px}
.yr-prose ul{max-width:720px}
.yr-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--s4);margin:18px 0}
.yr-steps>div{background:#fff;border:2px solid var(--ink);border-radius:var(--r-m);padding:18px}
.yr-steps b{display:block;font-size:1.5rem;color:var(--violet)}
.yr-aislelinks{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
footer.yr-foot{background:var(--ink);color:#D9D3E8;margin-top:44px;padding:38px 0 30px}
.yr-footgrid{display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:24px}
footer.yr-foot .yr-paylabel{color:#BDB4D9}
footer.yr-foot .yr-payrow{margin:14px 0 0}
@media(max-width:760px){.yr-footgrid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.yr-footgrid{grid-template-columns:1fr}}
.yr-footgrid h4{margin:0 0 10px;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--track);color:var(--gold)}
.yr-footgrid a{display:block;color:#D9D3E8;text-decoration:none;margin:0 0 7px}
.yr-footgrid a:hover{color:#fff;text-decoration:underline}
.yr-foot .brandline{font-size:1.35rem;font-weight:900;color:#fff}
.yr-fine{font-size:var(--fs-xs);opacity:.78;margin-top:22px;max-width:820px}
.yr-fine.yr-copy{margin-top:6px}
.yr-footmark{width:46px;height:46px;border-radius:50%;display:block;margin:0 0 10px}
/* Overlays (backdrop / search / cart drawer): the CLOSED state is the CSS
   default — transparent, visibility:hidden, pointer-events off, and (for
   the drawer) translated fully off-canvas. The open state is keyed to
   :not([hidden]), i.e. to the same attribute the JS and the bundle router
   already toggle. A closed overlay therefore stays invisible even if the
   [hidden] seatbelt above is ever removed or a future display rule fights
   it; no JS-added class is required for it to be safely closed. */
.yr-backdrop{position:fixed;inset:0;background:rgba(20,12,50,.55);z-index:80;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s}
.yr-backdrop:not([hidden]){opacity:1;visibility:visible;pointer-events:auto}
.yr-searchbox{position:fixed;top:8vh;left:50%;transform:translateX(-50%) scale(.97);width:min(620px,92vw);max-height:82vh;overflow:auto;background:var(--paper);border:2px solid var(--ink);border-radius:var(--r-l);box-shadow:var(--sh-lg);z-index:90;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s}
.yr-searchbox:not([hidden]){opacity:1;visibility:visible;transform:translateX(-50%) scale(1);pointer-events:auto}
.yr-search-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.yr-search-head label{font-weight:900;font-size:1.15rem}
.yr-x{width:40px;height:40px;border-radius:50%;border:2px solid var(--ink);background:#fff;font-size:1.25rem;line-height:1;cursor:pointer;font-family:inherit;flex:none}
.yr-x:hover{background:#EFE7D3}
.yr-searchbox input{width:100%;border:2px solid var(--ink);border-radius:var(--r-pill);padding:12px 18px;font:inherit;background:#fff;color:var(--ink)}
.yr-search-status{color:var(--muted);font-size:var(--fs-sm);margin:10px 0 6px}
.yr-results{list-style:none;margin:0;padding:0}
.yr-results li a{display:flex;flex-direction:column;gap:1px;padding:10px 12px;border-radius:var(--r-m);text-decoration:none;color:var(--ink)}
.yr-results li a:hover,.yr-results li a:focus-visible{background:#EFE7D3}
.yr-results strong{font-size:1rem}
.yr-results span{font-size:.83rem;color:var(--muted)}
.yr-drawer{position:fixed;top:0;right:0;height:100dvh;width:min(400px,94vw);background:var(--paper);border-left:2px solid var(--ink);z-index:95;padding:20px;overflow:auto;box-shadow:-8px 0 0 rgba(20,12,50,.25);display:flex;flex-direction:column;transform:translateX(105%);visibility:hidden;transition:transform .25s ease,visibility .25s}
.yr-drawer:not([hidden]){transform:none;visibility:visible}
.yr-drawer-head{display:flex;justify-content:space-between;align-items:center}
.yr-drawer-head h2{margin:0;font-size:var(--fs-lg);font-weight:900}
.yr-stash-empty{color:var(--muted);max-width:300px}
.yr-stash-list{list-style:none;margin:14px 0;padding:0;display:flex;flex-direction:column;gap:12px}
.yr-stash-item{border:2px solid var(--ink);border-radius:var(--r-m);background:#fff;padding:10px 12px;display:grid;grid-template-columns:1fr auto;gap:3px 10px;align-items:center}
.yr-stash-name{font-weight:800;color:var(--ink);text-decoration:none}
.yr-stash-name:hover{text-decoration:underline}
.yr-stash-meta{font-size:.8rem;color:var(--muted);grid-column:1}
.yr-qty{display:inline-flex;align-items:center;gap:8px;grid-row:1/4;grid-column:2}
.yr-qty button{width:32px;height:32px;border:2px solid var(--ink);border-radius:50%;background:#fff;font-weight:900;cursor:pointer;font-family:inherit;padding:0}
.yr-qty button:hover{background:#EFE7D3}
.yr-qty-n{font-weight:800;min-width:18px;text-align:center;font-variant-numeric:tabular-nums}
.yr-remove{grid-column:1;justify-self:start;background:none;border:none;color:var(--berry);font-weight:700;cursor:pointer;padding:2px 0;font-size:.83rem;text-decoration:underline;font-family:inherit}
.yr-drawer-foot{margin-top:auto;border-top:2px solid var(--line);padding-top:14px}
.yr-stash-total{font-weight:800;margin:0 0 10px}
.yr-buy.big{width:100%;padding:12px;font-size:1rem}
/* Round 13: cart totals + PayPal checkout in the drawer foot */
.yr-cart-lines{display:flex;flex-direction:column;gap:5px;margin:0 0 12px}
.yr-cart-line{display:flex;justify-content:space-between;gap:14px;margin:0;font-size:.97rem}
.yr-cart-line span:last-child{font-variant-numeric:tabular-nums}
.yr-cart-total{font-weight:900;font-size:1.08rem;border-top:2px solid var(--line);padding-top:8px;margin-top:3px}
.yr-ship-hint{margin:0;font-size:.85rem;font-weight:700;color:var(--teal)}
.yr-paypal-btn{width:100%;border:2px solid var(--ink);background:var(--gold);color:var(--ink);font-weight:800;border-radius:var(--r-pill);padding:12px;font-size:1rem;cursor:pointer;font-family:inherit}
.yr-paypal-btn:hover{filter:brightness(.95)}
.yr-paypal-btn:active{transform:translateY(1px)}
.yr-skiplink{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:8px 14px;z-index:60}
.yr-skiplink:focus{left:8px;top:8px}
:focus-visible{outline:3px solid var(--violet);outline-offset:2px}
@media(max-width:560px){
  .yr-grid{grid-template-columns:1fr}
  .yr-art{height:120px}
  .yr-art.big{height:230px;font-size:3rem}
  .yr-hero{padding:38px 0 34px}
  nav.yr-nav a{font-size:.93rem;padding:11px 10px}
  .yr-bar{gap:10px}
  .yr-logomark{width:38px;height:38px}
}
@media print{
  body{background:#fff;color:#000}
  .yr-announce,header.yr-head,footer.yr-foot,.yr-utils,.yr-news,.yr-filters,.yr-skiplink,.yr-backdrop,.yr-searchbox,.yr-drawer,.yr-mobilebar,.yr-railbtn,.yr-sharewrap{display:none!important}
  .wrap{max-width:none;padding:0}
  .yr-prose p,.yr-prose ul{max-width:none}
  a{color:#000;text-decoration:none}
  .yr-card,.yr-tier,.yr-proof>div,.yr-steps>div,.yr-faq{box-shadow:none}
  .pg-policy .yr-prose h2{page-break-before:always}
  .pg-policy .yr-prose h2:first-of-type{page-break-before:avoid}
}
@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}

/* Round 6: stock photos, clickable card bios, contact form */
.yr-art.has-photo{background:#fff}
.yr-photo{width:100%;height:100%;object-fit:cover;display:block}
.yr-bio{display:block;margin-top:8px;color:var(--ink);font-size:var(--fs-sm);line-height:1.5;text-decoration:none}
.yr-bio:hover{text-decoration:underline}
.yr-cform{max-width:640px;margin-top:10px}
.yr-cform label{display:block;font-weight:700;margin:16px 0 6px}
.yr-cform input[type="text"],.yr-cform input[type="email"],.yr-cform select,.yr-cform textarea{width:100%;border:2px solid var(--ink);border-radius:12px;padding:11px 14px;font:inherit;background:#fff;color:var(--ink)}
.yr-cform textarea{resize:vertical}
.yr-cform button{margin-top:18px}
.yr-honey{position:absolute!important;left:-9999px!important;width:1px!important;height:1px;opacity:0}

/* Round 13: contact-page banner (?sent=1 message sent / ?order=received) */
.yr-banner{border:2px solid var(--ink);border-radius:var(--r-m);background:#DDF0EA;padding:14px 18px;font-weight:700;max-width:720px;margin:18px 0 0}
