/* Strony informacyjne (tekstowa, Kontakt), O mnie, archiwum autora, wyszukiwarka, 404. */

/* ---------- Wspólne: przycisk z edytora, nadtytuł, przewijany rząd kart ---------- */
.entry-content .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-10);
}

.entry-content .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: var(--space-8);
	min-height: var(--size-button-xl);
	padding: 0 var(--space-24);
	border-radius: var(--radius-xl);
	background: var(--color-cta);
	color: var(--color-on-cta);
	font-size: var(--text-base);
	font-weight: var(--weight-extrabold);
	text-decoration: none;
}

.entry-content .wp-block-button__link:hover {
	background: var(--color-cta-hover);
	color: var(--color-on-cta);
}

.eyebrow-muted {
	color: var(--color-text-muted);
}

.entry-content > .eyebrow {
	margin: var(--space-36) 0 calc(var(--space-8) - var(--space-16));
}

.entry-content > .eyebrow + h2 {
	margin-top: 0;
}

.entry-content > :first-child.eyebrow {
	margin-top: 0;
}

/* Rząd kart: na komputerze zawija się, na telefonie przewija się w bok. */
.scroll-row {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: var(--space-16);
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Biała karta (styl grupy „Biała karta”) */
.content-card {
	display: flex;
	flex-direction: column;
	gap: var(--space-16);
	padding: var(--space-32);
	border-radius: var(--radius-5xl);
	border: var(--border-width) solid var(--color-border);
	background: var(--color-surface);
}

.entry-content > .content-card {
	margin-top: var(--space-36);
}

.content-card > * {
	margin: 0;
}

.content-card > .eyebrow {
	margin-bottom: calc(var(--space-8) - var(--space-16));
}

.content-card > h2 {
	font-size: var(--text-7xl);
}

/* ---------- Nagłówek strony informacyjnej (jasny) ---------- */
.page-header {
	border-bottom: var(--border-width) solid var(--color-border);
	background: var(--color-surface);
}

.page-header-inner {
	padding-block: var(--space-28) var(--space-40);
}

.page-header .breadcrumbs {
	margin-bottom: var(--space-24);
}

.page-title {
	margin: 0 0 var(--space-12);
	font-size: var(--text-10xl);
	line-height: var(--leading-title);
	letter-spacing: var(--tracking-tight);
}

.page-lead {
	max-width: var(--width-lead);
	margin: 0;
	font-size: var(--text-lg);
	color: var(--color-text-body);
}

.page-meta {
	margin: 0;
	font-size: var(--text-md);
	font-weight: var(--weight-semibold);
	color: var(--color-text-muted);
}

/* ---------- Układ: menu po lewej, tekst po prawej ---------- */
.page-layout {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: var(--space-40) var(--space-56);
	padding-block: var(--space-48) var(--space-88);
}

.page-aside {
	display: flex;
	flex-direction: column;
	gap: var(--space-24);
	flex: 1 1 var(--basis-page-aside);
	max-width: var(--width-page-aside);
	min-width: 0;
}

.page-main {
	display: flex;
	flex-direction: column;
	flex: 999 1 var(--basis-content);
	max-width: var(--width-page-main);
	min-width: 0;
}

.page-main-wide {
	gap: var(--space-32);
	max-width: var(--width-contact-main);
}

.page-nav {
	padding: var(--space-10);
	border-radius: var(--radius-4xl);
	border: var(--border-width) solid var(--color-border);
	background: var(--color-surface);
}

.page-nav-list {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
	list-style: none;
}

.page-nav-list a {
	display: flex;
	align-items: center;
	min-height: var(--size-touch);
	padding: 0 var(--space-14);
	border-radius: var(--radius-lg);
	color: var(--color-ink);
	font-weight: var(--weight-bold);
	text-decoration: none;
}

.page-nav-list a:hover {
	background: var(--color-tint);
	color: var(--color-brand);
}

.page-nav-list .current-menu-item > a {
	background: var(--color-tint);
	color: var(--color-brand);
	font-weight: var(--weight-extrabold);
}

.page-nav-divider {
	height: var(--border-width);
	margin: var(--space-6) var(--space-14);
	border: 0;
	background: var(--color-border);
}

.page-toc {
	padding: 0 var(--space-6);
}

.page-toc-list {
	display: flex;
	flex-direction: column;
	gap: var(--space-8);
	margin: 0;
	padding-left: var(--space-18);
	font-size: var(--text-base-sm);
	font-weight: var(--weight-semibold);
}

.page-toc-link {
	color: var(--color-brand);
}

.page-toc-link:hover {
	color: var(--color-accent-text);
}

/* Tekst strony informacyjnej: większa czcionka, cytat z pomarańczową kreską. */
.page-content {
	gap: var(--space-20);
	font-size: var(--text-lg);
	line-height: var(--leading-loose);
	color: var(--color-ink-soft);
}

.page-content :where(h2) {
	margin-bottom: calc(var(--space-12) - var(--space-20));
	font-size: var(--text-7xl);
	line-height: var(--leading-card);
	color: var(--color-text);
}

.page-content :where(blockquote) {
	padding: var(--space-xs) 0 var(--space-xs) var(--space-24);
	border-left-color: var(--color-cta);
	border-radius: 0;
	background: transparent;
	font-size: var(--text-2xl);
	line-height: var(--leading-body);
	font-weight: var(--weight-bold);
	color: var(--color-brand);
}

.page-content :where(blockquote p) {
	margin: 0;
}

.page-content .wp-block-table {
	border-radius: var(--radius-2xl);
}

.page-content :where(table) {
	font-size: var(--text-base);
	line-height: var(--leading-body);
}

.page-content :where(th, td) {
	border-bottom-color: var(--color-border);
}

.page-content > .content-card {
	margin-top: 0;
}

.page-content .content-card {
	gap: var(--space-8);
	padding: var(--space-24);
	border-radius: var(--radius-4xl);
}

.page-content .content-card > p {
	font-size: var(--text-sm);
	font-weight: var(--weight-semibold);
	line-height: var(--leading-body);
	color: var(--color-text-muted);
}

/* „W skrócie” na stronach informacyjnych */
.page-summary {
	padding: var(--space-22) var(--space-24);
	border-radius: var(--radius-4xl);
	background: var(--color-tint);
}

.page-summary .eyebrow {
	margin-bottom: var(--space-10);
}

.page-content > .page-summary + * {
	margin-top: var(--space-16);
}

.dot-list {
	display: flex;
	flex-direction: column;
	gap: var(--space-6);
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: var(--text-body-lg);
	line-height: var(--leading-body);
	color: var(--color-text);
}

.dot-list-item {
	display: flex;
	align-items: baseline;
	gap: var(--space-12);
}

.dot-list-dot {
	flex: none;
	width: var(--space-6);
	height: var(--space-6);
	border-radius: var(--radius-pill);
	background: currentColor;
	transform: translateY(calc(var(--space-px) * -3));
}

/* Autor strony i „Napisz do mnie” pod tekstem */
.page-ask {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-12) var(--space-14);
	margin-top: var(--space-40);
	padding-top: var(--space-24);
	border-top: var(--border-width) solid var(--color-border);
}

