/* ByMuseum cards v2: the one stylesheet for every painting card on the site
   (home popular, catalogs, Top 50 page, home Top 50 slider, audio stories).
   Markup comes from bm_card2_*() in mu-plugins/bymuseum-card-v2.php. */
.bmc{--ink:#1a1714;--muted:#5c564c;--faint:#8a8378;--gold:#a97c28;--goldl:#c9a96e;--cream:#f5f2ec;--card:#fff;
  position:relative;display:flex;flex-direction:column;box-sizing:border-box;background:var(--card);border:0;border-radius:24px;padding:12px 12px 18px;gap:0;
  box-shadow:0 1px 3px rgba(26,23,20,.06),0 18px 40px -18px rgba(26,23,20,.28);transition:transform .25s ease,box-shadow .25s ease;cursor:pointer;color:var(--ink);text-decoration:none;font-family:"Instrument Sans",Helvetica,Arial,sans-serif;height:auto}
.bmc *,.bmc *::before,.bmc *::after{box-sizing:border-box}
@media (hover:hover){.bmc:hover{transform:translateY(-4px);box-shadow:0 2px 6px rgba(26,23,20,.08),0 26px 50px -20px rgba(26,23,20,.34)}}

/* image area: only the blurred background is rounded; corner notches come from the JS mask */
.bmc-media{position:relative}
.bmc-frame{position:relative;display:block;aspect-ratio:4/5;border-radius:18px;overflow:hidden;isolation:isolate;background:#17130e}
.bmc-blur{position:absolute;inset:-12%;background-size:cover;background-position:center;filter:blur(18px) brightness(.72) saturate(1.1);transform:scale(1.1)}
.bmc-art{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:15% 12%}
.bmc-art img{max-width:100%;max-height:100%;width:auto;height:auto;display:block;border-radius:0;object-fit:contain;pointer-events:none;box-shadow:0 14px 28px -10px rgba(0,0,0,.6),0 3px 8px rgba(0,0,0,.25)}

/* corner buttons */
.bmc .bmc-btn{position:absolute;z-index:4;width:36px;height:36px;min-width:0;min-height:0;margin:0;border-radius:50%;border:0;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;background:var(--ink);color:#fff;
  box-shadow:0 4px 12px -4px rgba(0,0,0,.25);transition:transform .2s ease,background .2s ease,color .2s ease;font-size:0;letter-spacing:0;line-height:1;text-decoration:none}
.bmc .bmc-btn:hover{transform:scale(1.07);background:var(--gold);color:#fff}
.bmc .bmc-btn svg{width:16px;height:16px;fill:currentColor;stroke:none;display:block}
.bmc .tl{top:0;left:0}.bmc .tr{top:0;right:0}.bmc .bl{bottom:0;left:0}.bmc .br{bottom:0;right:0}
.bmc .bmc-btn.bmc-story{color:var(--goldl)}.bmc .bmc-btn.bmc-story:hover{color:#fff}
.bmc .bmc-btn.is-loading{opacity:.8;pointer-events:none}
.bmc .bmc-rank{cursor:default;font:700 16px/1 "Playfair Display",Georgia,serif;color:#fff;padding-bottom:3px;font-variant-numeric:lining-nums;pointer-events:none}

/* heart: the WPC wishlist button restyled as a corner button */
.bmc .bmc-heart{position:absolute;z-index:4;opacity:1;visibility:visible;transform:none}
.bmc .bmc-heart .shop-action{display:flex}
.bmc .bmc-heart .shop-action .woosw-btn{width:36px;height:36px;line-height:36px;border-radius:50%;background:var(--ink);color:#fff;opacity:1;transform:none;box-shadow:0 4px 12px -4px rgba(0,0,0,.25);transition:transform .2s,background .2s}
.bmc .bmc-heart .shop-action .woosw-btn:hover{transform:scale(1.07);background:var(--gold)}
.bmc .bmc-heart .shop-action .woosw-btn::before{color:#fff;font-size:16px}
.bmc .bmc-heart .shop-action .woosw-btn.woosw-added::before{color:#e0245e}

/* story menu (Watch + Read / Read & listen) */
.bmc-menu{position:absolute;left:0;bottom:46px;z-index:6;display:flex;flex-direction:column;gap:4px;padding:6px;background:#fff;border-radius:16px;box-shadow:0 12px 30px -8px rgba(26,23,20,.35);opacity:0;transform:translateY(6px);pointer-events:none;transition:.18s}
.bmc-btn.br~.bmc-menu{left:auto;right:0}
.bmc-menu.open{opacity:1;transform:none;pointer-events:auto}
.bmc .bmc-menu-item{display:flex;align-items:center;gap:10px;border:0;background:none;padding:10px 14px 10px 10px;margin:0;border-radius:11px;cursor:pointer;font:500 11px/1 Jost,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);white-space:nowrap;text-decoration:none;box-shadow:none;min-height:0}
.bmc .bmc-menu-item:hover{background:var(--cream);color:var(--ink)}
.bmc .bmc-menu-item svg{width:18px;height:18px;fill:currentColor;color:var(--gold);flex:none}
.bmc .bmc-menu-item.is-loading{opacity:.6}

/* tooltips */
.bmc .tip{position:absolute;white-space:nowrap;font:500 10.5px/1 Jost,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:#fff;padding:7px 10px;border-radius:999px;opacity:0;transform:translateY(4px);transition:.18s;pointer-events:none}
.bmc .bmc-btn:hover>.tip{opacity:1;transform:none}
.bmc .tl .tip{left:44px;top:5px}.bmc .bl .tip{left:44px;bottom:5px}.bmc .br .tip{right:44px;bottom:5px}.bmc .tr .tip{right:44px;top:5px}
@media (hover:none){.bmc .tip{display:none}}

/* text */
.bmc-body{padding:18px 8px 0;flex:1;display:flex;flex-direction:column}
.bmc .bmc-move{font:500 10.5px/1.3 Jost,system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 8px}
.bmc .bmc-artist{font-size:14px;line-height:1.3;color:var(--muted);margin:0 0 4px}
.bmc .bmc-title{font:400 25px/1.15 "Playfair Display",Georgia,serif;margin:0 0 14px;letter-spacing:-.3px;color:var(--ink);text-transform:none}
.bmc .bmc-title a{color:inherit;text-decoration:none}
.bmc .bmc-title a:hover{color:var(--gold)}
.bmc-foot{margin-top:auto;display:flex;align-items:center;gap:10px;min-height:24px}
.bmc .bmc-price{display:flex;align-items:baseline;gap:8px;font-size:14px;color:var(--muted);margin:0;padding:0}
.bmc .bmc-price b,.bmc .bmc-price ins{font-size:19px;color:var(--ink);font-weight:600;text-decoration:none;background:none}
.bmc .bmc-price b .woocommerce-Price-amount{font-size:19px}
.bmc .bmc-price s,.bmc .bmc-price del{color:var(--faint);font-size:13px;font-weight:400}
.bmc .bmc-price .woocs_price_code{display:flex;align-items:baseline;gap:8px}
.bmc .bmc-price ins{order:1}.bmc .bmc-price del{order:2}
.bmc .bmc-price .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.bmc .bmc-cta{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:8px;height:48px;border-radius:999px;border:0;background:#231f20;color:#fff;text-decoration:none;font:500 11px/1 "Instrument Sans",sans-serif;letter-spacing:2px;text-transform:uppercase;transition:background .2s;white-space:nowrap;position:relative;z-index:2}
.bmc .bmc-cta:hover{background:var(--gold);color:#fff}
.bmc .bmc-cta span{transition:transform .2s}.bmc:hover .bmc-cta span{transform:translateX(3px)}

/* dark (catalog pages, Top 50 page) */
.bmc.dark{--card:#211d1a;background:#211d1a;box-shadow:0 18px 40px -18px rgba(0,0,0,.55)}
.bmc.dark .bmc-btn,.bmc.dark .bmc-heart .shop-action .woosw-btn{background:var(--cream);color:var(--ink)}
.bmc.dark .bmc-heart .shop-action .woosw-btn::before{color:var(--ink)}
.bmc.dark .bmc-btn.bmc-story{color:var(--gold)}
.bmc.dark .bmc-btn:hover,.bmc.dark .bmc-heart .shop-action .woosw-btn:hover{background:var(--gold);color:#fff}
.bmc.dark .bmc-rank{background:var(--gold);color:var(--ink)}
.bmc.dark .bmc-move{color:var(--goldl)}
.bmc.dark .bmc-artist{color:#a89f8f}
.bmc.dark .bmc-title{color:var(--cream)}
.bmc.dark .bmc-price{color:#a89f8f}.bmc.dark .bmc-price b,.bmc.dark .bmc-price ins{color:var(--cream)}.bmc.dark .bmc-price s,.bmc.dark .bmc-price del{color:#756d61}
.bmc.dark .bmc-cta{background:var(--cream);color:var(--ink)}
.bmc.dark .bmc-cta:hover{background:var(--gold);color:#fff}

/* small ranked (home Top 50 slider) */
.bmc.ranked .bmc-title{font-size:21px;margin-bottom:4px}
.bmc.ranked .bmc-body{padding-bottom:4px}
.bmc.ranked .bmc-artist{text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:var(--ink)}

/* audio story card */
.bmc.audio .bmc-frame{aspect-ratio:4/3}
.bmc.audio .bmc-art{padding:9% 12%}
.bmc .bmc-kicker{font:500 10.5px/1.5 Jost,system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 8px}
.bmc .bmc-excerpt{font-size:15px;line-height:1.55;color:var(--muted);margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bmc .bmc-btn .ico-play,.bmc .bmc-btn .ico-pause{display:flex;align-items:center;justify-content:center;line-height:0}
.bmc .bmc-btn .ico-pause{display:none}
.bmc.is-playing .bmc-btn.listen{background:var(--gold);color:#fff}
.bmc.is-playing .bmc-btn .ico-play{display:none}.bmc.is-playing .bmc-btn .ico-pause{display:flex}
.bmc.is-playing .bmc-btn.listen>.tip{opacity:1;transform:none;font-variant-numeric:tabular-nums}
.bmc .bmc-cta .dur{opacity:.6;font-weight:400}
.bmc .bmsc-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.16);opacity:0;transition:opacity .2s}
.bmc .bmsc-progress span{display:block;height:100%;width:0;background:#d4b06a}
.bmc.is-playing .bmsc-progress,.bmc.is-done .bmsc-progress{opacity:1}

/* layout containers (width comes from each row) */
.bmcat .card.bmc{padding:12px 12px 18px;border-radius:24px;gap:0;background:var(--card)}
.bmcat .rankitem .card.bmc{flex:1}
.bmhc-card.bmc{padding:12px 12px 18px;border-radius:24px;gap:0}
.bmsc .bmsc-card.bmc{padding:12px 12px 18px;border-radius:24px}
.bmt50-card.bmc{padding:12px 12px 14px;border-radius:24px;gap:0;height:100%}
/* beat the older !important button rules still printed by the Top 50 widget and the audio carousel */
.bmt50-card.bmc .bmt50-watch.bmc-btn{top:auto!important;bottom:0!important;left:auto!important;right:0!important;width:36px!important;height:36px!important;padding:0!important;font-size:0!important;gap:0!important;border-radius:50%!important}
.bmsc .bmc .bmsc-listen.bmc-btn{width:36px!important;height:36px!important;padding:0!important;border-radius:50%!important;background:var(--ink)!important;color:var(--goldl)!important;font-size:0!important;letter-spacing:0!important;gap:0!important;box-shadow:0 4px 12px -4px rgba(0,0,0,.25)!important;display:flex!important}
.bmsc .bmc .bmsc-listen.bmc-btn:hover,.bmsc .bmc.is-playing .bmsc-listen.bmc-btn{background:var(--gold)!important;color:#fff!important}
.bmsc .bmc .bmsc-listen .tip{font-size:10.5px!important;letter-spacing:.12em}
.bmsc .bmc .bmc-cta.bmsc-read{border:0;height:48px;color:#fff!important;background:#231f20;font:500 11px/1 "Instrument Sans",sans-serif;letter-spacing:2px}
.bmsc .bmc .bmc-cta.bmsc-read:hover{background:var(--gold)}
.bmc-lookbook{width:100%;max-width:320px;margin:0 auto;padding:16px 0 56px}
.bmc-lookbook .bmc{width:100%}
.bmc-lookbook .bmc:hover{transform:none}
@media (max-width:767px){.bmc-lookbook{max-width:260px}.bmc-lookbook .bmc .bmc-title{font-size:21px}}
.bmc .bmc-heart.group-action{display:block!important}
/* after the video closes the modal gives focus back to the button: keep the theme's button:focus look off it */
.bmc .bmc-btn:focus,.bmc .bmc-btn:active{background:var(--ink)!important;color:#fff!important;padding:0!important;font-size:0!important;width:36px!important;height:36px!important;outline:none;box-shadow:0 4px 12px -4px rgba(0,0,0,.25)!important;transform:none}
.bmc .bmc-btn.bmc-story:focus{color:var(--goldl)!important}
.bmc.dark .bmc-btn:focus,.bmc.dark .bmc-btn:active{background:var(--cream)!important;color:var(--ink)!important}
.bmc.dark .bmc-btn.bmc-story:focus{color:var(--gold)!important}
.bmc .bmc-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.bmc .bmc-btn:focus:not(:hover)>.tip{opacity:0}
/* wishlist (Private Collection) */
.bmpc-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:32px 28px;margin:8px 0 40px}
.bmpc-cards .bmc{width:auto}
.bmc .bmc-loc{font-size:12.5px;line-height:1.4;color:var(--faint);margin:-8px 0 14px}
.bmc .bmpc-note{margin:14px 0 0;position:relative}
.bmc .bmpc-note textarea{width:100%;border:0;border-bottom:1px solid #e7e1d6;background:transparent;font:italic 14px/1.5 "Playfair Display",Georgia,serif;color:var(--muted);resize:none;padding:6px 0;min-height:0;outline:0;overflow:hidden;box-shadow:none}
.bmc .bmpc-note textarea:focus{border-bottom-color:var(--gold)}
.bmc .bmpc-saved{position:absolute;right:0;top:-12px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.bmc .bmpc-note-ro{font:italic 14px/1.5 "Playfair Display",Georgia,serif;color:var(--muted);margin:14px 0 0}
.bmc .bmc-btn.bmc-remove{color:#e0245e}
.bmc .bmc-btn.bmc-remove:hover{background:#e0245e;color:#fff}
@media (max-width:640px){.bmpc-cards{grid-template-columns:1fr;gap:24px}.bmpc-cards .bmc{max-width:360px;margin:0 auto;width:100%}}
.bmpc-cards .bmc{text-align:left}
/* product page: related products */
.bmc-related-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:8px}
.bmc-related-row .bmc{width:auto}
@media (max-width:1100px){.bmc-related-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.bmc-related-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;margin:8px -16px 0;padding:4px 16px 24px;scrollbar-width:none}.bmc-related-row::-webkit-scrollbar{display:none}.bmc-related-row .bmc{flex:0 0 82%;scroll-snap-align:start}}
/* iPhone smoothness: keep the masked frame and the blur on their own GPU layers,
   so Safari composites them while the sliders move instead of repainting each frame */
.bmc-frame{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}
.bmc-blur{-webkit-transform:scale(1.1) translateZ(0);transform:scale(1.1) translateZ(0);will-change:transform}
.bmc{-webkit-tap-highlight-color:transparent}
@media (hover:none){.bmc,.bmc .bmc-btn,.bmc .bmc-heart .shop-action .woosw-btn{transition:none}}
.bmc-lookbook .bmc.dark{box-shadow:0 14px 28px -16px rgba(0,0,0,.5)}
/* horizontal rows clip whatever is outside them: give the card shadow room (negative margin keeps the spacing) */
.bmhc-home-filmstrip,.bmcat .filmstrip,.bmsc .bmsc-track{padding-bottom:56px!important;margin-bottom:-32px!important}
.bmc .bmc-price .bmhc-from{font-weight:400;color:inherit;font-size:14px}
.bmc.dark .bmc-price .bmhc-from{color:#a89f8f}
/* shop / category grids: the theme's ul.products keeps the columns, the li just holds the card */
ul.products li.bmc-li{list-style:none;display:flex;padding:0!important;margin-bottom:28px!important;background:none!important;border:0!important;box-shadow:none!important}
ul.products li.bmc-li>.bmc{width:100%}
ul.products li.bmc-li .bmc .bmc-title{font-size:22px}
ul.products li.bmc-li .bmc-art img{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;margin:0!important}
ul.products li.bmc-li .bmc .bmc-title{line-height:1.15!important;margin:0 0 14px!important;padding:0!important}
