/* ==========================================================================
   Opis produktu – .td-opis (pole „Opis pełny” w karcie produktu)
   Klasy: .td-opis (wrapper), .td-lead, .td-uwaga, .td-fakty, .td-tabela, .td-nota
   Piktogramy wierszy .td-fakty: tr.td-ico-odcien / -przechowywanie / -opakowanie
   Wszystkie reguły są pod .td-opis – nic nie wpływa na resztę sklepu.
   ========================================================================== */
.td-opis {
	color: #333;
	font-size: 15px;
	line-height: 1.6;
	max-width: 720px;
	text-align: left;
	overflow-wrap: break-word;
}
.td-opis > :first-child {
	margin-top: 0;
}
.td-opis h2 {
	font-family: 'Lato', sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
	color: #242424;
	text-transform: none;
	margin: 32px 0 12px;
	padding: 0;
}
.td-opis h3 {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	color: #242424;
	margin: 24px 0 8px;
}
.td-opis p {
	margin: 0 0 12px;
	text-align: left;
}
.td-opis strong,
.td-opis b {
	color: #242424;
	font-weight: 700;
}

/* Lead – akapit wprowadzający */
.td-opis .td-lead {
	font-size: 17px;
	line-height: 1.55;
	color: #242424;
	padding-bottom: 24px;
	margin-bottom: 0;
	border-bottom: 1px solid #DDE3DF;
}

/* Listy – zwykłe <ul>; punkty oddzielone cienką linią */
.td-opis ul {
	list-style: none;
	margin: 0 0 16px;
	padding: 0;
}
.td-opis ul li {
	position: relative;
	margin: 0;
	padding: 10px 0 10px 20px;
	border-bottom: 1px solid #DDE3DF;
}
.td-opis ul li:first-child {
	border-top: 1px solid #DDE3DF;
}
.td-opis ul li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: 19px;
	width: 6px;
	height: 6px;
	background: #337A59;
}
.td-opis ol {
	margin: 0 0 16px;
	padding-left: 22px;
}
.td-opis ol li {
	padding: 4px 0;
}

/* Przeciwwskazania / ostrzeżenia – lewa linia, bez alarmowych kolorów */
.td-opis .td-uwaga {
	margin: 32px 0 0;
	padding: 4px 0 4px 20px;
	border-left: 3px solid #A46A11;
}
.td-opis .td-uwaga h2 {
	margin-top: 0;
}
.td-opis .td-uwaga ul {
	margin-bottom: 0;
}
.td-opis .td-uwaga ul li {
	border: 0;
	padding: 4px 0 4px 18px;
}
.td-opis .td-uwaga ul li::before {
	top: 14px;
	background: #A46A11;
}

/* Krótkie fakty – tabela „etykieta | wartość” */
.td-opis .tableScroll {
	overflow: visible;
	margin: 0;
}
.td-opis table.td-fakty {
	width: 100%;
	border-collapse: collapse;
	border: 0;
	margin: 32px 0 16px;
	font-size: 15px;
	background: transparent;
}
.td-opis table.td-fakty th,
.td-opis table.td-fakty td {
	padding: 12px 16px 12px 0;
	border: 0;
	border-bottom: 1px solid #DDE3DF;
	text-align: left;
	vertical-align: top;
	background: transparent;
}
.td-opis table.td-fakty tr:first-child th,
.td-opis table.td-fakty tr:first-child td {
	border-top: 2px solid #242424;
}
.td-opis table.td-fakty th {
	width: 32%;
	font-weight: 700;
	color: #242424;
}
.td-opis table.td-fakty td {
	padding-right: 0;
}
.td-opis table.td-fakty td p:last-child {
	margin-bottom: 0;
}

