/*
 * Fryzjer Bartek — CSS bazowy po optymalizacji
 * --------------------------------------------
 * Założenie: zachowanie istniejącej logiki i wyglądu desktopowego.
 * Zmiany obejmują porządkowanie, redukcję powtórzeń i usunięcie
 * deklaracji, które były nadpisywane w tym samym bloku.
 * Responsywne propozycje znajdują się w osobnym pliku.
 */
 
 
/* ========================================================================
   GŁÓWNA ZAWARTOŚĆ / WSPÓLNE KOMPONENTY
   ======================================================================== */
 
div.home-booking__quick-contact > p.home-booking__quick-contact-title, p.section-heading__eyebrow {
	color: var(--theme-palette-color-1);
	font-family: var(--bartek-heading-font);
	font-size: 14px;
	font-weight: 700;
	line-height: normal;
	text-transform: uppercase;
	margin: 0;
}

div.home-booking__quick-contact > p.home-booking__quick-contact-title {
	font-size: 20px;
}

div.home-booking__quick-contact > p.home-booking__quick-contact-title::after, p.section-heading__eyebrow::after {
	content: "";
	width: 50px;
	height: 1px;
	background: var(--theme-palette-color-1);
	display: block;
	margin-top: 8px;
}


/*HERO*/
section.showcase-hero {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	position: relative;
	background-image: var(--bartek-panel-glow);
	padding-top: 160px;
	width: 100%;
}

section.showcase-hero::before {
	content: " ";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: block;
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.20) 0%, rgba(102, 102, 102, 0.20) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.90) 0%, rgba(0, 0, 0, 0.90) 100%);
	z-index: 1;
}

section.showcase-hero::after {
	content: "";
	width: 100%;
	aspect-ratio: 1920 / 94;
	background-image: url("/wp-content/themes/fryzjerbartek/assets/images/backgrounds/hero-bottom.png");
	background-repeat: no-repeat;
	background-size: 100%;
	position: relative;
	z-index: 2;
	margin-top: 20px;
}

div.showcase-hero__inner.home-hero__inner {
	position: relative;
	z-index: 3;
	display: flex;
	gap: 32px;
	width: 100%;
	width: 1600px;
	max-width: calc(100% - 64px);
	align-items: center;
}


div.showcase-hero__content.home-hero__content {
	max-width: 528px;
	display: flex;
	flex-direction: column;
	gap: 48px;
}

div.showcase-hero__content.home-hero__content > img.showcase-hero__logo {
	width: 100%;
	max-width: 350px;
	aspect-ratio: 350 / 300;
}

div.showcase-hero__content.home-hero__content > h1 {
	margin: 0!important;
	font-weight: 700;
}

div.showcase-hero__content.home-hero__content > h1 > span {
	font-weight: 400;
}

div.showcase-hero__actions.home-hero__actions {
	display: flex;
	gap: 16px;
}


div.showcase-hero__gallery.home-hero__gallery {
	flex: 1 0 0;
	display: grid;
	grid-template:
		"a b b c"
		"d b b e";
	gap: 16px;
	grid-template-columns: auto 1fr 1fr auto;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  align-items: stretch;
}

div.showcase-hero__gallery.home-hero__gallery > figure {
	max-height: max-content;
	border-radius: 16px;
	border: 1px solid var(--bartek-border-color);
	overflow: hidden;
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(1) {
	margin-top: auto;
	grid-area: a;
	
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(2) {
	grid-area: b;
	width: 100%;
	margin-top: auto;
	margin-bottom: auto;
	border-radius: 32px;
	border: 1px solid var(--bartek-border-color);
	overflow: hidden;
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(2) > img {
	width: 100%;
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(3) {
	margin-top: auto;
	margin-right: auto;
	grid-area: c;
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(4) {
	margin-left: auto;
	grid-area: d;
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(5) {
	grid-area: e;
}


/* REZERWACJA WIZYTY */
section#rezerwacja {
	  background:
    linear-gradient(
      to bottom right,
      rgba(15, 15, 15, 0) 0%,
      rgba(15, 15, 15, 0.8) 50%
    ) bottom right / 50% 50% no-repeat,

    linear-gradient(
      to bottom left,
      rgba(15, 15, 15, 0) 0%,
      rgba(15, 15, 15, 0.8) 50%
    ) bottom left / 50% 50% no-repeat,

    linear-gradient(
      to top left,
      rgba(15, 15, 15, 0) 0%,
      rgba(15, 15, 15, 0.8) 50%
    ) top left / 50% 50% no-repeat,

    linear-gradient(
      to top right,
      rgba(15, 15, 15, 0) 0%,
      rgba(15, 15, 15, 0.8) 50%
    ) top right / 50% 50% no-repeat,

    linear-gradient(
      180deg,
      #0f0f0f 10%,
      rgba(15, 15, 15, 0) 25%,
      rgba(15, 15, 15, 0) 75%,
      #0f0f0f 90%
    ),

    var(--bartek-pattern-lines) 0 0 / 500px 500px repeat,
    #0f0f0f;
	
	width: 100%;
}


section#rezerwacja > div > div.home-booking__heading_form > div.home-booking__form {
	display: flex;
	padding: 64px;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	border-radius: 32px;
	border: 1px solid var(--bartek-border-color);
	background: #0F0F0F;
	margin-bottom: 64px;
	width: var(--theme-container-width);
	max-width: calc(var(--theme-normal-container-max-width) + 128px);
	margin-left: auto;
	margin-right: auto;
}

section#rezerwacja > div > div.home-booking__heading_form > * {
	width: var(--theme-container-width);
  max-width: var(--theme-normal-container-max-width);
}


section#rezerwacja > div > div.home-booking__quick-contact, section#rezerwacja > div > div > header {
	width: var(--theme-container-width);
  max-width: var(--theme-normal-container-max-width);
	margin: auto;
}

section#rezerwacja > div > div > header  {
	margin-bottom: 64px;
}

/* Sekcja kontaktowa */
div.home-booking__quick-contact {
	display: flex;
	gap: 32px;
	flex-direction: column;
}


div.home-booking__quick-contact ul.quick-contact-list {
	display: flex;
	list-style: none;
	gap: 32px;
	flex-wrap: wrap;
	padding: 0;
}

div.home-booking__quick-contact ul.quick-contact-list > li {
	display: flex;
	width: calc((100% - 32px) / 2);
}

div.home-booking__quick-contact ul.quick-contact-list > li > a {
	padding: 32px;
	display: flex;
	flex: 1 0 0;
	align-items: center;
	border-radius: 16px;
	border: 1px solid var(--bartek-border-color);
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.20) 100%), linear-gradient(270deg, rgba(33, 33, 33, 0.00) 0%, #212121 49.73%), #000;
}


