/* =========================================================
   SINGLE PRODUCTO - CONTENEDOR GENERAL
========================================================= */
.ssk-single-product-main {
	padding-top: 10px;
	padding-bottom: 50px;
}

.ssk-single-product {
	position: relative;
}

.ssk-single-product__header {
	margin-bottom: 18px;
}

/* =========================================================
   BREADCRUMBS DEL PRODUCTO
========================================================= */
.ssk-single-product .ssk-breadcrumbs {
	padding: 12px 0 0;
	font-size: 14px;
	color: #666666;
}

.ssk-single-product .ssk-breadcrumbs span {
	color: #999999;
}

/* =========================================================
   GRID PRINCIPAL
========================================================= */
.ssk-single-product__grid {
	padding: 24px 0 10px;
	align-items: start;
}

.ssk-single-product__gallery,
.ssk-single-product__summary {
	min-width: 0;
}

/* =========================================================
   GALERÍA / IMAGEN PRINCIPAL
========================================================= */
.ssk-single-product__main-image {
	position: sticky;
	top: 24px;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8f8f8 100%);
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 18px;
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08);
	overflow: hidden;
}

.ssk-single-product__main-image img,
.ssk-single-product__main-image .ssk-product-thumbnail-placeholder {
	width: 100%;
	height: 560px;
	object-fit: cover;
}

.ssk-single-product__main-image .ssk-product-thumbnail-placeholder {
	background:
		linear-gradient(135deg, rgba(211, 181, 116, 0.10), rgba(255, 255, 255, 1));
	font-size: 18px;
}

/* =========================================================
   RESUMEN DEL PRODUCTO
========================================================= */
.ssk-single-product__summary {
	padding: 8px 0;
}

.ssk-single-product__summary .ssk-product-badges {
	margin-bottom: 14px;
}

.ssk-single-product__title {
	font-size: 46px;
	font-weight: 700;
	line-height: 1.04;
	letter-spacing: -0.02em;
	margin-bottom: 18px;
	max-width: 720px;
}

.ssk-single-product__summary .ssk-product-price {
	margin-bottom: 16px;
}

.ssk-single-product__summary .ssk-price-current {
	font-size: 34px;
}

.ssk-single-product__summary .ssk-price-old {
	font-size: 18px;
}

.ssk-single-product__summary .ssk-stock {
	margin-bottom: 18px;
	font-size: 15px;
}

.ssk-single-product__excerpt {
	max-width: 700px;
	margin-top: 22px;
	margin-bottom: 26px;
	padding: 18px 20px;
	background-color: rgba(211, 181, 116, 0.08);
	border-left: 4px solid var(--ssk-color-primary);
	border-radius: 0 12px 12px 0;
	font-size: 17px;
	line-height: 1.8;
	color: #2e2e2e;
}

/* =========================================================
   META DEL PRODUCTO
========================================================= */
.ssk-single-product .ssk-product-meta {
	margin-top: 18px;
	margin-bottom: 0;
	padding: 18px 20px;
	background-color: #fafafa;
	border: 1px solid var(--ssk-color-border);
	border-radius: 14px;
}

.ssk-single-product .ssk-product-meta li {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	font-size: 15px;
	line-height: 1.7;
}

.ssk-single-product .ssk-product-meta strong {
	color: var(--ssk-color-black);
	min-width: 64px;
}

/* =========================================================
   ACCIONES DEL PRODUCTO
========================================================= */
.ssk-single-product__actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 26px;
}

.ssk-single-product__actions .ssk-btn {
	min-height: 50px;
	padding-left: 24px;
	padding-right: 24px;
}

.ssk-btn--whatsapp {
	background-color: #111111;
	color: #ffffff;
}

.ssk-btn--whatsapp:hover,
.ssk-btn--whatsapp:focus {
	background-color: var(--ssk-color-primary);
	color: #ffffff;
}

/* =========================================================
   SECCIONES INFERIORES DEL PRODUCTO
========================================================= */
.ssk-single-product__content {
	margin-top: 10px;
	gap: 34px;
}

