/* ============================================================
   TCR PRO SKIN — 03 · sekcje (trust→footer)
   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.
   ============================================================ */

/* ── 6. TRUST — pasek logotypów między hairline ──────────── */
.iab-trust-badges { background: var(--c-bg); border-top: 1px solid var(--c-line); border-bottom: 1px solid var(--c-line); padding-block: var(--sp-6); }
.iab-trust-badges__label { font-family: var(--font-display); font-weight: var(--fw-medium); font-size: var(--text-xs); letter-spacing: var(--ls-mono); text-transform: uppercase; color: var(--c-muted); text-align: left; margin: 0 0 var(--sp-4); }
.iab-trust-badges__marquee { overflow: visible; -webkit-mask-image: none; mask-image: none; }
.iab-trust-badges__track { display: block; width: auto; animation: none; }
.iab-trust-badges__track .iab-trust-badges__list[aria-hidden] { display: none; }
.iab-trust-badges__list { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--sp-4) var(--sp-7); list-style: none; margin: 0; padding: 0; }
.iab-trust-badges__logo { font-family: var(--font-display); font-weight: var(--fw-medium); font-size: var(--text-lg); color: var(--c-ink-soft); opacity: 0.8; transition: color var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease); white-space: nowrap; }
.iab-trust-badges__item a:hover .iab-trust-badges__logo { color: var(--c-brand); opacity: 1; }

/* ── 7. RYTM SEKCJI — naprzemienne panele ────────────────── */
.iab-section { padding-block: var(--section-py); }
.iab-section--tight { padding-block: var(--sp-8); }
.iab-section--alt { background: var(--c-bg-alt); }
#services.iab-section { background: var(--c-bg-alt); }
.iab-rvr { background: var(--c-bg); }
.iab-how { background: var(--c-bg-alt); }

/* ── 8. KARTY USŁUG — foto radius 20, tytuł + benefit, złoty link ── */
.iab-media-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: var(--sp-5); }
@media (min-width: 1000px) { .iab-media-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.iab-media-card { position: relative; display: flex; flex-direction: column; background: transparent; border-radius: 0; overflow: visible; box-shadow: none; text-decoration: none; height: auto; min-height: 0; }
.iab-media-card:hover { transform: none; box-shadow: none; }
.iab-media-card::after, .iab-media-card::before { content: none; }
.iab-media-card--lg { grid-column: auto; }
.iab-media-card__media { aspect-ratio: 3 / 4; overflow: hidden; background: var(--c-bg-alt); border-radius: var(--radius-lg); }
.iab-media-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform var(--dur-slow) var(--ease); }
.iab-media-card:hover .iab-media-card__media img { transform: scale(1.04); }
.iab-media-card__bg { display: none; }
.iab-media-card__body { padding: var(--sp-4) var(--sp-1) 0; display: flex; flex-direction: column; gap: 2px; }
.iab-media-card__title { color: var(--c-ink); font-family: var(--font-display); font-weight: var(--fw-display); font-size: var(--text-lg); line-height: 1.3; margin: 0; }
.iab-media-card__desc { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; color: var(--c-muted); font-size: var(--text-sm); margin: 2px 0 0; text-transform: none; }
.iab-media-card__arrow { display: inline-flex; align-items: center; gap: var(--sp-2); margin-top: var(--sp-2); font-family: var(--font-display); font-weight: var(--fw-medium); font-size: var(--text-sm); color: var(--c-brand); text-transform: capitalize; }
.iab-media-card:hover .iab-media-card__arrow svg { transform: translateX(3px); }
.iab-media-card__arrow svg { transition: transform var(--dur-fast) var(--ease); }
.iab-offer-all { margin: var(--sp-7) 0 0; text-align: center; }
.iab-offer-all a { display: inline-flex; align-items: center; gap: var(--sp-2); font-family: var(--font-display); font-weight: var(--fw-medium); font-size: var(--text-sm); text-transform: capitalize; color: var(--c-on-brand); background: var(--c-brand); border-radius: var(--radius-pill); padding: 13px 28px; text-decoration: none; border-bottom: 0; transition: background var(--dur-fast) var(--ease); }
.iab-offer-all a:hover { background: #fff; color: #161616; opacity: 1; }

/* ── 9. STORY — panel + foto radius, chipy, złote CTA ────── */
.iab-rvr::before { content: none; }
.iab-rvr__panel { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-7); margin-top: var(--sp-7); align-items: center; }
@media (min-width: 900px) { .iab-rvr__panel { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: clamp(48px, 6vw, 100px); } .iab-rvr__args { margin-right: 0; } }
.iab-rvr__args { background: transparent; border: 0; box-shadow: none; padding: 0; display: flex; flex-direction: column; gap: var(--sp-5); }
.iab-rvr__args .iab-rvr__h { font-family: var(--font-display); font-weight: var(--fw-display); font-size: var(--text-lg); margin: 0; color: var(--c-ink); }
.iab-rvr__args .iab-rvr__h::after { content: none; }
.iab-rvr__para { color: var(--c-ink-soft); font-size: var(--text-base); max-width: 48ch; margin: 0; }
.iab-rvr__args .iab-rvr__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp-3); }
.iab-rvr__args .iab-rvr__list li { display: flex; gap: var(--sp-3); align-items: flex-start; color: var(--c-ink-soft); font-size: var(--text-base); padding: 0; border: 0; }
.iab-rvr__args .iab-rvr__list li:first-child { border: 0; }
.iab-rvr__args .iab-rvr__list svg { flex: none; margin-top: 4px; color: var(--c-brand); width: 16px; height: 16px; }
.iab-rvr__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-5); }
.iab-rvr__photo { position: relative; margin: 0; min-height: 320px; border-radius: var(--radius-lg); overflow: hidden; }
@media (min-width: 900px) { .iab-rvr__photo { min-height: 460px; } }
.iab-rvr__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.iab-rvr__callout { position: absolute; font-family: var(--font-display); font-size: 12px; font-weight: var(--fw-medium); letter-spacing: 0.03em; text-transform: capitalize; color: var(--c-on-brand); background: var(--c-brand); padding: 6px 14px; border-radius: var(--radius-pill); }
.iab-rvr__callout--top { top: var(--sp-4); right: var(--sp-4); }
.iab-rvr__callout--bottom { bottom: var(--sp-4); left: var(--sp-4); }
.iab-rvr__vs { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) var(--sp-5); margin-top: var(--sp-6); padding-top: var(--sp-4); border-top: 1px solid var(--c-line); font-size: var(--text-xs); color: var(--c-muted); text-transform: none; }
.iab-rvr__vs-label { color: var(--c-ink-soft); font-weight: var(--fw-medium); }
.iab-rvr__vs-item span { color: var(--c-brand); }