.page-ask-text {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	margin: 0;
	font-size: var(--text-base-sm);
}

.page-ask-question {
	color: var(--color-text-muted);
}

/* ---------- Kontakt ---------- */
.contact-tiles {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-12);
	margin: 0;
	padding: 0;
	list-style: none;
}

.contact-tile {
	display: flex;
	flex-direction: column;
	gap: var(--space-xs);
	flex: 1 1 var(--basis-mini-card);
	min-width: 0;
	padding: var(--space-18);
	border-radius: var(--radius-3xl);
	border: var(--border-width) solid var(--color-border);
	background: var(--color-surface);
}

.contact-tile-text {
	font-size: var(--text-base-sm);
	color: var(--color-text-body);
}

.contact-form {
	display: flex;
	flex-direction: column;
	gap: var(--space-18);
	padding: var(--space-32);
	border-radius: var(--radius-5xl);
	border: var(--border-width) solid var(--color-border);
	background: var(--color-surface);
}

.contact-form-title {
	margin: 0;
	font-size: var(--text-5xl);
}

.contact-direct {
	margin: 0;
	font-size: var(--text-md);
	color: var(--color-text-muted);
}

.contact-direct-link {
	font-weight: var(--weight-bold);
}

.contact-admin {
	padding: var(--space-20) var(--space-24);
	border-radius: var(--radius-4xl);
	border: var(--border-width) dashed var(--color-border-strong);
	background: var(--color-bg);
	font-size: var(--text-base-sm);
	color: var(--color-text-body);
}

