.shopping_content a {
    color: #3172ab;
    text-decoration: none;
}

.shopping_content {
    min-height: 500px;
}

.shopping_left_div {
    width: 52%;
    font-size: 14px;
    transition: all 1s ease;
}

.shopping_right_div {
    width: 48%;
    font-size: 14px;
    background: #f8f8f8;
    border: 1px solid #ddd;
    border-bottom: none;
    border-right: none;
    border-radius: 10px 0px 0px 0px;
    transition: all 0.5s ease;
}

.item_image {
    width: 25%;
}

.table_row {
    line-height: 1.4;
    font-weight: 500;
    position: relative;
}

.items_table .table_row {
    min-height: 110px;
}

.selected_items {
    max-width: 520px;
    width: 100%;
}

.information_div {
    max-width: 620px;
    width: 100%;
}

.invalid_container,
.invalid_container_shipping,
.invalid_container_payment {
    display: none;
}

.invalid_inputs_text {
    border-radius: 0px;
}

.shopping_right_div .sub_title {
    font-weight: 400;
}

.shopping_right_div .total_pay,
.shopping_right_div .total_results {
    font-size: 20px;
}

.information_div h5 {
    font-weight: 400;
}

.shopping_content .form-group {
    margin-bottom: 0px;
}

.form-group.floating {
    position: relative;
}

.form-group.floating>label {
    top: 8px;
    left: 8px;
    z-index: 1;
    position: absolute;
    background-color: white;
    padding: 0px 70px 0px 5px;
    transition: 0.1s;
    pointer-events: none;
    transform-origin: bottom left;
}

.form-control.floating:focus~label {
    transform: translate(1px, -105%) scale(0.80);
    color: #005ebf;
    padding: 0px 5px 0px 5px;
}

.form-group.floating.filled label,
.form-control.floating.active~label {
    transform-origin: bottom left;
    transform: translate(1px, -105%) scale(0.80);
    padding: 0px 5px 0px 5px;
}

.cta .btn-continue {
    background: #3172ab;
    border: 1px solid #3172ab;
    padding: 16px 46px;
    border-radius: 0px;
    width: 100%;
}

.cta .btn-continue:hover {
    opacity: 0.9;
}

.shopping_left_div .dsteps {
    display: none;
}

.shopping_left_div #credit_card .cc_month {
    margin-right: -1px;
}

.shopping_left_div .dsteps.content_information_step {
    display: block;
}

.btn-outline-secondary:not(:disabled):not(.disabled).active,
.btn-outline-secondary:not(:disabled):not(.disabled):active,
.show>.btn-outline-secondary.dropdown-toggle,
.btn-outline-secondary:hover {
    color: #222;
    background-color: #e9ecef;
    border-color: #bbb;
}

.btn-outline-secondary {
    color: #222;
    border-color: #ccc;
}

.locations_select label,
.shipping_mehod_select label,
.payment_mehod_select label {
    width: 100%;
    border-radius: 5px;
    line-height: 1.2;
    min-height: 54px;
    text-align: left;
}

.locations_select label span,
.shipping_mehod_select label span,
.payment_mehod_select label span {
    font-size: 11px;
}

.payment_mehod_select label,
.shipping_method_radio label {
    min-height: 40px;
}

.payment_mehod_select label input,
.locations_select label input,
.shipping_method_radio label input,
.shipping_mehod_select label input,
.billing_address_select label input {
    position: relative !important;
    margin-right: 5px;
}

input:-internal-autofill-selected {
    background: #fff;
}

.cart_navigation a {
    color: #222;
}

.cart_navigation a.active {
    color: #3172ab;
    font-weight: 500;
}

.shipping_price {
    font-weight: 500;
}

.pickup_locations_fields {
    display: none;
}

.info_bar,
.bill_info_bar {
    border: 1px solid #ddd;
    background: #fafafa;
    padding: 15px;
    border-radius: 6px;
}

