/* ==========================================================================
   BUYITWELL — Bag
   ========================================================================== */
.ct{padding-bottom:clamp(20px,3vw,40px);}
.ct-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:26px;}
.ct-title{font-size:clamp(30px,4vw,48px);font-weight:600;letter-spacing:-.03em;line-height:1.05;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;}
.ct-n{font-size:15px;font-weight:600;letter-spacing:0;color:var(--ink-2);}
.ct-empty-cta{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.ct-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr);gap:clamp(24px,4vw,64px);align-items:start;}
.ct-ship{border-radius:var(--r);margin-bottom:10px;border:1px solid rgba(21,128,61,.18);}
.ct-item{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);animation:biwUp .5s var(--ease-out) both;}
.ct-item-img{display:block;aspect-ratio:3/4;border-radius:var(--r);overflow:hidden;background:var(--tile);}
.ct-item-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-out);}
.ct-item:hover .ct-item-img img{transform:scale(1.04);}
.ct-item-info{display:flex;flex-direction:column;gap:6px;min-width:0;}
.ct-item-name{font-size:16px;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ct-item-name:hover{text-decoration:underline;text-underline-offset:3px;}
.ct-item-meta{font-size:13.5px;color:var(--ink-2);}
.ct-item-meta b{color:var(--ink);}
.ct-item-ctl{display:flex;align-items:center;gap:6px 16px;flex-wrap:wrap;margin-top:auto;padding-top:12px;}
.ct-act{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ink-2);transition:color var(--t-fast);}
.ct-act .biw-i{width:17px;height:17px;}
.ct-act:hover{color:var(--ink);}
.ct-act:last-child:hover{color:var(--sale);}
.ct-item-price{display:flex;flex-direction:column;align-items:flex-end;gap:2px;}
.ct-item-price b{font-size:17px;font-weight:800;}
.ct-item-price s{font-size:13px;color:var(--ink-2);}

.ct-summary{position:sticky;top:96px;padding:28px;border-radius:var(--r-lg);background:var(--bg-2);border:1px solid var(--line);}
.ct-sum-t{font-size:19px;font-weight:700;letter-spacing:-.01em;margin-bottom:16px;}
.ct-coupon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;}
.ct-coupon summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;font-size:14px;font-weight:700;}
.ct-coupon summary::-webkit-details-marker{display:none;}
.ct-coupon summary .biw-i{width:18px;height:18px;color:var(--gold);}
.ct-coupon-f,.ct-est-f{display:flex;align-items:center;height:48px;margin-top:12px;border:1px solid var(--line-2);border-radius:var(--r-pill);background:#fff;padding:0 5px 0 16px;transition:border-color var(--t-fast);}
.ct-coupon-f:focus-within,.ct-est-f:focus-within{border-color:var(--ink);}
.ct-coupon-f input,.ct-est-f input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-size:14px;text-transform:uppercase;}
.ct-est-f input{text-transform:none;}
.ct-coupon-f button,.ct-est-f button{height:38px;padding:0 16px;border-radius:var(--r-pill);background:var(--ink);color:#fff;font-size:13px;font-weight:700;}
.ct-coupon-f button:disabled{opacity:.6;}
.ct-coupon-msg,.ct-est-msg{font-size:13px;margin-top:8px;line-height:1.5;}
.ct-coupon-msg:empty,.ct-est-msg:empty{display:none;}
.ct-coupon-msg.ok,.ct-est-msg.ok{color:var(--success);font-weight:600;}
.ct-coupon-msg.err,.ct-est-msg.err{color:var(--sale);}
.ct-rows{padding:14px 0 4px;}
.ct-rows .row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;font-size:14.5px;}
.ct-rows .row span:first-child{color:var(--ink-2);}
.ct-rows .row span:last-child{font-weight:600;}
.ct-rows .row.free span:last-child{color:var(--success);font-weight:700;}
.ct-rows .row.muted{font-size:13px;}
.ct-rows .row.muted span:last-child{color:var(--ink-2);font-weight:500;}
.ct-rows .row.total{margin-top:10px;padding-top:16px;border-top:1px solid var(--line-2);}
.ct-rows .row.total span:first-child{color:var(--ink);font-weight:700;font-size:16px;}
.ct-rows .row.total span:last-child{font-size:24px;font-weight:800;letter-spacing:-.02em;}
.ct-cta{margin-top:18px;min-height:56px;}
.ct-est{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);}
.ct-est-t{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;}
.ct-est-t .biw-i{width:18px;height:18px;color:var(--gold);}
.ct-trust{display:flex;flex-direction:column;gap:9px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line);}
.ct-trust li{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-2);}
.ct-trust .biw-i{width:18px;height:18px;color:var(--ink);}
.ct-note{margin-top:14px;}
.ct-upsell{margin-top:clamp(20px,3vw,40px);border-top:1px solid var(--line);}

@media (max-width:1000px){
  .ct-grid{grid-template-columns:1fr;}
  .ct-summary{position:static;}
}
@media (max-width:600px){
  .ct-item{grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto;gap:6px 14px;}
  .ct-item-img{grid-column:1;grid-row:1 / span 2;}
  .ct-item-info{grid-column:2;grid-row:1;}
  .ct-item-price{grid-column:2;grid-row:2;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:8px;}
  .ct-item-name{font-size:15px;}
  .ct-summary{padding:22px 18px;margin-inline:calc(var(--gutter) * -1);border-radius:0;border-left:0;border-right:0;}
  .ct-act span{display:none;}
  .ct-act .biw-i{width:20px;height:20px;}
}
