/** Shopify CDN: Minification failed

Line 240:0 All "@import" rules must come first

**/
/* =========================================================
   PRIMAL DAD — cart drawer brand skin
   Reuses the theme's existing cart drawer (progress bar, upsells,
   discount, AJAX). This file only restyles it. Load it AFTER the
   theme's cart CSS so these rules win.
   ========================================================= */

:root{
  --primal-cream:#F5F1E8;
  --primal-cream-2:#efe8da;
  --primal-forest:#243A2C;
  --primal-pine:#17241B;
  --primal-bronze:#A86A2C;
  --primal-bronze-hi:#bd7a33;
  --primal-bronze-lo:#8c5622;
  --primal-line:#ddd5c1;
  --primal-ink:#1f2b21;
  --primal-muted:#6E6E6E;
}

/* ---------- Panel + overlay ---------- */
.cart-drawer .drawer__inner,
cart-drawer .drawer__inner{
  background:var(--primal-cream) !important;
  color:var(--primal-ink);
  font-family:"Inter",system-ui,sans-serif;
  box-shadow:-16px 0 50px -20px rgba(23,36,27,.45);
}
.cart-drawer__overlay{ background:rgba(13,19,11,.55) !important; }

/* ---------- Header ---------- */
.cart-drawer .drawer__header{
  padding:20px 22px 14px;
  border-bottom:1px solid var(--primal-line);
}
.cart-drawer .drawer__heading,
.cart-drawer .drawer__heading.h2{
  font-family:"Archivo",sans-serif;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:var(--primal-pine);
  font-size:1.15rem;
}
.cart-drawer .drawer__close{ color:var(--primal-pine); opacity:.8; }
.cart-drawer .drawer__close:hover{ opacity:1; }

/* ---------- Free-shipping progress bar ---------- */
.cart-drawer cart-progress-bar,
.cart-drawer .cart-progress-bar,
.cart-drawer [class*="progress"]{ --pb-accent:var(--primal-bronze); }
.cart-drawer .cart-progress-bar__track,
.cart-drawer .progress-bar,
.cart-drawer progress{ background:var(--primal-cream-2) !important; border-radius:20px; overflow:hidden; }
.cart-drawer .cart-progress-bar__fill,
.cart-drawer .progress-bar__fill,
.cart-drawer progress::-webkit-progress-value,
.cart-drawer progress::-moz-progress-bar{
  background:linear-gradient(90deg,var(--primal-forest),var(--primal-bronze)) !important;
}
.cart-drawer progress::-webkit-progress-bar{ background:var(--primal-cream-2); }

/* ---------- Line items ---------- */
.cart-drawer .cart-items,
.cart-drawer .cart-item{ border:0 !important; }
.cart-drawer .cart-item{
  padding:16px 4px;
  border-bottom:1px solid var(--primal-line) !important;
}
.cart-drawer .cart-item__media,
.cart-drawer .cart-item__image{
  border-radius:12px !important;
  overflow:hidden;
  border:1px solid var(--primal-line);
  background:#fff;
}
.cart-drawer .cart-item__name{
  font-family:"Archivo",sans-serif !important;
  font-weight:700 !important;
  font-size:.9rem !important;
  color:var(--primal-pine) !important;
  text-decoration:none;
}
.cart-drawer .cart-item__name:hover{ color:var(--primal-forest) !important; }
.cart-drawer .product-option,
.cart-drawer .cart-item__details dd,
.cart-drawer .cart-item__details .product-option{ color:var(--primal-muted); font-size:.78rem; }
.cart-drawer .cart-item__final-price,
.cart-drawer .cart-drawer__final-item-price,
.cart-drawer .cart-item__price-wrapper .price{
  font-family:"Archivo",sans-serif !important;
  font-weight:800 !important;
  color:var(--primal-pine) !important;
}
.cart-drawer .cart-item__old-price{ color:var(--primal-muted) !important; }

/* Quantity stepper */
.cart-drawer .quantity{
  border:1.5px solid var(--primal-line) !important;
  border-radius:9px !important;
  background:#fff !important;
  overflow:hidden;
}
.cart-drawer .quantity__button{ color:var(--primal-pine) !important; }
.cart-drawer .quantity__button:hover{ background:var(--primal-cream-2) !important; }
.cart-drawer .quantity__input{ color:var(--primal-pine) !important; font-weight:700; }
.cart-drawer .cart-remove-button .button,
.cart-drawer cart-remove-button .button{
  color:var(--primal-muted) !important;
  border-radius:9px;
}
.cart-drawer .cart-remove-button .button:hover{ color:var(--primal-bronze-lo) !important; }

