/* Company 51 commerce v0.5.45 — Cart and Checkout. */
.c51-commerce-block{background:#050505;color:#f2f2f2;min-height:0}
.c51-commerce-container{width:min(calc(100% - 3rem),96rem);margin-inline:auto}
.c51-commerce-heading{padding:3.8rem 0 2.2rem;border-bottom:1px solid #292929}
.c51-commerce-eyebrow{margin:0 0 .7rem;color:#cdf580;font-size:.62rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.c51-commerce-heading h1{margin:0;font-family:var(--c51-font-display);font-size:clamp(3rem,6vw,5.5rem);font-weight:900;line-height:.9;letter-spacing:.02em;text-transform:uppercase;color:#fff}
.c51-commerce-lead{margin:.75rem 0 0;color:#a5a5a5;font-size:.78rem;font-weight:700;letter-spacing:.14em;line-height:1.5;text-transform:uppercase}
.c51-commerce-cart-area,.c51-commerce-checkout-area{padding:2.6rem 0 3.4rem}
.c51-commerce-cart-area .woocommerce,.c51-commerce-checkout-area .woocommerce{color:#f2f2f2}

/* Cart */
.c51-commerce-cart-area .woocommerce{display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,25rem);gap:2.5rem;align-items:start}
.c51-commerce-cart-area .woocommerce-notices-wrapper{grid-column:1/-1}
.c51-commerce-cart-area .woocommerce-cart-form{grid-column:1}
.c51-commerce-cart-area .cart-collaterals{grid-column:2}
.c51-commerce-cart-area table.shop_table{width:100%;margin:0;border-collapse:collapse;border:1px solid #292929;background:#0a0a0a}
.c51-commerce-cart-area table.shop_table th{padding:1rem 1.1rem;border-bottom:1px solid #383838;color:#fff;font-size:.58rem;font-weight:900;letter-spacing:.1em;text-align:left;text-transform:uppercase}
.c51-commerce-cart-area table.shop_table td{padding:1.1rem;border-bottom:1px solid #252525;vertical-align:middle;color:#ddd}
.c51-commerce-cart-area table.shop_table tr:last-child td{border-bottom:0}
.c51-commerce-cart-area .product-thumbnail{width:5.5rem}
.c51-commerce-cart-area .product-thumbnail img{width:4.8rem;height:4.8rem;object-fit:cover;border:1px solid #2c2c2c;background:#111}
.c51-commerce-cart-area .product-name a{color:#fff;text-decoration:none;font-family:var(--c51-font-display);font-size:.8rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.c51-commerce-cart-area .product-name a:hover{color:#cdf580}
.c51-commerce-cart-area .product-name .variation,.c51-commerce-cart-area .product-name dl{margin:.45rem 0 0;color:#858585;font-size:.62rem}
.c51-commerce-cart-area .product-price,.c51-commerce-cart-area .product-subtotal{font-family:var(--c51-font-display);font-size:1rem;font-weight:900;color:#fff}
.c51-commerce-cart-area .product-price del{opacity:.45;margin-right:.3rem}.c51-commerce-cart-area .product-price ins{text-decoration:none;color:#fff}
.c51-commerce-cart-area .product-remove a{color:#777;font-size:1rem;text-decoration:none}.c51-commerce-cart-area .product-remove a:hover{color:#cdf580}
.c51-commerce-cart-area .quantity .qty{width:4.5rem;min-height:2.6rem;border:1px solid #303030;background:#101010;color:#fff;text-align:center}
.c51-commerce-cart-area .actions{padding:1rem 1.1rem;background:#090909;border-top:1px solid #252525}
.c51-commerce-cart-area .coupon{float:left;display:flex;gap:.5rem;align-items:center}
.c51-commerce-cart-area .coupon label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.c51-commerce-cart-area .coupon .input-text{width:12rem;min-height:2.65rem;border:1px solid #303030;background:#101010;color:#fff;padding:0 .75rem}
.c51-commerce-cart-area .button{min-height:2.65rem;border:1px solid #cdf580;background:transparent;color:#cdf580;padding:.7rem .95rem;font-size:.58rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}
.c51-commerce-cart-area .button:hover,.c51-commerce-cart-area .button:focus-visible{background:#cdf580;color:#050505}
.c51-commerce-cart-area .actions>.button{float:right}
.c51-commerce-cart-area .cart-collaterals{margin:0}
.c51-commerce-cart-area .cart_totals{margin:0;border:1px solid #303030;background:#0d0d0d;padding:1.35rem}
.c51-commerce-cart-area .cart_totals h2{margin:0 0 1.1rem;font-family:var(--c51-font-display);font-size:1.35rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase;color:#fff}
.c51-commerce-cart-area .cart_totals table{width:100%;margin:0;border-collapse:collapse}
.c51-commerce-cart-area .cart_totals th,.c51-commerce-cart-area .cart_totals td{padding:.55rem 0;border:0;border-bottom:1px solid #262626;font-size:.72rem;color:#c4c4c4}
.c51-commerce-cart-area .cart_totals th{text-align:left;font-weight:700}.c51-commerce-cart-area .cart_totals td{text-align:right}.c51-commerce-cart-area .cart_totals .order-total th,.c51-commerce-cart-area .cart_totals .order-total td{border-bottom:0;padding-top:1rem;color:#fff;font-family:var(--c51-font-display);font-size:1.1rem;font-weight:900}
.c51-commerce-cart-area .wc-proceed-to-checkout{margin-top:1rem}
.c51-commerce-cart-area .wc-proceed-to-checkout a.checkout-button{display:flex;justify-content:center;align-items:center;width:100%;min-height:3.4rem;margin:0;border:1px solid #cdf580;background:#cdf580;color:#050505;font-size:.63rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;box-sizing:border-box}
.c51-commerce-cart-area .wc-proceed-to-checkout a.checkout-button:hover,.c51-commerce-cart-area .wc-proceed-to-checkout a.checkout-button:focus-visible{background:#fff;border-color:#fff}
.c51-commerce-cart-area .cart-subtotal td,.c51-commerce-cart-area .shipping td,.c51-commerce-cart-area .tax-rate td{color:#fff}
.c51-commerce-cart-area .woocommerce-shipping-destination,.c51-commerce-cart-area .woocommerce-shipping-calculator{font-size:.6rem;color:#777}
.c51-commerce-callout{display:flex;gap:1rem;align-items:flex-start;max-width:44rem;margin:0 0 3.25rem;padding:1.15rem 1.2rem;border:1px solid #303030;background:linear-gradient(135deg,rgba(205,245,128,.06),rgba(255,255,255,.015))}
.c51-commerce-callout__icon{display:grid;place-items:center;flex:0 0 2.3rem;width:2.3rem;height:2.3rem;color:#cdf580;border:1px solid #cdf580}.c51-commerce-callout__icon svg{width:1.4rem;height:1.4rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.c51-commerce-callout h2{margin:0 0 .3rem;color:#cdf580;font-family:var(--c51-font-display);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.c51-commerce-callout p{margin:0;color:#aaa;font-size:.66rem;line-height:1.5}

/* Checkout */
.c51-checkout-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0;padding:1.5rem 0 0;list-style:none;border-bottom:1px solid #292929}
.c51-checkout-steps li{position:relative;display:flex;justify-content:center;align-items:center;gap:.55rem;padding:0 0 1.15rem;color:#777;font-size:.58rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.c51-checkout-steps li:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#303030}.c51-checkout-steps li.is-active{color:#fff}.c51-checkout-steps li.is-active:after{background:#cdf580}
.c51-checkout-steps span{display:grid;place-items:center;width:1.7rem;height:1.7rem;border:1px solid #555;border-radius:50%;font-size:.58rem}.c51-checkout-steps li.is-active span{border-color:#cdf580;background:#cdf580;color:#050505}
.c51-commerce-checkout-area .woocommerce-checkout{display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,25rem);gap:2.5rem;align-items:start}
.c51-commerce-checkout-area .woocommerce-notices-wrapper{grid-column:1/-1}
.c51-commerce-checkout-area #customer_details{grid-column:1;min-width:0}
.c51-commerce-checkout-area #order_review_heading{grid-column:2;grid-row:2;margin:0;padding:1.35rem 1.35rem .85rem;border:1px solid #303030;border-bottom:0;background:#0d0d0d;font-family:var(--c51-font-display);font-size:1.2rem;font-weight:900;text-transform:uppercase}
.c51-commerce-checkout-area #order_review{grid-column:2;grid-row:3;margin:0;border:1px solid #303030;background:#0d0d0d;padding:0 1.35rem 1.35rem}
.c51-commerce-checkout-area .col2-set{display:grid;grid-template-columns:1fr;gap:1.5rem}
.c51-commerce-checkout-area .woocommerce-billing-fields,.c51-commerce-checkout-area .woocommerce-shipping-fields,.c51-commerce-checkout-area .woocommerce-additional-fields{padding:1.35rem;border:1px solid #303030;background:#0d0d0d}
.c51-commerce-checkout-area h3{margin:0 0 1rem;font-family:var(--c51-font-display);font-size:1.15rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase;color:#fff}
.c51-commerce-checkout-area .form-row label{display:block;margin-bottom:.35rem;color:#bbb;font-size:.6rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.c51-commerce-checkout-area .form-row label .required{color:#cdf580}.c51-commerce-checkout-area .form-row input.input-text,.c51-commerce-checkout-area .form-row select,.c51-commerce-checkout-area .form-row textarea{width:100%;min-height:2.7rem;box-sizing:border-box;border:1px solid #303030;background:#101010;color:#fff;padding:.7rem .75rem;font:inherit;font-size:.76rem}.c51-commerce-checkout-area .form-row textarea{min-height:7rem}
.c51-commerce-checkout-area .form-row input:focus,.c51-commerce-checkout-area .form-row select:focus,.c51-commerce-checkout-area .form-row textarea:focus{outline:2px solid #cdf580;outline-offset:1px}
.c51-commerce-checkout-area .woocommerce-checkout-payment{margin-top:1.25rem;border:0!important;background:transparent!important}.c51-commerce-checkout-area .woocommerce-checkout-payment ul.payment_methods{margin:0 0 1rem;padding:0;list-style:none;border:1px solid #303030;background:#101010}.c51-commerce-checkout-area .woocommerce-checkout-payment li{padding:.8rem .9rem;border-bottom:1px solid #252525;color:#ddd}.c51-commerce-checkout-area .woocommerce-checkout-payment li:last-child{border-bottom:0}.c51-commerce-checkout-area .woocommerce-checkout-payment label{font-size:.68rem;font-weight:900;color:#fff}
.c51-commerce-checkout-area #order_review table.shop_table{width:100%;margin:0;border-collapse:collapse}.c51-commerce-checkout-area #order_review table.shop_table th,.c51-commerce-checkout-area #order_review table.shop_table td{padding:.7rem 0;border-bottom:1px solid #262626;color:#c4c4c4;font-size:.7rem}.c51-commerce-checkout-area #order_review table.shop_table th{text-align:left}.c51-commerce-checkout-area #order_review table.shop_table td{text-align:right}.c51-commerce-checkout-area #order_review .order-total th,.c51-commerce-checkout-area #order_review .order-total td{border-bottom:0;padding-top:1rem;color:#fff;font-family:var(--c51-font-display);font-size:1.15rem;font-weight:900}
.c51-commerce-checkout-area #place_order{width:100%;min-height:3.4rem;border:1px solid #cdf580;background:#cdf580;color:#050505;font-size:.63rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.c51-commerce-checkout-area #place_order:hover,.c51-commerce-checkout-area #place_order:focus-visible{background:#fff;border-color:#fff}
.c51-commerce-checkout-area .woocommerce-terms-and-conditions-wrapper{color:#999;font-size:.6rem;line-height:1.5}.c51-commerce-checkout-area .woocommerce-form__label-for-checkbox{font-size:.64rem;color:#bbb}
.c51-commerce-checkout-area .woocommerce-privacy-policy-text{color:#777;font-size:.58rem;line-height:1.5}
.c51-commerce-checkout-area .woocommerce-form-coupon-toggle{grid-column:1/-1;margin-bottom:-1rem}.c51-commerce-checkout-area .woocommerce-info{border:1px solid #303030;background:#0d0d0d;color:#bbb;padding:1rem;font-size:.68rem}.c51-commerce-checkout-area .woocommerce-info a{color:#cdf580}
.c51-commerce-checkout-area .form-row-wide,.c51-commerce-checkout-area .form-row-first,.c51-commerce-checkout-area .form-row-last{float:none;width:auto;margin-left:0;margin-right:0}
.c51-commerce-checkout-area .woocommerce-billing-fields__field-wrapper,.c51-commerce-checkout-area .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.c51-commerce-checkout-area .form-row-wide{grid-column:1/-1}

/* Shared benefits */
.c51-commerce-benefits{border-top:1px solid #252525;border-bottom:1px solid #252525;background:#0a0a0a}
.c51-commerce-benefits__inner{width:min(calc(100% - 3rem),96rem);margin-inline:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.c51-commerce-benefits__inner>div{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:8rem;padding:1.15rem 1rem;text-align:center}.c51-commerce-benefits__inner>div+div{border-left:1px solid rgba(205,245,128,.42)}
.c51-commerce-benefits__inner span{display:grid;place-items:center;width:2.6rem;height:2.6rem;margin-bottom:.45rem;color:#fff}.c51-commerce-benefits__inner svg{width:2.2rem;height:2.2rem;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.c51-commerce-benefits__inner strong{color:#fff;font-family:var(--c51-font-display);font-size:.72rem;font-weight:900;letter-spacing:.09em;line-height:1.2;text-transform:uppercase}.c51-commerce-benefits__inner small{margin-top:.25rem;color:#bdbdbd;font-size:.6rem;line-height:1.45}
.c51-commerce-notice{padding:2rem;border:1px solid #303030;background:#0d0d0d;color:#bbb}

@media (max-width:900px){
  .c51-commerce-cart-area .woocommerce,.c51-commerce-checkout-area .woocommerce-checkout{grid-template-columns:1fr}
  .c51-commerce-cart-area .woocommerce-notices-wrapper,.c51-commerce-checkout-area .woocommerce-notices-wrapper{grid-column:1}
  .c51-commerce-cart-area .woocommerce-cart-form,.c51-commerce-cart-area .cart-collaterals{grid-column:1}.c51-commerce-checkout-area #customer_details,.c51-commerce-checkout-area #order_review_heading,.c51-commerce-checkout-area #order_review{grid-column:1;grid-row:auto}
  .c51-commerce-benefits__inner{grid-template-columns:repeat(2,minmax(0,1fr))}.c51-commerce-benefits__inner>div{min-height:7.2rem}.c51-commerce-benefits__inner>div+div{border-left:0}.c51-commerce-benefits__inner>div:nth-child(2n){border-left:1px solid rgba(205,245,128,.42)}.c51-commerce-benefits__inner>div:nth-child(n+3){border-top:1px solid rgba(205,245,128,.42)}
}
@media (max-width:650px){
  .c51-commerce-container{width:min(calc(100% - 2rem),48rem)}.c51-commerce-heading{padding:2.7rem 0 1.6rem}.c51-commerce-heading h1{font-size:clamp(2.7rem,14vw,4.4rem)}
  .c51-commerce-cart-area,.c51-commerce-checkout-area{padding-top:1.7rem}.c51-commerce-cart-area table.shop_table thead{display:none}.c51-commerce-cart-area table.shop_table,.c51-commerce-cart-area table.shop_table tbody,.c51-commerce-cart-area table.shop_table tr,.c51-commerce-cart-area table.shop_table td{display:block;width:100%;box-sizing:border-box}.c51-commerce-cart-area table.shop_table tr{position:relative;padding:1rem 1rem 1rem 6.1rem;border-bottom:1px solid #252525;min-height:6.7rem}.c51-commerce-cart-area table.shop_table td{padding:.18rem 0;border:0}.c51-commerce-cart-area .product-thumbnail{position:absolute;left:1rem;top:1rem;width:4.4rem}.c51-commerce-cart-area .product-thumbnail img{width:4.2rem;height:4.2rem}.c51-commerce-cart-area .product-remove{position:absolute;right:.85rem;top:.8rem}.c51-commerce-cart-area .product-price,.c51-commerce-cart-area .product-subtotal{display:inline-block;margin-right:.75rem}.c51-commerce-cart-area .actions{padding:.85rem}.c51-commerce-cart-area .coupon{float:none;width:100%;display:flex;margin-bottom:.65rem}.c51-commerce-cart-area .coupon .input-text{flex:1;width:auto}.c51-commerce-cart-area .actions>.button{float:none;width:100%}.c51-commerce-cart-area .product-quantity{margin-top:.3rem}
  .c51-commerce-benefits__inner{grid-template-columns:1fr}.c51-commerce-benefits__inner>div{min-height:6.6rem}.c51-commerce-benefits__inner>div:nth-child(n){border-left:0!important;border-top:1px solid rgba(205,245,128,.3)}.c51-commerce-benefits__inner>div:first-child{border-top:0}
  .c51-commerce-checkout-area .woocommerce-billing-fields__field-wrapper,.c51-commerce-checkout-area .woocommerce-shipping-fields__field-wrapper{grid-template-columns:1fr}.c51-commerce-checkout-area .form-row-wide{grid-column:1}.c51-checkout-steps{gap:.2rem}.c51-checkout-steps li{font-size:.5rem;gap:.35rem}.c51-checkout-steps span{width:1.5rem;height:1.5rem}
}


/* Cart refinement v0.5.30 */
.c51-commerce-block--cart .c51-commerce-cart-area .woocommerce {
    gap: 2rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area table.shop_table {
    border-color: #2e2e2e;
    background: #090909;
}
.c51-commerce-block--cart .c51-commerce-cart-area table.shop_table th {
    padding: .95rem 1.1rem;
    color: #8b8b8b;
    font-size: .56rem;
    letter-spacing: .14em;
}
.c51-commerce-block--cart .c51-commerce-cart-area table.shop_table td {
    padding: 1.35rem 1.1rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area table.shop_table tbody tr {
    transition: background-color .2s ease, border-color .2s ease;
}
.c51-commerce-block--cart .c51-commerce-cart-area table.shop_table tbody tr:hover {
    background: #0d0d0d;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-thumbnail {
    width: 6.25rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-thumbnail img {
    width: 5.5rem;
    height: 5.5rem;
    padding: .25rem;
    object-fit: contain;
    box-sizing: border-box;
    border-color: #303030;
    background: #111;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-name a {
    font-size: .86rem;
    letter-spacing: .06em;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-price,
.c51-commerce-block--cart .c51-commerce-cart-area .product-subtotal {
    font-size: 1.06rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .quantity .qty {
    width: 4.2rem;
    min-height: 2.85rem;
    border-color: #414141;
    background: #0e0e0e;
    font-family: var(--c51-font-display);
    font-size: .86rem;
    font-weight: 800;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-remove a {
    display: inline-grid;
    place-items: center;
    width: 1.7rem;
    height: 1.7rem;
    border: 1px solid #303030;
    color: #777;
    font-size: .75rem;
    line-height: 1;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-remove a:hover,
.c51-commerce-block--cart .c51-commerce-cart-area .product-remove a:focus-visible {
    border-color: #cdf580;
    color: #cdf580;
}
.c51-commerce-block--cart .c51-commerce-cart-area .actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
        "coupon update"
        "continue .";
    align-items: center;
    column-gap: 1rem;
    row-gap: .7rem;
    padding: 1rem 1.1rem;
    box-sizing: border-box;
}
.c51-commerce-block--cart .c51-commerce-cart-area .coupon {
    grid-area: coupon;
    min-width: 0;
    float: none;
    display: flex;
    flex: none;
    align-items: center;
    gap: .5rem;
    margin: 0;
}
.c51-commerce-block--cart .c51-commerce-cart-area .coupon .input-text {
    width: min(17rem, 100%);
    min-width: 0;
    flex: 1 1 15rem;
    box-sizing: border-box;
}
.c51-commerce-block--cart .c51-commerce-cart-area .actions > .button[name="update_cart"] {
    grid-area: update;
    float: none;
    flex: none;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 2.65rem;
    min-width: 8.75rem;
    margin: 0;
    box-sizing: border-box;
    justify-self: end;
}
.c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping {
    grid-area: continue;
    float: none;
    flex: none;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 2.65rem;
    margin: 0;
    box-sizing: border-box;
    justify-self: start;
}
.c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping {
    border-color: #424242;
    color: #d7d7d7;
    text-decoration: none;
}
.c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping:hover,
.c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping:focus-visible {
    border-color: #cdf580;
    color: #cdf580;
    background: transparent;
}
.c51-commerce-block--cart .cart_totals {
    padding: 1.45rem;
    border-color: #343434;
    background: #0b0b0b;
}
.c51-commerce-block--cart .cart_totals h2 {
    margin-bottom: 1.25rem;
    font-size: 1.42rem;
}
.c51-commerce-block--cart .cart_totals .order-total td {
    font-size: 1.3rem;
}
.c51-commerce-block--cart .wc-proceed-to-checkout a.checkout-button {
    min-height: 3.65rem;
    letter-spacing: .12em;
    box-shadow: 0 10px 24px rgba(205,245,128,.08);
}
.c51-commerce-cart-member-callout {
    display: flex;
    gap: .8rem;
    align-items: flex-start;
    margin-top: 1rem;
    padding: 1rem;
    border: 1px solid #303030;
    background: linear-gradient(135deg, rgba(205,245,128,.06), rgba(255,255,255,.012));
}
.c51-commerce-cart-member-callout .c51-commerce-callout__icon {
    flex: 0 0 2rem;
    width: 2rem;
    height: 2rem;
}
.c51-commerce-cart-member-callout strong {
    display: block;
    margin-bottom: .25rem;
    color: #cdf580;
    font-family: var(--c51-font-display);
    font-size: .67rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.c51-commerce-cart-member-callout p {
    margin: 0;
    color: #9d9d9d;
    font-size: .61rem;
    line-height: 1.5;
}
@media (max-width: 900px) {
    .c51-commerce-block--cart .c51-commerce-cart-area .actions {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "coupon"
            "update"
            "continue";
        align-items: stretch;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area .coupon {
        width: 100%;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area .coupon .input-text {
        width: auto;
        flex: 1 1 auto;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area .coupon .button,
    .c51-commerce-block--cart .c51-commerce-cart-area .actions > .button[name="update_cart"],
    .c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping {
        width: 100%;
        justify-self: stretch;
    }
}
@media (max-width: 650px) {
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table tr {
        padding: 1rem 1rem 1rem 6.25rem;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area .product-thumbnail img {
        width: 4.65rem;
        height: 4.65rem;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area .actions > .button,
    .c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping {
        width: 100%;
        flex-basis: 100%;
    }
    .c51-commerce-cart-member-callout {
        margin-top: .8rem;
    }
}

/* Cart empty state polish v0.5.80 */
.c51-commerce-block--cart-empty .c51-commerce-cart-area .woocommerce {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .65rem !important;
    align-items: start !important;
}

.c51-commerce-block--cart-empty .c51-commerce-cart-area .woocommerce-notices-wrapper,
.c51-commerce-block--cart-empty .c51-commerce-cart-area .cart-empty,
.c51-commerce-block--cart-empty .c51-commerce-cart-area .return-to-shop {
    grid-column: 1 !important;
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.c51-commerce-block--cart-empty .c51-commerce-cart-area .woocommerce-info,
.c51-commerce-block--cart-empty .c51-commerce-cart-area .cart-empty {
    border: 1px solid #3a3d35 !important;
    border-left: 2px solid #cdf580 !important;
    border-radius: 0 !important;
    background: #111210 !important;
    color: #e8e9e6 !important;
    box-shadow: none !important;
}

.c51-commerce-block--cart-empty .c51-commerce-cart-area .woocommerce-info::before {
    color: #cdf580 !important;
}

.c51-commerce-block--cart-empty .c51-commerce-cart-area .return-to-shop {
    padding-top: .2rem !important;
}

.c51-commerce-block--cart-empty .c51-commerce-cart-area .return-to-shop .button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 12.5rem !important;
    max-width: 100% !important;
    min-height: 3.1rem !important;
    padding: .9rem 1.25rem !important;
    border: 1px solid #cdf580 !important;
    border-radius: 0 !important;
    background: #cdf580 !important;
    color: #080908 !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    letter-spacing: .09em !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

.c51-commerce-block--cart-empty .c51-commerce-cart-area .return-to-shop .button:hover,
.c51-commerce-block--cart-empty .c51-commerce-cart-area .return-to-shop .button:focus-visible {
    background: transparent !important;
    color: #cdf580 !important;
}

@media (max-width: 650px) {
    .c51-commerce-block--cart-empty .c51-commerce-cart-area {
        padding-top: 1rem;
    }

    .c51-commerce-block--cart-empty .c51-commerce-cart-area .return-to-shop .button {
        width: 100% !important;
        min-width: 0 !important;
    }

    .c51-commerce-block--cart + .c51-commerce-benefits .c51-commerce-benefits__inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    
    .c51-commerce-block--cart + .c51-commerce-benefits .c51-commerce-benefits__inner > div {
        min-height: 6.8rem;
        border-top: 0 !important;
        border-left: 0 !important;
    }
    
    .c51-commerce-block--cart + .c51-commerce-benefits .c51-commerce-benefits__inner > div:nth-child(2n) {
        border-left: 1px solid rgba(205, 245, 128, .42) !important;
    }
    
    .c51-commerce-block--cart + .c51-commerce-benefits .c51-commerce-benefits__inner > div:nth-child(n+3) {
        border-top: 1px solid rgba(205, 245, 128, .42) !important;
    }
}

/* Cart mockup alignment refinement v0.5.31 */
.c51-commerce-block--cart .c51-commerce-heading {
    max-width: 100%;
    padding-top: 3.25rem;
    padding-bottom: 2rem;
}
.c51-commerce-block--cart .c51-commerce-heading h1 {
    font-size: clamp(3rem, 5.2vw, 5rem);
    line-height: .88;
}
.c51-commerce-block--cart .c51-commerce-heading .c51-commerce-lead {
    margin-top: .65rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area {
    padding-top: 2.15rem;
    padding-bottom: 2.75rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .woocommerce {
    grid-template-columns: minmax(0, 1fr) minmax(20rem, 24rem);
    gap: 1.75rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area table.shop_table th {
    padding: .8rem 1rem;
    font-size: .55rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area table.shop_table td {
    padding: 1rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area table.shop_table tbody tr {
    min-height: 7rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-thumbnail {
    width: 5.8rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-thumbnail img {
    width: 5rem;
    height: 5rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-name a {
    font-size: .82rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-name dl,
.c51-commerce-block--cart .c51-commerce-cart-area .product-name .variation {
    margin-top: .3rem;
    line-height: 1.45;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-price,
.c51-commerce-block--cart .c51-commerce-cart-area .product-subtotal {
    font-size: 1rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .quantity .qty {
    width: 3.8rem;
    min-height: 2.55rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .product-remove a {
    width: 1.55rem;
    height: 1.55rem;
    border-color: #262626;
    font-size: .7rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .actions {
    padding: .9rem 1rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .coupon {
    gap: .45rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .coupon .input-text {
    width: 11rem;
    min-height: 2.55rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .button,
.c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping {
    min-height: 2.55rem;
    padding: .65rem .9rem;
    font-size: .56rem;
}
.c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping {
    border-color: #4a4a4a;
}
.c51-commerce-block--cart .cart_totals {
    padding: 1.3rem;
}
.c51-commerce-block--cart .cart_totals h2 {
    font-size: 1.25rem;
    margin-bottom: 1rem;
}
.c51-commerce-block--cart .cart_totals th,
.c51-commerce-block--cart .cart_totals td {
    padding: .65rem 0;
    font-size: .66rem;
}
.c51-commerce-block--cart .cart_totals .order-total th,
.c51-commerce-block--cart .cart_totals .order-total td {
    padding-top: 1.05rem;
    font-size: 1.15rem;
}
.c51-commerce-block--cart .wc-proceed-to-checkout {
    margin-top: .85rem;
}
.c51-commerce-block--cart .wc-proceed-to-checkout a.checkout-button {
    min-height: 3.45rem;
}
.c51-commerce-cart-member-callout {
    margin-top: .85rem;
    padding: .95rem;
}
.c51-commerce-cart-member-callout .c51-commerce-callout__icon {
    flex-basis: 2.1rem;
    width: 2.1rem;
    height: 2.1rem;
}
.c51-commerce-cart-member-callout p {
    max-width: none;
}
.c51-commerce-block--cart + .c51-commerce-benefits {
    margin-top: 0;
}
@media (min-width: 901px) {
    .c51-commerce-block--cart .c51-commerce-cart-area .woocommerce-cart-form {
        min-width: 0;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area .cart-collaterals {
        min-width: 0;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table {
        table-layout: fixed;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table .product-remove {
        width: 2.5rem;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table .product-price {
        width: 7rem;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table .product-quantity {
        width: 7.5rem;
    }
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table .product-subtotal {
        width: 7.5rem;
    }
}
@media (max-width: 900px) {
    .c51-commerce-block--cart .c51-commerce-heading {
        padding-top: 2.7rem;
    }
}

/* Cart mockup fidelity refinement v0.5.32 */
@media (min-width: 901px) {
    /* WooCommerce adds legacy float/width rules that can collapse these grid children. */
    .c51-commerce-block--cart .c51-commerce-cart-area .woocommerce-cart-form,
    .c51-commerce-block--cart .c51-commerce-cart-area .cart-collaterals {
        float: none !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .woocommerce {
        display: grid !important;
        grid-template-columns: minmax(0, 74%) minmax(20rem, 26%) !important;
        gap: 1.75rem !important;
        align-items: start !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .woocommerce-cart-form {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .cart-collaterals {
        grid-column: 2 !important;
        grid-row: 1 !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .cart_totals {
        width: 100% !important;
        float: none !important;
        box-sizing: border-box !important;
    }

    /* The approved mockup uses a compact two-row action area rather than a vertical stack. */
    .c51-commerce-block--cart .c51-commerce-cart-area .actions {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-areas:
            "coupon update"
            "continue continue" !important;
        align-items: center !important;
        column-gap: 1rem !important;
        row-gap: .9rem !important;
        min-height: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon {
        grid-area: coupon !important;
        float: none !important;
        position: static !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        display: grid !important;
        grid-template-columns: minmax(12rem, 18rem) max-content !important;
        align-items: stretch !important;
        justify-content: start !important;
        gap: .6rem !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon label {
        position: absolute !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon .input-text,
    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon .button {
        float: none !important;
        position: static !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon .input-text {
        width: 100% !important;
        min-width: 12rem !important;
        max-width: none !important;
        flex: none !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon .button {
        width: auto !important;
        min-width: 7.5rem !important;
        max-width: none !important;
        flex: none !important;
        white-space: nowrap !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .coupon .input-text {
        width: 14rem !important;
        max-width: 100% !important;
        flex: 0 1 14rem !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions > .button[name="update_cart"] {
        grid-area: update !important;
        float: none !important;
        position: static !important;
        width: auto !important;
        min-width: 9.5rem !important;
        max-width: none !important;
        margin: 0 !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping {
        grid-area: continue !important;
        justify-self: start !important;
        float: none !important;
        width: auto !important;
        margin: 0 !important;
    }

    /* Keep the product columns compact and deliberate instead of allowing the row to stretch. */
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table {
        table-layout: fixed !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table .product-remove {
        width: 3.25rem !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table .product-thumbnail {
        width: 6.75rem !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table .product-price {
        width: 7.5rem !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table .product-quantity {
        width: 8.5rem !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table .product-subtotal {
        width: 8.5rem !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table td.product-thumbnail,
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table td.product-remove,
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table td.product-price,
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table td.product-quantity,
    .c51-commerce-block--cart .c51-commerce-cart-area table.shop_table td.product-subtotal {
        white-space: nowrap !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .cart_totals h2 {
        margin-bottom: 1.1rem !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .cart_totals .cart-subtotal,
    .c51-commerce-block--cart .c51-commerce-cart-area .cart_totals .order-total {
        display: table-row !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .wc-proceed-to-checkout a.checkout-button {
        width: 100% !important;
    }
}

@media (max-width: 900px) {
    .c51-commerce-block--cart .c51-commerce-cart-area .woocommerce-cart-form,
    .c51-commerce-block--cart .c51-commerce-cart-area .cart-collaterals {
        float: none !important;
        width: auto !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "coupon"
            "update"
            "continue" !important;
        gap: .65rem !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon,
    .c51-commerce-block--cart .c51-commerce-cart-area .actions > .button,
    .c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping {
        width: 100% !important;
        max-width: none !important;
        justify-self: stretch !important;
        float: none !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon {
        grid-area: coupon !important;
        grid-template-columns: minmax(0, 1fr) max-content !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon .input-text {
        min-width: 0 !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions > .button[name="update_cart"] {
        grid-area: update !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .c51-cart-continue-shopping {
        grid-area: continue !important;
    }
}


/* Cart v0.5.34 action row repair */
@media (min-width: 901px) {
    .c51-commerce-block--cart .c51-commerce-cart-area .actions {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: .65rem !important;
        min-height: 0 !important;
        width: 100% !important;
        padding: .9rem 1rem !important;
        box-sizing: border-box !important;
        position: relative !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon {
        float: none !important;
        position: static !important;
        display: flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        gap: .6rem !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon .input-text {
        display: block !important;
        float: none !important;
        position: static !important;
        width: 14rem !important;
        max-width: 14rem !important;
        min-width: 14rem !important;
        height: 2.65rem !important;
        min-height: 2.65rem !important;
        margin: 0 !important;
        padding: 0 .75rem !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon .button[name="apply_coupon"] {
        display: inline-flex !important;
        float: none !important;
        position: static !important;
        width: 7.5rem !important;
        min-width: 7.5rem !important;
        max-width: 7.5rem !important;
        height: 2.65rem !important;
        min-height: 2.65rem !important;
        margin: 0 !important;
        flex: 0 0 7.5rem !important;
        box-sizing: border-box !important;
        white-space: nowrap !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions > .button[name="update_cart"] {
        display: inline-flex !important;
        float: none !important;
        position: static !important;
        inset: auto !important;
        transform: none !important;
        width: 9.5rem !important;
        min-width: 9.5rem !important;
        max-width: 9.5rem !important;
        height: 2.65rem !important;
        min-height: 2.65rem !important;
        margin: 0 0 0 auto !important;
        padding: .65rem .9rem !important;
        flex: 0 0 9.5rem !important;
        box-sizing: border-box !important;
        white-space: nowrap !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .c51-cart-continue-shopping {
        display: inline-flex !important;
        float: none !important;
        position: static !important;
        width: auto !important;
        min-width: 9rem !important;
        max-width: none !important;
        height: 2.65rem !important;
        min-height: 2.65rem !important;
        margin: 0 !important;
        padding: .65rem .9rem !important;
        flex: 0 0 auto !important;
        order: 10 !important;
        box-sizing: border-box !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 900px) {
    .c51-commerce-block--cart .c51-commerce-cart-area .actions {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: .65rem !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon,
    .c51-commerce-block--cart .c51-commerce-cart-area .actions > .button[name="update_cart"],
    .c51-commerce-block--cart .c51-commerce-cart-area .actions .c51-cart-continue-shopping {
        float: none !important;
        position: static !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: .6rem !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon .input-text {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    .c51-commerce-block--cart .c51-commerce-cart-area .actions .coupon .button[name="apply_coupon"] {
        width: auto !important;
        min-width: 7.5rem !important;
        max-width: none !important;
    }
}


/* Cart v0.5.40: keep the table cell in normal flow and use WooCommerce-style floats. */
@media (min-width: 901px) {
    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions {
        display: table-cell !important;
        position: static !important;
        vertical-align: middle !important;
        min-height: 0 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
        padding: 1rem 1.1rem !important;
    }

    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions > .coupon {
        display: flex !important;
        position: static !important;
        float: left !important;
        align-items: center !important;
        gap: .5rem !important;
        width: auto !important;
        max-width: calc(100% - 11rem) !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions > .coupon .input-text {
        display: block !important;
        flex: 0 1 14rem !important;
        width: 14rem !important;
        min-width: 8rem !important;
        max-width: 14rem !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions > .coupon button[name="apply_coupon"] {
        display: inline-flex !important;
        position: static !important;
        flex: 0 0 auto !important;
        float: none !important;
        white-space: nowrap !important;
    }

    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions > button[name="update_cart"] {
        display: inline-flex !important;
        position: static !important;
        float: right !important;
        clear: none !important;
        width: 9.5rem !important;
        min-width: 9.5rem !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }

    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions > .c51-cart-continue-shopping {
        display: inline-flex !important;
        position: static !important;
        float: left !important;
        clear: both !important;
        width: max-content !important;
        margin: .65rem 0 0 !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 900px) {
    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions {
        display: block !important;
        position: static !important;
        min-height: 0 !important;
    }
    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions > .coupon {
        display: flex !important;
        position: static !important;
        float: none !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 0 .65rem !important;
    }
    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions > .coupon .input-text {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }
    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions > button[name="update_cart"],
    .c51-commerce-cart-area form.woocommerce-cart-form table.shop_table td.actions > .c51-cart-continue-shopping {
        display: flex !important;
        position: static !important;
        float: none !important;
        clear: none !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 0 .65rem !important;
    }
}


/* Cart v0.5.41: make the remove action a clear, touch-friendly control. */
.c51-commerce-cart-area .woocommerce a.remove,
.c51-commerce-cart-area .woocommerce a.remove:visited {
    display: inline-grid !important;
    place-items: center !important;
    width: 2.25rem !important;
    height: 2.25rem !important;
    box-sizing: border-box !important;
    border: 1px solid #3a3a3a !important;
    border-radius: 0 !important;
    background: #101010 !important;
    color: #cdf580 !important;
    font-size: 1.15rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease;
}

.c51-commerce-cart-area .woocommerce a.remove:hover,
.c51-commerce-cart-area .woocommerce a.remove:focus-visible {
    border-color: #cdf580 !important;
    background: #cdf580 !important;
    color: #050505 !important;
}

.c51-commerce-cart-area .woocommerce a.remove:focus-visible {
    outline: 2px solid #fff !important;
    outline-offset: 2px !important;
}


/* Checkout v0.5.42: reset WooCommerce half-width floats inside the theme grid. */
.c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-checkout {
    grid-template-columns: minmax(0, 1fr) minmax(20rem, 25rem);
    column-gap: 2.5rem;
    row-gap: 0;
    align-items: start;
}

.c51-commerce-checkout-area #customer_details {
    grid-column: 1;
    grid-row: 1;
    float: none !important;
    width: 100% !important;
    min-width: 0;
}

.c51-commerce-checkout-area #customer_details.col2-set,
.c51-commerce-checkout-area .col2-set {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 1.5rem;
}

.c51-commerce-checkout-area #order_review_heading {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
}

.c51-commerce-checkout-area #order_review {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    margin-top: 3.25rem !important;
    min-width: 0;
}

.c51-commerce-checkout-area .woocommerce-billing-fields__field-wrapper,
.c51-commerce-checkout-area .woocommerce-shipping-fields__field-wrapper {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .9rem;
}

.c51-commerce-checkout-area .woocommerce-checkout .form-row {
    float: none !important;
    clear: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box;
}

.c51-commerce-checkout-area .woocommerce-checkout .form-row-wide {
    grid-column: 1 / -1;
}

.c51-commerce-checkout-area .woocommerce-checkout .form-row input.input-text,
.c51-commerce-checkout-area .woocommerce-checkout .form-row select,
.c51-commerce-checkout-area .woocommerce-checkout .form-row textarea {
    width: 100% !important;
    min-height: 2.7rem;
    box-sizing: border-box;
    border: 1px solid #303030 !important;
    border-radius: 0 !important;
    background: #101010 !important;
    color: #f2f2f2 !important;
    padding: .7rem .75rem;
    font: inherit;
    font-size: .76rem;
}

.c51-commerce-checkout-area .woocommerce-checkout .form-row textarea {
    min-height: 7rem;
}

.c51-commerce-checkout-area .woocommerce-checkout .select2-container {
    width: 100% !important;
}

.c51-commerce-checkout-area .woocommerce-checkout .select2-container--default .select2-selection--single {
    display: flex;
    align-items: center;
    height: 2.7rem;
    border: 1px solid #303030 !important;
    border-radius: 0 !important;
    background: #101010 !important;
    color: #f2f2f2 !important;
}

.c51-commerce-checkout-area .woocommerce-checkout .select2-selection--single .select2-selection__rendered {
    color: #f2f2f2 !important;
    line-height: 1.2;
}

.c51-commerce-checkout-area .woocommerce-checkout .select2-selection--single .select2-selection__arrow {
    height: 100%;
}

.c51-commerce-block--checkout .woocommerce-info {
    position: relative;
    border: 1px solid #303030 !important;
    border-radius: 0 !important;
    background: #0d0d0d !important;
    color: #c4c4c4 !important;
    padding: 1rem 1rem 1rem 3.4rem !important;
    box-shadow: none !important;
}

.c51-commerce-block--checkout .woocommerce-info::before {
    color: #cdf580 !important;
}

.c51-commerce-block--checkout .woocommerce-info a {
    color: #cdf580 !important;
}

@media (max-width: 900px) {
    .c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-checkout {
        grid-template-columns: minmax(0, 1fr);
        column-gap: 0;
        row-gap: 1.5rem;
    }

    .c51-commerce-checkout-area #customer_details,
    .c51-commerce-checkout-area #order_review_heading,
    .c51-commerce-checkout-area #order_review {
        grid-column: 1;
        grid-row: auto;
        margin-top: 0 !important;
    }
}

@media (max-width: 650px) {
    .c51-commerce-checkout-area .woocommerce-billing-fields__field-wrapper,
    .c51-commerce-checkout-area .woocommerce-shipping-fields__field-wrapper {
        grid-template-columns: minmax(0, 1fr);
    }

    .c51-commerce-checkout-area .woocommerce-checkout .form-row-wide {
        grid-column: 1;
    }
}


/* Checkout v0.5.43: let WooCommerce billing/shipping columns fill the assigned grid column. */
.c51-commerce-checkout-area .woocommerce-checkout #customer_details > .col-1,
.c51-commerce-checkout-area .woocommerce-checkout #customer_details > .col-2 {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}


/* Checkout v0.5.44: align the order panel top with Billing Details. */
@media (min-width: 901px) {
    .c51-commerce-checkout-area #order_review_heading {
        margin-top: 1.5rem !important;
    }

    .c51-commerce-checkout-area #order_review {
        margin-top: 4.75rem !important;
    }
}


/* Checkout v0.5.45: add breathing room inside the order summary table. */
.c51-commerce-checkout-area #order_review table.shop_table th,
.c51-commerce-checkout-area #order_review table.shop_table td {
    padding: .7rem .8rem !important;
}


/* Checkout v0.5.60: bring WooCommerce coupon and card-entry panels into the dark theme. */
.c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-form-coupon-toggle .woocommerce-info,
.c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-info {
    border: 1px solid #45483e !important;
    border-left: 3px solid #cdf580 !important;
    border-radius: 0 !important;
    background: #10110e !important;
    color: #d0d2ce !important;
    padding: 1rem 1.15rem 1rem 3.35rem !important;
    box-shadow: none !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-form-coupon-toggle .woocommerce-info::before,
.c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-info::before {
    top: 50% !important;
    left: 1.05rem !important;
    transform: translateY(-50%);
    color: #cdf580 !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-form-coupon-toggle .woocommerce-info a,
.c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-info a {
    color: #cdf580 !important;
    text-decoration-color: rgba(205, 245, 128, .55);
    text-underline-offset: .15em;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-form-coupon-toggle .woocommerce-info a:hover,
.c51-commerce-block--checkout .c51-commerce-checkout-area .woocommerce-info a:hover {
    color: #fff !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area form.checkout_coupon {
    margin: 0 0 1.5rem !important;
    padding: 1.2rem !important;
    border: 1px solid #303030 !important;
    border-radius: 0 !important;
    background: #0d0d0d !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area form.checkout_coupon .form-row {
    margin: 0 0 .75rem !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area form.checkout_coupon .input-text {
    min-height: 2.7rem;
    border: 1px solid #3b3d38 !important;
    border-radius: 0 !important;
    background: #090a09 !important;
    color: #f2f2f2 !important;
    padding: .7rem .75rem;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area form.checkout_coupon .input-text::placeholder {
    color: #858984;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area form.checkout_coupon button.button {
    min-height: 2.7rem;
    border: 1px solid #cdf580 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #cdf580 !important;
    padding: .7rem 1rem;
    font-size: .62rem;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area form.checkout_coupon button.button:hover,
.c51-commerce-block--checkout .c51-commerce-checkout-area form.checkout_coupon button.button:focus-visible {
    background: #cdf580 !important;
    color: #050505 !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box {
    margin: 1rem 0 0 !important;
    padding: 1rem !important;
    border: 1px solid #303030 !important;
    border-radius: 0 !important;
    background: #101110 !important;
    color: #c7c9c5 !important;
    box-shadow: none !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box::before {
    border-bottom-color: #101110 !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box p,
.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box label {
    color: #c7c9c5 !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box label {
    font-size: .62rem;
    font-weight: 800;
    line-height: 1.55;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box input[type="checkbox"] {
    accent-color: #cdf580;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box .wc-stripe-elements-field,
.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box .StripeElement,
.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box .wcpay-payment-element {
    border: 1px solid #3b3d38 !important;
    border-radius: 0 !important;
    background: #090a09 !important;
    box-shadow: none !important;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box .wc-stripe-elements-field:focus,
.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box .StripeElement--focus {
    border-color: #cdf580 !important;
    outline: 2px solid #cdf580 !important;
    outline-offset: 1px;
}

.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box input[type="text"],
.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box input[type="tel"],
.c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box input[type="number"] {
    border: 1px solid #3b3d38 !important;
    border-radius: 0 !important;
    background: #090a09 !important;
    color: #f2f2f2 !important;
}

@media (max-width: 650px) {
    .c51-commerce-block--checkout .c51-commerce-checkout-area form.checkout_coupon {
        padding: .9rem !important;
    }

    .c51-commerce-block--checkout .c51-commerce-checkout-area #payment .payment_box {
        padding: .8rem !important;
    }
}

/* Populated cart mobile layout repair v0.5.81 */
@media (max-width: 650px) {
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .c51-commerce-cart-area,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .c51-commerce-cart-area .woocommerce,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart-collaterals,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart_totals {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        float: none !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .c51-commerce-cart-area .woocommerce {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 1rem !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table tbody {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        table-layout: auto !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table tfoot {
        display: table-row-group !important;
        width: 100% !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table tfoot tr {
        display: table-row !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table tr.cart_item {
        position: relative !important;
        display: grid !important;
        grid-template-columns: 4.75rem minmax(0, 1fr) !important;
        grid-template-areas:
            "thumb name"
            "thumb price"
            "thumb quantity"
            "thumb subtotal" !important;
        gap: .45rem .85rem !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        padding: 1rem !important;
        border: 1px solid #303030 !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table tr.cart_item > td {
        display: block !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        float: none !important;
        padding: 0 !important;
        border: 0 !important;
        text-align: left !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table tr.cart_item > td::before {
        display: none !important;
        content: none !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-remove {
        position: absolute !important;
        z-index: 1 !important;
        top: .65rem !important;
        right: .65rem !important;
        width: 2.25rem !important;
        height: 2.25rem !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-thumbnail {
        position: static !important;
        grid-area: thumb !important;
        width: auto !important;
        align-self: start !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-thumbnail img {
        display: block !important;
        width: 4.5rem !important;
        height: 4.5rem !important;
        max-width: 100% !important;
        object-fit: contain !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-name {
        grid-area: name !important;
        padding-right: 2.3rem !important;
        font-size: .84rem !important;
        line-height: 1.45 !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-price { grid-area: price !important; }
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-quantity { grid-area: quantity !important; }
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-subtotal { grid-area: subtotal !important; }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-price,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-quantity,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.product-subtotal {
        font-size: .82rem !important;
        line-height: 1.4 !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table tr.cart_item .quantity .qty {
        width: 4.25rem !important;
        min-height: 2.5rem !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.actions {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: .65rem !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        padding: .85rem !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table tr:has(> td.actions) {
        display: table-row-group !important;
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.actions::before {
        display: none !important;
        content: none !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.actions .coupon {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(8rem, 8rem) !important;
        align-items: stretch !important;
        gap: .55rem !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.actions .coupon > label {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border: 0 !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.actions .coupon .input-text {
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.actions .coupon button[name="apply_coupon"] {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: inline-flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        min-width: 8rem !important;
        max-width: none !important;
        min-height: 2.8rem !important;
        margin: 0 !important;
        padding-inline: .65rem !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.actions .button,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .woocommerce-cart-form table.shop_table td.actions .c51-cart-continue-shopping {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 2.8rem !important;
        margin: 0 !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart_totals table {
        display: table !important;
        width: 100% !important;
        min-width: 0 !important;
        table-layout: fixed !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart_totals table tr {
        display: table-row !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart_totals table th,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart_totals table td {
        display: table-cell !important;
        width: auto !important;
        min-width: 0 !important;
        padding: .75rem .45rem !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        vertical-align: top !important;
        line-height: 1.5 !important;
        box-sizing: border-box !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart_totals table th {
        width: 48% !important;
        text-align: left !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart_totals table td {
        width: 52% !important;
        text-align: right !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart_totals table th::before,
    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .cart_totals table td::before {
        display: none !important;
        content: none !important;
    }

    .c51-commerce-block--cart:not(.c51-commerce-block--cart-empty) .wc-proceed-to-checkout a.checkout-button {
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        white-space: normal !important;
        box-sizing: border-box !important;
    }
}