.contact-admin-title {
	margin: 0 0 var(--space-6);
	font-size: var(--text-base);
}

.contact-admin-text {
	margin: 0;
}

/* Formularz Contact Form 7 (i makieta z tymi samymi klasami) */
.wpcf7-form {
	display: flex;
	flex-direction: column;
	gap: var(--space-18);
}

.cf7-row {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-16);
}

.cf7-row > .cf7-field {
	flex: 1 1 var(--basis-contact-field);
}

.cf7-field {
	display: flex;
	flex-direction: column;
	gap: var(--space-6);
	min-width: 0;
	font-size: var(--text-md);
	font-weight: var(--weight-bold);
	color: var(--color-text-body);
}

.wpcf7-form-control-wrap {
	display: flex;
	flex-direction: column;
}

.wpcf7-text,
.wpcf7-email,
.wpcf7-select,
.wpcf7-textarea {
	width: 100%;
	min-height: var(--size-button);
	padding: 0 var(--space-14);
	border-radius: var(--radius-lg);
	border: var(--border-width) solid var(--color-border-strong);
	background: var(--color-surface);
	font: inherit;
	font-weight: var(--weight-medium);
	font-size: var(--text-base);
	color: var(--color-text);
}

.wpcf7-textarea {
	padding-block: var(--space-12);
	resize: vertical;
}

.wpcf7-text:focus,
.wpcf7-email:focus,
.wpcf7-select:focus,
.wpcf7-textarea:focus {
	outline: var(--border-width-thick) solid var(--color-brand);
	outline-offset: var(--space-px);
}

.wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
}

.wpcf7-acceptance label {
	display: flex;
	align-items: flex-start;
	gap: var(--space-10);
	font-size: var(--text-md);
	color: var(--color-text-body);
	cursor: pointer;
}

.wpcf7-acceptance input {
	flex: none;
	width: var(--size-checkbox);
	height: var(--size-checkbox);
	margin: var(--space-2xs) 0 0;
	accent-color: var(--color-brand);
}

.cf7-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-16);
}

.wpcf7-submit {
	min-height: var(--size-button-xl);
	padding: 0 var(--space-28);
	border: 0;
	border-radius: var(--radius-xl);
	background: var(--color-cta);
	color: var(--color-on-cta);
	font: inherit;
	font-weight: var(--weight-extrabold);
	cursor: pointer;
}

.wpcf7-submit:hover {
	background: var(--color-cta-hover);
}

.wpcf7-submit:disabled {
	cursor: not-allowed;
}

.wpcf7-not-valid-tip,
.wpcf7-response-output {
	font-size: var(--text-md);
	color: var(--color-accent-text);
}

.form-mockup-note {
	margin: 0 0 var(--space-16);
	padding: var(--space-8) var(--space-12);
	border-radius: var(--radius-md);
	background: var(--color-accent-tint-3);
	font-size: var(--text-sm);
	font-weight: var(--weight-bold);
	color: var(--color-accent-strong);
}

/* ---------- O mnie ---------- */
.about-hero {
	background: var(--color-brand);
	color: var(--color-on-dark);
}

.about-hero-inner {
	padding-block: var(--space-28) var(--space-64);
}

.about-hero .breadcrumbs {
	margin-bottom: var(--space-36);
}

.about-hero-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-32) var(--space-56);
}

.about-photo {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: var(--size-about-photo);
	height: var(--size-about-photo);
	overflow: hidden;
	border-radius: var(--radius-pill);
	border: var(--border-width-photo) solid var(--color-cta);
	background: var(--color-brand-strong);
}

.about-photo-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.about-photo-placeholder {
	padding: var(--space-24);
	font-size: var(--text-md);
	font-weight: var(--weight-bold);
	color: var(--color-on-dark-soft);
	text-align: center;
}

.about-hero-text {
	flex: 1 1 var(--basis-hero-text);
	min-width: 0;
}

.about-hero-text .eyebrow-on-dark {
	margin-bottom: var(--space-12);
}

