/* ==========================================================
   TDS JOURNAL SINGLE 2.0
   ========================================================== */

body.single-post {
background: var(--tds-color-paper-300);
}

body.single-post .tds-article-v2 {
font-family: var(--tds-font-family);
color: var(--tds-color-text-primary);
background: var(--tds-color-paper-300);
}


/* ==========================================================
   HERO
   ========================================================== */

body.single-post .tds-article-v2__hero {
position: relative;
min-height: 650px;
overflow: hidden;
background: var(--tds-color-navy-900);
color: #fff;
}

body.single-post .tds-article-v2__hero-background {
position: absolute;
inset: 0;

background:
linear-gradient(
90deg,
rgba(8, 16, 31, .84) 0%,
rgba(8, 16, 31, .60) 48%,
rgba(8, 16, 31, .34) 100%
),
var(--tds-article-hero-image)
center / cover no-repeat;
}

body.single-post .tds-article-v2__hero-content {
position: relative;
z-index: 4;

width: min(1360px, calc(100% - 80px));
margin-inline: auto;

padding-top: 355px;
padding-bottom: 110px;
}

body.single-post .tds-article-v2__category {
display: inline-block;
margin-bottom: 24px;

font-size: 15px;
line-height: 1.3;
font-weight: 700;
letter-spacing: .15em;
text-transform: uppercase;

color: var(--tds-color-gold-400);
text-decoration: none;
}

body.single-post .tds-article-v2__hero h1 {
max-width: 1120px;
margin: 0;

font-size: clamp(48px, 5.1vw, 78px);
line-height: 1.01;
font-weight: 650;
letter-spacing: -.052em;

color: #fff;
}

body.single-post .tds-article-v2__meta {
display: flex;
align-items: center;
gap: 18px;

margin-top: 30px;

font-size: 16px;
line-height: 1.5;
font-weight: 450;

color: rgba(255, 255, 255, .82);
}

body.single-post .tds-article-v2__meta span {
display: inline-flex;
align-items: center;
gap: 9px;
}

body.single-post .tds-article-v2__meta svg {
width: 19px;
height: 19px;

fill: none;
stroke: currentColor;
stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
}

body.single-post .tds-article-v2__meta-separator {
width: 4px;
height: 4px;
border-radius: 50%;
background: var(--tds-color-gold-500);
}


/* ==========================================================
   MAIN
   ========================================================== */

body.single-post .tds-article-v2__main {
position: relative;

padding:
0
0
var(--tds-section-gap-lg);

background: var(--tds-color-paper-300);
}


/* ==========================================================
   DECK — LEAD
   ========================================================== */

body.single-post .tds-article-v2__deck {
position: relative;
z-index: 20;

width: min(1180px, calc(100% - 64px));
margin:
-72px
auto
42px;

display: grid;
grid-template-columns: 96px 1fr;
align-items: center;
gap: 36px;

padding: 42px 54px;

border: 1px solid rgba(255, 255, 255, .74);
border-radius: var(--tds-radius-xl);

background: rgba(255, 255, 255, .97);
box-shadow: var(--tds-shadow-lg);

-webkit-backdrop-filter: blur(16px);
backdrop-filter: blur(16px);
}

body.single-post .tds-article-v2__deck-icon {
display: flex;
align-items: center;
justify-content: center;

width: 78px;
height: 78px;

border-radius: 50%;
background: var(--tds-color-gold-100);
color: var(--tds-color-gold-600);
}

body.single-post .tds-article-v2__deck-icon svg {
width: 48px;
height: 48px;

fill: none;
stroke: currentColor;
stroke-width: 1.35;
stroke-linecap: round;
stroke-linejoin: round;
}

body.single-post .tds-article-v2__deck p {
max-width: 940px;
margin: 0;

font-size: clamp(21px, 1.55vw, 26px);
line-height: 1.58;
font-weight: 450;
letter-spacing: -.018em;

color: var(--tds-color-text-primary);
}


/* ==========================================================
   READER CARD
   ========================================================== */

body.single-post .tds-article-v2__reader {
position: relative;

width: min(1180px, calc(100% - 64px));
margin:
0
auto
68px;

padding: 70px 78px 48px;

overflow: hidden;

border: 1px solid var(--tds-color-border-soft);
border-radius: var(--tds-radius-xl);

background: #fff;
box-shadow: var(--tds-shadow-sm);
}

