/* ============================================================
   TCR PRO SKIN — 05 · Lumoria 1:1 (topbar, hero slider, nowe sekcje)
   Część motywu (Lumoria dark). Kolejność plików = kaskada;
   ładowane jawnie w inc/enqueue.php (skin → utilities na końcu).
   NIE zmieniać kolejności bez re-audytu wizualnego.
   ============================================================ */

/* ── 21. LUMORIA 1:1 — topbar, hero slider, nowe sekcje ──── */
/* Topbar NAD headerem (Lumoria): header z fixed → sticky, body bez kompensacji */
body { padding-top: 0; }
.iab-header { position: sticky; top: 0; left: auto; right: auto; }
/* Topbar: wąski pas nad headerem */
.iab-topbar { background: #0E0D0C; border-bottom: 1px solid var(--c-line); font-size: var(--text-xs); color: var(--c-muted); }
.iab-topbar__inner { display: flex; justify-content: space-between; align-items: center; gap: var(--sp-4); min-height: 40px; padding-inline: var(--sp-6); }
.iab-topbar__left, .iab-topbar__right { display: flex; align-items: center; gap: var(--sp-5); min-width: 0; }
.iab-topbar span, .iab-topbar a { display: inline-flex; align-items: center; gap: 6px; color: var(--c-muted); text-decoration: none; white-space: nowrap; }
.iab-topbar a:hover { color: var(--c-brand); }
.iab-topbar svg { color: var(--c-brand); flex: none; }
@media (max-width: 760px) { .iab-topbar { display: none; } }

/* Hero slider: zaokrąglony wpuszczony foto-panel, fade slajdów */
.iab-hero-slider { position: relative; background: var(--c-bg); padding: var(--sp-4) var(--sp-5) var(--sp-5); }
.iab-hero-slider__frame { position: relative; isolation: isolate; overflow: hidden; border-radius: var(--radius-xl); max-width: calc(var(--container) + 80px); margin-inline: auto; min-height: clamp(520px, 74vh, 760px); display: grid; }
/* wszystkie slajdy w tej samej komórce grid → każdy wypełnia całą ramkę */
.iab-hero-slider__slide { grid-area: 1 / 1; position: relative; display: flex; align-items: center; opacity: 0; visibility: hidden; transition: opacity 700ms var(--ease), visibility 0s 700ms; z-index: 0; }
.iab-hero-slider__slide.is-active { opacity: 1; visibility: visible; transition: opacity 700ms var(--ease); z-index: 1; }
.iab-hero-slider__media { position: absolute; inset: 0; z-index: -2; background-image: var(--iab-bg); background-size: cover; background-position: center 40%; }
.iab-hero-slider__slide.is-active .iab-hero-slider__media { animation: iab-hero-zoom 7s var(--ease-out) both; }
@keyframes iab-hero-zoom { from { transform: scale(1.06); } to { transform: scale(1); } }
.iab-hero-slider__overlay { position: absolute; inset: 0; z-index: -1; background: linear-gradient(80deg, rgba(10, 9, 8, 0.86) 0%, rgba(10, 9, 8, 0.55) 55%, rgba(10, 9, 8, 0.25) 100%); }
.iab-hero-slider__content { width: 100%; max-width: var(--container); margin-inline: auto; padding: clamp(56px, 9vw, 120px) clamp(24px, 5vw, 72px); }
.iab-hero-slider__content .iab-eyebrow { color: var(--c-brand); }
.iab-hero-slider__title { color: #fff; font-family: var(--font-display); font-weight: var(--fw-display); font-size: var(--text-2xl); line-height: var(--lh-tight); text-transform: capitalize; margin: var(--sp-4) 0 0; max-width: 15ch; }
.iab-hero-slider__sub { color: #DEDCD9; font-size: var(--text-base); line-height: var(--lh-body); text-transform: none; margin: var(--sp-4) 0 0; max-width: 46ch; }
.iab-hero-slider__content .iab-btn { margin-top: var(--sp-6); }
/* Wejście treści aktywnego slajdu */
.iab-js .iab-hero-slider__content > * { opacity: 0; transform: translateY(14px); }
.iab-js .iab-hero-slider__slide.is-active .iab-hero-slider__content > * { opacity: 1; transform: none; transition: opacity 600ms var(--ease-out), transform 600ms var(--ease-out); }
.iab-js .iab-hero-slider__slide.is-active .iab-hero-slider__content > *:nth-child(2) { transition-delay: 90ms; }
.iab-js .iab-hero-slider__slide.is-active .iab-hero-slider__content > *:nth-child(3) { transition-delay: 180ms; }
.iab-js .iab-hero-slider__slide.is-active .iab-hero-slider__content > *:nth-child(4) { transition-delay: 270ms; }
/* Strzałki: okrągłe, prawy dół */
.iab-hero-slider__nav { position: absolute; right: clamp(24px, 4vw, 56px); bottom: clamp(24px, 4vw, 48px); display: flex; gap: var(--sp-3); z-index: 2; }
.iab-hero-slider__arrow { width: 52px; height: 52px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.65); background: rgba(14, 13, 12, 0.45); color: #fff; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; transition: background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease); }
.iab-hero-slider__arrow svg { transform: rotate(180deg); } /* bazowy chevron celuje w prawo */
.iab-hero-slider__arrow--next svg { transform: none; }
.iab-hero-slider__arrow:hover { background: var(--c-brand); border-color: var(--c-brand); color: var(--c-on-brand); }
/* Kropki: lewy dół */
.iab-hero-slider__dots { position: absolute; left: clamp(24px, 5vw, 72px); bottom: clamp(28px, 4vw, 52px); display: flex; gap: 10px; z-index: 2; }
.iab-hero-slider__dot { width: 10px; height: 10px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.6); background: transparent; padding: 0; cursor: pointer; transition: background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease); }
.iab-hero-slider__dot.is-active { background: var(--c-brand); border-color: var(--c-brand); transform: scale(1.2); }
@media (max-width: 760px) {
	.iab-hero-slider { padding: var(--sp-3) var(--sp-3) var(--sp-4); }
	.iab-hero-slider__frame { min-height: 78vh; }
	.iab-hero-slider__nav { display: none; }
	.iab-hero-slider__content { padding: var(--sp-7) var(--sp-5) calc(var(--sp-8) + 24px); }
}

/* Feature row: 4 karty z złotym kołem-ikoną (bez section-head) */
.iab-feature-row { padding-block: var(--sp-8); background: var(--c-bg); }
.iab-feature-row__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: var(--sp-5); }
.iab-feature-card { background: var(--c-card); border: 1px solid var(--c-line); border-radius: var(--radius-lg); padding: var(--sp-6); transition: border-color var(--dur-base) var(--ease), transform var(--dur-base) var(--ease); }
.iab-feature-card:hover { border-color: var(--c-brand); transform: translateY(-4px); }
.iab-feature-card__ico { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: var(--c-brand); color: var(--c-on-brand); margin-bottom: var(--sp-4); }
.iab-feature-card h3 { font-size: var(--text-lg); margin: 0 0 var(--sp-2); color: var(--c-ink); }
.iab-feature-card p { font-size: var(--text-sm); color: var(--c-ink-soft); margin: 0; text-transform: none; }