.about-title {
	margin: 0 0 var(--space-16);
	font-size: var(--text-12xl);
	line-height: var(--leading-tight);
	letter-spacing: var(--tracking-tight);
}

.about-lead {
	max-width: var(--width-lead);
	margin: 0 0 var(--space-24);
	font-size: var(--text-lg);
	color: var(--color-on-dark-soft);
}

.about-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-10);
}

.about-social {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--size-button);
	height: var(--size-button);
	border-radius: var(--radius-xl);
	background: var(--color-brand-strong);
	color: var(--color-on-dark);
}

.about-social:hover {
	background: var(--color-surface);
	color: var(--color-brand);
}

.about-stats-wrap {
	margin-top: calc(var(--space-32) * -1);
}

.about-stats {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-24);
	margin: 0;
	padding: var(--space-28) var(--space-32);
	border-radius: var(--radius-5xl);
	border: var(--border-width) solid var(--color-border);
	background: var(--color-surface);
	box-shadow: var(--shadow-card);
}

.about-stat {
	flex: 1 1 var(--basis-tile);
	min-width: 0;
}

.about-stat-label {
	font-size: var(--text-md);
	font-weight: var(--weight-semibold);
	color: var(--color-text-muted);
}

.about-stat-value {
	margin: 0;
	font-size: var(--text-9xl);
	font-weight: var(--weight-extrabold);
	color: var(--color-brand);
}

.about-stat-value-accent {
	color: var(--color-accent-text);
}

.about-layout {
	padding-top: var(--space-72);
	padding-bottom: 0;
}

.about-main {
	gap: var(--space-56);
}

.about-content :where(h2) {
	font-size: var(--text-8xl);
	line-height: var(--leading-heading);
}

.about-content > p:not(.eyebrow) {
	max-width: var(--width-seo-text);
	font-size: var(--text-body-lg);
	line-height: var(--leading-loose);
	color: var(--color-ink-soft);
}

/* Zrzuty premii (styl galerii „Zrzuty premii”) */
.proofs > .proof-card {
	flex: 1 1 var(--basis-mini-card);
}

.proof-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: var(--space-12);
	border-radius: var(--radius-4xl);
	border: var(--border-width) solid var(--color-border);
	background: var(--color-surface);
}

.proof-card-image {
	display: flex;
	height: var(--size-proof-image-h);
	overflow: hidden;
	border-radius: var(--radius-xl);
	background: var(--color-tint-2);
}

.entry-content .proof-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0;
}

.proof-card-title {
	padding: var(--space-12) var(--space-xs) 0;
	font-size: var(--text-base);
	line-height: var(--leading-body);
}

.proof-card-meta {
	padding: 0 var(--space-xs) var(--space-xs);
	font-size: var(--text-sm);
	line-height: var(--leading-body);
	color: var(--color-text-muted);
}

/* Zasady z ikonami (styl listy „Zasady z ikonami”) */
.principles {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: var(--space-20);
	margin: 0;
	padding: 0;
	list-style: none;
}

.principle {
	display: flex;
	gap: var(--space-14);
	flex: 1 1 var(--basis-principle);
	min-width: 0;
	line-height: var(--leading-body);
}

.principle-icon {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: var(--size-entry-icon);
	height: var(--size-entry-icon);
	border-radius: var(--radius-lg);
	background: var(--color-tint);
	color: var(--color-brand);
}

.principle-icon-accent {
	background: var(--color-accent-tint);
	color: var(--color-accent-text);
}

.principle-text {
	display: flex;
	flex-direction: column;
}

.principle-desc {
	font-size: var(--text-base-sm);
	color: var(--color-text-body);
}

/* Ostatnie wpisy */
.post-cards > .card-post {
	flex: 1 1 var(--basis-card-post);
}

.card-post {
	display: flex;
	flex-direction: column;
	gap: var(--space-10);
	min-width: 0;
	padding: var(--space-14);
	border-radius: var(--radius-4xl);
	border: var(--border-width) solid var(--color-border);
	background: var(--color-surface);
	color: var(--color-text);
	text-decoration: none;
}

.card-post:hover {
	border-color: var(--color-placeholder-line);
	color: var(--color-text);
}