.info_bar .content,
.bill_info_bar .content {
    text-align: right;
    flex-direction: column;
}

.info_bar>div,
.bill_info_bar>div {
    display: flex;
}

.info_bar .title,
.bill_info_bar .title {
    text-transform: uppercase;
    font-size: 12px;
    min-width: 120px;
}

.info_bar .shipping_method_time,
.info_bar .shipping_price,
.bill_info_bar .shipping_method_time,
.bill_info_bar .shipping_price {
    text-align: right;
}

.billing_address_fields {
    display: none;
    margin-top: 30px;
}

.apply_warranty {
    font-size: 14px;
    padding: .5rem 1.3rem;
}

.apply_warranty,
.apply_coupon,
.add_giftcard,
.apply_warranty:hover,
.apply_coupon:hover,
.add_giftcard:hover {
    background: #3172ab;
    border: 1px solid #3172ab;
    border-radius: 0px;
    width: 100%;
}

.apply_warranty:hover,
.apply_coupon:hover,
.add_giftcard:hover {
    opacity: 0.9;
}

.apply_gw {
    padding: 0;
    border: none;
    background: transparent;
    display: inline-flex;
    align-items: center;
    color: black;
    font-size: 14px;
    font-weight: 400;
    line-height: normal;
}

.apply_gw svg {
    margin-right: 5px;
}

.gift_cards_row {
    min-height: 40px;
}

.remove_cart_item {
    display: inline-block;
    top: 0;
    right: 0;
    position: absolute;
}

.promotion_div {
    padding: 15px;
    border: 1px solid rgba(0, 0, 0, .1);
}

.form-control {
    border-radius: 0px;
}

.quantity-input {
    height: unset;
    max-width: 90px;
    line-height: 25px;
}

.payment_mehods .payment_option {
    display: none;
    background: rgb(248, 248, 248);
    border: 1px solid rgb(221, 221, 221);
    padding: 15px;
}

.selected_method .content>div {
    margin-left: 15px;
}

.btn.redeem_gift_card {
    border: 1px solid #3172ab;
    color: #3172ab;
    border-radius: 0px;
    display: inline-flex;
    align-items: center;
}

.btn.redeem_gift_card:hover {
    color: #fff;
    background: #3172ab;
}

.btn.redeem_gift_card svg {
    height: 15px;
    margin-right: 5px;
}

.btn.redeem_gift_card svg path {
    fill: #3172ab;
}

.btn.redeem_gift_card:hover svg path {
    fill: #fff;
}

.payment_option svg {
    height: 12px;
    margin-right: 5px;
}

.payment_display {
    display: none !important;
}

.payment_page .payment_display {
    display: flex !important;
}

/**** Card ***/
.cart_page .card_no_display,
.card_display {
    display: none !important;
}

.cart_page .card_display {
    display: flex !important;
}

.cart_page .shopping_right_div {
    width: 100%;
    border-radius: 0px;
}

.cart_page .selected_items {
    max-width: 1260px;
    margin: 0 auto;
}

.cart_page .cta .btn-continue {
    width: auto;
}

.items_table .item_cost {
    text-align: right;
    margin-left: 8px;

}

.items_table .quantity {
    text-align: center;
    min-width: 60px;
}

.items_table .item_text {
    width: 50%;
}

.items_table .quancost {
    width: 25%;
    display: flex;
    justify-content: space-between;
}

.items_table .quancost>div {
    display: flex;
    align-items: center;
}

.items_table .item_title_link {
    color: #222;
}

.visible-only-mobile {
    display: none;
}

.show_order_inner svg {
    height: 12px;
    margin-left: 5px;
}

.show_order_inner>div {
    display: flex;
    align-items: center;
}

.show_order_inner .total_pay {
    font-weight: 500;
}

.not_cart_page .items_table .quancost {
    justify-content: end;
}

