/* Product page concepts — sit on top of base.css + concept-b.css */

/* ---------- Shared: trust list ---------- */
html body .woom-trust { list-style: none; margin: 0; padding: 0; }
html body .woom-trust li { display: flex; align-items: center; gap: 14px; }
html body .woom-trust-icon {
	flex: 0 0 auto;
	display: grid; place-items: center;
	width: 44px; height: 44px;
	border-radius: 14px;
	background: var(--w-surface);
	color: var(--w-ink);
}
html body .woom-trust-text { display: flex; flex-direction: column; line-height: 1.35; }
html body .woom-trust-text strong { font-size: 14.5px; font-weight: 650; color: var(--w-ink); }
html body .woom-trust-text small { font-size: 13px; color: var(--w-muted); }
html body.woom-pdp .summary .product_title { font-size: clamp(26px, 2.6vw, 36px); margin-bottom: 10px; }
html body.woom-pdp .summary .price { font-size: 26px !important; margin: 4px 0 18px !important; }
html body.woom-pdp .woocommerce-product-details__short-description { font-size: 16px; line-height: 1.7; color: var(--w-text); }
html body.woom-pdp .nm-single-product-top { padding-top: 18px; }
html body.woom-pdp #nm-breadcrumb, html body.woom-pdp #nm-breadcrumb a { font-size: 13px; color: var(--w-muted) !important; }

/* Quantity + button on one row */
html body.woom-pdp form.cart:not(.variations_form),
html body.woom-pdp form.variations_form .woocommerce-variation-add-to-cart {
	display: flex !important;
	align-items: stretch;
	gap: 12px;
	flex-wrap: nowrap;
}
html body.woom-pdp form.cart .nm-quantity-wrap { margin: 0 !important; flex: 0 0 auto; }
html body.woom-pdp form.cart .single_add_to_cart_button { flex: 1 1 auto; width: auto !important; margin: 0 !important; }

/* =========================================================
   P1 — Buy box: sticky white card on the right
   ========================================================= */
