/* Consolidated Checkout Theme 1 CSS */
.candee-row {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    margin: 0 !important;
}

.container {
    width: 90%!important;
}
.candee-columns {
    box-sizing: border-box !important;
}

/* Checkout layout foundation.
 *
 * This file is the single source of truth for the real checkout layout.
 * The template keeps only a tiny inline critical-CSS layer for first paint,
 * but the desktop/mobile column split lives here so we do not keep stacking
 * inline patches on top of the stylesheet.
 */
#candeeCheckoutPage .content-form {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    flex-wrap: nowrap;
}

#candeeCheckoutPage .center-form {
    display: flex;
    justify-content: center;
    flex: 1 1 calc(58% - 0.5rem);
    min-width: 0;
}

/* Neutralize the shared Candee grid on the checkout shell.
 *
 * `scss/css/candee.css` still ships a float-based grid with default margins.
 * Checkout uses a flex-based shell, so we reset only the outer checkout
 * columns here instead of changing the global stylesheet.
 */
#candeeCheckoutPage .checkoutWrapper.seven.candee-columns,
#candeeCheckoutPage > .content-form > .five.candee-columns {
    margin-left: 0;
    float: none;
}

#candeeCheckoutPage .seven.candee-columns {
    width: 100% !important;
    float: none;
    min-width: 0;
}

#candeeCheckoutPage .five.candee-columns {
    flex: 0 0 calc(42% - 0.5rem);
    width: auto !important;
    min-width: 0;
    margin-left: 0;
    align-self: flex-start;
    height: fit-content;
}

#candeeCheckoutPage .form .candee-input-group {
    /* width: calc(50% - 0.5rem); */
    /* min-width: 280px; */
    margin: 0px 0px 25px 0px;
    height: auto;
    float: none;
}
#candeeCheckoutPage.candee #checkoutForm.form .init-materializer .candee-input-group input {
    height: auto!important;
    /* height: 0px!important; */
}

#candeeCheckoutPage .form .candee-input-group.title,
#candeeCheckoutPage .formTitle {
    width: 100%;
}

#candeeCheckoutPage .checkoutSidebar,
#candeeCheckoutPage #checkoutForm,
#candeeCheckoutPage .step-new-content .row {
    width: 100%;
}

#candeeCheckoutPage .step-new-content .row {
    margin: 0;
}

.candee form label.candee-file-upload > div, .candee .form label.candee-file-upload > div {
    display: flex!important;
    flex-direction: column;
}

@media (max-width: 768px) {
    #candeeCheckoutPage .content-form {
        flex-wrap: wrap;
    }

    #candeeCheckoutPage .center-form,
    #candeeCheckoutPage .five.candee-columns,
    #candeeCheckoutPage .form .candee-input-group {
        flex: 1 1 100%;
        width: 100% !important;
    }
}

.paymentWrapper .paymentType .checkboxes ul, .paymentWrapper .paymentType .checkboxes ul li{
    margin-bottom: 0px!important;
}

/* Improved initial layout to prevent jumping */
#candeeCheckoutPage {
    min-height: 80vh;
    opacity: 1;
    transition: opacity 0.4s ease-in-out;
    display: block;
}
#candeeCheckoutPage.loaded {
    opacity: 1;
}

.checkoutLoadingWrapper {
    min-height: 500px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-radius: 8px;
    margin: 20px 0;
    padding: 24px;
    width: 100%;
    padding-block: 1rem;
}


.product-form .product_date_div .product_date.invalid_date {
    border: 1px solid #ed0417 !important;
    outline: none !important;
}
.product-form .product_date_div .inputError.error-message {
    top: -14px !important;
}

.candee #checkoutForm.form div[data-step="instant_quote"] .candee-input-group {
    height: unset;
}

.candee #checkoutForm.form #dest_map {
    height: 15rem;
}

.nv_version {
    top: 25%
}

html {
    overflow-y: auto;
}

.nv_version .buttonWrapper {
    display: flex;
    border: unset !important;
}

.nv_version .confirmCancelMessageButton,
.nv_version .confirmOkMessageButton {
    border-radius: 5px;
    background: #F3F3F3;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.10), 1px 4px 5px rgba(0, 0, 0, 0.06);
}

.nv_version .buttonWrapper {
    right: 14px;
    bottom: 14px;
}

.nv_version .confirmOkMessageButton {
    margin-left: .5rem;
}

.nv_version button {
    color: var(--candee-color-text-secondary) !important;
    ;
}

.nv_version .confirmOkMessageButton,
.nv_version .candee-popup-header {
    background-color: var(--candee-primary) !important;
    color: var(--candee-color-text-secondary);
}

.paymentObject .candee-input-group.achAccountWrapper,
.paymentObject .candee-input-group.achRoutingWrapper
{
    width: 100%!important;
}

.candee #checkoutForm {
    min-height: 60vh;
}

#altForm,
.paymentTab {
    background-color: #f2f2f2;
    padding: 10px 10px;
    margin-bottom: 25px;
}

.achForm {
    padding-top: 30px;
}

.paymentTab.stripeForm {
    display: block;
}

.paymentTab.stripeForm,
.paymentTab.paypalForm {
    padding: 16px 20px;
}

#candeeCheckoutPage .stripeForm .twelve {
    width: 100%;
}

.stripeFormWrapper {
    max-width: 400px;
}

.sq-input {
    background: #ffffff;
    border: 1px solid #dddddd;
    font-size: 0.8rem;
    height: 40px !important;
    line-height: 40px !important;
    margin: 0;
    width: 100%;
}

#select2-checkoutDriverLicenseState-results li,
#select2-checkoutState-results li {
    text-transform: uppercase !important;
}

.shippingDescription {
    display: none;
}