.card-post-thumb {
	height: var(--size-post-thumb-h);
	border-radius: var(--radius-xl);
}

.card-post .badge-row {
	align-self: flex-start;
}

.card-post-title {
	font-weight: var(--weight-extrabold);
	line-height: var(--leading-snug);
}

.card-post-date {
	font-size: var(--text-sm);
	font-weight: var(--weight-semibold);
	color: var(--color-text-muted);
}

.about-latest .section-head {
	margin-bottom: var(--space-20);
}

.about-latest .section-title {
	font-size: var(--text-8xl);
}

/* Panel boczny O mnie */
.about-facts {
	display: flex;
	flex-direction: column;
	gap: var(--space-12);
	margin: 0;
	font-size: var(--text-base-sm);
}

.about-fact-label {
	font-size: var(--text-sm);
	font-weight: var(--weight-semibold);
	color: var(--color-text-muted);
}

.about-fact-value {
	margin: 0;
	font-weight: var(--weight-bold);
}

.quoted-list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-10);
	margin: 0;
	padding: 0;
	list-style: none;
}

.quoted-item {
	display: flex;
	flex: 1 1 calc(50% - var(--space-10));
}

.quoted-link {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	min-height: var(--size-quoted-h);
	padding: 0 var(--space-10);
	border-radius: var(--radius-lg);
	border: var(--border-width) solid var(--color-border-strong);
	background: var(--color-bg);
	font-size: var(--text-xs);
	font-weight: var(--weight-bold);
	color: var(--color-text-muted);
	text-align: center;
	text-decoration: none;
}

/* Ramka kontaktu */
.about-contact-wrap {
	padding-block: var(--space-64) var(--space-88);
}

.about-contact {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-20) var(--space-40);
	padding: var(--space-32);
	border-radius: var(--radius-5xl);
	background: var(--color-tint);
}

.about-contact-text {
	flex: 1 1 var(--basis-hero-text);
	min-width: 0;
}

.about-contact-title {
	margin: 0 0 var(--space-6);
	font-size: var(--text-6xl);
}

.about-contact-actions .button-ghost {
	padding: 0 var(--space-20);
	font-size: var(--text-base);
	font-weight: var(--weight-extrabold);
}

.about-contact-lead {
	margin: 0;
	color: var(--color-text-body);
}

/* ---------- Archiwum autora ---------- */
.author-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: var(--space-20);
}

.author-head-text {
	flex: 1 1 var(--basis-hero-text);
	min-width: 0;
}

.author-head .page-lead {
	margin-bottom: var(--space-12);
}

.avatar-lg {
	width: var(--size-avatar-xl);
	height: var(--size-avatar-xl);
	font-size: var(--text-8xl);
}

/* ---------- Wyszukiwarka ---------- */
.search-hero {
	background: var(--color-brand);
	color: var(--color-on-dark);
}

.search-hero-inner {
	padding-block: var(--space-40);
}

.search-title {
	display: flex;
	flex-wrap: wrap;
	column-gap: var(--space-10);
	margin: 0 0 var(--space-20);
	font-size: var(--text-9xl);
	line-height: var(--leading-heading);
}

.search-title-query {
	color: var(--color-eyebrow-on-dark);
}

.search-form-hero,
.search-form-page {
	flex-wrap: wrap;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.search-form-hero {
	max-width: var(--width-search-form);
}

.search-form-page {
	max-width: var(--width-error-form);
}

.search-form-hero .search-form-field,
.search-form-page .search-form-field {
	flex: 1 1 var(--basis-search-field);
	min-height: var(--size-search-input);
	padding: 0 var(--space-16);
	border-radius: var(--radius-xl);
	background: var(--color-surface);
}

.search-form-page .search-form-field {
	border: var(--border-width) solid var(--color-border-strong);
}

.search-form-hero .search-form-input {
	font-size: var(--text-lg);
	font-weight: var(--weight-semibold);
}

.search-form-page .search-form-input {
	font-size: var(--text-body-lg);
}

.search-form-hero .search-form-submit,
.search-form-page .search-form-submit {
	display: inline-flex;
	min-height: var(--size-search-input);
	padding: 0 var(--space-28);
	border-radius: var(--radius-xl);
	font-size: var(--text-base);
}

.search-form-hero:focus-within .search-form-field {
	outline: var(--border-width-thick) solid var(--color-cta);
}

.search-form-page:focus-within .search-form-field {
	border-color: var(--color-brand);
}

.search-count {
	margin: var(--space-14) 0 0;
	font-size: var(--text-md);
	color: var(--color-on-dark-soft);
}

.search-layout {
	padding-top: var(--space-40);
}

.search-main {
	gap: 0;
}

.search-filters {
	padding-bottom: var(--space-20);
	margin-bottom: var(--space-24);
	border-bottom: var(--border-width) solid var(--color-border);
}

.best-match {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-20);
	margin-bottom: var(--space-28);
	padding: var(--space-20) var(--space-24);
	border-radius: var(--radius-4xl);
	border: var(--border-width-thick) solid var(--color-brand);
	background: var(--color-surface);
	color: var(--color-text);
	text-decoration: none;
}