/* About split: złote pill-tagi + okrągły badge na foto */
.iab-rvr__tags { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin: calc(-1 * var(--sp-2)) 0 0; }
.iab-rvr__tags span { font-family: var(--font-display); font-size: 12px; font-weight: var(--fw-medium); letter-spacing: 0.03em; text-transform: capitalize; color: var(--c-brand); border: 1px solid var(--c-brand); border-radius: var(--radius-pill); padding: 7px 16px 5px; }
.iab-rvr__badge { position: absolute; left: calc(-1 * var(--sp-2)); top: calc(-1 * var(--sp-2)); width: 128px; height: 128px; border-radius: 50%; background: var(--c-brand); color: var(--c-on-brand); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; font-family: var(--font-display); font-weight: var(--fw-display); font-size: 34px; line-height: 1; box-shadow: var(--shadow-lift); z-index: 2; }
.iab-rvr__badge em { font-style: normal; font-size: 11px; font-weight: var(--fw-medium); letter-spacing: 0.06em; text-transform: uppercase; }
@media (min-width: 900px) { .iab-rvr__badge { left: auto; right: calc(-1 * var(--sp-3)); top: calc(-1 * var(--sp-3)); } }
@media (min-width: 900px) { .iab-rvr__photo { overflow: visible; } .iab-rvr__photo img { border-radius: var(--radius-lg); } }