/* ── 10. PROCES — „01/ Krok" kolumny (Lumoria landmarks) ─── */
.iab-how__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-7); margin-top: var(--sp-7); align-items: start; }
@media (min-width: 960px) { .iab-how__grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); gap: clamp(48px, 6vw, 100px); } .iab-how__photo { position: sticky; top: calc(var(--header-h) + var(--sp-6)); } }
.iab-how__steps .iab-process { margin-top: 0; max-width: none; }
.iab-process { list-style: none; margin: var(--sp-7) 0 0; padding: 0; display: block; counter-reset: none; position: static; }
.iab-process::before, .iab-process::after { content: none; }
.iab-process__step { position: static; display: grid; grid-template-columns: 84px minmax(0, 220px) minmax(0, 1fr); gap: var(--sp-5); align-items: baseline; text-align: left; padding: var(--sp-5) 0; margin: 0; border-top: 1px solid var(--c-line); }
.iab-process__step:last-child { border-bottom: 1px solid var(--c-line); }
.iab-process__step::before, .iab-process__step::after { content: none; }
@media (max-width: 700px) { .iab-process__step { grid-template-columns: 56px minmax(0, 1fr); } .iab-process__step p { grid-column: 2; } }
.iab-process__num { position: static; display: block; width: auto; height: auto; background: none; border: 0; box-shadow: none; font-family: var(--font-display); font-size: var(--text-lg); font-weight: var(--fw-display); color: var(--c-brand); -webkit-text-stroke: 0; margin: 0; line-height: 1; transform: none; }
.iab-process__num::after { content: "/"; color: var(--c-line); margin-left: 4px; }
.iab-process__step h3 { font-size: var(--text-lg); margin: 0; }
.iab-process__step p { color: var(--c-ink-soft); font-size: var(--text-sm); max-width: 44ch; margin: 0; text-transform: none; }
.iab-how__cta { margin: var(--sp-6) 0 0; }
.iab-how__photo { margin: 0; border-radius: var(--radius-lg); overflow: hidden; }
.iab-how__photo img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; display: block; }
.iab-how__photo figcaption { margin-top: var(--sp-3); font-size: var(--text-xs); color: var(--c-muted); }