.best-match:hover {
	color: var(--color-text);
	background: var(--color-surface-hover);
}

.best-match-icon {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: var(--size-best-match-icon);
	height: var(--size-best-match-icon);
	border-radius: var(--radius-2xl);
	background: var(--color-brand);
	color: var(--color-icon-on-dark);
}

.best-match-body {
	display: flex;
	flex-direction: column;
	flex: 1 1 var(--basis-search-field);
	min-width: 0;
}

.best-match-body .eyebrow {
	margin-bottom: var(--space-xs);
}

.best-match-title {
	margin-bottom: var(--space-xs);
	font-size: var(--text-4xl);
	line-height: var(--leading-card);
}

.best-match-text {
	font-size: var(--text-base-sm);
	color: var(--color-text-body);
}

.search-list {
	display: flex;
	flex-direction: column;
	gap: var(--space-xs);
}

.search-row {
	display: flex;
	gap: var(--space-18);
	padding: var(--space-18) var(--space-8);
	border-bottom: var(--border-width) solid var(--color-border);
	color: var(--color-text);
	text-decoration: none;
}

.search-row:hover {
	background: var(--color-surface-hover);
	color: var(--color-text);
}

.search-row:hover .search-row-title {
	color: var(--color-brand);
	text-decoration: underline;
}

.search-row-thumb {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: var(--size-search-thumb-w);
	height: var(--size-search-thumb-h);
	overflow: hidden;
	border-radius: var(--radius-lg);
}

.search-row-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: var(--position-image-crop);
}

.search-row-thumb .bank-logo-wide {
	width: 100%;
	height: 100%;
	border-radius: var(--radius-lg);
}

.search-row-body {
	display: flex;
	flex-direction: column;
	gap: var(--space-xs);
	min-width: 0;
}

.search-row-title {
	font-size: var(--text-xl);
	line-height: var(--leading-snug);
	font-weight: var(--weight-extrabold);
}

.search-row-text {
	font-size: var(--text-base-sm);
	color: var(--color-text-body);
}

.search-row-path {
	font-size: var(--text-sm);
	font-weight: var(--weight-semibold);
	color: var(--color-text-muted);
}

.search-row.is-ended .search-row-title {
	color: var(--color-text-body);
	font-weight: var(--weight-bold);
}

.search-mark {
	padding: 0 var(--space-2xs);
	border-radius: var(--radius-xs);
	background: var(--color-accent-tint);
	color: inherit;
}

.badge-plain-brand {
	color: var(--color-brand);
}

.search-main .pagination {
	margin-top: var(--space-32);
}

.search-empty {
	display: flex;
	flex-direction: column;
	gap: var(--space-12);
	padding: var(--space-28);
	border-radius: var(--radius-4xl);
	border: var(--border-width-thick) dashed var(--color-border-strong);
}

.search-empty-title {
	margin: 0;
	font-size: var(--text-6xl);
	line-height: var(--leading-snug);
}

.search-empty-text {
	margin: 0 0 var(--space-6);
	color: var(--color-text-body);
}

/* ---------- 404 ---------- */
.error-hero {
	border-bottom: var(--border-width) solid var(--color-border);
}

.error-hero-inner {
	padding-block: var(--space-72) var(--space-56);
}

.error-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-40) var(--space-64);
	margin-bottom: var(--space-56);
}

.error-text {
	flex: 1 1 var(--basis-hero-text);
	min-width: 0;
}