body:has(div#candeeCheckoutPage) .stickyMessage .candee-popup-header,
body:has(div#candeeCheckoutPage) .confirmCancelMessageButton,
body:has(div#candeeCheckoutPage) .confirmOkMessageButton {
    text-transform: math-auto;
}

body:has(div#candeeCheckoutPage) a.stickyMessageButton.fakeButton.yellowBTN.background_1.candeeButtonAni1 {
    text-transform: capitalize;
}

.candee .form .ccCVVWrapper,
.candee .form .ccEXPWrapper {
    width: 48%;
}

.candee form .ccNumberWrapper {
    width: 98%;
}

.candee .checkoutSidebar {
    margin-bottom: 0px;
    width: 100%;
}

.candee .candee-input-group.autopay,
.candee .candee-input-group.savePayment {
    width: 100%;
    height: auto;
    min-height: 90px;
}

.candee-container .checkbox,
.candee-container .checkboxes ul {
    padding-left: 0 !important;
}

.paymentCheckboxLabel .icon-form-checkbox {
    margin-top: 2px;
}

.paymentCheckboxLabel {
    cursor: pointer;
}

.candee .form .candee-input-group.stripeFormWrapper {
    width: 48%;
    max-width: 48%;
    margin: 0;
}

.candee .form .candee-input-group.paypalAccountWrapper {
    margin: 0;
}

.mfp-container.candee-flex-center .mfp-content .white-popup.modernStickyMessage {
    overflow-y: hidden;
}

.mfp-container.candee-flex-center .mfp-content .white-popup.modernStickyMessage .message {
    max-height: 20rem;
    overflow-y: auto;
}

.candee-file-upload.disabled-label {
    pointer-events: none;
    opacity: 0.6;
}

@media (max-width: 768px) {
    .roWrapper>.candee-row {
        flex-direction: column;
    }
}

@media (max-width: 424px) {
    .candee #checkoutForm.form .candee-input-group {
        width: 100% !important;
    }
}

#group-account_information {
    height: 100%;
    padding-bottom: 0rem;
}

@media (max-width: 550px) {
    #group-account_information {
        height: 100%;
        padding-bottom: 0rem;
    }
}

@media (max-width: 400px) {
    .candee .form .candee-input-group.stripeFormWrapper {
        width: 100%;
        max-width: 100%;
        margin: 0;
    }
}

.candee #checkoutPayment .achTypesWrapper .checkbox-2 {
    top: 0 !important;
    height: 32px !important;
}

/* Legacy generic `.center-form` layout override retired.
 * The active checkout layout now lives in the scoped foundation block near the
 * top of this file to avoid cross-page selector collisions.
 */

#candeeCheckoutPage .payBillLineItems .candee-flex {
    grid-gap: 1rem;
    margin-bottom: .2rem;
    justify-content: flex-start;
}

#candeeCheckoutPage .payBillLineItems .candee-flex span:first-of-type:not(.formatted_currency) {
    width: 100%;
}

#checkoutForm .content-btn-actions #btnPrevious.disabled {
    background: #F3F3F3 !important;
}

input[type=date] {
    height: 38px;
    padding: 6px 10px;
    background-color: #fff;
    border: 1px solid #D1D1D1;
    border-radius: 4px;
    box-shadow: none;
}

.data-needed .inputError.error-message.product_date_Error.error {
    top: -13px !important;
}

.five.candee-columns div.container-supply,
div.content-payment,
.five.candee-columns div.content-cart-note {
    padding: 20px;
    border-radius: .5rem;
    font-size: 0.8rem;
    box-shadow: 0 6px 23px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

.five.candee-columns div.content-cart-note {
    font-size: unset;
}

.five.candee-columns div.content-cart-note p {
    margin-bottom: unset;
    padding-bottom: unset;
}

.candee .item-title {
    color: #444;
    text-align: left;
    font-size: 0.8rem;
}

.five.candee-columns div.shadow {
    box-shadow: unset;
}

.five.candee-columns div.shadow .unit-details {
    display: flex;
    flex-direction: column;
    grid-gap: 1rem;
}

.five.candee-columns .formTitle {
    font-size: 1rem;
    font-style: normal;
    font-weight: bold;
    text-align: left;
    text-transform: none;
}

.five.candee-columns #checkoutForm-submit {
    display: block;
    margin-top: 1rem;
}

#candeeCheckoutPage .unit-details .candee-row,
#candeeCheckoutPage .unit-details .unit-name {
    display: flex;
    flex-flow: row;
}

#candeeCheckoutPage .unit-details .candee-row .td.money.prodFeeCost,
#candeeCheckoutPage .unit-details .due-today {
    margin-left: auto;
}

#candeeCheckoutPage .unit-details .unit-name {
    align-items: center;
    padding: .5rem;
    border-bottom: 1px solid #F3F3F3;
}

#candeeCheckoutPage .unit-details .items {
    border-bottom: 1px solid #F3F3F3;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: 1rem;
}

#candeeCheckoutPage .unit-details .unit-name i {
    margin-left: .5rem;
    cursor: pointer;
    color: black;
}

#candeeCheckoutPage .unit-details .unit-name span i {
    margin-right: 5px;
    margin-left: unset;
    cursor: unset;
}

#candeeCheckoutPage .content-btn {
    text-align: center;
    margin-top: 2rem;
}

#candeeCheckoutPage .unit-details .items {
    display: none;
}

#candeeCheckoutPage .unit-details-content.active i.tsg-row-up,
#candeeCheckoutPage .unit-details-content:not(.active) i.tsg-row-down {
    display: block !important;
}

#candeeCheckoutPage .unit-details-content.active i.tsg-row-down,
#candeeCheckoutPage .unit-details-content i.tsg-row-up,
#candeeCheckoutPage .payBillLineItemsDueAtMoveinContent {
    display: none;
}