/* ── 11. WHY — 4 zaokrąglone karty (Lumoria feature row) ─── */
.iab-why-band { background: var(--c-bg) !important; background-image: none !important; color: var(--c-ink); }
.iab-why-band::before { content: none; }
.iab-why-band .iab-section-head h2 { color: var(--c-ink); }
.iab-why-band__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: var(--sp-5); margin-top: var(--sp-7); }
.iab-why-band__item { background: var(--c-card); border: 1px solid var(--c-line); border-radius: var(--radius-lg); padding: var(--sp-6); min-width: 0; transition: border-color var(--dur-base) var(--ease), transform var(--dur-base) var(--ease); }
.iab-why-band__item:hover { border-color: var(--c-brand); transform: translateY(-4px); }
.iab-why-band__index { font-family: var(--font-display); font-size: var(--text-sm); font-weight: var(--fw-display); color: var(--c-brand); display: block; margin-bottom: var(--sp-4); }
.iab-why-band__index::after { content: "/"; color: var(--c-line); margin-left: 3px; }
.iab-why-band__item h3 { color: var(--c-ink); font-size: var(--text-lg); margin: 0 0 var(--sp-2); }
.iab-why-band__item p { color: var(--c-ink-soft); font-size: var(--text-sm); margin: 0; text-transform: none; }

