/**
 * SLINKOR imported product-description system for WordPress.
 *
 * The HTML in WooCommerce product descriptions remains the source of truth.
 * This file maps its existing .slinkor-pd modules to the child-theme tokens.
 */

.slinkor-pd {
	max-width: var(--slinkor-product-description-width);
	margin-inline: auto;
	color: var(--slinkor-color-text);
	font-family: var(--slinkor-font-body);
	font-size: 17px;
	line-height: 1.7;
}

.slinkor-pd *,
.slinkor-pd *::before,
.slinkor-pd *::after {
	box-sizing: border-box;
}

.slinkor-pd h2,
.slinkor-pd h3,
.slinkor-pd p,
.slinkor-pd figure {
	margin-top: 0;
}

.slinkor-pd h2,
.slinkor-pd h3 {
	color: var(--slinkor-color-heading);
	font-family: var(--slinkor-font-heading);
}

/* Ignore empty nodes introduced by wpautop inside the imported module grids. */
.slinkor-pd p:empty,
.slinkor-pd__highlights > br,
.slinkor-pd__feature-grid > br,
.slinkor-pd__use-grid > br,
.slinkor-pd__details-content > br {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.slinkor-pd__eyebrow,
.slinkor-pd__section-label {
	color: var(--slinkor-color-brand);
	font-family: var(--slinkor-font-heading);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.slinkor-pd__eyebrow {
	margin-bottom: var(--slinkor-space-3);
}

.slinkor-pd__title {
	max-width: 780px;
	margin: 0 0 20px;
	font-size: 28px;
	font-weight: 650;
	line-height: 1.2;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

.slinkor-pd__title-line {
	display: inline;
}

.slinkor-pd__title-line + .slinkor-pd__title-line::before {
	content: " ";
}

.slinkor-pd__lead {
	max-width: 820px;
	margin: 0 0 var(--slinkor-space-7);
	color: var(--slinkor-color-text);
	font-size: 18px;
	line-height: 1.7;
}

.slinkor-pd__highlights {
	--slinkor-highlight-columns: 4;

	display: grid;
	grid-template-columns: repeat(var(--slinkor-highlight-columns), minmax(0, 1fr));
	gap: 1px;
	margin-bottom: 62px;
	background: var(--slinkor-color-border);
	border-block: 1px solid var(--slinkor-color-border);
}

.slinkor-pd__highlights:has(> .slinkor-pd__highlight:nth-of-type(1):last-of-type) {
	--slinkor-highlight-columns: 1;
}

.slinkor-pd__highlights:has(> .slinkor-pd__highlight:nth-of-type(2):last-of-type) {
	--slinkor-highlight-columns: 2;
}

.slinkor-pd__highlights:has(> .slinkor-pd__highlight:nth-of-type(3):last-of-type) {
	--slinkor-highlight-columns: 3;
}

.slinkor-pd__highlights:has(> .slinkor-pd__highlight:nth-of-type(4):last-of-type) {
	--slinkor-highlight-columns: 4;
}

.slinkor-pd__highlights:has(> .slinkor-pd__highlight:nth-of-type(5):last-of-type) {
	--slinkor-highlight-columns: 5;
}

.slinkor-pd__highlight {
	min-width: 0;
	padding: 28px 26px;
	background: var(--slinkor-color-background);
}

.slinkor-pd__highlight-value,
.slinkor-pd__highlight-title,
.slinkor-pd__highlight-copy {
	display: block;
}

.slinkor-pd__highlight-value {
	margin-bottom: 7px;
	color: var(--slinkor-color-heading);
	font-family: var(--slinkor-font-heading);
	font-size: 25px;
	font-weight: 650;
	line-height: 1.15;
	letter-spacing: -0.025em;
}

.slinkor-pd__highlight-title {
	margin-bottom: 7px;
	color: var(--slinkor-color-heading);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
}

.slinkor-pd__highlight-copy {
	max-width: 220px;
	color: var(--slinkor-color-text-secondary);
	font-size: 14px;
	line-height: 1.55;
}

.slinkor-pd__section {
	padding: 40px 0;
	display: grid;
	grid-template-columns: minmax(175px, 0.68fr) minmax(0, 1.65fr);
	gap: 56px;
	border-bottom: 1px solid var(--slinkor-color-border);
}

.slinkor-pd__section-label {
	padding-top: 3px;
}

.slinkor-pd__section-content {
	min-width: 0;
}

.slinkor-pd__section h2,
.slinkor-pd__media-story-content h2 {
	max-width: 760px;
	margin: 0 0 var(--slinkor-space-4);
	font-size: 24px;
	font-weight: 650;
	line-height: 1.25;
	letter-spacing: -0.018em;
	text-wrap: balance;
}

.slinkor-pd__section p,
.slinkor-pd__media-story-content p {
	max-width: 680px;
	margin: 0;
	color: var(--slinkor-color-text);
	line-height: 1.72;
}

.slinkor-pd__section strong {
	color: var(--slinkor-color-heading);
	font-weight: 600;
}

.slinkor-pd__features,
.slinkor-pd__use {
	padding: 44px 0 46px;
}

.slinkor-pd__use {
	border-top: 1px solid var(--slinkor-color-border);
}

.slinkor-pd__features h2,
.slinkor-pd__use h2 {
	margin: 0;
	font-size: 26px;
	font-weight: 650;
	line-height: 1.22;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

.slinkor-pd__features h2 {
	margin-bottom: 28px;
}

.slinkor-pd__use h2 {
	margin-bottom: 24px;
}

.slinkor-pd__feature-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 62px;
}

.slinkor-pd__feature {
	position: relative;
	padding: 20px 0 20px 24px;
	border-top: 1px solid var(--slinkor-color-border);
}

.slinkor-pd__feature::before {
	content: "";
	position: absolute;
	top: 29px;
	left: 0;
	width: 6px;
	height: 6px;
	background: var(--slinkor-color-brand);
	border-radius: var(--slinkor-radius-pill);
}

.slinkor-pd__feature strong,
.slinkor-pd__feature span {
	display: block;
}

.slinkor-pd__feature strong {
	margin-bottom: 5px;
	color: var(--slinkor-color-heading);
	font-size: 16px;
	font-weight: 600;
	line-height: 1.45;
}

.slinkor-pd__feature span {
	max-width: 500px;
	color: var(--slinkor-color-text-secondary);
	font-size: 15px;
	line-height: 1.58;
}

.slinkor-pd__use-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--slinkor-color-border);
}

.slinkor-pd__use-item {
	padding: 17px 18px;
	color: var(--slinkor-color-heading);
	font-size: 15px;
	font-weight: 550;
	line-height: 1.45;
	background: var(--slinkor-color-background);
	border-right: 1px solid var(--slinkor-color-border);
	border-bottom: 1px solid var(--slinkor-color-border);
}

.slinkor-pd__use-item:nth-child(3n),
.slinkor-pd__use-item:last-child {
	border-right: 0;
}

.slinkor-pd__use-item::before {
	content: "";
	width: 5px;
	height: 5px;
	margin: 0 10px 2px 0;
	display: inline-block;
	background: var(--slinkor-color-brand);
	border-radius: var(--slinkor-radius-pill);
}

.slinkor-pd__details {
	margin-top: var(--slinkor-space-2);
	border-top: 1px solid var(--slinkor-color-border);
}

.slinkor-pd__highlights:has(+ .slinkor-pd__section) {
	margin-bottom: 20px;
}

.slinkor-pd__highlights + .slinkor-pd__section {
	padding-top: 28px;
}

.slinkor-pd__features:has(+ .slinkor-pd__use) {
	padding-bottom: 24px;
}

.slinkor-pd__features + .slinkor-pd__use {
	padding-top: 28px;
}

.slinkor-pd__use:has(+ .slinkor-pd__details) {
	padding-bottom: 28px;
}

.slinkor-pd__use + .slinkor-pd__details {
	margin-top: 0;
}

.slinkor-pd__details details {
	border-bottom: 1px solid var(--slinkor-color-border);
}

.slinkor-pd__details summary {
	position: relative;
	padding: 22px 42px 22px 0;
	color: var(--slinkor-color-heading);
	font-family: var(--slinkor-font-heading);
	font-size: 17px;
	font-weight: 600;
	line-height: 1.4;
	cursor: pointer;
	list-style: none;
}

.slinkor-pd__details summary::-webkit-details-marker {
	display: none;
}

.slinkor-pd__details summary::after {
	content: "+";
	position: absolute;
	top: 50%;
	right: 4px;
	color: var(--slinkor-color-text-secondary);
	font-size: 23px;
	font-weight: 300;
	line-height: 1;
	transform: translateY(-50%);
}

.slinkor-pd__details details[open] summary::after {
	content: "−";
}

.slinkor-pd__details-content {
	padding: 0 0 26px;
}

.slinkor-pd__spec-row {
	padding: 15px 0;
	display: grid;
	grid-template-columns: minmax(150px, 30%) minmax(0, 1fr);
	gap: var(--slinkor-space-5);
	border-bottom: 1px solid var(--slinkor-color-border-subtle);
}

.slinkor-pd__spec-row:last-of-type {
	border-bottom: 0;
}

.slinkor-pd__spec-name {
	color: var(--slinkor-color-heading);
	font-weight: 600;
}

.slinkor-pd__spec-value {
	min-width: 0;
	color: var(--slinkor-color-text-secondary);
	overflow-wrap: anywhere;
}

.slinkor-pd__note {
	max-width: 760px;
	margin: 20px 0 0;
	color: var(--slinkor-color-text-secondary);
	font-size: 14px;
	line-height: 1.65;
}

.slinkor-pd__media,
.slinkor-pd__media-grid,
.slinkor-pd__media-sequence {
	margin: var(--slinkor-space-6) 0 var(--slinkor-space-7);
}

.slinkor-pd__media img,
.slinkor-pd__media-grid img,
.slinkor-pd__media-sequence img,
.slinkor-pd__media-story-image img {
	width: 100%;
	height: auto;
	margin: 0;
	display: block;
	border-radius: var(--slinkor-radius-medium);
}

.slinkor-pd__media-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--slinkor-space-4);
}