/* ---------- Upsells (ds-cart upsell blocks) ---------- */
.cart-drawer [class*="upsell"]{
  background:var(--primal-cream-2) !important;
  border:1px solid var(--primal-line) !important;
  border-radius:12px !important;
}
.cart-drawer [class*="upsell"] [class*="title"],
.cart-drawer [class*="upsell"] h3,
.cart-drawer [class*="upsell"] h4{
  font-family:"Archivo",sans-serif !important;
  font-weight:700 !important;
  color:var(--primal-pine) !important;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:.72rem;
}
.cart-drawer [class*="upsell"] [class*="add"],
.cart-drawer [class*="upsell"] button{
  background:var(--primal-forest) !important;
  color:var(--primal-cream) !important;
  border:0 !important;
  border-radius:8px !important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.cart-drawer [class*="upsell"] [class*="add"]:hover,
.cart-drawer [class*="upsell"] button:hover{ background:var(--primal-forest-hi,#2e4a38) !important; }

/* ---------- Discount field ---------- */
.cart-drawer [class*="discount"] input,
.cart-drawer input[name="discount"]{
  border:1.5px solid var(--primal-line) !important;
  border-radius:9px !important;
  background:#fff !important;
  color:var(--primal-ink) !important;
}
.cart-drawer [class*="discount"] button{
  background:var(--primal-pine) !important;
  color:var(--primal-cream) !important;
  border-radius:9px !important;
  font-weight:700;
}

/* ---------- Footer + totals ---------- */
.cart-drawer .drawer__footer,
.cart-drawer .cart-drawer__footer{
  background:var(--primal-cream) !important;
  border-top:1px solid var(--primal-line);
  padding:16px 22px 22px;
}
.cart-drawer .totals__total{
  font-family:"Archivo",sans-serif !important;
  font-weight:700 !important;
  text-transform:uppercase;
  letter-spacing:.03em;
  color:var(--primal-pine) !important;
}
.cart-drawer .totals__total-value{
  font-family:"Archivo",sans-serif !important;
  font-weight:800 !important;
  font-size:1.35rem !important;
  color:var(--primal-pine) !important;
}
.cart-drawer .tax-note,
.cart-drawer .cart__dynamic-shipping,
.cart-drawer .totals + *{ color:var(--primal-muted) !important; font-size:.72rem; }

/* ---------- Checkout button ---------- */
.cart-drawer .cart__checkout-button,
.cart-drawer .cart__ctas .button{
  background:linear-gradient(180deg,var(--primal-forest,#2e4a38),var(--primal-pine)) !important;
  color:var(--primal-cream) !important;
  font-family:"Archivo",sans-serif !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  border:0 !important;
  border-radius:11px !important;
  padding:17px !important;
  box-shadow:0 12px 26px rgba(23,36,27,.28) !important;
  transition:filter .15s, transform .12s !important;
}
.cart-drawer .cart__checkout-button::after,
.cart-drawer .cart__ctas .button::after{ display:none !important; }
.cart-drawer .cart__checkout-button:hover{ filter:brightness(1.08); }
.cart-drawer .cart__checkout-button:active{ transform:translateY(1px); }

/* Dynamic checkout (Shop Pay etc.) buttons stay branded but distinct */
.cart-drawer .additional-checkout-buttons{ margin-top:10px; }

/* ---------- Trust badges row ---------- */
.cart-drawer .cart__trust-badges,
.cart-drawer .cart__badges{
  color:var(--primal-muted);
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.cart-drawer .cart__trust-badges svg,
.cart-drawer .cart__badges svg{ color:var(--primal-forest); }

/* ---------- Empty state ---------- */
.cart-drawer .cart-drawer__empty-content .drawer__heading,
.cart-drawer .cart__empty-text{
  font-family:"Archivo",sans-serif;
  color:var(--primal-pine);
}
.cart-drawer .cart-drawer__warnings .button{
  background:var(--primal-bronze) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:9px !important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.cart-drawer .cart-drawer__warnings .button:hover{ background:var(--primal-bronze-hi) !important; }

/* Import brand fonts once (safe if already loaded elsewhere) */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;600;700;800;900&family=Inter:wght@400;500;600;700&display=swap');

/* =========================================================
   v2 — EXACT-MATCH overrides for the live theme classes
   (progress bar + product image tile)
   ========================================================= */

/* --- Free-shipping bar: solid forest->bronze gradient, no candy stripes --- */
.cart-progress__text{
  font-family:"Archivo",sans-serif !important;
  font-weight:700 !important;
  font-size:13px !important;
  letter-spacing:.01em !important;
  text-transform:none !important;
  color:var(--primal-pine) !important;
  margin-bottom:10px !important;
}
.cart-progress__text span{ color:var(--primal-bronze-lo) !important; font-weight:800 !important; }
.cart-progress__bar{
  background:#ded5bf !important;
  border-radius:20px !important;
  height:8px !important;
  overflow:hidden !important;
  box-shadow:none !important;
  border:0 !important;
}
.cart-progress__bar__progress{
  background:linear-gradient(90deg,var(--primal-forest),var(--primal-bronze)) !important;
  background-image:linear-gradient(90deg,var(--primal-forest),var(--primal-bronze)) !important;
  border-radius:20px !important;
  height:100% !important;
  animation:none !important;
  box-shadow:none !important;
}
.cart-progress__bar__badge{
  background:var(--primal-cream) !important;
  border:2px solid var(--primal-bronze) !important;
  color:var(--primal-bronze) !important;
  box-shadow:0 2px 8px rgba(140,86,34,.25) !important;
}
.cart-progress__bar__badge svg,
.cart-progress__bar__badge svg *{ stroke:var(--primal-bronze) !important; }

/* --- Product image: clean square tile, remove empty space below --- */
.cart-item__media{
  background:none !important;
  border:0 !important;
  padding:0 !important;
  vertical-align:top !important;
  width:96px !important;
}
.cart-item__image{
  width:84px !important;
  height:84px !important;
  object-fit:contain !important;
  border-radius:12px !important;
  border:1px solid var(--primal-line) !important;
  background:#fff !important;
  margin-top:2px !important;
}
.cart-item__link{ height:auto !important; }

/* keep line-item rows tighter/aligned */
.cart-item{ align-items:flex-start; }
.cart-item__details{ padding-top:2px; }

/* Optional: hide the theme's payment-icons row in the drawer if you prefer
   only the branded trust strip. Uncomment to enable.
.cart__badges{ display:none !important; }
*/

/* =========================================================
   v3 — rebuilt upsell card (clean, matches mockup)
   Pairs with the rewritten ds-cart-primary-upsell.liquid
   ========================================================= */
.pdu-wrap{margin:14px 0 4px}
.pdu-eyebrow{text-align:center;font-family:"Archivo",sans-serif;font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--primal-pine);margin-bottom:11px}
.pdu-card{display:flex;gap:13px;align-items:center;background:var(--primal-forest);border-radius:14px;padding:13px 15px;box-shadow:0 8px 22px -14px rgba(23,36,27,.5)}
.pdu-media{flex-shrink:0}
.pdu-media img{width:60px;height:60px;object-fit:contain;background:#fff;border-radius:10px;display:block}
.pdu-body{flex:1;min-width:0}
.pdu-title{font-family:"Archivo",sans-serif;font-weight:700;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--primal-cream);line-height:1.2;margin-bottom:6px}
.pdu-desc{font-size:11px;line-height:1.4;color:#cdd4c6;margin-bottom:9px}
.pdu-desc *{color:#cdd4c6 !important;margin:0 !important;font-size:11px !important}
.pdu-variants{display:block;margin-bottom:9px}
.pdu-select-label{display:none}
.pdu-variants .select{position:relative;display:inline-block}
.pdu-variants select{background:#fff;border:1.5px solid transparent;border-radius:8px;padding:8px 30px 8px 12px;font-size:12px;font-weight:600;color:var(--primal-ink);font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:130px;cursor:pointer}
.pdu-variants .select svg,.pdu-variants .icon-caret{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:12px;height:12px;pointer-events:none;color:var(--primal-pine)}
.pdu-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pdu-price{font-family:"Archivo",sans-serif;font-weight:800;font-size:17px;color:var(--primal-cream)}
.pdu-price *{color:var(--primal-cream) !important;font-family:"Archivo",sans-serif !important;font-weight:800 !important}
.pdu-price .price__badge-sale,.pdu-price .badge{display:none !important}
.pdu-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--primal-bronze);color:#fff;border:0;border-radius:9px;padding:12px 20px;font-family:"Archivo",sans-serif;font-weight:800;font-size:12px;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:filter .15s}
.pdu-btn:hover{filter:brightness(1.08)}
.pdu-btn .spinner{width:18px;height:18px}
.pdu-btn[disabled]{opacity:.55;cursor:not-allowed}

/* --- v4: upsell robustness (always fully visible, never clipped) --- */
.cart-drawer .cart-drawer-items-and-upsell{ overflow-y:auto !important; min-height:0 !important; }
.cart-drawer .pdu-wrap,
.cart-drawer .pdu-card,
.cart-drawer .pdu-card *{ opacity:1 !important; visibility:visible !important; }
.cart-drawer .pdu-card{ max-height:none !important; overflow:visible !important; }
.cart-drawer .pdu-media img{ width:60px !important; height:60px !important; }
/* if the upsell product has no image, keep the tile from collapsing */
.cart-drawer .pdu-media{ width:60px; height:60px; background:#fff; border-radius:10px; flex-shrink:0; }

/* --- v5: upsell price — show only the amount, hide labels/unit/sale duplicates --- */
.pdu-price .visually-hidden,
.pdu-price .price__unit,
.pdu-price .unit-price,
.pdu-price .price__badge-sale,
.pdu-price .price__badge-sold-out{ display:none !important; }
/* if theme shows both regular + sale spans, keep just the sale/final one */
.pdu-price .price--on-sale .price__regular{ display:none !important; }
.pdu-price .price__sale{ display:inline !important; }
.pdu-price .price{ display:inline !important; }
.pdu-price .price-item--regular,
.pdu-price .price-item--sale{ font:inherit !important; color:var(--primal-cream) !important; }
/* collapse the duplicated regular/sale so only one amount shows */
.pdu-price .price:not(.price--on-sale) .price-item--sale{ display:none !important; }
.pdu-price .price.price--on-sale .price-item--regular{ display:none !important; }

/* =========================================================
   v6 — EXACT match patch (beats theme specificity)
   Pinned to the mockup's real numbers after live measurement
   ========================================================= */

/* 1) line-item name: theme .h4 shrinks it to ~10px -> pin to 13.5px */
.cart-drawer .cart-item__name.h4,
.cart-drawer .cart-item__name{
  font-family:"Archivo",sans-serif !important;
  font-size:13.5px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  color:var(--primal-pine) !important;
}

/* 2) upsell title: theme forces ~8px dark-on-dark -> pin to 12.5px cream */
.cart-drawer .pdu-title,
.cart-drawer .pdu-body .pdu-title{
  font-size:12.5px !important;
  font-weight:700 !important;
  color:var(--primal-cream) !important;
  text-transform:uppercase !important;
  letter-spacing:.03em !important;
  line-height:1.2 !important;
  margin-bottom:6px !important;
}

/* 3) upsell ADD button: theme paints it forest -> force BRONZE */
.cart-drawer .pdu-btn,
.cart-drawer product-form .pdu-btn,
.cart-drawer .pdu-row .pdu-btn{
  background:linear-gradient(180deg,var(--primal-bronze-hi),var(--primal-bronze-lo)) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:9px !important;
  padding:12px 20px !important;
  font-family:"Archivo",sans-serif !important;
  font-weight:800 !important;
  font-size:12px !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
}

/* 4) checkout button: 73.5px/18.7px -> 58px/15px, tighter */
.cart-drawer .cart__checkout-button{
  min-height:58px !important;
  height:auto !important;
  padding:17px !important;
  font-size:15px !important;
  letter-spacing:.08em !important;
  border-radius:12px !important;
}

/* 5) totals: make the VALUE the big one (24px), label 14px */
.cart-drawer .totals__total{ font-size:14px !important; }
.cart-drawer .totals__total-value{ font-size:24px !important; font-weight:800 !important; }

/* 6) trust strip a touch narrower + centered (or set 'Trust badges width' ~70%) */
.cart-drawer .cart__trust-badges{ width:78% !important; margin:14px auto 0 !important; }

/* consistency: upsell price already correct size (17px) — keep cream */
.cart-drawer .pdu-price,
.cart-drawer .pdu-price *{ color:var(--primal-cream) !important; }