body.single-post .tds-expandable-content__viewport {
width: min(900px, 100%);
margin-inline: auto;

overflow: hidden;

transition:
max-height 460ms var(--tds-ease-enter);
}

body.single-post .tds-article-v2__reader.is-expanded
.tds-expandable-content__viewport {
overflow: visible;
}


/* ==========================================================
   ARTICLE TYPOGRAPHY
   ========================================================== */

body.single-post .tds-article-v2__body {
font-size: 20px;
line-height: 1.82;
font-weight: 400;

color: #505a6b;
}

body.single-post .tds-article-v2__body p {
margin: 0 0 32px;
}

body.single-post .tds-article-v2__body h2 {
margin: 72px 0 26px;

font-size: clamp(36px, 3.1vw, 46px);
line-height: 1.12;
font-weight: 650;
letter-spacing: -.04em;

color: var(--tds-color-text-primary);
}

body.single-post .tds-article-v2__body h3 {
margin: 54px 0 22px;

font-size: clamp(28px, 2.45vw, 35px);
line-height: 1.18;
font-weight: 650;
letter-spacing: -.032em;

color: var(--tds-color-text-primary);
}

body.single-post .tds-article-v2__body h4 {
margin: 42px 0 18px;

font-size: 25px;
line-height: 1.28;
font-weight: 650;

color: var(--tds-color-text-primary);
}

body.single-post .tds-article-v2__body ul,
body.single-post .tds-article-v2__body ol {
margin: 30px 0 42px;
padding-left: 1.65em;
}

body.single-post .tds-article-v2__body li {
padding-left: .35em;
}

body.single-post .tds-article-v2__body li + li {
margin-top: 14px;
}

body.single-post .tds-article-v2__body li::marker {
color: var(--tds-color-gold-700);
font-weight: 650;
}

body.single-post .tds-article-v2__body strong,
body.single-post .tds-article-v2__body b {
font-weight: 650;
color: var(--tds-color-text-primary);
}

body.single-post .tds-article-v2__body blockquote {
margin: 44px 0;
padding: 28px 32px;

border: 0;
border-left: 3px solid var(--tds-color-gold-500);
border-radius:
0
var(--tds-radius-md)
var(--tds-radius-md)
0;

background: var(--tds-color-gold-100);
}

body.single-post .tds-article-v2__body blockquote,
body.single-post .tds-article-v2__body blockquote p {
font-size: 21px;
line-height: 1.7;
font-weight: 450;

color: var(--tds-color-text-primary);
}

body.single-post .tds-article-v2__body img {
display: block;
max-width: 100%;
height: auto;

border-radius: var(--tds-radius-image);
}

body.single-post .tds-article-v2__body figure {
margin: 48px 0;
}

body.single-post .tds-article-v2__body figcaption {
margin-top: 12px;

font-size: 15px;
line-height: 1.55;

color: var(--tds-color-text-muted);
}


/* ==========================================================
   EXPANDABLE
   ========================================================== */

body.single-post .tds-expandable-content__fade {
position: absolute;
z-index: 2;

left: 1px;
right: 1px;
bottom: 108px;

height: 210px;

pointer-events: none;

background:
linear-gradient(
to bottom,
rgba(255, 255, 255, 0) 0%,
rgba(255, 255, 255, .80) 45%,
rgba(255, 255, 255, .98) 78%,
#fff 100%
);

transition:
opacity 240ms ease,
visibility 240ms ease;
}

body.single-post .tds-article-v2__reader.is-expanded
.tds-expandable-content__fade,
body.single-post .tds-article-v2__reader.is-not-collapsible
.tds-expandable-content__fade {
opacity: 0;
visibility: hidden;
}

body.single-post .tds-expandable-content__actions {
position: relative;
z-index: 4;

width: min(900px, 100%);
margin: 34px auto 0;
}

body.single-post .tds-expandable-content__toggle {
min-height: 54px;
padding: 0 22px;

display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;

border: 1px solid var(--tds-color-border-strong);
border-radius: var(--tds-radius-control);

background: #fff;
color: var(--tds-color-gold-700);

font: inherit;
font-size: 16px;
font-weight: 650;

cursor: pointer;

box-shadow: var(--tds-shadow-xs);
}

body.single-post .tds-expandable-content__chevron {
width: 18px;
height: 18px;

fill: none;
stroke: currentColor;
stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;

transition: transform 240ms ease;
}