.slinkor-pd__media-grid-item,
.slinkor-pd__media-grid-item p,
.slinkor-pd__media-grid > p,
.slinkor-pd__media-grid figure {
	margin: 0;
	padding: 0;
}

.slinkor-pd__media-sequence {
	display: grid;
	gap: var(--slinkor-space-4);
}

.slinkor-pd__media-story {
	padding: 50px 0;
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: 56px;
	align-items: center;
	border-bottom: 1px solid var(--slinkor-color-border);
}

.slinkor-pd__media-story-image,
.slinkor-pd__media-story-content {
	min-width: 0;
}

.slinkor-pd__media-story-content .slinkor-pd__section-label {
	margin-bottom: var(--slinkor-space-3);
	padding-top: 0;
}

.slinkor-pd__media-story--reverse .slinkor-pd__media-story-image {
	order: 2;
}

.slinkor-pd__media-story--reverse .slinkor-pd__media-story-content {
	order: 1;
}

.slinkor-pd__details summary:focus-visible {
	outline: 2px solid var(--slinkor-color-brand);
	outline-offset: 3px;
}

@media (max-width: 1023px) {
	.slinkor-pd__title {
		font-size: 24px;
	}

	.slinkor-pd__section h2,
	.slinkor-pd__media-story-content h2 {
		font-size: 22px;
	}

	.slinkor-pd__features h2,
	.slinkor-pd__use h2 {
		font-size: 23px;
	}
}

