/* Natural Paving Store - master product design, staging draft 2026-10-14.
   One shared stylesheet for all product types. WooCommerce logic and category pages unchanged. */

/* Existing approved product design */
/* NPS product page - Light & Clean Stone staging concept */
/* Saved design snapshot: "becky best" — 2026-10-07. Current staging product-page state at CSS v2.6. */
.single-product{background:#fff!important;color:#102b4b!important}
.single-product-header>.container{display:grid!important;grid-template-columns:minmax(0,58%) minmax(360px,42%)!important;grid-template-areas:"gallery details" "key details"!important;align-items:start!important;gap:0 28px!important;padding:28px 3.25rem 0!important;max-width:1500px!important;margin:0 auto!important}
.single-product-header .product-hero-media{grid-area:gallery!important;width:100%!important}
.single-product-header .product-details{grid-area:details!important;width:auto!important;margin:0!important;padding:8px 0 24px!important;background:transparent!important;box-shadow:none!important}
.single-product-header .nps-key-under-images{grid-area:key!important;width:100%!important}

/* Gallery */
.product-hero-media .product-hero-slider{border-radius:9px!important;overflow:hidden!important;background:#f3efe8!important}
.product-hero-media .product-hero-slide{padding:0 8px 0 0!important;aspect-ratio:1/1!important}
.product-hero-media .product-hero-slide img{border-radius:9px!important}
.single-product-nav{padding:12px 0!important}

/* Product heading area */
.product-details .product-breadcrumbs{color:#60738a!important;font-size:13px!important;margin-bottom:16px!important}
.product-details .product-title{font-size:1.875rem!important;line-height:2.375rem!important;font-weight:400!important;color:#0c2749!important;margin-bottom:8px!important}.nps-title-actions{display:inline-flex!important;align-items:center!important;gap:10px!important;margin-left:10px!important;white-space:nowrap!important;vertical-align:middle!important}.nps-title-rating{display:inline-flex!important;align-items:center!important;gap:5px!important;font-size:13px!important;line-height:1!important}.nps-title-rating .star-rating{float:none!important;margin:0!important;font-size:14px!important;width:5.4em!important;color:#d99b16!important}.nps-title-rating small{font-size:11px!important;color:#60738a!important;font-weight:500!important}
.product-details .product-short-description,.product-details .product-short-description *{color:#5f7187!important;line-height:1.45!important}
.product-details .product-subtitle{font-size:22px!important;color:#102b4b!important;margin-bottom:8px!important}
.product-details .product-price-per-sqm{margin-bottom:12px!important}

/* Calculator */
.nps-calc{position:relative;overflow:hidden;border:0!important;border-radius:12px!important;background:linear-gradient(135deg,#f4f8fa 0%,#e7f0f5 100%)!important;padding:18px!important;color:#10243a!important;box-shadow:0 5px 18px rgba(16,36,58,.08)!important}
.nps-calc .nps-order-heading{margin:0 0 12px}.nps-calc .nps-order-heading strong,.nps-calc .nps-order-heading span{color:#102b4b!important}.nps-order-heading strong{display:block;font-size:18px;line-height:1.25}.nps-order-heading span{display:block;margin-top:3px;font-size:12px}
.nps-order-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 10px!important}
.nps-order-card{display:flex!important;flex-direction:column;align-items:flex-start!important;text-align:left!important;min-height:178px;padding:16px!important;border:1px solid #cfd9df!important;border-radius:8px!important;background:rgba(255,255,255,.92)!important;color:#10243a!important;box-shadow:none!important;transition:.18s ease;white-space:normal!important}
.nps-order-card:hover,.nps-order-card.active{border-color:#aebdc6!important;transform:none!important;box-shadow:none!important}
.nps-order-kicker{font-size:10px;font-weight:700;letter-spacing:.08em;color:#6d7c8d;margin-bottom:7px}.nps-order-title{font-size:18px;font-weight:700;line-height:1.2;color:#102b4b}.nps-order-detail{font-size:12px;color:#6c7c8d;margin:5px 0 12px;min-height:32px}.nps-order-price{font-size:25px;font-weight:800;line-height:1;color:#102b4b}.nps-order-price small{font-size:12px;font-weight:600}
.nps-combo-input{margin-top:auto;width:100%;padding-top:10px}.nps-combo-input label{display:block;font-size:12px;font-weight:500;margin-bottom:6px;color:#30475f}.nps-sqm-entry{display:flex;align-items:center;gap:8px}.nps-sqm-entry .nps-input,.nps-qtyinput,.nps-qtybtn{margin:0!important;background:#fff!important;border:1px solid #ddd8cf!important;border-radius:5px!important;color:#102b4b!important}.nps-sqm-entry span{font-weight:600}
.nps-panel-wrap{border:0!important;border-radius:7px!important;padding:13px 16px!important;margin-top:8px!important;background:#dbe4e9!important}.nps-combined-result{background:#dbe4e9!important;color:#10243a!important}.nps-combined-result .nps-packline,.nps-combined-result .nps-packtext,.nps-combined-result .nps-price,.nps-combined-result .nps-vat,.nps-combined-result [data-combo-line],.nps-combined-result [data-combo-total]{color:#102b4b!important}.nps-combined-result [data-combo-total]{font-weight:800!important}
.nps-wastage-green{margin-top:10px!important;padding:9px 12px!important;border-radius:6px!important;background:#fff!important;color:#102b4b!important;font-weight:500!important}.nps-wastage-green .nps-slider{background:#d6d3ce!important}.nps-wastage-green input:checked + .nps-slider{background:#299c65!important}
.nps-actions{display:grid!important;grid-template-columns:1fr;gap:9px;margin-top:10px}.nps-actions .nps-addform,.nps-actions .nps-sample-form{width:100%;margin:0!important}.nps-actions .nps-btn{width:100%}.nps-btn-primary{background:#0d4f78!important;border-color:#0d4f78!important;color:#fff!important;border-radius:6px!important}
.nps-btn-sample{display:flex!important;align-items:center;gap:12px;justify-content:flex-start!important;padding:12px 15px!important;background:#fff!important;color:#102b4b!important;border:1px solid #e2ddd5!important;border-radius:7px!important;text-align:left!important;cursor:pointer}.nps-btn-sample strong,.nps-btn-sample small{display:block;color:#102b4b!important}.nps-btn-sample small{font-size:11px;font-weight:400;margin-top:2px;color:#60738a!important}.nps-sample-arrow{margin-left:auto;font-size:20px}.nps-combo-order .nps-order-card{cursor:default!important}
.nps-notes{color:#40566c!important}.nps-secure-checkout{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:10px;padding:10px 12px;border:1px solid #e3ded6;background:#fff;border-radius:7px;font-size:11px;color:#60738a}.nps-payment-brands{display:flex;align-items:center;gap:8px;color:#0d4f78}.nps-payment-brands strong{font-size:10px}

/* Best Value ribbon sits inside the Full Pack option, without covering its content. */
.nps-order-cards .nps-order-card.nps-best-value-card{position:relative!important;overflow:visible!important}
.nps-order-cards .nps-order-card.nps-best-value-card>.nps-best-value-banner{position:absolute!important;top:8px!important;right:-17px!important;left:auto!important;bottom:auto!important;display:block!important;align-self:auto!important;flex:none!important;width:100px!important;max-width:100px!important;min-width:100px!important;margin:0!important;transform:rotate(35deg)!important;transform-origin:center!important;background-color:#16b34a!important;color:#ffffff!important;border:0!important;border-radius:0!important;font-size:11px!important;font-weight:700!important;letter-spacing:0!important;text-align:center!important;padding:5px 10px!important;line-height:1.3!important;box-sizing:border-box!important;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%)!important;z-index:3!important}

/* Match both calculator actions to the dark navy View product category buttons. */
.nps-calc .nps-actions .nps-btn-primary,.nps-calc .nps-actions .nps-btn-sample{background:#173451!important;border-color:#173451!important;color:#fff!important}
.nps-calc .nps-actions .nps-btn-sample strong,.nps-calc .nps-actions .nps-btn-sample small,.nps-calc .nps-actions .nps-btn-sample .nps-sample-arrow{color:#fff!important}
.nps-calc .nps-actions .nps-btn-primary:hover,.nps-calc .nps-actions .nps-btn-sample:hover{background:#2c5676!important;border-color:#2c5676!important;color:#fff!important}

/* Calculator quantity stepper: give +/- and the number more breathing room. */
.nps-calc .nps-combo-input .nps-qty{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;width:max-content!important;max-width:100%!important}
.nps-calc .nps-combo-input .nps-qty button.nps-qtybtn{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 40px!important;min-width:40px!important;max-width:40px!important;width:40px!important;height:44px!important;min-height:44px!important;padding:0!important;box-sizing:border-box!important;font-size:18px!important;line-height:1!important}
.nps-calc .nps-combo-input .nps-qty input.nps-qtyinput{display:block!important;flex:0 0 56px!important;width:56px!important;min-width:56px!important;max-width:56px!important;height:44px!important;min-height:44px!important;text-align:center!important;padding:5px 2px!important;box-sizing:border-box!important}

/* Key information - matching stone palette */
.single-product-header .nps-key-under-images .media-text-content{margin:14px 0 28px!important;min-height:0!important;border-radius:12px!important;overflow:hidden!important}
.single-product-header .nps-key-under-images .media-text{width:100%!important;padding:22px!important;background:#f6f2eb!important;color:#102b4b!important;border:1px solid #e5e0d8!important;border-radius:12px!important;overflow:hidden!important;box-shadow:0 4px 16px rgba(26,42,58,.06)!important}
.single-product-header .nps-key-under-images .media-text h2{color:#102b4b!important;font-size:28px!important;line-height:1.15!important;margin:0 0 14px!important;font-weight:700!important}
.single-product-header .nps-key-under-images .accordion-item{background:#fff!important;border:1px solid #e2ddd5!important;border-radius:6px!important;margin:0 0 7px!important;overflow:hidden!important}
.single-product-header .nps-key-under-images .accordion-header{color:#102b4b!important;padding:10px 14px!important;line-height:24px!important;font-weight:600!important}
.single-product-header .nps-key-under-images .accordion-content{color:#40566c!important;padding:0 14px 12px!important}

/* Lower page follows the same warmer neutral */
.single-product .tabbed-content-block{background:#fbfaf7!important}

@media(max-width:980px){.single-product-header>.container{display:flex!important;flex-direction:column!important;align-items:stretch!important;padding:20px 18px 0!important}.single-product-header .product-hero-media{order:0!important}.single-product-header .product-details{order:1!important;width:100%!important}.single-product-header .nps-key-under-images{order:2!important;width:100%!important}.product-details .product-title{font-size:30px!important}}
@media(max-width:640px){.nps-order-cards{grid-template-columns:1fr!important}.nps-order-card{min-height:0}.nps-calc{padding:12px!important}.product-details .product-title{font-size:27px!important}}



/* Four-option calculator styling moved from calculator PHP */

        .nps-quantity-prototype .nps-stock-unavailable{display:inline-block;margin:6px 0;padding:5px 9px;border-radius:5px;background:#f8e5e5;color:#a32424;font-size:12px;font-weight:700;letter-spacing:.04em;}
        .nps-quantity-prototype .nps-order-card.is-disabled{opacity:.6;cursor:not-allowed;}
        .nps-quantity-prototype .nps-order-card.is-disabled button{pointer-events:none;}
        .nps-quantity-prototype{
          margin:22px 0 10px;
          padding:20px;
          border:1px solid #dbe7ed;
          border-radius:14px;
          background:#eef5f8;
        }
        .nps-quantity-prototype__intro{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:16px;text-align:center}
        .nps-quantity-prototype__intro strong{font-size:20px;color:#0c2747}
        .nps-quantity-prototype__intro span{font-size:14px;color:#46566a}
        .nps-quantity-prototype__grid{
          display:grid;
          grid-template-columns:repeat(2,minmax(0,1fr));
          gap:12px;
        }
        .nps-quantity-choice{
          position:relative;
          width:100%;
          min-height:150px;
          padding:16px 18px;
          border:2px solid #d8e2e8;
          border-radius:12px;
          background:#fff;
          text-align:left;
          cursor:pointer;
          transition:.18s ease;
        }
        .nps-quantity-choice:hover{border-color:#9db8c8;transform:translateY(-1px)}
        .nps-quantity-choice.is-selected{
          border-color:#0c2747;
          background:#eaf3f7;
          box-shadow:0 0 0 1px #0c2747;
        }
        .nps-quantity-choice__label{display:block;font-weight:700;color:#0c2747;margin-bottom:8px}
        .nps-quantity-choice__price-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
        .nps-quantity-choice__price-row strong{display:block;font-size:21px;color:#0c2747}
        .nps-fixed-slab-count{font-size:13px;font-weight:700;color:#526272;white-space:nowrap}
        .nps-pack-bottom-row{
          display:flex;
          align-items:flex-end;
          justify-content:space-between;
          gap:16px;
          margin-top:22px;
        }
        .nps-pack-bottom-row .nps-pack-qty{
          display:grid;
          grid-template-columns:40px minmax(48px,64px) 40px;
          align-items:center;
          gap:14px;
          margin-top:0;
        }
        .nps-pack-bottom-row .nps-pack-qty__btn{
          width:40px;
          height:40px;
          padding:0;
          border:1px solid #cbd8df;
          border-radius:8px;
          background:#fff;
          color:#0c2747;
          font-size:22px;
          font-weight:800;
          line-height:1;
          cursor:pointer;
        }
        .nps-pack-bottom-row .nps-pack-qty__value{
          min-width:48px;
          text-align:center;
          font-size:18px;
          font-weight:800;
          color:#0c2747;
        }
        .nps-quantity-choice small{display:block;margin-top:7px;font-size:11px;line-height:1.3;color:#526272}
        .nps-full-pack-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}
        .nps-full-pack-meta .nps-pack-coverage,
        .nps-full-pack-meta .nps-full-pack-slabs{margin:0;font-size:12px;font-weight:700;color:#526272}
        .nps-best-value-pill{
          display:inline-block;
          margin:0;
          padding:4px 7px;
          border-radius:999px;
          background:#75b843;
          color:#fff !important;
          font-weight:800;
          letter-spacing:.03em;
          white-space:nowrap;
        }
        .nps-custom-choice{background:#eef5f8}
        .nps-custom-area{
          margin-top:12px;
          padding:16px 18px;
          border-radius:10px;
          background:#fff;
          border:2px solid #d8e2e8;
        }
        .nps-custom-area__top,.nps-custom-area__bottom{
          display:flex;
          align-items:center;
          justify-content:space-between;
          gap:16px;
        }
        .nps-custom-area__bottom{
          margin-top:14px;
          padding-top:12px;
          border-top:1px solid #e3eaee;
        }
        .nps-custom-area__title{
          display:block;
          margin-bottom:4px;
          font-size:16px;
          font-weight:800;
          color:#0c2747;
        }
        .nps-custom-area label{display:block;font-size:12px;font-weight:700;color:#526272}
        .nps-custom-area__entry{display:flex;align-items:center;gap:8px}
        .nps-custom-area input{
          width:90px;
          padding:10px 11px;
          border:2px solid #0c2747;
          border-radius:7px;
          font-size:18px;
          font-weight:800;
          color:#0c2747;
          background:#fff;
          text-align:center;
        }
        .nps-custom-area__entry>span{font-weight:800;color:#0c2747}
        .nps-custom-slab-count{font-size:13px;font-weight:800;color:#526272}
        .nps-custom-price{font-size:13px;color:#526272}
        .nps-custom-price strong{font-size:18px;color:#0c2747}
        .nps-prototype-add{margin-top:14px}
        .nps-prototype-add-form{margin:0}
        .nps-prototype-add-button{
          width:100%;
          min-height:52px;
          border:0;
          border-radius:9px;
          background:#0c2747;
          color:#fff;
          font-size:17px;
          font-weight:800;
          cursor:pointer;
          transition:.18s ease;
        }
        .nps-prototype-add-button:hover:not(:disabled){background:#163a63}
        .nps-prototype-add-button:disabled{
          background:#b8c3cb;
          color:#f6f8f9;
          cursor:not-allowed;
        }
        .nps-quantity-prototype__sample{margin-top:10px}
        .nps-sample-form{margin:0}
        .nps-sample-choice{
          width:100%;
          display:flex;
          align-items:center;
          gap:12px;
          padding:14px 16px;
          border:1px solid #cbdde7;
          border-radius:9px;
          background:#eaf3f7;
          color:#0c2747;
          text-align:left;
          cursor:pointer;
        }
        .nps-sample-choice__icon{
          display:grid;
          place-items:center;
          width:34px;
          height:34px;
          border-radius:7px;
          background:#fff;
          color:#0c2747;
          flex:0 0 auto;
        }
        .nps-sample-choice__copy{display:flex;flex:1;flex-direction:column;gap:2px}
        .nps-sample-choice__copy strong{font-size:16px;color:#0c2747}
        .nps-sample-choice__copy small{font-size:12px;color:#526272}
        .nps-sample-choice__arrow{font-size:22px;font-weight:700;color:#0c2747}
        .nps-sample-choice:hover{background:#dfeef4}
        .nps-prototype-selection{
          margin-top:14px;
          min-height:62px;
          padding:16px 18px;
          border-radius:9px;
          background:#eaf3f7;
          display:flex;
          align-items:center;
          justify-content:center;
          text-align:center;
          font-size:16px;
          line-height:1.4;
          font-weight:800;
          color:#0c2747;
        }
        @media(max-width:768px){
          .nps-quantity-prototype{padding:12px}
          .nps-quantity-prototype__grid{
            grid-template-columns:repeat(2,minmax(0,1fr));
            gap:8px;
          }
          .nps-custom-choice{grid-column:auto}
          .nps-quantity-choice{
            min-width:0;
            min-height:170px;
            padding:12px 10px;
          }
          .nps-quantity-choice__label{
            margin-bottom:7px;
            font-size:14px;
          }
          .nps-quantity-choice__price-row{
            align-items:flex-start;
            flex-direction:column;
            gap:4px;
          }
          .nps-quantity-choice__price-row strong{font-size:18px}
          .nps-fixed-slab-count{font-size:11px;white-space:normal}
          .nps-full-pack-meta{
            align-items:flex-start;
            flex-direction:column;
            gap:3px;
            margin-top:6px;
          }
          .nps-full-pack-meta .nps-pack-coverage,
          .nps-full-pack-meta .nps-full-pack-slabs{font-size:10px}
          .nps-pack-bottom-row{
            margin-top:14px;
            gap:6px;
          }
          .nps-pack-bottom-row .nps-pack-qty{
            grid-template-columns:32px 36px 32px;
            gap:4px;
          }
          .nps-pack-bottom-row .nps-pack-qty__btn{
            width:32px;
            height:32px;
            font-size:18px;
          }
          .nps-pack-bottom-row .nps-pack-qty__value{
            min-width:36px;
            font-size:16px;
          }
          .nps-best-value-pill{
            padding:3px 5px;
            font-size:9px !important;
          }
          .nps-custom-area__top,
          .nps-custom-area__bottom{
            align-items:flex-start;
            flex-direction:column;
            gap:6px;
          }
          .nps-custom-area__entry{gap:4px;flex-wrap:nowrap}
          .nps-custom-area__entry .nps-pack-qty__btn{
            width:30px;
            height:30px;
            padding:0;
            font-size:17px;
          }
          .nps-custom-area input{
            width:44px;
            padding:6px 4px;
            font-size:15px;
          }
          .nps-custom-area__entry>span{font-size:10px}
          .nps-custom-area__bottom{
            margin-top:8px;
            padding-top:8px;
          }
          .nps-custom-slab-count,
          .nps-custom-price{font-size:10px}
          .nps-custom-price strong{font-size:15px}
        }


        /* Staging four-option calculator: match the live calculator visual language. */
        .nps-quantity-prototype.nps-calc{
          margin:22px 0 0;
          padding:20px;
          border:0;
          border-radius:12px;
          background:#eef5f8;
          box-shadow:none;
        }
        .nps-quantity-prototype .nps-order-heading{
          margin:0 0 18px;
          text-align:center;
        }
        .nps-quantity-prototype .nps-order-heading strong{
          display:block;
          color:#102f50;
          font-size:20px;
          line-height:1.2;
          font-weight:800;
        }
        .nps-quantity-prototype .nps-order-cards{
          display:grid;
          grid-template-columns:repeat(2,minmax(0,1fr));
          gap:10px;
        }
        .nps-quantity-prototype .nps-order-card{
          position:relative;
          min-width:0;
          min-height:225px;
          padding:16px;
          border:1px solid #b8cad5;
          border-radius:9px;
          background:#fff;
          display:flex;
          flex-direction:column;
          box-shadow:none;
          cursor:pointer;
        }
        .nps-quantity-prototype .nps-order-card:hover{
          border-color:#8faabb;
          transform:none;
        }
        .nps-quantity-prototype .nps-order-card.is-selected{
          border-color:#183f63;
          box-shadow:0 0 0 1px #183f63;
          background:#fff;
        }
        .nps-quantity-prototype .nps-order-kicker{
          display:block;
          margin-bottom:5px;
          color:#657d93;
          font-size:10px;
          line-height:1.2;
          font-weight:800;
          letter-spacing:.08em;
          text-transform:uppercase;
        }
        .nps-quantity-prototype .nps-order-title{
          display:block;
          margin:0 0 4px;
          color:#102f50;
          font-size:19px;
          line-height:1.15;
          font-weight:800;
        }
        .nps-quantity-prototype .nps-order-detail{
          display:block;
          min-height:32px;
          margin:0 0 15px;
          color:#637b90;
          font-size:12px;
          line-height:1.25;
          font-weight:500;
          white-space:normal;
        }
        .nps-quantity-prototype .nps-quantity-choice__price-row{
          display:flex;
          align-items:baseline;
          justify-content:flex-start;
          gap:6px;
          margin-top:auto;
          margin-bottom:12px;
        }
        .nps-quantity-prototype .nps-order-price{
          color:#102f50;
          font-size:26px;
          line-height:1;
          font-weight:800;
        }
        .nps-quantity-prototype .nps-price-unit{
          margin:0;
          color:#102f50;
          font-size:11px;
          line-height:1;
          font-weight:700;
        }
        .nps-quantity-prototype .nps-combo-input{
          margin-top:0;
        }
        .nps-quantity-prototype .nps-combo-input>label{
          display:block;
          margin-bottom:5px;
          color:#173b5d;
          font-size:11px;
          line-height:1.2;
          font-weight:500;
        }
        .nps-quantity-prototype .nps-pack-bottom-row{
          display:flex;
          align-items:center;
          justify-content:space-between;
          gap:10px;
          margin-top:0;
        }
        .nps-quantity-prototype .nps-pack-qty{
          display:grid;
          grid-template-columns:40px 52px 40px;
          align-items:center;
          gap:6px;
          margin:0;
        }
        .nps-quantity-prototype .nps-pack-qty__btn{
          width:40px;
          height:40px;
          padding:0;
          border:1px solid #d4d0c8;
          border-radius:6px;
          background:#fff;
          color:#102f50;
          font-size:20px;
          line-height:1;
          font-weight:500;
          cursor:pointer;
        }
        .nps-quantity-prototype .nps-pack-qty__value{
          display:grid;
          place-items:center;
          width:52px;
          height:40px;
          border:1px solid #d4d0c8;
          border-radius:6px;
          background:#fff;
          color:#102f50;
          font-size:15px;
          font-weight:500;
        }
        .nps-quantity-prototype .nps-best-value-pill{
          display:inline-block;
          position:absolute;
          top:10px;
          right:10px;
          margin:0;
          padding:5px 8px;
          border-radius:999px;
          background:#11aa55;
          color:#fff !important;
          font-size:9px;
          line-height:1;
          font-weight:800;
          letter-spacing:.04em;
          white-space:nowrap;
        }
        .nps-quantity-prototype .nps-custom-choice{
          background:#fff;
        }
        .nps-quantity-prototype .nps-custom-area__entry{
          display:grid;
          grid-template-columns:38px 62px 38px auto;
          align-items:center;
          justify-content:start;
          gap:6px;
          margin-top:0;
        }
        .nps-quantity-prototype .nps-custom-area__entry .nps-qtybtn{
          width:38px;
          height:40px;
          padding:0;
          border:1px solid #d4d0c8;
          border-radius:6px;
          background:#fff;
          color:#102f50;
          font-size:20px;
          font-weight:500;
        }
        .nps-quantity-prototype .nps-custom-area__entry .nps-input{
          width:100%;
          min-width:0;
          height:40px;
          padding:7px 8px;
          border:2px solid #172c3f;
          border-radius:6px;
          background:#fff;
          color:#102f50;
          font-size:15px;
          font-weight:500;
          text-align:center;
          text-align-last:center;
        }
        .nps-quantity-prototype .nps-custom-area__entry>span{
          color:#102f50;
          font-size:12px;
          font-weight:800;
        }
        .nps-quantity-prototype .nps-prototype-selection{
          min-height:102px;
          margin:32px 0 0;
          padding:18px;
          border:0;
          border-radius:8px;
          background:#dce7ed;
          display:grid;
          grid-template-columns:minmax(130px,.8fr) minmax(0,1.65fr);
          align-items:center;
          gap:16px;
          color:#102f50;
        }
        .nps-quantity-prototype .nps-prototype-selection .nps-packline{
          display:flex;
          align-items:center;
          gap:7px;
          margin:0;
          color:#102f50;
          font-size:13px;
          line-height:1.35;
        }
        .nps-quantity-prototype .nps-prototype-selection .nps-info{
          display:grid;
          place-items:center;
          width:16px;
          height:16px;
          border:1px solid #73869a;
          border-radius:50%;
          color:#536b82;
          font-size:10px;
          font-weight:800;
          flex:0 0 auto;
        }
        .nps-quantity-prototype .nps-prototype-selection .nps-price{
          display:flex;
          align-items:baseline;
          flex-wrap:wrap;
          gap:7px;
          margin:0;
        }
        .nps-quantity-prototype .nps-prototype-selection [data-selection-total]{
          color:#102f50;
          font-size:27px;
          line-height:1;
          font-weight:800;
        }
        .nps-quantity-prototype .nps-prototype-selection .nps-vat{
          color:#102f50;
          font-size:15px;
          line-height:1.35;
          font-weight:400;
        }
        .nps-quantity-prototype .nps-prototype-wastage{
          margin:26px 0 0;
          padding:11px 12px;
          border:0;
          border-radius:7px;
          background:#fff;
          display:flex;
          align-items:center;
          gap:10px;
          color:#102f50;
          font-size:13px;
          font-weight:500;
        }
        .nps-quantity-prototype .nps-switch{
          position:relative;
          display:inline-block;
          width:44px;
          height:24px;
          flex:0 0 44px;
          cursor:pointer;
        }
        .nps-quantity-prototype .nps-switch input{
          position:absolute;
          opacity:0;
          width:1px;
          height:1px;
        }
        .nps-quantity-prototype .nps-slider{
          position:absolute;
          inset:0;
          border-radius:999px;
          background:#c8d1d7;
          transition:.18s ease;
          box-shadow:inset 0 0 0 1px rgba(16,47,80,.08);
        }
        .nps-quantity-prototype .nps-slider:before{
          content:"";
          position:absolute;
          width:18px;
          height:18px;
          left:3px;
          top:3px;
          border-radius:50%;
          background:#fff;
          box-shadow:0 1px 3px rgba(0,0,0,.22);
          transition:.18s ease;
        }
        .nps-quantity-prototype .nps-switch input:checked + .nps-slider{
          background:#11aa55;
        }
        .nps-quantity-prototype .nps-switch input:checked + .nps-slider:before{
          transform:translateX(20px);
        }
        .nps-quantity-prototype .nps-prototype-add{
          display:flex;
          flex-direction:column;
          gap:8px;
          margin-top:26px;
        }
        .nps-quantity-prototype .nps-prototype-add-form,
        .nps-quantity-prototype .nps-sample-form{
          display:block;
          width:100%;
          margin:0;
        }
        .nps-quantity-prototype .nps-prototype-add-button{
          width:100%;
          min-height:45px;
          border:0;
          border-radius:5px;
          background:#183d5f;
          color:#fff;
          font-size:15px;
          font-weight:500;
          cursor:pointer;
        }
        .nps-quantity-prototype .nps-prototype-add-button:disabled{
          background:#91a5b6;
          color:#fff;
          cursor:not-allowed;
        }
        .nps-quantity-prototype .nps-sample-choice{
          width:100%;
          min-height:44px;
          padding:8px 13px;
          border:1px solid #c8dce6;
          border-radius:5px;
          background:#dfeef4;
          color:#102f50;
          display:flex;
          align-items:center;
          gap:10px;
          text-align:left;
        }
        .nps-quantity-prototype .nps-sample-choice__icon{
          display:grid;
          place-items:center;
          width:26px;
          height:26px;
          border-radius:4px;
          background:#fff;
          color:#102f50;
          flex:0 0 auto;
        }
        .nps-quantity-prototype .nps-sample-choice__copy{
          display:flex;
          flex:1;
          flex-direction:column;
          gap:1px;
        }
        .nps-quantity-prototype .nps-sample-choice__copy strong{
          color:#102f50;
          font-size:15px;
          font-weight:800;
        }
        .nps-quantity-prototype .nps-sample-choice__copy small{
          color:#536b82;
          font-size:10px;
          font-weight:500;
        }
        .nps-quantity-prototype .nps-sample-choice__arrow{
          color:#102f50;
          font-size:20px;
          font-weight:500;
        }
        .nps-prototype-notes{
          margin-top:8px;
          color:#5e7082;
          font-size:12px;
        }
        .nps-prototype-notes .delivery,
        .nps-prototype-notes .nextday{
          line-height:1.45;
        }
        .nps-prototype-notes .nps-secure-checkout{
          margin-top:8px;
          padding-top:8px;
          border-top:1px solid #e1e1e1;
          display:flex;
          align-items:center;
          justify-content:center;
          flex-wrap:wrap;
          gap:12px;
          color:#637586;
          font-size:10px;
        }
        .nps-prototype-notes .nps-payment-brands{
          display:flex;
          gap:7px;
          color:#123c62;
        }
        @media(max-width:768px){
          .nps-quantity-prototype.nps-calc{padding:12px}
          .nps-quantity-prototype .nps-order-cards{
            display:grid !important;
            grid-template-columns:repeat(2,minmax(0,1fr)) !important;
            gap:8px !important;
          }
          .nps-quantity-prototype .nps-order-card{
            min-height:220px;
            padding:12px 10px;
          }
          .nps-quantity-prototype .nps-order-kicker{font-size:8px}
          .nps-quantity-prototype .nps-order-title{font-size:16px}
          .nps-quantity-prototype .nps-order-detail{
            min-height:30px;
            margin-bottom:10px;
            font-size:10px;
          }
          .nps-quantity-prototype .nps-order-price{font-size:22px}
          .nps-quantity-prototype .nps-price-unit{font-size:9px}
          .nps-quantity-prototype .nps-combo-input>label{font-size:9px}
          .nps-quantity-prototype .nps-pack-bottom-row{
            align-items:center;
            justify-content:flex-start;
            gap:4px;
            min-width:0;
          }
          .nps-quantity-prototype .nps-pack-qty{
            grid-template-columns:28px 34px 28px;
            gap:3px;
            width:max-content;
            max-width:100%;
          }
          .nps-quantity-prototype .nps-pack-qty__btn{
            width:28px;
            min-width:0;
            height:30px;
            padding:0;
            font-size:16px;
          }
          .nps-quantity-prototype .nps-pack-qty__value{
            width:34px;
            min-width:0;
            height:30px;
            font-size:13px;
          }
          .nps-quantity-prototype .nps-best-value-pill{
            display:inline-block;
            padding:3px 5px;
            font-size:8px;
            letter-spacing:0;
            vertical-align:middle;
          }
          .nps-quantity-prototype .nps-best-value-card .nps-order-kicker{
            display:block;
            padding-right:64px;
          }
          .nps-quantity-prototype .nps-best-value-pill{
            top:8px;
            right:8px;
          }
          .nps-quantity-prototype .nps-custom-area__entry{
            grid-template-columns:28px 34px 28px auto;
            gap:3px;
            min-width:0;
            justify-content:start;
          }
          .nps-quantity-prototype .nps-custom-area__entry .nps-qtybtn{
            width:28px;
            min-width:0;
            height:30px;
            padding:0;
            font-size:16px;
          }
          .nps-quantity-prototype .nps-custom-area__entry .nps-input{
            height:34px;
            padding:5px 5px;
            font-size:13px;
          }
          .nps-quantity-prototype .nps-custom-area__entry>span{font-size:9px}
          .nps-quantity-prototype .nps-prototype-selection{
            min-height:96px;
            margin-top:22px;
            padding:14px;
            grid-template-columns:minmax(92px,.8fr) minmax(0,1.45fr);
            gap:10px;
          }
          .nps-quantity-prototype .nps-prototype-selection .nps-packline{font-size:11px}
          .nps-quantity-prototype .nps-prototype-selection [data-selection-total]{font-size:23px}
          .nps-quantity-prototype .nps-prototype-selection .nps-vat{font-size:12px}
          .nps-quantity-prototype .nps-prototype-wastage{
            margin-top:14px;
            padding:10px;
            font-size:11px;
          }
          .nps-quantity-prototype .nps-prototype-add{margin-top:14px}
        }


/* Specifications shared across all products */
.nps-live-spec-box{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:20px;background:#f5f9fb;border:1px solid #dbe7ed;border-radius:10px;margin:10px 0 20px}.nps-live-spec-item{background:#fff;border:1px solid #e2e9ed;border-radius:7px;padding:14px 16px;min-width:0}.nps-live-spec-label{display:block;font-size:12px;color:#68869b;margin-bottom:7px}.nps-live-spec-value{display:block;color:#173451;font-size:15px;line-height:1.45;font-weight:600;overflow-wrap:anywhere}@media(max-width:767px){.nps-live-spec-box{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:11px}.nps-live-spec-item{padding:12px}.nps-live-spec-value{font-size:13px}}

/* Previously approved mobile calculator spacing, now controlled here rather than style.css. */
@media (max-width:767px) {
  body.single-product .nps-calc .nps-order-cards { grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important; }
  body.single-product .nps-calc .nps-order-card { min-width:0!important;padding:10px 8px!important;box-sizing:border-box!important; }
  body.single-product .nps-calc .nps-combo-input { min-width:0!important;width:100%!important; }
  body.single-product .nps-calc .nps-combo-input .nps-qty { width:100%!important;max-width:100%!important;gap:3px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr)!important; }
  body.single-product .nps-calc .nps-combo-input .nps-qty button.nps-qtybtn,
  body.single-product .nps-calc .nps-combo-input .nps-qty input.nps-qtyinput { width:100%!important;min-width:0!important;max-width:100%!important;height:34px!important;min-height:34px!important;flex:initial!important;padding:0 2px!important;box-sizing:border-box!important; }
}

/* Definitive full-pack badge style */

/* NPS MASTER BADGE: one green diagonal label on every Full Pack card.
   Suppresses legacy WPCode-generated BEST VALUE text without modifying WooCommerce data. */
body.single-product .nps-calc .nps-order-cards .nps-order-card.nps-best-value-card {
  position:relative!important; overflow:hidden!important;
}
body.single-product .nps-calc .nps-order-cards .nps-order-card.nps-best-value-card>.nps-best-value-banner,
body.single-product .nps-calc .nps-order-cards .nps-order-card.nps-best-value-card .nps-best-value-pill {
  display:block!important;visibility:visible!important;
  position:absolute!important;top:14px!important;right:-22px!important;left:auto!important;bottom:auto!important;
  width:112px!important;min-width:112px!important;max-width:112px!important;
  margin:0!important;padding:4px 6px!important;
  transform:rotate(42deg)!important;transform-origin:center!important;
  background:#16b34a!important;color:#fff!important;
  border:0!important;border-radius:0!important;
  clip-path:none!important;box-sizing:border-box!important;
  font-size:9px!important;line-height:1.2!important;
  font-weight:800!important;letter-spacing:.035em!important;text-align:center!important;
  white-space:nowrap!important;z-index:4!important;
}
body.single-product .nps-calc .nps-order-cards .nps-order-card.nps-best-value-card>.nps-order-kicker::after {
  content:none!important;display:none!important;
}
body.single-product .nps-calc .nps-order-cards .nps-order-card.nps-best-value-card>.nps-order-kicker {
  display:block!important;white-space:normal!important;padding-right:30px!important;
}
@media(max-width:767px){
 body.single-product .nps-calc .nps-order-cards .nps-order-card.nps-best-value-card>.nps-best-value-banner,
 body.single-product .nps-calc .nps-order-cards .nps-order-card.nps-best-value-card .nps-best-value-pill {
   top:11px!important;right:-27px!important;width:108px!important;min-width:108px!important;max-width:108px!important;
   padding:3px 3px!important;font-size:8px!important;transform:rotate(42deg)!important;
 }
}
