/* Mezopotamia — drugi moduł filaru „Bliski Wschód".
   Barwy z materiałów: glina, lapis lazuli przywożony z daleka, miedź i srebro.
   Egipt dostał fajans i złoto, więc tutaj świadomie inny zestaw — dwa działy
   tego samego filaru mają się różnić na pierwszy rzut oka.
   Podpisem strony jest tabliczka omenu rozcięta na warunek i skutek. */
.tmz-strona {
	--tlo: #0f0d12; --panel: rgba( 22, 18, 24, .78 ); --obrys: rgba( 185, 138, 82, .32 ); --wlos: rgba( 185, 138, 82, .14 );
	--glina: #b98a52; --glina-jasna: #d8b184; --lapis: #2f5fa8; --lapis-jasny: #5c8ede;
	--miedz: #a4593a; --srebro: #c9c6bd; --etyk: #9b7d5a;
	--tekst: #b3ada6; --tekst-slaby: #8d8880; --tekst-mocny: #eae5dd;
	--serif: 'Cormorant Garamond', Georgia, serif; --sans: Jost, system-ui, sans-serif;
	position: relative; max-width: 1520px; margin: 0 auto; padding: 0 40px 90px; color: var( --tekst ); font: 300 15px var( --sans );
	background: radial-gradient( 1200px 620px at 50% -10%, rgba( 47, 95, 168, .22 ), transparent 70% ), radial-gradient( 900px 520px at 84% 32%, rgba( 185, 138, 82, .12 ), transparent 70% ), var( --tlo ); overflow-x: clip;
}
.tmz-strona *, .tmz-strona *::before, .tmz-strona *::after { box-sizing: border-box; }
body:has( .tmz-strona ) .wp-site-blocks > header, body:has( .tmz-strona ) header.wp-block-template-part, body:has( .tmz-strona ) .wp-site-blocks > footer, body:has( .tmz-strona ) footer.wp-block-template-part, body:has( .tmz-strona ) .wp-block-post-title { display: none !important; }
body:has( .tmz-strona ) .wp-site-blocks, body:has( .tmz-strona ) .wp-block-group, body:has( .tmz-strona ) .wp-block-post-content { padding: 0 !important; margin: 0 !important; max-width: none !important; }
body:has( .tmz-strona ) .wp-block-post-content > *, body:has( .tmz-strona ) .entry-content > * { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
body:has( .tmz-strona ) { background: #0f0d12; }
body:has( .tmz-strona ) .wp-block-post-content > .tmz-strona, body:has( .tmz-strona ) .entry-content > .tmz-strona, .tmz-strona { box-sizing: border-box; max-width: 1600px !important; margin-left: auto !important; margin-right: auto !important; }
.tmz-strona button { font-family: inherit; }

.tmz-sciezka { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 18px 0 6px; font-size: 10.5px; letter-spacing: .26em; text-transform: uppercase; color: var( --tekst-slaby ); }
.tmz-sciezka i { font-style: normal; color: var( --etyk ); } .tmz-sciezka b { font-weight: 400; color: var( --glina-jasna ); }
.tmz-poziom { margin: 0 0 0 auto; }
.tmz-poziom span { display: inline-flex; align-items: center; gap: 7px; padding: 5px 11px; border: 1px solid var( --wlos ); border-radius: 999px; font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: var( --tekst ); }
.tmz-poziom span::before { content: ''; width: 8px; height: 8px; border-radius: 999px; background: var( --lapis-jasny ); box-shadow: 0 0 10px var( --lapis-jasny ); }

.tmz-hero { max-width: 80ch; padding: 44px 0 8px; }
.tmz-nad { margin: 0 0 12px; font-size: 11px; letter-spacing: .34em; text-transform: uppercase; color: var( --etyk ); }
.tmz-tytul { margin: 0; font: 500 clamp( 44px, 5.2vw, 76px )/1.03 var( --serif ); color: var( --glina-jasna ); }
.tmz-tytul small { display: block; margin-top: 8px; font: 300 16px var( --sans ); letter-spacing: .14em; color: var( --lapis-jasny ); }
.tmz-lead { margin: 22px 0 0; font-size: 16.5px; line-height: 1.75; color: var( --tekst-mocny ); }

.tmz-sekcja { margin: 76px 0 0; }
.tmz-sekcja--scisla { position: relative; margin-top: 44px; padding: 34px 30px 30px; border: 1px solid var( --wlos ); border-radius: 26px; background: radial-gradient( 900px 420px at 18% 0%, rgba( 47, 95, 168, .12 ), transparent 65% ), linear-gradient( 180deg, rgba( 26, 21, 28, .82 ), rgba( 13, 11, 16, .94 ) ); box-shadow: inset 0 1px 0 rgba( 255, 255, 255, .05 ), 0 40px 90px -50px rgba( 0, 0, 0, .95 ); }
.tmz-sekcja__nad { margin: 0 0 8px; font-size: 10.5px; letter-spacing: .3em; text-transform: uppercase; color: var( --etyk ); }
.tmz-sekcja__tytul { margin: 0; font: 500 clamp( 28px, 3vw, 40px )/1.15 var( --serif ); color: var( --glina-jasna ); }
.tmz-sekcja__lead { max-width: 78ch; margin: 12px 0 0; font-size: 14.5px; line-height: 1.7; color: var( --tekst ); }

/* ── cztery ośrodki ── */
.tmz-osrodki { display: grid; grid-template-columns: repeat( 4, minmax( 0, 1fr ) ); gap: 14px; margin: 26px 0 0; }
.tmz-osrodek { display: grid; align-content: start; gap: 6px; padding: 22px 20px 18px; border: 1px solid var( --wlos ); border-top: 3px solid color-mix( in srgb, var( --k ) 70%, transparent ); border-radius: 4px 4px 18px 18px; background: linear-gradient( 180deg, color-mix( in srgb, var( --k ) 12%, transparent ), rgba( 18, 15, 20, .6 ) ); color: inherit; font: inherit; text-align: left; cursor: pointer; transition: transform .22s, border-color .22s, box-shadow .22s; }
.tmz-osrodek:hover { transform: translateY( -4px ); box-shadow: 0 24px 50px -30px rgba( 0, 0, 0, .95 ), 0 0 40px -18px color-mix( in srgb, var( --k ) 60%, transparent ); }
.tmz-osrodek:focus-visible { outline: 2px solid var( --glina-jasna ); outline-offset: 3px; }
.tmz-osrodek.jest-wybrany { border-color: color-mix( in srgb, var( --k ) 60%, transparent ); background: linear-gradient( 180deg, color-mix( in srgb, var( --k ) 26%, transparent ), rgba( 18, 15, 20, .55 ) ); }
.tmz-osrodek b { font: 500 22px/1.15 var( --serif ); color: var( --glina-jasna ); }
.tmz-osrodek small { font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var( --tekst-slaby ); }
.tmz-osrodek p { margin: 6px 0 0; font-size: 12.5px; line-height: 1.55; color: var( --tekst ); }
.tmz-osrodki__opis { margin: 18px 0 0; padding: 22px 26px; border: 1px solid var( --wlos ); border-left: 2px solid var( --k, var( --lapis ) ); border-radius: 0 16px 16px 0; background: var( --panel ); }
.tmz-osrodki__opis[hidden] { display: none; }
.tmz-osrodki__opis h3 { margin: 0 0 6px; font: 500 24px var( --serif ); color: var( --glina-jasna ); }
.tmz-osrodki__opis p { margin: 0 0 10px; font-size: 14.5px; line-height: 1.7; }
.tmz-osrodki__opis em { display: block; margin-top: 12px; padding-top: 12px; border-top: 1px solid var( --wlos ); font-style: normal; font-size: 13.5px; line-height: 1.6; color: var( --tekst-slaby ); }

/* ── tabliczki omenów: warunek u góry, skutek pod kreską ── */
.tmz-omeny { display: grid; grid-template-columns: repeat( auto-fill, minmax( 260px, 1fr ) ); gap: 16px; margin: 26px 0 0; }
.tmz-omen { position: relative; display: grid; align-content: start; gap: 0; padding: 0; border: 1px solid var( --wlos ); border-radius: 6px 6px 16px 16px; background: linear-gradient( 180deg, rgba( 44, 35, 28, .8 ), rgba( 20, 16, 20, .92 ) ); color: inherit; font: inherit; text-align: left; cursor: pointer; overflow: hidden; box-shadow: inset 0 1px 0 rgba( 255, 255, 255, .05 ); transition: transform .22s, border-color .22s, box-shadow .22s; }
.tmz-omen:hover { transform: translateY( -4px ); border-color: var( --obrys ); box-shadow: 0 26px 54px -28px rgba( 0, 0, 0, .95 ), 0 0 40px -20px rgba( 185, 138, 82, .5 ); }
.tmz-omen:focus-visible { outline: 2px solid var( --glina-jasna ); outline-offset: 3px; }
.tmz-omen__gora { padding: 20px 22px 14px; }
.tmz-omen__jesli { display: block; margin-bottom: 6px; font-size: 9.5px; letter-spacing: .3em; text-transform: uppercase; color: var( --lapis-jasny ); }
.tmz-omen__nazwa { margin: 0; font: 500 21px/1.15 var( --serif ); color: var( --glina-jasna ); }
/* Kreska między warunkiem a skutkiem — tak dzielono wiersze na tabliczce. */
.tmz-omen__linia { height: 1px; background: linear-gradient( 90deg, transparent, var( --obrys ) 12%, var( --obrys ) 88%, transparent ); }
.tmz-omen__dol { padding: 14px 22px 18px; }
.tmz-omen__to { display: block; margin-bottom: 6px; font-size: 9.5px; letter-spacing: .3em; text-transform: uppercase; color: var( --etyk ); }
.tmz-omen__krotko { margin: 0; font-size: 13px; line-height: 1.6; color: var( --tekst ); }
.tmz-omen__waga { display: flex; align-items: center; gap: 5px; margin: 14px 0 0; }
.tmz-omen__waga i { width: 100%; height: 4px; border-radius: 2px; background: rgba( 185, 138, 82, .18 ); }
.tmz-omen__waga i.jest-pelna { background: var( --glina ); box-shadow: 0 0 10px -2px var( --glina ); }
.tmz-omen__waga small { flex: 0 0 auto; margin-left: 8px; font-size: 9.5px; letter-spacing: .18em; text-transform: uppercase; color: var( --tekst-slaby ); }

/* ── tory kart ── */
.tmz-rodziny, .tmz-role { display: flex; flex-wrap: wrap; gap: 16px; margin: 22px 0 0; }
.tmz-filtr { display: inline-flex; align-items: center; gap: 8px; padding: 0; border: 0; background: none; font: inherit; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var( --tekst-slaby ); cursor: pointer; }
.tmz-filtr::before { content: ''; width: 22px; height: 3px; border-radius: 2px; background: var( --k ); }
.tmz-filtr b { font-weight: 400; color: var( --tekst ); }
.tmz-filtr i { font-style: normal; color: var( --etyk ); }
.tmz-filtr.jest-wybrany b { color: var( --glina-jasna ); }

.tmz-tor { position: relative; min-width: 0; contain: inline-size; }
.tmz-siatka { display: flex; gap: 20px; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; margin: 22px 0 0; padding: 12px 4px 22px; cursor: grab; scroll-behavior: smooth; }
.tmz-siatka::-webkit-scrollbar { display: none; }
.tmz-siatka.jest-ciagniety { cursor: grabbing; scroll-snap-type: none; scroll-behavior: auto; }
.tmz-tor__strz { position: absolute; top: 50%; z-index: 3; display: grid; place-items: center; width: 46px; height: 46px; margin-top: -30px; border: 1px solid rgba( 185, 138, 82, .34 ); border-radius: 50%; background: rgba( 15, 13, 18, .92 ); color: var( --etyk ); cursor: pointer; box-shadow: 0 10px 30px rgba( 0, 0, 0, .6 ); transition: color .2s, border-color .2s, box-shadow .2s; }
.tmz-tor__strz::before { content: ''; width: 11px; height: 11px; margin-left: 5px; border-left: 1.6px solid currentColor; border-top: 1.6px solid currentColor; transform: rotate( -45deg ); }
.tmz-tor__strz--lewo { left: -20px; }
.tmz-tor__strz--prawo { right: -20px; transform: scaleX( -1 ); }
.tmz-tor__strz:hover { color: var( --glina-jasna ); border-color: var( --glina-jasna ); box-shadow: 0 10px 36px rgba( 216, 177, 132, .26 ); }
.tmz-tor__strz[hidden] { display: none; }
.tmz-tor__licznik { position: absolute; right: 6px; bottom: -6px; margin: 0; font-size: 10.5px; letter-spacing: .2em; text-transform: uppercase; color: var( --tekst-slaby ); }

.tmz-karta { position: relative; flex: 0 0 clamp( 210px, 19vw, 262px ); scroll-snap-align: start; display: grid; align-content: start; gap: 8px; padding: 24px 22px 20px; border: 1px solid color-mix( in srgb, var( --k ) 40%, transparent ); border-radius: 18px; background: linear-gradient( 180deg, rgba( 30, 24, 30, .92 ), rgba( 14, 12, 17, .96 ) ); cursor: pointer; box-shadow: 0 18px 44px -20px rgba( 0, 0, 0, .95 ); transition: transform .3s cubic-bezier( .2, .7, .3, 1 ), box-shadow .3s, border-color .3s, opacity .3s, filter .3s; }
.tmz-karta:hover { transform: translateY( -8px ); border-color: color-mix( in srgb, var( --k ) 85%, transparent ); box-shadow: 0 32px 66px -22px rgba( 0, 0, 0, .95 ), 0 0 56px -16px color-mix( in srgb, var( --k ) 55%, transparent ); }
.tmz-karta:focus-visible { outline: 2px solid var( --glina-jasna ); outline-offset: 3px; }
.tmz-karta.jest-przygaszony { opacity: .18; filter: saturate( .2 ); }
.tmz-karta__foto { margin: 0; border-radius: 14px; overflow: hidden; aspect-ratio: 1 / 1; }
.tmz-karta__foto img { display: block; width: 100%; height: 100%; object-fit: cover; }
.tmz-karta__nazwa { margin: 0; font: 500 22px/1.1 var( --serif ); color: var( --glina-jasna ); }
.tmz-karta__oryg { margin: 0; font: italic 300 12.5px var( --sans ); color: var( --tekst-slaby ); }
.tmz-karta__krotko { margin: 4px 0 0; font-size: 13px; line-height: 1.55; color: var( --tekst ); }
.tmz-karta__pas { display: flex; align-items: center; gap: 8px; margin: auto 0 0; padding-top: 14px; border-top: 1px solid var( --wlos ); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var( --tekst-slaby ); }
/* Istota dwuznaczna dostaje wyraźniejszą ramę — to jest sedno przy Pazuzu. */
.tmz-karta.jest-dwuznaczna { border-style: dashed; }

/* ── panele ── */
.tmz-ramy__siatka { display: grid; grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); gap: 20px; margin: 26px 0 0; }
.tmz-ramy__siatka > div { padding: 26px 28px; border: 1px solid var( --wlos ); border-top: 2px solid color-mix( in srgb, var( --lapis ) 60%, transparent ); border-radius: 3px 3px 20px 20px; background: var( --panel ); }
.tmz-ramy__siatka > div.jest-uczciwie { border-top-color: color-mix( in srgb, var( --miedz ) 65%, transparent ); }
.tmz-ramy__siatka i { display: block; margin-bottom: 10px; font-style: normal; font-size: 22px; color: var( --lapis-jasny ); }
.tmz-ramy__siatka b { display: block; margin-bottom: 8px; font: 500 21px var( --serif ); color: var( --glina-jasna ); }
.tmz-ramy__siatka p { margin: 0 0 10px; font-size: 14px; line-height: 1.7; }
.tmz-ramy__siatka p:last-child { margin-bottom: 0; }

/* ── okno ── */
.tmz-tlo {
	--panel: rgba( 22, 18, 24, .78 ); --obrys: rgba( 185, 138, 82, .32 ); --wlos: rgba( 185, 138, 82, .14 );
	--glina: #b98a52; --glina-jasna: #d8b184; --lapis: #2f5fa8; --lapis-jasny: #5c8ede; --miedz: #a4593a; --etyk: #9b7d5a;
	--tekst: #b3ada6; --tekst-slaby: #8d8880; --tekst-mocny: #eae5dd;
	--serif: 'Cormorant Garamond', Georgia, serif; --sans: Jost, system-ui, sans-serif;
	position: fixed; inset: 0; z-index: 100000; display: grid; place-items: center; padding: 28px; background: rgba( 6, 5, 8, .76 ); backdrop-filter: blur( 14px ); opacity: 0; transition: opacity .22s;
}
.tmz-tlo.jest-widoczne { opacity: 1; }
.tmz-okno { position: relative; width: min( 820px, 100% ); max-height: min( 88vh, 940px ); overflow: auto; padding: 40px 44px 44px; border: 1px solid var( --obrys ); border-top: 3px solid var( --k, var( --lapis ) ); border-radius: 4px 4px 24px 24px; background: linear-gradient( 180deg, rgba( 28, 23, 30, .97 ), rgba( 13, 11, 16, .98 ) ); box-shadow: 0 40px 90px rgba( 0, 0, 0, .6 ); color: var( --tekst ); font: 300 18px var( --sans ); transform: translateY( 14px ); transition: transform .22s; }
.tmz-tlo.jest-widoczne .tmz-okno { transform: none; }
.tmz-okno__x { position: absolute; right: 18px; top: 18px; width: 38px; height: 38px; border: 1px solid var( --wlos ); border-radius: 50%; background: rgba( 13, 11, 16, .6 ); color: var( --etyk ); font-size: 17px; cursor: pointer; z-index: 1; }
.tmz-okno__x:hover { color: var( --glina-jasna ); border-color: var( --obrys ); }
.tmz-okno__nad { margin: 0 0 6px; padding-right: 46px; font-size: 11px; letter-spacing: .3em; text-transform: uppercase; color: var( --k, var( --lapis-jasny ) ); }
.tmz-okno__tytul { margin: 0; font: 500 clamp( 30px, 3.4vw, 44px )/1.06 var( --serif ); color: var( --glina-jasna ); }
.tmz-okno__oryg { margin: 6px 0 0; font: italic 300 15px var( --sans ); color: var( --tekst-slaby ); }
/* KARTA BÓSTWA W OKNIE. Wysoki kadr obok tekstu na szerokim oknie, pełna
   szerokość na wąskim. `float` zamiast siatki, bo dalsza treść okna jest
   budowana w JS akapit po akapicie i nie da się jej opakować w kolumnę. */
.tmz-okno__karta {
	float: right; width: min( 300px, 42% ); margin: 4px 0 18px 26px;
	border: 1px solid var( --obrys ); border-radius: 3px 3px 14px 14px;
	background: rgba( 0, 0, 0, .25 ); overflow: hidden;
	box-shadow: 0 18px 44px rgba( 0, 0, 0, .5 );
}
.tmz-okno__karta img { display: block; width: 100%; height: auto; }
/* Domknięcie opływania, żeby ramka okna nie ucinała karty dłuższej od tekstu. */
.tmz-okno::after { content: ''; display: block; clear: both; }

.tmz-okno__fakty { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; }
.tmz-okno__fakty span { padding: 5px 12px; border: 1px solid var( --wlos ); border-radius: 999px; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var( --tekst-slaby ); }
.tmz-okno h3 { margin: 26px 0 8px; font: 400 12px var( --sans ); letter-spacing: .26em; text-transform: uppercase; color: var( --etyk ); }
.tmz-okno p { margin: 0 0 14px; font-size: 18px; line-height: 1.72; }
/* Test techniczny wymaga w oknie tekstu >= 18 px — okno jest miejscem do czytania,
   nie skrótem, więc mały krój był tu błędem. Podpisy pomocnicze zostają małe. */
.tmz-okno__oryg, .tmz-okno__mylic, .tmz-okno__nad { font-size: 13px; }
.tmz-okno__mylic { margin: 22px 0 0; padding: 16px 20px; border: 1px solid rgba( 164, 89, 58, .38 ); border-radius: 14px; background: rgba( 164, 89, 58, .1 ); font-size: 14px; line-height: 1.65; color: var( --tekst-mocny ); }
.tmz-okno__mylic b { display: block; margin-bottom: 5px; font: 400 10px var( --sans ); letter-spacing: .26em; text-transform: uppercase; color: var( --miedz ); }

@media ( max-width: 1100px ) {
	.tmz-osrodki { grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); }
	.tmz-ramy__siatka { grid-template-columns: minmax( 0, 1fr ); }
}
@media ( max-width: 680px ) {
	.tmz-strona { padding: 0 16px 60px; }
	.tmz-osrodki { grid-template-columns: minmax( 0, 1fr ); }
	.tmz-sekcja--scisla { padding: 24px 16px 20px; }
	.tmz-okno { padding: 30px 20px 30px; }
	.tmz-tor__strz { display: none; }
}
@media ( prefers-reduced-motion: reduce ) {
	.tmz-karta, .tmz-omen, .tmz-osrodek, .tmz-okno, .tmz-tlo { transition: none; }
	.tmz-siatka { scroll-behavior: auto; }
}