/* Tabela danych z nagłówkiem (np. czasy pracy) – <table class="td-tabela"> z <thead> */
.td-opis table.td-tabela {
	width: 100%;
	border-collapse: collapse;
	border: 0;
	margin: 8px 0 16px;
	font-size: 15px;
	background: transparent;
}
.td-opis table.td-tabela th,
.td-opis table.td-tabela td {
	padding: 10px 16px 10px 0;
	border: 0;
	border-bottom: 1px solid #DDE3DF;
	text-align: left;
	vertical-align: top;
	background: transparent;
}
.td-opis table.td-tabela thead th {
	font-weight: 700;
	color: #242424;
	border-bottom: 2px solid #242424;
}
.td-opis table.td-tabela td:last-child,
.td-opis table.td-tabela th:last-child {
	padding-right: 0;
}

/* Nota końcowa – drobny tekst */
.td-opis .td-nota {
	margin: 24px 0 0;
	font-size: 13px;
	line-height: 1.5;
	color: #5F6662;
}

@media (max-width: 767px) {
	.td-opis {
		font-size: 15px;
	}
	.td-opis h2 {
		font-size: 18px;
		margin-top: 28px;
	}
	.td-opis .td-lead {
		font-size: 16px;
		padding-bottom: 20px;
	}
	.td-opis .td-uwaga {
		padding-left: 14px;
	}
	.td-opis table.td-fakty,
	.td-opis table.td-fakty tbody,
	.td-opis table.td-fakty tr,
	.td-opis table.td-fakty th,
	.td-opis table.td-fakty td {
		display: block;
		width: 100%;
	}
	.td-opis table.td-fakty tr {
		border-bottom: 1px solid #DDE3DF;
		padding: 10px 0;
	}
	.td-opis table.td-fakty tr:first-child {
		border-top: 2px solid #242424;
	}
	.td-opis table.td-fakty th,
	.td-opis table.td-fakty td,
	.td-opis table.td-fakty tr:first-child th,
	.td-opis table.td-fakty tr:first-child td {
		border: 0;
		padding: 0;
	}
	.td-opis table.td-fakty th {
		margin-bottom: 2px;
	}
	.td-opis table.td-tabela {
		font-size: 14px;
	}
}

/* Piktogramy: wiersze tabeli faktów i nagłówek bloku .td-uwaga.
   Wiersz bez klasy td-ico-… wyświetla się po prostu bez ikony. */
.td-opis table.td-fakty tr[class*="td-ico-"] th,
.td-opis .td-uwaga h2 {
	position: relative;
	padding-left: 30px;
}
.td-opis table.td-fakty tr[class*="td-ico-"] th::before,
.td-opis .td-uwaga h2::before {
	content: "";
	position: absolute;
	left: 0;
	top: 14px;
	width: 20px;
	height: 20px;
	background: no-repeat center / 20px 20px;
}
.td-opis .td-uwaga h2::before {
	top: 2px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A46A11' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5 2.5 20h19z'/%3E%3Cpath d='M12 10v4.5M12 17.2h.01'/%3E%3C/svg%3E");
}
/* Dostępny odcień – kropla */
.td-opis table.td-fakty tr.td-ico-odcien th::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23337A59' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3s-6 7-6 11.5a6 6 0 0 0 12 0C18 10 12 3 12 3z'/%3E%3C/svg%3E");
}
/* Przechowywanie – symbol „zakres temperatur” */
.td-opis table.td-fakty tr.td-ico-przechowywanie th::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23337A59' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 13.8V5.5a2.5 2.5 0 0 1 5 0v8.3a4 4 0 1 1-5 0z'/%3E%3Cpath d='M12 10v6.5M17 3h4.5M2.5 21H7'/%3E%3C/svg%3E");
}
/* Opakowanie – karton */
.td-opis table.td-fakty tr.td-ico-opakowanie th::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23337A59' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7.5 12 3l9 4.5v9L12 21l-9-4.5z'/%3E%3Cpath d='m3 7.5 9 4.5 9-4.5M12 12v9M7.5 5.2l9 4.6'/%3E%3C/svg%3E");
}
@media (max-width: 767px) {
	.td-opis table.td-fakty tr[class*="td-ico-"] th::before {
		top: 1px;
	}
	.td-opis table.td-fakty tr[class*="td-ico-"] td {
		padding-left: 30px;
	}
}