.not_cart_page .remove_cart_item,
.not_cart_page .apply_warranty,
.not_cart_page .apply_gw,
.not_cart_page .cart_engraving_price {
    display: none !important;
}

.shoppingcartholder {
    padding: 40px 20px;
    text-align: center;
    max-width: 1260px;
    margin: 0 auto;
}

.remove_cart_item svg,
.promotion_div svg {
    height: 20px;
    fill: red;
    cursor: pointer;
}

.promotion_div svg {
    height: 15px;
}

.remove_cart_item:hover svg,
.promotion_div:hover svg {
    fill: #d76363;
}

.cta_section .cart_step,
.cta_section .information_step,
.cta_section .shipping_step {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cart_step svg,
.information_step svg,
.shipping_step svg {
    height: 9px;
    margin-right: 5px;
    margin-top: 2px;
}

.cart_step svg path,
.information_step svg path,
.shipping_step svg path {
    fill: currentColor;
}

/*SA final offers*/

#final-offers-modal .close {
    position: absolute;
    top: 2.2rem;
    right: 2.2rem;
    padding: 0;
}

.final-offers {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

.slick-track {
    display: flex !important;
}

#final-offers-modal .final-offers {
    visibility: hidden;
}

.final-offers .slick-track {
    min-width: 100% !important;
}

.final-offers .item {
    width: 33% !important;
    display: block;
    color: #222;
    text-decoration: none;
    text-align: center;
}

.final-offers .item img {
    max-width: 100%;
}

.final-offers .btn-add-to-cart {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0.5rem;
    background: #3172ab;
    border: 1px solid #3172ab;
    border-radius: 0;
}

.final-offers .btn-add-to-cart:hover,
.final-offers .btn-add-to-cart:focus {
    opacity: 0.9;
}

.final-offers .item .item-info {
    padding: 20px;
}

.final-offers .item .item-title {
    padding-left: 25px;
    padding-right: 25px;
}

.final-offers .item .item-in-cart {
    color: #3172ab !important;
    font-size: 1rem !important;
    margin-bottom: .5rem;
    font-weight: bold;
}

.final-offers .item .item-details-link {
    color: #3172ab !important;
    display: block;
    font-size: 1rem !important;
    margin-top: .5rem;
    font-weight: bold;
}

.final-offers .item img {
    max-width: 100%;
    height: auto;
    margin: auto;
    padding: 25px;
    transition: all 0.2s ease;
}

#product-coupler-modal .close {
    position: absolute;
    top: 2.2rem;
    right: 2.2rem;
    padding: 0;
}

#product-coupler-modal .item .item_img_div {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-coupler {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

.slick-track {
    display: flex !important;
}

/*#product-coupler-modal .product-coupler {*/
/*    visibility: hidden;*/
/*}*/

#product-coupler-modal .slick-track {
    min-width: 100% !important;
}

#product-coupler-modal .item {
    display: block;
    color: #222;
    text-decoration: none;
    text-align: center;
    align-items: end;
}

.product-coupler .item {
    /*width: 33% !important;*/
    /*width: calc(25% - 0px * 3 / 4 + 1px);*/
}

#product-coupler-modal .item img {
    max-width: 100%;
}

#product-coupler-modal .btn-add-to-cart {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0.5rem;
    background: #3172ab;
    border: 1px solid #3172ab;
    border-radius: 0;
}

#product-coupler-modal .btn-add-to-cart:hover,
#product-coupler-modal .btn-add-to-cart:focus {
    opacity: 0.9;
}

#product-coupler-modal .item .item-info {
    padding: 20px;
}

#product-coupler-modal .item .item-title {
    padding-left: 25px;
    padding-right: 25px;
}

#product-coupler-modal .item .item-in-cart {
    color: #3172ab;
    font-size: 1rem !important;
    margin-bottom: .5rem;
    font-weight: bold;
}

#product-coupler-modal .item .item-details-link {
    color: #3172ab;
    display: block;
    font-size: 1rem !important;
    margin-top: .5rem;
    font-weight: bold;
}

