.product-card{border-bottom:1px solid color-mix(in srgb, var(--color-white) 12%, transparent);grid-template-columns:8em minmax(0,1fr) auto;align-items:center;gap:1.5em;padding:2em 0;display:grid}.product-card__cover{aspect-ratio:1;display:block;overflow:hidden}.product-card__cover img{object-fit:cover;width:100%;height:100%}.product-card__info{min-width:0}.product-card__title{text-transform:uppercase;overflow-wrap:anywhere;margin-bottom:.25em;font-size:3em;line-height:1}.product-card__license,.product-card__formats{font-size:.8em;line-height:1.5}.product-card__formats{color:var(--color-accent-bright);letter-spacing:.08em;margin-top:.5em}.product-card__actions{flex-direction:column;align-items:flex-end;gap:.75em;display:flex}.product-card__price{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.25em}.product-card__remove{min-height:2.75em;color:color-mix(in srgb, var(--color-white) 65%, transparent);text-underline-offset:.25em;font-size:.875em;text-decoration:underline;transition:color .2s}.product-card__title a{transition:color .2s}@media (hover:hover) and (pointer:fine){.product-card__remove:hover,.product-card__title a:hover{color:var(--color-accent-bright)}}@media screen and (width<=767px){.product-card{grid-template-columns:6em minmax(0,1fr);align-items:start;gap:1em 1.25em;padding:1.5em 0}.product-card__cover{grid-row:span 2}.product-card__actions{flex-flow:wrap;grid-column:2;justify-content:space-between;align-items:center;gap:.5em 1em}}@media screen and (width<=479px){.product-card{grid-template-columns:5em minmax(0,1fr);column-gap:1em}}.checkout{border:1px solid color-mix(in srgb, var(--color-white) 20%, transparent);border-top-color:var(--color-accent-bright);background:var(--color-black);width:min(36em,100% - 6em);max-height:calc(100svh - 6em);color:var(--color-white);overscroll-behavior:contain;margin:auto;padding:0}.checkout::backdrop{opacity:var(--checkout-overlay-opacity,1);background:#000c}html:has(.checkout[open]),html:has(.checkout[open]) body{overscroll-behavior:none;overflow:hidden}.checkout [hidden]{display:none}.checkout__panel{padding:3em}.checkout__label{color:var(--color-accent-bright);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:.75em;margin-bottom:2em;font-size:.8em;display:flex}.checkout__spinner{border:1px solid color-mix(in srgb, var(--color-white) 20%, transparent);border-top-color:var(--color-accent-bright);border-radius:50%;flex-shrink:0;width:1.5em;height:1.5em;display:none}.checkout[open][aria-busy=true] .checkout__spinner{animation:.8s linear infinite checkout-spin;display:inline-block}@keyframes checkout-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.checkout[open][aria-busy=true] .checkout__spinner{animation:none}}.checkout__title{text-transform:uppercase;outline:none;font-size:4em;line-height:1}.checkout__message{color:color-mix(in srgb, var(--color-white) 65%, transparent);margin-top:1.5em;line-height:1.5}.checkout__actions{flex-wrap:wrap;align-items:center;gap:1.5em;margin-top:2em;display:flex}.checkout__retry{background:var(--color-accent-bright);min-height:3em;color:var(--color-black);text-transform:uppercase;letter-spacing:.08em;border-radius:.25em;padding:1em 1.5em}.checkout__retry:hover{background:var(--color-white)}.checkout__back{text-underline-offset:.25em;text-decoration:underline}.checkout button:focus-visible{outline:1px solid var(--color-accent-bright);outline-offset:.25em}@media (width<=991px){.checkout{width:min(36em,100% - 2.5em)}}@media (width<=767px){.checkout__panel{padding:2em}}@media (width<=479px){.checkout__panel{padding:1.5em}.checkout__title{font-size:3em}.checkout__retry{width:100%}}.cart{background-color:var(--color-black);min-height:100svh;color:var(--color-white);padding:8em 3em}.cart [hidden]{display:none}.cart__back{text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.625em;margin-bottom:5em;font-size:.8em;line-height:1;display:inline-flex}.cart__back svg{width:1.4em;height:1.4em;transition:transform .2s}.cart__back:hover svg{transform:translate(-.2em)}.cart__heading{flex-wrap:wrap;align-items:baseline;gap:1.5em;margin-bottom:3em;display:flex}.cart__title{text-transform:uppercase;font-size:clamp(7em,10vw,11em);line-height:.8}.cart__count{color:var(--color-accent-bright);text-transform:uppercase;letter-spacing:.08em;font-size:.8em;line-height:1}.cart__layout{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:5em;display:grid}.cart__items{border-top:1px solid color-mix(in srgb, var(--color-white) 20%, transparent);min-width:0;margin:0;padding:0;list-style:none}.cart__summary{border-top:1px solid var(--color-accent-bright);min-width:0;padding-top:2em;position:sticky;top:3em}.cart__summary-title{text-transform:uppercase;font-size:3em;line-height:1}.cart__totals{margin:2em 0}.cart__totals>div{border-bottom:1px solid color-mix(in srgb, var(--color-white) 12%, transparent);justify-content:space-between;align-items:baseline;gap:1em;padding:1.25em 0;display:flex}.cart__totals dd{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}.cart__subtotal{font-size:.875em}.cart__subtotal dt{color:color-mix(in srgb, var(--color-white) 65%, transparent)}.cart__total{font-size:1.25em}.cart__cta{background-color:var(--color-accent-bright);width:100%;min-height:3em;color:var(--color-black);text-align:center;text-transform:uppercase;letter-spacing:.08em;border-radius:.25em;justify-content:center;align-items:center;padding:1em;line-height:1.2;transition:background-color .2s;display:flex}.cart__cta[aria-disabled=true]{cursor:default}.cart__cta:is(a,button):hover{background-color:var(--color-white)}.cart :is(a,button):focus-visible{outline:1px solid var(--color-accent-bright);outline-offset:.25em}.cart__empty{border-top:1px solid color-mix(in srgb, var(--color-white) 20%, transparent);padding:3em 0}.cart__empty-title{text-transform:uppercase;font-size:3em;line-height:1}.cart__empty-description{margin-top:1.5em;line-height:1.5}.cart__empty .cart__cta{width:fit-content;margin-top:2em}.cart__status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media screen and (width<=991px){.cart{padding-left:1.25em;padding-right:1.25em}.cart__layout{grid-template-columns:minmax(0,1fr);gap:3em}.cart__summary{position:static}.cart__title{font-size:clamp(7em,20vw,11em)}}@media screen and (width<=479px){.cart{padding-top:5em;padding-bottom:calc(8em + env(safe-area-inset-bottom))}.cart__back{margin-bottom:4em}.cart__title{font-size:clamp(6em,24vw,9em)}.cart__empty .cart__cta{width:100%}}
