/* =====================================================================
   Bekermann – pojedynczy wpis (single.php)
   Paleta i typografia zgodne z podstronami usług (np. /hydroizolacja-dachu/)
   ===================================================================== */

.bk-single {
	--bk-dark: #231F20;
	--bk-darker: #14191c;
	--bk-orange: #FAA931;
	--bk-orange-hover: #FBBB5B;
	--bk-cream: #FCF1E1;
	--bk-grey-bg: #EBEBEA;
	--bk-border: #E7E4E5;
	--bk-input: #D2CCCD;
	--bk-text: #3E383A;
	--bk-muted: #72696B;
	--bk-head: 'DM Sans', sans-serif;
}

/* Etykieta nad nagłówkiem (jak "WARIANT I", "Kontakt") */
.bk-single .bk-label {
	display: inline-block;
	margin-bottom: 12px;
	font-family: var(--bk-head);
	font-size: 13px;
	line-height: 18px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--bk-orange);
}

/* ------------------------------------------------------------------ HERO */
.bk-single .row-full.bk-hero {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 520px;
	padding: 180px 15px 80px;
	background-color: var(--bk-dark);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.bk-single .bk-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(20, 25, 28, .9) 0%, rgba(20, 25, 28, .7) 55%, rgba(20, 25, 28, .45) 100%);
}
.bk-single .bk-hero > .container { position: relative; z-index: 1; width: 100%; }
.bk-single .bk-hero__title {
	max-width: 820px;
	font-size: 64px;
	line-height: 110%;
	letter-spacing: 0;
	color: #fff;
}

/* ---------------------------------------------------------------- LICZBY */
.bk-single .row-full.bk-stats {
	padding-top: 40px;
	padding-bottom: 40px;
	background: var(--bk-darker);
}
.bk-single .bk-stat { padding: 8px 0; }
.bk-single .bk-stat__num {
	font-family: var(--bk-head);
	font-size: 40px;
	line-height: 48px;
	font-weight: 700;
	color: var(--bk-orange);
}
.bk-single .bk-stat__label {
	margin-top: 4px;
	font-size: 14px;
	line-height: 20px;
	color: #D2CCCD;
}

/* ---------------------------------------------------------------- TREŚĆ */
.bk-single .row-full.bk-content { padding-top: 96px; padding-bottom: 96px; background: #fff; }

.bk-single .bk-entry { font-size: 17px; line-height: 1.75; color: var(--bk-text); }
.bk-single .bk-entry > *:first-child { margin-top: 0; }
.bk-single .bk-entry p { margin: 0 0 24px; }
.bk-single .bk-entry h2,
.bk-single .bk-entry h3,
.bk-single .bk-entry h4 {
	font-family: var(--bk-head);
	font-weight: 700;
	letter-spacing: 0;
	color: var(--bk-dark);
	scroll-margin-top: 120px;
}
.bk-single .bk-entry h2 { margin: 56px 0 20px; font-size: 36px; line-height: 120%; }
.bk-single .bk-entry h3 { margin: 40px 0 16px; font-size: 26px; line-height: 130%; }
.bk-single .bk-entry h4 { margin: 32px 0 12px; font-size: 20px; line-height: 130%; }
.bk-single .bk-entry a { color: var(--bk-dark); text-decoration: underline; text-decoration-color: var(--bk-orange); text-underline-offset: 3px; }
.bk-single .bk-entry a:hover { color: #B8741A; }
.bk-single .bk-entry ul,
.bk-single .bk-entry ol { margin: 0 0 24px; padding-left: 0; }
.bk-single .bk-entry ul li { position: relative; list-style: none; padding-left: 20px; margin-bottom: 8px; }
.bk-single .bk-entry ul li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 11px;
	width: 7px;
	height: 7px;
	background: var(--bk-orange);
}
.bk-single .bk-entry ol { padding-left: 22px; }
.bk-single .bk-entry ol li { margin-bottom: 8px; padding-left: 4px; }
.bk-single .bk-entry ol li::marker { color: var(--bk-orange); font-weight: 700; }
.bk-single .bk-entry blockquote {
	margin: 32px 0;
	padding: 24px 32px;
	background: var(--bk-cream);
	border-left: 4px solid var(--bk-orange);
	font-size: 18px;
	color: var(--bk-dark);
}
.bk-single .bk-entry blockquote p:last-child { margin-bottom: 0; }
.bk-single .bk-entry img { max-width: 100%; height: auto; }
.bk-single .bk-entry figure { margin: 32px 0; }
.bk-single .bk-entry figcaption { margin-top: 8px; font-size: 14px; color: var(--bk-muted); }
.bk-single .bk-entry table { width: 100%; margin: 0 0 24px; font-size: 15px; }
.bk-single .bk-entry th,
.bk-single .bk-entry td { padding: 12px 16px; border: 1px solid var(--bk-border); text-align: left; }
.bk-single .bk-entry th { background: var(--bk-grey-bg); color: var(--bk-dark); font-weight: 600; }
.bk-single .bk-entry hr { margin: 48px 0; border: 0; border-top: 1px solid var(--bk-border); }

/* Kategoria, data, czas czytania nad treścią */
.bk-single .bk-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 24px;
	margin-bottom: 32px;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--bk-border);
	font-size: 14px;
	color: var(--bk-muted);
}
.bk-single .bk-meta .bk-label { margin: 0; }
.bk-single .bk-meta .bk-label:hover { color: var(--bk-orange-hover); }