html body.woom-pdp-p1 .nm-single-product-showcase { padding: 8px 0 40px; }
html body.woom-pdp-p1 .summary.entry-summary {
	position: sticky;
	top: 140px;
	align-self: flex-start;
}
html body.woom-pdp-p1 .summary.entry-summary {
	background: #fff;
	border: 1px solid var(--w-line);
	border-radius: 26px;
	box-shadow: var(--w-card-shadow);
	padding: 30px 32px !important;
}
html body.woom-pdp-p1 .summary .nm-product-summary-inner-col { padding: 0 !important; width: 100% !important; float: none !important; }
html body.woom-pdp-p1 .woom-trust-list {
	display: grid;
	gap: 12px;
	margin-top: 22px !important;
	padding-top: 20px !important;
	border-top: 1px solid var(--w-line);
}
html body.woom-pdp-p1 .woocommerce-tabs ul.tabs {
	display: inline-flex !important;
	gap: 4px;
	padding: 5px !important;
	background: #fff;
	border: 1px solid var(--w-line);
	border-radius: 999px;
	margin-bottom: 22px !important;
}
html body.woom-pdp-p1 .woocommerce-tabs ul.tabs li { margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body.woom-pdp-p1 .woocommerce-tabs ul.tabs li::before, html body.woom-pdp-p1 .woocommerce-tabs ul.tabs li::after { display: none !important; }
html body.woom-pdp-p1 .woocommerce-tabs ul.tabs li a {
	display: inline-flex; align-items: center;
	height: 42px; padding: 0 22px !important;
	border-radius: 999px;
	font-size: 15px; font-weight: 600;
	color: var(--w-muted) !important;
}
html body.woom-pdp-p1 .woocommerce-tabs ul.tabs li.active a { background: var(--w-ink); color: #fff !important; }
html body.woom-pdp-p1 .woocommerce-tabs .woocommerce-Tabs-panel .nm-tabs-panel-inner {
	background: #fff;
	border: 1px solid var(--w-line);
	border-radius: 26px;
	padding: 32px 36px;
	box-shadow: var(--w-card-shadow);
}

/* =========================================================
   P2 — Showcase: tinted stage, editorial title, fact tiles, stacked sections
   ========================================================= */
html body.woom-pdp-p2 .nm-single-product-bg { background: transparent; }
html body.woom-pdp-p2 .nm-single-product-showcase {
	background:
		radial-gradient(1200px 500px at 25% 0%, rgba(20, 163, 161, .14), transparent 60%),
		linear-gradient(180deg, #e7f0f2 0%, var(--w-page-bg) 100%);
	padding: 36px 0 56px;
}
html body.woom-pdp-p2 .woocommerce-product-gallery .flex-viewport,
html body.woom-pdp-p2 .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image {
	border-radius: 34px;
	box-shadow: 0 30px 80px rgba(11, 31, 42, .16);
}
html body.woom-pdp-p2 .summary .product_title {
	font-size: clamp(32px, 3.6vw, 52px) !important;
	line-height: 1.05;
	letter-spacing: -0.035em;
	font-weight: 750;
}
html body.woom-pdp-p2 .summary .price {
	display: inline-flex !important;
	align-items: center;
	padding: 8px 18px;
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 4px 14px rgba(11, 31, 42, .08);
	font-size: 22px !important;
}
html body.woom-pdp-p2 .woocommerce-product-details__short-description { font-size: 17.5px; line-height: 1.75; max-width: 34em; }
html body.woom-pdp-p2 .woom-trust-band { padding: 0 0 36px; margin-top: -28px; position: relative; z-index: 2; }
html body.woom-pdp-p2 .woom-trust-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
html body.woom-pdp-p2 .woom-trust-tiles li {
	flex-direction: column; align-items: flex-start; gap: 14px;
	padding: 24px 26px;
	background: #fff;
	border: 1px solid var(--w-line);
	border-radius: 24px;
	box-shadow: var(--w-card-shadow);
}
html body.woom-pdp-p2 .woom-trust-tiles .woom-trust-icon { background: rgba(20, 163, 161, .12); color: #0b6b6a; width: 48px; height: 48px; }
html body.woom-pdp-p2 .woom-trust-tiles strong { font-size: 16px; }
html body.woom-pdp-p2 .woocommerce-tabs ul.tabs { display: none !important; }
html body.woom-pdp-p2 .woocommerce-tabs .woocommerce-Tabs-panel { display: block !important; margin-bottom: 22px; }
html body.woom-pdp-p2 .woocommerce-tabs .woocommerce-Tabs-panel .nm-tabs-panel-inner {
	max-width: 880px;
	margin: 0 auto;
	background: #fff;
	border: 1px solid var(--w-line);
	border-radius: 28px;
	padding: 36px 44px;
	box-shadow: var(--w-card-shadow);
	font-size: 16.5px;
	line-height: 1.75;
}
html body.woom-pdp-p2 .woom-section-title {
	max-width: 880px;
	margin: 30px auto 14px !important;
	font-size: 28px !important;
	letter-spacing: -0.03em;
}

/* =========================================================
   P3 — App-like: folding sections + sticky bottom buy bar
   ========================================================= */
html body.woom-pdp-p3 .woom-trust-list {
	display: flex; flex-wrap: wrap; gap: 8px;
	margin-top: 16px !important;
}
html body.woom-pdp-p3 .woom-trust-list li {
	gap: 8px;
	padding: 8px 14px 8px 8px;
	background: #fff;
	border: 1px solid var(--w-line);
	border-radius: 999px;
}
html body.woom-pdp-p3 .woom-trust-list .woom-trust-icon { width: 30px; height: 30px; border-radius: 999px; }
html body.woom-pdp-p3 .woom-trust-list .woom-trust-icon svg { width: 17px; height: 17px; }
html body.woom-pdp-p3 .woom-trust-list small { display: none; }
html body.woom-pdp-p3 .woom-trust-list strong { font-size: 13px; font-weight: 600; }
html body.woom-pdp-p3 .woom-accordion {
	max-width: 880px;
	margin: 8px auto 40px;
	background: #fff;
	border: 1px solid var(--w-line);
	border-radius: 24px;
	box-shadow: var(--w-card-shadow);
	overflow: hidden;
}
html body.woom-pdp-p3 .woom-accordion details + details { border-top: 1px solid var(--w-line); }
html body.woom-pdp-p3 .woom-accordion summary {
	list-style: none;
	cursor: pointer;
	display: flex; align-items: center; justify-content: space-between;
	padding: 22px 28px;
	font-size: 17px; font-weight: 650; color: var(--w-ink);
}
html body.woom-pdp-p3 .woom-accordion summary::-webkit-details-marker { display: none; }
html body.woom-pdp-p3 .woom-accordion summary::after {
	content: "";
	width: 10px; height: 10px;
	border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translateY(-3px);
	transition: transform .25s var(--w-ease);
}
html body.woom-pdp-p3 .woom-accordion details[open] summary::after { transform: rotate(-135deg) translateY(-3px); }
html body.woom-pdp-p3 .woom-accordion summary:hover { background: var(--w-surface); }
html body.woom-pdp-p3 .woom-accordion .woocommerce-Tabs-panel { padding: 0 28px 24px; margin: 0 !important; }
html body.woom-pdp-p3 .woom-accordion .woocommerce-Tabs-panel .nm-row,
html body.woom-pdp-p3 .woom-accordion .woocommerce-Tabs-panel .col-xs-12 { padding: 0 !important; margin: 0 !important; width: auto !important; }
html body.woom-pdp-p3 .woom-accordion .nm-tabs-panel-inner { font-size: 16px; line-height: 1.7; }
html body.woom-pdp-p3 .woom-buybar {
	position: fixed;
	left: 0; right: 0; bottom: 0;
	z-index: 9990;
	padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
	background: rgba(255, 255, 255, .9);
	-webkit-backdrop-filter: saturate(180%) blur(18px);
	backdrop-filter: saturate(180%) blur(18px);
	border-top: 1px solid var(--w-line);
	box-shadow: 0 -10px 40px rgba(11, 31, 42, .10);
	transform: translateY(110%);
	transition: transform .35s var(--w-ease);
}
html body.woom-pdp-p3 .woom-buybar.is-visible { transform: translateY(0); }
html body.woom-pdp-p3 .woom-buybar-inner { max-width: 1220px; margin: 0 auto; display: flex; align-items: center; gap: 14px; }
html body.woom-pdp-p3 .woom-buybar img { width: 48px; height: 48px; border-radius: 12px; object-fit: cover; background: var(--w-surface); }
html body.woom-pdp-p3 .woom-buybar-text { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
html body.woom-pdp-p3 .woom-buybar-name { font-size: 14.5px; font-weight: 600; color: var(--w-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html body.woom-pdp-p3 .woom-buybar-price, html body.woom-pdp-p3 .woom-buybar-price * { font-size: 15px; font-weight: 700; color: var(--w-ink) !important; }
html body.woom-pdp-p3 .woom-buybar-button {
	flex: 0 0 auto;
	height: 48px; padding: 0 26px;
	border: 0; border-radius: var(--w-radius-btn);
	background: var(--w-btn-bg); color: #fff;
	font-family: var(--w-font-body); font-size: 15px; font-weight: 650;
	cursor: pointer;
}
html body.woom-pdp-p3 .woom-buybar-button:hover { background: var(--w-btn-hover-bg); }

/* ---------- Phones ---------- */
@media (max-width: 767px) {
	html body.woom-pdp-p1 .summary.entry-summary { position: static; }
	html body.woom-pdp-p1 .summary .nm-product-summary-inner-col { padding: 22px 20px !important; }
	html body.woom-pdp-p1 .woocommerce-tabs .woocommerce-Tabs-panel .nm-tabs-panel-inner { padding: 22px 20px; }
	html body.woom-pdp-p2 .woom-trust-tiles { grid-template-columns: 1fr; gap: 10px; }
	html body.woom-pdp-p2 .woom-trust-tiles li { flex-direction: row; align-items: center; padding: 16px 18px; }
	html body.woom-pdp-p2 .woocommerce-tabs .woocommerce-Tabs-panel .nm-tabs-panel-inner { padding: 22px 20px; }
	html body.woom-pdp-p2 .woom-trust-band { margin-top: 0; }
	html body.woom-pdp-p3 .woom-accordion { border-radius: 20px; margin-left: 0; margin-right: 0; }
	html body.woom-pdp-p3 .woom-accordion summary { padding: 18px 20px; }
	html body.woom-pdp-p3 .woom-accordion .woocommerce-Tabs-panel { padding: 0 20px 20px; }
	html body.woom-pdp-p3 .woom-buybar-name { display: none; }
	html body.woom-pdp-p3 .woom-buybar-button { padding: 0 20px; height: 46px; }
}

/* Savoy orders the summary column with flex `order` (form 1, description 2): trust list sits right after the button */
html body.woom-pdp .nm-product-summary-inner-col-2 > .woom-trust-list { order: 1; flex: 1 1 100%; width: 100%; margin-bottom: 22px !important; }
html body.woom-pdp-p1 .nm-product-summary-inner-col-2 > .woom-trust-list { border-top: 0; padding-top: 4px !important; margin-top: 18px !important; padding-bottom: 20px !important; border-bottom: 1px solid var(--w-line); }
html body.woom-pdp-p1 .summary .price { margin-bottom: 22px !important; }
@media (max-width: 767px) { html body.woom-pdp-p3 .woom-accordion { margin-left: 15px !important; margin-right: 15px !important; } }