#product-coupler-modal .item img {
    max-width: 100%;
    height: auto;
    margin: auto;
    padding: 25px;
    transition: all 0.2s ease;
}

.slick-next.slick-arrow:before,
.slick-prev.slick-arrow:before {
    display: none;
}

.slick-next.slick-arrow {
    background-image: url(https://s3.amazonaws.com/ISHOWIMAGES/Rolex/Rolex+Module/right_arrow_21.jpg);
    background-repeat: no-repeat;
    right: -50px;
    height: 48px;
    width: 26px;
    display: block;
    top: 40%;
}

.slick-next.slick-arrow:hover {
    background-image: url(https://s3.amazonaws.com/ISHOWIMAGES/Rolex/Rolex+Module/right_arrow_c1.jpg);
}

.slick-next.slick-arrow:focus {
    background-image: url(https://s3.amazonaws.com/ISHOWIMAGES/Rolex/Rolex+Module/right_arrow_21.jpg);
}

.slick-prev.slick-arrow {
    background-image: url(https://s3.amazonaws.com/ISHOWIMAGES/Rolex/Rolex+Module/left_arrow_21.jpg);
    background-repeat: no-repeat;
    left: -50px;
    height: 48px;
    width: 26px;
    top: 40%;
    display: block;
}

.slick-prev.slick-arrow:hover {
    background-image: url(https://s3.amazonaws.com/ISHOWIMAGES/Rolex/Rolex+Module/left_arrow_c1.jpg);
}

.slick-prev.slick-arrow:focus {
    background-image: url(https://s3.amazonaws.com/ISHOWIMAGES/Rolex/Rolex+Module/left_arrow_21.jpg);
}

.d-none-i {
    display: none !important;
}

/*SA Warranty Modal*/

#warranty-modal .warranty-message {
    font-size: 16px;
}

#warranty-modal .items_table .item_image {
    width: 25%;
}

#warranty-modal .items_table .item_quantity {
    width: 25%;
}

#warranty-modal .items_table .warranty_unit_price {
    width: 25%;
}

#warranty-modal .items_table .warranty_cost {
    width: 25%;
}

#warranty-modal .apply_warranty_btn {
    display: block;
    margin-bottom: 0.5rem;
    background: #3172ab;
    border: 1px solid #3172ab;
    border-radius: 0;
    padding: .5rem 1.3rem;
}

#warranty-modal .apply_warranty_btn:hover,
#warranty-modal .apply_warranty_btn:focus {
    opacity: 0.9;
}

.remove_warranty {
    background: transparent !important;
    color: red !important;
    border-color: red !important;
}

.remove_warranty:hover {
    background: red !important;
    color: white !important;
}

.remove_warranty:focus {
    box-shadow: none !important;
}

.item-quantity {
    display: none;
}

.not_cart_page .cart-total-tax-container {
    display: flex !important;
}

.engraving_price {
    display: none;
}

.not_cart_page .engraving_price {
    display: inline;
}

.not_cart_page .item-quantity {
    display: block;
}

.not_cart_page .d-none-i {
    display: none !important;
}

/***********/

@media (max-width: 991.9px) {
    .final-offers .item {
        width: 50% !important;
    }

    .product-coupler .item {
        width: 50% !important;
    }

    /*.items_table .item_text {*/
    /*    width: unset;*/
    /*    flex: 1;*/
    /*}*/

    .shopping_content {
        flex-wrap: wrap;
    }

    .shopping_left_div {
        width: 100%;
        justify-content: center;
        order: 2;
    }

    .shopping_right_div {
        width: 100%;
        justify-content: center;
        order: 1;
        border-radius: 0px;
    }

    .shopping_right_div .selected_items,
    .show_order_sum .show_order_inner {
        margin: 0 auto;
        max-width: 800px;
    }

    .show_order_sum {
        width: 100%;
        justify-content: center;
        order: 0;
        min-height: 40px;
        border: 1px solid #ddd;
        background: #fafafa;
        display: flex;
    }

    .show_order_sum .show_order_inner {
        display: flex;
        align-items: center;
        justify-content: space-between;
        max-width: 620px;
        width: 100%;
    }

    .not_cart_page .hide-summary {
        display: none !important;
    }

    .visible-only-mobile {
        display: flex;
    }

    .slick-next.slick-arrow,
    .slick-prev.slick-arrow {
        height: 36px;
        width: 20px;
        background-size: 14px;
        background-position: center;
    }

    .slick-next.slick-arrow {
        right: -5%;
    }

    .slick-prev.slick-arrow {
        left: -5%;
    }
}

