/* =========================================================
   LOGIN PAKISTAN - CUSTOM WOOCOMMERCE CART
========================================================= */

.lp-cart-page,
.lp-cart-page * {
    box-sizing: border-box;
}


.lp-cart-page {

    --lp-green: #0b4b31;
    --lp-green-dark: #073a27;
    --lp-green-soft: #eaf2ed;

    --lp-gold: #d3a243;
    --lp-gold-dark: #b77f1e;

    --lp-cream: #fffaf2;
    --lp-cream-2: #f8f1e6;

    --lp-text: #252925;
    --lp-muted: #68716b;

    --lp-border: #e7dfd4;

    width: 100%;

    margin: 0;
    padding: 0;

    background: #ffffff;

    color: var(--lp-text);

    font-family: "Poppins", sans-serif;
}



/* =========================================================
   GLOBAL CART CONTAINER
========================================================= */

.lp-cart-container {

    width: calc(100% - 48px);

    max-width: 1380px;

    margin: 0 auto;
}



/* =========================================================
   HERO
========================================================= */

.lp-cart-hero {

    width: 100%;

    padding: 0;

    background:
        linear-gradient(
            95deg,
            #fffaf2 0%,
            #fbf2e5 100%
        );

    border-bottom:
        1px solid rgba(211, 162, 67, 0.12);
}


.lp-cart-hero-inner {

    min-height: 182px;

    display: flex;

    flex-direction: column;

    justify-content: center;

    position: relative;

    overflow: hidden;

    padding:
        28px 38px;
}



/* Decorative pattern */

.lp-cart-hero-inner::after {

    content: "";

    width: 310px;

    height: 310px;

    position: absolute;

    top: -112px;

    right: 7%;

    border:
        2px solid
        rgba(211, 162, 67, 0.08);

    border-radius: 50%;

    pointer-events: none;
}



/* =========================================================
   BREADCRUMB
========================================================= */

.lp-cart-breadcrumb {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 8px;

    color: #485049;

    font-size: 12px;

    font-weight: 500;
}


.lp-cart-breadcrumb a {

    color: var(--lp-green);

    text-decoration: none;

    border-bottom:
        1px solid
        rgba(11, 75, 49, 0.3);
}


.lp-cart-breadcrumb a:hover {

    color: var(--lp-gold-dark);
}



/* =========================================================
   HERO TITLE
========================================================= */

.lp-cart-hero-title {

    display: flex;

    align-items: center;

    gap: 12px;
}


.lp-cart-hero-title h1 {

    margin: 0;

    color: var(--lp-green-dark);

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size: 48px;

    font-weight: 600;

    line-height: 1.05;

    letter-spacing: -1px;
}


