/*
 * Premium B2B product hero.
 *
 * This file only reshapes WooCommerce's native single-product DOM. Gallery,
 * zoom, lightbox, product data, CTA hooks and structured data stay intact.
 */

.single-product.bgn-commerce-page .bgn-commerce{
	padding-top:clamp(22px,2.4vw,32px);
	background:
		radial-gradient(circle at 12% 4%,rgba(22,151,173,.08),transparent 24rem),
		linear-gradient(180deg,#f5f9fb 0,#fff 660px);
}

.single-product .bgn-commerce .woocommerce-breadcrumb{
	display:flex;
	align-items:center;
	min-height:28px;
	margin-bottom:clamp(20px,2vw,28px);
	color:#6a7b88;
	font-size:.78rem;
	font-weight:650;
	letter-spacing:.005em;
}

.single-product .bgn-commerce div.product{
	position:relative;
	grid-template-columns:minmax(0,.96fr) minmax(480px,1.04fr);
	gap:clamp(20px,2vw,28px);
}

.single-product .bgn-commerce div.product::before{
	display:none;
}

.single-product .bgn-product-hero-media,
.single-product .bgn-commerce div.product .summary{
	position:relative;
	z-index:1;
	grid-row:1;
	min-width:0;
	align-self:stretch;
}

.single-product .bgn-product-hero-media{
	grid-column:1;
	display:flex;
	flex-direction:column;
	margin:0;
	padding:0;
	border:0;
	border-radius:20px;
	background:rgba(255,255,255,.88);
	box-shadow:0 22px 60px rgba(5,45,74,.1);
	overflow:hidden;
}

.single-product .bgn-product-hero-media::before{
	content:"";
	position:absolute;
	inset:0 0 auto;
	height:64%;
	border-radius:14px;
	background:
		radial-gradient(circle at 50% 62%,rgba(4,180,172,.11),transparent 42%),
		linear-gradient(155deg,#f7fafb,#eef5f7);
	pointer-events:none;
}

.single-product.woocommerce .bgn-commerce div.product .bgn-product-hero-media div.images.woocommerce-product-gallery{
	z-index:1;
	display:flex;
	flex:1;
	flex-direction:column;
	width:100%;
	margin:0;
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__wrapper{
	flex:1;
	border:0;
	border-radius:14px;
	background:transparent;
	box-shadow:none;
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__image a{
	position:relative;
	display:block;
	overflow:hidden;
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__image img{
	min-height:clamp(520px,44vw,600px);
	padding:0;
	background:transparent;
	transform:scale(1);
	transition:transform .65s cubic-bezier(.2,.72,.2,1),filter .65s ease;
	filter:drop-shadow(0 20px 18px rgba(8,39,62,.12));
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__image a:hover img{
	transform:scale(1.025);
	filter:drop-shadow(0 26px 24px rgba(8,39,62,.16));
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery .flex-control-thumbs{
	z-index:2;
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(68px,78px));
	gap:10px;
	margin:0;
	padding:12px;
	border-top:0;
	background:rgba(255,255,255,.66);
}

.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li img{
	padding:5px;
	border:1px solid rgba(4,76,132,.08);
	border-radius:9px;
	background:#f5f9fa;
	opacity:.68;
	box-shadow:none;
}

.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li img:hover,
.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li img.flex-active{
	border-color:var(--bgn-blue);
	background:#fff;
	opacity:1;
	box-shadow:0 7px 18px rgba(4,76,132,.12);
	transform:translateY(-3px);
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__trigger{
	top:18px;
	right:18px;
	width:46px;
	height:46px;
	border-color:rgba(4,76,132,.12);
	border-radius:50%;
	background:rgba(255,255,255,.94);
	box-shadow:0 12px 28px rgba(4,48,81,.14);
	transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease;
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__trigger:hover{
	background:#fff;
	box-shadow:0 16px 34px rgba(4,48,81,.2);
	transform:translateY(-2px) scale(1.03);
}

.single-product .bgn-commerce div.product .summary{
	grid-column:2;
	display:flex;
	flex-direction:column;
	margin:0;
	padding:clamp(28px,2.5vw,32px);
	border:0;
	border-radius:20px;
	background:rgba(255,255,255,.94);
	box-shadow:0 22px 60px rgba(5,45,74,.08);
	color:#1e3342;
	backdrop-filter:blur(12px);
}

.single-product .bgn-product-hero__eyebrow{
	display:flex;
	align-items:center;
	gap:10px;
	margin:0 0 13px;
	color:#14727d;
	font-size:.75rem;
	font-weight:850;
	letter-spacing:.11em;
	line-height:1.4;
	text-transform:uppercase;
}

.single-product .bgn-product-hero__eyebrow > span{
	display:block;
	width:28px;
	height:2px;
	border-radius:99px;
	background:linear-gradient(90deg,var(--bgn-yellow),#eea817);
}

.single-product .bgn-commerce div.product .product_title{
	max-width:14em;
	margin:0 0 16px;
	color:#073f6d;
	font-size:clamp(1.9rem,2.4vw,2.25rem);
	font-weight:760;
	line-height:1.09;
	letter-spacing:-.04em;
	text-wrap:balance;
}

.single-product .bgn-commerce div.product p.price,
.single-product .bgn-commerce div.product span.price{
	display:inline-flex;
	width:max-content;
	align-items:center;
	min-height:40px;
	margin:0 0 5px;
	padding:7px 13px;
	border:1px solid rgba(4,76,132,.1);
	border-radius:9px;
	background:#eef6f8;
	color:var(--bgn-blue);
	font-size:1.25rem;
	font-weight:850;
	letter-spacing:-.02em;
}

.single-product .bgn-product-vat-note{
	margin:4px 0 17px;
	color:#3d7e3a;
	font-size:.78rem;
	font-weight:650;
}

.single-product .bgn-commerce div.product .woocommerce-product-details__short-description{
	margin:0 0 19px;
	padding:0 0 0 16px;
	border:0;
	border-left:2px solid rgba(4,180,172,.45);
	color:#435563;
	font-size:.94rem;
	line-height:1.62;
}

.single-product .bgn-product-actions{
	gap:8px;
	margin-top:0;
	padding-top:14px;
	border-top:1px solid rgba(4,76,132,.1);
}

.single-product .bgn-product-actions .bgn-button{
	position:relative;
	isolation:isolate;
	border-radius:8px;
	overflow:hidden;
}

.single-product .bgn-product-actions__consult{
	min-height:54px;
	background:linear-gradient(135deg,#ffd03b,#ffc324);
	color:#062f50;
	box-shadow:0 14px 26px rgba(221,161,0,.2);
}

.single-product .bgn-product-actions__consult::after{
	content:"";
	position:absolute;
	top:-60%;
	bottom:-60%;
	left:-34%;
	z-index:-1;
	width:24%;
	background:linear-gradient(90deg,transparent,rgba(255,255,255,.58),transparent);
	transform:skewX(-20deg);
	transition:left .55s cubic-bezier(.2,.72,.2,1);
}

.single-product .bgn-product-actions__consult:hover::after{left:112%}
.single-product .bgn-product-actions__consult:hover{background:linear-gradient(135deg,#ffda57,#ffc92d);box-shadow:0 18px 32px rgba(221,161,0,.26)}

.single-product .bgn-product-actions__minimum{
	min-height:40px;
	padding:8px 13px;
	border-color:rgba(20,130,141,.2);
	border-radius:8px;
	background:#eff9f8;
	color:#184e58;
	font-size:.82rem;
	font-weight:750;
}

.single-product .bgn-product-actions__secondary{gap:10px}

.single-product .bgn-product-actions__call,
.single-product .bgn-product-actions__zalo{
	min-height:48px;
	font-size:.88rem;
	box-shadow:none;
}

.single-product .bgn-product-actions__call{
	border-color:#084f83;
	background:#084f83;
}

.single-product .bgn-product-actions__zalo{
	border-color:rgba(4,76,132,.24);
	background:#fff;
}

.single-product .bgn-product-benefits{
	gap:9px;
	margin:14px 0 0;
	padding:14px 0 0;
	border-top-color:rgba(4,76,132,.1);
}

.single-product .bgn-product-benefits__item{
	min-height:52px;
	align-items:center;
	gap:9px;
	padding:10px;
	border:1px solid rgba(4,76,132,.08);
	border-radius:9px;
	background:#f8fafb;
	color:#314553;
	font-size:.78rem;
	font-weight:650;
	line-height:1.4;
	transition:border-color .2s ease,background-color .2s ease,transform .2s ease;
}

.single-product .bgn-product-benefits__item:hover{
	border-color:rgba(4,180,172,.25);
	background:#f3faf9;
	transform:translateY(-2px);
}

.single-product .bgn-product-benefits__icon{
	flex-basis:25px;
	width:25px;
	height:25px;
	background:#fff3cb;
	color:#b97400;
	box-shadow:inset 0 0 0 1px rgba(207,145,0,.08);
}

.single-product .bgn-product-benefits__icon .bgn-icon{width:14px;height:14px}

.single-product .bgn-product-bulk-note{
	margin:15px 0 0;
	padding:0 2px;
	color:#62727d;
	font-size:.76rem;
	font-weight:600;
	line-height:1.55;
}

.single-product .bgn-commerce div.product .product_meta{
	display:flex;
	flex-wrap:wrap;
	gap:7px;
	margin-top:auto;
	padding-top:17px;
	border-top:1px solid rgba(4,76,132,.1);
	color:#6a7983;
	font-size:.71rem;
	font-weight:600;
	line-height:1.45;
}

.single-product .bgn-commerce div.product .product_meta > span{
	display:block;
	margin:0;
	padding:6px 9px;
	border:1px solid rgba(4,76,132,.08);
	border-radius:6px;
	background:#f8fafb;
}

.single-product .bgn-commerce div.product .product_meta a{
	color:#34647f;
	font-weight:700;
}

/* Purposeful entrance motion: editorial, short and non-blocking. */
.bgn-motion-ready.single-product .bgn-product-hero-media{
	opacity:0;
	animation:bgn-product-media-in .72s cubic-bezier(.2,.72,.2,1) .06s forwards;
}

.bgn-motion-ready.single-product .bgn-commerce div.product .summary{
	opacity:0;
	animation:bgn-product-summary-in .72s cubic-bezier(.2,.72,.2,1) .14s forwards;
}

.bgn-motion-ready.single-product .flex-control-thumbs li{
	opacity:0;
	animation:bgn-product-thumb-in .48s cubic-bezier(.2,.72,.2,1) forwards;
}

.bgn-motion-ready.single-product .flex-control-thumbs li:nth-child(1){animation-delay:.36s}
.bgn-motion-ready.single-product .flex-control-thumbs li:nth-child(2){animation-delay:.42s}
.bgn-motion-ready.single-product .flex-control-thumbs li:nth-child(3){animation-delay:.48s}
.bgn-motion-ready.single-product .flex-control-thumbs li:nth-child(4){animation-delay:.54s}
.bgn-motion-ready.single-product .flex-control-thumbs li:nth-child(n+5){animation-delay:.6s}

@keyframes bgn-product-media-in{
	from{opacity:0;transform:translate3d(-18px,10px,0)}
	to{opacity:1;transform:none}
}

@keyframes bgn-product-summary-in{
	from{opacity:0;transform:translate3d(18px,10px,0)}
	to{opacity:1;transform:none}
}

@keyframes bgn-product-thumb-in{
	from{opacity:0;transform:translateY(9px)}
	to{opacity:1;transform:none}
}

@media(max-width:1024px){
	.single-product .bgn-commerce div.product{
		grid-template-columns:minmax(0,.94fr) minmax(410px,1.06fr);
		gap:28px;
	}
	.single-product .bgn-commerce div.product .summary{padding:26px 24px}
	.single-product .bgn-commerce div.product .product_title{font-size:clamp(1.85rem,3.4vw,2.3rem)}
	.single-product .bgn-commerce div.product .woocommerce-product-gallery__image img{min-height:460px;padding:0}
	.single-product .bgn-product-benefits__item{min-height:54px;padding:8px;font-size:.72rem}
}

@media(max-width:900px){
	.single-product .bgn-commerce div.product{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
	.single-product .bgn-commerce div.product::before{display:none}
	.single-product .bgn-product-hero-media,
	.single-product .bgn-commerce div.product .summary{grid-column:1;grid-row:auto}
	.single-product .bgn-product-hero-media{padding:0}
	.single-product .bgn-commerce div.product .summary{padding:clamp(24px,5vw,38px)}
	.single-product .bgn-commerce div.product .woocommerce-product-gallery__image img{min-height:0}
}

@media(max-width:767px){
	.single-product.bgn-commerce-page .bgn-commerce{padding-top:16px;background:linear-gradient(180deg,#f4f8fa 0,#fff 520px)}
	.single-product .bgn-commerce .woocommerce-breadcrumb{margin-bottom:14px;font-size:.72rem;scrollbar-width:none}
	.single-product .bgn-commerce .woocommerce-breadcrumb::-webkit-scrollbar{display:none}
	.single-product .bgn-commerce div.product{gap:14px}
	.single-product .bgn-product-hero-media{border-radius:15px;box-shadow:0 16px 42px rgba(5,45,74,.09)}
	.single-product .bgn-product-hero-media::before{inset:0 0 auto;height:70%;border-radius:14px}
	.single-product .bgn-commerce div.product .woocommerce-product-gallery__image img{padding:0}
	.single-product .bgn-commerce div.product .woocommerce-product-gallery .flex-control-thumbs{
		display:flex;
		gap:9px;
		margin-top:8px;
		padding:10px 4px 3px;
		overflow-x:auto;
		scroll-snap-type:x mandatory;
	}
	.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li{flex:0 0 70px}
	.single-product .bgn-commerce div.product .summary{padding:24px 20px;border-radius:15px;box-shadow:0 16px 42px rgba(5,45,74,.08)}
	.single-product .bgn-product-hero__eyebrow{margin-bottom:10px;font-size:.68rem;letter-spacing:.09em}
	.single-product .bgn-commerce div.product .product_title{margin-bottom:13px;font-size:clamp(1.72rem,7vw,2.1rem);line-height:1.12}
	.single-product .bgn-commerce div.product p.price,
	.single-product .bgn-commerce div.product span.price{min-height:36px;padding:6px 11px;font-size:1.08rem}
	.single-product .bgn-commerce div.product .woocommerce-product-details__short-description{font-size:.88rem;line-height:1.58}
	.single-product .bgn-product-actions__secondary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
	.single-product .bgn-product-actions__call,
	.single-product .bgn-product-actions__zalo{min-width:0;padding:11px 8px;font-size:.8rem}
	.single-product .bgn-product-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
	.single-product .bgn-product-benefits__item{min-height:62px;padding:8px;font-size:.7rem}
	.single-product .bgn-commerce div.product .product_meta{margin-top:17px}
}

@media(max-width:359px){
	.single-product .bgn-product-actions__secondary,
	.single-product .bgn-product-benefits{grid-template-columns:1fr}
	.single-product .bgn-product-benefits__item{min-height:52px}
}

@media(prefers-reduced-motion:reduce){
	.bgn-motion-ready.single-product .bgn-product-hero-media,
	.bgn-motion-ready.single-product .bgn-commerce div.product .summary,
	.bgn-motion-ready.single-product .flex-control-thumbs li{
		opacity:1;
		animation:none;
		transform:none;
	}
	.single-product .bgn-commerce div.product .woocommerce-product-gallery__image img,
	.single-product .bgn-commerce div.product .woocommerce-product-gallery__trigger,
	.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li img,
	.single-product .bgn-product-actions__consult::after,
	.single-product .bgn-product-benefits__item{transition:none}
}

/*
 * Homepage-aligned product composition.
 * Content sections remain flat and architectural; elevation is reserved for
 * functional overlays such as the consultation dialog and image lightbox.
 */
.single-product.bgn-commerce-page .bgn-commerce{
	padding-top:clamp(20px,2.2vw,30px);
	background:linear-gradient(180deg,#eef7fb 0,#f7fbfd 660px,#fff 660px);
}

.single-product .bgn-commerce div.product{
	grid-template-columns:minmax(0,1fr) minmax(460px,1fr);
	gap:0;
	border-top:1px solid rgba(4,76,132,.12);
	border-bottom:1px solid rgba(4,76,132,.12);
}

.single-product .bgn-product-hero-media{
	border-radius:0;
	background:#eef7fb;
	box-shadow:none;
	overflow:visible;
}

.single-product .bgn-product-hero-media::before{
	inset:0;
	height:auto;
	border-radius:0;
	background:
		linear-gradient(132deg,transparent 0 62%,rgba(255,255,255,.66) 62% 74%,transparent 74%),
		linear-gradient(132deg,transparent 0 78%,rgba(4,180,172,.08) 78% 78.3%,transparent 78.3%),
		#eef7fb;
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__wrapper{
	border-radius:0;
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__image a{
	overflow:hidden;
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__image img,
.single-product .bgn-commerce div.product .woocommerce-product-gallery__image a:hover img{
	min-height:clamp(540px,45vw,620px);
	filter:none;
	transform:none;
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery .flex-control-thumbs{
	grid-template-columns:repeat(auto-fit,minmax(70px,82px));
	gap:0;
	padding:0;
	border-top:1px solid rgba(4,76,132,.12);
	background:#fff;
}

.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li{
	border-right:1px solid rgba(4,76,132,.12);
}

.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li img,
.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li img:hover,
.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li img.flex-active{
	padding:6px;
	border:0;
	border-radius:0;
	background:#fff;
	box-shadow:none;
	transform:none;
}

.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li img.flex-active{
	box-shadow:inset 0 -3px 0 var(--bgn-yellow);
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__trigger{
	top:14px;
	right:14px;
	width:44px;
	height:44px;
	border-radius:3px;
	background:#fff;
	box-shadow:none;
}

.single-product .bgn-commerce div.product .woocommerce-product-gallery__trigger:hover{
	background:var(--bgn-yellow);
	box-shadow:none;
	transform:none;
}

.single-product .bgn-commerce div.product .summary{
	padding:clamp(30px,3vw,44px) clamp(26px,3.3vw,48px);
	border-left:1px solid rgba(4,76,132,.12);
	border-radius:0;
	background:#fff;
	box-shadow:none;
	backdrop-filter:none;
}

.single-product .bgn-commerce div.product .product_title{
	max-width:15em;
	margin-bottom:18px;
	font-size:clamp(2rem,2.7vw,2.55rem);
	font-weight:760;
	line-height:1.06;
}

.single-product .bgn-commerce div.product p.price,
.single-product .bgn-commerce div.product span.price{
	min-height:0;
	margin:0 0 5px;
	padding:0;
	border:0;
	border-radius:0;
	background:transparent;
	font-size:1.2rem;
}

.single-product .bgn-commerce div.product .woocommerce-product-details__short-description{
	padding-left:18px;
	border-left:3px solid var(--bgn-teal);
}

.single-product .bgn-product-actions .bgn-button,
.single-product .bgn-product-actions__minimum{
	border-radius:3px;
}

.single-product .bgn-product-actions__consult,
.single-product .bgn-product-actions__consult:hover{
	background:var(--bgn-yellow);
	box-shadow:none;
	transform:none;
}

.single-product .bgn-product-actions__consult::after{display:none}

.single-product .bgn-product-actions__minimum{
	background:#f1faf9;
}

.single-product .bgn-product-benefits{
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:0;
	padding:0;
	border-top:1px solid rgba(4,76,132,.12);
	border-bottom:1px solid rgba(4,76,132,.12);
}

.single-product .bgn-product-benefits__item,
.single-product .bgn-product-benefits__item:hover{
	min-height:58px;
	padding:12px 10px;
	border:0;
	border-radius:0;
	background:transparent;
	transform:none;
}

.single-product .bgn-product-benefits__item:nth-child(odd){
	border-right:1px solid rgba(4,76,132,.12);
}

.single-product .bgn-product-benefits__item:nth-child(-n+2){
	border-bottom:1px solid rgba(4,76,132,.12);
}

.single-product .bgn-product-benefits__icon{
	border-radius:0;
	background:transparent;
	box-shadow:none;
}

.single-product .bgn-commerce div.product .product_meta{
	gap:0;
	padding-top:14px;
}

.single-product .bgn-commerce div.product .product_meta > span{
	padding:4px 14px 4px 0;
	border:0;
	border-radius:0;
	background:transparent;
}

.bgn-motion-ready.single-product .bgn-product-hero-media{
	animation-name:bgn-product-flat-in;
}

.bgn-motion-ready.single-product .bgn-commerce div.product .summary{
	animation-name:bgn-product-flat-in;
	animation-delay:.12s;
}

@keyframes bgn-product-flat-in{
	from{opacity:0;transform:translate3d(0,12px,0)}
	to{opacity:1;transform:none}
}

@media(max-width:1024px){
	.single-product .bgn-commerce div.product{
		grid-template-columns:minmax(0,.95fr) minmax(410px,1.05fr);
		gap:0;
	}
	.single-product .bgn-commerce div.product .summary{padding:28px 26px}
}

@media(max-width:900px){
	.single-product .bgn-commerce div.product{
		grid-template-columns:minmax(0,1fr);
		border-top:0;
	}
	.single-product .bgn-product-hero-media{
		width:100vw;
		margin-left:calc(50% - 50vw);
	}
	.single-product .bgn-commerce div.product .summary{
		padding:30px 0 0;
		border-top:1px solid rgba(4,76,132,.12);
		border-left:0;
	}
	.single-product .bgn-commerce div.product .woocommerce-product-gallery__image img,
	.single-product .bgn-commerce div.product .woocommerce-product-gallery__image a:hover img{
		min-height:0;
	}
}

@media(max-width:767px){
	.single-product.bgn-commerce-page .bgn-commerce{
		padding-top:14px;
		background:linear-gradient(180deg,#eef7fb 0,#fff 540px);
	}
	.single-product .bgn-product-hero-media,
	.single-product .bgn-commerce div.product .summary{
		border-radius:0;
		box-shadow:none;
	}
	.single-product .bgn-commerce div.product .woocommerce-product-gallery .flex-control-thumbs{
		gap:0;
		margin-top:0;
		padding:0;
	}
	.single-product.woocommerce .bgn-commerce div.product div.images .flex-control-thumbs li{
		flex:0 0 74px;
	}
	.single-product .bgn-commerce div.product .summary{padding:26px 0 0}
	.single-product .bgn-commerce div.product .product_title{
		font-size:clamp(1.85rem,8vw,2.25rem);
	}
	.single-product .bgn-product-benefits__item{
		min-height:66px;
		padding:10px 7px;
	}
}