@media (max-width: 767px) {
	.slinkor-pd {
		font-size: 16px;
		line-height: 1.65;
	}

	.slinkor-pd__eyebrow,
	.slinkor-pd__section-label {
		font-size: 11px;
	}

	.slinkor-pd__title {
		margin-bottom: var(--slinkor-space-4);
		font-size: 21px;
		line-height: 1.25;
	}

	.slinkor-pd__lead {
		margin-bottom: 38px;
		font-size: 16px;
		line-height: 1.68;
	}

	.slinkor-pd__highlights {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-bottom: 44px;
	}

	.slinkor-pd__highlight {
		padding: 21px var(--slinkor-space-4);
	}

	.slinkor-pd__highlight-value {
		font-size: 21px;
	}

	.slinkor-pd__highlight-title {
		font-size: 14px;
	}

	.slinkor-pd__highlight-copy {
		font-size: 13px;
	}

	.slinkor-pd__section {
		padding: 32px 0;
		grid-template-columns: minmax(0, 1fr);
		gap: 10px;
	}

	.slinkor-pd__section h2,
	.slinkor-pd__media-story-content h2 {
		margin-bottom: 13px;
		font-size: 18px;
		line-height: 1.3;
	}

	.slinkor-pd__features {
		padding: 36px 0 38px;
	}

	.slinkor-pd__use {
		padding: 36px 0 40px;
	}

	.slinkor-pd__features h2,
	.slinkor-pd__use h2 {
		font-size: 20px;
	}

	.slinkor-pd__use h2 {
		margin-bottom: 18px;
	}

	.slinkor-pd__feature-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.slinkor-pd__feature {
		padding: 17px 0 17px 22px;
	}

	.slinkor-pd__feature::before {
		top: 27px;
	}

	.slinkor-pd__use-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.slinkor-pd__use-item,
	.slinkor-pd__use-item:nth-child(3n) {
		border-right: 1px solid var(--slinkor-color-border);
	}

	.slinkor-pd__use-item:nth-child(2n),
	.slinkor-pd__use-item:last-child {
		border-right: 0;
	}

	.slinkor-pd__use-item {
		padding: 14px 12px;
	}

	.slinkor-pd__features:has(+ .slinkor-pd__use) {
		padding-bottom: 20px;
	}

	.slinkor-pd__features + .slinkor-pd__use {
		padding-top: 22px;
	}

	.slinkor-pd__use:has(+ .slinkor-pd__details) {
		padding-bottom: 22px;
	}

	.slinkor-pd__use + .slinkor-pd__details {
		margin-top: 0;
	}

	.slinkor-pd__details summary {
		font-size: 16.5px;
	}

	.slinkor-pd__spec-row {
		padding: 14px 0;
		grid-template-columns: minmax(0, 1fr);
		gap: 5px;
	}

	.slinkor-pd__media,
	.slinkor-pd__media-grid,
	.slinkor-pd__media-sequence {
		margin: 24px 0 var(--slinkor-space-6);
	}

	.slinkor-pd__media-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--slinkor-space-3);
	}

	.slinkor-pd__media-sequence {
		gap: var(--slinkor-space-3);
	}

	.slinkor-pd__media-story {
		padding: 38px 0;
		grid-template-columns: minmax(0, 1fr);
		gap: 22px;
	}

	.slinkor-pd__media-story--reverse .slinkor-pd__media-story-image {
		order: 0;
	}

	.slinkor-pd__media-story--reverse .slinkor-pd__media-story-content {
		order: 1;
	}
}

@media (max-width: 430px) {
	.slinkor-pd__use-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.slinkor-pd__use-item,
	.slinkor-pd__use-item:nth-child(2n),
	.slinkor-pd__use-item:nth-child(3n) {
		border-right: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.slinkor-pd *,
	.slinkor-pd *::before,
	.slinkor-pd *::after {
		scroll-behavior: auto;
		transition-duration: 0.01ms;
		animation-duration: 0.01ms;
		animation-iteration-count: 1;
	}
}