/* Proces: 3 kolumny z cienką ikoną nad "01/" (Lumoria path) */
.iab-how__grid { grid-template-columns: minmax(0, 1fr) !important; gap: 0 !important; }
.iab-how__photo { display: none; }
.iab-how .iab-process { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--sp-6); margin-top: var(--sp-2); }
.iab-how .iab-process__step { display: flex; flex-direction: column; align-items: flex-start; gap: var(--sp-3); border-top: 0; border-bottom: 0 !important; padding: 0; }
.iab-how .iab-process__step h3 { border-top: 1px solid var(--c-line); width: 100%; padding-top: var(--sp-4); display: flex; align-items: baseline; gap: var(--sp-2); }
.iab-how .iab-process__ico { margin-bottom: var(--sp-3); }
.iab-process__ico { color: var(--c-brand); }
.iab-process__ico svg { width: 30px; height: 30px; }
.iab-how .iab-process__num::after { content: none; }
.iab-how .iab-process__step h3 { font-size: var(--text-lg); }
.iab-how__cta { text-align: left; }

/* Filter pills nad portfolio */
.iab-filter-pills { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin: 0 0 var(--sp-5); }
.iab-filter-pills__pill { font-family: var(--font-display); font-size: var(--text-sm); font-weight: var(--fw-regular); line-height: 1; color: var(--c-ink-soft); background: var(--c-card); border: 1px solid var(--c-line); border-radius: var(--radius-pill); padding: 11px 20px 9px; text-decoration: none; transition: border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease); }
.iab-filter-pills__pill.is-active { background: var(--c-brand); border-color: var(--c-brand); color: var(--c-on-brand); }
a.iab-filter-pills__pill:hover { border-color: var(--c-brand); color: var(--c-brand); }

/* Pakiety: 3 zaokrąglone karty, środkowa wyróżniona */
.iab-packages { background: var(--c-bg-alt); }
.iab-packages__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--sp-5); margin-top: var(--sp-7); align-items: stretch; }
.iab-package { display: flex; flex-direction: column; background: var(--c-card); border: 1px solid var(--c-line); border-radius: var(--radius-lg); padding: var(--sp-6); transition: border-color var(--dur-base) var(--ease), transform var(--dur-base) var(--ease); }
.iab-package:hover { border-color: var(--c-brand); transform: translateY(-4px); }
.iab-package--featured { background: #2A1B12; border-color: var(--c-brand); position: relative; }
.iab-package__title { font-size: var(--text-lg); color: var(--c-ink); margin: 0 0 var(--sp-2); }
.iab-package__desc { font-size: var(--text-sm); color: var(--c-ink-soft); margin: 0 0 var(--sp-4); text-transform: none; }
.iab-package__list { list-style: none; margin: 0 0 var(--sp-5); padding: var(--sp-4) 0 0; border-top: 1px solid var(--c-line); display: grid; gap: var(--sp-3); flex: 1; align-content: start; }
.iab-package__list li { display: flex; gap: var(--sp-2); align-items: flex-start; font-size: var(--text-sm); color: var(--c-ink-soft); }
.iab-package__list svg { flex: none; margin-top: 3px; color: var(--c-brand); }
.iab-package__cta { align-self: flex-start; }

/* Outline text marquee (dekoracyjny pas) */
.iab-marquee-words { overflow: hidden; padding-block: var(--sp-7); background: var(--c-bg); border-block: 1px solid var(--c-line); }
.iab-marquee-words__track { display: flex; width: max-content; animation: iab-marquee 36s linear infinite; }
.iab-marquee-words__run { display: flex; align-items: center; flex: none; }
.iab-marquee-words__run span { font-family: var(--font-display); font-weight: var(--fw-display); font-size: clamp(44px, 6vw, 84px); line-height: 1.1; text-transform: capitalize; color: transparent; -webkit-text-stroke: 1px var(--c-muted); white-space: nowrap; padding-inline: 28px; }
.iab-marquee-words__run i { color: var(--c-brand); font-style: normal; font-size: 26px; flex: none; }
@keyframes iab-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .iab-marquee-words__track { animation: none; } }