.candee-action-button .prodRemove {
    display: flex;
}

.unit-details-content .candee-action-button {
    display: flex;
    flex-direction: row;
    align-items: center;
}

#candeeCheckoutPage .unit-details .due-today {
    margin: 0px .3rem;
    margin-left: auto;

}

#candeeCheckoutPage .unit-details-content .payBillLineItemsDueAtMoveinContent .unit-total {
    text-align: center;
    margin-bottom: 1.5rem
}

.unit-details .prodRemove i,
.unit-details-content .tsg-row-down,
.unit-details-content .tsg-row-up {
    padding: 0px 8px;
    border-radius: 5px;
    background: #F3F3F3;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.10), 1px 4px 5px rgba(0, 0, 0, 0.06);
}

.unit-details-content .prodRemove i,
.unit-details .prodRemove i {
    color: black !important;
    margin-left: 0 !important;
}

#candeeCheckoutPage .unit-details-content .unit-total {
    text-align: right;
}

#candeeCheckoutPage .unit-information div .itemCard {
    display: flex;
    flex-flow: row;
}

#candeeCheckoutPage .unit-total.cartItemsTotal {
    padding-right: 2rem;
    padding: 40px;
    background-color: #F8FAFC;
}

.candee .cartItemsTotal {
    text-align: center;
    font-weight: bold;
    font-size: 1.5rem;
    line-height: 1rem;
    border-top: 1px solid #ddd;
    padding: 10px 10px;
}

#candeeCheckoutPage .form .candee-input-group.title,
.form .easy-autocomplete.title {
    border-bottom: 1px solid #dddddd;
    font-size: 1.4rem;
    line-height: 30px;
}

#candeeCheckoutPage .step-new-content {
    display: none;
}

#candeeCheckoutPage .step-new-content.active {
    display: block;
    width: 100%;
}

#candeeCheckoutPage .step-new-content .row {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
    column-gap: 1rem;
}

#candeeCheckoutPage div[data-step="review_order"].step-new-content .row {
    grid-gap: 1rem;
}

#candeeCheckoutPage .step-actions {
    text-align: end;
    margin-top: 2rem;
    width: 100%;
}

#candeeCheckoutPage .candee-file-upload .yellowBTN.background_1 {
    color: var(--candee-color-text)
}

#candeeCheckoutPage .div_candee_error {
    color: red
}

.candee-column {
    margin: 0px;
}

#candeeCheckoutPage .five.candee-columns {
    margin-left: 0px;
}

#checkoutForm .textAlignCenter.candeeLoadingWrapper,
.textAlignCenter.candeeLoadingWrapper {
    justify-content: center;
    align-items: center;
    display: flex;
    flex-flow: column;
    font-size: 2em;
}

#checkoutForm .textAlignCenter.candeeLoadingWrapper .fa.fa-spinner.fa-spin,
.textAlignCenter.candeeLoadingWrapper .fa.fa-spinner.fa-spin {
    font-size: 3em;
    margin-bottom: .5rem;
    color: var(--candee-primary)
}

#checkoutForm .step-actions .content-btn-actions {
    justify-content: center;
    align-items: baseline;
    display: flex;
    gap: 1rem;
}

.product-form .inputError.error-message {
    top: -24px !important;
    text-align: left;
}

.product-form .input.candee_invalid:not(.candee_error) .error-message {
    display: none !important;
}

.product-form select.candee_invalid.candee_error {
    border: 1px solid #ed0417 !important;
    outline: none !important;
}

#checkoutForm .content-btn-actions .btn.yellowBTN {
    color: var(--candee-color-text) !important;
}

#checkoutForm .btnNext.next-step,
#checkoutForm .btnPrevious.preview-step {
    width: 48%;
    text-align: center;
    border-radius: 4px;
}

#checkoutForm embed.lease-pdf,
#checkoutForm object.lease-pdf,
#checkoutForm .lease-pdf {
    width: 100%;
    height: 25rem;
}

#checkoutForm .lease-pdf-input .candee-input-group,
#checkoutForm .lease-pdf-checkbox .candee-input-group {
    width: 100%;
}

#checkoutForm .lease-pdf-input .candee-input-group .canvas-signature {
    margin-right: 0px;
}

#checkoutForm .lease-pdf-input .candee-input-group canvas {
    height: 10rem !important;
}

.row.pageContent {
    padding-top: unset;
}

.hcaptcha {
    display: block;
    text-align: center;
}

.product-form .product_date:disabled {
    cursor: unset;
}

.candee .lease-container {
    width: 100%;
}

.candee .lease-container input[type=checkbox],
.candee .lease-container input[type=radio] {
    display: block;
    width: unset;
    margin-bottom: unset;
    margin-right: .5rem;
}

.data-needed {
    border-bottom: unset !important;
    border: 1px solid red;
}

.candee .lease-container p {
    margin-bottom: unset;
}

#candeeCheckoutPage .lease-loading-state,
#candeeCheckoutPage .lease-signature-summary {
    width: 100%;
}

#candeeCheckoutPage .lease-loading-header {
    display: flex;
    flex-direction: column;
    gap: .75rem;
    margin-bottom: 1rem;
}

#candeeCheckoutPage .lease-loading-summary {
    display: flex;
    flex-direction: column;
    gap: .2rem;
    padding: 1rem 1.25rem;
    border: 1px solid #e6ebf0;
    border-radius: 14px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

#candeeCheckoutPage .lease-loading-summary span {
    font-size: 1rem;
    font-weight: 700;
    color: #162130;
}

#candeeCheckoutPage .lease-loading-summary small {
    color: #607086;
}