body.single-post .tds-article-v2__reader.is-expanded
.tds-expandable-content__chevron {
transform: rotate(180deg);
}

body.single-post .tds-expandable-content__label-expanded {
display: none;
}

body.single-post .tds-article-v2__reader.is-expanded
.tds-expandable-content__label-collapsed {
display: none;
}

body.single-post .tds-article-v2__reader.is-expanded
.tds-expandable-content__label-expanded {
display: inline;
}

body.single-post .tds-article-v2__reader.is-not-collapsible
.tds-expandable-content__actions {
display: none;
}


/* ==========================================================
   FOOTER: TOPICS + SHARE
   ========================================================== */

body.single-post .tds-article-v2__footer {
width: min(1180px, calc(100% - 64px));
margin: 0 auto 82px;
padding-top: 38px;

display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 48px;

border-top: 1px solid var(--tds-color-border);
}

body.single-post .tds-article-v2__topics > span,
body.single-post .tds-article-v2__share > span {
display: block;
margin-bottom: 17px;

font-size: 14px;
line-height: 1.3;
font-weight: 700;
letter-spacing: .15em;
text-transform: uppercase;

color: var(--tds-color-text-secondary);
}

body.single-post .tds-article-v2__topics > div {
display: flex;
flex-wrap: wrap;
gap: 10px;
}

body.single-post .tds-article-v2__topics a {
min-height: 46px;
padding: 0 19px;

display: inline-flex;
align-items: center;

border: 1px solid var(--tds-color-border);
border-radius: var(--tds-radius-pill);

background: #fff;
color: var(--tds-color-text-primary);

font-size: 16px;
font-weight: 600;
text-decoration: none;
}

body.single-post .tds-article-v2__share {
text-align: right;
}

body.single-post .tds-article-v2__share-links {
display: flex;
gap: 12px;
}

body.single-post .tds-article-v2__share-links a,
body.single-post .tds-article-v2__share-links button {
width: 50px;
height: 50px;

display: inline-flex;
align-items: center;
justify-content: center;

border: 1px solid var(--tds-color-border);
border-radius: 50%;

background: #fff;
color: var(--tds-color-text-primary);

cursor: pointer;
}

body.single-post .tds-article-v2__share-links svg {
width: 21px;
height: 21px;

fill: none;
stroke: currentColor;
stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
}


/* ==========================================================
   RELATED
   ========================================================== */

body.single-post .tds-article-v2__related {
width: min(1180px, calc(100% - 64px));
margin-inline: auto;
padding-top: 54px;

border-top: 1px solid var(--tds-color-border);
}

body.single-post .tds-article-v2__related-heading p {
margin: 0 0 12px;

font-size: 15px;
line-height: 1.3;
font-weight: 700;
letter-spacing: .15em;
text-transform: uppercase;

color: var(--tds-color-gold-700);
}

body.single-post .tds-article-v2__related-heading h2 {
margin: 0 0 34px;

font-size: clamp(38px, 3vw, 46px);
line-height: 1.12;
font-weight: 650;
letter-spacing: -.04em;
}

body.single-post .tds-article-v2__related-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 22px;
}

body.single-post .tds-article-v2__related-card {
overflow: hidden;

border: 1px solid var(--tds-color-border-soft);
border-radius: var(--tds-radius-card);

background: #fff;
box-shadow: var(--tds-shadow-sm);
}

body.single-post .tds-article-v2__related-image {
display: block;
aspect-ratio: 16 / 10;
overflow: hidden;
}

body.single-post .tds-article-v2__related-image img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}

body.single-post .tds-article-v2__related-content {
padding: 24px;
}

body.single-post .tds-article-v2__related-content > p {
margin: 0 0 13px;

font-size: 12px;
font-weight: 700;
letter-spacing: .14em;
text-transform: uppercase;

color: var(--tds-color-gold-700);
}

body.single-post .tds-article-v2__related-content h3 {
margin: 0 0 22px;

font-size: 22px;
line-height: 1.25;
font-weight: 650;
letter-spacing: -.025em;
}

body.single-post .tds-article-v2__related-content h3 a {
color: var(--tds-color-text-primary);
text-decoration: none;
}