/* ── 12. BEFORE/AFTER — radius 20 + suwak, złoty seam ────── */
.iab-beforeafter-teaser { background: var(--c-bg-alt); color: var(--c-ink); }
.iab-ba-hint { margin: calc(-1 * var(--sp-3)) 0 var(--sp-5); font-size: var(--text-xs); color: var(--c-muted); }
.iab-beforeafter-teaser .iab-card { background: var(--c-card); border: 1px solid var(--c-line); border-radius: var(--radius-lg); box-shadow: none; padding: 0 0 var(--sp-5); overflow: hidden; transition: border-color var(--dur-base) var(--ease), transform var(--dur-base) var(--ease); }
.iab-beforeafter-teaser .iab-card:hover { border-color: var(--c-brand); transform: translateY(-4px); }
.iab-beforeafter-teaser .iab-card h3, .iab-beforeafter-teaser .iab-card p { padding-inline: var(--sp-5); }
.iab-beforeafter-teaser .iab-card__media--ba { border-radius: 0; border: 0; border-bottom: 1px solid var(--c-line); }
.iab-beforeafter-teaser .iab-card h3 { color: var(--c-ink); font-size: var(--text-lg); margin-top: var(--sp-4); }
.iab-beforeafter-teaser .iab-card p { color: var(--c-ink-soft); font-size: var(--text-sm); text-transform: none; }
.iab-card__media--ba { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px; background: var(--c-bg); border-radius: var(--radius-lg); overflow: hidden; height: auto; aspect-ratio: auto; box-shadow: none; border: 1px solid var(--c-line); }
.iab-card__ba { position: relative; aspect-ratio: 4 / 3; margin: 0; background: var(--c-bg); overflow: hidden; }
.iab-card__ba img { width: 100%; height: 100%; object-fit: cover; display: block; }
.iab-card__ba figcaption { position: absolute; left: var(--sp-3); bottom: var(--sp-3); font-family: var(--font-display); font-size: 11px; font-weight: var(--fw-medium); letter-spacing: 0.04em; text-transform: capitalize; color: #fff; background: rgba(14, 13, 12, 0.75); padding: 4px 12px; border-radius: var(--radius-pill); }
.iab-card__ba-ph { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: var(--c-muted); }
.iab-card__media--ba.is-slider { display: block; position: relative; aspect-ratio: 4 / 3; background: none; cursor: ew-resize; }
.iab-card__media--ba.is-slider .iab-card__ba { position: absolute; inset: 0; aspect-ratio: auto; }
.iab-card__media--ba.is-slider .iab-card__ba:nth-child(2) { clip-path: inset(0 0 0 var(--ba-pos, 50%)); }
.iab-card__media--ba.is-slider .iab-card__ba:nth-child(1) figcaption { left: var(--sp-3); right: auto; }
.iab-card__media--ba.is-slider .iab-card__ba:nth-child(2) figcaption { left: auto; right: var(--sp-3); }
.iab-ba-seam { position: absolute; top: 0; bottom: 0; left: var(--ba-pos, 50%); width: 2px; margin-left: -1px; background: var(--c-brand); pointer-events: none; z-index: 2; }
.iab-ba-seam i { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 40px; height: 40px; border-radius: 50%; background: var(--c-brand); box-shadow: var(--shadow-lift); }
.iab-ba-seam i::before, .iab-ba-seam i::after { content: ""; position: absolute; top: 50%; border: 4px solid transparent; }
.iab-ba-seam i::before { left: 9px; transform: translateY(-50%); border-right-color: var(--c-on-brand); }
.iab-ba-seam i::after { right: 9px; transform: translateY(-50%); border-left-color: var(--c-on-brand); }
.iab-ba-range { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: ew-resize; z-index: 3; -webkit-appearance: none; appearance: none; touch-action: pan-y; }

/* ── 13. REVIEWS — ciemniejszy panel + wielkie złote cudzysłowy ── */
.iab-reviews-band { position: relative; isolation: isolate; background-size: cover; background-position: center; background-color: var(--c-dark-bg); color: var(--c-ink); border-radius: var(--radius-xl); max-width: calc(var(--container) + 80px); margin-inline: auto; overflow: hidden; }
.iab-reviews-band::before { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(10, 9, 8, 0.78); }
.iab-reviews-band::after { content: "\201C\201C"; position: absolute; top: 8px; right: 32px; font-family: var(--font-display); font-weight: var(--fw-display); font-size: 160px; letter-spacing: -0.24em; line-height: 1; color: var(--c-brand); opacity: 0.9; pointer-events: none; }
.iab-reviews-band .iab-eyebrow { color: var(--c-brand); }
.iab-reviews-band .iab-section-head { text-align: left; }
.iab-reviews-band .iab-section-head h2 { color: #fff; margin-inline: 0; }
.iab-reviews-band .iab-trust { max-width: 620px; margin: var(--sp-5) 0 0; text-align: left; background: transparent; border: 0; box-shadow: none; padding: 0; }
.iab-reviews-band .iab-trust__lead { font-family: var(--font-body); font-weight: var(--fw-regular); font-size: var(--text-lg); line-height: 1.55; color: rgba(255, 255, 255, 0.9); }
.iab-reviews-band .iab-trust__signals { list-style: none; margin: var(--sp-5) 0; padding: var(--sp-4) 0; border-top: 1px solid var(--c-dark-line); border-bottom: 0; display: flex; flex-wrap: wrap; justify-content: flex-start; gap: var(--sp-2) var(--sp-6); }
.iab-reviews-band .iab-trust__signals li { display: inline-flex; align-items: center; gap: var(--sp-2); font-size: var(--text-xs); color: var(--c-dark-soft); }
.iab-reviews-band .iab-trust__signals svg { color: var(--c-brand); flex: none; width: 14px; height: 14px; }

/* ── 14. AREAS — split + chipy miast (Lumoria tags) ──────── */
.iab-areas-map { background: var(--c-bg); }
.iab-areas-map__big { display: none; }
@media (min-width: 960px) {
	.iab-areas-map--wall .iab-container { display: grid; grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr); gap: clamp(48px, 6vw, 100px); align-items: start; }
	.iab-areas-map--wall .iab-section-head { position: sticky; top: calc(var(--header-h) + var(--sp-6)); }
	.iab-areas-map--wall .iab-areas-map__grid { margin-top: 0; }
}
.iab-areas-map--wall .iab-areas-map__grid { grid-template-columns: minmax(0, 1fr); }
.iab-areas-map__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-6); align-items: start; margin-top: var(--sp-6); }
@media (min-width: 900px) { .iab-areas-map:not(.iab-areas-map--wall) .iab-areas-map__grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: var(--sp-8); } }
.iab-areas-map__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--sp-3); }
.iab-areas-map__list li { border: 0; }
.iab-areas-map__list a, .iab-areas-map__list span {
	display: inline-block;
	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 18px 9px;
	text-decoration: none;
	transition: border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);
}
.iab-areas-map__list a:hover { border-color: var(--c-brand); color: var(--c-brand); padding-left: 18px; }
.iab-areas-map__cities .iab-btn { margin-top: var(--sp-6); }
.iab-areas-map__map { border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--c-line); min-height: 320px; background: var(--c-bg-alt); }
.iab-areas-map__map iframe { display: block; width: 100%; height: 100%; min-height: 320px; border: 0; filter: grayscale(1) invert(0.9) contrast(0.9); }
.iab-areas-map__placeholder { display: flex; align-items: center; justify-content: center; gap: var(--sp-2); min-height: 320px; color: var(--c-muted); font-size: var(--text-sm); }