.shopping_content .stock-mobile {
    display: none !important;
    order: 2;
}

@media (max-width: 767.9px) {
    .final-offers .item {
        width: 100% !important;
    }

    .product-coupler .item {
        width: 100% !important;
    }

    .shopping_content .stock-mobile {
        display: block !important;
    }

    .shopping_content .invisible-mobile {
        display: none !important;
    }

    .items_table .table_row {
        flex-wrap: wrap;
    }

    .items_table .item_image {
        order: 0;
    }

    .items_table .quancost {
        order: 3;
        width: 100%;
        justify-content: flex-end;
    }

    .items_table .item_text {
        order: 1;
        text-align: left;
        width: unset;
        flex: 1;
    }

    .items_table .quantity {}

    .items_table .item_cost {}

    .cart_page .cta .btn-continue {
        width: 100%;
    }

    #wells_card_offer {
        width: 80vw !important;
    }

    .quantity-input {
        max-width: 74.8px;
        line-height: 17px;
    }

    .apply_warranty {
        padding: .2rem 1rem;
        margin-top: 0 !important;
    }

    #warranty-modal .modal-title {
        font-size: 20px;
    }

    #warranty-modal .warranty-message {
        font-size: 14px;
    }

    #warranty-modal .items_table .table_row {
        flex-wrap: nowrap;
    }

    #warranty-modal .items_table .item_text {
        order: 0;
        text-align: left;
    }

    #warranty-modal .apply_warranty_btn {
        width: 100% !important;
    }
}

@media (min-width: 992px) {
    .cart_page .shopping_right_div {
        font-size: 130%
    }

    .cart_page .shopping_right_div .coupon_div label {
        font-size: 14px;
    }

    .cart_page .coupon_div {
        max-width: 500px;
    }

    .cart_page .shopping_right_div .total_pay,
    .shopping_right_div .total_results {
        font-size: 30px
    }

    .cart_page .img-thumbnail {
        max-width: 200px;
    }

    .selected_items .coupon_form {
        width: 40%;
    }

    .not_cart_page .coupon_form {
        width: 100%;
    }
}

.affirm-site-modal {
    display: block;
    margin-bottom: 20px;
}

#OffAmazonPaymentsWidgets0IFrame,
#OffAmazonPaymentsWidgets1IFrame {
    border: none !important;
}

#addressBookWidgetDiv,
#walletWidgetDiv1 {
    border: 1px solid #ddd;
    border-radius: 6px;
    overflow: hidden;
}

#wells_card_offer {
    overflow-y: auto !important;
}

#paypal_expch>img:hover {
    opacity: 0.8;
    cursor: pointer;
}

#citi-pay-modal,
.citipay,
#citi-pay-modal-l,
.citi-pay-label p,
.citi-pay-label strong {
    font-size: 14px;
}

.btn-citi-pay-learn {
    background: rgb(49, 114, 171);
    border: 1px solid rgb(49, 114, 171);
    border-radius: 0px;
    padding: 10px 40px 13px 40px;
    line-height: 1;
    color: #fff !important;
}

.btn-citi-pay-learn:hover {
    opacity: 0.9;
}

.store h6 {
    font-size: 18px;
}