div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card--phone {
	background:
		var(--bartek-contact-card-overlay),
		url("/wp-content/themes/fryzjerbartek/assets/images/contact/incoming-call.webp") right center / cover no-repeat,
		#000;
}


div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card--email {
	background:
		var(--bartek-contact-card-overlay),
		url("/wp-content/themes/fryzjerbartek/assets/images/contact/contact-us.webp") right center / cover no-repeat,
		#000;
}


div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card--directions {
	background:
		var(--bartek-contact-card-overlay),
		url("/wp-content/themes/fryzjerbartek/assets/images/contact/drive-to-us.webp") right center / cover no-repeat,
		#000;
}

div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card--prices {
	background:
		var(--bartek-contact-card-overlay),
		url("/wp-content/themes/fryzjerbartek/assets/images/contact/check-price.webp") right center / cover no-repeat,
		#000;
}

div.home-booking__quick-contact ul.quick-contact-list > li > a > span.quick-contact-card__content {
	display: flex;
	flex-direction: column;
	flex: 1 0 0;
}

div.home-booking__quick-contact ul.quick-contact-list > li > a > span.quick-contact-card__content > span.quick-contact-card__label {
	color: var(--theme-palette-color-1);
	font-family: var(--bartek-heading-font);
	font-size: 18px;
	font-weight: 700;
	line-height: normal;
}


div.home-booking__quick-contact ul.quick-contact-list > li > a > span.quick-contact-card__content > span.quick-contact-card__title {
	color: #FFF;
	font-family: var(--bartek-heading-font);
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}


div.home-booking__quick-contact ul.quick-contact-list > li > a > span.quick-contact-card__icon {
	width: 76px;
	height: 76px;
}


div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card.quick-contact-card > span > span.quick-contact-card__title {
	display: flex;
	gap: 32px;
}


div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card.quick-contact-card--directions > span > span.quick-contact-card__title::after, div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card.quick-contact-card--prices > span > span.quick-contact-card__title::after {
	content: "";
	display: block;
	height: 43px;
	width: 43px;
	background-image: url("/wp-content/themes/fryzjerbartek/assets/icons/external-link.svg");
}


span.quick-contact-card__icon--phone {
	background-image: url("/wp-content/themes/fryzjerbartek/assets/icons/phone.svg");
}

span.quick-contact-card__icon--email {
	background-image: url("/wp-content/themes/fryzjerbartek/assets/icons/email.svg");
}


span.quick-contact-card__icon--directions {
	background-image: url("/wp-content/themes/fryzjerbartek/assets/icons/directions.svg");
}

span.quick-contact-card__icon--prices {
	background-image: url("/wp-content/themes/fryzjerbartek/assets/icons/price-list.svg");
}


/*PROGRAM LOJALNOŚCIOWY*/
section.content-section.content-section--loyalty.home-loyalty {
	max-width: 1528px;
	display: flex;
	align-items: center;
	gap: 64px;
	border-radius: 64px;
	border: 1px solid var(--bartek-border-color);
	background:
    linear-gradient(
      90deg,
      rgba(0, 0, 0, 0.2) 0%,
      rgba(102, 102, 102, 0.2) 100%
    ),
    linear-gradient(
      rgba(0, 0, 0, 0.95),
      rgba(0, 0, 0, 0.95)
    ),
    var(--bartek-panel-glow) center / cover repeat,
    #000;
}

section.content-section.content-section--loyalty.home-loyalty * {
	margin: 0;
}

section.content-section.content-section--loyalty.home-loyalty div.content-section__inner.home-loyalty__inner {
	display: flex; 
	gap: 64px;
}

section.content-section.content-section--loyalty.home-loyalty div.home-loyalty__content {
	display: flex;
	padding: 64px 0 64px 64px;
	flex-direction: column;
	align-items: flex-start;
	gap: 32px;
	flex: 1 0 0;
	align-self: stretch;
}

section.content-section.content-section--loyalty.home-loyalty div.home-loyalty__content > header {
	display: flex;
	flex-direction: column;
	gap: 16px;
}


ol.loyalty-steps {
  list-style: none;
  counter-reset: loyalty-step;
  padding-left: 0;
	display: flex;
	gap: 37px;
}

ol.loyalty-steps > li {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 8px;
	border-radius: 16px;
	border: 1px solid var(--bartek-border-color);
	background: linear-gradient(277deg, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.02) 100%);
	backdrop-filter: blur(3px);
	flex: 1 0 0;
	align-items: center;
	justify-content: center;
}

ol.loyalty-steps > li:not(:last-child)::after {
	content: "";
	width: 21px;
	height: 48px;
	display: block;
	position: absolute;
	right: -29px;
	top: calc((100% - 48px) / 2);
	bottom: 100%;
	background: url("/wp-content/themes/fryzjerbartek/assets/icons/related-arrow.svg") center / contain no-repeat;
}


.loyalty-steps__item {
  counter-increment: loyalty-step;
}

h3.loyalty-steps__title {
  display: flex;
  align-items: baseline;
  gap: 8px;
	justify-content: center;
	font-size: 16px;
	line-height: 170%;
}

.loyalty-steps__item div.loyalty-steps__description {
	text-align: center;
	font-size: 12px;
}

.loyalty-steps__title::before {
  content: counter(loyalty-step) ".";
  flex-shrink: 0;
}

div.home-loyalty__actions {
	display: flex;
	gap: 8px;
}

div.home-loyalty__right {
	width: 100%;
	max-width: 700px;
	display: flex;
	flex-direction: column;
	gap: 32px;
	padding-bottom: 32px;
	border-radius: 64px;
	background: rgba(0, 0, 0, 0.70);
	backdrop-filter: blur(3px);
	overflow: hidden;
}

ul.loyalty-benefits {
	display: flex;
	list-style: none;
	margin: 0;
	padding-left: 16px;
	padding-right: 16px;
	gap: 4px;
}