/* ── 15. BLOG — karty z radiusem, złote meta ─────────────── */
.iab-blog-card__meta, .iab-blog-teaser time { font-family: var(--font-body); font-size: var(--text-xs); letter-spacing: 0.02em; text-transform: none; color: var(--c-muted); }
.iab-blog-card__title { color: var(--c-ink); font-family: var(--font-display); font-weight: var(--fw-display); }
.iab-blog-card__link:hover .iab-blog-card__title { color: var(--c-brand); }
.iab-blog-card__excerpt { color: var(--c-ink-soft); text-transform: none; }
.iab-blog-card__more { font-family: var(--font-display); font-size: var(--text-sm); font-weight: var(--fw-medium); text-transform: capitalize; color: var(--c-brand); display: inline-flex; align-items: center; gap: var(--sp-1); }
.iab-blog-card__cat { font-family: var(--font-display); font-size: 11px; letter-spacing: 0.04em; text-transform: capitalize; background: var(--c-brand); color: var(--c-on-brand); padding: 5px 12px; border-radius: var(--radius-pill); }
.iab-blog-card__ph { color: var(--c-muted); background: var(--c-bg-alt); }

/* ── 16. LET'S TALK — ciemniejszy zaokrąglony band (newsletter Lumorii) ── */
.iab-lets-talk { border-top: 0; }
.iab-lets-talk .iab-cta-band {
	display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-7); align-items: center;
	background: var(--c-dark-bg);
	border: 1px solid var(--c-line);
	border-radius: var(--radius-xl);
	padding: clamp(32px, 5vw, 72px);
}
@media (min-width: 900px) { .iab-lets-talk .iab-cta-band { grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.7fr); gap: clamp(48px, 6vw, 110px); } }
.iab-lets-talk .iab-cta-band h2 { font-size: clamp(2rem, 2.4vw + 1.2rem, 3rem); line-height: 1.18; max-width: 16ch; margin: var(--sp-4) 0 var(--sp-3); color: #fff; }
.iab-lets-talk .iab-cta-band p { margin: 0 0 var(--sp-6); color: var(--c-ink-soft); text-transform: none; }
.iab-cta-band__contact { display: grid; gap: var(--sp-4); }
.iab-cta-band__row { display: grid; gap: 3px; padding-bottom: var(--sp-4); border-bottom: 1px solid var(--c-line); }
.iab-cta-band__row span { font-family: var(--font-display); font-size: var(--text-xs); letter-spacing: var(--ls-mono); text-transform: uppercase; color: var(--c-brand); }
.iab-cta-band__row a { color: var(--c-ink); text-decoration: none; font-size: var(--text-base); }
.iab-cta-band__row a:hover { color: var(--c-brand); }
.iab-cta-band__row em { font-style: normal; color: var(--c-ink-soft); font-size: var(--text-sm); }

/* ── 17. FOOTER — najgłębszy, złote akcenty ──────────────── */
.iab-footer {
	--c-on-brand: #F5F4F2;
	--c-brand-hover: #0E0D0C;
	--c-accent: #F26A1B;
	--c-accent-hover: #FF7F33;
	background: var(--c-dark-bg);
	color: var(--c-ink-soft);
	border-top: 1px solid var(--c-line);
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	margin-top: 0;
	box-shadow: none;
}
.iab-footer::before { background-image: radial-gradient(circle, rgba(242, 106, 27, 0.08) 1.2px, transparent 1.3px); background-size: 28px 28px; }
.iab-footer .iab-footer__cta { background: var(--c-accent); border: 1px solid var(--c-accent); color: #161616; border-radius: var(--radius-pill); }
.iab-footer .iab-footer__cta:hover { background: var(--c-accent-hover); border-color: var(--c-accent-hover); color: #161616; transform: none; }

