/* Fayda Digital 2.0 — Bag / Cart */
:root{--fd2-cart-danger:#9c4035}
.fd2-cart-page{background:var(--ivory,#f3efe7);color:var(--ink,#171713);min-height:100vh}
.fd2-cart-page main{min-height:70vh}
.fd2-cart-page .container{margin-inline:auto;max-width:var(--max-w,1180px);padding-inline:var(--side-pad,24px);width:100%}
.fd2-cart-hero{border-bottom:1px solid rgb(23 23 19 / .1);padding-block:48px 44px}
.fd2-cart-breadcrumbs{align-items:center;color:rgb(23 23 19 / .5);display:flex;flex-wrap:wrap;font-size:12px;gap:9px;letter-spacing:.04em;margin-bottom:30px}
.fd2-cart-breadcrumbs a{border-bottom:1px solid transparent;color:inherit;text-decoration:none}
.fd2-cart-breadcrumbs a:hover{border-color:var(--brass,#a18455);color:var(--brass,#a18455)}
.fd2-cart-hero .fd2-eyebrow,.fd2-cart-step{color:var(--brass,#a18455);font-size:10px;font-weight:700;letter-spacing:.18em;margin:0 0 10px;text-transform:uppercase}
.fd2-cart-hero h1{font-family:var(--serif,Georgia,serif);font-size:clamp(42px,6vw,68px);font-weight:400;letter-spacing:-.025em;line-height:1.03;margin:0 0 18px}
.fd2-cart-hero> .container>p:not(.fd2-eyebrow){color:rgb(23 23 19 / .62);font-size:15.5px;line-height:1.72;margin:0;max-width:650px}
.fd2-cart-assurances{color:var(--olive,#30342b);display:flex;flex-wrap:wrap;font-size:11px;font-weight:650;gap:12px 24px;letter-spacing:.025em;margin-top:24px}
.fd2-cart-assurances span{align-items:center;display:inline-flex;gap:7px}
.fd2-cart-assurances svg{fill:none;height:15px;stroke:var(--brass,#a18455);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;width:15px}
.fd2-cart-section{padding-block:48px 96px}
.fd2-cart-layout{align-items:start;gap:28px;grid-template-columns:minmax(0,1fr)}
.fd2-cart-main{min-width:0}
.fd2-cart-panel{background:rgb(255 255 255 / .44);border:1px solid rgb(23 23 19 / .11);border-radius:2px;padding:26px}
.fd2-cart-panel-head{align-items:end;border-bottom:1px solid rgb(23 23 19 / .1);display:flex;gap:24px;justify-content:space-between;margin-bottom:8px;padding-bottom:22px}
.fd2-cart-panel h2,.fd2-cart-summary h2,.fd2-cart-empty h2{font-family:var(--serif,Georgia,serif);font-size:28px;font-weight:400;line-height:1.2;margin:0}
.fd2-cart-stock-note{color:rgb(23 23 19 / .48);font-size:11px;line-height:1.5;margin:0;max-width:210px;text-align:right}
.fd2-cart-table-wrap{overflow-x:auto;width:100%}
.fd2-cart-table{border-collapse:collapse;table-layout:fixed;width:100%}
.fd2-cart-table th{color:rgb(23 23 19 / .5);font-size:10px;font-weight:700;letter-spacing:.13em;padding:14px 8px;text-align:left;text-transform:uppercase}
.fd2-cart-table th:first-child{padding-left:0;width:44%}
.fd2-cart-table th:nth-child(2){width:14%}.fd2-cart-table th:nth-child(3){width:21%}.fd2-cart-table th:nth-child(4){width:14%}.fd2-cart-table th:last-child{width:7%}
.fd2-cart-item td{border-top:1px solid rgb(23 23 19 / .09);padding:22px 8px;vertical-align:middle}
.fd2-cart-item .cart_product{align-items:center;display:grid;gap:16px;grid-template-columns:70px minmax(0,1fr);padding-left:0}
.fd2-cart-item .img-prd{background:#e9e3d8;display:block;height:92px;overflow:hidden;width:70px}
.fd2-cart-item .img-prd img{height:100%;object-fit:cover;width:100%}
.fd2-cart-item .name-prd{color:var(--ink,#171713);font-family:var(--serif,Georgia,serif);font-size:16px;line-height:1.35;text-decoration:none}
.fd2-cart-item .name-prd:hover{color:var(--brass,#a18455)}
.fd2-cart-item .cart_price,.fd2-cart-item .cart_total{color:var(--olive,#30342b);font-size:13px;font-weight:650}
.fd2-cart-quantity{align-items:center;border:1px solid rgb(23 23 19 / .16);display:inline-grid;grid-template-columns:34px 38px 34px;height:40px}
.fd2-cart-quantity button{align-items:center;background:transparent;border:0;color:var(--ink,#171713);cursor:pointer;display:flex;font-size:18px;height:100%;justify-content:center;padding:0}
.fd2-cart-quantity button:hover,.fd2-cart-quantity button:focus-visible{background:rgb(48 52 43 / .08);color:var(--brass,#a18455);outline:0}
.fd2-cart-quantity input{appearance:textfield;background:transparent;border:0;border-inline:1px solid rgb(23 23 19 / .12);color:var(--ink,#171713);font-size:13px;height:100%;padding:0;text-align:center;width:100%}
.fd2-cart-quantity input:focus{box-shadow:inset 0 0 0 2px var(--brass,#a18455);outline:0}
.fd2-cart-quantity input::-webkit-inner-spin-button{appearance:none}
.fd2-cart-item .cart_remove{text-align:right}
.fd2-cart-item .cart_remove button{background:transparent;border:0;color:rgb(23 23 19 / .42);cursor:pointer;padding:8px}
.fd2-cart-item .cart_remove button:hover,.fd2-cart-item .cart_remove button:focus-visible{color:var(--fd2-cart-danger);outline:2px solid var(--brass,#a18455);outline-offset:2px}
.fd2-cart-item .cart_remove svg{fill:none;height:18px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;width:18px}
.fd2-cart-actions{align-items:end;border-top:1px solid rgb(23 23 19 / .1);display:flex;gap:16px;justify-content:space-between;margin-top:8px;padding-top:24px}
.fd2-cart-voucher{flex:1;max-width:410px}
.fd2-cart-voucher>label{color:rgb(23 23 19 / .55);display:block;font-size:10px;font-weight:700;letter-spacing:.12em;margin-bottom:8px;text-transform:uppercase}
.fd2-cart-voucher-row{display:grid;grid-template-columns:minmax(0,1fr) auto}
.fd2-cart-voucher-row input{background:var(--ivory,#f3efe7);border:1px solid rgb(23 23 19 / .17);border-radius:2px 0 0 2px;color:var(--ink,#171713);font:inherit;min-height:48px;padding:11px 13px;width:100%}
.fd2-cart-voucher-row input:focus{border-color:var(--brass,#a18455);box-shadow:0 0 0 3px rgb(161 132 85 / .13);outline:0;position:relative;z-index:1}
.fd2-cart-voucher-row button{background:var(--ink,#171713);border:1px solid var(--ink,#171713);border-radius:0 2px 2px 0;color:var(--ivory,#f3efe7);cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.08em;padding:0 20px;text-transform:uppercase}
.fd2-cart-voucher-row button:hover,.fd2-cart-voucher-row button:focus-visible{background:var(--brass,#a18455);border-color:var(--brass,#a18455);outline:0}
.fd2-cart-clear{background:transparent;border:0;border-bottom:1px solid rgb(23 23 19 / .35);color:rgb(23 23 19 / .58);cursor:pointer;font-size:11px;font-weight:650;letter-spacing:.07em;padding:8px 0 4px;text-transform:uppercase}
.fd2-cart-clear:hover,.fd2-cart-clear:focus-visible{border-color:var(--fd2-cart-danger);color:var(--fd2-cart-danger);outline:0}
.fd2-cart-summary{background:var(--olive,#30342b);border-radius:2px;color:var(--ivory,#f3efe7);padding:26px}
.fd2-cart-summary .fd2-cart-step{color:var(--brass,#a18455)}
.fd2-cart-summary h2{color:var(--ivory,#f3efe7);font-size:29px;margin-bottom:22px}
.fd2-cart-progress{border-bottom:1px solid rgb(243 239 231 / .14);margin-bottom:24px;padding-bottom:20px}
.fd2-cart-progress p{color:rgb(243 239 231 / .72);font-size:12px;line-height:1.5;margin:0 0 10px}
.fd2-cart-progress strong{color:var(--brass,#a18455)}
.fd2-cart-progress-track{background:rgb(243 239 231 / .13);height:2px;overflow:hidden;width:100%}
.fd2-cart-progress-track span{background:var(--brass,#a18455);display:block;height:100%;transition:width .3s ease;width:0}
.fd2-cart-totals{margin:0}
.fd2-cart-totals>div{align-items:center;border-top:1px solid rgb(243 239 231 / .13);display:flex;justify-content:space-between;padding:13px 0}
.fd2-cart-totals dt{color:rgb(243 239 231 / .67);font-size:13px}.fd2-cart-totals dd{color:var(--ivory,#f3efe7);font-size:13px;font-weight:650;margin:0}
.fd2-cart-shipping-note{background:rgb(243 239 231 / .07);border-left:2px solid var(--brass,#a18455);display:grid;gap:12px;grid-template-columns:23px 1fr;margin:10px 0 20px;padding:14px}
.fd2-cart-shipping-note svg{fill:none;height:22px;stroke:var(--brass,#a18455);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4;width:22px}
.fd2-cart-shipping-note strong{color:var(--ivory,#f3efe7);display:block;font-size:12px;margin-bottom:4px}
.fd2-cart-shipping-note span{color:rgb(243 239 231 / .58);display:block;font-size:11px;line-height:1.55}
.fd2-cart-grand-total{align-items:baseline;border-bottom:1px solid rgb(243 239 231 / .15);border-top:1px solid rgb(243 239 231 / .18);display:flex;justify-content:space-between;padding:17px 0}
.fd2-cart-grand-total span{font-size:14px;font-weight:650}.fd2-cart-grand-total strong{color:var(--brass,#a18455);font-family:var(--serif,Georgia,serif);font-size:25px;font-weight:500}
.fd2-cart-total-note{color:rgb(243 239 231 / .53);font-size:10.5px;line-height:1.55;margin:13px 0 18px}
.fd2-cart-gateways{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}
.fd2-cart-gateways span{border:1px solid rgb(243 239 231 / .22);border-radius:999px;color:rgb(243 239 231 / .7);font-size:9px;font-weight:650;letter-spacing:.06em;padding:6px 9px;text-transform:uppercase}
.fd2-cart-terms{align-items:flex-start;color:rgb(243 239 231 / .72);display:flex;font-size:11px;gap:9px;line-height:1.5;margin-bottom:16px}
.fd2-cart-terms input{accent-color:var(--brass,#a18455);flex:0 0 auto;height:16px;margin-top:1px;width:16px}
.fd2-cart-terms a{color:var(--ivory,#f3efe7);text-decoration-color:var(--brass,#a18455);text-underline-offset:3px}
.fd2-cart-checkout{align-items:center;background:var(--ivory,#f3efe7);border:1px solid var(--ivory,#f3efe7);border-radius:2px;color:var(--olive,#30342b);display:flex;font-size:11px;font-weight:750;justify-content:space-between;letter-spacing:.08em;min-height:52px;padding:0 16px;text-decoration:none;text-transform:uppercase}
.fd2-cart-checkout:hover,.fd2-cart-checkout:focus-visible{background:var(--brass,#a18455);border-color:var(--brass,#a18455);color:var(--ivory,#f3efe7);outline:0}
.fd2-cart-checkout span,.fd2-cart-continue span{transition:transform .16s ease}.fd2-cart-checkout:hover span,.fd2-cart-continue:hover span{transform:translateX(4px)}
.fd2-cart-continue{align-items:center;color:rgb(243 239 231 / .65);display:flex;font-size:11px;justify-content:space-between;margin-top:14px;text-decoration:none}
.fd2-cart-continue:hover,.fd2-cart-continue:focus-visible{color:var(--brass,#a18455);outline:0}
.fd2-cart-empty{background:rgb(255 255 255 / .42);border:1px solid rgb(23 23 19 / .1);justify-items:center;margin-inline:auto;max-width:720px;padding:68px 26px;text-align:center}
.fd2-cart-empty>svg{fill:none;height:60px;margin-bottom:22px;stroke:var(--brass,#a18455);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.3;width:60px}
.fd2-cart-empty h2{font-size:34px;margin-bottom:14px}.fd2-cart-empty>p:not(.fd2-cart-step){color:rgb(23 23 19 / .59);line-height:1.7;margin:0 auto 26px;max-width:500px}
.fd2-cart-primary{background:var(--ink,#171713);border:1px solid var(--ink,#171713);border-radius:2px;color:var(--ivory,#f3efe7);font-size:11px;font-weight:700;letter-spacing:.08em;padding:14px 21px;text-decoration:none;text-transform:uppercase}
.fd2-cart-primary:hover,.fd2-cart-primary:focus-visible{background:var(--brass,#a18455);border-color:var(--brass,#a18455);outline:0}
#cart-toast{background:var(--olive,#30342b);border-left:3px solid var(--brass,#a18455);bottom:24px;box-shadow:0 10px 32px rgb(23 23 19 / .2);color:var(--ivory,#f3efe7);font-size:13px;inset-inline-start:50%;max-width:calc(100vw - 32px);opacity:1;padding:12px 20px;position:fixed;transform:translateX(-50%);transition:opacity .35s;white-space:nowrap;z-index:9999}
#cart-toast.is-error{background:#712e28}
.fd2-cart-page .fd2-footer{margin-top:0}
@media(min-width:960px){
  .fd2-cart-hero{padding-block:66px 58px}.fd2-cart-section{padding-block:66px 112px}
  .fd2-cart-layout{gap:34px;grid-template-columns:minmax(0,1.45fr) minmax(330px,.72fr)}
  .fd2-cart-panel,.fd2-cart-summary{padding:32px}.fd2-cart-summary{position:sticky;top:94px}
}
@media(max-width:767px){
  .fd2-cart-panel{padding:20px}.fd2-cart-panel-head{align-items:start;display:grid}.fd2-cart-stock-note{text-align:left}
  .fd2-cart-table thead{display:none}.fd2-cart-table,.fd2-cart-table tbody{display:block}.fd2-cart-item{border-top:1px solid rgb(23 23 19 / .11);display:grid;gap:14px;grid-template-columns:1fr auto;padding:20px 0;position:relative}
  .fd2-cart-item:first-child{border-top:0}.fd2-cart-item td{border:0!important;display:block;padding:0!important}.fd2-cart-item .cart_product{grid-column:1/-1;grid-template-columns:76px minmax(0,1fr)}
  .fd2-cart-item .img-prd{height:100px;width:76px}.fd2-cart-item .cart_price{display:none}.fd2-cart-item .cart_quantity{grid-column:1}.fd2-cart-item .cart_total{align-self:center;grid-column:2;grid-row:2;text-align:right}
  .fd2-cart-item .cart_total:before{color:rgb(23 23 19 / .42);content:'Total ';font-size:10px;font-weight:500;margin-right:6px;text-transform:uppercase}.fd2-cart-item .cart_remove{position:absolute;right:0;top:16px}
  .fd2-cart-item .name-prd{padding-right:34px}.fd2-cart-actions{align-items:stretch;display:grid}.fd2-cart-voucher{max-width:none}.fd2-cart-clear{justify-self:start}
}
@media(max-width:639px){
  .fd2-cart-hero{padding-block:34px 32px}.fd2-cart-breadcrumbs{margin-bottom:22px}.fd2-cart-hero h1{font-size:40px}.fd2-cart-assurances{display:grid;gap:9px}
  .fd2-cart-section{padding-block:28px 64px}.fd2-cart-panel,.fd2-cart-summary{padding:20px}.fd2-cart-panel h2,.fd2-cart-summary h2{font-size:25px}
  .fd2-cart-voucher-row button{padding-inline:15px}.fd2-cart-empty{padding:52px 20px}
}
html[dir=rtl] .fd2-cart-page{text-align:right}
html[dir=rtl] .fd2-cart-table th{text-align:right}
html[dir=rtl] .fd2-cart-stock-note,html[dir=rtl] .fd2-cart-item .cart_total{text-align:left}
html[dir=rtl] .fd2-cart-shipping-note{border-left:0;border-right:2px solid var(--brass,#a18455)}
html[dir=rtl] .fd2-cart-checkout span,html[dir=rtl] .fd2-cart-continue span{transform:scaleX(-1)}
html[dir=rtl] .fd2-cart-checkout:hover span,html[dir=rtl] .fd2-cart-continue:hover span{transform:translateX(-4px) scaleX(-1)}
html[dir=rtl] .fd2-cart-item .cart_remove{left:0;right:auto}
@media(max-width:767px){html[dir=rtl] .fd2-cart-item .name-prd{padding-left:34px;padding-right:0}}
@media(prefers-reduced-motion:reduce){.fd2-cart-page *{scroll-behavior:auto!important;transition:none!important}}

/* Fayda Bag inventory states */
.fd2-cart-item.is-unavailable { background: rgba(139,53,46,.045); }
.fd2-cart-item.is-unavailable .img-prd img { filter: grayscale(.45); opacity: .72; }
.fd2-cart-stock-status {
  display: block;
  margin-top: .45rem;
  color: #8b352e;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.35;
}
.fd2-cart-stock-status.is-backorder { color: #7a6028; }
.fd2-cart-quantity button:disabled,
.fd2-cart-quantity input:disabled { cursor: not-allowed; opacity: .42; }
.fd2-cart-checkout.is-disabled {
  pointer-events: auto;
  cursor: not-allowed;
  opacity: .55;
  filter: grayscale(.35);
}
