/*!
Theme Name: lukaszjaniec
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: lukaszjaniec
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

lukaszjaniec is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

*,
*::before,
*::after {
 box-sizing: border-box;
 margin: 0;
 padding: 0;
}

html {
 font-size: 62.5%;
 scroll-behavior: smooth;
}

/* --- Zmienne (Design System) --- */
:root {
 --color-accent-primary: #A835F2;
 --color-accent-secondary: #5D37ED;
 --color-text-base: #2B2634;
 --color-text-inverse: #FFFFFF;
 --color-background-main: #F5F5F5;
 --color-background-light: #FFFFFF;
 --font-main: 'Poppins', sans-serif;
}

/* --- Domyślne style dla całej strony --- */
body {
 position: relative;
 overflow-y: scroll;
 overflow-x: hidden;
 min-height: 100%;
 font-family: var(--font-main);
 font-size: 1.6rem;
 font-weight: 400;
 color: var(--color-text-base);
 background-color: var(--color-background-main);
 border: 0.8rem solid var(--color-accent-secondary);
}

/* === KLASY POMOCNICZE I OGÓLNE === */

/* --- Klasa kontenera --- */
/* Główna, reużywalna klasa centrująca zawartość i ograniczająca jej szerokość. */
.container {
 max-width: 152rem;
 margin-left: auto;
 margin-right: auto;
 padding-left: 5.5rem;
 padding-right: 5.5rem;
}

/* --- Klasy pomocnicze do marginesów --- */
.mb-large {
 margin-bottom: 6rem;
}

.text-flow {
 display: flex;
 flex-direction: column;
 gap: 2.8rem;
}

/* --- Domyślne style tagów --- */
a {
 color: var(--color-text-base);
 text-decoration: underline;
 transition: color 0.3s ease;
}

a:hover,
a:focus-visible {
  color: var(--color-accent-primary);
}

strong, b {
 font-weight: 600;
}

/* --- Klasy tematyczne (Themes) --- */

/* Jasny tekst na ciemnym (fioletowym) tle */
.theme-inverse {
  background-color: var(--color-accent-primary);
  color: var(--color-background-main);
}

.theme-inverse a {
  color: var(--color-background-main);
}

/* === KOMPONENTY === */

/* --- Nagłówek --- */

/* --- Główny kontener nagłówka --- */
.main-header {
 display: flex;
 align-items: center;
 gap: 4.5rem;
 padding-top: 3rem;
 padding-bottom: 5.5rem;
}

/* --- Logo --- */
.logo a svg {
 display: block;
 fill: var(--color-text-base);
 transition: fill 0.3s ease;
 width: 14rem;
 height: 4.8rem;
}
.logo a:hover svg,
.logo a:focus-visible svg {
  fill: var(--color-accent-primary);
}

/* --- Nawigacja główna --- */
.main-nav {
 margin-left: auto;
}
.main-nav ul {
 display: flex;
 gap: 4.5rem;
 list-style-type: none;
}
.main-nav a {
 font-size: 1.3rem;
 font-weight: 500;
 text-decoration: none;
}

/* --- Linki społecznościowe --- */
.social-links__list {
 display: flex;
 align-items: center;
 gap: 1rem;
 list-style-type: none;
}
.social-links__link svg {
 display: block;
 width: 1.8rem;
 height: 1.8rem;
 fill: currentColor;
}

/* --- Przycisk menu mobilnego (Hamburger) --- */
.hamburger-button {
 display: none;
 background: none;
 border: none;
 cursor: pointer;
 padding: 0;
 z-index: 1000;
 color: var(--color-text-base);
}

.hamburger-button svg {
 color: var(--color-text-base);
}

/* --- Stopka (Footer) --- */

.main-footer {
  background-color: var(--color-background-main);
  padding: 6rem 0 0;
}

/* --- Górna część stopki (linki i copyright) --- */
.footer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.3rem;
  font-weight: 500;
}

.footer-top a {
  text-decoration: none;
}

/* --- Dolna część stopki (logo) --- */
.footer-bottom {
  margin-top: 6rem;
}

.footer-bottom__logo svg {
  width: 100%;
  height: auto;
  fill: var(--color-accent-secondary);
  display: block;
}

/* --- Komponent: Tytuł sekcji --- */

/* Klasa bazowa - wspólne cechy */
.section-title {
  font-family: var(--font-main);
  font-weight: 400;
  line-height: 1.2;
}

/* Modyfikatory - warianty wyglądu */

/* --large: Zmienia wielkość czcionki na dużą */
.section-title--large {
  font-size: 8.3rem;
  line-height: 1;
}

/* --medium: Zmienia wielkość czcionki na średnią */
.section-title--medium {
  font-size: 6rem;
  line-height: 1.2;
}

/* --- Klasy pomocnicze do typografii --- */
.text-sm  { font-size: 1.5rem; line-height: 1.5; }
.text-base { font-size: 1.6rem; line-height: 1.5; }
.text-md  { font-size: 1.7rem; line-height: 1.5; }
.text-lg  { font-size: 1.85rem; line-height: 1.5; }

/* --accent: Nadaje główny kolor akcentu (fioletowy) */
.section-title--accent {
  color: var(--color-accent-primary);
}

/* --inverse: Nadaje kolor odwrócony (biały), do stosowania na ciemnym tle */
.section-title--inverse,
.summary-text--inverse,
.summary-text.summary-text--inverse {
  color: var(--color-text-inverse);
}

/* --- Komponent: Tekst podsumowujący --- */
.summary-text {
 font-size: 4.2rem;
 font-weight: 400;
 color: var(--color-accent-primary);
 margin-top: 6rem;
 line-height: 1.2;
}