/* ── kafle mitów i praktyk ────────────────────────────────────────────────── */
.tmz-kafle { display: grid; grid-template-columns: repeat( auto-fill, minmax( 250px, 1fr ) ); gap: 16px; margin: 26px 0 0; }
.tmz-kafel { display: grid; align-content: start; gap: 6px; padding: 22px 22px 18px; border: 1px solid var( --wlos ); border-radius: 16px; background: var( --panel ); color: inherit; font: inherit; text-align: left; cursor: pointer; transition: transform .22s, border-color .22s, box-shadow .22s; }
.tmz-kafel:hover { transform: translateY( -4px ); border-color: var( --obrys ); box-shadow: 0 24px 50px -28px rgba( 0, 0, 0, .95 ), 0 0 40px -20px rgba( 185, 138, 82, .45 ); }
.tmz-kafel:focus-visible { outline: 2px solid var( --glina-jasna ); outline-offset: 3px; }
.tmz-kafel small { font-size: 10px; letter-spacing: .2em; text-transform: uppercase; color: var( --lapis-jasny ); }
.tmz-kafel b { font: 500 20px/1.15 var( --serif ); color: var( --glina-jasna ); }
.tmz-kafel p { margin: 4px 0 0; font-size: 13px; line-height: 1.6; color: var( --tekst ); }
.tmz-kafel em { font-style: normal; margin-top: 10px; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; color: var( --etyk ); }

