/* Preciserotation: product purchase actions and one-click popup. */
.preciserotation-purchase-actions {display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.preciserotation-purchase-actions__quantity {display:inline-flex;align-items:center;gap:8px;}
.preciserotation-purchase-actions__quantity .control-label {margin:0;white-space:nowrap;}
.preciserotation-purchase-actions__quantity #input-quantity {width:90px;height:50px;text-align:center;}
.preciserotation-purchase-actions #button-cart,
.preciserotation-purchase-actions #button-buy-one-click {width:auto;min-height:50px;margin:0;padding:12px 22px;border-radius:5px;font-size:14px;font-weight:600;line-height:24px;text-transform:none;}
.preciserotation-purchase-actions #button-buy-one-click {border:1px solid #ea1b25;background:#fff;color:#111;}
.preciserotation-purchase-actions #button-buy-one-click:hover,
.preciserotation-purchase-actions #button-buy-one-click:focus {border-color:#ea1b25;background:#ea1b25;color:#fff;outline:none;}

/* The popup and its backdrop must be above the sticky header, search and cart. */
.pr-boc-modal {z-index:100050!important;}
.modal-backdrop {z-index:100040!important;}
body.modal-open {overflow:hidden!important;padding-right:0!important;}

.pr-boc-modal .modal-dialog {width:520px;max-width:calc(100% - 30px);margin:76px auto 18px;}
.pr-boc-modal .modal-content {overflow:hidden;border:0;border-radius:8px;box-shadow:0 12px 40px rgba(0,0,0,.22);}
.pr-boc-modal .modal-header {position:relative;padding:16px 50px 14px 22px;border-bottom:1px solid #eee;background:#fff;}
.pr-boc-modal .modal-title {margin:0;color:#111;font-size:24px;font-weight:700;line-height:1.3;}
.pr-boc-modal .modal-header .close {position:absolute;top:10px;right:16px;margin:0;color:#333;font-size:30px;font-weight:400;opacity:.65;}
.pr-boc-modal .modal-header .close:hover {color:#ea1b25;opacity:1;}
.pr-boc-modal .modal-body {padding:18px 22px 16px;}
.pr-boc-modal .modal-footer {padding:0 22px 22px;border:0;text-align:left;}
.pr-boc-modal .form-group {margin-bottom:13px;}
.pr-boc-modal label {margin-bottom:6px;color:#222;font-weight:600;}
.pr-boc-modal .form-control {height:44px;border:1px solid #ddd;border-radius:4px;box-shadow:none;}
.pr-boc-modal .form-control::placeholder {color:#999;opacity:1;}
.pr-boc-modal .form-control:focus {border-color:#ea1b25;box-shadow:0 0 0 1px rgba(234,27,37,.08);}
.pr-boc-modal .has-error .form-control {border-color:#ea1b25;background:#fff7f7;}
.pr-boc-product {margin:0 0 15px;color:#111;font-size:16px;font-weight:600;line-height:1.45;}
.pr-boc-product span {color:#777;font-weight:400;}
#pr-boc-alert {margin:0 0 13px;padding:9px 12px;font-size:14px;}
#pr-boc-submit {display:block;width:100%;min-width:0;max-width:none;padding:12px 24px;border-color:#ea1b25;border-radius:5px;background:#ea1b25;color:#fff;font-size:15px;font-weight:600;}
#pr-boc-submit:hover,
#pr-boc-submit:focus {border-color:#c9141d;background:#c9141d;color:#fff;}
.pr-boc-hp {position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;}

@media (min-width:768px) {
 .pr-boc-modal {overflow-y:hidden!important;padding-right:0!important;}
}

@media (min-width:768px) and (max-height:700px) {
 .pr-boc-modal .modal-dialog {margin-top:62px;}
 .pr-boc-modal .modal-header {padding-top:13px;padding-bottom:12px;}
 .pr-boc-modal .modal-body {padding-top:14px;padding-bottom:12px;}
 .pr-boc-modal .modal-footer {padding-bottom:16px;}
 .pr-boc-modal .form-group {margin-bottom:10px;}
}

@media (max-width:767px) {
 .preciserotation-purchase-actions {align-items:stretch;}
 .preciserotation-purchase-actions__quantity {width:100%;}
 .preciserotation-purchase-actions #button-cart,
 .preciserotation-purchase-actions #button-buy-one-click {flex:1 1 100%;width:100%;}
 .pr-boc-modal {overflow-y:auto!important;padding-right:0!important;}
 .pr-boc-modal .modal-dialog {width:calc(100% - 20px);max-width:none;margin:62px auto 10px;}
 .pr-boc-modal .modal-title {font-size:20px;}
 .pr-boc-modal .modal-body {padding:16px;}
 .pr-boc-modal .modal-footer {padding:0 16px 16px;}
 #pr-boc-submit {width:100%;}
}

/* =========================================================
   Product page: laptop layout from video (980–1299px)
   Keep quantity and both purchase buttons in one row.
   ========================================================= */
@media (min-width: 980px) and (max-width: 1299px) {
    #product .form-group.cart.preciserotation-purchase-actions {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        gap: 8px;
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        box-sizing: border-box;
    }

    .preciserotation-purchase-actions__quantity {
        flex: 0 0 auto;
        gap: 4px;
        min-width: 0;
    }

    .preciserotation-purchase-actions__quantity .control-label {
        font-size: 12px;
    }

    .preciserotation-purchase-actions__quantity #input-quantity {
        width: 52px;
        height: 46px;
        margin: 0;
        padding-right: 6px;
        padding-left: 6px;
    }

    .preciserotation-purchase-actions #button-cart,
    .preciserotation-purchase-actions #button-buy-one-click {
        flex: 1 1 0;
        width: auto;
        min-width: 0;
        min-height: 46px;
        padding: 10px 8px;
        font-size: 12px;
        line-height: 24px;
        white-space: nowrap;
    }

    .productpage .product-left,
    .productpage .product-right,
    .product-info,
    .product-info .product-image,
    .product-info .image,
    .product-info .image a.thumbnail,
    .product-info .image img {
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }
}