/* --- Komponent: Lista z ikonami --- */
.checklist {
  list-style: none;
  padding-left: 0;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.checklist li {
  position: relative;
  padding-left: 4.3rem;
}

.checklist li::before {
  content: '';
  width: 13.5px;
  height: 13.5px;
  background-color: var(--color-accent-secondary);
  border-radius: 50%;
  margin-top: 0.7rem;
  position: absolute;
  left: 0;
  top: 0;
}

.checklist.text-sm li::before {
  margin-top: 0.4rem;
}

/* --- Komponent: Przycisk --- */
 .button {
  display: block;
  text-align: center;
  width: 100%;
  background-color: var(--color-accent-secondary);
  color: var(--color-background-main);
  font-size: 1.5rem;
  font-weight: 600;
  padding: 1rem 0;
  border-radius: 5rem;
  text-decoration: none;
  transition: transform .3s ease, filter .3s ease;
}


/* --- Sekcja Hero --- */

.hero {
 padding-top: 2rem;
 position: relative;
}

/* --- Główny nagłówek (H1) --- */
.hero__title {
 color: var(--color-accent-primary);
 font-size: clamp(2.6rem, calc(0.1888rem + 7.5vw), 10.45rem);
 font-weight: 400;
 line-height: 1;
 text-align: center;
 margin-bottom: 5.5rem;
 position: relative;
 z-index: 2;
}

.page-template-template-moja-historia .hero__title,
 .page-template-template-kontakt .hero__title,
 .page-template-template-w-czym-pomagam .hero__title,
 .page-template-template-historie-klientow .hero__title,
 .blog .hero__title,
 .page-template-default .hero__title {
  font-size: 8.3rem;
  line-height: 1;
}

/* --- Układ treści i kolumn --- */
.hero__content {
 position: relative;
 display: grid;
 grid-template-columns: 1fr 40.5% 1fr;
 gap: 5.5rem;
 margin-top: -20.5rem;
}
.hero__content > .hero__content {
 position: absolute;
 bottom: 0;
}
.hero__text-column {
 display: flex;
 flex-direction: column;
 justify-content: center;
 height: calc(100% - 34.75rem);
 margin-top: 20.5rem;
 font-size: 2.6rem;
 line-height: 1.5;
}

/* --- Kontener i styl obrazka --- */
.hero__image-column {
 position: relative;
}
.hero__image-column::before {
 content: '';
 display: block;
 padding-bottom: 120%;
}
.hero__image {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: center;
 background-color: var(--color-text-inverse);
}
.home .hero__image {
	object-position: center 10%;
}

/* --- Sekcja z pojedynczym zdjęciem --- */

/* --- Styl bazowy komponentu --- */
.image-showcase {
 background-color: var(--color-text-inverse);
 margin-top: -8.25rem;
 mix-blend-mode: multiply;
 overflow: hidden;
}
.image-showcase__photo {
 width: 100%;
 height: auto;
 display: block;
 object-fit: cover;
 object-position: center bottom;
 aspect-ratio: 5/3;
}

/* --- Modyfikator (wariant) komponentu --- */
.image-showcase.next-step {
 margin-top: -1.5rem;
 margin-bottom: -1.5rem;
}
.image-showcase.next-step .image-showcase__photo {
 object-position: center top;
}

/* --- Sekcja: Układy (Layouts) --- */

/* --- Układ dwukolumnowy [Obraz + Treść] --- */
.layout-split .container {
 display: grid;
 grid-template-columns: 40.67% 1fr;
 gap: 5.5rem;
 align-items: stretch;
}
.layout-split__image-wrapper {
 position: relative;
 margin-top: -5.5rem;
 margin-bottom: -5.5rem;
}
.layout-split__content {
 padding: 8.25rem 0;
}
.layout-split__text-wrapper {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
}
.layout-split__image {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: center;
 mix-blend-mode: multiply;
}

/* --- Modyfikator: Układ dwukolumnowy [Treść + Obraz] --- */
.layout-split--reversed .container {
  grid-template-columns: 1fr 40.67%; 
}

/* --- Układ baneru na pełnej szerokości --- */
.layout-banner {
 padding: 11rem 0;
}
.layout-banner.why-me {
  padding-bottom: 14.75rem;
}
.layout-banner__header {
 display: flex;
 justify-content: center;
 align-items: center;
 gap: 2rem;
 margin-bottom: 2.75rem;
}
.layout-banner__photo {
 width: 15rem;
 height: 15rem;
 border-radius: 50%;
 border: 0.4rem solid var(--color-accent-secondary);
 object-fit: cover;
 object-position: center;
}
.layout-banner__content {
 display: flex;
 flex-direction: column;
 gap: 2.8rem;
 max-width: 70.75rem;
 margin-left: auto;
 margin-right: auto;
}
.layout-banner__question-mark {
  font-size: 8.3rem;
  color: var(--color-background-main);
}

/* --- Układ siatki 2-kolumnowej --- */
.layout-grid-2x2 {
  padding: 8.25rem 0;
}

.layout-grid-2x2__grid-wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr); 
  gap: 5.5rem; 
}

.section-title + .layout-grid-2x2__grid-wrapper {
  margin-top: 7rem;
}

.layout-grid-2x2__item {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
  border: .4rem var(--color-accent-primary) solid;
  padding: 3.5rem;
}

.theme-inverse .layout-grid-2x2__item {
  border-color: var(--color-background-main);
}

.layout-grid-2x2__item > *:not(.checklist) {
  text-align: center;
}

.layout-grid-2x2__item .icon {
  line-height: 4rem;
  font-size: 4rem;
}

.layout-grid-2x2__item:not(.layout-grid-2x2__item--cta) h3 {
  color: var(--color-accent-primary);
  line-height: 1.3;
  font-size: 2.6rem;
  font-weight: 500;
}

.theme-inverse .layout-grid-2x2__item:not(.layout-grid-2x2__item--cta) h3 {
  color: var(--color-background-main);
}

.layout-grid-2x2__item.layout-grid-2x2__item--cta {
  position: relative;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: center;
}

.layout-grid-2x2__item.layout-grid-2x2__item--cta a {
  position: absolute;
  inset: 0;
}

.layout-grid-2x2__item.layout-grid-2x2__item--cta h3 {
  color: var(--color-accent-primary);
  font-weight: 400;
}

.layout-grid-2x2__item .button {
  margin-top: auto;
}

.layout-grid-2x2__item .layout-grid-2x2__cta {
  margin-top: auto;
  font-weight: 500;
}

.layout-grid-2x2__item .checklist .checklist__icon {
  color: var(--color-accent-primary);
}

.theme-inverse .layout-grid-2x2__item .checklist .checklist__icon {
  color: var(--color-accent-secondary);
}

/* --- Układ siatki 3-kolumnowej --- */
.layout-grid-3-col__grid-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr); 
  gap: 5.5rem; 
}

.layout-grid-3-col__item {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
}

.layout-grid-3-col .layout-grid-3-col__item > *:not(.checklist) {
  text-align: center;
}

.layout-grid-3-col .layout-grid-3-col__item .icon {
  line-height: 4rem;
  font-size: 4rem;
}

.layout-grid-3-col .layout-grid-3-col__item h3 {
  margin: 0 auto;
  max-width: 365px;
  line-height: 1.3;
  font-size: 2.6rem;
  font-weight: 500;
}

.layout-grid-3-col .layout-grid-3-col__item .button {
  margin-top: auto;
}

.layout-grid-3-col .layout-grid-3-col__item .checklist li {
  gap: 0;
}

/* --- Sekcja: Wezwanie do działania (CTA) --- */

/* --- Główny kontener i tło --- */
.layout-cta {
  background-color: var(--color-background-main);
  position: relative;
  margin-top: -13.75rem;
  margin-right: 5.5rem;
  margin-left: 5.5rem;
  padding-top: 8.25rem;
}

/* --- Wewnętrzny kontener z zaokrągleniem --- */
.layout-cta .container {
  border-radius: 2.4rem;
  padding: 0 0 8.25rem;
  max-width: 70.75rem;
  text-align: center;
}

/* --- Elementy tekstowe i przycisk --- */
.layout-cta__title {
  line-height: 1.2;
 font-size: 5rem;
 font-weight: 500;
 margin-bottom: 3.5rem;
 color: var(--color-accent-primary);
}

.layout-cta__title.section-title--small {
  margin-bottom: 8.25rem;
  font-size: 3.8rem;
}

.layout-cta__title.section-title--large {
  font-size: 8.3rem;
  line-height: 1;
 font-weight: 400;
}

.layout-cta__subtitle {
 margin-left: auto;
 margin-right: auto;
 margin-bottom: 2.8rem;
}

.cta__button {
  text-align: center;
 display: block;
 width: 100%;
 background-color: var(--color-accent-primary);
 color: var(--color-background-main);
 font-size: 2.6rem;
 font-weight: 600;
 padding: 1rem 0;
 border-radius: 5rem;
 text-decoration: none;
 transition: transform .3s ease, filter .3s ease;
 margin-top: 4.2rem;
}

.cta__button:hover,
.cta__button:focus-visible {
 filter: brightness(1.1);
 color: var(--color-background-main);
}

.theme-inverse .cta__button {
  background-color: var(--color-accent-secondary);
}

.layout-cta__quote {
 font-size: 3rem;
 font-weight: 500;
 line-height: 1.2;
 font-style: italic;
 margin-top: 4.2rem;
 margin-bottom: 0;
}

