/* Scoped to WooCommerce product pages; preserve Astra and Club markup. */
body.single-product .site-content {background:#fffefa}
body.single-product div.product {--nmp-teal:#00615d;--nmp-gold:#caa85c;}
body.single-product div.product .product_title {font-size:clamp(1.55rem,2.5vw,2.25rem);line-height:1.2;letter-spacing:-.025em;color:#152329;margin-bottom:12px}
body.single-product div.product .summary .price {font-size:clamp(1.6rem,2.6vw,2.15rem);font-weight:750;color:#142329;margin-bottom:20px}
body.single-product div.product .woocommerce-product-gallery {margin-bottom:24px}
body.single-product div.product .woocommerce-product-gallery img {border-radius:11px}
body.single-product div.product .flex-control-thumbs {display:flex;gap:9px;flex-wrap:wrap;margin-top:12px!important}
body.single-product div.product .flex-control-thumbs li {width:75px!important;float:none!important;list-style:none}
body.single-product div.product .flex-control-thumbs img {border:2px solid transparent;opacity:.72;transition:opacity .15s,border-color .15s}
body.single-product div.product .flex-control-thumbs img.flex-active,body.single-product div.product .flex-control-thumbs img:hover {border-color:var(--nmp-teal);opacity:1}
body.single-product div.product .variations {margin-bottom:12px}
body.single-product div.product .variations th,body.single-product div.product .variations td {padding:8px 0}
body.single-product div.product .variations label {font-weight:700;color:#162629}
body.single-product div.product .variations select {border:1px solid #c7d6d5;border-radius:8px;min-height:44px}
body.single-product div.product .single_add_to_cart_button.button {background:var(--nmp-teal);color:white;border-radius:10px;min-height:51px;padding:12px 24px;font-weight:750;box-shadow:0 4px 12px #00615d1c}
body.single-product div.product .single_add_to_cart_button.button:hover {background:#004a47}
body.single-product div.product .quantity input.qty {min-height:49px;border-radius:9px}
body.single-product .nmp-size-guide {border:1px solid #d7e5e2;border-radius:9px;padding:12px 15px;margin:14px 0;color:#26403e}
body.single-product .nmp-size-guide summary {cursor:pointer;font-weight:650}
body.single-product .nmp-size-guide p {margin:9px 0 0;font-size:.9rem}
body.single-product .nmp-product-services {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:17px 10px;margin:22px 0 32px;background:#f6f8f7;border-radius:13px;clear:both}
body.single-product .nmp-product-services>div {text-align:center;display:flex;align-items:center;flex-direction:column;gap:4px;color:#194945}
body.single-product .nmp-product-services span {font-size:24px;line-height:1.2}
body.single-product .nmp-product-services strong {font-size:.85rem}
body.single-product .nmp-product-services small {font-size:.76rem;color:#526461}
body.single-product .woocommerce-tabs ul.tabs li.active a {color:#00615d!important}
body.single-product .woocommerce-tabs .panel {line-height:1.7}
@media(max-width:600px){body.single-product .nmp-product-services {grid-template-columns:repeat(2,minmax(0,1fr))}body.single-product div.product .flex-control-thumbs li{width:62px!important}}

/* v0.2.68: Layout scoped to the product page; never alters Club points logic. */
body.nmp-premium-product-active .site-content{background:#fff!important}
body.nmp-premium-product-active .woocommerce div.product{max-width:1240px;margin-left:auto;margin-right:auto}
body.nmp-premium-product-active .woocommerce div.product .summary{padding-top:4px}
body.nmp-premium-product-active .woocommerce div.product .product_title{font-size:clamp(28px,2.6vw,39px)!important;font-weight:750!important;line-height:1.16!important}
body.nmp-premium-product-active .woocommerce div.product .summary .price{font-size:clamp(27px,2.2vw,34px)!important;font-weight:750!important}
body.nmp-premium-product-active .woocommerce div.product .single_add_to_cart_button{background:#005e59!important;color:#fff!important;min-height:54px!important;border-radius:10px!important;font-weight:700!important}
body.nmp-premium-product-active .woocommerce div.product .woocommerce-product-gallery img{border-radius:12px}
body.nmp-premium-product-active .woocommerce div.product .flex-control-thumbs img{border-radius:8px}
body.nmp-premium-product-active .woocommerce div.product .woocommerce-tabs{clear:both;margin-top:28px}
body.nmp-premium-product-active .woocommerce div.product .woocommerce-tabs ul.tabs{border-bottom:1px solid #dce5e3}
body.nmp-premium-product-active .woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom:3px solid #00645f}
body.nmp-premium-product-active .nmp-product-services{border:1px solid #e6eeeb}
@media(min-width:921px){body.nmp-premium-product-active .woocommerce div.product .woocommerce-product-gallery{width:46%!important}body.nmp-premium-product-active .woocommerce div.product .summary{width:49%!important}}
/* v0.2.69: theme-independent selectors for Astra and third-party product layouts */
body.single-product .product .summary .product_title,body.single-product .product .summary h1,body.single-product h1.product_title{font-size:clamp(28px,2.8vw,40px)!important;line-height:1.16!important;font-weight:750!important;color:#17292b!important;letter-spacing:-.025em!important}
body.single-product .product .summary .price,body.single-product .summary p.price{font-size:clamp(27px,2.5vw,35px)!important;font-weight:750!important;color:#15262a!important}
body.single-product button.single_add_to_cart_button,body.single-product .single_add_to_cart_button.button,body.single-product .single_add_to_cart_button{background:#005c57!important;color:#fff!important;min-height:54px!important;border-radius:10px!important;padding:13px 24px!important;font-weight:750!important;box-shadow:0 5px 16px rgba(0,82,77,.15)!important}
body.single-product .woocommerce-product-gallery .flex-control-thumbs,body.single-product .woocommerce-product-gallery ol.flex-control-nav{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:12px 0!important}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li{float:none!important;width:70px!important;margin:0!important}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img{border-radius:8px!important;border:2px solid transparent!important}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active{border-color:#008d86!important;opacity:1!important}
body.single-product .nmp-product-services{clear:both!important}
body.single-product .nmp-size-guide{display:block!important}
/* v0.2.70 - circular colour swatches; WooCommerce's native select stays functional */
body.single-product .variations_form select.nmp-color-native-select{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important}
body.single-product .nmp-color-swatches{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px;margin:9px 0 14px}
body.single-product .nmp-color-choice{display:inline-flex;flex-direction:column;align-items:center;gap:5px;background:transparent!important;border:0!important;box-shadow:none!important;padding:3px!important;cursor:pointer;color:#263c3c!important;font-size:12px;line-height:1.25;min-width:52px}
body.single-product .nmp-color-dot{display:block;width:42px;height:42px;border-radius:50%;border:2px solid #fff;outline:1px solid #c9d3d0;box-shadow:0 0 0 2px transparent;transition:box-shadow .15s,outline-color .15s}
body.single-product .nmp-color-choice.is-selected .nmp-color-dot{outline:2px solid #168d8b;box-shadow:0 0 0 4px #e4f4f1}
body.single-product .nmp-color-choice:focus-visible .nmp-color-dot{outline:3px solid #168d8b;outline-offset:4px}
body.single-product .nmp-color-name{max-width:90px;overflow-wrap:anywhere;text-align:center}
body.single-product .nmp-color-choice:disabled{opacity:.4;cursor:not-allowed}

/* v0.2.71: Hide only duplicate theme colour buttons, not WooCommerce's native select. */
body.single-product .variations_form .nmp-duplicate-color-control{display:none!important}