#candeeCheckoutPage .lease-loading-card {
    display: flex;
    flex-direction: column;
    gap: .9rem;
    padding: 1.2rem;
    border-radius: 18px;
    border: 1px solid #edf1f5;
    background: #fff;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .06);
}

#candeeCheckoutPage .lease-shimmer {
    position: relative;
    overflow: hidden;
    border-radius: 999px;
    background: #edf2f7;
}

#candeeCheckoutPage .lease-shimmer::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-100%);
    background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.75) 50%, rgba(255,255,255,0) 100%);
    animation: candeeLeaseShimmer 1.4s ease-in-out infinite;
}

#candeeCheckoutPage .lease-shimmer-title {
    width: 42%;
    height: 1rem;
}

#candeeCheckoutPage .lease-shimmer-line {
    width: 100%;
    height: .85rem;
}

#candeeCheckoutPage .lease-shimmer-line.short {
    width: 68%;
}

#candeeCheckoutPage .lease-shimmer-signature {
    width: 100%;
    height: 5.2rem;
    border-radius: 16px;
}

#candeeCheckoutPage .lease-signature-summary {
    display: flex;
    flex-direction: column;
    gap: .8rem;
    margin: 1rem 0;
    padding: 1rem 1.15rem;
    border-radius: 16px;
    background: linear-gradient(180deg, #ffffff 0%, #f7fafc 100%);
    border: 1px solid #edf2f7;
}

#candeeCheckoutPage .lease-summary-metrics {
    display: flex;
    gap: .75rem;
    flex-wrap: wrap;
}

#candeeCheckoutPage .lease-summary-pill {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .45rem .8rem;
    border-radius: 999px;
    background: #eef4fb;
    color: #17324f;
    font-size: .88rem;
    font-weight: 600;
}

#candeeCheckoutPage .lease-summary-next {
    color: #475569;
    font-size: .92rem;
}

#candeeCheckoutPage .lease-summary-next strong {
    color: #0f172a;
}

#candeeCheckoutPage .lease-summary-progress-bar {
    width: 100%;
    height: .5rem;
    border-radius: 999px;
    background: #e7edf4;
    overflow: hidden;
}

#candeeCheckoutPage .lease-summary-progress-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #1f9d55 0%, #32c36c 100%);
    transition: width .25s ease;
}

#candeeCheckoutPage .lease-signature-required {
    position: relative;
    border: 1px solid transparent;
    border-radius: 14px;
    padding: .75rem;
    transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

#candeeCheckoutPage .lease-signature-pending {
    background: #fffdf3;
    border-color: #f6d56f;
}

#candeeCheckoutPage .lease-signature-complete {
    background: #f0fff4;
    border-color: #86efac;
}

#candeeCheckoutPage .lease-signature-next {
    box-shadow: 0 0 0 3px rgba(59, 130, 246, .12);
}

#candeeCheckoutPage .lease-shortcode-manager-signature {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: .35rem .75rem;
    border-radius: 999px;
    background: #e8eef5;
    color: #334155;
    font-style: italic;
}

#candeeCheckoutPage .lease-shortcode-initials-input {
    text-transform: uppercase;
    font-weight: 700;
    text-align: center;
}

@keyframes candeeLeaseShimmer {
    100% {
        transform: translateX(100%);
    }
}

.product_name,
.catTitle {
    text-transform: uppercase;
}

.content-unit-note {
    margin-top: 1rem;
}

.product-detail {
    display: flex;
}

.product-detail .product_img {
    width: 40%;
    height: 100%;
    padding-top: 1rem;
}

.content-unit-note div.unitNotes.notesDiv {
    padding: 0px;
}

div.unitNotes.notesDiv ul {
    max-height: 2rem;
    overflow-y: hidden;
}

.unitNotes.notesDiv ul.show {
    max-height: unset;
    overflow-y: unset;
}

.show-more-note,
.show-less-note {
    cursor: pointer;
    text-decoration: underline;
    color: blue
}

.content-unit-note:has(ul) .show-less-note,
.content-unit-note:has(ul.show) .show-more-note {
    display: none;
}

.content-unit-note:has(ul) .show-more-note,
.content-unit-note:has(ul.show) .show-less-note {
    display: block;
}

.content-unit-note ul li {
    margin-left: 0px;
}

.lease-pdf-checkbox.init-materializer .label-checkbox span {
    font-size: .8rem !important;
}
#candeeCheckoutPage .form .candee-input-group.checkoutSidebar{
    width: 100%!important;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
    
    div[data-step=review_order] .row .unit-details {
        grid-template-columns: 1fr;
        row-gap: 1rem;
    }

    div[data-step=review_order] .row .unit-details .content{
        margin-left: 0rem;
    }
    div[data-step=review_order] .row .unit-details .content .details{
        border-left: none!important;
    }

    .candee .form .candee-input-group.date_dropdown {
        min-width: 200px;
    }

    .checkoutWrapper.seven.candee-columns.background-white {
        margin-right: 4% !important;
    }

    #acceptableCards,
    .lease-pdf-input {
        text-align: left !important;
    }
}

.unit-name .product_name {
    font-weight: bold;
    text-wrap: nowrap;
    font-size: 1rem;
    text-overflow: ellipsis;
    overflow: hidden;
}

.step-new-content .row .unit-details .item {
    padding: 0px;
    width: 100%;
}

.step-new-content .row .unit-details .item .prodRemove {
    margin-left: auto;
}

.unit-details .unitFeatureItem {
    max-width: 100px;
}

.product-detail .product_name_bold,
.items .product_name {
    font-size: 1rem;
    color: green;
    font-weight: bold;
}

.unit-name .due-today {
    color: bold;
    color: #097A32;
}

.product-detail div {
    width: 100%;
    margin-top: 0.5rem;
}