body.single-post .tds-article-v2__related-content > span {
font-size: 14px;
color: var(--tds-color-text-muted);
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {

body.single-post .tds-article-v2__hero {
min-height: 620px;
}

body.single-post .tds-article-v2__hero-content {
width: calc(100% - 40px);
padding-top: 330px;
padding-bottom: 88px;
}

body.single-post .tds-article-v2__category {
margin-bottom: 18px;
font-size: 14px;
}

body.single-post .tds-article-v2__hero h1 {
font-size: clamp(40px, 11vw, 52px);
line-height: 1.03;
}

body.single-post .tds-article-v2__meta {
flex-wrap: wrap;
gap: 12px;

font-size: 15px;
}

body.single-post .tds-article-v2__deck {
width: calc(100% - 40px);
margin-top: -38px;
margin-bottom: 26px;

grid-template-columns: 1fr;
gap: 18px;

padding: 26px 24px 28px;

border-radius: var(--tds-radius-lg);
}

body.single-post .tds-article-v2__deck-icon {
width: 58px;
height: 58px;
}

body.single-post .tds-article-v2__deck-icon svg {
width: 36px;
height: 36px;
}

body.single-post .tds-article-v2__deck p {
font-size: 20px;
line-height: 1.56;
}

body.single-post .tds-article-v2__reader {
width: calc(100% - 40px);
margin-bottom: 52px;

padding: 38px 24px 30px;

border-radius: var(--tds-radius-lg);
}

body.single-post .tds-article-v2__body {
font-size: 19px;
line-height: 1.76;
}

body.single-post .tds-article-v2__body h2 {
margin-top: 58px;
font-size: 34px;
}

body.single-post .tds-article-v2__body h3 {
margin-top: 46px;
font-size: 28px;
}

body.single-post .tds-expandable-content__toggle {
width: 100%;
min-height: 56px;

font-size: 17px;
}

body.single-post .tds-article-v2__footer {
width: calc(100% - 40px);
margin-bottom: 62px;

display: grid;
grid-template-columns: 1fr;
gap: 36px;
}

body.single-post .tds-article-v2__share {
text-align: left;
}

body.single-post .tds-article-v2__related {
width: calc(100% - 40px);
}

body.single-post .tds-article-v2__related-heading p {
font-size: 13px;
}

body.single-post .tds-article-v2__related-heading h2 {
font-size: 34px;
}

body.single-post .tds-article-v2__related-grid {
grid-template-columns: 1fr;
}

}


/* TDS JOURNAL V2 HEADER FIX 2.1 — START */

/* ==========================================================
   Journal Single V2 — jeden nagłówek
   ========================================================== */

/*
 * Pojedynczy artykuł ma własny nagłówek TARG umieszczony
 * wewnątrz hero. Ukrywamy nagłówki generowane równolegle
 * przez szablon RealHomes.
 */

body.single-post .rh_temp_header_large_screens,
body.single-post .rh_responsive_header_temp,
body.single-post .rh_header,
body.single-post .rh_header_var_1,
body.single-post .rh_mod_header,
body.single-post .rh_mod_sfoi_wrapper {
display: none !important;
}


/*
 * Nagłówek TARG pozostaje widoczny ponad zdjęciem hero.
 */

body.single-post .tds-article-v2__hero .targ-header {
position: relative;
z-index: 30;

display: flex !important;
}


/* ==========================================================
   Mniejszy i spokojniejszy tytuł artykułu
   ========================================================== */

body.single-post .tds-article-v2__hero-content {
padding-top: 330px;
padding-bottom: 104px;
}

body.single-post .tds-article-v2__hero h1 {
max-width: 1040px;

font-size: clamp(44px, 4.25vw, 64px);
line-height: 1.04;
font-weight: 650;
letter-spacing: -.046em;
}


/* Średnie ekrany */

@media (max-width: 1199px) {

body.single-post .tds-article-v2__hero h1 {
max-width: 880px;

font-size: clamp(42px, 5vw, 58px);
}

}


/* Mobile */

@media (max-width: 767px) {

body.single-post .tds-article-v2__hero {
min-height: 580px;
}

body.single-post .tds-article-v2__hero-content {
padding-top: 300px;
padding-bottom: 78px;
}

body.single-post .tds-article-v2__hero h1 {
max-width: 100%;

font-size: clamp(35px, 9.5vw, 46px);
line-height: 1.06;
letter-spacing: -.04em;
}

}

/* TDS JOURNAL V2 HEADER FIX 2.1 — END */