/* ══════════════  Trzynaście pytań: gliniana tabliczka  ══════════════
   Mezopotamia nie ma w dostawach żadnej grafiki, więc fakturę rysujemy:
   wypalona glina w przejściu tonalnym, poziome rowki pisarza, pas blanków
   zigguratu w lapis i złocie — dwóch barwach, które ta kultura zestawiała
   najczęściej. Numery pytań w klinach babilońskich. Pełna odpowiedź dostaje
   lapisową krawędź, częściowa złotą, brak miedzianą przerywaną. */
.tmz-strona .tpy-sekcja {
	--k: #d9b26a; --tpy-brak: #a4593a;
	--tpy-tlo: linear-gradient( 180deg, #3b2b1d 0%, #2b1f16 26%, #1b140e 68%, #120d0a 100% );
	--tpy-pasek: repeating-linear-gradient( 90deg, #2f5fa8 0 16px, transparent 16px 22px, #d9b26a 22px 30px, transparent 30px 46px );
	--tpy-faktura:
		repeating-linear-gradient( 180deg, rgba( 255, 226, 180, .055 ) 0 1px, transparent 1px 22px ),
		radial-gradient( 760px 320px at 18% 0%, rgba( 47, 95, 168, .2 ), transparent 70% ),
		radial-gradient( 620px 300px at 88% 100%, rgba( 164, 89, 58, .16 ), transparent 70% );
	--tpy-kafel: linear-gradient( 180deg, rgba( 88, 62, 41, .58 ), rgba( 27, 19, 13, .92 ) );
	--tpy-kroj-nr: 'Noto Sans Cuneiform', serif;
	border-color: rgba( 217, 178, 106, .24 );
	box-shadow: inset 0 1px 0 rgba( 255, 226, 180, .08 ), 0 40px 90px -50px #000, 0 0 90px -50px #2f5fa8;
}
.tmz-strona .tpy-pytanie { border-radius: 9px 9px 15px 15px; }
.tmz-strona .tpy-pytanie.jest-jest { border-top-color: #5c8ede; }
.tmz-strona .tpy-pytanie.jest-jest .tpy-pytanie__stan { color: #9fb8e6; }
.tmz-strona .tpy-pytanie.jest-jest:hover { box-shadow: inset 0 1px 0 rgba( 255, 255, 255, .06 ), 0 18px 44px -26px #000, 0 0 36px -14px #5c8ede; }
.tmz-strona .tpy-pytanie__nr { color: rgba( 217, 178, 106, .66 ); text-shadow: 0 0 16px rgba( 217, 178, 106, .35 ); }
.tmz-strona .tpy-bilans__jest b { color: #9fb8e6; text-shadow: 0 0 14px rgba( 92, 142, 222, .5 ); }

/* Tła sekcji. Obraz i ciemna zasłona idą jako WARSTWY jednej właściwości
   background na samej sekcji — nie przez ::before i ::after, bo tych używa
   wspólny zdobienia.css (lotos nad sekcją i kreska rozdzielająca) i nadpisanie
   ich zabrałoby czterem sekcjom zdobienia, które ma reszta serwisu.
   Z tego samego powodu NIE ustawiamy overflow: hidden — lotos siedzi 52 px nad
   krawędzią sekcji i zostałby przycięty.
   Zasłona jest lekka, bo obrazy zamawiane były z wymogiem ciemnej lewej górnej
   ćwiartki i zmierzone po odbiorze: średnia jasność 7–10 na 255, kontrast
   tekstu ok. 16:1 przy progu AAA równym 7. Ma pogłębiać, nie ratować. */
.tmz-sekcja#omeny, .tmz-sekcja#bostwa, .tmz-sekcja#istoty, .tmz-sekcja#okresy {
	position: relative;
	padding: 40px 36px 44px; border: 1px solid var( --wlos ); border-radius: 26px;
	box-shadow: inset 0 1px 0 rgba( 255, 255, 255, .05 ), 0 40px 90px -50px rgba( 0, 0, 0, .95 );
}
/* Omeny: stół skryby, gliniany model wątroby z polami wróżebnymi
   i tabliczka rozłamana na pół — warunek i skutek, podpis tej strony. */
.tmz-sekcja#omeny {
	background:
		radial-gradient( 880px 500px at 12% 16%, rgba( 15, 13, 18, .62 ), transparent 74% ),
		linear-gradient( 180deg, rgba( 15, 13, 18, .10 ) 0%, rgba( 15, 13, 18, .22 ) 48%, rgba( 15, 13, 18, .48 ) 100% ),
		url( gfx/tla/tlo-omeny.webp?v=2 ) 62% 52% / cover no-repeat;
}
/* Bóstwa: dziedziniec świątyni, a na podeście nie posąg, tylko sama rogata
   tiara — ta sama konwencja co na kaflach, bo czterech bogów nie ma pewnego wizerunku. */
.tmz-sekcja#bostwa {
	background:
		radial-gradient( 880px 500px at 12% 16%, rgba( 15, 13, 18, .62 ), transparent 74% ),
		linear-gradient( 180deg, rgba( 15, 13, 18, .10 ) 0%, rgba( 15, 13, 18, .22 ) 48%, rgba( 15, 13, 18, .48 ) 100% ),
		url( gfx/tla/tlo-bostwa.webp?v=2 ) 78% 40% / cover no-repeat;
}
/* Istoty: próg domu z amuletem na nadprożu i depozytem glinianych figurek
   pod posadzką — ochrona zakopana tam, gdzie wchodzi się do środka. */
.tmz-sekcja#istoty {
	background:
		radial-gradient( 880px 500px at 12% 16%, rgba( 15, 13, 18, .62 ), transparent 74% ),
		linear-gradient( 180deg, rgba( 15, 13, 18, .10 ) 0%, rgba( 15, 13, 18, .22 ) 48%, rgba( 15, 13, 18, .48 ) 100% ),
		url( gfx/tla/tlo-istoty.webp?v=2 ) 56% 50% / cover no-repeat;
}
/* Okresy: przekrój kopca z czterema warstwami. Sekcja nazywa się
   „Nie cztery kolejne państwa" i obraz ma to powiedzieć bez słów. */
.tmz-sekcja#okresy {
	background:
		radial-gradient( 880px 500px at 12% 16%, rgba( 15, 13, 18, .62 ), transparent 74% ),
		linear-gradient( 180deg, rgba( 15, 13, 18, .10 ) 0%, rgba( 15, 13, 18, .22 ) 48%, rgba( 15, 13, 18, .48 ) 100% ),
		url( gfx/tla/tlo-okresy.webp?v=2 ) 74% 56% / cover no-repeat;
}
.tmz-sekcja#omeny .tmz-sekcja__lead, .tmz-sekcja#bostwa .tmz-sekcja__lead, .tmz-sekcja#istoty .tmz-sekcja__lead, .tmz-sekcja#okresy .tmz-sekcja__lead { color: var( --tekst-mocny ); }
@media ( max-width: 680px ) {
	.tmz-sekcja#omeny, .tmz-sekcja#bostwa, .tmz-sekcja#istoty, .tmz-sekcja#okresy { padding: 26px 16px 28px; border-radius: 18px; }
}

/* Przerywnik między sekcjami: rozeta ośmiopłatkowa, plecionka sznurowa,
   schodkowe blanki i fryz lotosu z pąkiem — język glazurowanej cegły babilońskiej.
   SVG wstawiany w treść, więc bierze barwę przez currentColor. */
.tmz-przerywnik { margin: 54px auto 10px; max-width: 1100px; color: var( --glina ); opacity: .5; pointer-events: none; }
.tmz-przerywnik svg { display: block; width: 100%; height: auto; }
@media ( max-width: 680px ) { .tmz-przerywnik { margin: 34px auto 6px; } }


/* ---------------------------------------------------------------------------
   TŁA SEKCJI

   Cztery grafiki leżały w `gfx/tla/` od dawna i NIE BYŁY WIDOCZNE: moduł nie
   miał gniazda, więc kod nigdy po nie nie sięgał. Reguły trzymają się atrybutu
   data-tlo, który PHP dokłada dopiero wtedy, gdy plik naprawdę leży na dysku —
   brak grafiki ma być cichy, a nie zostawiać pustej ramy.

   Obraz wchodzi WARSTWĄ właściwości background, nie przez ::before. Tych dwóch
   pseudoelementów używa wspólny zdobienia.css i nadpisanie ich zabrałoby sekcjom
   zdobienia reszty serwisu. Z tego samego powodu nie ma tu overflow: hidden.

   Adres pliku podaje PHP w zmiennej --obraz-tla razem ze znacznikiem czasu.
   NIE --tlo: ta nazwa jest w tym arkuszu zajęta przez barwę podłoża.
   --------------------------------------------------------------------------- */

.tmz-hero[data-tlo] {
	position: relative; max-width: none;
	padding: 64px 36px 52px; border-radius: 26px;
	border: 1px solid rgba( 255, 255, 255, .10 );
	box-shadow: inset 0 1px 0 rgba( 255, 255, 255, .05 ), 0 40px 90px -50px rgba( 0, 0, 0, .95 );
	background:
		linear-gradient( 90deg, rgba( 15, 13, 18, .90 ) 0%, rgba( 15, 13, 18, .70 ) 34%, rgba( 15, 13, 18, .20 ) 66%, transparent 100% ),
		var( --obraz-tla ) 50% 46% / cover no-repeat;
}
.tmz-hero[data-tlo] > * { max-width: 80ch; }

.tmz-sekcja[data-tlo] {
	position: relative;
	padding: 40px 36px 44px; border-radius: 26px;
	border: 1px solid rgba( 255, 255, 255, .10 );
	box-shadow: inset 0 1px 0 rgba( 255, 255, 255, .05 ), 0 40px 90px -50px rgba( 0, 0, 0, .95 );
	background:
		radial-gradient( 880px 500px at 12% 16%, rgba( 15, 13, 18, .62 ), transparent 74% ),
		linear-gradient( 180deg, rgba( 15, 13, 18, .10 ) 0%, rgba( 15, 13, 18, .22 ) 48%, rgba( 15, 13, 18, .48 ) 100% ),
		var( --obraz-tla ) 62% 52% / cover no-repeat;
}

@media ( max-width: 680px ) {
	.tmz-hero[data-tlo], .tmz-sekcja[data-tlo] { padding: 28px 20px 32px; border-radius: 18px; }
}

/* ---------------------------------------------------------------------------
   CZYTELNOSC NA TLE

   Karty i kafle są z założenia półprzezroczyste — projektowano je na płaską
   barwę. Nad fotografią to przestaje działać, a zasłona na całej sekcji tego
   nie naprawia: musiałaby mieć krycie 0,80 i zabiłaby obraz. Dlatego
   czytelność niesie sam kafel, i tylko tam, gdzie pod spodem jest zdjęcie.

   Próg liczony w NAJGORSZYM przypadku, czyli nad czystą bielą. Przy kryciu
   0,90 podłoże kafla ma luminancję 0,0193, więc tekst główny #b3ada6 wypada
   6,81:1, a tytuł 7,60:1. Zejście poniżej progu miały dwie barwy
   poboczne i tylko one są tu podnoszone.
   --------------------------------------------------------------------------- */

.tmz-sekcja[data-tlo] .tmz-karta,
.tmz-sekcja[data-tlo] .tmz-kafel,
.tmz-sekcja[data-tlo] .tmz-omen,
.tmz-sekcja[data-tlo] .tmz-osrodek {
	background-color: rgba( 15, 13, 18, .90 );
	backdrop-filter: blur( 2px );
	border-color: rgba( 255, 255, 255, .16 );
	box-shadow: 0 18px 40px -26px rgba( 0, 0, 0, .9 );
}

/* TEKST POBOCZNY NAD TŁEM — podpisy i etykiety są ciemniejsze od tekstu
   głównego i przy kryciu kafla 0,90 wypadały PONIŻEJ progu 4,5:1:
   --tekst-slaby 4,30:1, --etyk 3,95:1. Podnoszenie krycia nic tu nie daje.
   Dlatego rozjaśniam SAMĄ BARWĘ, w tej samej rodzinie, i tylko pod [data-tlo]. */
.tmz-sekcja[data-tlo] {
	--tekst-slaby: #99948b;	/* #8d8880 dawało 4,30:1, teraz 5,02:1 */
	--etyk: #b78c65;	/* #9b7d5a dawało 3,95:1, teraz 5,01:1 */
}

@media ( max-width: 620px ) {
	/* Na wąskim ekranie karta przestaje opływać: pełna szerokość nad tekstem. */
	.tmz-okno__karta { float: none; width: 100%; margin: 14px 0 18px; }
}

/* OKNO TEZY — przejscie tonalne.
   Wspolna warstwa daje oknu tezy plaska pobialke rgba(255,255,255,.028)
   regulami o swoistosci 0,2,0 i 0,3,0 — jedna wartosc dla wszystkich dzialow
   naraz. Dublowana klasa daje 0,4,0 i zamyka sprawe bez !important.
   Barwy sa z palety TEGO dzialu. Dopisane po stronie SERWERA, bo lokalna
   kopia modulu bywa starsza niz wgrana. */
.tmz-strona .tmz-hero .tmz-okno.zd-okno,
.tmz-strona .tmz-hero .zd-okno.zd-okno,
.tmz-strona .tmz-hero .tmz-okno.tmz-okno {
	background:
		radial-gradient( 720px 240px at 42% 0%, rgba( 22, 18, 24, .10 ), transparent 70% ),
		linear-gradient( 168deg, #1a181d, #0f0d12 );
}
