/* Shared WooCommerce shell */
.ntegrity-site.woocommerce, .ntegrity-site.woocommerce-page { background-color: var(--ntegrity-canvas); color: var(--ntegrity-ink); }
.ntegrity-site.woocommerce-shop .site-main, .ntegrity-site.post-type-archive-product .site-main, .ntegrity-site.tax-product_cat .site-main, .ntegrity-site.woocommerce-cart .site-main, .ntegrity-site.woocommerce-checkout .site-main, .ntegrity-site.woocommerce-account .site-main { width: min(100% - 40px, var(--ntegrity-content-width)); margin-inline: auto; padding: 70px 0 104px; }
.ntegrity-site .woocommerce-products-header__title, .ntegrity-site.woocommerce-cart .entry-title, .ntegrity-site.woocommerce-checkout .entry-title, .ntegrity-site.woocommerce-account .entry-title { margin: 0 0 34px; font-size: clamp(54px, 7vw, 92px); }
.ntegrity-site .woocommerce-breadcrumb { color: #8f9ab3; font-size: 12px; }
.ntegrity-site .woocommerce-breadcrumb a { color: #aab5cd; }
.ntegrity-site .woocommerce-result-count { color: var(--ntegrity-muted); }
.ntegrity-site .woocommerce-ordering select { min-height: 46px; padding: 8px 40px 8px 13px; }
.ntegrity-site .woocommerce::after { content: ""; display: table; clear: both; }

/* Catalog */
.ntegrity-site .woocommerce .products { clear: both; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; padding-top: 22px; }
.ntegrity-site .woocommerce ul.products::before, .ntegrity-site .woocommerce ul.products::after { display: none; }
.ntegrity-site .woocommerce ul.products li.product { position: relative; float: none; width: auto; margin: 0; padding: 14px; overflow: hidden; background: linear-gradient(155deg, rgba(18, 28, 54, .96), rgba(8, 13, 29, .98)); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); box-shadow: 0 15px 38px rgba(0,0,0,.22); transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease; }
.ntegrity-site .woocommerce ul.products li.product:hover { transform: translateY(-5px); border-color: rgba(113, 107, 244, .62); box-shadow: 0 24px 58px rgba(0,0,0,.35), 0 0 34px rgba(70, 70, 235, .12); }
.ntegrity-site .woocommerce ul.products li.product a img { aspect-ratio: 1 / 1; margin: 0 0 18px; object-fit: contain; background: #eef1f7; border-radius: 10px; }
.ntegrity-site .woocommerce ul.products li.product .woocommerce-loop-product__title { margin: 0 0 10px; padding: 0; color: var(--ntegrity-ink); font-family: var(--ntegrity-font-display); font-size: 27px; font-weight: 500; text-transform: uppercase; }
.ntegrity-site .woocommerce ul.products li.product .price, .ntegrity-site .woocommerce div.product p.price, .ntegrity-site .woocommerce div.product span.price { color: #fff !important; font-weight: 700; }
.ntegrity-site .woocommerce .price del { color: #8490aa; opacity: 1; }
.ntegrity-site .woocommerce .price ins { color: #fff; text-decoration: none; }
.ntegrity-site .woocommerce span.onsale { top: 0 !important; right: 0 !important; left: auto !important; z-index: 3; min-width: auto !important; min-height: auto !important; padding: 9px 13px !important; background: var(--ntegrity-gradient) !important; border-radius: 0 0 0 9px !important; color: #fff !important; font-size: 11px; line-height: 1; letter-spacing: .06em; text-transform: uppercase; }
.ntegrity-site .woocommerce a.button, .ntegrity-site .woocommerce button.button, .ntegrity-site .woocommerce input.button, .ntegrity-site .woocommerce #respond input#submit { min-height: 44px; padding: 13px 17px; background: var(--ntegrity-gradient) !important; border: 1px solid transparent !important; border-radius: var(--ntegrity-radius-small); color: #fff !important; font-size: 12px; font-weight: 700; line-height: 1.2; letter-spacing: .025em; text-transform: uppercase; }
.ntegrity-site .woocommerce a.button:hover, .ntegrity-site .woocommerce button.button:hover, .ntegrity-site .woocommerce input.button:hover, .ntegrity-site .woocommerce #respond input#submit:hover { border-color: rgba(255,255,255,.22); color: #fff; filter: brightness(1.12); }
.ntegrity-site .woocommerce ul.products li.product .button { width: 100%; margin-top: 12px; text-align: center; }

/* Inputs, messages and shared data surfaces */
.ntegrity-site .woocommerce form .form-row input.input-text, .ntegrity-site .woocommerce form .form-row textarea, .ntegrity-site .woocommerce form .form-row select, .ntegrity-site .select2-container .select2-selection--single { min-height: 48px; padding: 11px 13px; background: var(--ntegrity-surface-raised); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-small); color: var(--ntegrity-ink); }
.ntegrity-site .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--ntegrity-ink); line-height: 26px; }
.ntegrity-site .select2-dropdown { background: #111a34; border-color: var(--ntegrity-border); color: var(--ntegrity-ink); }
.ntegrity-site .select2-results__option[aria-selected="true"], .ntegrity-site .select2-results__option--highlighted[aria-selected] { background: #27365f; color: #fff; }
.ntegrity-site .woocommerce-error, .ntegrity-site .woocommerce-info, .ntegrity-site .woocommerce-message { background: rgba(13, 20, 41, .96); border: 1px solid var(--ntegrity-border); border-top: 3px solid var(--ntegrity-cobalt); border-radius: var(--ntegrity-radius-small); color: #dfe5f2; }
.ntegrity-site .woocommerce-message::before { color: var(--ntegrity-success); }
.ntegrity-site .woocommerce-error::before { color: var(--ntegrity-danger); }
.ntegrity-site .woocommerce table.shop_table { border-color: var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); background: rgba(13, 20, 41, .92); color: var(--ntegrity-ink); }
.ntegrity-site .woocommerce table.shop_table th, .ntegrity-site .woocommerce table.shop_table td { border-color: var(--ntegrity-border); }
.ntegrity-site .woocommerce table.shop_table td, .ntegrity-site .woocommerce table.shop_table th { color: #dce3f1; }

/* Product detail */
.ntegrity-site.single-product .site-main { width: min(100% - 40px, 1160px); margin-inline: auto; padding: 42px 0 100px; }
.ntegrity-site.single-product .woocommerce-breadcrumb { margin: 0 0 22px; }
.ntegrity-site.single-product .woocommerce div.product { display: grid; grid-template-columns: minmax(0, 1fr) minmax(380px, .92fr); gap: 24px; }
.ntegrity-site.single-product .woocommerce div.product div.images, .ntegrity-site.single-product .woocommerce div.product div.summary { float: none; width: auto; margin: 0; border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); box-shadow: var(--ntegrity-shadow-soft); }
.ntegrity-site.single-product .woocommerce div.product div.images { padding: 24px; background: linear-gradient(145deg, #f8f9fb, #e8edf5); }
.ntegrity-site.single-product .woocommerce div.product div.images img { border-radius: 8px; }
.ntegrity-site.single-product .woocommerce div.product div.images .flex-control-thumbs { display: none; }
.ntegrity-site.single-product .woocommerce div.product div.summary { display: flex; flex-direction: column; justify-content: center; padding: clamp(28px, 4vw, 52px); background: linear-gradient(145deg, rgba(19, 29, 56, .97), rgba(9, 14, 31, .98)); }
.ntegrity-site.single-product .product_title { margin: 0 0 18px; font-family: var(--ntegrity-font-display); font-size: clamp(48px, 5vw, 72px); font-weight: 500; line-height: .95; text-transform: uppercase; }
.ntegrity-site.single-product .woocommerce-product-details__short-description { color: #bec7da; font-size: 16px; line-height: 1.68; }
.ntegrity-site.single-product .product_meta { padding-top: 18px; border-top: 1px solid var(--ntegrity-border); color: var(--ntegrity-muted); font-size: 12px; line-height: 1.8; }
.ntegrity-site.single-product form.cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: 10px; margin-top: 18px; }
.ntegrity-site .quantity { display: inline-flex; min-width: 72px; }
.ntegrity-site .quantity .qty { width: 72px; min-height: 46px; padding: 8px; color: var(--ntegrity-ink); text-align: center; }
.ntegrity-site.single-product form.cart .single_add_to_cart_button { min-width: 190px; }
.ntegrity-strength-selector { margin: 6px 0 22px; }
.ntegrity-strength-selector__label { display: block; margin-bottom: 10px; color: #d9e0ee; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.ntegrity-strength-selector__options { display: flex; flex-wrap: wrap; gap: 8px; }
.ntegrity-strength-selector__option { min-width: 70px; padding: 11px 14px; background: rgba(255,255,255,.045); border: 1px solid var(--ntegrity-border); border-radius: 999px; color: #e7ecf7; font-size: 12px; font-weight: 600; text-align: center; text-decoration: none; }
.ntegrity-strength-selector__option:hover, .ntegrity-strength-selector__option.is-active { background: rgba(32, 102, 249, .2); border-color: #4c7cff; color: #fff; box-shadow: 0 0 0 2px rgba(32,102,249,.12); }
.ntegrity-site.single-product .woocommerce-tabs, .ntegrity-site.single-product .ntegrity-coa, .ntegrity-site.single-product .related, .ntegrity-site.single-product .upsells { grid-column: 1 / -1; }
.ntegrity-site.single-product .woocommerce-tabs { margin-top: 10px; padding: 34px clamp(24px, 4vw, 52px) 48px; background: rgba(13, 20, 41, .94); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); }
.ntegrity-site.single-product .woocommerce div.product .woocommerce-tabs ul.tabs { margin: 0 0 34px; padding: 0; }
.ntegrity-site.single-product .woocommerce div.product .woocommerce-tabs ul.tabs::before { border-bottom-color: var(--ntegrity-border); }
.ntegrity-site.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 8px 0 0; background: #111a34; border-color: var(--ntegrity-border); border-radius: 8px 8px 0 0; }
.ntegrity-site.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a { color: #b9c3d8; }
.ntegrity-site.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: #1b2850; border-color: #4b70e5; }
.ntegrity-site.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #fff; }
.ntegrity-site.single-product .woocommerce-Tabs-panel > h2:first-child { display: none; }
.ntegrity-site.single-product .woocommerce-Tabs-panel h2 { margin: 44px 0 16px; font-size: clamp(34px, 4vw, 48px); }
.ntegrity-site.single-product .woocommerce-Tabs-panel > h2:first-of-type { margin-top: 0; }
.ntegrity-site.single-product .woocommerce-Tabs-panel p, .ntegrity-site.single-product .woocommerce-Tabs-panel li { max-width: 820px; color: #c0c8d9; line-height: 1.75; }
.ntegrity-site.single-product .ntegrity-spec-table { width: min(100%, 820px); margin: 0; border-collapse: collapse; }
.ntegrity-site.single-product .ntegrity-spec-table th, .ntegrity-site.single-product .ntegrity-spec-table td { padding: 16px 18px; border: 1px solid var(--ntegrity-border); color: #dfe5f2; text-align: left; }
.ntegrity-site.single-product .ntegrity-spec-table th { width: 38%; background: #111a34; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.ntegrity-product-description { max-width: 920px; margin-inline: auto; }
.ntegrity-product-description > h2 { margin: 0 0 26px; text-align: center; }
.ntegrity-product-accordion { border-top: 1px solid var(--ntegrity-border); }
.ntegrity-product-accordion details { border: 1px solid var(--ntegrity-border); border-top: 0; background: rgba(8, 13, 29, .55); }
.ntegrity-product-accordion summary { position: relative; padding: 18px 52px 18px 18px; color: #eef2fa; cursor: pointer; font-weight: 600; list-style: none; }
.ntegrity-product-accordion summary::-webkit-details-marker { display: none; }
.ntegrity-product-accordion summary::after { position: absolute; top: 50%; right: 20px; width: 9px; height: 9px; content: ""; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-70%) rotate(45deg); transition: transform 180ms ease; }
.ntegrity-product-accordion details[open] > summary { background: rgba(32, 102, 249, .12); border-bottom: 1px solid rgba(76, 124, 255, .35); }
.ntegrity-product-accordion details[open] > summary::after { transform: translateY(-30%) rotate(225deg); }
.ntegrity-product-accordion__body { padding: 24px 22px 28px; color: #c0c8d9; }
.ntegrity-product-accordion__body > :first-child { margin-top: 0; }
.ntegrity-product-accordion__body > :last-child { margin-bottom: 0; }
.ntegrity-at-a-glance { margin-top: 22px; padding: 16px 18px; background: rgba(32, 102, 249, .08); border: 1px solid rgba(76,124,255,.25); color: #cbd4e6; }
.ntegrity-testing-tab > h2 { margin-top: 0 !important; }
.ntegrity-site.single-product .ntegrity-coa { padding: 26px 30px; background: rgba(32, 102, 249, .08); border: 1px solid rgba(76,124,255,.3); border-left: 4px solid var(--ntegrity-cobalt); border-radius: var(--ntegrity-radius-small); }

/* Cart */
.ntegrity-site.woocommerce-cart .woocommerce { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(320px, .8fr); gap: 24px; align-items: start; }
.ntegrity-site.woocommerce-cart .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.ntegrity-site.woocommerce-cart .woocommerce-cart-form { min-width: 0; padding: 18px; background: rgba(13, 20, 41, .94); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); }
.ntegrity-site.woocommerce-cart .cart-collaterals { width: auto; }
.ntegrity-site.woocommerce-cart .cart-collaterals .cart_totals { float: none; width: 100%; padding: 24px; background: rgba(13, 20, 41, .96); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); }
.ntegrity-site.woocommerce-cart .cart-collaterals h2 { margin: 0 0 20px; font-size: 40px; }
.ntegrity-site.woocommerce-cart table.cart img { width: 72px; border-radius: 8px; background: #eef1f7; }
.ntegrity-site.woocommerce-cart table.cart .product-name a { color: #eef2fb; font-weight: 600; }
.ntegrity-site.woocommerce-cart table.cart td.actions .coupon { display: flex; gap: 8px; }
.ntegrity-site.woocommerce-cart table.cart td.actions .coupon .input-text { width: 180px; min-height: 44px; padding: 9px 12px; }
.ntegrity-site.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { font-size: 14px; }

/* Checkout */
.ntegrity-site.woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(380px, .88fr); gap: 26px; align-items: start; }
.ntegrity-site.woocommerce-checkout .ntegrity-checkout-steps { margin-bottom: 24px; padding: 15px 18px; background: rgba(13, 20, 41, .96) !important; border: 1px solid var(--ntegrity-border); border-radius: 10px; color: #c5cee0 !important; }
.ntegrity-site.woocommerce-checkout .ntegrity-checkout-steps a, .ntegrity-site.woocommerce-checkout .ntegrity-checkout-steps strong { color: #dfe5f2 !important; }
.ntegrity-site.woocommerce-checkout .ntegrity-checkout-steps strong:last-child { color: #9b74ef !important; }
.ntegrity-site.woocommerce-checkout #customer_details, .ntegrity-site.woocommerce-checkout #order_review { min-width: 0; }
.ntegrity-site.woocommerce-checkout #customer_details { padding: clamp(22px, 3vw, 34px); background: rgba(13, 20, 41, .94); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); }
.ntegrity-site.woocommerce-checkout #order_review_heading { margin: 0 0 14px; padding: 0 24px; font-size: 48px; }
.ntegrity-site.woocommerce-checkout #order_review { padding: 24px; background: rgba(13, 20, 41, .97); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); box-shadow: var(--ntegrity-shadow-soft); }
.ntegrity-site.woocommerce-checkout .col2-set .col-1, .ntegrity-site.woocommerce-checkout .col2-set .col-2 { float: none; width: 100%; }
.ntegrity-site.woocommerce-checkout .woocommerce-billing-fields h3, .ntegrity-site.woocommerce-checkout .woocommerce-additional-fields h3 { margin-top: 0; font-size: 42px; }
.ntegrity-site.woocommerce-checkout .woocommerce-checkout-review-order-table img { width: 58px; border-radius: 7px; background: #eef1f7; }
.ntegrity-site.woocommerce-checkout #payment { background: transparent; }
.ntegrity-site.woocommerce-checkout #payment ul.payment_methods { padding: 18px 0; border-bottom-color: var(--ntegrity-border); }
.ntegrity-site.woocommerce-checkout #payment ul.payment_methods li { margin: 0 0 10px; padding: 14px 16px; background: #111a34; border: 1px solid var(--ntegrity-border); border-radius: 10px; transition: border-color 160ms ease, background 160ms ease; }
.ntegrity-site.woocommerce-checkout #payment ul.payment_methods li:has(input:checked) { background: rgba(32, 102, 249, .12); border-color: #4c7cff; box-shadow: 0 0 0 2px rgba(32,102,249,.08); }
.ntegrity-site.woocommerce-checkout #payment div.payment_box { margin: 14px -4px -4px; background: #0b1227; border: 1px solid var(--ntegrity-border); color: #c6cee0; }
.ntegrity-site.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #0b1227; }
.ntegrity-site.woocommerce-checkout #payment .place-order { padding: 18px 0 0; }
.ntegrity-site.woocommerce-checkout #payment #place_order { float: none; width: 100%; min-height: 54px; font-size: 14px; }
.ntegrity-site.woocommerce-checkout .woocommerce-privacy-policy-text { color: #aeb8ce; font-size: 13px; }
.ntegrity-site.woocommerce-checkout .form-row label { color: #d9e0ee; }

/* Account */
.ntegrity-site.woocommerce-account .woocommerce { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 26px; }
.ntegrity-site.woocommerce-account .woocommerce-notices-wrapper, .ntegrity-site.woocommerce-account .woocommerce-form-login, .ntegrity-site.woocommerce-account .woocommerce-form-register { grid-column: auto; }
.ntegrity-site.woocommerce-account .woocommerce-MyAccount-navigation { width: auto; padding: 12px; background: rgba(13, 20, 41, .94); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); }
.ntegrity-site.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.ntegrity-site.woocommerce-account .woocommerce-MyAccount-navigation li + li { border-top: 1px solid var(--ntegrity-border); }
.ntegrity-site.woocommerce-account .woocommerce-MyAccount-navigation a { display: block; padding: 13px 12px; color: #c9d2e4; text-decoration: none; }
.ntegrity-site.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { color: #fff; background: rgba(32, 102, 249, .14); border-radius: 7px; }
.ntegrity-site.woocommerce-account .woocommerce-MyAccount-content { float: none; width: auto; padding: clamp(22px, 3vw, 36px); background: rgba(13, 20, 41, .94); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); }
.ntegrity-site.woocommerce-account .woocommerce-form-login, .ntegrity-site.woocommerce-account .woocommerce-form-register, .ntegrity-site .woocommerce-form-coupon { padding: 28px; background: rgba(13, 20, 41, .96); border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); }

@media (max-width: 1024px) {
	.ntegrity-site .woocommerce .products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ntegrity-site.single-product .woocommerce div.product { grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr); }
	.ntegrity-site.woocommerce-cart .woocommerce, .ntegrity-site.woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
	.ntegrity-site.woocommerce-checkout #order_review_heading { padding: 0; }
}
@media (max-width: 760px) {
	.ntegrity-site.woocommerce-shop .site-main, .ntegrity-site.post-type-archive-product .site-main, .ntegrity-site.tax-product_cat .site-main, .ntegrity-site.woocommerce-cart .site-main, .ntegrity-site.woocommerce-checkout .site-main, .ntegrity-site.woocommerce-account .site-main, .ntegrity-site.single-product .site-main { width: min(100% - 28px, var(--ntegrity-content-width)); padding: 42px 0 76px; }
	.ntegrity-site.single-product .woocommerce div.product { grid-template-columns: 1fr; gap: 16px; }
	.ntegrity-site.single-product .woocommerce div.product div.images { padding: 14px; }
	.ntegrity-site.single-product .woocommerce div.product div.summary { padding: 28px 22px; }
	.ntegrity-site.single-product .product_title { font-size: clamp(44px, 13vw, 60px); }
	.ntegrity-site.single-product .woocommerce-tabs { padding: 26px 20px 38px; }
	.ntegrity-site.single-product .ntegrity-spec-table th, .ntegrity-site.single-product .ntegrity-spec-table td { padding: 13px 12px; }
	.ntegrity-site.single-product .ntegrity-coa { padding: 22px; }
	.ntegrity-site.woocommerce-account .woocommerce { grid-template-columns: 1fr; }
	.ntegrity-site.woocommerce-cart .woocommerce-cart-form { overflow-x: auto; }
	.ntegrity-site.woocommerce-cart table.cart { min-width: 660px; }
	.ntegrity-site.woocommerce-checkout #customer_details, .ntegrity-site.woocommerce-checkout #order_review { padding: 20px; }
}
@media (max-width: 560px) {
	.ntegrity-site .woocommerce .products { grid-template-columns: 1fr; }
	.ntegrity-site .woocommerce-result-count, .ntegrity-site .woocommerce-ordering { float: none; width: 100%; }
	.ntegrity-site .woocommerce-ordering select { width: 100%; }
	.ntegrity-site.single-product form.cart .single_add_to_cart_button { flex: 1; min-width: 160px; }
}

/* WooCommerce archives are not consistently wrapped in a .woocommerce container. */
.ntegrity-site ul.products { clear: both; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; padding-top: 22px; }
.ntegrity-site ul.products::before, .ntegrity-site ul.products::after { display: none; }
.ntegrity-site ul.products li.product { position: relative; float: none !important; width: auto !important; margin: 0 !important; padding: 14px !important; overflow: hidden; background: linear-gradient(155deg, rgba(18, 28, 54, .96), rgba(8, 13, 29, .98)) !important; border: 1px solid var(--ntegrity-border) !important; border-radius: var(--ntegrity-radius-medium); box-shadow: 0 15px 38px rgba(0,0,0,.22); }
.ntegrity-site ul.products li.product a img { aspect-ratio: 1 / 1; margin: 0 0 18px !important; object-fit: contain; background: #eef1f7; border-radius: 10px; }
.ntegrity-site ul.products li.product .woocommerce-loop-product__title { color: var(--ntegrity-ink) !important; font-family: var(--ntegrity-font-display); font-size: 27px; text-transform: uppercase; }
.ntegrity-site ul.products li.product .price, .ntegrity-site div.product p.price, .ntegrity-site div.product span.price { color: #fff !important; }
.ntegrity-site span.onsale { top: 0 !important; right: 0 !important; left: auto !important; z-index: 3; min-width: auto !important; min-height: auto !important; padding: 9px 13px !important; background: var(--ntegrity-gradient) !important; border-radius: 0 0 0 9px !important; color: #fff !important; font-size: 11px !important; line-height: 1 !important; letter-spacing: .06em; text-transform: uppercase; }
.ntegrity-site a.button, .ntegrity-site button.button, .ntegrity-site input.button, .ntegrity-site #respond input#submit { background: var(--ntegrity-gradient) !important; border: 1px solid transparent !important; color: #fff !important; }
.ntegrity-site ul.products li.product .button { width: 100%; margin-top: 12px; text-align: center; }

@media (max-width: 1024px) { .ntegrity-site ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .ntegrity-site ul.products { grid-template-columns: 1fr; } }

/* Direct product-page scope for templates without a .woocommerce wrapper. */
.ntegrity-site.single-product div.product { display: grid; grid-template-columns: minmax(0, 1fr) minmax(380px, .92fr); gap: 24px; }
.ntegrity-site.single-product div.product div.images, .ntegrity-site.single-product div.product div.summary { float: none !important; width: auto !important; margin: 0 !important; border: 1px solid var(--ntegrity-border); border-radius: var(--ntegrity-radius-medium); box-shadow: var(--ntegrity-shadow-soft); }
.ntegrity-site.single-product div.product div.images { padding: 24px; background: linear-gradient(145deg, #f8f9fb, #e8edf5); }
.ntegrity-site.single-product div.product div.summary { display: flex; flex-direction: column; justify-content: center; padding: clamp(28px, 4vw, 52px); background: linear-gradient(145deg, rgba(19, 29, 56, .97), rgba(9, 14, 31, .98)); }
.ntegrity-site.single-product div.product .woocommerce-tabs, .ntegrity-site.single-product div.product .ntegrity-coa, .ntegrity-site.single-product div.product .related, .ntegrity-site.single-product div.product .upsells { grid-column: 1 / -1; }

@media (max-width: 1024px) { .ntegrity-site.single-product div.product { grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr); } }
@media (max-width: 760px) {
	.ntegrity-site.single-product div.product { grid-template-columns: 1fr; gap: 16px; }
	.ntegrity-site.single-product div.product div.images { padding: 14px; }
	.ntegrity-site.single-product div.product div.summary { padding: 28px 22px; }
}