/* --- Sekcja: Historie Klientów --- */

/* --- Główny kontener i proporcje sekcji --- */
.client-stories {
  position: relative;
}
.client-stories::before {
  content: '';
  display: block;
  padding-bottom: 50%;
}

/* --- Wewnętrzny kontener z tłem --- */
.client-stories .container {
  background-image: url(img/home-client-stories.jpg);
  background-size: cover;
  background-position: center bottom 25%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: center;
  position: absolute;
  top: 0;
  left: 5.5rem;
  right: 5.5rem;
  bottom: 0;
  max-width: 100%;
}

/* --- Dymek z tekstem --- */
.client-stories__text-bubble {
  background-color: var(--color-background-main);
  color: var(--color-text-base);
  font-size: 1.7rem;
  line-height: 1.5;
  width: 23.55vw;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  padding: 1.5vw 3vw;
}
.client-stories__text-bubble p {
  color: var(--color-text-base);
  font-size: 1.11vw;
  line-height: 1.5;
}

/* --- Przycisk-dymek --- */
.client-stories__button {
  background-color: var(--color-accent-primary);
  color: var(--color-background-main);
  font-size: 1.11vw;
  line-height: 1.5;
  font-weight: 600;
  width: 13.1vw;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
  padding: 1vw;
  position: absolute;
  left: calc(100% + 5rem);
  top: 0;
  transition: filter .3s ease;
}
.client-stories__button:hover,
.client-stories__button:focus-visible {
  filter: brightness(1.1);
  color: var(--color-background-main);
}

/* --- Sekcja: Układ z tytułem pionowym (Layout Vertical) --- */

/* --- 1. Struktura i style bazowe (re-używalny szkielet) --- */

.layout-vertical-title {
 padding-top: 8.25rem;
 padding-bottom: 8.25rem;
 position: relative;
}

.layout-vertical-title__container {
 display: grid;
 align-items: center;
 grid-template-columns: 1fr 40.5% 1fr;
 gap: 5.5rem;
}

.layout-vertical-title__title-wrapper {
 display: flex;
 align-items: center;
 writing-mode: vertical-rl;
 transform: rotate(180deg);
 text-align: center;
}

.layout-vertical-title__text {
 display: flex;
 flex-direction: column;
 gap: 2.8rem;
 max-width: 55ch;
 margin: 0 auto;
}

/* --- 2. Wariant/Temat: "Masks Story" (.masks-story) --- */
/* Style specyficzne tylko dla sekcji "Bal masek" */

.masks-story {
 margin-top: -10.65rem;
 z-index: 1;
}

.masks-story .layout-vertical-title__container {
 align-items: end;
}

/* --- 3. Wariant/Temat: "Turning Point" (.turning-point) --- */
/* Style specyficzne tylko dla sekcji "Punkt zwrotny" */

.turning-point.layout-vertical-title {
 background: none;
 color: var(--color-text-base);
}

.turning-point .layout-vertical-title__title {
 text-align: center;
 justify-content: center;
 align-content: center;
 color: var(--color-accent-primary);
}

.turning-point .layout-vertical-title__image-wrapper {
 position: relative;
 height: 100%;
 mix-blend-mode: multiply;
 z-index: 2;
}

.turning-point .layout-vertical-title__image {
 position: absolute;
 top: -13.75rem;
 right: -5.5rem;
 width: calc(100% + 5.5rem);
 height: calc(100% + 22rem);
 object-fit: cover;
 object-position: center;
 mix-blend-mode: multiply;
}

/* === STYLE SPECYFICZNE DLA PODSTRON === */

/* --- Podstrona: O mnie (About Me) --- */

/* Modyfikacja wyglądu sekcji Hero */
.page-template-template-moja-historia .hero__content {
  margin-top: 0;
}

.page-template-template-moja-historia .hero__text-column {
  gap: 2.8rem;
  margin-top: 0;
  padding-bottom: 8.4rem;
  height: calc(100% - 10.65rem);
  font-size: 1.85rem;
  line-height: 1.5;
}

.page-template-template-moja-historia .hero__text-column--left {
  text-align: right;
  color: var(--color-accent-primary);
  font-size: 5.5rem;
  line-height: 1.15;
}

.page-template-template-moja-historia .hero__image-column {
  mix-blend-mode: multiply;
  position: relative;
  z-index: 2;
}

/* Wariant dla komponentu .layout-split w sekcji "Odwaga" */
.page-template-template-moja-historia .courage-story .layout-split__image-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin-top: 0;
}

.page-template-template-moja-historia .courage-story .layout-split__image-wrapper h2 {
  text-align: center;
}

.page-template-template-moja-historia .courage-story__image-container {
  flex-grow: 1;
  position: relative;
}

.page-template-template-moja-historia .courage-story .layout-split__content {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
}

/* Wariant dla komponentu .layout-split w sekcji "Narzędzia" */
.page-template-template-moja-historia .my-tools .layout-split__image-wrapper {
  margin-top: -11rem;
}

/* Style specyficzne dla sekcji "My Tools Info" */
.page-template-template-moja-historia .my-tools-info {
  padding: 8.25rem 0;
}

.page-template-template-moja-historia .my-tools-info .layout-info-banner__headings-grid,
.page-template-template-moja-historia .my-tools-info .layout-info-banner__content-grid {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 5.5rem;
}

.page-template-template-moja-historia .my-tools-info .layout-info-banner__headings-grid {
  align-items: flex-end;
  align-content: flex-end;
}

.page-template-template-moja-historia .my-tools-info .layout-info-banner__headings-grid > *,
.page-template-template-moja-historia .my-tools-info .layout-info-banner__content-grid > * {
  flex: 1;
}

.page-template-template-moja-historia .my-tools-info .section-title-mobile {
  display: none;
}

/* --- Podstrona: Kontakt (Contact) --- */
.page-template-template-kontakt .layout-split.hero .section-title,
.blog .layout-split.article-header .section-title {
  font-size: 4.2rem;
  font-weight: 400;
  color: var(--color-accent-primary);
  line-height: 1.2;
}

.layout-split.hero .layout-split__image-wrapper {
  margin-top: 0;
}

.page-template-template-kontakt .layout-grid-3-col {
  padding-top: 13.75rem;
  padding-bottom: 9.25rem;
}

.page-template-template-kontakt .layout-grid-3-col.social-media .layout-grid-3-col__item a {
  text-decoration: none;
}

.page-template-template-kontakt .layout-split.lets-talk .layout-split__image-wrapper {
  margin-top: -1.5rem;
}

.page-template-template-kontakt .layout-split.lets-talk .section-title--large {
  font-size: 7.8rem;
}

.page-template-template-kontakt .layout-split.lets-talk .summary-text,
.page-template-template-kontakt .layout-split.lets-talk p.text-sm:not(:last-child) {
  margin-bottom: 2.8rem;
}

.page-template-template-kontakt .layout-cta.remember .layout-cta__subtitle {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
}

/* --- Podstrona: W czym pomagam? (Offer) --- */
.page-template-template-w-czym-pomagam .layout-split.hero + .theme-inverse {
  height: 16.5rem;
}

.page-template-template-w-czym-pomagam .layout-split.hero .layout-split__content {
  text-align: center;
  max-width: 700px;
  margin: 0 auto;
}

.page-template-template-w-czym-pomagam .layout-grid-3-col.how-i-work {
  padding: 8.25rem 0 9.25rem;
}

.page-template-template-w-czym-pomagam .layout-grid-2x2.forms-of-support {
  padding-bottom: 9.25rem;
}

