.p-cart{padding-bottom:clamp(60px,8vw,110px)}.p-cart .page-head{padding-top:clamp(40px,6vw,78px);padding-bottom:clamp(24px,3vw,38px)}.p-cart .page-head .eyebrow{margin-bottom:22px;display:block}.p-cart .page-head h1{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:300;line-height:1.04}.p-cart .page-head .lede{font-family:var(--serif);color:var(--ink-soft);max-width:54ch;margin:20px 0 0;font-size:clamp(1.15rem,1.8vw,1.42rem);line-height:1.55}.p-cart .cart-grid{grid-template-columns:1.35fr .65fr;align-items:start;gap:clamp(38px,5vw,80px);display:grid}.p-cart .lines{border-top:1px solid #0a162824;margin:0;padding:0;list-style:none}.p-cart .line{border-bottom:1px solid #0a16281f;grid-template-columns:76px 1fr auto;align-items:center;gap:clamp(16px,2vw,28px);padding:clamp(20px,2.4vw,28px) 0;display:grid}.p-cart .line-plate{aspect-ratio:.86;border:1px solid var(--gold);background-color:#0c1a2e;background-image:radial-gradient(120% 90% at 30% 22%,#283a56e6,#070f1c 72%)}.p-cart .line-body h3{font-family:var(--serif);margin:0;font-size:clamp(1.25rem,2vw,1.5rem);font-weight:400;line-height:1.2}.p-cart .line-body h3 a:hover{color:var(--gold-deep)}.p-cart .line-body .meta{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);margin:8px 0 0;font-size:.64rem;font-weight:600}.p-cart .line-body .remove{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0a162833;margin-top:12px;padding:0 0 3px;font-size:.62rem;font-weight:600;transition:color .3s,border-color .3s}.p-cart .line-body .remove:hover{color:var(--ink);border-bottom-color:var(--gold)}.p-cart .line-price{font-family:var(--serif);color:var(--ink);white-space:nowrap;font-size:1.5rem}.p-cart .line-price .cur{color:var(--gold-deep)}.p-cart .summary{background:color-mix(in srgb, var(--bone) 60%, #fff);border:1px solid #0a162829;padding:clamp(24px,3vw,34px);position:sticky;top:104px}.p-cart .summary h2{font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-mute);margin:0 0 22px;font-size:.66rem;font-weight:600}.p-cart .summary-row{font-family:var(--serif);color:var(--ink-soft);justify-content:space-between;align-items:baseline;gap:16px;padding:9px 0;font-size:1.06rem;display:flex}.p-cart .summary-row.total{color:var(--ink);border-top:1px solid #0a162829;margin-top:12px;padding-top:18px;font-size:1.6rem}.p-cart .summary-row.total .cur{color:var(--gold-deep)}.p-cart .summary .fine{font-family:var(--serif);color:var(--ink-mute);margin:18px 0 0;font-size:.95rem;font-style:italic;line-height:1.5}.p-cart .act-btn{text-align:center;width:100%;font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--bone);background:var(--ink);border:1px solid var(--ink);cursor:pointer;margin-top:24px;padding:17px 24px;font-size:.72rem;font-weight:600;transition:background .3s,color .3s,border-color .3s;display:block}.p-cart .act-btn:hover:not(:disabled){color:var(--ink);border-color:var(--gold);background:0 0}.p-cart .act-btn:disabled{opacity:.55;cursor:default}.p-cart .back-link{margin-top:22px;display:inline-block}.p-cart .field{margin-top:26px}.p-cart .field label{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:10px;font-size:.64rem;font-weight:600;display:block}.p-cart .field input{width:100%;font-family:var(--serif);color:var(--ink);background:0 0;border:0;border-bottom:1px solid #0a162847;padding:10px 2px;font-size:1.12rem;transition:border-color .3s}.p-cart .field input:focus{border-bottom-color:var(--gold);outline:none}.p-cart .field .hint{font-family:var(--serif);color:var(--ink-mute);margin:10px 0 0;font-size:.95rem;font-style:italic}.p-cart .field .error-text{color:#8c2f21;font-style:normal}.p-cart .notice{border-left:2px solid var(--gold);font-family:var(--serif);color:var(--ink-soft);background:color-mix(in srgb, var(--gold) 8%, transparent);margin-top:22px;padding:14px 16px;font-size:1rem;line-height:1.5}.p-cart .notice.error{background:#8c2f210f;border-left-color:#8c2f21}.p-cart .notice.warn{background:#b8791f17;border-left-color:#b8791f}.p-cart .notice code{background:#0a162812;padding:1px 5px;font-family:Courier New,monospace;font-size:.86em}.p-cart .receipt-status{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);align-items:center;gap:10px;font-size:.64rem;font-weight:600;display:inline-flex}.p-cart .receipt-status .dot{background:var(--gold);border-radius:50%;width:7px;height:7px}.p-cart .receipt-status.is-paid .dot{background:#2f6b46}.p-cart .receipt-status.is-pending .dot{animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.p-cart .dl-btn{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--bone);background:var(--ink);border:1px solid var(--ink);cursor:pointer;white-space:nowrap;padding:12px 22px;font-size:.64rem;font-weight:600;transition:background .3s,color .3s,border-color .3s;display:inline-block}.p-cart .dl-btn:hover{color:var(--ink);border-color:var(--gold);background:0 0}.p-cart .mono{letter-spacing:.1em;color:var(--ink-mute);font-family:Courier New,monospace;font-size:.8rem}.p-cart .link-btn{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0a162833;padding:0 0 3px;font-size:.62rem;font-weight:600;transition:color .3s,border-color .3s}.p-cart .link-btn:hover:not(:disabled){color:var(--ink);border-bottom-color:var(--gold)}.p-cart .link-btn:disabled{opacity:.5;cursor:default}.p-cart .empty{text-align:center;border-top:1px solid #0a162824;padding:clamp(50px,7vw,90px) 0}.p-cart .empty p{max-width:44ch;font-family:var(--serif);color:var(--ink-mute);margin:0 auto;font-size:clamp(1.2rem,2vw,1.45rem);font-style:italic;line-height:1.5}.p-cart .empty .actions{flex-wrap:wrap;justify-content:center;gap:26px;margin-top:32px;display:flex}@media (max-width:900px){.p-cart .cart-grid{grid-template-columns:1fr;gap:36px}.p-cart .summary{position:static}}@media (max-width:560px){.p-cart .line{grid-template-columns:56px 1fr;row-gap:12px}.p-cart .line-price{text-align:left;grid-column:2}}