.error-text .button-row {
	margin-top: var(--space-20);
}

.error-text .button-ghost {
	gap: var(--space-8);
	min-height: var(--size-button);
	padding: 0 var(--space-18);
	font-size: var(--text-base);
	font-weight: var(--weight-extrabold);
}

.error-title {
	display: flex;
	flex-direction: column;
	margin: 0 0 var(--space-16);
	font-size: var(--text-12xl);
	line-height: var(--leading-tight);
	letter-spacing: var(--tracking-tight);
}

.error-lead {
	max-width: var(--width-error-form);
	margin: 0 0 var(--space-28);
	font-size: var(--text-lg);
	color: var(--color-text-body);
}

/* Grafika „4%4”: koło z kropką i naklejką „ups!” (nakładanie przez ujemne marginesy, bez pozycjonowania). */
.error-art {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 0 1 var(--basis-error-art);
	min-width: 0;
}

.error-art-dot-row {
	display: flex;
	justify-content: flex-end;
	width: var(--size-error-circle);
	height: 0;
}

.error-art-dot {
	width: var(--size-error-dot);
	height: var(--size-error-dot);
	margin: var(--space-40) var(--space-28) 0 0;
	border-radius: var(--radius-pill);
	background: var(--color-cta);
}

.error-art-circle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--size-error-circle);
	height: var(--size-error-circle);
	border-radius: var(--radius-pill);
	background: var(--color-brand);
	color: var(--color-on-dark);
	font-size: var(--text-error-digits);
	font-weight: var(--weight-extrabold);
	letter-spacing: var(--tracking-display);
	line-height: var(--leading-none);
}

.error-art-percent {
	color: var(--color-icon-on-dark);
}

.error-art-sticker {
	display: flex;
	align-self: flex-start;
	height: 0;
}

.error-art-sticker .badge-hand {
	height: fit-content;
	margin-top: calc(var(--space-64) * -1);
	padding: 0 var(--space-18);
	font-size: var(--text-hand-xl);
	transform: rotate(var(--size-rotate-ups));
}

.error-subtitle {
	margin: 0 0 var(--space-16);
	font-size: var(--text-4xl);
}

.error-tiles {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-16);
}

.error-tile {
	display: flex;
	flex-direction: column;
	gap: var(--space-10);
	flex: 1 1 var(--basis-mini-card);
	min-width: 0;
	padding: var(--space-20);
	border-radius: var(--radius-4xl);
	border: var(--border-width) solid var(--color-border);
	background: var(--color-surface);
	color: var(--color-text);
	text-decoration: none;
}

.error-tile:hover {
	border-color: var(--color-placeholder-line);
	color: var(--color-text);
}

.error-tile-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--size-entry-icon);
	height: var(--size-entry-icon);
	border-radius: var(--radius-lg);
	background: var(--color-tint);
	color: var(--color-brand);
}

.error-tile-icon-accent {
	background: var(--color-accent-tint);
	color: var(--color-accent-text);
}

.error-tile-icon-dark {
	background: var(--color-ink);
	color: var(--color-icon-on-dark);
}

.error-tile-icon-tint-2 {
	background: var(--color-tint-3);
}

.error-tile-title {
	font-size: var(--text-lg);
}

.error-tile-text {
	font-size: var(--text-md);
	color: var(--color-text-muted);
}

.error-promos {
	background: var(--color-surface);
}

.error-promos .section-head {
	align-items: baseline;
}

.promo-tiles {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-16);
}

.side-row.promo-tile {
	flex: 1 1 var(--basis-mini-card);
	min-width: 0;
	padding: var(--space-16);
	border: var(--border-width) solid var(--color-border);
	border-radius: var(--radius-4xl);
	background: var(--color-bg);
}

.promo-tile .side-row-amount {
	font-size: var(--text-lg);
}

.promo-tile .side-row-name {
	font-size: var(--text-base);
}

.side-row-amount-accent {
	color: var(--color-accent-text);
}

/* ---------- Tablet ---------- */
@media (max-width: 1023px) {
	.page-title {
		font-size: var(--text-hero-sm);
	}

	.page-aside {
		max-width: none;
		flex-basis: 100%;
	}

	.page-nav {
		max-width: var(--width-page-aside);
	}

	.about-title,
	.error-title {
		font-size: var(--text-10xl);
	}
}