ul.loyalty-benefits > li {
	flex: 1 0 0;
	display: flex;
	gap: 8px;
	align-items: center;
}

ul.loyalty-benefits > li > div.loyalty-benefits__content {
	display: flex;
	flex-direction: column;
}

ul.loyalty-benefits > li > div.loyalty-benefits__content > .loyalty-benefits__title {
	font-size: 14px;
}

ul.loyalty-benefits > li > div.loyalty-benefits__content > .loyalty-benefits__description {
	font-size: 12px;
}

ul.loyalty-benefits > li > div.loyalty-benefits__content > .loyalty-benefits__description > p {
	margin: 0;
}

ul.loyalty-benefits > li > span.loyalty-benefits__icon, ul.loyalty-benefits > li > span.loyalty-benefits__icon > img {
	width: 59px;
	height: 59px;
	display: block;
	max-width: 59px;
}


/* SEKCJA KONTAKTOWA */
section.content-section.content-section--contact.contact-layout.home-contact {
	width: var(--theme-container-width);
  max-width: var(--theme-normal-container-max-width);
  margin-inline: auto;
}


div.content-section__inner.contact-layout__inner.home-contact__inner {
	display: flex;
	gap: 32px;
}

div.content-section__inner.contact-layout__inner.home-contact__inner > div {
	flex: 1 0 0;
}

div.contact-layout__map.home-contact__map > iframe {
	width: 100%;
	height: 100%;
	border-radius: 64px;
	border: none;
}

div.contact-layout__content.home-contact__content {
	padding: 64px 0;
}


header.section-heading.home-contact__heading {
	margin-bottom: 32px;
}

header.section-heading.home-contact__heading > p {
	margin-bottom: 16px;
}


header.section-heading.home-contact__heading > div.heading-socials {
	display: flex;
	gap: 16px;
	align-items: center;
}

header.section-heading.home-contact__heading > div.heading-socials > h2 {
	margin: 0;
}

header.section-heading.home-contact__heading > div.heading-socials > ul {
	display: flex;
	padding: 0;
	margin: 0;
	list-style: none;
	gap: 10px;
}

header.section-heading.home-contact__heading > div.heading-socials > ul > li > a:before {
	content: "";
	width: 43px;
	height: 43px;
	display: block;
}

header.section-heading.home-contact__heading > div.heading-socials > ul > li > a[aria-label="Facebook"]:before {
	background: var(--icons-facebook);
}

header.section-heading.home-contact__heading > div.heading-socials > ul > li > a[aria-label="Instagram"]:before {
	background: var(--icons-instagram);
}

header.section-heading.home-contact__heading > div.heading-socials > ul > li > a > span[aria-hidden="true"] {
	display: none;
}

div.home-contact__description_address {
	display: flex;
	gap: 32px;
	margin-bottom: 32px;
}

div.home-contact__description_address > * {
	flex: 1 0 0;
}

div.home-contact__description_address > div.home-contact__hours > p {
	margin: 0;
	font-size: 14px;
}

div.home-contact__description_address > div.home-contact__hours > p.home-contact__hours-title, div.home-contact__description_address > div.home-contact__hours > p > span {
	font-weight: 700;
}

div.home-contact__actions {
	display: flex;
	gap: 16px;
	margin-bottom: 32px;
}


/* Sekcja kontaktowa */
ul.home-contact__details.contact-details {
	display: flex;
	list-style: none;
	gap: 16px;
	flex-wrap: wrap;
	padding: 0;
}

ul.home-contact__details.contact-details > li.contact-details__item {
	display: flex;
	width: 100%;
}

ul.home-contact__details.contact-details
> li.contact-details__item
> a.contact-details__link {
	padding: 32px;
	display: grid;
	grid-template-columns: 1fr 76px;
	grid-template-rows: auto auto;
	column-gap: 32px;
	flex: 1 0 0;
	align-items: center;
	border-radius: 16px;
	border: 1px solid var(--bartek-border-color);
	background:
		linear-gradient(
			90deg,
			rgba(0, 0, 0, 0) 0%,
			rgba(0, 0, 0, 0.2) 100%
		),
		linear-gradient(
			270deg,
			rgba(33, 33, 33, 0) 0%,
			#212121 49.73%
		),
		#000;
}


/* Telefon */
ul.home-contact__details.contact-details
> li.contact-details__item--phone
> a.contact-details__link {
	background:
		var(--bartek-contact-card-overlay),
		url("/wp-content/themes/fryzjerbartek/assets/images/contact/incoming-call.webp") right center / cover no-repeat,
		#000;
}


/* E-mail */
ul.home-contact__details.contact-details
> li.contact-details__item--email
> a.contact-details__link {
	background:
		var(--bartek-contact-card-overlay),
		url("/wp-content/themes/fryzjerbartek/assets/images/contact/contact-us.webp") right center / cover no-repeat,
		#000;
}


/* Etykieta: Zadzwoń / Napisz */
ul.home-contact__details.contact-details
> li.contact-details__item
> a.contact-details__link
> span.contact-details__label {
	grid-column: 1;
	grid-row: 1;

	color: var(--theme-palette-color-1);
	font-family: var(--bartek-heading-font);
	font-size: 18px;
	font-weight: 700;
	line-height: normal;
	align-self: end;
}


/* Numer telefonu / adres e-mail */
ul.home-contact__details.contact-details
> li.contact-details__item
> a.contact-details__link
> span.contact-details__value {
	grid-column: 1;
	grid-row: 2;

	color: #fff;
	font-family: var(--bartek-heading-font);
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	align-self: start;
}


/* Ikona */
ul.home-contact__details.contact-details
> li.contact-details__item
> a.contact-details__link
> span.contact-details__icon {
	grid-column: 2;
	grid-row: 1 / 3;

	width: 76px;
	height: 76px;
}


/* Ikona telefonu */
span.contact-details__icon--phone {
	background-image:
		url("/wp-content/themes/fryzjerbartek/assets/icons/phone.svg");
}


/* Ikona e-mail */
span.contact-details__icon--email {
	background-image:
		url("/wp-content/themes/fryzjerbartek/assets/icons/email.svg");
}