.items .content-features .unitFeatureItem span.candee-icon {
    margin-right: .4rem;
}

.candee .items .unitFeatureItem {
    padding-top: unset;
    margin-right: unset;
    text-align: left;
    width: 100%
}

.candee .items .content-features {
    columns: 2;
}

.product-detail,
.content-features {
    margin-bottom: 1rem;
}

.product-detail-div {
    border-left: 1px solid #F3F3F3;
    padding-left: 0.7rem;
    margin-left: 0.7rem;
}

.content-supply {
    display: flex;
    flex-flow: row;
    grid-gap: 1rem;
    overflow-x: auto;
    padding: 0.5rem;
}

.content-supply .supply {
    display: flex;
    flex-direction: column;
    min-width: 12rem;
    width: 12rem;
    border-radius: 0.4rem;
    box-shadow: 0 6px 6px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

.content-supply .supply .content {
    padding: 0.5rem;
    display: flex;
    flex-direction: column;
    padding-bottom: 0px;
    height: 100%;
}

.content-supply .supply .product_description {
    margin-bottom: auto;
}

.content-button-portale {
    display: flex;
    width: 100%;
    padding-top: 1rem;
    gap: .5rem;
}

.content-supply .supply .btn {
    border-radius: 0 0 0.25rem 0.25rem !important;
    margin-top: auto;
}

.candee .form .candee-input-group.password ul li .item-title,
#billingCCForm ul li .item-title,
#savePaymentCheckboxWrapper ul li .item-title {
    line-height: 25px !important;
}

.content-supply .supply .btn:hover {
    transform: unset;
}

.product-detail-div.product {
    display: flex;
    flex-direction: column;
}

.product-detail-div.product div {
    margin: 0px;
}

.quantity-content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: .5rem;
}

.quantity-less {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

.quantity-more {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.quantity-more,
.quantity-less {
    background: #F3F3F3;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

input.quantity-input::-webkit-outer-spin-button,
input.quantity-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
}

.quantity-input {
    margin: 0px;
    text-align: center;
    border: 0px !important;
}

/* Firefox */
input[type=number].quantity-input {
    -moz-appearance: textfield;
    appearance: textfield;
}

.form-insurance {
    margin-bottom: 1.5rem;
}

.form-insurance .input {
    margin-bottom: 1rem;
    width: 100% !important
}

.form-insurance input {
    margin: 0px;
}

#checkoutTerms h4 {
    font-size: 1rem;
}

.product-form .candee-input-group,
.product-form .content-date {
    position: relative;
}

.product-form .clearable {
    position: absolute;
    right: 0;
    top: 34px;
    padding: 0 8px;
    font-style: normal;
    font-size: 1.2em;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
}

.product-form .product_date,
.product-form .provider_start_date,
.product-form .provider_end_date {
    cursor: pointer;
}

.content-supply .star-ratings-css-top {
    color: #FFA726;

}

.candee .star-ratings-css-top .supply.added {
    border: 1px solid green;
}

.candee form label.candee-file-upload,
.candee .form label.candee-file-upload {
    border-radius: 4px;
}

.candee form label.candee-file-upload input[type=file],
.candee .form label.candee-file-upload input[type=file] {
    border-radius: 4px;
}

.content-supply .product_image {
    height: 4rem;
}

.candee.rating {
    margin-top: .3rem;
}

.product-detail .product_price {
    text-align: right;
}

.product-detail .content-btn-supply {
    text-align: end;
}

.product-detail .updateSupply {
    border-radius: 4px;
}

.candee-file-upload-button {
    color: red !important;
}

.product_date_div label,
.content-coupon label {
    margin-bottom: unset;
}

.product-form fieldset,
.product-form input,
.product-form select,
.product-form textarea {
    margin-bottom: .8rem;
}

.product-form select.candee_error.candee_invalid {
    margin-bottom: 1.5rem;
}

.step-new-content .row .payment-row,
.step-new-content .row .units-row {
    width: 100%;
}

.form-insurance {
    border-color: red;
    padding: 5px;
    border-style: solid;
}

#text-candee-loader {
    max-width: 20rem;
    line-height: 2rem;
}

.td.item_discount_id,
.td.item_discount_amount {
    color: green;
    font-weight: bold;
}

.supply .candee img {
    max-width: 60%;
    display: block;
    margin-left: 20%;
}

.content-btn-actions {
    display: flex;
}

.content-btn-actions.responsive {
    display: none;
}

.hcaptchaError {
    text-align: center;
    color: #ed0417;
}

.candee .form .candee-input-group input[type=text]:not(.init-materializer *),
.candee .form .candee-input-group input[type=password]:not(.init-materializer *) {
    height: 35px !important;
    line-height: 40px !important;
    line-height: 25px !important;
    border-radius: 0px;
    border-bottom: 1px solid #ccc9c9 !important;
    border-style: none;
    background: none;
}

.candee-input-group .clearable {
    top: 32px;
}

.init-materializer .checkboxes [type=checkbox]+span:not(.lever) {
    padding-left: 25px;
}

#ccCheckbox {
    margin-right: 1rem
}

#candeeCheckoutPage .form .candee_error input {
    border: unset !important;
    border-bottom: 1px solid #ed0417 !important;
}

.candee .mediumInfo {
    font-size: 0.8rem;
}

.candee .form #candeeCheckoutPage .candee-input-group label {
    margin-bottom: -3px;
}

#altForm,
.paymentTab {
    background-color: transparent;
}

#candeeCheckoutPage label {
    font-size: 0.7rem;
}

.candee .form .candee_error .error-message {
    font-size: 0.6rem !important;
}

.candee .unitFeatureItem {
    font-size: 0.7rem;
}

.product-detail div {
    margin-top: 0.1rem;
}