/* ---------- Telefon ---------- */
@media (max-width: 600px) {
	.page-header-inner {
		padding-block: var(--space-20) var(--space-24);
	}

	.page-header .breadcrumbs {
		margin-bottom: var(--space-16);
	}

	.page-title {
		font-size: var(--text-8xl);
		margin-bottom: var(--space-8);
	}

	.page-lead {
		font-size: var(--text-base);
	}

	.page-layout {
		gap: var(--space-24);
		padding-block: var(--space-28) var(--space-48);
	}

	.page-aside {
		gap: var(--space-20);
	}

	.page-content {
		font-size: var(--text-lg);
	}

	.page-content :where(h2) {
		font-size: var(--text-5xl);
	}

	.page-ask .button-ghost {
		flex: none;
	}

	.contact-form {
		padding: var(--space-24) var(--space-20);
	}

	/* O mnie */
	.about-hero-inner {
		padding-block: var(--space-20) var(--space-56);
	}

	.about-hero .breadcrumbs {
		margin-bottom: var(--space-20);
	}

	.about-hero-row {
		gap: var(--space-24);
	}

	.about-photo {
		width: var(--size-about-photo);
		height: var(--size-about-photo);
	}

	.about-title {
		font-size: var(--text-8xl);
	}

	.about-lead {
		font-size: var(--text-base);
	}

	.about-stats {
		flex-direction: column;
		padding: var(--space-24) var(--space-32);
	}

	.about-stat {
		flex-basis: auto;
	}

	.about-stat-value {
		font-size: var(--text-8xl);
	}

	.about-layout {
		padding-top: var(--space-48);
	}

	.about-main {
		gap: var(--space-40);
	}

	.about-content :where(h2),
	.about-latest .section-title {
		font-size: var(--text-7xl);
	}

	.scroll-row {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding-bottom: var(--space-8);
		scroll-snap-type: x mandatory;
	}

	.scroll-row > .proof-card,
	.scroll-row > .card-post {
		flex: 0 0 var(--width-scroll-card);
		scroll-snap-align: start;
	}

	.content-card {
		padding: var(--space-24) var(--space-20);
	}

	.about-contact-wrap {
		padding-block: var(--space-40) var(--space-48);
	}

	.about-contact {
		padding: var(--space-28) var(--space-20);
	}

	.about-contact-title {
		font-size: var(--text-4xl);
	}

	/* Wyszukiwarka */
	.search-hero-inner {
		padding-block: var(--space-24) var(--space-28);
	}

	.search-title {
		font-size: var(--text-7xl);
	}

	.search-form-hero .search-form-submit,
	.search-form-page .search-form-submit {
		display: inline-flex;
	}

	.search-layout {
		padding-top: var(--space-24);
	}

	.best-match {
		flex-direction: column;
		align-items: flex-start;
		padding: var(--space-20);
	}

	.best-match-body {
		flex-basis: auto;
	}

	.search-row {
		gap: var(--space-14);
		padding-inline: 0;
	}

	.search-row-title {
		font-size: var(--text-lg);
	}

	/* 404 */
	.error-hero-inner {
		padding-block: var(--space-40);
	}

	.error-title {
		font-size: var(--text-hero-sm);
	}

	.error-lead {
		font-size: var(--text-base);
	}

	.error-art-dot-row {
		width: var(--size-error-circle-sm);
	}

	.error-art-circle {
		width: var(--size-error-circle-sm);
		height: var(--size-error-circle-sm);
		font-size: var(--text-error-digits-sm);
	}

	.error-art-dot {
		width: var(--size-error-dot-sm);
		height: var(--size-error-dot-sm);
		margin: var(--space-28) var(--space-20) 0 0;
	}

	.error-art-sticker .badge-hand {
		margin-top: calc(var(--space-48) * -1);
		font-size: var(--text-7xl);
	}

	.error-tile {
		flex-basis: 100%;
	}

	.side-row.promo-tile {
		flex-basis: 100%;
	}
}

@media (min-width: 601px) and (max-width: 1023px) {
	.error-tile {
		flex: 0 0 calc((100% - 2 * var(--space-16)) / 3);
	}
}