/* Tagi + udostępnianie */
.bk-single .bk-article__footer {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	margin-top: 48px;
	padding-top: 24px;
	border-top: 1px solid var(--bk-border);
}
.bk-single .bk-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.bk-single .bk-tags a {
	padding: 4px 12px;
	background: var(--bk-grey-bg);
	font-size: 14px;
	color: var(--bk-text);
}
.bk-single .bk-tags a:hover { background: var(--bk-cream); }
.bk-single .bk-share { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; font-size: 14px; }
.bk-single .bk-share span { color: var(--bk-muted); }
.bk-single .bk-share a,
.bk-single .bk-share button {
	padding: 0;
	border: 0;
	background: none;
	font-size: 14px;
	font-weight: 600;
	color: var(--bk-dark);
	cursor: pointer;
}
.bk-single .bk-share a:hover,
.bk-single .bk-share button:hover { color: var(--bk-orange); }

/* Poprzedni / następny */
.bk-single .bk-postnav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin-top: 40px;
}
.bk-single .bk-postnav__item {
	display: block;
	padding: 24px;
	border: 1px solid var(--bk-border);
	background: #fff;
}
.bk-single .bk-postnav__item:hover { border-color: var(--bk-orange); }
.bk-single .bk-postnav__item--next { text-align: right; }
.bk-single .bk-postnav__label {
	display: block;
	margin-bottom: 6px;
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #8C8285;
}
.bk-single .bk-postnav__title {
	display: block;
	font-family: var(--bk-head);
	font-size: 18px;
	line-height: 24px;
	font-weight: 500;
	color: var(--bk-dark);
}