.candee .form .candee-input-group input[type=text]:not(.init-materializer *) {
    height: 35px !important;
    line-height: 40px !important;
    line-height: 25px !important;
    border-radius: 0px;
    border-bottom: 1px solid #ccc9c9 !important;
    border-style: none;
    background: none;
}

.bodyWrapper {
    background-color: #F3F3F3;
}

.five.candee-columns {
    background-color: #fff;
}

.checkoutWrapper.seven.candee-columns.background-white {
    background-color: #fff;
}

.candee-container {
    max-width: 1650px;
}

.checkoutWrapper.seven.candee-columns.background-white .checkoutSidebar {
    padding: 1rem;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);
}

.five.candee-columns {
    padding: 1rem;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);
}

#pinnacleMainContent {
    padding: 0px;
}

.candee .form .candee-input-group .clearable,
.candee .form .easy-autocomplete .clearable {
    position: absolute;
    right: 0;
    top: 1.3rem;
    padding: 0 8px;
    font-style: normal;
    font-size: 1em;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #dddddd;
    cursor: pointer;
}

/*
 * Keep checkout validation feedback inside the input shell instead of letting
 * the icons fall into normal document flow.
 *
 * The shared Candee stylesheet only colors `.valid-ico` / `.errorico`, so the
 * checkout template owns the positioning needed by the SSR renderer.
 */
#candeeCheckoutPage .init-materializer .input-field {
    position: relative;
}

#candeeCheckoutPage .init-materializer .input-field .errorico,
#candeeCheckoutPage .init-materializer .input-field .valid-ico {
    position: absolute;
    top: 1rem;
    right: 0.25rem;
    display: flex;
    align-items: center;
    line-height: 1;
    pointer-events: none;
    z-index: 2;
}

#candeeCheckoutPage .init-materializer .input-field .errorico i:before {
    color: #f44336;
}

#candeeCheckoutPage .init-materializer .input-field .valid-ico i:before {
    color: #4caf50;
}

#candeeCheckoutPage .init-materializer .candee-input-group.date_dropdown .dateDropdownWrapper  {
    width: 100%;
    display: flex;
    flex-direction: column;
}

#candeeCheckoutPage .candee-select2-shell {
    position: relative;
    display: block;
    min-height: 2.65rem;
    overflow: hidden;
}

#candeeCheckoutPage .candee-select2-shell-inner.candee-select2-ready {
    display: contents;
}

#candeeCheckoutPage .candee-select2-shell:not(.candee-select2-ready)::before {
    content: '';
    display: block;
    width: 100%;
    height: 3rem;
    margin-top: -6px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

#candeeCheckoutPage .candee-select2-shell:not(.candee-select2-ready) > select.select2 {
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 3rem;
    opacity: 0;
    pointer-events: none;
}

#candeeCheckoutPage .candee-select2-shell:not(.candee-select2-ready) .errorico,
#candeeCheckoutPage .candee-select2-shell:not(.candee-select2-ready) .valid-ico {
    display: none !important;
}

#candeeCheckoutPage .form .candee-input-group.title,
.form .easy-autocomplete.title {
    font-size: 1rem;
}

.candee-input-group.title.candee-form-field-group {
    display: flex;
    border-bottom: 1px solid #dddddd;
    margin-bottom: 2.5rem;
    padding-bottom: 1rem;
    align-items: center;
    /* flex: 1; */
}

.tsg-shopping_cart:before {
    display: block;
}

.row .unit-details .content span.title-content {
    text-transform: capitalize;
}

.cart-continue-shopping {
    margin-left: auto;
    font-style: normal;
    text-transform: none;
    line-height: 30px;
    text-decoration: underline;
    font-size: .8rem !important;
    text-wrap-mode: nowrap;
}


.cart-continue-shopping .tsg-shopping_cart {
    margin-right: .2rem;
    color: #000;
}

.canvas-signature {
    margin-right: 1rem;
}

#candeeCheckoutPage .lease_content_info {
    display: flex;
    flex-direction: row;
}

#candeeCheckoutPage .lease_content_info .lease_unit_name {
    margin-right: auto;
    margin-top: 1rem;
}

#candeeCheckoutPage .lease_content_info .lease_unit_number {
    font-style: italic;
}

#candeeCheckoutPage .lease-container .signature-pad signature-text-clear {
    margin-top: 1rem;
}

#candeeCheckoutPage .lease-container table td {
    width: 50%;
}

@media (min-width: 480px) and (max-width: 768px) {
    .product-detail {
        flex-wrap: wrap;
    }

    .product-detail .product_img {
        width: 100%;
    }

    .product-detail-div {
        border-left: unset;
        padding-left: 0px;
        margin-left: 0px;
    }
}

@media (max-width: 768px) {
    .content-btn-actions,
    #checkoutForm .step-actions {
        display: none !important;
    }

    .hcaptcha.responsive:not(.hidden) {
        display: block;
    }

    .content-btn-actions.responsive {
        margin-top: 1rem;
        display: flex !important;
    }

    .step-new-content .row,
    .step-new-content .row .unit-details {
        grid-template-columns: unset;
    }

    #candeeCheckoutPage div[data-step=lease_unit].step-new-content .row {
        flex-wrap: nowrap;
        padding: 0px;
    }

    #candeeCheckoutPage div[data-step=lease_unit].step-new-content .lease-container {
        margin: inherit;
        padding: .5rem;
    }

    #candeeCheckoutPage div[data-step=review_order].step-new-content .row {
        padding: 0px;
    }

    #candeeCheckoutPage .unit-total.cartItemsTotal {
        padding: 20px;
    }

    .candee .cartItemsTotal {
        font-size: 1.2rem;
        line-height: 1.5rem;
    }

    #candeeCheckoutPage .unit-details .unitFeatureItem {
        max-width: 78px;
    }

    .payBillLineItems .td.prodFeeDesc {
        padding-right: 0.5rem;
    }

    .step-new-content .row .unit-details .image.photoPopup {
        max-width: 40%;
    }

    .step-new-content .row .unit-details .content {
        margin-left: 0px;
    }

    .unit-details-content .tsg-row-down,
    .unit-details-content .tsg-row-up {
        padding-top: 0px;
        padding-bottom: 0px;
    }

    #candeeCheckoutPage .content-btn-actions.responsive {
        gap: 0rem;
    }

    #candeeCheckoutPage #btnPrevious {
        margin-right: 1rem;
    }

    #candeeCheckoutPage .image_unit {
        display: flex;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    #candeeCheckoutPage .lease-container table tr,
    #candeeCheckoutPage .lease-container table td {
        display: inline-block;
    }

    #candeeCheckoutPage .lease-container table td {
        width: 100%;
    }

    .candee.loader .loaderText {
        min-width: 19rem !important;
    }

    .candee.loader .sliderWrapper {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}