.store {
    font-size: 14px;
}

.btn-update-in-cart {
    color: #3172ab;
    border: 1px solid #3172ab;
    padding: 12px;
    border-radius: 0px;
    min-width: 100%;
}

.btn-update-in-cart:hover {
    background: #3172ab;
    color: #fff;
}

.stock-wrapper {
    display: flex;
    gap: 10px;
    width: 100%;
}

.stock-header {
    width: 130px;
    font-size: 12px;
}

.stock-box {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-items: start;
    padding: 10px;
    border: 1px solid #ccc;
    font-size: 12px;
    position: relative;
    cursor: pointer;
    width: 130px;
    height: fit-content;
    min-height: 110px;
}

.stock-box .stock-box-title {
    font-size: 14px;
    font-weight: bold;
    padding-top: 10px;
}

.stock-box .stock-box-msg {
    font-weight: bold;
}

.store-link {
    text-decoration: underline;
    text-transform: uppercase;
    ;
}

.stock-box:hover,
.stock-box.active {
    border: 1.5px solid black;
}

.stock-box.active::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    color: #fff;
    border-style: solid;
    border-width: 0 35px 35px 0;
    border-color: transparent black transparent transparent;
}

.stock-box.active::after {
    content: "";
    position: absolute;
    top: 5px;
    right: 5px;
    width: 12px;
    height: 12px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='white'><path d='M4.5 9L1 5.5l1.5-1.5L4.5 6l5-5 1.5 1.5z'/></svg>");
    background-size: contain;
    background-repeat: no-repeat;
}

.stock-mobile {
    width: 100%;
}

.stock-mobile .stock-box {
    width: unset;
    height: unset;
    max-width: 110px;
    flex: 1 1 100%;
    font-size: 10px;
}

.stock-mobile .stock-box-title {
    font-size: 12px;
}

.quantity-box {
    display: flex;
    flex-direction: row;
    padding-top: 0;
}

.stock-alert {
    position: relative;
    padding: .75rem 1.25rem;
    margin-bottom: 1rem;
    display: none;
    border: 1px solid #ffeeba;
    background-color: #fff3cd;
    font-size: 12px;
}

.date-boxes,
.time-boxes {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 15px;
}

.date-box,
.time-box {
    padding: 10px 15px;
    border: 2px solid #ccc;
    cursor: pointer;
    text-align: center;
    min-width: 100px;
}

.date-box.active,
.time-box.active {
    border-color: black;
    font-weight: bold;
}

.only-safari {
    display: none !important;
}

/* Safari-specific feature support */
@supports (-webkit-hyphens: none) {
    .only-safari {
        display: block !important;
    }
}

/* Product Coupler Modal Accordion Styles */
#product-coupler-modal .accordion .card {
    border: 1px solid #ddd;
    margin-bottom: 15px;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

#product-coupler-modal .accordion .card-header {
    background-color: #f8f9fa;
    border-bottom: 1px solid #ddd;
    padding: 10px 15px;
    transition: background-color 0.2s ease;
}

#product-coupler-modal .accordion .card-header:hover {
    background-color: #e9ecef;
}

#product-coupler-modal .accordion .card-header h5 {
    color: #333;
    font-size: 1.1rem;
    font-weight: 600;
}

#product-coupler-modal .accordion .card-body {
    padding: 20px 10px;
    background-color: #fff;
}

/* Ensure Slick Slider Arrows are positioned correctly */
#product-coupler-modal .slick-prev {
    left: -15px;
    z-index: 10;
}

#product-coupler-modal .slick-next {
    right: -15px;
    z-index: 10;
}

#product-coupler-modal .slick-list {
    margin: 0 20px;
}

/* Slick Slider Visibility Fix: Use visibility instead of display:none */
#accordionCoupler .collapse:not(.show) {
    display: block !important;
    height: 0;
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
}

#accordionCoupler .collapsing {
    visibility: visible;
    opacity: 1;
}