/* ============================================================
   css/historie-sesji.css
   Strona: Historie sesji — mp-theme
   ============================================================ */

/* ── HERO ─────────────────────────────────────────────────── */

.his-hero {
	position: relative;
	width: 100%;
	overflow: hidden;
	display: flex;
	align-items: flex-end;
	box-sizing: border-box;
}

.his-hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.his-hero__bg-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

.his-hero__inner {
	position: relative;
	z-index: 1;
	width: 100%;
	padding: 40px 60px;
	box-sizing: border-box;
}

.his-hero .ew--light {
	color: rgba(245,240,232,.45);
}

.his-hero__sub {
	margin-top: 16px;
	max-width: 560px;
	font-family: 'Inter', sans-serif;
	font-size: clamp(14px, 1.5vw, 17px);
	font-weight: 300;
	line-height: 1.65;
	letter-spacing: .04em;
	color: rgba(255,255,255,.75);
}

/* ── INTRO (HIS 01) ───────────────────────────────────────── */

.his-01 {
	padding: 100px 60px;
	box-sizing: border-box;
}

.his-01__inner {
	max-width: 1320px;
	margin: 0 auto;
}

.his-01__inner > * {
	max-width: 720px;
}

.his-01__headline {
	font-family: 'DM Serif Display', 'Playfair Display', Georgia, serif !important;
	font-size: clamp(28px, 4vw, 48px);
	font-weight: 400;
	line-height: 1.15;
	margin: 0 0 28px;
	color: inherit;
}

.his-01__desc {
	font-family: 'Inter', sans-serif;
	font-size: 17px;
	font-weight: 300;
	line-height: 1.85;
	color: inherit;
	opacity: .85;
}

/* ── KAFLE (HIS 02) ───────────────────────────────────────── */

.his-02 {
	padding: 0 60px;
	box-sizing: border-box;
}

.his-02__inner {
	max-width: 1320px;
	margin: 0 auto;
}

.his-02__header {
	max-width: 900px;
	margin-bottom: 56px;
}

.his-02__headline {
	font-family: 'DM Serif Display', 'Playfair Display', Georgia, serif !important;
	font-size: clamp(28px, 4vw, 48px);
	font-weight: 400;
	line-height: 1.15;
	margin: 0 0 20px;
	color: inherit;
}

.his-02__desc {
	font-family: 'Inter', sans-serif;
	font-size: 17px;
	font-weight: 300;
	line-height: 1.85;
	color: inherit;
	opacity: .8;
}

.his-02__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

/* Kafel */

.his-card {
	display: flex;
	flex-direction: column;
	background: transparent;
	text-decoration: none;
	color: inherit;
}

.his-card__link {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	color: inherit;
}

.his-card__img-wrap {
	position: relative;
	width: 100%;
	padding-bottom: 133.33%; /* 3:4 ratio — pełne zdjęcie bez przycinania */
	overflow: hidden;
	background: var(--beige-dark, #d4cfc8);
	flex-shrink: 0;
}

.his-card__img,
.his-card__img-placeholder {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	display: block;
	transition: transform .7s ease;
}

.his-card__img-placeholder {
	background: #d4cfc8;
}

.his-card__link:hover .his-card__img {
	transform: scale(1.03);
}

.his-card__body {
	padding: 24px 0 0;
}

.his-card__tags {
	font-family: 'Inter', sans-serif;
	font-size: 11px;
	letter-spacing: .12em;
	text-transform: uppercase;
	opacity: .5;
	margin: 0 0 10px;
}

.his-card__title {
	font-family: 'DM Serif Display', 'Playfair Display', Georgia, serif;
	font-weight: 400;
	font-size: clamp(22px, 2.5vw, 30px);
	margin: 0 0 12px;
	line-height: 1.2;
}

.his-card__desc {
	font-family: 'Inter', sans-serif;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.85;
	opacity: .8;
	margin: 0 0 16px;
}

.his-card__cta {
	font-family: 'Inter', sans-serif;
	font-size: 11px;
	letter-spacing: .14em;
	text-transform: uppercase;
	opacity: .55;
	transition: opacity .25s ease;
}

.his-card__link:hover .his-card__cta {
	opacity: 1;
}

/* ── CTA (wzorzec PF 04) ──────────────────────────────────── */

:root {
	--pf-gold: #B8965A;
}

.his-cta-pf__inner {
	margin:     0 auto;
	padding:    clamp(80px, 12vw, 160px) clamp(24px, 5vw, 80px);
	text-align: left;
}

.his-cta-pf__title {
	font-family:    'DM Serif Display', 'Playfair Display', Georgia, serif;
	font-weight:    400;
	font-size:      clamp(1.8rem, 3.5vw, 3rem);
	line-height:    1.15;
	letter-spacing: -.02em;
	margin:         0 0 .7em;
}
.his-cta-pf__title .go {
	color:      var(--pf-gold, #B8965A);
	font-style: italic;
}

.his-cta-pf__sub {
	font-family: 'Inter', sans-serif;
	font-weight: 300;
	font-size:   clamp(.88rem, 1.2vw, 1rem);
	line-height: 1.75;
	margin:      0 0 2.5em;
}

.his-cta-pf__micro {
	font-family: 'Inter', sans-serif;
	font-weight: 300;
	font-size:   .8rem;
	color:       rgba(26,26,26,.35);
	margin:      1.4em 0 0;
}

.his-cta-pf .btn,
.his-cta-pf .btn--light {
	display:         inline-block;
	font-family:     'Inter', sans-serif;
	font-weight:     400;
	font-size:       .76rem;
	letter-spacing:  .2em;
	text-transform:  uppercase;
	text-decoration: none;
	color:           var(--hiscta-btn-color, #1A1A1A);
	background:      var(--hiscta-btn-bg, transparent);
	padding:         .95em 2.4em;
	border:          1px solid var(--hiscta-btn-border, #1A1A1A);
	transition:      background .25s, color .25s, border-color .25s;
}
.his-cta-pf .btn:hover,
.his-cta-pf .btn--light:hover {
	background:   var(--hiscta-btn-hover-bg, #1A1A1A);
	color:        var(--hiscta-btn-hover-color, #F5F0E8);
	border-color: var(--hiscta-btn-hover-border, #1A1A1A);
}

@media (max-width: 767px) {
	.his-cta-pf__inner { padding: 64px 20px; }
}

/* ── ZŁOTY AKCENT + KURSYWA ───────────────────────────────── */

.his-hero .go,
.his-01 .go,
.his-02 .go {
	color: #9E8B6E !important;
	font-style: italic !important;
}

/* ── RESPONSYWNOŚĆ ────────────────────────────────────────── */

@media (max-width: 1024px) {
	.his-02__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.his-hero__inner {
		padding: 40px 24px;
	}
	.his-01 {
		padding: 64px 24px;
	}
	.his-02 {
		padding: 0 24px;
	}
	.his-02__grid {
		grid-template-columns: 1fr;
	}
	.his-02__header {
		margin-bottom: 40px;
	}
}