/* Testimonial split: foto + ciemna karta z wielkim cudzysłowem */
.iab-testi { background: var(--c-bg); }
.iab-testi__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-6); align-items: stretch; }
@media (min-width: 960px) { .iab-testi__grid { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: var(--sp-6); } }
.iab-testi__photo { margin: 0; border-radius: var(--radius-xl); overflow: hidden; min-height: 320px; }
.iab-testi__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.iab-testi__card { position: relative; isolation: isolate; overflow: hidden; background: var(--c-dark-bg, #0E0D0C); border: 1px solid var(--c-line); border-radius: var(--radius-xl); padding: clamp(32px, 4vw, 64px); display: flex; flex-direction: column; align-items: flex-start; gap: var(--sp-4); }
.iab-testi__card::after { content: "\201C\201C"; position: absolute; top: 4px; right: 28px; font-family: var(--font-display); font-weight: var(--fw-display); font-size: 150px; letter-spacing: -0.24em; line-height: 1; color: var(--c-brand); opacity: 0.9; pointer-events: none; }
.iab-testi__card .iab-eyebrow { color: var(--c-brand); }
.iab-testi__card h2 { color: #fff; font-size: var(--text-xl); margin: 0; }
.iab-testi__lead { color: #E6E4E1; font-size: var(--text-base); line-height: 1.6; margin: 0; max-width: 52ch; text-transform: none; }
.iab-testi__signals { list-style: none; margin: 0; padding: var(--sp-4) 0; border-top: 1px solid var(--c-line); display: grid; gap: var(--sp-2); width: 100%; }
.iab-testi__signals li { display: flex; align-items: center; gap: var(--sp-2); font-size: var(--text-sm); color: var(--c-ink-soft); }
.iab-testi__signals svg { color: var(--c-brand); flex: none; width: 15px; height: 15px; }
.iab-testi__attribution { display: flex; align-items: center; gap: var(--sp-2); font-family: var(--font-display); font-size: var(--text-sm); color: var(--c-ink-soft); }
.iab-testi__attribution svg { color: var(--c-brand); }
.iab-testi__embed { width: 100%; }

/* News: pierwszy wpis duży, reszta w prawej kolumnie */
@media (min-width: 960px) {
	body .iab-news-grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); grid-auto-rows: min-content; }
	body .iab-news-grid > *:first-child { grid-row: 1 / span 2; }
}

/* Estimate band: ciemny zaokrąglony panel z formularzem (wymóg: form na home) */
.iab-estimate { background: var(--c-bg); }
.iab-estimate__panel { background: #0E0D0C; border: 1px solid var(--c-line); border-radius: var(--radius-xl); padding: clamp(32px, 5vw, 72px); display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-7); align-items: start; }
@media (min-width: 960px) { .iab-estimate__panel { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(48px, 6vw, 96px); } }
.iab-estimate__head .iab-eyebrow { color: var(--c-brand); }
.iab-estimate__head h2 { color: #fff; margin: var(--sp-3) 0 var(--sp-3); }
.iab-estimate__head p { color: var(--c-ink-soft); font-size: var(--text-base); margin: 0; max-width: 44ch; text-transform: none; }
.iab-estimate__contact { list-style: none; margin: var(--sp-6) 0 0; padding: var(--sp-5) 0 0; border-top: 1px solid var(--c-line); display: grid; gap: var(--sp-3); }
.iab-estimate__contact li { display: flex; align-items: center; gap: var(--sp-3); font-size: var(--text-sm); color: var(--c-ink-soft); }
.iab-estimate__contact svg { color: var(--c-brand); flex: none; }
.iab-estimate__contact a { color: var(--c-ink); text-decoration: none; }
.iab-estimate__contact a:hover { color: var(--c-brand); }
.iab-estimate__form form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--sp-3) var(--sp-4); }
.iab-estimate__form form > p { margin: 0; }
.iab-estimate__form form > p:has(textarea), .iab-estimate__form form > p.iab-rodo, .iab-estimate__form form > p:has([type="submit"]) { grid-column: 1 / -1; }
.iab-estimate__form .iab-rodo { font-size: var(--text-xs); color: var(--c-muted); text-transform: none; }
@media (max-width: 700px) { .iab-estimate__form form { grid-template-columns: minmax(0, 1fr); } }