@media (max-width: 420px) {
    .step-new-content .row .unit-details {
        grid-template-columns: unset
    }

    .step-new-content .row .unit-details div.content div.details {
        border-left: unset;
        padding-left: 0px;
    }

    div[data-step="review_order"].step-new-content.active .row {
        padding: 0px
    }

    div[data-step=review_order] .row .payment-details .payment-details-data {
        flex-direction: column;
        align-items: flex-start;
    }

    .form {
        margin-bottom: unset;
    }
}

.step-new-content .row .unit-details.shadow {
    padding-top: 1rem !important;
}

.content-payment span.product_name {
    margin-right: auto;
}

.step-new-content .row .unit-details .content span.title {
    margin-right: auto;
}

.step-actions .continue-shopping {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 6%;
    padding: 0rem 1.6rem;
}

.lease_unit_name {
    font-weight: bold;
    font-size: 1.5rem;
}

.color_green {
    font-weight: bold;
}

.disbaled-btn-supply {
    pointer-events: none;
    opacity: .3;
}

.content-supply-product-detail {
    margin-top: .5rem;
    display: flex;
}

.content-supply-product-detail .product_price {
    margin-top: 0px !important;
    margin-left: auto;
    width: unset;
}

.content-supply-product-detail .supplies-avaible {
    color: red;
    text-transform: lowercase;
}

.content-supply-product-detail .supplies-avaible::first-letter {
    text-transform: capitalize;
}

.product-detail .content-supply-product-detail {
    margin: 1rem 0px;
}

.unit-details .divNoticesWarning {
    height: 100%;
}

/* Dynamic handling via classes */
@media (max-width: 768px) {
    .mobile-above .content-btn-actions,
    .mobile-above #checkoutForm .step-actions {
        display: block !important;
    }

    .mobile-above #candeeCheckoutPage .content-btn-actions.responsive,
    .mobile-above #candeeCheckoutPage > .five.candee-columns > .candee-input-group.title.candee-form-field-group {
        display: none !important;
    }

    .mobile-above #checkoutForm {
        margin-bottom: .5rem;
    }

    .mobile-above .checkoutSidebar .content-payment {
        margin-bottom: 3rem;
    }
}

/*
 * Checkout namespace hardening.
 *
 * `scss/css/candee.css` still ships broad selectors like `.candee .cartItemsTotal`
 * and shared form/select2 rules. The checkout stylesheet now loads as a normal
 * asset instead of an inline tail block, so we re-scope the collision-prone
 * pieces to `#candeeCheckoutPage` and the checkout page shell to keep the
 * reviewed checkout visuals intact.
 */
body:has(#candeeCheckoutPage) .bodyWrapper {
    background-color: #F3F3F3;
}

body:has(#candeeCheckoutPage) .candee-container {
    max-width: 1650px;
}

body:has(#candeeCheckoutPage) #pinnacleMainContent {
    padding: 0px;
}

#candeeCheckoutPage .checkoutWrapper.seven.candee-columns.background-white,
#candeeCheckoutPage .five.candee-columns {
    background-color: #fff;
}

#candeeCheckoutPage .checkoutWrapper.seven.candee-columns.background-white .checkoutSidebar,
#candeeCheckoutPage .five.candee-columns {
    padding: 1rem;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);
}

#candeeCheckoutPage .five.candee-columns div.container-supply,
#candeeCheckoutPage div.content-payment,
#candeeCheckoutPage .five.candee-columns div.content-cart-note {
    padding: 20px;
    border-radius: .5rem;
    font-size: 0.8rem;
    box-shadow: 0 6px 23px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

#candeeCheckoutPage .five.candee-columns div.content-cart-note {
    font-size: unset;
}

#candeeCheckoutPage .five.candee-columns div.content-cart-note p {
    margin-bottom: unset;
    padding-bottom: unset;
}

#candeeCheckoutPage .five.candee-columns div.shadow {
    box-shadow: unset;
}

#candeeCheckoutPage .five.candee-columns div.shadow .unit-details {
    display: flex;
    flex-direction: column;
    grid-gap: 1rem;
}

#candeeCheckoutPage .five.candee-columns .formTitle {
    font-size: 1rem;
    font-style: normal;
    font-weight: bold;
    text-align: left;
    text-transform: none;
}

#candeeCheckoutPage .five.candee-columns #checkoutForm-submit {
    display: block;
    margin-top: 1rem;
}

#candeeCheckoutPage .cartItemsTotal {
    text-align: center;
    font-weight: bold;
    font-size: 1.5rem;
    line-height: 1rem;
    border-top: 1px solid #ddd;
    padding: 10px 10px;
}

