/* ==========================================================================
   Dama – single product page. Tokens come from dama-brand.css.
   ========================================================================== */

/* ---------- Gallery ---------- */
.single-product .product-images-summary .woocommerce-product-gallery{
	background:var(--dm-surface);
	border:1px solid var(--dm-line);
	border-radius:var(--dm-radius-lg);
	padding:12px;
}
.single-product .woocommerce-product-gallery__image img{
	border-radius:var(--dm-radius);
	mix-blend-mode:multiply;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li img,
.single-product .woocommerce-product-gallery .thumbnails img{
	border-radius:var(--dm-radius-sm);
	border:1.5px solid transparent;
	opacity:.75;
	transition:opacity .2s ease, border-color .2s ease;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.single-product .woocommerce-product-gallery .flex-control-thumbs li img:hover{
	opacity:1;
	border-color:var(--dm-purple);
}
.single-product .woocommerce-product-gallery__trigger,
.single-product .product-images-summary .zoom-button{
	background:#fff;
	border-radius:50%;
	box-shadow:var(--dm-shadow-sm);
}

/* ---------- Summary ---------- */
.single-product div.product .summary .woocommerce-product-rating{ margin-bottom:6px; }
.single-product div.product .summary .woocommerce-review-link{
	font-size:13px;
	color:var(--dm-muted);
	text-decoration:underline;
	text-underline-offset:3px;
}
.single-product div.product .summary .woocommerce-review-link:hover{ color:var(--dm-purple); }

.woocommerce.single-product div.product .product_title{
	font-size:clamp(20px, 4.8vw, 28px);
	line-height:1.25;
	font-weight:700;
	color:var(--dm-ink);
	margin-bottom:10px;
	letter-spacing:.005em;
}
.woocommerce.single-product div.product .summary p.price{
	font-size:clamp(24px, 5.5vw, 30px);
	font-weight:700;
	color:var(--dm-purple);
	margin:4px 0 14px;
	line-height:1.1;
}
.woocommerce.single-product div.product .summary p.price .woocommerce-Price-currencySymbol{ font-size:.6em; font-weight:600; margin-right:2px; vertical-align:.3em; }

/* intro text: readable, upright, clamped (full text lives in the Description tab) */
.single-product div.product .woocommerce-product-details__short-description{
	font-style:normal;
	font-size:14.5px;
	line-height:1.65;
	color:var(--dm-text);
	display:-webkit-box;
	-webkit-line-clamp:4;
	-webkit-box-orient:vertical;
	overflow:hidden;
	margin-bottom:4px;
}
.single-product div.product .woocommerce-product-details__short-description *{ font-style:normal; }
.single-product div.product .woocommerce-product-details__short-description p{ margin:0; }
.dama-read-more{
	display:flex;
	width:max-content;
	float:none !important;
	clear:both;
	align-items:center;
	gap:6px;
	margin:4px 0 16px;
	font-size:13.5px;
	font-weight:600;
	color:var(--dm-purple) !important;
}
.dama-read-more::after{ content:"\e62a"; font-family:themify; font-size:10px; } /* ti-angle-down */
.dama-read-more:hover{ color:var(--dm-red) !important; }
.dama-anchor{ display:block; position:relative; top:-120px; visibility:hidden; }
html{ scroll-behavior:smooth; }

/* ---------- Buy box ---------- */
/* GoStore floats the form and the Buy Now link side by side; keep that, align heights */
.single-product div.product form.cart{
	display:flex;
	align-items:stretch;
	gap:10px;
	margin:6px 10px 0 0 !important;
}
.single-product div.product form.cart + .ts-buy-now-button,
.single-product div.product .summary > .ts-buy-now-button{ margin-top:6px !important; }
.single-product div.product .dwa-wrap--single,
.single-product div.product .dama-trust{ clear:both; }
.single-product div.product form.cart .quantity{
	margin:0 !important;
	border-radius:999px;
	overflow:hidden;
	border-color:var(--dm-line-strong);
}
.single-product div.product form.cart .quantity input.qty{ height:46px; font-weight:600; font-size:16px; color:var(--dm-ink); }
.single-product div.product form.cart .quantity input[type="button"]{ height:46px; line-height:46px; width:30px; }
.single-product div.product form.cart .quantity input[type="button"]:hover{ color:var(--dm-purple); }

.single-product div.product form.cart .single_add_to_cart_button,
.single-product div.product .summary .ts-buy-now-button{
	height:48px;
	min-height:48px;
	padding:0 22px !important;
	border-radius:999px !important;
	font-size:14px !important;
	font-weight:600 !important;
	letter-spacing:.03em;
	display:inline-flex !important;
	align-items:center;
	justify-content:center;
	gap:8px;
	line-height:1 !important;
	margin:0 !important;
}
.single-product div.product form.cart .single_add_to_cart_button{ flex:1 1 0; min-width:0; box-shadow:0 10px 20px -12px rgba(189,30,44,.7); }
.single-product div.product form.cart .single_add_to_cart_button::before{
	content:"\e60d"; /* ti-shopping-cart */
	font-family:themify;
	font-size:16px;
	font-weight:400;
}
.single-product div.product .summary .ts-buy-now-button{ flex:0 0 auto; }

/* WhatsApp button from the Dama WhatsApp Order plugin */
.single-product div.product .dwa-wrap--single{ max-width:none; margin:10px 0 0; }
.single-product div.product .dwa-btn--single{ border-radius:999px; height:48px; min-height:48px; }

/* trust strip */
.dama-trust{
	list-style:none;
	margin:16px 0 4px !important;
	padding:0 !important;
	display:grid;
	grid-template-columns:repeat(3, minmax(0,1fr));
	gap:8px;
}
.dama-trust li{
	list-style:none;
	display:flex;
	align-items:center;
	gap:10px;
	padding:10px 12px;
	background:var(--dm-surface);
	border:1px solid var(--dm-line);
	border-radius:var(--dm-radius);
	margin:0 !important;
}
.dama-trust li::before{ content:none !important; }
.dama-trust i{
	flex:0 0 32px;
	width:32px;
	height:32px;
	border-radius:50%;
	background:#fff;
	color:var(--dm-purple);
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:15px;
	box-shadow:var(--dm-shadow-sm);
}
.dama-trust span{ display:flex; flex-direction:column; font-size:12px; line-height:1.35; color:var(--dm-text); min-width:0; }
.dama-trust strong{ color:var(--dm-ink); font-size:12.5px; font-weight:600; }
.dama-trust a{ color:var(--dm-purple); font-weight:600; white-space:nowrap; }

/* meta: availability / SKU / brand */
.single-product div.product .summary .meta-content{
	margin-top:16px;
	padding-top:14px;
	border-top:1px solid var(--dm-line);
	display:grid;
	gap:6px;
	font-size:14px;
}
.single-product div.product .summary .meta-content > div{ margin:0; }
.single-product div.product .summary .availability.in-stock .availability-text,
.single-product div.product .summary .in-stock{
	display:inline-flex;
	align-items:center;
	gap:6px;
	font-weight:600;
}
.single-product div.product .summary .availability.in-stock .availability-text::before{
	content:"";
	width:8px;
	height:8px;
	border-radius:50%;
	background:var(--dm-green);
	box-shadow:0 0 0 3px var(--dm-green-tint);
}

/* ---------- Tabs ---------- */
.woocommerce.single-product div.product .woocommerce-tabs{
	margin-top:40px;
	border:1px solid var(--dm-line);
	border-radius:var(--dm-radius-lg);
	background:#fff;
	overflow:hidden;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs{
	display:flex;
	gap:4px;
	margin:0 !important;
	padding:8px !important;
	background:var(--dm-surface);
	border-bottom:1px solid var(--dm-line);
	text-align:left;
	overflow-x:auto;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs::before,
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li::after{ display:none !important; content:none !important; }
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li{
	margin:0 !important;
	padding:0 !important;
	border:0 !important;
	background:transparent !important;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li a{
	display:block;
	padding:10px 18px !important;
	border-radius:999px;
	font-size:14px;
	font-weight:600;
	letter-spacing:.02em;
	color:var(--dm-text) !important;
	white-space:nowrap;
	transition:background-color .2s ease, color .2s ease;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li.active a{
	background:#fff;
	color:var(--dm-purple) !important;
	box-shadow:var(--dm-shadow-sm);
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li a:hover{ color:var(--dm-purple) !important; }
.woocommerce.single-product div.product .woocommerce-tabs .panel{
	padding:24px 20px !important;
	margin:0 !important;
}

/* description typography (product copy includes its own h1/h2 and <p> inside <li>) */
.single-product .woocommerce-Tabs-panel--description .product-content{
	max-width:820px;
	color:var(--dm-text);
	font-size:15px;
	line-height:1.75;
}
.single-product .woocommerce-Tabs-panel--description h1,
.single-product .woocommerce-Tabs-panel--description h2{
	font-size:clamp(20px, 4vw, 24px) !important;
	line-height:1.3 !important;
	font-weight:700 !important;
	color:var(--dm-ink);
	margin:0 0 14px !important;
	letter-spacing:0;
}
.single-product .woocommerce-Tabs-panel--description h3,
.single-product .woocommerce-Tabs-panel--description h4{
	font-size:17px !important;
	font-weight:600 !important;
	color:var(--dm-ink);
	margin:22px 0 10px !important;
}
.single-product .woocommerce-Tabs-panel--description h1:empty,
.single-product .woocommerce-Tabs-panel--description h2:empty,
.single-product .woocommerce-Tabs-panel--description p:empty{ display:none; }
.single-product .woocommerce-Tabs-panel--description p{ margin:0 0 14px; }
.single-product .woocommerce-Tabs-panel--description b,
.single-product .woocommerce-Tabs-panel--description strong{ color:var(--dm-ink); }
.single-product .woocommerce-Tabs-panel--description ul,
.single-product .woocommerce-Tabs-panel--description ol{
	margin:0 0 18px !important;
	padding:0 !important;
	list-style:none !important;
	display:grid;
	gap:8px;
}
.single-product .woocommerce-Tabs-panel--description ul li,
.single-product .woocommerce-Tabs-panel--description ol li{
	position:relative;
	list-style:none !important;
	margin:0 !important;
	padding:10px 14px 10px 36px !important;
	background:var(--dm-surface);
	border-radius:var(--dm-radius-sm);
}
.single-product .woocommerce-Tabs-panel--description ul li::before{
	content:"" !important;
	position:absolute;
	left:15px;
	top:19px;
	width:7px;
	height:7px;
	border-radius:50%;
	background:var(--dm-purple);
	display:block !important;
}
.single-product .woocommerce-Tabs-panel--description li > p{ margin:0 !important; display:inline; }
.single-product .woocommerce-Tabs-panel--description .more-less-buttons a{
	display:inline-flex;
	padding:10px 18px;
	border-radius:999px;
	border:1.5px solid var(--dm-line-strong);
	color:var(--dm-purple) !important;
	font-weight:600;
	font-size:13px;
	background:#fff;
}
.single-product .woocommerce-Tabs-panel--description .more-less-buttons a:hover{ border-color:var(--dm-purple); }

/* ---------- Related products row ---------- */
.single-product .related-upsells-products-wrapper{
	background:var(--dm-surface);
	padding:40px 0 48px;
	margin-top:40px;
	border-top:1px solid var(--dm-line);
}
.single-product .related-upsells-products-wrapper > .container > section + section{ margin-top:36px; }
.single-product .related-upsells-products-wrapper h2{
	font-size:clamp(20px, 4.4vw, 24px) !important;
	font-weight:700 !important;
	color:var(--dm-ink) !important;
	margin:0 0 18px !important;
	text-align:left !important;
	text-transform:none !important;
	letter-spacing:0;
	display:flex;
	align-items:center;
	gap:10px;
}
.single-product .related-upsells-products-wrapper h2::after{
	content:"";
	flex:0 0 44px;
	height:4px;
	border-radius:4px;
	background:linear-gradient(90deg, var(--dm-purple), var(--dm-red));
}
.single-product .related-upsells-products-wrapper .product-wrapper{
	height:100%;
	background:#fff;
	border:1px solid var(--dm-line) !important;
	border-radius:var(--dm-radius);
	padding:10px 10px 12px !important;
	transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.single-product .related-upsells-products-wrapper .product-wrapper:hover{
	border-color:#e2d5ee !important;
	box-shadow:var(--dm-shadow);
	transform:translateY(-2px);
}
/* room for the hover lift inside the carousel's clipping box */
.single-product .related-upsells-products-wrapper .owl-stage-outer{ padding:4px 0 8px; }
.single-product .related-upsells-products-wrapper .products,
.single-product .related-upsells-products-wrapper .owl-item > .product{ border:0 !important; }
.single-product .related-upsells-products-wrapper .owl-item > .product{ padding:0 6px !important; }
/* GoStore draws a frame around the carousel with these */
.single-product .related-upsells-products-wrapper .owl-stage-outer::before,
.single-product .related-upsells-products-wrapper .owl-stage-outer::after{ display:none !important; }
.single-product .related-upsells-products-wrapper .owl-nav > div{
	background:#fff !important;
	border:1px solid var(--dm-line) !important;
	color:var(--dm-ink) !important;
	border-radius:50% !important;
	box-shadow:var(--dm-shadow-sm);
	transition:background-color .2s ease, color .2s ease, border-color .2s ease;
}
.single-product .related-upsells-products-wrapper .owl-nav > div:hover{
	background:var(--dm-purple) !important;
	border-color:var(--dm-purple) !important;
	color:#fff !important;
}
.single-product .related-upsells-products-wrapper .product-name,
.single-product .related-upsells-products-wrapper .product-name a{
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
	min-height:calc(1.35em * 2);
}

@media (max-width:767px){
	.single-product div.product form.cart{ float:none !important; width:100%; margin-right:0 !important; }
	.single-product div.product form.cart .single_add_to_cart_button{ flex:1 1 auto; }
	.single-product div.product .summary > .ts-buy-now-button{ float:none !important; display:flex !important; width:100%; margin-top:10px !important; }
	.single-product div.product form.cart{ padding:0 !important; }
	.single-product .related-upsells-products-wrapper .owl-nav{ display:none !important; } /* swipe on phones */
	/* three compact tiles in one row */
	.dama-trust{ grid-template-columns:repeat(3, minmax(0,1fr)); gap:6px; }
	.dama-trust li{ flex-direction:column; text-align:center; gap:6px; padding:10px 6px; }
	.dama-trust span{ align-items:center; font-size:11px; }
	.dama-trust strong{ font-size:12px; }
	.woocommerce.single-product div.product .woocommerce-tabs{ margin-top:28px; }
	.single-product .product-images-summary .woocommerce-product-gallery{ padding:8px; }
}
@media (min-width:768px) and (max-width:1024px){
	.dama-trust{ grid-template-columns:1fr; }
}
@media (min-width:1025px){
	.woocommerce.single-product div.product .woocommerce-tabs .panel{ padding:32px 36px !important; }
	.single-product .related-upsells-products-wrapper{ padding:56px 0 64px; }
}