/* --- Podstrona: Historie klientów (Stories) --- */
.page-template-template-historie-klientow .hero .summary-text,
.page-template-template-historie-klientow .hero .text-lg {
  text-align: center;
  margin-top: 5.5rem;
}

.page-template-template-historie-klientow .image-showcase.image-showcase__hero {
  margin-top: 8.25rem;
}

.page-template-template-historie-klientow .layout-cta.true-stories .container {
  max-width: none;
}

.page-template-template-historie-klientow .layout-cta.true-stories .testimonials-list {
  text-align: left;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5.5rem;
}

.page-template-template-historie-klientow .layout-cta.true-stories .testimonials-list .testimonial-card,
.page-template-template-historie-klientow .layout-cta.true-stories .testimonials-list .testimonial-card__section {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
}

.page-template-template-historie-klientow .layout-cta.true-stories .testimonials-list .testimonial-card__person {
  font-weight: 500;
  font-size: 2.2rem;
  color: var(--color-accent-primary);
}

.page-template-template-historie-klientow .layout-cta.true-stories .testimonials-list .testimonial-card__quote {
  font-weight: 500;
  font-style: italic;
  font-size: 3rem;
  line-height: 1.2;
  color: var(--color-accent-primary);
}

.page-template-template-historie-klientow .what-connects-stories .layout-split__image-wrapper {
  margin-top: 5.5rem;
  margin-bottom: 5.5rem;
}

.page-template-template-historie-klientow .what-connects-stories .layout-split__image {
  mix-blend-mode: normal;
}

.page-template-template-historie-klientow .what-connects-stories .layout-split__content {
  padding-bottom: 9.25rem;
}

.page-template-template-historie-klientow .what-connects-stories .layout-split__content > * {
  margin-top: 0;
  margin-bottom: 4rem;
}

.page-template-template-historie-klientow .what-connects-stories .layout-split__content .cta__button {
  margin-top: 5rem;
  margin-bottom: 0;
}

/* ==========================================================================
   STYLE DLA BLOGA (Wersja Kafelkowa)
   ========================================================================== */

.layout-split.article-header .container {
	padding: 0 0 8.25rem;
}

.layout-split.article-header .container .entry-meta {
	margin-bottom: 0;
}

.layout-split.article-header .layout-split__image-wrapper {
	margin: 0;
	border: .3rem solid var(--color-accent-secondary);
	aspect-ratio: 3/4;
}

.category-list-wrapper {
	padding: 0 5.5rem 8.25rem 5.5rem;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	align-content: flex-start;
	gap: .8rem;
}

.category-list-wrapper .category-pill {
	display: inline-block;
	font-size: 1.5rem;
	font-weight: 500;
	text-decoration: none;
	border: 1px solid var(--color-text-base);
	padding: .4rem .8rem;
	line-height: 1;
	border-radius: 50px;
	text-transform: uppercase;
}

.category-list-wrapper .category-pill:hover {
	color: var(--color-text-base);
}

.blog-post-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5.5rem;
  margin-bottom: 6rem;
}

@media (min-width: 641px) {
  .blog-post-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 769px) {
  .blog-post-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

.blog-card {
  background-color: var(--color-background-main);
}

.blog-card__image-wrapper {
  position: relative;
  overflow: hidden;
  border: .3rem solid var(--color-accent-secondary);
  aspect-ratio: 4/3;
  margin-bottom: 2.8rem;
}

.blog-card__image-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.entry-meta {
  font-size: 1.3rem;
  font-weight: 500;
  margin-bottom: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.8rem;
}

.entry-meta .post-date {
  text-transform: uppercase;
  flex-shrink: 0;
}

.entry-meta .post-categories {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	gap: .8rem;
}

.entry-meta .post-categories a {
  display: inline-block;
  font-size: 1.3rem;
  font-weight: 500;
  text-decoration: none;
  border: 1px solid var(--color-text-base);
  padding: .4rem .8rem;
  line-height: 1;
  border-radius: 50px;
  text-transform: uppercase;
}

.entry-meta .post-categories a:hover {
  color: var(--color-text-base);
}

.blog-card .entry-title {
  margin-bottom: 1.6rem;
  font-size: 2.6rem;
  line-height: 1.3;
  font-weight: 500;
}

.blog-card .entry-title a {
  text-decoration: none;
  color: var(--color-text-base);
}
.blog-card .entry-title a:hover {
  text-decoration: underline;
}

.blog-card .read-more-link {
	display: inline-block;
  font-weight: 500;
  color: var(--color-text-base);
  text-decoration: none;
  font-size: 1.3rem;
}

.blog-card .read-more-link:hover {
  text-decoration: underline;
}

/* --- Nawigacja pod wpisem (Poprzedni/Następny) --- */
.post-navigation-slider {
    background-color: var(--color-background-main);
    padding-top: 7rem;
    padding-bottom: 8.25rem;
    overflow: hidden; 
}

.post-navigation-slider .container {
    display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
    margin: 0 auto;
    padding: 0;
	max-width: calc(768px - 4rem);
}

.post-navigation-grid-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    min-width: 0; 
}

.nav-arrow-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-arrow--prev {
	position: absolute;
	left: -7.2rem;
}

.nav-arrow--next {
	position: absolute;
	right: -7.2rem;
}

.blog-card-placeholder {
    visibility: hidden;
    pointer-events: none;
}