/* CENNIK USŁUG */
section.content-section.content-section--pricing.home-pricing {
	width: 100%;
	background:
	linear-gradient(
		to bottom right,
		rgba(15, 15, 15, 0) 0%,
		rgba(15, 15, 15, 0.6) 50%
	) bottom right / 50% 50% no-repeat,

	linear-gradient(
		to bottom left,
		rgba(15, 15, 15, 0) 0%,
		rgba(15, 15, 15, 0.6) 50%
	) bottom left / 50% 50% no-repeat,

	linear-gradient(
		to top left,
		rgba(15, 15, 15, 0) 0%,
		rgba(15, 15, 15, 0.6) 50%
	) top left / 50% 50% no-repeat,

	linear-gradient(
		to top right,
		rgba(15, 15, 15, 0) 0%,
		rgba(15, 15, 15, 0.6) 50%
	) top right / 50% 50% no-repeat,

	linear-gradient(
		180deg,
		#0f0f0f 10%,
		rgba(15, 15, 15, 0) 25%,
		rgba(15, 15, 15, 0) 75%,
		#0f0f0f 90%
	),
		linear-gradient(
		rgba(15, 15, 15, 0.85),
		rgba(15, 15, 15, 0.85)
	),
	var(--bartek-pattern-hair) 0 0 / 1254px 1254px repeat;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner {
	width: var(--theme-container-width);
  max-width: var(--theme-normal-container-max-width);
  margin-inline: auto;
	
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > header.section-heading.home-pricing__heading > h2 {
	margin-top: 16px;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services {
	display: flex;
	gap: 32px;
	list-style: none;
	padding: 0;
	margin-top: 64px;
	margin-bottom: 32px;
	align-items: flex-start
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li {
	border-radius: 32px;
	border: 1px solid var(--bartek-border-color);
	background: linear-gradient(5deg, rgba(255, 255, 255, 0.10) 12.98%, rgba(255, 255, 255, 0.02) 87.02%), #000;
	padding-bottom: 64px;
	flex: 1 0 0;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li:has(article.service-card.service-card--highlighted) {
	border: 3px solid var(--bartek-accent-color);
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card:not(.service-card--highlighted) {
	padding: 0 32px;
	padding-top: 64px;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card.service-card--highlighted > p.service-card__badge {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 3px;
	font-size: 14px;
	height: 40px;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 24px;
	border-radius: 26px 26px 0 0;
	border-top: 3px solid var(--theme-palette-color-1);
	border-right: 3px solid var(--theme-palette-color-1);
	border-left: 3px solid var(--theme-palette-color-1);
	background: var(--theme-palette-color-1);
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card.service-card--highlighted > *:not(p.service-card__badge) {
	margin-left: 32px;
	margin-right: 32px;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > h3.service-card__title {
	margin-bottom: 8px;
	line-height: normal;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > h3.service-card__title > a {
	color: inherit;
	font-size: 20px;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card.service-card--highlighted > h3.service-card__title > a {
	font-size: 32px;
	
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > p.service-card__price {
	font-size: 36px;
	font-family: var(--bartek-heading-font);
	margin-bottom: 64px;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > a.button {
	width: 100%;
	margin-bottom: 32px;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > a.button.button--primary {
	max-width: calc(100% - 64px);
}

/* Wspólna struktura informacji i dodatków w kartach usług. */
section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__information,
section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__addons {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__information {
	margin-bottom: 32px;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__information > *,
section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__addons > * {
	margin: 0;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__information > p.service-card__subtitle,
section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__addons > p.service-card__subtitle {
	color: #B4B4B4;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__information > ul,
section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__addons > ul {
	list-style: none;
	padding-left: 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__addons > ul > li,
section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__information > ul > li {
	font-size: 14px;
	line-height: normal;
	position: relative;
	color: var(--theme-palette-color-8);
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__addons > ul > li:before,
section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__information > ul > li:before {
	content: " ";
	width: 16px;
	height: 16px;
	background: url("/wp-content/themes/fryzjerbartek/assets/icons/addon.svg") center / contain no-repeat;
	display: block;
	position: absolute;
	left: -24px;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__information > ul > li.service-card__detail--method:before {
	background: url("/wp-content/themes/fryzjerbartek/assets/icons/method.svg") center / contain no-repeat;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > div.service-card__information > ul > li.service-card__detail--duration:before {
	background: url("/wp-content/themes/fryzjerbartek/assets/icons/service-duration.svg") center / contain no-repeat;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional {
	padding: 32px;
	border-radius: 64px;
	border: 1px solid var(--bartek-border-color);
	background: linear-gradient(277deg, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.02) 100%), #000;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > h3 {
	text-align: center;
	font-size: 18px;
	line-height: normal;
	margin-bottom: 32px;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list {
	width: 100%;
	display: inline-grid;
	align-self: stretch;
	grid-template-columns: repeat(3, minmax(0, 100%));
	list-style: none;
	padding: 0;
	margin-bottom: 32px;
	gap: 16px;
	counter-reset: more-services;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list  > li {
	min-width: 424px;
	width: 100%;
	max-width: 100%;
	border-radius: 100px;
	background: #000;
	counter-increment: more-services;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list  > li > a {
	padding: 16px 32px 16px 16px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list  > li > a > span.service-price-list__name {
	display: flex;
	gap: 8px;
	font-size: 14px;
	color: #DEDEDE;
	align-items: center;
	line-height: normal;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list  > li > a > span.service-price-list__name:before {
	content: counter(more-services);
	color: #000;
	text-align: center;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	border-radius: 100px;
	background: var(--bartek-accent-color);
	display: flex;
	width: 19px;
	height: 19px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
	align-self: stretch;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list  > li > a > span.service-price-list__price {
	font-size: 20px;
	font-family: var(--bartek-heading-font);
	font-weight: 700;
	color: #fff;
	line-height: normal;
}


section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > footer.home-pricing__additional-footer {
	display: flex;
	padding-left: 327px;
	gap: 32px;
}

p.home-pricing__payment-note {
	flex: 1 0 0;
	display: flex;
	gap: 32px;
	justify-content: center;
	align-items: center;
	margin: 0;
	color: #FFF;
	font-size: 18px;
	font-weight: 700;
	line-height: normal;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > footer.home-pricing__additional-footer > p.home-pricing__payment-note:before {
	content: "";
	width: 48px;
	height: 48px;
	aspect-ratio: 1/1;
	background: url("/wp-content/themes/fryzjerbartek/assets/icons/card-payment.svg") center / contain no-repeat;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > footer.home-pricing__additional-footer > a.home-pricing__full-link {
	gap: 16px;
	padding-right: 16px;
}

section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > footer.home-pricing__additional-footer > a.home-pricing__full-link:after {
	content: "";
	width: 30px;
	height: 30px;
	aspect-ratio: 1/1;
	background: url("/wp-content/themes/fryzjerbartek/assets/icons/external-link.svg") center / contain no-repeat;
}


/* ZESPÓŁ */
section.content-section.content-section--team.home-team {
	width: 100%;
	background:
	linear-gradient(
		to bottom right,
		rgba(15, 15, 15, 0) 0%,
		rgba(15, 15, 15, 0.8) 50%
	) bottom right / 50% 50% no-repeat,

	linear-gradient(
		to bottom left,
		rgba(15, 15, 15, 0) 0%,
		rgba(15, 15, 15, 0.8) 50%
	) bottom left / 50% 50% no-repeat,

	linear-gradient(
		to top left,
		rgba(15, 15, 15, 0) 0%,
		rgba(15, 15, 15, 0.8) 50%
	) top left / 50% 50% no-repeat,

	linear-gradient(
		to top right,
		rgba(15, 15, 15, 0) 0%,
		rgba(15, 15, 15, 0.8) 50%
	) top right / 50% 50% no-repeat,

	linear-gradient(
		270deg,
		#0f0f0f 3%,
		rgba(15, 15, 15, 0) 10%,
		rgba(15, 15, 15, 0) 90%,
		#0f0f0f 97%
	),

	linear-gradient(
		180deg,
		#0f0f0f 10%,
		rgba(15, 15, 15, 0) 25%,
		rgba(15, 15, 15, 0) 75%,
		#0f0f0f 90%
	),
		linear-gradient(
		rgba(15, 15, 15, 0.85),
		rgba(15, 15, 15, 0.85)
	),

	var(--bartek-pattern-barber) center / contain repeat;
}


section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner {
	width: var(--theme-container-width);
  max-width: var(--theme-normal-container-max-width);
  margin-inline: auto;
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > header {
	margin-bottom: 32px;
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > header > h2 {
	margin-top: 16px;
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > ul {
	list-style: none;
	padding: 0;
	display: flex;
	gap: 32px;
	justify-content: center;
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > ul > li article.person-card.team-card {
	position: relative;
	width: 350px;
	height: 350px;
	aspect-ratio: 1/1;
	border-radius: 32px;
	overflow: hidden;
}


section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > ul > li div.person-card__content.team-card__content {
	display: flex;
	position: absolute;
	left: 16px;
	bottom: 16px;
	padding: 8px 16px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	align-self: stretch;
	border-radius: 16px;
	border: 1px solid var(--bartek-border-color);
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.30) 0%, rgba(0, 0, 0, 0.30) 100%), linear-gradient(277deg, rgba(255, 255, 255, 0.20) 0%, rgba(255, 255, 255, 0.04) 100%);
	backdrop-filter: blur(3px);
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > ul > li:nth-child(2) article.person-card.team-card {
	height: 500px;
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > ul > li:nth-child(2) article.person-card.team-card img {
	object-fit: cover;
	height: 500px;
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > ul > li div.person-card__content.team-card__content > * {
	margin: 0;
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > ul > li div.person-card__content.team-card__content > p.person-card__name.team-card__name {
	color: #FFF;
	font-family: var(--bartek-heading-font);
	font-size: 36px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	width: 200px;
	text-align: center;
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > ul > li:nth-child(2) div.person-card__content.team-card__content {
	max-width: 250px;
	left: calc(50% - 125px);
	right:  calc(50% - 125px);
}

section.content-section.content-section--team.home-team  > div.content-section__inner.home-team__inner > ul > li:nth-child(3) div.person-card__content.team-card__content {
	left: auto;
	right: 16px;
}


/* Opis SEO */
section.content-section.content-section--seo.home-seo-content {
		width: var(--theme-container-width);
  max-width: var(--theme-normal-container-max-width);
  margin-inline: auto;
	border-radius: 32px;
	border: 1px solid var(--bartek-border-color);
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.20) 100%), linear-gradient(270deg, rgba(33, 33, 33, 0.00) 0%, #212121 49.73%), #212121;
	padding: 32px 32px 48px 32px;
	margin-bottom: 96px;
}







/*
 * Fryzjer Bartek — propozycja optymalizacji tablet / mobile
 * ---------------------------------------------------------
 * Ten plik należy ładować PO fryzjerbartek-optimized.css.
 * Nie zmienia logiki komponentów — zawiera wyłącznie responsywne
 * nadpisania istniejącego layoutu.
 *
 * Breakpointy:
 * - tablet: do 1024px
 * - mobile: do 767px
 */
 
 @media (max-width: 1200px) {
	 div.showcase-hero__inner.home-hero__inner {
		width: var(--theme-container-width);
		max-width: var(--theme-normal-container-max-width);
		flex-direction: column;
		align-items: stretch;
	}
 }


/* ========================================================================== 
   TABLET — <= 1024px
   ========================================================================== */
@media (max-width: 1024px) {
	/* Główne odstępy */
	main#main-content {
		gap: 72px;
	}

	/* -----------------------------------------------------------------------
	   HERO
	   ----------------------------------------------------------------------- */
	section.showcase-hero {
		padding-top: 128px;
	}

	div.showcase-hero__content.home-hero__content {
		max-width: 680px;
		gap: 32px;
	}

	div.showcase-hero__gallery.home-hero__gallery {
		width: 100%;
	}

	/* -----------------------------------------------------------------------
	   REZERWACJA / SZYBKI KONTAKT
	   ----------------------------------------------------------------------- */
	section#rezerwacja > div > div.home-booking__heading_form > div.home-booking__form {
		padding: 40px;
		margin-bottom: 48px;
	}

	section#rezerwacja > div > div > header {
		margin-bottom: 48px;
	}

	div.home-booking__quick-contact ul.quick-contact-list {
		gap: 24px;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li {
		width: calc((100% - 24px) / 2);
	}

	div.home-booking__quick-contact ul.quick-contact-list > li > a {
		padding: 24px;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li > a > span.quick-contact-card__content > span.quick-contact-card__title {
		font-size: 26px;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li > a > span.quick-contact-card__icon {
		width: 64px;
		height: 64px;
		flex: 0 0 64px;
		background-position: center;
		background-size: contain;
		background-repeat: no-repeat;
	}

	/* -----------------------------------------------------------------------
	   PROGRAM LOJALNOŚCIOWY
	   ----------------------------------------------------------------------- */
	section.content-section.content-section--loyalty.home-loyalty {
		width: var(--theme-container-width);
		max-width: var(--theme-normal-container-max-width);
		border-radius: 48px;
	}

	section.content-section.content-section--loyalty.home-loyalty div.content-section__inner.home-loyalty__inner {
		flex-direction: column;
		gap: 0;
	}

	section.content-section.content-section--loyalty.home-loyalty div.home-loyalty__content {
		padding: 48px;
	}

	div.home-loyalty__right {
		max-width: none;
		border-radius: 0 0 48px 48px;
	}

	ol.loyalty-steps {
		gap: 32px;
	}

	/* -----------------------------------------------------------------------
	   KONTAKT
	   ----------------------------------------------------------------------- */
	div.content-section__inner.contact-layout__inner.home-contact__inner {
		flex-direction: column-reverse;
	}

	div.contact-layout__map.home-contact__map {
		min-height: 420px;
	}

	div.contact-layout__content.home-contact__content {
		padding: 0;
	}

	/* -----------------------------------------------------------------------
	   CENNIK
	   ----------------------------------------------------------------------- */
	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 24px;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li {
		min-width: 0;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional {
		border-radius: 48px;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list > li {
		min-width: 0;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > footer.home-pricing__additional-footer {
		padding-left: 0;
		justify-content: space-between;
	}

	/* -----------------------------------------------------------------------
	   ZESPÓŁ
	   ----------------------------------------------------------------------- */
	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul {
		flex-wrap: wrap;
		align-items: center;
	}

	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li article.person-card.team-card,
	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li:nth-child(2) article.person-card.team-card {
		width: min(350px, 100%);
	}
	
	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li article.person-card.team-card img {
		width: 100%;
	}

	/* -----------------------------------------------------------------------
	   SEO
	   ----------------------------------------------------------------------- */
	section.content-section.content-section--seo.home-seo-content {
		margin-bottom: 72px;
	}
}


/* ========================================================================== 
   MOBILE — <= 767px
   ========================================================================== */
@media (max-width: 767px) {
	/* Główne odstępy */
	main#main-content {
		gap: 48px;
	}

	/* -----------------------------------------------------------------------
	   PRZYCISKI
	   ----------------------------------------------------------------------- */
	a.button.button--primary,
	a.button.button--secondary {
		width: 100%;
		max-width: none;
	}

	a.button.button--primary {
		padding: 14px 24px 14px 14px;
	}

	a.button.button--secondary {
		min-height: 56px;
		padding: 14px 24px;
	}

	/* -----------------------------------------------------------------------
	   HERO
	   ----------------------------------------------------------------------- */
	section.showcase-hero {
		padding-top: 104px;
	}

	section.showcase-hero::after,
	[data-footer*="type-1"] .ct-footer:before {
		background-size: cover;
	}

	div.showcase-hero__inner.home-hero__inner {
		gap: 40px;
	}

	div.showcase-hero__content.home-hero__content {
		gap: 28px;
	}

	div.showcase-hero__content.home-hero__content > img.showcase-hero__logo {
		max-width: 260px;
	}

	div.showcase-hero__actions.home-hero__actions {
		flex-direction: column;
		width: 100%;
	}

	/* Czytelniejszy układ galerii bez wymuszania czterokolumnowej siatki. */
	div.showcase-hero__gallery.home-hero__gallery {
		grid-template: 
		"a c"
		"b b"
		"b b"
		"d e";
		grid-template-rows: auto;
		gap: 12px;
	}

	div.showcase-hero__gallery.home-hero__gallery > figure,
	div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(1),
	div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(2),
	div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(3),
	div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(4), 
	div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(5) {
		width: 100%;
		margin: 0;
		border-radius: 16px;
	}
	
	div.showcase-hero__gallery.home-hero__gallery > figure > img {
		width: 100%;
	}
	
	div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(1) {
		margin-top: auto;
	}


	/* -----------------------------------------------------------------------
	   REZERWACJA / SZYBKI KONTAKT
	   ----------------------------------------------------------------------- */
	section#rezerwacja > div > div.home-booking__heading_form > div.home-booking__form {
		padding: 24px;
		border-radius: 24px;
		margin-bottom: 40px;
	}

	section#rezerwacja > div > div > header {
		margin-bottom: 40px;
	}

	div.home-booking__quick-contact {
		gap: 24px;
	}

	div.home-booking__quick-contact ul.quick-contact-list {
		gap: 16px;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li {
		width: 100%;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li > a {
		padding: 20px;
		gap: 16px;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li > a > span.quick-contact-card__content > span.quick-contact-card__label {
		font-size: 14px;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li > a > span.quick-contact-card__content > span.quick-contact-card__title {
		font-size: 22px;
		overflow-wrap: anywhere;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card.quick-contact-card > span > span.quick-contact-card__title {
		gap: 12px;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li > a > span.quick-contact-card__icon {
		width: 52px;
		height: 52px;
		flex-basis: 52px;
	}

	div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card.quick-contact-card--directions > span > span.quick-contact-card__title::after,
	div.home-booking__quick-contact ul.quick-contact-list > li > a.quick-contact-card.quick-contact-card--prices > span > span.quick-contact-card__title::after {
		width: 30px;
		height: 30px;
		flex: 0 0 30px;
		background-position: center;
		background-size: contain;
		background-repeat: no-repeat;
	}

	/* -----------------------------------------------------------------------
	   PROGRAM LOJALNOŚCIOWY
	   ----------------------------------------------------------------------- */
	section.content-section.content-section--loyalty.home-loyalty {
		border-radius: 32px;
	}

	section.content-section.content-section--loyalty.home-loyalty div.home-loyalty__content {
		padding: 32px 24px;
	}

	ol.loyalty-steps {
		flex-direction: column;
		gap: 16px;
		width: 100%;
	}

	ol.loyalty-steps > li:not(:last-child)::after {
		display: none;
	}

	div.home-loyalty__actions {
		flex-direction: column;
		width: 100%;
	}

	div.home-loyalty__right {
		gap: 24px;
		padding-bottom: 24px;
		border-radius: 0 0 32px 32px;
	}

	ul.loyalty-benefits {
		flex-direction: column;
		gap: 16px;
		padding-inline: 24px;
	}

	/* -----------------------------------------------------------------------
	   KONTAKT
	   ----------------------------------------------------------------------- */
	div.contact-layout__map.home-contact__map {
		min-height: 320px;
	}

	div.contact-layout__map.home-contact__map > iframe {
		border-radius: 32px;
	}

	header.section-heading.home-contact__heading > div.heading-socials {
		align-items: flex-start;
		flex-direction: column;
	}

	div.home-contact__description_address {
		flex-direction: column;
		gap: 20px;
	}

	div.home-contact__actions {
		flex-direction: column;
	}

	ul.home-contact__details.contact-details > li.contact-details__item > a.contact-details__link {
		padding: 20px;
		grid-template-columns: minmax(0, 1fr) 52px;
		column-gap: 16px;
	}

	ul.home-contact__details.contact-details > li.contact-details__item > a.contact-details__link > span.contact-details__label {
		font-size: 14px;
	}

	ul.home-contact__details.contact-details > li.contact-details__item > a.contact-details__link > span.contact-details__value {
		font-size: 22px;
		overflow-wrap: anywhere;
	}

	ul.home-contact__details.contact-details > li.contact-details__item > a.contact-details__link > span.contact-details__icon {
		width: 52px;
		height: 52px;
		background-position: center;
		background-size: contain;
		background-repeat: no-repeat;
	}

	/* -----------------------------------------------------------------------
	   CENNIK
	   ----------------------------------------------------------------------- */
	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services {
		grid-template-columns: 1fr;
		margin-top: 40px;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li {
		padding-bottom: 40px;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card:not(.service-card--highlighted) {
		padding: 40px 24px 0;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card.service-card--highlighted > *:not(p.service-card__badge) {
		margin-left: 24px;
		margin-right: 24px;
		max-width: calc(100% - 48px)!important;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card.service-card--highlighted > h3.service-card__title > a {
		font-size: 26px;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > p.service-card__price {
		font-size: 30px;
		margin-bottom: 40px;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > ul.featured-services > li > article.service-card > a.button.button--primary {
		max-width: none;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional {
		padding: 24px 16px;
		border-radius: 32px;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list {
		grid-template-columns: 1fr;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list > li > a {
		padding: 14px 20px 14px 14px;
		gap: 16px;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > ol.service-price-list > li > a > span.service-price-list__price {
		font-size: 18px;
		white-space: nowrap;
	}

	section.content-section.content-section--pricing.home-pricing > div.content-section__inner.home-pricing__inner > div.home-pricing__additional > footer.home-pricing__additional-footer {
		flex-direction: column;
		gap: 20px;
	}

	p.home-pricing__payment-note {
		justify-content: flex-start;
		gap: 16px;
		font-size: 16px;
	}

	/* -----------------------------------------------------------------------
	   ZESPÓŁ
	   ----------------------------------------------------------------------- */
	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul {
		flex-direction: column;
		gap: 20px;
	}

	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li {
		width: 100%;
	}

	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li article.person-card.team-card,
	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li:nth-child(2) article.person-card.team-card {
		width: 100%;
		height: auto;
		aspect-ratio: 1 / 1;
	}

	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li:nth-child(2) article.person-card.team-card img {
		height: 100%;
	}

	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li div.person-card__content.team-card__content,
	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li:nth-child(2) div.person-card__content.team-card__content,
	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li:nth-child(3) div.person-card__content.team-card__content {
		left: 16px;
		right: 16px;
		max-width: none;
	}

	section.content-section.content-section--team.home-team > div.content-section__inner.home-team__inner > ul > li div.person-card__content.team-card__content > p.person-card__name.team-card__name {
		width: auto;
		font-size: 28px;
	}

	/* -----------------------------------------------------------------------
	   SEO
	   ----------------------------------------------------------------------- */
	section.content-section.content-section--seo.home-seo-content {
		padding: 24px 20px 32px;
		border-radius: 24px;
		margin-bottom: 48px;
	}
}


/* =========================================================
   HERO GALLERY — ANIMACJA WEJŚCIA + PARALLAX
   ========================================================= */

div.showcase-hero__gallery.home-hero__gallery > figure {
	--mouse-x: 0px;
	--mouse-y: 0px;

	opacity: 0;

	/*
	 * translate odpowiada za późniejszy ruch za myszką.
	 * transform jest osobno używany przez animację wejścia,
	 * dzięki czemu oba efekty się ze sobą nie gryzą.
	 */
	translate: var(--mouse-x) var(--mouse-y);

	will-change: transform, translate, opacity;

	animation: homeHeroImageEnter 700ms cubic-bezier(.22, 1, .36, 1) forwards;

	transition:
		translate 350ms cubic-bezier(.22, 1, .36, 1);
}


/* Kolejne wejście zdjęć */

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(2) {
	animation-delay: 150ms;
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(1) {
	animation-delay: 280ms;
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(3) {
	animation-delay: 410ms;
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(4) {
	animation-delay: 540ms;
}

div.showcase-hero__gallery.home-hero__gallery > figure:nth-child(5) {
	animation-delay: 670ms;
}


@keyframes homeHeroImageEnter {

	0% {
		opacity: 0;
		transform:
			translateY(32px)
			scale(0.94);
	}

	100% {
		opacity: 1;
		transform:
			translateY(0)
			scale(1);
	}
}


@media (prefers-reduced-motion: reduce) {

	div.showcase-hero__gallery.home-hero__gallery > figure {
		opacity: 1;
		animation: none;
		translate: 0 0 !important;
		transition: none;
	}
}


/* =========================================================
   STANY POCZĄTKOWE ANIMACJI
   Zapobiegają "przeskakiwaniu" przed uruchomieniem JS
   ========================================================= */

@media (prefers-reduced-motion: no-preference) {

	html.home-animations-enabled .site-main--home .home-hero__logo,
	html.home-animations-enabled .site-main--home .home-hero__heading,
	html.home-animations-enabled .site-main--home .home-hero__actions,

	html.home-animations-enabled .site-main--home .home-booking__heading,
	html.home-animations-enabled .site-main--home .home-booking__form,
	html.home-animations-enabled .site-main--home .home-booking__quick-contact-title,
	html.home-animations-enabled .site-main--home .home-booking__quick-contact .quick-contact-list__item,

	html.home-animations-enabled .site-main--home .home-loyalty__main,
	html.home-animations-enabled .site-main--home .home-loyalty__right,

	html.home-animations-enabled .site-main--home .home-pricing__heading,
	html.home-animations-enabled .site-main--home .home-pricing .featured-services__item,
	html.home-animations-enabled .site-main--home .home-pricing__additional,

	html.home-animations-enabled .site-main--home .home-contact__map,
	html.home-animations-enabled .site-main--home .home-contact__content,

	html.home-animations-enabled .site-main--home .home-team__heading,
	html.home-animations-enabled .site-main--home .home-team .team-list__item,

	html.home-animations-enabled .site-main--home .home-seo-content__heading,
	html.home-animations-enabled .site-main--home .home-seo-content__body {
		opacity: 0;
	}


	/* Stan końcowy */
	html.home-animations-enabled .site-main--home .is-home-animated {
		opacity: 1!important;
	}
}


/* =========================================================
   FRYZJER BARTEK — HOME MICRO ANIMATIONS
   Plik uzupełniający. Nie zmienia istniejącej animacji
   galerii .home-hero__gallery ani jej parallaxu 3D.
   ========================================================= */
   
   

@media (hover: hover) and (pointer: fine) {

	.site-main--home .quick-contact-card {
		transition: translate 280ms cubic-bezier(.22, 1, .36, 1), border-color 280ms ease, box-shadow 280ms ease;
	}
	.site-main--home .quick-contact-card:hover {
		translate: 0 -4px;
		border-color: rgba(170, 137, 98, 0.72);
		box-shadow: 0 14px 32px rgba(0, 0, 0, 0.18);
	}
	.site-main--home .quick-contact-card__icon {
		transition: scale 280ms cubic-bezier(.22, 1, .36, 1), translate 280ms cubic-bezier(.22, 1, .36, 1);
	}
	.site-main--home .quick-contact-card:hover .quick-contact-card__icon {
		scale: 1.045;
		translate: 0 -1px;
	}

	.site-main--home .home-pricing .featured-services__item {
		transition: translate 300ms cubic-bezier(.22, 1, .36, 1), box-shadow 300ms ease;
	}
	.site-main--home .home-pricing .featured-services__item:hover {
		translate: 0 -4px;
		box-shadow: 0 18px 40px rgba(0, 0, 0, 0.16);
	}

	.site-main--home .service-price-list__link {
		transition: translate 220ms cubic-bezier(.22, 1, .36, 1), background-color 220ms ease;
	}

	.site-main--home .home-contact__details .contact-details__link {
		transition: translate 280ms cubic-bezier(.22, 1, .36, 1), border-color 280ms ease;
	}
	.site-main--home .home-contact__details .contact-details__link:hover {
		translate: 3px 0;
		border-color: rgba(170, 137, 98, 0.72);
	}

	.site-main--home .home-contact__social-link {
		display: block;
		transition: scale 220ms cubic-bezier(.22, 1, .36, 1), translate 220ms cubic-bezier(.22, 1, .36, 1);
	}
	.site-main--home .home-contact__social-link:hover {
		scale: 1.06;
		translate: 0 -2px;
	}
	
	ul.featured-services a.button:hover {
		transform: none!important;
		
	}

	.site-main--home .team-card {
		transition: translate 320ms cubic-bezier(.22, 1, .36, 1), box-shadow 320ms ease;
	}
	.site-main--home .team-card__image {
		transition: scale 600ms cubic-bezier(.22, 1, .36, 1);
	}
	.site-main--home .team-card__content {
		transition: translate 320ms cubic-bezier(.22, 1, .36, 1);
	}
	.site-main--home .team-card:hover {
		translate: 0 -4px;
		box-shadow: 0 18px 42px rgba(0, 0, 0, 0.20);
	}
	.site-main--home .team-card:hover .team-card__image {
		scale: 1.025;
	}
	.site-main--home .team-card:hover .team-card__content {
		translate: 0 -2px;
	}

	.site-main--home .loyalty-steps__item {
		transition: translate 260ms cubic-bezier(.22, 1, .36, 1), border-color 260ms ease;
	}
	.site-main--home .loyalty-steps__item:hover {
		translate: 0 -3px;
		border-color: rgba(170, 137, 98, 0.62);
	}
	.site-main--home .loyalty-steps__icon,
	.site-main--home .loyalty-benefits__icon {
		transition: scale 260ms cubic-bezier(.22, 1, .36, 1);
	}
	.site-main--home .loyalty-steps__item:hover .loyalty-steps__icon,
	.site-main--home .loyalty-benefits__item:hover .loyalty-benefits__icon {
		scale: 1.045;
	}
}

@media (hover: none) and (pointer: coarse) {
	.site-main--home .quick-contact-card,
	.site-main--home .home-pricing .featured-services__item,
	.site-main--home .home-contact__details .contact-details__link,
	.site-main--home .team-card {
		transition: scale 140ms ease, filter 140ms ease;
	}

	.site-main--home a.button:active,
	.site-main--home .quick-contact-card:active,
	.site-main--home .home-pricing .featured-services__item:active,
	.site-main--home .home-contact__details .contact-details__link:active,
	.site-main--home .team-card:active {
		scale: 0.985;
	}
}

@media (prefers-reduced-motion: reduce) {
	.site-main--home a.button,
	.site-main--home .quick-contact-card,
	.site-main--home .quick-contact-card__icon,
	.site-main--home .home-pricing .featured-services__item,
	.site-main--home .service-price-list__link,
	.site-main--home .home-contact__details .contact-details__link,
	.site-main--home .home-contact__social-link,
	.site-main--home .team-card,
	.site-main--home .team-card__image,
	.site-main--home .team-card__content,
	.site-main--home .loyalty-steps__item,
	.site-main--home .loyalty-steps__icon,
	.site-main--home .loyalty-benefits__icon {
		transition: none !important;
	}
}