.lp-cart-hero-title svg {

    width: 31px;

    height: 31px;

    fill: none;

    stroke: var(--lp-gold);

    stroke-width: 1.6;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.lp-cart-hero-description {

    margin:
        7px 0 0;

    color: #59615b;

    font-size: 15px;

    line-height: 1.5;
}



/* =========================================================
   FREE SHIPPING PROGRESS SECTION
========================================================= */

.lp-cart-shipping-progress {

    width: 100%;

    padding:
        14px 0 16px;

    background: #ffffff;
}


.lp-shipping-progress-inner {

    min-height: 94px;

    display: grid;

    grid-template-columns:
        minmax(0, 2.25fr)
        minmax(250px, 0.9fr);

    overflow: hidden;

    border:
        1px solid var(--lp-border);

    border-radius: 10px;

    background:
        linear-gradient(
            100deg,
            #fffaf2 0%,
            #f9f3e8 100%
        );
}



/* =========================================================
   PROGRESS LEFT
========================================================= */

.lp-shipping-progress-main {

    min-width: 0;

    display: flex;

    align-items: center;

    gap: 19px;

    padding:
        20px 25px;
}


.lp-shipping-icon {

    width: 48px;

    height: 48px;

    flex: 0 0 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: var(--lp-green);
}


.lp-shipping-icon svg {

    width: 45px;

    height: 45px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.lp-shipping-progress-content {

    min-width: 0;

    flex: 1;
}


.lp-shipping-progress-content h3 {

    margin:
        0 0 12px;

    color: #242924;

    font-size: 15px;

    font-weight: 500;

    line-height: 1.3;
}


.lp-shipping-progress-content h3 strong {

    font-weight: 700;
}


.lp-shipping-progress-row {

    display: flex;

    align-items: center;

    gap: 14px;
}


.lp-shipping-progress-track {

    height: 11px;

    flex: 1;

    overflow: hidden;

    border-radius: 20px;

    background: #dbe4dd;
}


.lp-shipping-progress-track span {

    height: 100%;

    display: block;

    border-radius: inherit;

    background:
        linear-gradient(
            90deg,
            var(--lp-green) 0%,
            #176345 100%
        );

    transition:
        width 0.35s ease;
}


.lp-shipping-progress-value {

    flex: 0 0 auto;

    color: var(--lp-green-dark);

    font-size: 11px;

    font-weight: 600;

    white-space: nowrap;
}



/* =========================================================
   PROGRESS RIGHT
========================================================= */

.lp-shipping-progress-message {

    display: flex;

    align-items: center;

    gap: 14px;

    padding:
        18px 25px;

    border-left:
        1px solid var(--lp-border);

    background:
        rgba(255, 250, 242, 0.45);
}


.lp-shipping-gift-icon {

    width: 40px;

    height: 40px;

    flex: 0 0 40px;

    color: #c77c0c;
}


.lp-shipping-gift-icon svg {

    width: 100%;

    height: 100%;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.7;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.lp-shipping-progress-message span {

    display: block;

    color: #555e57;

    font-size: 12px;

    line-height: 1.35;
}


.lp-shipping-progress-message strong {

    display: block;

    margin-top: 2px;

    color: #222722;

    font-size: 12px;

    font-weight: 600;

    line-height: 1.35;
}



/* =========================================================
   MAIN CART AREA
========================================================= */

.lp-cart-main {

    width: 100%;

    padding:
        0 0 28px;
}


.lp-cart-layout {

    display: grid;

    grid-template-columns:
        minmax(0, 1.9fr)
        minmax(320px, 1fr);

    gap: 18px;

    align-items: start;
}



/* =========================================================
   CART ITEMS BOX
========================================================= */

.lp-cart-items-box {

    overflow: hidden;

    border:
        1px solid var(--lp-border);

    border-radius: 10px;

    background: #ffffff;
}


.lp-cart-form {

    margin: 0;
}



/* =========================================================
   TABLE HEADER
========================================================= */

.lp-cart-table-head {

    min-height: 57px;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        88px
        112px
        92px
        64px;

    align-items: center;

    gap: 12px;

    padding:
        0 20px;

    border-bottom:
        1px solid var(--lp-border);

    color: #303630;

    font-size: 12px;

    font-weight: 600;
}


.lp-cart-table-head span:not(:first-child) {

    text-align: center;
}



/* =========================================================
   CART PRODUCT ROW
========================================================= */

.lp-cart-products {

    padding:
        0 17px;
}


.lp-cart-item {

    min-height: 154px;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        88px
        112px
        92px
        64px;

    align-items: center;

    gap: 12px;

    padding:
        15px 3px;

    border-bottom:
        1px solid var(--lp-border);
}



/* =========================================================
   PRODUCT CELL
========================================================= */

.lp-cart-product {

    min-width: 0;

    display: flex;

    align-items: center;

    gap: 16px;
}


.lp-cart-product-image {

    width: 112px;

    height: 112px;

    flex: 0 0 112px;

    display: block;

    overflow: hidden;

    border-radius: 7px;

    background: #f7f1e7;

    text-decoration: none;
}


.lp-cart-product-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;
}


.lp-cart-product-info {

    min-width: 0;
}


.lp-cart-product-name {

    display: inline-block;

    margin-bottom: 5px;

    color: #242924;

    font-size: 13px;

    font-weight: 600;

    line-height: 1.35;

    text-decoration: none;
}


.lp-cart-product-name:hover {

    color: var(--lp-green);
}


.lp-cart-product-description {

    max-width: 270px;

    margin:
        0 0 5px;

    color: #69706b;

    font-size: 11px;

    line-height: 1.45;
}



/* Variation / item metadata */

.lp-cart-product-meta {

    color: #4d554f;

    font-size: 10.5px;

    line-height: 1.5;
}


.lp-cart-product-meta dl {

    display: flex;

    flex-wrap: wrap;

    gap:
        2px 8px;

    margin: 0;
}


.lp-cart-product-meta dt,
.lp-cart-product-meta dd {

    margin: 0;
}


.lp-cart-product-meta dt {

    font-weight: 600;
}


.lp-cart-product-meta p {

    display: inline;

    margin: 0;
}



/* =========================================================
   PRICE / TOTAL
========================================================= */

.lp-cart-item-price,
.lp-cart-item-total {

    color: #222722;

    font-size: 12px;

    font-weight: 600;

    text-align: center;
}



/* =========================================================
   QUANTITY CONTROL
========================================================= */

.lp-cart-item-quantity {

    display: flex;

    align-items: center;

    justify-content: center;
}


.lp-cart-qty-control {

    height: 38px;

    display: inline-flex;

    align-items: center;

    overflow: hidden;

    border:
        1px solid #d8d9d4;

    border-radius: 7px;

    background: #ffffff;
}


.lp-cart-qty-control button {

    width: 32px;

    height: 100%;

    display: flex;

    align-items: center;

    justify-content: center;

    margin: 0;

    padding: 0;

    border: 0 !important;

    border-radius: 0;

    outline: 0;

    background: #fafafa !important;

    box-shadow: none !important;

    color: #445048 !important;

    font-family: "Poppins", sans-serif;

    font-size: 17px;

    font-weight: 400;

    line-height: 1;

    cursor: pointer;

    transition:
        background 0.2s ease,
        color 0.2s ease;
}


.lp-cart-qty-control button:hover {

    background:
        var(--lp-green-soft) !important;

    color:
        var(--lp-green) !important;
}


.lp-cart-qty-control
.quantity {

    margin: 0 !important;
}


.lp-cart-qty-control
.quantity .qty {

    width: 42px !important;

    height: 36px !important;

    margin: 0 !important;

    padding: 0 !important;

    border: 0 !important;

    border-left:
        1px solid #e6e6e2 !important;

    border-right:
        1px solid #e6e6e2 !important;

    border-radius: 0 !important;

    outline: 0 !important;

    background: #ffffff !important;

    box-shadow: none !important;

    color: #222722;

    font-family: "Poppins", sans-serif;

    font-size: 12px;

    font-weight: 500;

    text-align: center;

    appearance: textfield;

    -moz-appearance: textfield;
}


.lp-cart-qty-control
.quantity .qty::-webkit-inner-spin-button,

.lp-cart-qty-control
.quantity .qty::-webkit-outer-spin-button {

    margin: 0;

    -webkit-appearance: none;
}


.lp-cart-single-qty {

    width: 42px;

    text-align: center;

    font-size: 12px;

    font-weight: 500;
}



/* =========================================================
   REMOVE
========================================================= */

.lp-cart-item-remove {

    display: flex;

    align-items: center;

    justify-content: center;
}


.lp-cart-remove {

    width: 34px;

    height: 34px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #657069;

    text-decoration: none;

    border-radius: 50%;

    transition:
        color 0.2s ease,
        background 0.2s ease;
}


.lp-cart-remove:hover {

    background:
        #f5eee7;

    color:
        #a64a38;
}


.lp-cart-remove svg {

    width: 20px;

    height: 20px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.7;

    stroke-linecap: round;

    stroke-linejoin: round;
}



/* =========================================================
   CART ACTIONS
========================================================= */

.lp-cart-actions {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 15px;

    padding:
        17px 17px 14px;
}


.lp-continue-shopping,
.lp-update-cart {

    min-height: 41px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    padding:
        9px 18px;

    border-radius: 5px;

    font-family:
        "Poppins",
        sans-serif;

    font-size: 11px;

    font-weight: 500;

    line-height: 1;

    text-decoration: none;

    cursor: pointer;
}


.lp-continue-shopping {

    border:
        1px solid #304238;

    background:
        #ffffff;

    color:
        #263a2f;
}


.lp-continue-shopping:hover {

    border-color:
        var(--lp-green);

    color:
        var(--lp-green);
}


.lp-update-cart {

    border:
        1px solid transparent !important;

    background:
        #dce9df !important;

    box-shadow:
        none !important;

    color:
        var(--lp-green) !important;
}


.lp-update-cart:hover {

    background:
        var(--lp-green) !important;

    color:
        #ffffff !important;
}



/* =========================================================
   COUPON
========================================================= */

.lp-cart-coupon {

    min-height: 75px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    margin:
        0 17px 17px;

    padding:
        14px 18px;

    border-radius: 7px;

    background:
        linear-gradient(
            100deg,
            #faf5ec 0%,
            #f6eee1 100%
        );
}


.lp-cart-coupon-title {

    display: flex;

    align-items: center;

    gap: 13px;

    flex: 0 0 auto;
}


.lp-cart-coupon-title strong {

    color: #2c332d;

    font-size: 12px;

    font-weight: 600;
}


.lp-cart-coupon-icon {

    width: 31px;

    height: 31px;

    color: #48544d;
}


.lp-cart-coupon-icon svg {

    width: 100%;

    height: 100%;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.6;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.lp-cart-coupon-form {

    min-width: 0;

    flex: 1;

    display: flex;

    justify-content: flex-end;
}


.lp-cart-coupon-form input {

    width: min(100%, 300px);

    height: 41px;

    margin: 0;

    padding:
        0 14px;

    border:
        1px solid #d8d9d4;

    border-right: 0;

    border-radius:
        6px 0 0 6px;

    outline: 0;

    background:
        #ffffff;

    box-shadow: none;

    color: #333833;

    font-family:
        "Poppins",
        sans-serif;

    font-size: 11px;
}


.lp-cart-coupon-form input:focus {

    border-color:
        var(--lp-green);
}


.lp-cart-coupon-form button {

    min-width: 94px;

    height: 41px;

    margin: 0;

    padding:
        0 18px;

    border:
        1px solid
        var(--lp-green) !important;

    border-radius:
        0 6px 6px 0;

    background:
        var(--lp-green) !important;

    box-shadow:
        none !important;

    color:
        #ffffff !important;

    font-family:
        "Poppins",
        sans-serif;

    font-size: 11px;

    font-weight: 600;

    cursor: pointer;
}


.lp-cart-coupon-form button:hover {

    background:
        var(--lp-green-dark) !important;
}



/* =========================================================
   ORDER SUMMARY
========================================================= */

.lp-cart-summary {

    position: sticky;

    top: 20px;

    padding:
        24px 23px 20px;

    border:
        1px solid var(--lp-border);

    border-radius: 10px;

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #fffdf9 100%
        );
}


.lp-cart-summary-header {

    display: flex;

    align-items: flex-start;

    justify-content: space-between;

    gap: 15px;

    margin-bottom: 20px;
}


.lp-cart-summary-header h2 {

    margin: 0;

    color: #25221f;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size: 26px;

    font-weight: 600;

    line-height: 1.15;
}


.lp-cart-summary-line {

    width: 64px;

    height: 2px;

    display: block;

    margin-top: 9px;

    background:
        var(--lp-gold);
}


.lp-cart-summary-note {

    color: #554f46;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size: 12px;

    font-style: italic;

    line-height: 1.35;

    text-align: right;
}


.lp-cart-summary-note span {

    color: var(--lp-gold);

    font-size: 17px;

    font-style: normal;
}



/* =========================================================
   SUMMARY ROWS
========================================================= */

.lp-cart-summary-row {

    display: flex;

    align-items: flex-start;

    justify-content: space-between;

    gap: 20px;

    margin-bottom: 14px;

    color: #454c47;

    font-size: 12px;

    line-height: 1.4;
}


.lp-cart-summary-row strong {

    max-width: 48%;

    color: #222722;

    font-size: 12px;

    font-weight: 600;

    text-align: right;
}


.lp-cart-discount-row strong {

    color:
        var(--lp-green);
}


.lp-cart-summary-divider {

    height: 1px;

    margin:
        19px 0;

    background:
        #d9dcd8;
}



/* =========================================================
   TOTAL
========================================================= */

.lp-cart-summary-total {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    margin-bottom: 20px;
}


.lp-cart-summary-total span {

    color: #24211e;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size: 25px;

    font-weight: 600;
}


.lp-cart-summary-total strong {

    color:
        var(--lp-green);

    font-size: 24px;

    font-weight: 700;
}



/* =========================================================
   CHECKOUT
========================================================= */

.lp-cart-checkout-button {

    width: 100%;

    min-height: 54px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    padding:
        12px 18px;

    border-radius: 7px;

    background:
        linear-gradient(
            100deg,
            #0d5137 0%,
            #087044 100%
        );

    color: #ffffff;

    font-size: 15px;

    font-weight: 500;

    text-decoration: none;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}


.lp-cart-checkout-button:hover {

    color: #ffffff;

    transform:
        translateY(-1px);

    box-shadow:
        0 7px 17px
        rgba(11, 75, 49, 0.16);
}


.lp-cart-checkout-button svg {

    width: 20px;

    height: 20px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.7;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.lp-cart-checkout-arrow {

    font-size: 20px;
}



/* =========================================================
   SUMMARY TRUST
========================================================= */

.lp-cart-summary-trust {

    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 0;

    margin-top: 23px;

    padding-top: 19px;

    border-top:
        1px solid var(--lp-border);
}


.lp-cart-summary-trust > div {

    min-width: 0;

    padding:
        0 9px;

    text-align: center;
}


.lp-cart-summary-trust
> div + div {

    border-left:
        1px solid var(--lp-border);
}


.lp-summary-trust-icon {

    width: 36px;

    height: 36px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin:
        0 auto 8px;

    color:
        var(--lp-green);
}


.lp-summary-trust-icon svg {

    width: 100%;

    height: 100%;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.5;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.lp-summary-gold {

    color:
        #cc7f10;
}


.lp-cart-summary-trust strong {

    display: block;

    color: #29302a;

    font-size: 9.5px;

    font-weight: 600;

    line-height: 1.3;
}


.lp-cart-summary-trust small {

    display: block;

    margin-top: 4px;

    color: #7b817c;

    font-size: 8.5px;

    line-height: 1.35;
}



/* =========================================================
   EMPTY CART
========================================================= */

.lp-cart-empty {

    padding:
        70px 30px;

    text-align: center;
}


.lp-cart-empty-icon {

    width: 60px;

    height: 60px;

    margin:
        0 auto 14px;

    color:
        var(--lp-green);
}


.lp-cart-empty-icon svg {

    width: 100%;

    height: 100%;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.5;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.lp-cart-empty h2 {

    margin:
        0 0 8px;

    color:
        var(--lp-green-dark);

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size: 30px;
}


.lp-cart-empty p {

    margin:
        0 0 19px;

    color:
        var(--lp-muted);

    font-size: 13px;
}


.lp-cart-empty-button {

    min-height: 43px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    padding:
        10px 22px;

    border-radius: 5px;

    background:
        var(--lp-green);

    color:
        #ffffff;

    font-size: 11px;

    font-weight: 600;

    text-decoration: none;
}



/* =========================================================
   RECOMMENDATIONS
========================================================= */

.lp-cart-recommendations {

    width: 100%;

    padding:
        0 0 27px;
}


.lp-cart-recommendations-heading {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 20px;

    margin-bottom: 13px;
}


.lp-cart-recommendations-heading h2 {

    margin: 0;

    color: #24211e;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size: 27px;

    font-weight: 600;

    line-height: 1.1;
}


.lp-cart-recommendations-right {

    display: flex;

    align-items: center;

    gap: 22px;
}


.lp-cart-recommendations-right > span {

    color: #5c554c;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size: 12px;

    font-style: italic;
}


.lp-cart-recommendations-right a {

    display: inline-flex;

    align-items: center;

    gap: 7px;

    color:
        var(--lp-green);

    font-size: 10.5px;

    font-weight: 600;

    text-decoration: none;
}



/* =========================================================
   RECOMMENDATION GRID
========================================================= */

.lp-cart-recommendations-grid {

    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 15px;
}


.lp-cart-rec-card {

    overflow: hidden;

    border:
        1px solid var(--lp-border);

    border-radius: 8px;

    background:
        #ffffff;

    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease,
        border-color 0.22s ease;
}


.lp-cart-rec-card:hover {

    transform:
        translateY(-3px);

    border-color:
        rgba(211, 162, 67, 0.55);

    box-shadow:
        0 8px 20px
        rgba(11, 75, 49, 0.06);
}


.lp-cart-rec-image {

    width: 100%;

    height: 205px;

    position: relative;

    overflow: hidden;

    display: block;

    background:
        #f6efe3;
}


.lp-cart-rec-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform 0.3s ease;
}


.lp-cart-rec-card:hover
.lp-cart-rec-image img {

    transform:
        scale(1.035);
}


.lp-cart-rec-badge {

    position: absolute;

    top: 9px;

    left: 9px;

    z-index: 2;

    padding:
        5px 9px;

    border-radius: 4px;

    background:
        var(--lp-green);

    color: #ffffff;

    font-size: 9px;

    font-weight: 600;

    line-height: 1;

    letter-spacing: 0.4px;
}


.lp-cart-rec-content {

    padding:
        11px 12px 12px;
}


.lp-cart-rec-title {

    min-height: 39px;

    display: -webkit-box;

    overflow: hidden;

    margin-bottom: 6px;

    color: #282d29;

    font-size: 13px;

    font-weight: 500;

    line-height: 1.35;

    text-decoration: none;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;
}


.lp-cart-rec-title:hover {

    color:
        var(--lp-green);
}


.lp-cart-rec-rating {

    display: flex;

    align-items: center;

    gap: 6px;

    margin-bottom: 6px;
}


.lp-cart-rec-rating span {

    color: #e6a427;

    font-size: 13px;

    line-height: 1;

    letter-spacing: -1px;
}


.lp-cart-rec-rating small {

    color: #8a908b;

    font-size: 10px;
}


.lp-cart-rec-price {

    min-height: 20px;

    margin-bottom: 9px;

    color: #252a26;

    font-size: 13px;

    font-weight: 600;
}


.lp-cart-rec-price del {

    margin-right: 5px;

    color: #999;

    font-weight: 400;
}


.lp-cart-rec-price ins {

    color:
        var(--lp-green);

    text-decoration: none;
}


.lp-cart-rec-button {

    width: 100%;

    min-height: 35px;

    display: flex;

    align-items: center;

    justify-content: center;

    padding:
        8px 10px;

    border:
        1px solid #cfc8be;

    border-radius: 4px;

    background: #ffffff;

    color:
        var(--lp-green);

    font-size: 10px;

    font-weight: 600;

    line-height: 1;

    letter-spacing:
        0.6px;

    text-decoration: none;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease;
}


.lp-cart-rec-button:hover {

    border-color:
        var(--lp-green);

    background:
        var(--lp-green);

    color: #ffffff;
}



/* =========================================================
   BENEFITS
========================================================= */

.lp-cart-benefits {

    width: 100%;

    padding:
        0 0 18px;
}


.lp-cart-benefits-inner {

    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    overflow: hidden;

    border:
        1px solid var(--lp-border);

    border-radius: 10px;

    background:
        linear-gradient(
            100deg,
            #fffdf9 0%,
            #faf5ec 100%
        );
}


.lp-cart-benefit {

    min-width: 0;

    display: flex;

    align-items: center;

    gap: 15px;

    padding:
        19px 24px;
}


.lp-cart-benefit
+ .lp-cart-benefit {

    border-left:
        1px solid var(--lp-border);
}


.lp-cart-benefit-icon {

    width: 49px;

    height: 49px;

    flex: 0 0 49px;

    color:
        var(--lp-green);
}


.lp-cart-benefit-icon svg {

    width: 100%;

    height: 100%;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.6;

    stroke-linecap: round;

    stroke-linejoin: round;
}


.lp-cart-benefit-gold {

    color:
        #cf820f;
}


.lp-cart-benefit h3 {

    margin:
        0 0 4px;

    color: #303630;

    font-size: 10px;

    font-weight: 600;

    line-height: 1.35;

    letter-spacing: 0.3px;
}


.lp-cart-benefit p {

    margin: 0;

    color: #69706a;

    font-size: 9.5px;

    line-height: 1.45;
}



/* =========================================================
   CART AJAX LOADING STATE
========================================================= */

.lp-cart-page.lp-cart-loading {

    position: relative;

    pointer-events: none;
}


.lp-cart-page.lp-cart-loading::before {

    content: "";

    position: fixed;

    inset: 0;

    z-index: 99990;

    background:
        rgba(255, 255, 255, 0.58);
}


.lp-cart-page.lp-cart-loading::after {

    content: "";

    width: 38px;

    height: 38px;

    position: fixed;

    top: 50%;

    left: 50%;

    z-index: 99991;

    margin:
        -19px 0 0 -19px;

    border:
        4px solid #d9e3dc;

    border-top-color:
        var(--lp-green);

    border-radius: 50%;

    animation:
        lpCartSpin 0.75s
        linear infinite;
}


@keyframes lpCartSpin {

    to {
        transform:
            rotate(360deg);
    }
}



/* =========================================================
   AJAX NOTICE
========================================================= */

.lp-cart-ajax-notice {

    width:
        calc(100% - 48px);

    max-width: 1380px;

    margin:
        12px auto;

    padding:
        11px 15px;

    border:
        1px solid #d9e1db;

    border-radius: 6px;

    background:
        #f4f8f5;

    color:
        var(--lp-green);

    font-size: 12px;

    font-weight: 500;
}


.lp-cart-ajax-notice.error {

    border-color:
        #e4c9c3;

    background:
        #fff4f1;

    color:
        #a04434;
}



/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1200px) {

    .lp-cart-layout {

        grid-template-columns:
            minmax(0, 1.65fr)
            minmax(300px, 0.9fr);
    }


    .lp-cart-table-head,
    .lp-cart-item {

        grid-template-columns:
            minmax(0, 1fr)
            75px
            105px
            80px
            48px;
    }


    .lp-cart-product-image {

        width: 95px;

        height: 95px;

        flex-basis: 95px;
    }


    .lp-cart-product {

        gap: 12px;
    }


    .lp-cart-rec-image {

        height: 180px;
    }


    .lp-cart-benefit {

        padding:
            17px 14px;
    }


    .lp-cart-benefit-icon {

        width: 42px;

        height: 42px;

        flex-basis: 42px;
    }

}



/* =========================================================
   TABLET
========================================================= */

@media (max-width: 950px) {

    .lp-cart-container {

        width:
            calc(100% - 32px);
    }


    .lp-cart-hero-inner {

        min-height: 165px;

        padding:
            25px 15px;
    }


    .lp-cart-hero-title h1 {

        font-size: 42px;
    }


    .lp-shipping-progress-inner {

        grid-template-columns:
            1fr;
    }


    .lp-shipping-progress-message {

        border-top:
            1px solid var(--lp-border);

        border-left: 0;
    }


    .lp-cart-layout {

        grid-template-columns:
            1fr;
    }


    .lp-cart-summary {

        position: static;
    }


    .lp-cart-recommendations-grid {

        grid-template-columns:
            repeat(2, 1fr);
    }


    .lp-cart-rec-image {

        height: 220px;
    }


    .lp-cart-benefits-inner {

        grid-template-columns:
            repeat(2, 1fr);
    }


    .lp-cart-benefit:nth-child(3) {

        border-left: 0;

        border-top:
            1px solid
            var(--lp-border);
    }


    .lp-cart-benefit:nth-child(4) {

        border-top:
            1px solid
            var(--lp-border);
    }

}



/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

    .lp-cart-container {

        width:
            calc(100% - 24px);
    }


    /* HERO */

    .lp-cart-hero-inner {

        min-height: 145px;

        padding:
            22px 5px;
    }


    .lp-cart-hero-title h1 {

        font-size: 36px;
    }


    .lp-cart-hero-title svg {

        width: 27px;

        height: 27px;
    }


    .lp-cart-hero-description {

        font-size: 13px;
    }



    /* SHIPPING */

    .lp-shipping-progress-main {

        align-items: flex-start;

        gap: 12px;

        padding:
            17px 15px;
    }


    .lp-shipping-icon {

        width: 39px;

        height: 39px;

        flex-basis: 39px;
    }


    .lp-shipping-icon svg {

        width: 38px;

        height: 38px;
    }


    .lp-shipping-progress-content h3 {

        font-size: 13px;
    }


    .lp-shipping-progress-row {

        align-items: flex-start;

        flex-direction: column;

        gap: 7px;
    }


    .lp-shipping-progress-track {

        width: 100%;

        flex: none;
    }


    .lp-shipping-progress-message {

        padding:
            15px;
    }



    /* Hide table heading */

    .lp-cart-table-head {

        display: none;
    }


    .lp-cart-products {

        padding:
            0 13px;
    }


    /* Cart item becomes card */

    .lp-cart-item {

        display: grid;

        grid-template-columns:
            92px minmax(0, 1fr);

        gap:
            10px 13px;

        padding:
            15px 0;
    }


    .lp-cart-product {

        grid-column:
            1 / -1;

        align-items: flex-start;
    }


    .lp-cart-product-image {

        width: 92px;

        height: 92px;

        flex-basis: 92px;
    }


    .lp-cart-product-name {

        font-size: 12px;
    }


    .lp-cart-product-description {

        font-size: 10px;
    }


    .lp-cart-item-price,
    .lp-cart-item-quantity,
    .lp-cart-item-total,
    .lp-cart-item-remove {

        position: relative;
    }


    .lp-cart-item-price {

        grid-column: 1;

        text-align: left;
    }


    .lp-cart-item-quantity {

        grid-column: 2;

        justify-content: flex-end;
    }


    .lp-cart-item-total {

        grid-column: 1;

        text-align: left;
    }


    .lp-cart-item-remove {

        grid-column: 2;

        justify-content: flex-end;
    }


    .lp-cart-item-price::before,
    .lp-cart-item-total::before {

        content:
            attr(data-label) ": ";

        color:
            #747c76;

        font-size: 10px;

        font-weight: 400;
    }



    /* ACTIONS */

    .lp-cart-actions {

        align-items: stretch;

        flex-direction: column;

        padding:
            15px 13px 12px;
    }


    .lp-continue-shopping,
    .lp-update-cart {

        width: 100%;
    }



    /* COUPON */

    .lp-cart-coupon {

        align-items: stretch;

        flex-direction: column;

        gap: 12px;

        margin:
            0 13px 14px;

        padding:
            14px;
    }


    .lp-cart-coupon-form {

        width: 100%;
    }


    .lp-cart-coupon-form input {

        width: 100%;

        max-width: none;
    }



    /* SUMMARY */

    .lp-cart-summary {

        padding:
            21px 17px 18px;
    }


    .lp-cart-summary-header h2 {

        font-size: 24px;
    }


    .lp-cart-summary-total span {

        font-size: 22px;
    }


    .lp-cart-summary-total strong {

        font-size: 21px;
    }



    /* Recommendations horizontal */

    .lp-cart-recommendations-heading {

        align-items: flex-start;

        flex-direction: column;

        gap: 7px;
    }


    .lp-cart-recommendations-right {

        width: 100%;

        justify-content:
            space-between;
    }


    .lp-cart-recommendations-grid {

        display: flex;

        gap: 11px;

        overflow-x: auto;

        overflow-y: hidden;

        padding:
            2px 1px 8px;

        scroll-snap-type:
            x mandatory;

        -webkit-overflow-scrolling:
            touch;

        scrollbar-width: none;
    }


    .lp-cart-recommendations-grid::-webkit-scrollbar {

        display: none;
    }


    .lp-cart-rec-card {

        width: 78%;

        min-width: 78%;

        flex:
            0 0 78%;

        scroll-snap-align:
            start;
    }


    .lp-cart-rec-image {

        height: 210px;
    }



    /* BENEFITS */

    .lp-cart-benefits-inner {

        grid-template-columns:
            1fr;
    }


    .lp-cart-benefit,
    .lp-cart-benefit:nth-child(3) {

        border-left: 0;

        border-top:
            1px solid
            var(--lp-border);
    }


    .lp-cart-benefit:first-child {

        border-top: 0;
    }


    .lp-cart-benefit {

        padding:
            16px 18px;
    }

}



/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

    .lp-cart-hero-title h1 {

        font-size: 33px;
    }


    .lp-cart-summary-note {

        display: none;
    }


    .lp-cart-summary-trust {

        grid-template-columns:
            1fr;
    }


    .lp-cart-summary-trust
    > div {

        display: flex;

        align-items: center;

        gap: 11px;

        padding:
            11px 0;

        text-align: left;
    }


    .lp-cart-summary-trust
    > div + div {

        border-top:
            1px solid var(--lp-border);

        border-left: 0;
    }


    .lp-summary-trust-icon {

        width: 32px;

        height: 32px;

        flex: 0 0 32px;

        margin: 0;
    }


    .lp-cart-rec-card {

        width: 84%;

        min-width: 84%;

        flex-basis: 84%;
    }

}

/* =========================================================
   QUANTITY - FINAL FIX
========================================================= */

.lp-cart-qty-control {

    display: inline-flex !important;

    align-items: center;

    justify-content: center;
}



/* WooCommerce quantity wrapper */

.lp-cart-qty-control .quantity {

    width: 44px !important;

    height: 36px !important;

    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

    opacity: 1 !important;

    visibility: visible !important;
}



/* Actual quantity number */

.lp-cart-qty-control
.quantity input.qty {

    width: 44px !important;

    min-width: 44px !important;

    height: 36px !important;

    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

    border: 0 !important;

    border-left:
        1px solid #e4e6e2 !important;

    border-right:
        1px solid #e4e6e2 !important;

    border-radius: 0 !important;

    outline: none !important;

    background:
        #ffffff !important;

    box-shadow:
        none !important;

    color:
        #222722 !important;

    opacity: 1 !important;

    visibility: visible !important;

    font-family:
        "Poppins",
        sans-serif !important;

    font-size: 13px !important;

    font-weight: 600 !important;

    line-height: 36px !important;

    text-align: center !important;

    -webkit-text-fill-color:
        #222722 !important;

    appearance: textfield;

    -moz-appearance: textfield;
}



/* Remove browser arrows */

.lp-cart-qty-control
.quantity input.qty::-webkit-inner-spin-button,

.lp-cart-qty-control
.quantity input.qty::-webkit-outer-spin-button {

    margin: 0;

    -webkit-appearance: none;
}



/* =========================================================
   DISABLED QUANTITY BUTTON
========================================================= */

.lp-cart-qty-control
button:disabled {

    background:
        #f3f3f1 !important;

    color:
        #b8bcb8 !important;

    opacity: 0.65 !important;

    cursor:
        not-allowed !important;

    pointer-events:
        none;
}



/* =========================================================
   APPLIED COUPON
========================================================= */

.lp-cart-coupon-applied {

    width: 100%;

    display: flex;

    align-items: center;

    gap: 13px;
}


.lp-cart-coupon-success-icon {

    width: 38px;

    height: 38px;

    flex: 0 0 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    color:
        var(--lp-green);
}


.lp-cart-coupon-success-icon svg {

    width: 100%;

    height: 100%;

    fill: none;

    stroke:
        currentColor;

    stroke-width: 1.8;

    stroke-linecap:
        round;

    stroke-linejoin:
        round;
}


.lp-cart-coupon-applied-content {

    display: flex;

    align-items: center;

    gap: 12px;

    flex-wrap: wrap;
}


.lp-cart-coupon-applied-content
> strong {

    color:
        #29322c;

    font-size: 12px;

    font-weight: 600;
}


.lp-cart-applied-codes {

    display: flex;

    flex-wrap: wrap;

    gap: 6px;
}


.lp-cart-applied-code {

    display: inline-flex;

    align-items: center;

    min-height: 28px;

    padding:
        5px 10px;

    border:
        1px solid
        rgba(11, 75, 49, 0.25);

    border-radius: 5px;

    background:
        #edf5f0;

    color:
        var(--lp-green);

    font-size: 10px;

    font-weight: 700;

    letter-spacing:
        0.5px;
}