/* A growing catalogue: one clear promise and a visible price per edition. */
.shop-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.shop-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}
.shop-filters button{font:13px/1.4 var(--font-body);padding:11px 17px;border:1px solid #cbb5e82b;border-radius:24px;background:transparent;color:#c9c1d2;cursor:pointer}
.shop-filters button[aria-pressed=true]{background:#decff0;color:#17121c;border-color:#decff0}
.shop-filters button:focus-visible{outline:2px solid #decff0;outline-offset:3px}
.shop-product[hidden]{display:none!important}
.shop-product,.shop-product-pro{padding:0;display:flex;grid-column:auto;border-radius:16px;background:#0b090e}
.shop-cover,.shop-product-pro .shop-cover{height:210px}
.shop-cover .shop-product-heading,.shop-product-pro .shop-product-heading{padding:20px}
.shop-product .shop-cover h2{font-size:32px;line-height:1.08;max-width:15ch}
.shop-cover .shop-format{font-size:10px;color:#ddd0eb}
.shop-cover .shop-object{inset:0 -10% 0 auto;width:100%;height:100%;opacity:.8}
.shop-cover .shop-object img{mask-image:radial-gradient(ellipse 72% 65% at 63% 38%,#000 20%,#0009 52%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 72% 65% at 63% 38%,#000 20%,#0009 52%,transparent 80%)}
.shop-product .shop-product-summary{font-size:13px;line-height:1.65;padding:8px 20px 0}
.shop-benefit{font-size:14px;line-height:1.45;margin-bottom:8px}
.shop-deliverable,.shop-product-pro .shop-deliverable{font-size:11px;line-height:1.5;padding:0 20px;margin:12px 0 0;color:#bdb1c9}
.shop-product-bottom,.shop-product-pro .shop-product-bottom{padding:18px 20px 20px;max-width:none}
.shop-product .shop-start{font-size:13px;padding:10px 16px;min-height:42px}
.shop-product .shop-availability{font-size:10px;margin-top:9px}
.shop-price{font:400 26px/1.2 var(--font-heading);color:#f0e6f8;margin:0 0 12px}
.shop-price small{font:11px/1.4 var(--font-body);color:#bcb1c7;margin-left:5px}
.shop-product-pro .pro-signature{font-size:85px;top:28px;right:20px;opacity:.2}
.shop-catalog-note{font:12px/1.6 var(--font-body);color:#bcb1c7;margin:-40px 0 50px}
@media(max-width:1050px){.shop-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.shop-catalog{grid-template-columns:1fr;gap:18px}.shop-cover,.shop-product-pro .shop-cover{height:200px}.shop-product .shop-product-summary{font-size:14px}.shop-product .shop-availability{font-size:11px}.shop-cover .shop-format{font-size:11px}}
.shop-product .shop-price{font:400 26px/1.2 var(--font-heading);margin:0 0 12px;color:#f0e6f8}
.shop-product .shop-price small{font:11px/1.4 var(--font-body)}
/* A clear, branded balance; the breakdown stays one click away. */
.shop-wallet{margin:28px 0!important;padding:0!important;border:1px solid #cbb5e823!important;border-radius:16px;background:linear-gradient(110deg,#21182780,#09090d 75%);overflow:hidden}
.shop-wallet[hidden]{display:none!important}
.shop-wallet summary{display:flex;align-items:center;gap:18px;list-style:none;padding:20px 24px;cursor:pointer}
.shop-wallet summary::-webkit-details-marker{display:none}
.shop-wallet summary::marker{content:''}
.wallet-orb{flex:none;width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 32% 26%,#dac8ed9c,transparent 19%),radial-gradient(circle at 66% 76%,#9f70ca60,transparent 45%),#050407;box-shadow:inset -4px -5px 12px #000,inset 1px 1px 3px #b497ca45,0 0 24px #9f70ca10}
.wallet-heading{display:grid;gap:5px}.wallet-brand{font:11px/1.4 var(--font-body);color:#cbb8df;letter-spacing:.09em;text-transform:uppercase}.wallet-balance{font:400 26px/1.2 var(--font-heading);color:#f0e9f5}
.wallet-toggle{margin-left:auto;font:12px/1.4 var(--font-body);color:#c8bdd2}.wallet-toggle span{margin-left:8px}.shop-wallet[open] .wallet-toggle span{display:inline-block;transform:rotate(45deg)}
.wallet-content{padding:0 24px 24px;font:13px/1.7 var(--font-body);color:#c8bdd2}.wallet-content p{margin:0 0 10px}.wallet-content h3{font:400 22px/1.2 var(--font-heading);margin:24px 0 10px}.wallet-content ul{padding-left:18px}.wallet-content .shop-start{display:inline-flex;margin-top:8px}.shop-wallet summary:focus-visible{outline:2px solid #decff0;outline-offset:-4px}
@media(max-width:560px){.shop-wallet summary{padding:18px;gap:12px;flex-wrap:wrap}.wallet-balance{font-size:24px}.wallet-toggle{margin-left:56px}.wallet-content{padding:0 18px 20px}}
