/* aomt.world: strona sprzedażowa. Pokrętła: wariancja 7, ruch 5, gęstość 4. */

/* ---------- nawigacja ---------- */
.skok-do-tresci { position: fixed; top: 12px; left: var(--margines); z-index: var(--z-modal); padding: 12px 20px; background: var(--mosiadz); color: var(--na-mosiadzu); font-family: var(--f-display); transform: translateY(-160%); }
.skok-do-tresci:focus { transform: none; color: var(--na-mosiadzu); }
main [id], #tresc { scroll-margin-top: 96px; }
.nav { position: fixed; inset: 0 0 auto 0; z-index: var(--z-nav); transition: background-color .3s var(--ease), border-color .3s var(--ease); border-bottom: 1px solid transparent; }
.nav--tlo { background: #101a1ef2; border-bottom-color: var(--linia); backdrop-filter: blur(10px); }
.nav__wnetrze { display: flex; align-items: center; gap: 28px; height: 68px; }
.nav__znak { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; color: var(--tekst-tytul); font-family: var(--f-display); font-weight: 500; letter-spacing: .14em; font-size: 16px; }
.nav__znak img { width: 36px; height: 36px; }
.nav__linki { display: flex; gap: 22px; margin-left: auto; }
.nav__linki a { display: inline-flex; align-items: center; gap: 8px; font-family: var(--f-display); font-size: 16px; color: var(--tekst); text-decoration: none; padding: 6px 0; border-bottom: 1px solid transparent; transition: border-color .2s, color .2s; }
.nav__linki a:hover { color: var(--mosiadz); border-bottom-color: var(--mosiadz); }
.nav__linki a[aria-current] { color: var(--tekst-tytul); border-bottom-color: var(--mosiadz); }
.nav__koszyk .nav-runa, .nav__menu .nav-runa { width: 28px; height: 24px; }
.nav__koszyk { position: relative; display: inline-grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--linia); background: transparent; cursor: pointer; color: var(--tekst); }
.nav__koszyk:hover { border-color: var(--mosiadz); color: var(--mosiadz); }
.nav__licznik { position: absolute; top: -8px; right: -8px; min-width: 20px; height: 20px; padding: 0 5px; display: grid; place-items: center; font-size: 12px; background: var(--mosiadz); color: var(--na-mosiadzu); }
.nav__menu { display: none; }
.menu-mobilne { display: grid; background: var(--pow); border-bottom: 1px solid var(--linia); padding: 8px var(--margines) 20px; }
.menu-mobilne a { display: flex; align-items: center; gap: 14px; font-family: var(--f-display); font-size: 20px; color: var(--tekst); text-decoration: none; padding: 12px 0; border-bottom: 1px solid var(--linia); }
@media (max-width: 900px) {
  .nav__linki { display: none; }
  .nav__koszyk { margin-left: auto; }
  .nav__menu { display: inline-grid; }
  .nav { background: #101a1ef2; border-bottom-color: var(--linia); }
}
@media (min-width: 901px) { .menu-mobilne { display: none !important; } }

/* ---------- otwarcie ---------- */
.hero { background: radial-gradient(100% 90% at 90% 40%, #1d2a2c 0%, var(--tlo) 72%); min-height: min(850px, 100dvh); display: grid; align-items: center; padding: 112px 0 56px; overflow: hidden; border-bottom: 1px solid #e9c98126; }
.hero__siatka { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 88px); align-items: center; }
.hero__agencja { margin: 0 0 32px; font-family: var(--f-display); font-size: 13px; line-height: 1.5; letter-spacing: .12em; color: var(--tekst-pom); }
.hero .etykieta { font-size: 12px; letter-spacing: .14em; margin-bottom: 16px; }
.hero .naglowek--xl { font-size: clamp(64px, 7.6vw, 108px); line-height: .98; font-weight: 500; }
.hero__tekst .lead { margin-top: 26px; max-width: 35ch; font-size: clamp(19px, 1.7vw, 22px); text-wrap: pretty; }
.hero__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 20px 28px; margin-top: 32px; }
.hero__cta .przycisk { gap: 22px; }
.hero__link { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; font: 500 16px var(--f-display); color: var(--tekst); text-decoration: none; border-bottom: 1px solid var(--linia-mocna); }
.hero__link:hover { color: var(--mosiadz); border-color: var(--mosiadz); }
.hero__szczegoly { display: flex; flex-wrap: wrap; gap: 20px 32px; margin: 36px 0 0; padding-top: 20px; border-top: 1px solid #e9c98126; font-family: var(--f-display); }
.hero__szczegoly dt { font-size: 22px; line-height: 1.2; color: var(--papier); font-variant-numeric: tabular-nums; }
.hero__szczegoly dd { margin: 6px 0 0; font-size: 12px; color: var(--tekst-pom); }
.hero__obraz { margin: 0; position: relative; justify-self: end; width: min(100%, 520px); isolation: isolate; }
.hero__obraz > img { width: 100%; height: auto; max-height: 580px; object-fit: cover; object-position: 50% 40%; box-shadow: var(--cien-strony); }
.hero__obraz::after { content: ""; position: absolute; inset: 12px 12px 60px; border: 1px solid #e9c98155; pointer-events: none; }
.hero__podpis { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 6px 14px; padding-top: 14px; font: 12px var(--f-display); color: var(--tekst-pom); min-height: 48px; }
.hero__podpis a { color: var(--mosiadz); padding: 6px 0; text-decoration: none; }
.hero > .runy--gwiazdozbior { opacity: .2; mask-image: linear-gradient(to right, transparent 35%, #000 70%); }
@media (prefers-reduced-motion: no-preference) {
  .hero__tekst > * { animation: wejscie .9s var(--ease) both; }
  .hero__tekst > :nth-child(2) { animation-delay: .08s; }
  .hero__tekst > :nth-child(3) { animation-delay: .16s; }
  .hero__tekst > :nth-child(4) { animation-delay: .24s; }
  .hero__obraz { animation: wejscie-obraz 1.2s var(--ease) .1s both; }
}
@keyframes wejscie { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@keyframes wejscie-obraz { from { opacity: 0; transform: scale(.97); } to { opacity: 1; transform: none; } }
@media (max-width: 900px) {
  .hero { min-height: auto; padding-top: 100px; padding-bottom: 40px; }
  .hero__siatka { grid-template-columns: 1fr; gap: 36px; }
  .hero__agencja { margin-bottom: 24px; }
  .hero .naglowek--xl { font-size: clamp(58px, 12vw, 88px); }
  .hero__obraz { justify-self: stretch; width: 100%; }
  .hero__obraz > img { max-height: none; aspect-ratio: 4 / 3; object-position: 50% 45%; }
  .hero__obraz::after { inset: 8px 8px 56px; }
  .hero__tekst .lead { margin-top: 20px; max-width: 42ch; }
  .hero__cta { margin-top: 24px; gap: 12px 24px; }
  .hero__szczegoly { margin-top: 28px; }
  .hero > .runy--gwiazdozbior { display: none; }
}

/* ---------- pierwsza strona (strona księgi na grafitowym tle) ---------- */
.probka { padding: var(--sekcja) 0; background: var(--tlo); }
.probka__uklad { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: clamp(32px, 6vw, 88px); align-items: end; }
.strona-ksiegi { position: relative; background: var(--ks-papier); color: var(--ks-tekst); box-shadow: var(--cien-strony); padding: clamp(32px, 5vw, 72px) clamp(24px, 6vw, 88px) 0; max-height: 980px; overflow: hidden; }
.strona-ksiegi__rozdzial { margin: 0; text-align: center; font-family: var(--f-ksiazka-tytul); font-size: 15px; letter-spacing: .32em; text-transform: uppercase; color: var(--ks-zloto); }
.strona-ksiegi__tytul { margin: 10px 0 18px; text-align: center; font-family: var(--f-ksiazka-tytul); font-weight: 400; font-size: clamp(26px, 3vw, 38px); line-height: 1.15; color: var(--ks-tytul); }
.strona-ksiegi__pas { width: min(100%, 560px); height: auto; margin: 0 auto 28px; }
.strona-ksiegi__proza { font-family: var(--f-ksiazka); font-size: clamp(18px, 1.35vw, 20px); line-height: 1.5; hyphens: auto; }
.strona-ksiegi__proza p { margin: 0; text-indent: 1.4em; }
.strona-ksiegi__proza p.inicjal { text-indent: 0; }
.strona-ksiegi__wygaszenie { position: absolute; inset: auto 0 0 0; height: 260px; background: linear-gradient(to bottom, #f0eadc00, var(--ks-papier) 78%); }
.probka__dalej { display: grid; gap: 24px; padding-bottom: 32px; }
.probka__dalej .przycisk { justify-self: start; }
@media (max-width: 900px) { .probka__uklad { grid-template-columns: 1fr; } .strona-ksiegi { max-height: 720px; } }

/* ---------- dwie warstwy ---------- */
.warstwy { padding: var(--sekcja) 0; background: var(--pow); }
.warstwy__tytul { max-width: 14ch; }
.warstwy__siatka { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 4vw, 64px); margin-top: 56px; }
.warstwa img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; margin-bottom: 24px; }
.warstwa p { margin: 12px 0 0; max-width: 52ch; color: var(--tekst); }
.warstwa--przesunieta { margin-top: 96px; }
.cytaty { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 4vw, 64px); margin-top: 88px; border-top: 1px solid var(--linia); padding-top: 48px; }
.cytat { margin: 0; }
.cytat blockquote { margin: 0; font-family: var(--f-serif); font-style: italic; font-size: clamp(24px, 2.4vw, 34px); line-height: 1.25; color: var(--tekst-tytul); }
.cytat figcaption { margin-top: 14px; font-family: var(--f-display); font-size: 15px; color: var(--tekst-pom); }
@media (max-width: 900px) {
  .warstwy__siatka, .cytaty { grid-template-columns: 1fr; }
  .warstwa--przesunieta { margin-top: 0; }
}

/* ---------- formaty (bento, 6 kafli) ---------- */
.formaty { padding: var(--sekcja) 0; background: var(--tlo); }
.formaty .naglowek--l { max-width: 18ch; }
.bento { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 16px; margin-top: 56px; }
.kafel { position: relative; background: var(--pow); border: 1px solid var(--linia); padding: clamp(22px, 2.4vw, 36px); display: flex; flex-direction: column; gap: 14px; overflow: hidden; color: var(--tekst); }
.kafel p { margin: 0; }
.kafel__zakup { margin-top: auto; padding-top: 12px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; }
.cena { font-size: 28px; font-weight: 500; color: var(--tekst-tytul); letter-spacing: -.01em; }
.cena__osobno { font-size: 16px; color: var(--tekst-pom); margin-left: 8px; font-weight: 400; }
.kafel__uwaga { font-family: var(--f-display); font-size: 14px; color: var(--tekst-pom); }
.kafel--papier { grid-column: span 7; grid-row: span 2; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(20px, 3vw, 40px); background: var(--pow-noc); }
.kafel--papier .kafel__tresc { display: flex; flex-direction: column; justify-content: center; gap: 14px; }
.kafel--papier .kafel__zakup { margin-top: 12px; }
.kafel__strony { position: relative; min-height: 420px; }
.kafel__strony img { position: absolute; width: 72%; height: auto; box-shadow: var(--cien-strony); transition: transform .6s var(--ease); }
.kafel__strony img:first-child { left: 0; top: 0; transform: rotate(-3deg); }
.kafel__strony img:last-child { right: 0; top: 12%; transform: rotate(2.5deg); }
.kafel--papier:hover .kafel__strony img:first-child { transform: rotate(-5deg) translateX(-6px); }
.kafel--papier:hover .kafel__strony img:last-child { transform: rotate(4deg) translateX(6px); }
.kafel--ebook { grid-column: span 5; }
.kafel__podglad { font-family: var(--f-ksiazka); font-size: 19px; line-height: 1.5; color: var(--ks-tekst); background: var(--ks-papier); padding: 18px 22px; box-shadow: var(--cien-strony); }
.kafel--audio { grid-column: span 5; }
.kafel--pakiet { grid-column: span 6; min-height: 340px; justify-content: flex-end; border-color: #e9c98166; }
.kafel--pakiet .kafel__tresc { position: relative; display: flex; flex-direction: column; gap: 14px; max-width: 48ch; }
.kafel__tlo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .34; transition: opacity .4s var(--ease), transform .8s var(--ease); }
.kafel--pakiet::after, .kafel--serial::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, #101a1ef5 20%, #101a1e55); pointer-events: none; }
.kafel--pakiet > *:not(.kafel__tlo), .kafel--serial > *:not(.kafel__tlo) { position: relative; z-index: 1; }
.kafel--serial { grid-column: span 3; justify-content: flex-end; min-height: 340px; text-decoration: none; }
.kafel--serial .kafel__tlo { opacity: .6; }
.kafel--serial:hover .kafel__tlo { opacity: .8; transform: scale(1.03); }
.kafel__strzalka { color: var(--mosiadz); }
.kafel--sklep { grid-column: span 3; justify-content: flex-end; background: var(--pow-2); }
@media (max-width: 1100px) {
  .kafel--papier { grid-column: span 12; grid-row: auto; }
  .kafel--ebook, .kafel--audio { grid-column: span 6; }
  .kafel--pakiet { grid-column: span 12; }
  .kafel--serial, .kafel--sklep { grid-column: span 6; }
}
@media (max-width: 700px) {
  .bento { grid-template-columns: 1fr; }
  .kafel--papier, .kafel--ebook, .kafel--audio, .kafel--pakiet, .kafel--serial, .kafel--sklep { grid-column: auto; }
  .kafel--papier { grid-template-columns: 1fr; }
  .kafel__strony { min-height: 0; aspect-ratio: 1 / 1.2; width: 100%; max-width: 360px; margin: 0 auto 12px; }
}

/* mini-player */
.miniplayer { display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 14px; padding: 12px; border: 1px solid var(--linia); background: var(--pow-2); }
.miniplayer__przycisk { width: 48px; height: 48px; display: grid; place-items: center; background: var(--mosiadz); color: var(--na-mosiadzu); border: 0; cursor: pointer; }
.miniplayer__przycisk:active { transform: translateY(1px); }
.miniplayer__tor { position: relative; height: 24px; cursor: pointer; }
.miniplayer__tor::before { content: ""; position: absolute; left: 0; right: 0; top: 11px; height: 2px; background: var(--linia); }
.miniplayer__tor span { position: absolute; left: 0; right: 0; top: 11px; height: 2px; background: var(--crintex); transform-origin: 0 50%; transform: scaleX(0); }
.miniplayer__czas { font-size: 14px; color: var(--tekst-pom); }
@media (max-width: 380px) { .miniplayer { grid-template-columns: 44px minmax(0, 1fr); gap: 8px; } .miniplayer__czas { grid-column: 2; font-size: 12px; } }

/* ---------- świat: galeria przewijana w poziomie ---------- */
.swiat { padding: var(--sekcja) 0; background: var(--pow); overflow: hidden; }
.swiat__naglowek { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.swiat__naglowek .naglowek { max-width: 16ch; }
.swiat__strzalki { display: flex; gap: 10px; }
.galeria { list-style: none; margin: 48px 0 0; padding: 0 var(--margines) 12px max(var(--margines), calc((100vw - var(--kontener)) / 2 + var(--margines)));
  display: grid; grid-auto-flow: column; grid-auto-columns: clamp(280px, 38vw, 560px); gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline-start: max(var(--margines), calc((100vw - var(--kontener)) / 2 + var(--margines))); scrollbar-width: thin; scrollbar-color: var(--linia) transparent; }
.galeria li { scroll-snap-align: start; }
.galeria figure { margin: 0; }
.galeria img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; transition: transform .6s var(--ease); }
.galeria figure:hover img { transform: scale(1.02); }
.galeria figcaption { margin-top: 12px; font-family: var(--f-display); font-size: 15px; color: var(--tekst-pom); }
@media (max-width: 700px) { .swiat__strzalki { display: none; } .galeria { grid-auto-columns: 82vw; } }

/* ---------- bohaterowie ---------- */
.bohaterowie { padding: var(--sekcja) 0; background: var(--tlo); }
.postacie { list-style: none; margin: 56px 0 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: clamp(20px, 3vw, 40px); }
.postac img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; object-position: 50% 25%; margin-bottom: 18px; filter: saturate(.92); }
.postac p { margin: 8px 0 0; color: var(--tekst); font-size: 17px; }
.postac { grid-column: span 2; }
.postac--duza { grid-column: span 2; grid-row: span 2; }
.postac--duza img { aspect-ratio: 4 / 5; }
@media (max-width: 1000px) { .postacie { grid-template-columns: repeat(2, minmax(0, 1fr)); } .postac, .postac--duza { grid-column: auto; grid-row: auto; } .postac--duza { grid-column: span 2; } .postac--duza img { aspect-ratio: 16 / 10; } }
@media (max-width: 560px) { .postacie { grid-template-columns: 1fr; } .postac--duza { grid-column: auto; } }

/* ---------- serial: pełna szerokość, kadr filmowy ---------- */
.serial { position: relative; min-height: 88vh; display: grid; align-items: end; padding: var(--sekcja) 0; overflow: hidden; isolation: isolate; }
.serial__tlo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.serial::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(to top, var(--tlo) 4%, #080f12cc 38%, #080f1222 100%); }
.serial__tresc { display: grid; gap: 22px; justify-items: start; }
.serial__tresc .lead { max-width: 46ch; }

/* ---------- portal adepta ---------- */
.portal-zapowiedz { padding: var(--sekcja) 0; background: var(--pow); }
.portal-zapowiedz__siatka { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.mozaika { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: minmax(0, auto); gap: 12px; }
.mozaika > img { width: 100%; height: 100%; object-fit: cover; }
.mozaika > img:nth-of-type(1) { grid-column: 1 / 3; aspect-ratio: 16 / 9; }
.mozaika .runy--siatka { grid-column: 3; grid-row: 1 / 3; }
.mozaika > img:nth-of-type(2) { grid-column: 1; aspect-ratio: 1; object-position: 50% 25%; }
.mozaika > img:nth-of-type(3) { grid-column: 2; aspect-ratio: 1; }
.mozaika > img:nth-of-type(4) { grid-column: 1 / 4; aspect-ratio: 21 / 8; }
.portal-zapowiedz__tekst { display: grid; gap: 22px; justify-items: start; }
.cechy { margin: 8px 0 12px; display: grid; grid-template-columns: 1fr 1fr; gap: 22px 32px; }
.cechy div { border-top: 1px solid var(--linia); padding-top: 14px; }
.cechy dt { font-family: var(--f-display); font-weight: 500; color: var(--tekst-tytul); font-size: 18px; }
.cechy dd { margin: 6px 0 0; font-size: 16px; color: var(--tekst); }
@media (max-width: 900px) { .portal-zapowiedz__siatka, .cechy { grid-template-columns: 1fr; } }

/* ---------- zapis ---------- */
.zapis { padding: var(--sekcja) 0; background: var(--tlo); }
.zapis__uklad { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.zapis__uklad .lead { margin-top: 24px; }
.formularz { display: grid; gap: 22px; padding: clamp(24px, 3vw, 40px); background: var(--pow); border: 1px solid var(--linia); }
.formularz .przycisk { justify-self: start; }
.zainteresowania { border: 0; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 10px 22px; }
.zainteresowania legend { margin-bottom: 10px; }
.zainteresowania label { display: inline-flex; align-items: center; gap: 10px; font-family: var(--f-display); font-size: 16px; font-weight: 400; cursor: pointer; }
.zainteresowania input { width: 20px; height: 20px; accent-color: var(--mosiadz); }
.formularz__sukces { display: grid; gap: 12px; justify-items: start; }
@media (max-width: 900px) { .zapis__uklad { grid-template-columns: 1fr; } }

/* ---------- pytania ---------- */
.pytania { padding: var(--sekcja) 0; background: var(--pow); }
.pytania__uklad { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 96px); }
.akordeon details { border-top: 1px solid var(--linia); }
.akordeon details:last-child { border-bottom: 1px solid var(--linia); }
.akordeon summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 16px; padding: 22px 0; font-family: var(--f-display); font-size: 20px; color: var(--tekst); }
.akordeon summary::-webkit-details-marker { display: none; }
.akordeon summary::after { content: "+"; color: var(--mosiadz); font-size: 26px; line-height: 1; transition: transform .3s var(--ease); }
.akordeon details[open] summary::after { transform: rotate(45deg); }
.akordeon details p { margin: 0 0 24px; max-width: 62ch; color: var(--tekst); }
@media (max-width: 900px) { .pytania__uklad { grid-template-columns: 1fr; } }

/* ---------- stopka ---------- */
.stopka { padding: 72px 0 48px; background: var(--tlo); border-top: 1px solid var(--linia); }
.stopka__siatka { display: grid; grid-template-columns: 1.4fr 2fr; gap: 28px 48px; align-items: start; }
.stopka__znak { display: flex; align-items: center; gap: 18px; }
.stopka__znak img { width: 72px; height: 72px; }
.stopka__znak p { margin: 0; font-family: var(--f-display); color: var(--tekst-tytul); max-width: 22ch; line-height: 1.3; }
.stopka__linki { display: flex; flex-wrap: wrap; gap: 14px 28px; justify-content: flex-end; }
.stopka__linki a { font-family: var(--f-display); font-size: 16px; color: var(--tekst); text-decoration: none; }
.stopka__linki a:hover { color: var(--mosiadz); }
.stopka__prawa { margin: 0; font-family: var(--f-display); font-size: 14px; color: var(--tekst-stopka); justify-self: end; }
@media (max-width: 800px) { .stopka__siatka { grid-template-columns: 1fr; } .stopka__linki { justify-content: flex-start; } .stopka__prawa { justify-self: start; } }

/* ---------- koszyk i kasa ---------- */
dialog { color: var(--tekst); }
dialog::backdrop { background: #080f12cc; }
.szuflada, .kasa { border: 1px solid var(--linia); background: var(--pow); padding: 0; box-shadow: var(--cien-strony); }
.szuflada { margin: 0 0 0 auto; height: 100dvh; max-height: 100dvh; width: min(440px, 100vw); display: none; flex-direction: column; }
.szuflada[open] { display: flex; }
@media (prefers-reduced-motion: no-preference) { .szuflada[open] { animation: z-prawej .35s var(--ease); } .kasa[open] { animation: wejscie .35s var(--ease); } }
@keyframes z-prawej { from { transform: translateX(40px); opacity: 0; } to { transform: none; opacity: 1; } }
.szuflada__glowa { display: flex; align-items: center; justify-content: space-between; padding: 18px 22px; border-bottom: 1px solid var(--linia); }
.koszyk__lista { list-style: none; margin: 0; padding: 0 22px; overflow: auto; flex: 1; }
.koszyk__pozycja { display: grid; grid-template-columns: 1fr auto; gap: 10px 16px; padding: 18px 0; border-bottom: 1px solid var(--linia); }
.koszyk__pozycja .pomoc { margin: 2px 0 0; font-size: 14px; font-family: var(--f-display); }
.koszyk__nazwa { margin: 0; font-family: var(--f-display); font-size: 17px; }
.koszyk__ilosc { display: flex; align-items: center; gap: 10px; }
.koszyk__ilosc .ikona-przycisk { width: 36px; height: 36px; }
.koszyk__ilosc .ikona { width: 18px; height: 18px; }
.koszyk__cena { margin: 0; align-self: center; text-align: right; }
.koszyk__pusty { padding: 32px 22px; display: grid; gap: 16px; justify-items: start; flex: 1; align-content: start; }
.szuflada__stopa { padding: 20px 22px 24px; border-top: 1px solid var(--linia); display: grid; gap: 14px; }
.koszyk__suma { display: flex; justify-content: space-between; margin: 0; font-family: var(--f-display); font-size: 18px; }
.koszyk__suma strong { font-weight: 500; color: var(--tekst-tytul); font-size: 22px; }
.kasa { width: min(520px, calc(100vw - 32px)); }
.kasa__formularz { display: grid; gap: 18px; padding: 0 0 24px; }
.kasa__formularz > *:not(.szuflada__glowa) { margin-left: 24px; margin-right: 24px; }
.kasa__pozycje { list-style: none; padding: 0; display: grid; gap: 8px; font-family: var(--f-display); }
.kasa__pozycje li { display: flex; justify-content: space-between; gap: 16px; }
.kasa .przycisk { justify-self: stretch; }


/* ---------- ilustracje ---------- */

.strona-ksiegi__ilu { margin: 1.1em -8% 1.1em; }
.strona-ksiegi__ilu img { width: 100%; height: auto; }
.probka__kadry { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 12px; }
.probka__kadry img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.probka__kadry img:first-child { grid-column: 1 / -1; }

.warstwa__miniatury { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: -12px 0 24px; }
.warstwa__miniatury img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; margin: 0; }

.kafel__pasek-obrazu { width: calc(100% + 2 * clamp(22px, 2.4vw, 36px)); max-width: none; margin: calc(-1 * clamp(22px, 2.4vw, 36px)) calc(-1 * clamp(22px, 2.4vw, 36px)) 4px; height: 150px; object-fit: cover; }
.kafel--sklep { justify-content: flex-end; min-height: 340px; }
.kafel--sklep::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, #141e22f5 25%, #141e2244); pointer-events: none; }
.kafel--sklep .kafel__tlo { opacity: .7; }
.kafel--sklep > *:not(.kafel__tlo) { position: relative; z-index: 1; }

/* 20 rozdziałów w obrazach */
.rozdzialy { padding: var(--sekcja) 0; background: var(--pow); }
.rozdzialy .naglowek--l { max-width: 16ch; }
.rozdzialy .lead { margin-top: 18px; }
.rozdzialy__siatka { list-style: none; margin: 48px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 16px; counter-reset: none; }
.rozdz figure { margin: 0; }
.rozdz__obrazy { position: relative; overflow: hidden; aspect-ratio: 3 / 2; background: var(--pow-2); }
.rozdz__obrazy img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .6s var(--ease), transform 1.2s var(--ease); }
.rozdz__drugi { opacity: 0; }
.rozdz--drugi .rozdz__drugi { opacity: 1; }
.rozdz__przelacz { position: absolute; bottom: 8px; right: 8px; min-height: 44px; min-width: 72px; padding: 8px 12px; border: 1px solid #e9c98166; background: #101a1ef2; color: var(--papier); font: 14px var(--f-display); font-variant-numeric: tabular-nums; cursor: pointer; }
.rozdz__przelacz:hover, .rozdz__przelacz[aria-pressed="true"] { background: var(--mosiadz); color: var(--na-mosiadzu); }
.rozdz figure:hover .rozdz__obrazy img { transform: scale(1.04); }
.rozdz figcaption { margin-top: 12px; font-family: var(--f-display); font-size: 16px; line-height: 1.3; color: var(--tekst); display: flex; gap: 10px; }
.rozdz__nr { color: var(--mosiadz); flex: none; }
@media (max-width: 1000px) { .rozdzialy__siatka { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .rozdzialy__siatka { gap: 20px 10px; } .rozdz figcaption { font-size: 14px; } }

.swiat__uwaga { margin-top: 18px; font-family: var(--f-display); font-size: 14px; }

.postac__kadr { position: relative; margin-bottom: 18px; }
.postac__kadr > img:first-child { margin-bottom: 0; }
.postac .postac__scena { position: absolute; right: -10px; bottom: -14px; width: 46%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; margin: 0; filter: none; border: 1px solid #e9c98166; box-shadow: var(--cien-strony); transition: transform .5s var(--ease); }
.postac:hover .postac .postac__scena, .postac:hover .postac__scena { transform: translateY(-6px) rotate(-1.5deg); }
.postac--duza .postac__scena { width: 40%; aspect-ratio: 3 / 2; }

.serial__kadry { list-style: none; margin: 16px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; width: 100%; }
.serial__kadry img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border: 1px solid var(--linia); }
@media (max-width: 700px) { .serial__kadry { grid-template-columns: 1fr 1fr; } }

.zapis__obraz { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; margin-top: 32px; box-shadow: var(--cien-strony); }
.pytania__bok { display: grid; gap: 28px; align-content: start; }
.pytania__bok img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
@media (min-width: 901px) { .pytania__bok { position: sticky; top: 96px; } }

/* taśma ilustracji nad stopką: jedyny ruchomy pas na stronie */
.tasma { overflow: hidden; background: var(--tlo); padding: 28px 0; border-top: 1px solid var(--linia); }
.tasma__tor { display: flex; gap: 12px; width: max-content; }
.tasma__tor img { width: 240px; height: 160px; object-fit: cover; opacity: .85; }
@media (prefers-reduced-motion: no-preference) { .tasma__tor { animation: tasma 90s linear infinite; } .tasma:hover .tasma__tor { animation-play-state: paused; } }
@keyframes tasma { to { transform: translateX(-50%); } }

.hero .kontener { position: relative; z-index: 1; }