#candeeCheckoutPage .unit-total.cartItemsTotal {
    padding-right: 2rem;
    padding: 40px;
    background-color: #F8FAFC;
}

#candeeCheckoutPage .unit-details .prodRemove i,
#candeeCheckoutPage .unit-details-content .tsg-row-down,
#candeeCheckoutPage .unit-details-content .tsg-row-up {
    padding: 0px 8px;
    border-radius: 5px;
    background: #F3F3F3;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.10), 1px 4px 5px rgba(0, 0, 0, 0.06);
}

#candeeCheckoutPage .unit-details-content .prodRemove i,
#candeeCheckoutPage .unit-details .prodRemove i {
    color: black !important;
    margin-left: 0 !important;
}

#candeeCheckoutPage .candee-action-button .prodRemove,
#candeeCheckoutPage .unit-details-content .candee-action-button {
    display: flex;
    flex-direction: row;
    align-items: center;
}

#candeeCheckoutPage .form .candee-input-group.title,
#candeeCheckoutPage .form .easy-autocomplete.title {
    border-bottom: 1px solid #dddddd;
    font-size: 1rem;
    line-height: 30px;
}

#candeeCheckoutPage .candee-input-group.title.candee-form-field-group {
    display: flex;
    border-bottom: 1px solid #dddddd;
    margin-bottom: 2.5rem;
    padding-bottom: 1rem;
    align-items: center;
}

#candeeCheckoutPage .form .candee-input-group .clearable,
#candeeCheckoutPage .form .easy-autocomplete .clearable,
#candeeCheckoutPage .candee-input-group .clearable {
    position: absolute;
    right: 0;
    top: 1.3rem;
    padding: 0 8px;
    font-style: normal;
    font-size: 1em;
    user-select: none;
    color: #dddddd;
    cursor: pointer;
}

#candeeCheckoutPage .form .candee-input-group input[type=email]:not(.init-materializer *),
#candeeCheckoutPage .form .candee-input-group input[type=number]:not(.init-materializer *),
#candeeCheckoutPage .form .candee-input-group input[type=password]:not(.init-materializer *),
#candeeCheckoutPage .form .candee-input-group input[type=search]:not(.init-materializer *),
#candeeCheckoutPage .form .candee-input-group input[type=tel]:not(.init-materializer *),
#candeeCheckoutPage .form .candee-input-group input[type=text]:not(.init-materializer *),
#candeeCheckoutPage .form .candee-input-group input[type=url]:not(.init-materializer *),
#candeeCheckoutPage .form .candee-input-group textarea:not(.init-materializer *),
#candeeCheckoutPage .form .easy-autocomplete input[type=email]:not(.init-materializer *),
#candeeCheckoutPage .form .easy-autocomplete input[type=number]:not(.init-materializer *),
#candeeCheckoutPage .form .easy-autocomplete input[type=password]:not(.init-materializer *),
#candeeCheckoutPage .form .easy-autocomplete input[type=search]:not(.init-materializer *),
#candeeCheckoutPage .form .easy-autocomplete input[type=tel]:not(.init-materializer *),
#candeeCheckoutPage .form .easy-autocomplete input[type=text]:not(.init-materializer *),
#candeeCheckoutPage .form .easy-autocomplete input[type=url]:not(.init-materializer *) {
    height: 35px !important;
    line-height: 25px !important;
    border-radius: 0px;
    border-bottom: 1px solid #ccc9c9 !important;
    border-style: none;
    background: none;
}

#candeeCheckoutPage .form .candee_error .error-message {
    font-size: 0.6rem !important;
}

#candeeCheckoutPage label {
    font-size: 0.7rem;
}

#candeeCheckoutPage .item-title,
#candeeCheckoutPage .mediumInfo,
#candeeCheckoutPage .unitFeatureItem {
    font-size: 0.8rem;
}

#candeeCheckoutPage .item-title {
    color: #444;
    text-align: left;
}

#candeeCheckoutPage .product-form .inputError.error-message {
    top: -24px !important;
    text-align: left;
}

#candeeCheckoutPage .product-form .input.candee_invalid:not(.candee_error) .error-message {
    display: none !important;
}

#candeeCheckoutPage .product-form select.candee_invalid.candee_error {
    border: 1px solid #ed0417 !important;
    outline: none !important;
}

#candeeCheckoutPage .product-form .candee-input-group,
#candeeCheckoutPage .product-form .content-date {
    position: relative;
}

#candeeCheckoutPage .product-form .clearable {
    position: absolute;
    right: 0;
    top: 34px;
    padding: 0 8px;
    font-style: normal;
    font-size: 1.2em;
    user-select: none;
    cursor: pointer;
}

#candeeCheckoutPage .init-materializer .select2-container .select2-selection--single {
    height: 35px !important;
    margin-top: 0 !important;
    border-bottom: 1px solid #ccc9c9 !important;
    box-shadow: none !important;
}

#candeeCheckoutPage .init-materializer .select2-container .select2-selection--single .select2-selection__rendered {
    line-height: 35px !important;
    padding-left: 0 !important;
}

#candeeCheckoutPage .init-materializer .select2-container .select2-selection--single .select2-selection__arrow {
    height: 35px !important;
}

#candeeCheckoutPage .init-materializer select.valid ~ .select2-container .select2-selection--single {
    border-bottom: 1px solid #4CAF50 !important;
    -webkit-box-shadow: 0 1px 0 0 #4CAF50 !important;
    box-shadow: 0 1px 0 0 #4CAF50 !important;
}

#candeeCheckoutPage .init-materializer select.invalid ~ .select2-container .select2-selection--single {
    border-bottom: 1px solid #F44336 !important;
    -webkit-box-shadow: 0 1px 0 0 #F44336 !important;
    box-shadow: 0 1px 0 0 #F44336 !important;
}