/* --- Style dla nawigacji mobilnej (prostej) --- */
.post-nav-mobile {
    display: none;
    background-color: var(--color-background-main);
}
.post-nav-mobile .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 7rem 0 8.25rem;
    gap: 2rem;
}
.nav-simple-link {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    text-decoration: none;
    color: var(--color-text-base);
    flex: 1;
    min-width: 0;
}
.nav-simple-link:hover {
    color: var(--color-text-base);
}
.nav-simple-text-wrapper {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.nav-simple-label {
    font-size: 1.2rem;
    text-transform: uppercase;
    font-weight: 400;
}
.nav-simple-title {
    font-weight: 700;
    font-size: 1.3rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.nav-simple-arrow {
    flex-shrink: 0;
}
.nav-simple--prev {
    justify-content: flex-start;
}
.nav-simple--next {
    justify-content: flex-end;
    text-align: right;
}
.nav-simple-placeholder {
    flex: 1;
}

/* --- RWD (Przełączanie widoczności) --- */
@media (max-width: 767px) {
    /* Ukryj wersję desktopową */
    .post-nav-desktop {
        display: none; 
    }
    /* Pokaż wersję mobilną */
    .post-nav-mobile {
        display: block; 
    }
}

/* --- Post ---  */
.entry-content {
	margin: 0 auto;
  	max-width: calc(768px - 4rem);
}

.entry-content p img {
	width: 100%;
}

.entry-content ul {
	list-style: none;
	padding-left: 0;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.entry-content ul ul,
.entry-content ul ol,
.entry-content ol ul,
.entry-content ol ol {
	padding-left: 1px;
    padding-top: 1.5rem;
}

.entry-content ul li {
  	position: relative;
  	padding-left: 4.3rem;
}

.entry-content ul li::before {
	content: '';
	width: 13.5px;
	height: 13.5px;
	background-color: var(--color-accent-secondary);
	border-radius: 50%;
	margin-top: 0.7rem;
	position: absolute;
	left: 0;
	top: 0;
}

.entry-content ul li::before {
    content: '';
    width: 13.5px;
    height: 13.5px;
    background-color: var(--color-accent-secondary);
    border-radius: 50%;
    margin-top: 0.6rem; 
}

.entry-content ul ul li::before,
.entry-content ol ul li::before {
    background-color: transparent; 
    border: 2px solid var(--color-accent-secondary);
    width: 13.5px;
    height: 13.5px;
}

.entry-content ul ul ul li::before,
.entry-content ol ul ul li::before,
.entry-content ul ol ul li::before,
.entry-content ol ol ul li::before {
	border-radius: 0;
	background-color: var(--color-accent-secondary);
    width: 9.5px;
    height: 9.5px;
    margin-top: 0.8rem; 
}

.entry-content ol {
    list-style: none;
    padding-left: 0;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    counter-reset: list-counter;
}

.entry-content ol > li {
    position: relative;
  	padding-left: 4.3rem;
    counter-increment: list-counter;
}

.entry-content ol > li::before {
    content: counter(list-counter, decimal-leading-zero) ".";
    font-weight: 600;
    color: var(--color-accent-secondary);
    position: absolute;
  	left: 0;
  	top: 0;
}

.entry-content ol ol > li::before {
    content: counter(list-counter, lower-alpha) ".";
}

.entry-content ol ol ol > li::before {
    content: counter(list-counter, lower-roman) ".";
}

.entry-content .logo svg {
	display: block;
	margin: 3.2rem auto 0;
	fill: var(--color-text-base);
	width: 10rem;
	height: 3.6rem;
}

/* --- Paginacja --- */
.pagination {
    margin-bottom: 8.25rem;
}

.nav-links {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.8rem;
}

.nav-links a:hover {
	color: var(--color-text-base);
}

/* Styl wszystkich kółek (linki, strzałki, aktywne) */
.page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 50%;
    border: 1px solid var(--color-text-base);
    color: var(--color-text-base);
    text-decoration: none;
    font-weight: 500;
    font-size: 1.5rem;
}

.page-numbers:hover {
    color: var(--color-text-base);
}

.page-numbers.dots {
    border: none;
    background-color: transparent;
    color: var(--color-text-base);
    width: auto;
}

.page-numbers.current {
    background-color: var(--color-text-base);
    color: var(--color-text-inverse);
    border-color: var(--color-text-base);
}

/* === RWD === */

/* --- Breakpoint: Ekrany do 1536px (bardzo duże desktopy) --- */
/* Na tym etapie "zamrażamy" płynne wartości (vw) z sekcji client-stories, aby nie rosły w nieskończoność. */
@media (max-width: 1536px) {
 .client-stories .container {
  background-size: 1410px auto;
  background-position: center;
 }
 .client-stories__text-bubble {
  width: 362px;
  padding: 23px 46px;
 }
 .client-stories__text-bubble p {
  font-size: 1.7rem;
 }
 .client-stories__button {
  font-size: 1.7rem;
  width: 201px;
  padding: 12px;
 }
}

/* --- Breakpoint: Ekrany do 1439px (standardowe desktopy) --- */
@media (max-width: 1439px) {
 .hero__title {
  font-size: clamp(2.6rem, calc(1.3rem + 5.7vw), 9.5rem);
 }
 .hero__content {
  margin-top: -19rem;
 }
 .hero__text-column {
  height: calc(100% - 33.25rem);
  margin-top: 19rem;
 }
 .section-title--large {
  font-size: 7.3rem;
 }
 .summary-text {
  font-size: 3rem;
 }
}

/* --- Breakpoint: Ekrany do 1365px (mniejsze laptopy) --- */
@media (max-width: 1365px) {

  /* --- Sekcja Hero (Strona Główna) --- */
 .hero__content {
  margin-top: -17.75rem;
 }
 .hero__text-column {
  height: calc(100% - 32rem);
  margin-top: 17.75rem;
  font-size: 2.2rem;
 }

  /* --- Dopasowanie Typografii --- */
 .text-lg {
  font-size: 1.7rem;
 }
 .section-title--large,
 .section-title--medium,
 .page-template-template-kontakt .layout-split.lets-talk .section-title--large,
 .layout-cta__title.section-title--large {
  line-height: 1.2;
  font-size: 5rem;
 }
 .layout-cta__title {
  font-weight: 400;
 }

 .layout-cta__title.section-title--small {
    font-size: 2.2rem;
    font-weight: 500;
  }

  /* --- Style specyficzne dla podstrony "O mnie" --- */
 .page-template-template-moja-historia .hero__text-column {
  height: calc(100% - 5.5rem);
 }
 .page-template-template-moja-historia .hero__text-column.hero__text-column--right {
  font-size: 1.7rem;
  line-height: 1.5;
 }
  .page-template-template-moja-historia .hero__text-column--left {
    line-height: 1.2;
    font-size: 5rem;
  }
 .page-template-template-moja-historia .layout-vertical-title.masks-story {
  padding-top: 13.75rem;
 }
}

/* --- Breakpoint: Ekrany do 1270px --- */
@media (max-width: 1270px) {

  /* --- Globalne dopasowanie odstępów --- */
 .container {
  padding-left: 3rem;
  padding-right: 3rem;
 }
 .layout-split .container,
 .layout-grid-2x2__grid-wrapper {
  gap: 3rem;
 }
 .blog-post-list {
 	column-gap: 3rem;
 }
 .layout-cta {
  margin-right: 3rem;
  margin-left: 3rem;
 }
 .client-stories .container {
  left: 3rem;
  right: 3rem;
 }

 .layout-grid-2x2__item {
  padding: 3.5rem 1.5rem;
 }

  /* --- Sekcja Hero (Strona Główna) --- */
 .hero__content {
  gap: 3rem;
  margin-top: -17.5rem;
 }
 .hero__text-column {
  height: calc(100% - 31.75rem);
  margin-top: 17.5rem;
 }

  /* --- Style specyficzne dla podstrony "O mnie" --- */
 .turning-point .layout-vertical-title__image {
  right: -3rem;
 }

 .page-template-template-moja-historia .layout-vertical-title.masks-story {
  margin-top: -5.5rem;
  padding-top: 11rem;
 }

 .page-template-template-moja-historia .hero__text-column {
  padding-bottom: 5.5rem;
  height: 100%;
  gap: 1.2rem;
 }
}

/* --- Breakpoint: Ekrany do 1220px (początek menu mobilnego) --- */
@media (max-width: 1220px) {

  /* --- Ukrycie nawigacji desktopowej i pokazanie hamburgera --- */
 .main-header {
  justify-content: space-between;
 }
 .main-nav,
 .social-links {
  display: none;
 }
 .hamburger-button {
  display: block;
 }

  /* --- Style dla otwartego menu mobilnego (po dodaniu klasy .mobile-menu-open) --- */
 .mobile-menu-open .main-nav {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(245, 245, 245, 0.95);
  backdrop-filter: blur(5px);
 }
 .mobile-menu-open .main-nav ul {
  flex-direction: column;
  gap: 4rem;
  text-align: center;
 }
 .mobile-menu-open .main-nav a {
  font-size: 2.4rem;
  font-weight: 600;
 }

  /* --- Zmiana ikony hamburgera na krzyżyk w otwartym menu --- */
 .hamburger-button .cross-lines {
  display: none;
 }
 .mobile-menu-open .hamburger-button .hamburger-lines {
  display: none;
 }
 .mobile-menu-open .hamburger-button .cross-lines {
  display: block;
 }

  /* --- Dostosowanie sekcji Client Stories --- */
 .client-stories__text-bubble {
  width: 276px;
  padding: 23px 36px;
 }
 .client-stories__text-bubble p {
  font-size: 1.3rem;
  font-weight: 500;
 }
 .client-stories__button {
  left: calc(100% + 9rem);
  width: 154px;
  font-size: 1.3rem;
 }
}

/* --- Breakpoint: Ekrany do 1200px --- */
@media (max-width: 1200px) {
  .hero {
   padding-top: 1rem;
  }
  .hero__text-column {
   font-size: 1.85rem;
  }
  .hero__content {
   margin-top: -17.25rem;
  }
  .container-2 {
  	padding-right: 2rem;
  	padding-left: 2rem;
  }
}

/* --- Breakpoint: Ekrany do 1175px --- */
@media (max-width: 1175px) {
  /* Style specyficzne dla podstrony "O mnie" */
  .page-template-template-moja-historia .layout-vertical-title.masks-story {
  padding-top: 13.75rem;
 }
}

/* --- Breakpoint: Ekrany do 1130px --- */
@media (max-width: 1130px) {
  /* --- Style specyficzne dla podstrony "Kontakt" --- */
  .layout-grid-3-col .layout-grid-3-col__item h3 {
    font-size: 2.4rem;
  }

  .layout-grid-3-col .layout-grid-3-col__item > p.text-sm {
    min-height: 45px;
  }
}

/* --- Breakpoint: Ekrany do 1100px --- */
@media (max-width: 1100px) {
  .layout-grid-3-col__grid-wrapper {
    gap: 3rem;
  }

  /* --- Sekcja Hero (Strona Główna) --- */
  .hero__content {
   margin-top: -15.75rem;
  }

  /* --- Style specyficzne dla podstrony "O mnie" --- */
  .page-template-template-moja-historia .courage-story .layout-split__image-wrapper h2 {
   text-align: left;
  }

  /* --- Style specyficzne dla podstrony "Oferta" --- */
  .page-template-template-w-czym-pomagam .layout-split.hero .layout-split__content {
    text-align: left;
  }
}

/* --- Breakpoint: Ekrany do 1023px (tablety w pionie) --- */
@media (max-width: 1023px) {

  /* --- Style globalne i dla komponentów --- */
 .hero__content {
   display: grid;
   grid-template-columns: 45% 1fr;
   gap: 3rem;
   align-items: center;
   margin-top: 0;
 }
 .hero__content > .hero__content {
   position: relative;
 }
 .hero__content-desktop {
   margin-bottom: 6rem;
 }
 .hero__content-desktop > .hero__text-column {
   display: none;
 }
 .hero__content-mobile .hero__image-column {
   display: none;
 }
 .hero__content-mobile {
   display: flex;
   flex-direction: column;
   gap: 2rem;
 }
 .hero__text-column {
    font-size: 2.2rem;
  }
 .hero__text-column.hero__text-column--left p:first-child {
   margin-bottom: 2rem;
 }
 .home .hero {
   padding-top: 0;
 }
 .hero__title {
   line-height: 1.1;
   font-size: clamp(2.3rem, calc(0.187rem + 5.869vw), 5rem);
 }
 .hero__text-column {
   height: auto;
   margin-top: 0;
 }
 .client-stories__button {
   left: calc(100% + 8rem);
 }
 .image-showcase {
   margin-top: 0;
 }
 .layout-vertical-title__container {
   grid-template-columns: 1fr 75%;
 }
 .layout-vertical-title__text {
   max-width: none;
 }

  /* --- Style specyficzne dla podstrony "O mnie" (About Me) --- */
 .page-template-template-moja-historia .layout-vertical-title.masks-story {
   margin-top: 0;
   padding-top: 8.25rem;
 }
 .page-template-template-moja-historia .hero__text-column {
   padding-bottom: 0;
 }
 .page-template-template-moja-historia .hero__text-column--left {
   text-align: left;
   font-size: 3rem;
   line-height: 1.2;
 }
 .page-template-template-moja-historia .hero__text-column.hero__text-column--right {
   gap: 2rem;
 }
 .turning-point .layout-vertical-title__image-wrapper {
   display: none;
 }
 .masks-story .layout-vertical-title__container {
   align-items: center;
 }
 .masks-story .layout-vertical-title__container > div:nth-child(3) {
   display: none;
 }
 .page-template-template-moja-historia .courage-story .layout-split__image-wrapper h2 {
   margin-bottom: 2.8rem;
   font-size: 4rem;
 }

 /* --- Style specyficzne dla podstrony "Kontakt" --- */
  .layout-grid-3-col__grid-wrapper {
    display: flex;
    flex-direction: column;
    gap: 6rem;
    margin: 0 auto;
    max-width: 405px;
  }

  .layout-grid-3-col .layout-grid-3-col__item h3 {
    max-width: none;
    font-size: 2.6rem;
  }

  .layout-grid-3-col .layout-grid-3-col__item > p.text-sm {
    min-height: 0;
  }

  .layout-grid-2x2__grid-wrapper {
    display: flex;
    flex-direction: column;
  }

  .layout-grid-2x2__item.layout-grid-2x2__item--cta {
  	aspect-ratio: 2/1;
  }
}

/* --- Breakpoint: Ekrany do 959px (małe tablety / duże telefony) --- */
@media (max-width: 959px) {

  /* --- Globalne dopasowanie odstępów --- */
 .container,
 .page-template-template-historie-klientow .layout-cta.true-stories .container {
  padding-left: 2rem;
  padding-right: 2rem;
 }
 .main-header {
  padding-top: 2rem;
  padding-bottom: 4rem;
 }
 .hero__title {
  margin-bottom: 4rem;
 }
 .hero__content,
 .layout-split .container,
 .layout-banner__content,
 .layout-grid-2x2__grid-wrapper {
  gap: 2rem;
 }
 .blog-post-list {
 	column-gap: 2rem;
 }
 .layout-cta {
  margin-right: 2rem;
  margin-left: 2rem;
 }
 .layout-cta .container {
  padding-right: 3rem;
  padding-left: 3rem;
 }
 .client-stories .container {
  left: 2rem;
  right: 2rem;
 }

 .layout-grid-2x2__item {
  border: .3rem var(--color-accent-primary) solid;
 }

  /* --- Dopasowanie typografii --- */
 .layout-banner .section-title--large,
 .layout-banner__question-mark,
 .page-template-template-moja-historia .hero__title,
 .page-template-template-kontakt .hero__title,
 .page-template-template-w-czym-pomagam .hero__title,
 .page-template-template-historie-klientow .hero__title,
 .blog .hero__title,
 .page-template-default .hero__title {
  font-size: 6rem;
 }

 .section-title--large,
 .layout-cta__title,
 .page-template-template-kontakt .layout-split.lets-talk .section-title--large {
  font-size: 3.8rem;
 }

 .layout-split__content > .section-title {
  margin-bottom: 4rem;
 }

 .text-md,
 .text-lg {
  font-size: 1.5rem;
 }
 .summary-text,
 .page-template-template-historie-klientow .hero .summary-text {
  margin-top: 4rem;
  font-size: 2.5rem;
  font-weight: 500;
 }

 .page-template-template-historie-klientow .hero .text-lg {
  margin-top: 4rem;
 }

 .page-template-template-historie-klientow .image-showcase.image-showcase__hero {
  margin-top: 5rem;
 }

  /* --- Zmiany w układzie (layout) --- */
 .layout-split .container {
  grid-template-columns: 50% 1fr;
 }
 .checklist li,
 .entry-content ul li,
 .entry-content ol > li {
 	padding-left: calc(1.6rem + 13.5px);
 }
 .checklist li::before,
 .entry-content ul li::before {
 	margin-top: 0.35rem;
 }
 .entry-content ul li::before {
 	margin-top: 0.25rem;
 }
 .entry-content ul ul ul li::before,
.entry-content ol ul ul li::before,
.entry-content ul ol ul li::before,
.entry-content ol ol ul li::before {
	margin-top: 0.45rem;
}
 .client-stories::before {
  padding-bottom: 66%;
 }
 .footer-top {
  flex-direction: column;
  text-align: center;
  gap: 1.3rem;
 }

  /* --- Style specyficzne dla podstrony "O mnie" (About Me) --- */
 .page-template-template-moja-historia .my-tools-info {
  padding-bottom: 13.75rem;
 }
 .page-template-template-moja-historia .where-am-i-now.layout-info-banner {
  padding-top: 13.75rem;
  padding-bottom: 8.25rem;
 }

 .page-template-template-moja-historia .my-tools .layout-split__image-wrapper {
  margin-top: -5.5rem;
 }

 .page-template-template-moja-historia .layout-info-banner .layout-info-banner__headings-grid,
  .page-template-template-moja-historia .layout-info-banner .layout-info-banner__content-grid {
  display: flex;
    flex-direction: column;
  align-items: flex-start;
  align-content: flex-start;
  gap: 7rem;
 }

 .page-template-template-moja-historia .layout-info-banner .layout-info-banner__headings-grid {
  display: none;
 }

 .page-template-template-moja-historia .layout-info-banner .section-title-mobile {
  display: block;
  margin-bottom: 0;
 }

 .page-template-template-moja-historia .courage-story .layout-split__image-wrapper {
  margin-bottom: 5.5rem;
 }

 .page-template-template-moja-historia .courage-story .layout-split__image {
  object-position: 65%;
 }

  /* --- Style specyficzne dla podstrony "Kontakt" --- */
 .layout-split.hero .layout-split__image-wrapper .layout-split__image {
  object-position: 65%;
 }

 .layout-cta__title.section-title--large {
  font-size: 3.8rem;
 }
}

/* --- Breakpoint: Ekrany do 900px --- */
@media (max-width: 900px) {
 .layout-banner__content,
 .layout-cta .container {
  max-width: 100%;
 }
 .client-stories__button {
    left: calc(100% + 6.4rem);
  }
}

/* --- Breakpoint: Ekrany do 767px (telefony komórkowe) --- */
@media (max-width: 767px) {

  /* --- Zmiany globalne w układzie (layout) --- */
 main {
  display: flex;
  flex-direction: column;
 }
 .home .hero__title {
  font-weight: 500;
 }
 body:not(.page-template-template-moja-historia) .hero__content {
  margin-bottom: 0;
 }
 .layout-split__content,
 .layout-banner,
 .layout-vertical-title {
  padding: 6rem 0;
 }
 .layout-banner.how-i-work,
 .layout-banner.why-me {
  padding-bottom: 7.5rem;
 }
 .layout-banner.why-me {
  padding-top: 7.5rem;
 }
 .layout-split .container {
  display: block;
 }
 .layout-split__image-wrapper {
  margin-top: 0;
  margin-bottom: 0;
 }
 .layout-banner__header,
 .page-template-template-w-czym-pomagam .layout-grid-3-col.how-i-work .mb-large {
  margin-bottom: 4rem;
  gap: 0;
 }
 .layout-banner__photo {
  display: none;
 }
 .layout-cta {
  margin-top: 0;
  padding-top: 6rem;
 }
 .layout-cta .container {
  padding-right: 0;
  padding-left: 0;
  padding-bottom: 6rem;
 }
 .image-showcase.next-step,
 .home .image-showcase.next-step {
 	margin-bottom: 0;
 }

  /* --- Dopasowanie typografii --- */
 .section-title,
 .layout-cta__title,
 .layout-banner__question-mark,
 .summary-text,
 .layout-banner .section-title--large,
  .page-template-template-moja-historia .courage-story .layout-split__image-wrapper h2,
  .page-template-template-kontakt .layout-split.hero .section-title,
  .section-title--large,
  .layout-cta__title,
  .page-template-template-kontakt .layout-split.lets-talk .section-title--large,
  .layout-cta__title.section-title--large {
  line-height: 1.2;
  font-size: 3.5rem;
  font-weight: 500;
  text-align: center;
 }

 .blog-card .entry-title {
 	text-align: left;
 }

 .hero__text-column {
    font-size: 1.85rem;
  }

  /* --- Style specyficzne dla strony głównej (Home) --- */
 .home .hero { order: 1; }
 .home .feelings { order: 2; }
 .home .image-showcase { order: 3; }
 .home .why-me { order: 4; }
 .home .achievements { order: 5; }
 .home .how-i-work { order: 6; }
 .home .image-showcase.next-step { order: 7; }
 .home .layout-cta { order: 8; }
 .home .client-stories { order: 9; }
  .home .image-showcase:not(.next-step) {
    margin-bottom: -1.5rem;
  }
 .feelings .layout-split__image-wrapper {
  display: none;
 }

  /* --- Style specyficzne dla podstrony "O mnie" (About Me) --- */
 .page-template-template-moja-historia .layout-banner.why-me,
  .page-template-template-moja-historia .layout-vertical-title,
  .page-template-template-moja-historia .layout-vertical-title.masks-story,
  .page-template-template-moja-historia .my-tools-info,
  .page-template-template-moja-historia .my-tools .layout-split__image-wrapper,
  .page-template-template-moja-historia .where-am-i-now.layout-info-banner {
    padding: 6rem 0;
  }
  .page-template-template-moja-historia .where-am-i-now.layout-info-banner {
    padding-bottom: 7.5rem;
  }
 .page-template-template-moja-historia .layout-info-banner .layout-info-banner__headings-grid,
  .page-template-template-moja-historia .layout-info-banner .layout-info-banner__content-grid {
  gap: 5.5rem;
 }
 .page-template-template-moja-historia .my-tools .layout-split__image-wrapper {
  margin-top: 0;
  padding-bottom: 0;
  line-height: 0;
 }
 .page-template-template-moja-historia .my-tools .layout-split__image-wrapper .layout-split__image {
  position: static;
  margin-top: 1rem;
 }
 .page-template-template-moja-historia .hero__image-column {
  height: 100%;
 }
 .page-template-template-moja-historia .hero__image-column::before {
  display: none;
 }

/* */

 .page-template-template-moja-historia .courage-story .layout-split__image,
 .layout-split.hero .layout-split__image-wrapper,
 .layout-split.hero .layout-split__image-wrapper .layout-split__image,
 .page-template-template-historie-klientow .what-connects-stories .layout-split__image,
 .page-template-template-moja-historia .hero__content .hero__image {
  position: static;
  order: 1;
  mix-blend-mode: normal;
  aspect-ratio: 3/3.5;
 }
 .blog .layout-split.article-header .layout-split__image-wrapper {
 	display: none;
 }
 .blog .layout-split.hero .layout-split__content {
 	padding-top: 2rem;
 }
 .page-template-template-moja-historia .courage-story .layout-split__image-wrapper,
 .layout-split.hero .container,
 .page-template-template-historie-klientow .what-connects-stories .layout-split__image-wrapper {
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
 }
 .page-template-template-historie-klientow .what-connects-stories .layout-split__image-wrapper {
  margin-top: 7rem;
 }
 .page-template-template-historie-klientow .what-connects-stories .layout-split__content {
  padding-bottom: 7rem;
 }
 .page-template-template-historie-klientow .what-connects-stories .layout-split__content p.text-sm {
  text-align: center;
 }
 .layout-split.hero .container {
  gap: 0;
 }
 .layout-split.hero .layout-split__content,
 .layout-split.hero.article-header .layout-split__image-wrapper {
  order: 2;
 }

 .layout-split.hero.article-header .layout-split__text-wrapper,
 .layout-split.hero.article-header .layout-split__text-wrapper .section-title {
 	text-align: left;
 }

 .layout-split.hero.article-header .layout-split__text-wrapper .entry-meta {
 	order: 2;
 }

 .layout-split.hero.article-header .layout-split__text-wrapper .section-title {
 	order: 1;
 }

 .layout-split.hero.article-header .layout-split__text-wrapper .entry-summary {
 	order: 3;
 }

 .layout-split.hero.article-header .layout-split__content {
 	order: 1;
 	padding-top: 0;
 }

 .blog .layout-split.article-header .container {
 	padding-bottom: 7.25rem;
 }

 .blog .layout-split.hero .layout-split__content {
 	padding-bottom: 0;
 }

 .blog .layout-split.hero .layout-split__content .section-title,
 .page-template-template-w-czym-pomagam .hero .section-title,
 .page-template-template-moja-historia .hero__text-column.hero__text-column--left p:first-child {
 	font-size: 2.5rem;
  	font-weight: 500;
 }

 .page-template-template-moja-historia .hero__text-column.hero__text-column--left p:first-child {
 	margin-bottom: 0;
 }

 .blog .layout-split.hero .layout-split__content .section-title strong,
 .page-template-template-w-czym-pomagam .hero .section-title strong,
 .page-template-template-moja-historia .hero__text-column.hero__text-column--left p:first-child strong { 	
  	font-weight: 500;
 }

 .page-template-template-w-czym-pomagam .hero .layout-split__text-wrapper {
 	text-align: center;
 }

 .category-list-wrapper {
 	padding-right: 0;
 	padding-left: 0;
 }

 .page-template-template-kontakt .layout-grid-3-col,
 .layout-grid-2x2,
 .page-template-template-w-czym-pomagam .layout-grid-3-col.how-i-work {
  padding-top: 6rem;
  padding-bottom: 7rem;
 }
 .page-template-template-kontakt .layout-split.lets-talk .layout-split__image-wrapper,
 .section-title + .layout-grid-2x2__grid-wrapper {
  margin-top: 0;
 }
 .page-template-template-moja-historia .courage-story .layout-split__image-wrapper h2 {
  margin-bottom: -2rem;
  padding-top: 6rem;
  order: 2;
 }

  /* --- Przebudowa sekcji Client Stories --- */
 .client-stories .container {
  background: var(--color-accent-secondary);
  position: static;
  text-align: center;
  padding: 6rem 2rem 7rem;
 }
 .client-stories__text-bubble {
  background: none;
  font-size: 1.7rem;
  line-height: 1.5;
  width: 100%;
  aspect-ratio: auto;
  border-radius: 0;
  display: block;
  padding: 0;
  position: static;
  transform: none;
 }
 .client-stories__text-bubble p {
  font-size: 1.5rem;
  color: var(--color-background-main);
 }
 .client-stories__button {
  font-size: 1.5rem;
  width: auto;
  aspect-ratio: auto;
  position: static;
  display: inline-block;
  background-color: var(--color-accent-primary);
  color: var(--color-background-main);
  font-weight: 600;
  padding: 1rem 3rem;
  border-radius: 5rem;
  text-decoration: none;
  transition: transform 0.3s ease, filter 0.3s ease;
  margin-top: 4.2rem;
 }
 .client-stories::before {
  display: none;
 }

 .page-template-template-historie-klientow .layout-cta.true-stories .container {
    padding-left: 0;
    padding-right: 0;
  }

  .page-template-template-historie-klientow .layout-cta.true-stories .testimonials-list {
    display: flex;
    flex-direction: column;
  }

  .page-template-template-historie-klientow .layout-cta__title.section-title--small {
  margin-bottom: 6rem;
}

/* --- Breakpoint: Ekrany do 610px (wąskie telefony) --- */
@media (max-width: 610px) {

  /* --- Zmiany globalne i dla komponentów --- */
 .layout-vertical-title__title-wrapper h2 br {
  display: none;
 }

  /* --- Style specyficzne dla strony głównej (Home) --- */
 .home .hero__content,
 .page-template-template-moja-historia .hero__content {
 	display: flex;
 	flex-direction: column;
 	gap: 4rem;
 }

 .hero__content.hero__content-mobile {
 	text-align: center;
 	gap: 2rem;
 }

 .home .hero__content .hero__image {
 	position: static;
 	aspect-ratio: 5/3;
 	object-position: center 45%;
 }

 .home .hero__content .hero__image-column::before {
 	display: none;
 }

  /* --- Style specyficzne dla podstrony "O mnie" (About Me) --- */
 .page-template-template-moja-historia .hero__text-column.hero__text-column--right {
  font-size: 1.5rem;
  text-align: center;
 }
 .page-template-template-moja-historia .hero__text-column.hero__text-column--left p:first-child {
 	text-align: center;
  	font-size: 2.5rem;
    font-weight: 500;
    line-height: 1.2;
 }
}

/* --- Breakpoint: Ekrany do 510px --- */
@media (max-width: 510px) {
  /* --- Dostosowanie obrazka w Hero --- */
 .hero__image-column {
  height: 100%;
 }
 .hero__image-column::before {
  display: none;
 }

 .text-sm,
 .text-base,
 .text-md,
 .text-lg,
 .hero__text-column,
 .client-stories__text-bubble p,
 .page-template-template-moja-historia .hero__text-column.hero__text-column--right {
 	font-size: 1.7rem;
 	line-height: 1.5;
 	font-weight: 400;
 }

 .checklist li::before, .entry-content ul li::before,
 .checklist.text-sm li::before {
    margin-top: 0.6rem;
  }

  .layout-grid-2x2__item.layout-grid-2x2__item--cta {
  	aspect-ratio: 1/1;
  }
}

/* --- Breakpoint: Ekrany do 450px (najwęższe telefony) --- */
@media (max-width: 450px) {

  /* --- Zmiany globalne w układzie i odstępach --- */
 .container,
 .container-2 {
  padding-left: 1.6rem;
  padding-right: 1.6rem;
 }
 .layout-cta {
  margin-left: 1.6rem;
  margin-right: 1.6rem;
 }
 .layout-cta .container {
  padding-left: 0;
  padding-right: 0;
 }
 .main-header {
  padding-top: 1.6rem;
 }
  /* Zmiana układu Hero na węższych ekranach */
 .hero__content {
  grid-template-columns: 50% 1fr;
  gap: 1.6rem;
 }
  /* Zmiana układu Layout Vertical Title na blokowy */
 .layout-vertical-title__container {
  display: block;
 }
 .layout-vertical-title__title-wrapper {
  display: block;
  writing-mode: horizontal-tb;
  transform: none;
  margin-bottom: 4rem;
  text-align: center;
 }

  /* --- Zmiany globalne w typografii i elementach --- */
 .mobile-menu-open .main-nav a {
  font-size: 1.85rem;
 }
 .hero__title {
  line-height: 1.2;
 }
 .cta__button {
  font-size: 1.5rem;
 }
 .client-stories__button {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
 }

  /* --- Style specyficzne dla strony głównej (Home) --- */
 .home .hero__content-mobile {
  gap: 1.2rem;
 }

 .page-template-template-w-czym-pomagam .hero__title {
  font-size: 5.4rem;
 }

 .page-template-template-w-czym-pomagam .lets-talk .layout-cta__title.section-title--small {
  font-size: 3.4rem;
 }

}