/* Boczna kolumna */
.bk-single .bk-aside__sticky { position: sticky; top: 120px; }
.bk-single .bk-toc {
	margin-bottom: 24px;
	padding: 32px;
	background: var(--bk-cream);
}
.bk-single .bk-toc[hidden] { display: none; }
.bk-single .bk-toc__list { margin: 0; padding-left: 20px; }
.bk-single .bk-toc__list li { margin-bottom: 10px; font-size: 15px; line-height: 22px; }
.bk-single .bk-toc__list li::marker { color: var(--bk-orange); font-weight: 700; }
.bk-single .bk-toc__list a { color: var(--bk-dark); }
.bk-single .bk-toc__list a:hover { color: #B8741A; }

.bk-single .bk-cta {
	padding: 40px 32px;
	background: var(--bk-dark);
	color: #D2CCCD;
}
.bk-single .bk-cta__title {
	margin: 0 0 12px;
	font-family: var(--bk-head);
	font-size: 24px;
	line-height: 31px;
	font-weight: 700;
	color: #fff;
}
.bk-single .bk-cta__text { margin: 0 0 24px; font-size: 15px; line-height: 23px; }
.bk-single .bk-cta .more { display: block; }
.bk-single .bk-cta__phone {
	display: block;
	margin-top: 16px;
	text-align: center;
	font-weight: 600;
	color: #fff;
}
.bk-single .bk-cta__phone:hover { color: var(--bk-orange-hover); }

/* Komentarze */
.bk-single .bk-comments { margin-top: 64px; }
.bk-single .bk-comments .comments-title,
.bk-single .bk-comments .comment-reply-title {
	margin-bottom: 12px;
	font-family: var(--bk-head);
	font-size: 32px;
	line-height: 120%;
	font-weight: 700;
	letter-spacing: 0;
	color: var(--bk-dark);
}
.bk-single .bk-comments textarea,
.bk-single .bk-comments input[type="text"],
.bk-single .bk-comments input[type="email"],
.bk-single .bk-comments input[type="url"] {
	width: 100%;
	padding: 11px 16px;
	border: 1px solid var(--bk-input);
	border-radius: 0;
	box-shadow: none;
}
.bk-single .bk-comments textarea:focus,
.bk-single .bk-comments input:focus { border-color: var(--bk-orange); outline: 0; box-shadow: none; }
.bk-single .bk-comments .form-allowed-tags,
.bk-single .bk-comments .alert-info { display: none; }
.bk-single .bk-comments input[type="submit"],
.bk-single .bk-comments .btn-primary {
	padding: 14px 24px;
	border: 0;
	border-radius: 0;
	background: var(--bk-orange);
	color: var(--bk-dark);
	font-weight: 600;
}
.bk-single .bk-comments input[type="submit"]:hover,
.bk-single .bk-comments .btn-primary:hover { background: var(--bk-orange-hover); }
.bk-single .bk-comments .comment-list { padding-left: 0; list-style: none; }
.bk-single .bk-comments .comment-body {
	margin-bottom: 16px;
	padding: 24px;
	border: 1px solid var(--bk-border);
}

/* ------------------------------------------------------ PRZECZYTAJ RÓWNIEŻ */
.bk-single .row-full.bk-related { padding-top: 96px; padding-bottom: 72px; background: var(--bk-cream); }
.bk-single .bk-related h3 { margin-bottom: 48px; }
.bk-single .bk-related .col-md-6 { margin-bottom: 24px; }
.bk-single .bk-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border: 1px solid var(--bk-border);
	transition: border-color .2s ease, transform .2s ease;
}
.bk-single .bk-card:hover { border-color: var(--bk-orange); transform: translateY(-4px); }
.bk-single .bk-card__img { aspect-ratio: 16 / 10; overflow: hidden; background: var(--bk-grey-bg); }
.bk-single .bk-card__img img { width: 100%; height: 100%; object-fit: cover; }
.bk-single .bk-card__body { display: flex; flex-direction: column; flex: 1; padding: 24px 32px 32px; }
.bk-single .bk-card__date { font-size: 13px; color: #8C8285; }
.bk-single .bk-card__title {
	margin: 8px 0 16px;
	font-family: var(--bk-head);
	font-size: 20px;
	line-height: 26px;
	font-weight: 500;
	color: var(--bk-dark);
}
.bk-single .bk-card__more { margin-top: auto; font-size: 14px; font-weight: 600; color: var(--bk-dark); }
.bk-single .bk-card:hover .bk-card__more { color: var(--bk-orange); }

/* ----------------------------------------------------------------- MOBILE */
@media (max-width: 991px) {
	.bk-single .bk-aside { margin-top: 48px; }
	.bk-single .bk-aside__sticky { position: static; }
}
@media (max-width: 768px) {
	.bk-single .row-full.bk-hero { min-height: 380px; padding: 140px 15px 48px; }
	.bk-single .bk-hero__title { font-size: 36px; }
	.bk-single .row-full.bk-stats { padding-top: 24px; padding-bottom: 24px; }
	.bk-single .bk-stat__num { font-size: 30px; line-height: 38px; }
	.bk-single .row-full.bk-content { padding-top: 48px; padding-bottom: 56px; }
	.bk-single .row-full.bk-related { padding-top: 56px; padding-bottom: 40px; }
	.bk-single .bk-related h3 { margin-bottom: 32px; }
	.bk-single .bk-entry { font-size: 16px; }
	.bk-single .bk-entry h2 { font-size: 28px; margin-top: 40px; }
	.bk-single .bk-entry h3 { font-size: 22px; }
	.bk-single .bk-postnav { grid-template-columns: 1fr; }
	.bk-single .bk-postnav__item--next { text-align: left; }
}