/* MGP cart — on-brand styled cart page. v1 */
.pg-cart .wrap{max-width:860px}
.cart-empty{text-align:center;padding:40px 0 60px}
.cart-empty p{font-family:var(--body);font-size:16px;opacity:.8;margin-bottom:22px}
.cart-empty .btn{display:inline-block;text-decoration:none;font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.6px;
  background:var(--orange);color:#04140a;padding:13px 26px;border-radius:14px}

/* Back to the shop — the same round orange disc used on the shop and product pages.
   Defined here because the cart page does not load shop.css; values kept identical. */
.cart-back{display:flex;align-items:center;gap:13px;margin:22px 0 0}
.cart-back .catback{appearance:none;-webkit-appearance:none;background:rgba(243,146,55,.14);
  border:1px solid rgba(243,146,55,.45);outline:none;cursor:pointer;text-decoration:none;
  width:40px;height:40px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  line-height:1;color:var(--orange);border-radius:50%;padding:0;transition:background .2s ease,border-color .2s ease}
.cart-back .catback svg{flex:none}
.cart-back .catback:hover{background:var(--orange);border-color:var(--orange);color:#04140a}
.cart-back-txt{font-family:var(--data);font-weight:700;text-transform:uppercase;letter-spacing:1px;
  font-size:15px;color:var(--leaf);text-decoration:none}
.cart-back-txt:hover{color:var(--orange)}

/* 28px above, not 6 — the first product card was sitting right under the CART title. */
.cart-lines{display:flex;flex-direction:column;gap:12px;margin:28px 0 26px}
/* photo + name are links back to the product */
.cline-img{display:block;text-decoration:none}
.cline-main .nm a{color:inherit;text-decoration:none}
.cline-main .nm a:hover{color:var(--orange)}
.cline{display:grid;grid-template-columns:84px 1fr auto;gap:16px;align-items:center;
  background:rgba(0,28,16,.5);border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.cline-img{width:84px;height:84px;border-radius:10px;background:#fff;overflow:hidden;flex:0 0 auto}
.cline-img img{width:100%;height:100%;object-fit:contain;padding:6px;box-sizing:border-box}
.cline-img.noimg{background:var(--forest-2)}
.cline-main .nm{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:17px;color:var(--cream);line-height:1.1}
.cline-main .var{font-family:var(--body);font-size:13px;opacity:.75;margin-top:3px}
.cline-main .var b{color:var(--leaf);font-weight:600;opacity:1}
.cline-main .unit{font-family:var(--data);font-size:12.5px;opacity:.7;margin-top:6px}
.cline-main .warn{color:var(--orange);font-size:12.5px;margin-top:4px;font-family:var(--body)}
.cline-right{display:flex;flex-direction:column;align-items:flex-end;gap:9px}
.cline-sub{font-family:var(--data);font-weight:700;font-size:17px;color:var(--orange)}
.cline-qty{display:flex;align-items:center;background:rgba(255,255,255,.08);border-radius:11px;overflow:hidden}
.cline-qty form{display:flex;margin:0}
.cline-qty button{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:var(--cream);font-size:16px;width:32px;height:34px;cursor:pointer;transition:background .2s ease}
.cline-qty button:hover{background:rgba(40,152,81,.3)}
.cline-qty .n{min-width:30px;text-align:center;font-family:var(--data);font-weight:700;font-size:15px;color:var(--cream);line-height:34px}
.cline-remove{appearance:none;-webkit-appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:7px;
  font-family:var(--data);font-weight:700;text-transform:uppercase;letter-spacing:.5px;font-size:13px;color:var(--cream);opacity:.9;
  background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:999px;padding:9px 15px;transition:background .2s ease,color .2s ease,border-color .2s ease}
.cline-remove svg{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cline-remove:hover{opacity:1;color:#ffd9d3;background:rgba(122,43,43,.6);border-color:rgba(255,120,110,.45)}

/* shipping + totals */
.cart-panel{background:rgba(0,28,16,.5);border:1px solid var(--line);border-radius:14px;padding:20px 20px 22px}
.cart-panel h3{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:16px;color:var(--cream);margin:0 0 12px;letter-spacing:.4px}
.ship-opts{display:flex;flex-direction:column;gap:9px;margin-bottom:8px}
.ship-opt{display:flex;align-items:center;gap:12px;cursor:pointer;padding:11px 13px;border-radius:11px;border:1px solid var(--line);transition:border-color .2s ease,background .2s ease}
.ship-opt:hover{border-color:var(--leaf)}
.ship-opt.on{border-color:var(--leaf);background:rgba(40,152,81,.12)}
.ship-opt input{accent-color:var(--leaf);width:17px;height:17px;flex:0 0 auto}
.ship-opt .sl{flex:1 1 auto}
.ship-opt .sl b{display:block;font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:13.5px;color:var(--cream);letter-spacing:.3px}
.ship-opt .sl span{font-family:var(--body);font-size:12px;opacity:.65}
.ship-opt .sp{font-family:var(--data);font-weight:700;font-size:15px;color:var(--leaf)}

.cart-totals{margin-top:18px;border-top:1px dashed rgba(40,152,81,.4);padding-top:16px;font-family:var(--data)}
.cart-totals .row{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:var(--cream);opacity:.85;margin-bottom:8px;letter-spacing:.5px;text-transform:uppercase}
.cart-totals .row.grand{opacity:1;font-size:20px;margin-top:6px}
.cart-totals .row.grand .v{color:var(--orange);font-weight:700}
.checkout-btn{display:block;width:100%;margin-top:18px;appearance:none;-webkit-appearance:none;border:0;cursor:pointer;
  font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.7px;font-size:16px;color:#04140a;
  background:var(--orange);padding:15px 20px;border-radius:14px;transition:filter .2s ease}
.checkout-btn:hover{filter:brightness(1.08)}
.checkout-btn:disabled{background:rgba(255,255,255,.12);color:var(--cream);opacity:.5;cursor:not-allowed}
.cart-cont{display:inline-block;margin-top:14px;font-family:var(--data);text-transform:uppercase;letter-spacing:1px;font-size:12.5px;color:var(--leaf);text-decoration:none;opacity:.85}
.cart-cont:hover{opacity:1}
.cart-secure{text-align:center;font-family:var(--body);font-size:12px;opacity:.55;margin-top:16px}

/* guest-checkout note in the cart panel */
.cart-guest{font-family:var(--body);font-size:13px;color:var(--cream);opacity:.85;line-height:1.5;background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:12px;padding:11px 14px;margin:0 0 12px}
.cart-guest a{color:var(--leaf);font-weight:700}

/* discount code + discount row */
.cart-totals .row.disc .v{color:var(--leaf);font-weight:700}
.cart-coupon{margin:2px 0 14px}
.cc-form{display:flex;gap:8px}
.cc-form input{flex:1;font-family:var(--body);font-size:14px;background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:10px;padding:10px 12px;color:var(--cream);text-transform:uppercase;letter-spacing:.5px}
.cc-form input::placeholder{color:var(--cream);opacity:.5;text-transform:none;letter-spacing:0}
.cc-form button{font-family:var(--data);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.5px;background:rgba(255,255,255,.08);color:var(--cream);border:1px solid var(--line);border-radius:10px;padding:0 16px;cursor:pointer}
.cc-form button:hover{background:var(--leaf);color:#04140a;border-color:var(--leaf)}
.cc-err{font-family:var(--body);font-size:12.5px;color:#e8a33a;margin-top:7px}
.cc-applied{display:flex;align-items:center;justify-content:space-between;gap:10px;font-family:var(--body);font-size:13.5px;color:var(--cream);background:rgba(40,152,81,.14);border:1px solid rgba(40,152,81,.4);border-radius:10px;padding:9px 13px}
.cc-applied b{color:var(--leaf)}
.cc-remove{font-family:var(--data);font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;background:none;border:0;color:var(--cream);opacity:.7;cursor:pointer;text-decoration:underline}
.cc-remove:hover{opacity:1;color:#e8a33a}
