/*==============================================================
#
# Putushart Premium Cart
# Layout
#
==============================================================*/

.putushart-cart-page {
    padding: 60px 0 50px;
    background: #faf8f5;
}

.putushart-cart {

    width: 100%;

}

.putushart-cart-header {

    text-align: center;
    margin-bottom: 60px;

}

.putushart-cart-subtitle {

    display: inline-block;

    margin-bottom: 12px;

    font-size: 13px;
    font-weight: 700;
    letter-spacing: .28em;

    text-transform: uppercase;

    color: #b78b44;

}

.putushart-cart-title {

    margin: 0;

    font-size: 48px;
    font-weight: 700;
    line-height: 1.1;

    color: #202020;

}

.putushart-cart-description {

    width: min(620px,100%);
    margin: 22px auto 0;

    font-size: 17px;
    line-height: 1.8;

    color: #666;

}

.putushart-cart-form {

    width: 100%;

}

.putushart-cart-layout {

    display: grid;

    grid-template-columns: minmax(0,1.9fr) 390px;

    gap: 60px;

    align-items: start;

}

.putushart-cart-products {

    display: flex;

    flex-direction: column;

    gap: 28px;

}

.putushart-cart-summary {

    position: sticky;

    top: 120px;

}

.putushart-summary-card {

    background: #ffffff;

    border-radius: 24px;

    padding: 28px;

    box-shadow:
        0 12px 40px rgba(0,0,0,.06);

}

.putushart-summary-header {

    margin-bottom: 20px;

}

.putushart-summary-title {

    margin: 6px 0 0;

    font-size: 30px;
    font-weight: 700;

}

.putushart-summary-subtitle {

    font-size: 12px;
    letter-spacing: .3em;
    font-weight: 700;

    color: #b78b44;

}

.putushart-summary-body {

    display: flex;

    flex-direction: column;

    gap: 12px;

}

.summary-row {

    display: flex;

    justify-content: space-between;

    align-items: flex-start;

    gap: 20px;

}

.summary-row span {

    color: #444;

}

.summary-total {

    margin-top: 12px;

    padding-top: 14px;

    border-top: 1px solid #ececec;

    font-size: 20px;

}

.putushart-summary-footer {

    margin-top: 20px;

}

.putushart-cart-actions {

    display: flex;

    justify-content: space-between;

    align-items: center;

    flex-wrap: wrap;

    gap: 20px;

    margin-top: 36px;

    padding-top: 28px;

    border-top: 1px solid #ececec;

}

/*==============================================================
  Desktop Layout Spacing
==============================================================*/

@media (min-width:1200px){

    .putushart-cart-layout{

        padding-left:24px;

        padding-right:24px;

        box-sizing:border-box;

        gap:48px;

    }

    .putushart-cart-products{

        padding-left:12px;

    }

    .putushart-cart-summary{

        padding-right:12px;

    }

}

/*==========================================================
  WooCommerce Notice Fix
==========================================================*/

.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error{

    position:relative;

    padding:18px 24px 18px 68px !important;

    overflow:visible;
}

.woocommerce-notices-wrapper .woocommerce-message::before,
.woocommerce-notices-wrapper .woocommerce-info::before,
.woocommerce-notices-wrapper .woocommerce-error::before{

    position:absolute !important;

    left:24px !important;
    top:50% !important;

    transform:translateY(-50%) !important;

    margin:0 !important;
}

.woocommerce-notices-wrapper{

    width:100%;
    max-width:1240px;

    margin:20 auto 35px;

    padding:0 20px;

    box-sizing:border-box;
}