.ssk-product-section {
	padding: 30px 32px;
	background-color: #ffffff;
	border: 1px solid var(--ssk-color-border);
	border-radius: 18px;
	box-shadow: var(--ssk-shadow-sm);
}

.ssk-product-section .ssk-section-heading,
.ssk-product-section .ssk-section-title {
	text-align: left;
}

.ssk-product-section .ssk-section-title {
	margin-bottom: 22px;
	font-size: 30px;
}

.ssk-product-section--description .ssk-single-product__description {
	font-size: 17px;
	line-height: 1.85;
	color: #252525;
}

.ssk-product-section--description .ssk-single-product__description h2,
.ssk-product-section--description .ssk-single-product__description h3,
.ssk-product-section--description .ssk-single-product__description h4 {
	margin-top: 24px;
	margin-bottom: 12px;
}

.ssk-product-section--description .ssk-single-product__description ul,
.ssk-product-section--description .ssk-single-product__description ol {
	padding-left: 22px;
	margin-bottom: 18px;
}

.ssk-product-section--description .ssk-single-product__description li {
	margin-bottom: 8px;
}

/* =========================================================
   VIDEO DEL PRODUCTO
========================================================= */
.ssk-single-product__video {
	border-radius: 16px;
	overflow: hidden;
	background-color: #000000;
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.10);
}

.ssk-single-product__video iframe,
.ssk-single-product__video video,
.ssk-single-product__video embed {
	display: block;
	width: 100%;
	min-height: 460px;
}

/* =========================================================
   RECURSOS / FICHA TÉCNICA
========================================================= */
.ssk-single-product__resources {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
}

.ssk-product-section--resources .ssk-btn {
	min-width: 220px;
}

/* =========================================================
   RELACIONADOS
========================================================= */
.ssk-products-grid--related {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
}

.ssk-products-grid--related .ssk-product-card {
	border-radius: 14px;
}

.ssk-products-grid--related .ssk-product-card__image img,
.ssk-products-grid--related .ssk-product-thumbnail-placeholder {
	height: 220px;
}

.ssk-products-grid--related .ssk-product-card__body {
	padding: 18px;
}

.ssk-products-grid--related .ssk-product-card__title {
	font-size: 19px;
	min-height: 46px;
}

.ssk-products-grid--related .ssk-product-card__actions {
	padding-top: 0px;
}

/* =========================================================
   AJUSTES FINOS DE BADGES Y STOCK EN SINGLE
========================================================= */
.ssk-single-product .ssk-badge {
	padding: 7px 12px;
	font-size: 11px;
	letter-spacing: 0.06em;
}

.ssk-single-product .ssk-stock-label {
	display: inline-flex;
	align-items: center;
	padding: 6px 12px;
	border-radius: 999px;
	background-color: rgba(0, 0, 0, 0.04);
}

.ssk-single-product .ssk-stock--available .ssk-stock-label {
	background-color: rgba(46, 125, 50, 0.10);
}

.ssk-single-product .ssk-stock--low .ssk-stock-label {
	background-color: rgba(217, 119, 6, 0.12);
}

.ssk-single-product .ssk-stock--out .ssk-stock-label {
	background-color: rgba(185, 28, 28, 0.10);
}

/* =========================================================
   DETALLES VISUALES EXTRA
========================================================= */
.ssk-single-product__summary > *:last-child,
.ssk-product-section > *:last-child,
.ssk-single-product__description > *:last-child {
	margin-bottom: 0;
}

.ssk-product-section--related .ssk-section-title,
.ssk-product-section--video .ssk-section-title,
.ssk-product-section--resources .ssk-section-title,
.ssk-product-section--description .ssk-section-title {
	position: relative;
	padding-bottom: 10px;
}

.ssk-product-section--related .ssk-section-title::after,
.ssk-product-section--video .ssk-section-title::after,
.ssk-product-section--resources .ssk-section-title::after,
.ssk-product-section--description .ssk-section-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 64px;
	height: 3px;
	border-radius: 999px;
	background-color: var(--ssk-color-primary);
}