.elementor-kit-9{--e-global-color-primary:#11110F;--e-global-color-secondary:#242321;--e-global-color-text:#11110F;--e-global-color-accent:#8D8982;--e-global-color-w6black:#11110F;--e-global-color-w6charcoal:#242321;--e-global-color-w6cream:#F3EFE8;--e-global-color-w6warmwhite:#FAF9F6;--e-global-color-w6white:#FFFFFF;--e-global-color-w6grey:#8D8982;--e-global-color-w6lightgrey:#D8D3CB;--e-global-color-w6darkline:#3A3935;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Manrope";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-weight:600;--e-global-typography-w6label-font-family:"Manrope";--e-global-typography-w6label-font-size:11px;--e-global-typography-w6label-font-weight:600;--e-global-typography-w6label-text-transform:uppercase;--e-global-typography-w6label-letter-spacing:0.16em;--e-global-typography-w6button-font-family:"Manrope";--e-global-typography-w6button-font-size:12px;--e-global-typography-w6button-font-weight:600;--e-global-typography-w6button-text-transform:uppercase;--e-global-typography-w6button-letter-spacing:0.12em;color:#11110F;font-family:"Manrope", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{background-color:#11110F;font-family:"Manrope", Sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:0.12em;color:#FAF9F6;border-style:solid;border-width:1px 1px 1px 1px;border-color:#11110F;border-radius:0px 0px 0px 0px;padding:18px 28px 18px 28px;}.elementor-kit-9 button:hover,.elementor-kit-9 button:focus,.elementor-kit-9 input[type="button"]:hover,.elementor-kit-9 input[type="button"]:focus,.elementor-kit-9 input[type="submit"]:hover,.elementor-kit-9 input[type="submit"]:focus,.elementor-kit-9 .elementor-button:hover,.elementor-kit-9 .elementor-button:focus{background-color:#F3EFE8;color:#11110F;border-style:solid;border-width:1px 1px 1px 1px;border-color:#11110F;border-radius:0px 0px 0px 0px;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-kit-9 h1{color:#11110F;font-family:"Cormorant Garamond", Sans-serif;font-size:72px;font-weight:500;line-height:0.96em;}.elementor-kit-9 h2{color:#11110F;font-family:"Cormorant Garamond", Sans-serif;font-size:54px;font-weight:500;line-height:1.05em;}.elementor-kit-9 h3{color:#11110F;font-family:"Cormorant Garamond", Sans-serif;font-size:34px;font-weight:500;line-height:1.15em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:32px;--container-default-padding-bottom:0px;--container-default-padding-left:32px;}.elementor-widget:not(:last-child){--kit-widget-spacing:16px;}.elementor-element{--widgets-spacing:16px 16px;--widgets-spacing-row:16px;--widgets-spacing-column:16px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-9 h1{font-size:58px;}.elementor-kit-9 h2{font-size:46px;}.elementor-kit-9 h3{font-size:30px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:24px;--container-default-padding-bottom:0px;--container-default-padding-left:24px;}}@media(max-width:767px){.elementor-kit-9{font-size:15px;}.elementor-kit-9 h1{font-size:44px;}.elementor-kit-9 h2{font-size:38px;}.elementor-kit-9 h3{font-size:28px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}}:root { --w6-black:#11110F; --w6-charcoal:#242321; --w6-cream:#F3EFE8; --w6-warm-white:#FAF9F6; --w6-white:#FFFFFF; --w6-grey:#8D8982; --w6-light-grey:#D8D3CB; --w6-dark-line:#3A3935; --w6-font-heading:Cormorant Garamond; --w6-font-body:Manrope; --w6-space-8:8px; --w6-space-16:16px; --w6-space-24:24px; --w6-space-32:32px; --w6-space-48:48px; --w6-space-64:64px; --w6-space-80:80px; --w6-space-120:120px; --w6-space-160:160px; --w6-container-width:1200px; }
/* Start custom CSS *//* ================================================================
   STUDIO W6 — GLOBAL CSS v1.1 (dostosowany do Elementora V4 / atomic)
   Wklejony w: Elementor > Ustawienia witryny > Custom CSS.
   Klasy przypinasz w V4 jako klasy globalne o tych samych nazwach
   (np. w6-section, w6-hero__title). Klasy globalne są "uchwytami" bez
   własnych stylów - cały wygląd jest w tym pliku (jedno źródło prawdy).
   Selektory mają prefiks "html .elementor", żeby wygrywać z domyślnymi
   stylami V4 (.elementor .e-default-*) także na tablecie i telefonie.
   ================================================================ */

/* ---------- 1. Tokeny ---------- */
:root {
  --w6-black: #11110F;
  --w6-charcoal: #242321;
  --w6-cream: #F3EFE8;
  --w6-warm-white: #FAF9F6;
  --w6-white: #FFFFFF;
  --w6-grey: #8D8982;
  --w6-light-grey: #D8D3CB;
  --w6-dark-line: #3A3935;
  --w6-text: #242321;
  --w6-muted: #77736D;
  --w6-max-width: 1200px;
  --w6-wide-width: 1440px;
  --w6-gutter: clamp(20px, 4vw, 64px);
  --w6-section-space: clamp(72px, 9vw, 120px);
  --w6-section-space-large: clamp(96px, 12vw, 160px);
  --w6-section-space-small: clamp(56px, 6vw, 80px);
  --w6-transition: 300ms ease;
  --w6-image-transition: 850ms cubic-bezier(.2,.65,.2,1);
}

/* ---------- 2. Baza ---------- */
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--w6-text);
  background: var(--w6-warm-white);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
::selection { color: var(--w6-white); background: var(--w6-charcoal); }
:focus-visible { outline: 2px solid var(--w6-grey); outline-offset: 4px; }

/* ---------- 3. Układ: kontener, sekcje, tła ---------- */
html .elementor .w6-container {
  width: calc(100% - (2 * var(--w6-gutter)));
  max-width: var(--w6-max-width);
  margin-inline: auto;
  padding: 0;
}
html .elementor .w6-section {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-block: var(--w6-section-space);
  padding-inline: 0;
}
html .elementor .w6-section--large { padding-block: var(--w6-section-space-large); }
html .elementor .w6-section--small { padding-block: var(--w6-section-space-small); }
html .elementor .w6-section--cream { background: var(--w6-cream); }
html .elementor .w6-section--white { background: var(--w6-white); }
html .elementor .w6-section--dark { color: var(--w6-cream); background: var(--w6-black); }
html .elementor .w6-section--dark .e-heading-base { color: var(--w6-cream); }
html .elementor .w6-section--dark .e-paragraph-base { color: rgba(243,239,232,.8); }
html .elementor .w6-section--dark .w6-eyebrow { color: #B8B1A6; }
html .elementor .w6-section--dark .w6-line { background: var(--w6-dark-line); }

/* ---------- 4. Etykiety, linie, nagłówki sekcji ---------- */
html .elementor .w6-eyebrow {
  margin: 0;
  color: var(--w6-grey);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .16em;
  text-transform: uppercase;
}
html .elementor .w6-line {
  display: block;
  width: 100%;
  height: 1px;
  min-height: 1px;
  padding: 0;
  border: 0;
  background: var(--w6-light-grey);
}
html .elementor .w6-section-heading { max-width: 760px; padding: 0; }
html .elementor .w6-section-heading--center { margin-inline: auto; text-align: center; }
html .elementor .w6-section-heading .e-heading-base { margin-top: 0; }
html .elementor .w6-section-heading .e-paragraph-base { max-width: 620px; color: var(--w6-muted); }

/* ---------- 5. Przyciski i linki tekstowe (e-button = <a class="w6-button">) ---------- */
html .elementor .w6-button {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding-block: 0;
  padding-inline: 28px;
  border: 1px solid var(--w6-black);
  border-radius: 0;
  color: var(--w6-white);
  background: var(--w6-black);
  box-shadow: none;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-decoration: none;
  transition: transform var(--w6-transition), color var(--w6-transition), background var(--w6-transition), border-color var(--w6-transition);
}
html .elementor .w6-button:hover,
html .elementor .w6-button:focus-visible {
  color: var(--w6-black);
  background: transparent;
  border-color: var(--w6-black);
  transform: translateY(-2px);
}
html .elementor .w6-button--outline { color: var(--w6-black); background: transparent; }
html .elementor .w6-button--outline:hover,
html .elementor .w6-button--outline:focus-visible { color: var(--w6-white); background: var(--w6-black); }
html .elementor .w6-button--light { color: var(--w6-black); background: var(--w6-cream); border-color: var(--w6-cream); }
html .elementor .w6-button--light:hover,
html .elementor .w6-button--light:focus-visible { color: var(--w6-cream); background: transparent; border-color: var(--w6-cream); }
html .elementor .w6-section--dark .w6-button { color: var(--w6-black); background: var(--w6-cream); border-color: var(--w6-cream); }
html .elementor .w6-section--dark .w6-button:hover { color: var(--w6-cream); background: transparent; }

html .elementor .w6-link,
html .elementor .w6-link a {
  position: relative;
  display: inline-block;
  color: currentColor;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration: none;
}
html .elementor .w6-link::after,
html .elementor .w6-link a::after {
  position: absolute;
  right: 0;
  bottom: -5px;
  left: 0;
  height: 1px;
  content: "";
  background: currentColor;
  transform: scaleX(.35);
  transform-origin: left center;
  transition: transform var(--w6-transition);
}
html .elementor .w6-link:hover::after,
html .elementor .w6-link a:hover::after { transform: scaleX(1); }

/* ---------- 6. Nagłówek strony (Theme Builder) ---------- */
html .elementor .w6-header {
  position: relative;
  z-index: 999;
  width: 100%;
  padding: 0;
  background: rgba(250,249,246,.94);
  border-bottom: 1px solid rgba(216,211,203,.7);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
html .elementor .w6-header__inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  width: calc(100% - (2 * var(--w6-gutter)));
  max-width: var(--w6-wide-width);
  min-height: 80px;
  margin-inline: auto;
  padding: 0;
}
html .elementor .w6-logo {
  margin: 0;
  color: var(--w6-black);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 19px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .18em;
  text-decoration: none;
}
html .elementor img.w6-logo,
html .elementor .w6-logo img { display: block; width: auto; max-width: 150px; max-height: 46px; object-fit: contain; }
html .elementor .w6-nav .elementor-nav-menu { gap: clamp(12px, 1.7vw, 28px); }
html .elementor .w6-nav .elementor-nav-menu--main .elementor-item {
  padding: 12px 0;
  color: var(--w6-charcoal);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .1em;
  text-transform: uppercase;
}
html .elementor .w6-nav .elementor-nav-menu--main .elementor-item:hover,
html .elementor .w6-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { color: var(--w6-grey); }
html .elementor .w6-nav .elementor-nav-menu--main .elementor-item:after { height: 1px; background: currentColor; }
html .elementor .w6-button.w6-header-cta { min-height: 42px; padding-inline: 18px; font-size: 10px; }

/* ---------- 7. Hero ---------- */
html .elementor .w6-hero {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-block: clamp(42px, 6vw, 84px);
  padding-inline: 0;
  background: var(--w6-warm-white);
}
html .elementor .w6-hero__layout {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  align-items: center;
  gap: clamp(36px, 7vw, 104px);
  width: calc(100% - (2 * var(--w6-gutter)));
  max-width: var(--w6-wide-width);
  margin-inline: auto;
  padding: 0;
}
html .elementor .w6-hero__content { max-width: 590px; padding: 28px 0; }
html .elementor .w6-hero__title {
  margin: 0;
  color: var(--w6-black);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(48px, 6.2vw, 86px);
  font-weight: 500;
  line-height: .94;
  letter-spacing: -.045em;
}
html .elementor .w6-hero__title em,
html .elementor .w6-hero__title i { font-weight: 400; }
html .elementor .w6-hero__lead { max-width: 470px; color: #625E58; font-size: 15px; line-height: 1.8; }
html .elementor .w6-hero__actions { display: flex; flex-direction: row; align-items: center; flex-wrap: wrap; gap: 22px; margin-top: 28px; padding: 0; }
html .elementor .w6-hero__media { min-width: 0; position: relative; overflow: hidden; padding: 0; }
html .elementor .w6-hero__media img,
html .elementor img.w6-hero__media {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 760px;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center;
}
html .elementor .w6-hero--reverse .w6-hero__layout { grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); }
html .elementor .w6-hero--reverse .w6-hero__media { order: 1; }
html .elementor .w6-hero--reverse .w6-hero__content { order: 2; }
html .elementor .w6-hero--dark { background: var(--w6-black); }
html .elementor .w6-hero--dark .w6-hero__title { color: var(--w6-cream); }
html .elementor .w6-hero--dark .w6-hero__lead { color: rgba(243,239,232,.76); }
html .elementor .w6-hero--dark .w6-eyebrow { color: #B8B1A6; }
html .elementor .w6-hero--full-image { min-height: min(780px, 82vh); justify-content: center; background: var(--w6-black); }
html .elementor .w6-hero--full-image .w6-hero__background { position: absolute; inset: 0; z-index: 0; padding: 0; }
html .elementor .w6-hero--full-image .w6-hero__background img,
html .elementor .w6-hero--full-image img.w6-hero__background { width: 100%; height: 100%; object-fit: cover; }
html .elementor .w6-hero--full-image .w6-hero__background::after { position: absolute; inset: 0; content: ""; background: linear-gradient(90deg, rgba(17,17,15,.72), rgba(17,17,15,.08)); }
html .elementor .w6-hero--full-image .w6-hero__layout { position: relative; z-index: 1; display: block; }
html .elementor .w6-hero--full-image .w6-hero__content { max-width: 720px; color: var(--w6-cream); }
html .elementor .w6-hero--full-image .w6-hero__title { color: var(--w6-white); }
html .elementor .w6-hero--full-image .w6-hero__lead { color: rgba(255,255,255,.86); }

/* ---------- 8. Statement (krótkie hasło) ---------- */
html .elementor .w6-statement {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: clamp(68px, 10vw, 132px) var(--w6-gutter);
  text-align: center;
  background: var(--w6-cream);
}
html .elementor .w6-statement__inner { max-width: 980px; margin-inline: auto; padding: 0; }
html .elementor .w6-statement__title {
  margin: 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(38px, 5vw, 68px);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -.035em;
}
html .elementor .w6-statement__text { max-width: 620px; margin: 24px auto 0; color: var(--w6-muted); }
html .elementor .w6-statement--dark { color: var(--w6-cream); background: var(--w6-black); }
html .elementor .w6-statement--dark .w6-statement__title { color: var(--w6-cream); }
html .elementor .w6-statement--dark .w6-statement__text { color: rgba(243,239,232,.72); }

/* ---------- 9. Trzy światy / karty usług / korzyści ---------- */
html .elementor .w6-worlds-grid,
html .elementor .w6-service-grid,
html .elementor .w6-testimonial-grid,
html .elementor .w6-benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: clamp(16px, 2.5vw, 34px);
  width: 100%;
  padding: 0;
}
html .elementor .w6-world-card,
html .elementor .w6-service-card { min-width: 0; padding: 0; }
html .elementor .w6-world-card__image,
html .elementor .w6-service-card__image { overflow: hidden; padding: 0; background: var(--w6-cream); }
html .elementor .w6-world-card__image img,
html .elementor .w6-service-card__image img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  transition: transform var(--w6-image-transition);
}
html .elementor .w6-world-card:hover .w6-world-card__image img,
html .elementor .w6-service-card:hover .w6-service-card__image img { transform: scale(1.035); }
html .elementor .w6-world-card__meta { display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 12px; margin-top: 19px; padding: 0; }
html .elementor .w6-world-card__title {
  margin: 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 500;
  line-height: 1.02;
}
html .elementor .w6-world-card__desc,
html .elementor .w6-service-card__desc { color: var(--w6-muted); font-size: 14px; line-height: 1.75; }
html .elementor .w6-service-card { padding-top: 18px; border-top: 1px solid var(--w6-light-grey); }
html .elementor .w6-service-card__title {
  margin: 0 0 12px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 30px;
  font-weight: 500;
  line-height: 1.05;
}
html .elementor .w6-service-card__number { margin: 0 0 28px; color: var(--w6-grey); font-size: 10px; font-weight: 600; line-height: 1.4; letter-spacing: .14em; }
html .elementor .w6-benefit { padding: 18px 0 0; border-top: 1px solid var(--w6-light-grey); }
html .elementor .w6-benefit__title {
  margin: 0 0 10px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 27px;
  font-weight: 500;
  line-height: 1.1;
}
html .elementor .w6-benefit__text { color: var(--w6-muted); font-size: 14px; line-height: 1.75; }

/* ---------- 10. Galeria asymetryczna ---------- */
html .elementor .w6-gallery-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0,1fr));
  grid-auto-flow: dense;
  gap: clamp(10px, 1.5vw, 20px);
  width: 100%;
  padding: 0;
}
html .elementor .w6-gallery-item { min-width: 0; grid-column: span 4; overflow: hidden; padding: 0; background: var(--w6-cream); }
html .elementor .w6-gallery-item--large { grid-column: span 7; grid-row: span 2; }
html .elementor .w6-gallery-item--small { grid-column: span 5; }
html .elementor .w6-gallery-item--wide { grid-column: span 8; }
html .elementor .w6-gallery-item--narrow { grid-column: span 4; }
html .elementor .w6-gallery-item--full { grid-column: 1 / -1; }
html .elementor .w6-gallery-item img,
html .elementor .w6-project-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--w6-image-transition);
}
html .elementor .w6-gallery-item:hover img,
html .elementor .w6-project-card:hover .w6-project-image img { transform: scale(1.035); }

/* ---------- 11. Karty portfolio (Loop Item) ---------- */
html .elementor .w6-project-card { min-width: 0; padding: 0; }
html .elementor .w6-project-image { overflow: hidden; aspect-ratio: 4 / 5; padding: 0; background: var(--w6-cream); }
html .elementor .w6-project-card__meta { display: flex; flex-direction: row; justify-content: space-between; align-items: flex-start; gap: 16px; padding: 16px 0 0; }
html .elementor .w6-project-card__title {
  margin: 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(25px, 2.5vw, 34px);
  font-weight: 500;
  line-height: 1.05;
}
html .elementor .w6-project-card__category { margin-top: 7px; color: var(--w6-grey); font-size: 10px; font-weight: 600; line-height: 1.4; letter-spacing: .13em; text-transform: uppercase; }
html .elementor .w6-project-card__arrow { color: var(--w6-grey); transition: transform var(--w6-transition); }
html .elementor .w6-project-card:hover .w6-project-card__arrow { transform: translate(3px,-3px); }

/* ---------- 12. Kroki / przebieg sesji ---------- */
html .elementor .w6-steps { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 0; width: 100%; padding: 0; border-top: 1px solid var(--w6-light-grey); }
html .elementor .w6-step { padding: 24px 24px 8px 0; }
html .elementor .w6-step + .w6-step { padding-left: 24px; border-left: 1px solid var(--w6-light-grey); }
html .elementor .w6-step__number { margin: 0 0 42px; color: var(--w6-grey); font-size: 11px; font-weight: 600; line-height: 1.3; letter-spacing: .12em; }
html .elementor .w6-step__title {
  margin: 0 0 12px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.05;
}
html .elementor .w6-step__text { color: var(--w6-muted); font-size: 13px; line-height: 1.8; }

/* ---------- 13. O mnie / układ tekst + zdjęcie ---------- */
html .elementor .w6-split {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  align-items: center;
  gap: clamp(32px, 7vw, 104px);
  width: calc(100% - (2 * var(--w6-gutter)));
  max-width: var(--w6-max-width);
  margin-inline: auto;
  padding: 0;
}
html .elementor .w6-split--image-first .w6-split__media { order: 1; }
html .elementor .w6-split--image-first .w6-split__content { order: 2; }
html .elementor .w6-split__media { min-width: 0; overflow: hidden; padding: 0; background: var(--w6-cream); }
html .elementor .w6-split__media img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
html .elementor .w6-split__content { max-width: 560px; padding: 0; }
html .elementor .w6-split__content .e-paragraph-base { color: var(--w6-muted); }
html .elementor .w6-signature {
  margin-top: 24px;
  color: var(--w6-charcoal);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 27px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.2;
}

/* ---------- 14. Opinie ---------- */
html .elementor .w6-testimonial-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
html .elementor .w6-quote { padding: 26px 0 0; border-top: 1px solid var(--w6-light-grey); }
html .elementor .w6-quote__mark { margin: 0 0 20px; color: var(--w6-grey); font-family: "Cormorant Garamond", Georgia, serif; font-size: 48px; font-weight: 400; line-height: .7; }
html .elementor .w6-quote__text {
  margin: 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(24px, 2.5vw, 34px);
  font-weight: 400;
  line-height: 1.25;
}
html .elementor .w6-quote__author { margin: 22px 0 0; color: var(--w6-grey); font-size: 10px; font-weight: 600; line-height: 1.5; letter-spacing: .12em; text-transform: uppercase; }

/* ---------- 15. Pasek CTA ---------- */
html .elementor .w6-cta-band {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: clamp(58px, 8vw, 104px) var(--w6-gutter);
  color: var(--w6-cream);
  background: var(--w6-black);
}
html .elementor .w6-cta-band__inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
  width: 100%;
  max-width: var(--w6-max-width);
  margin-inline: auto;
  padding: 0;
}
html .elementor .w6-cta-band__copy { max-width: 760px; padding: 0; }
html .elementor .w6-cta-band__title {
  margin: 0;
  color: var(--w6-cream);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(36px, 5vw, 60px);
  font-weight: 500;
  line-height: 1.02;
}
html .elementor .w6-cta-band__text { max-width: 560px; margin-top: 16px; color: rgba(243,239,232,.72); }
html .elementor .w6-cta-band .w6-button { flex-shrink: 0; }

/* ---------- 16. FAQ (e-accordion) ---------- */
html .elementor .w6-faq .e-accordion-item-base { border: 0; border-top: 1px solid var(--w6-light-grey); }
html .elementor .w6-faq .e-accordion-item-header-base { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 0; cursor: pointer; }
html .elementor .w6-faq .e-accordion-item-title-base .e-paragraph-base {
  margin: 0;
  color: var(--w6-black);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 25px;
  font-weight: 500;
  line-height: 1.2;
}
html .elementor .w6-faq .e-accordion-item-content-base { padding: 0 36px 24px 0; }
html .elementor .w6-faq .e-accordion-item-content-base .e-paragraph-base { color: var(--w6-muted); font-size: 14px; line-height: 1.8; }
html .elementor .w6-faq .e-accordion-item-icon-base { color: var(--w6-grey); }

/* ---------- 17. Formularz kontaktowy (e-form) ---------- */
html .elementor .w6-form { display: flex; flex-direction: column; gap: 22px; padding: 0; }
html .elementor .w6-form .e-form-label-base {
  margin-bottom: 8px;
  color: var(--w6-grey);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .12em;
  text-transform: uppercase;
}
html .elementor .w6-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
html .elementor .w6-form textarea,
html .elementor .w6-form select {
  width: 100%;
  min-height: 48px;
  padding: 12px 0;
  border: 0;
  border-bottom: 1px solid var(--w6-light-grey);
  border-radius: 0;
  color: var(--w6-text);
  background: transparent;
  box-shadow: none;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
}
html .elementor .w6-form textarea { min-height: 120px; resize: vertical; }
html .elementor .w6-form input:focus,
html .elementor .w6-form textarea:focus,
html .elementor .w6-form select:focus { outline: none; border-bottom-color: var(--w6-black); }
html .elementor .w6-form ::placeholder { color: #A39E96; opacity: 1; }
html .elementor .w6-form .e-form-submit-button-base {
  min-height: 52px;
  padding: 0 28px;
  border: 1px solid var(--w6-black);
  border-radius: 0;
  color: var(--w6-white);
  background: var(--w6-black);
  box-shadow: none;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  cursor: pointer;
  transition: color var(--w6-transition), background var(--w6-transition);
}
html .elementor .w6-form .e-form-submit-button-base:hover { color: var(--w6-black); background: transparent; }
html .elementor .w6-form .message-success .e-paragraph-base,
html .elementor .w6-form .message-error .e-paragraph-base { padding: 14px 0; font-size: 13px; }

/* ---------- 18. Stopka ---------- */
html .elementor .w6-footer {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: clamp(55px, 7vw, 88px) var(--w6-gutter) 28px;
  color: var(--w6-cream);
  background: var(--w6-black);
}
html .elementor .w6-footer__inner { width: 100%; max-width: var(--w6-wide-width); margin-inline: auto; padding: 0; }
html .elementor .w6-footer__top {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.1fr;
  gap: clamp(24px, 5vw, 70px);
  width: 100%;
  padding: 0 0 58px;
}
html .elementor .w6-footer .e-heading-base { color: var(--w6-cream); }
html .elementor .w6-footer__brand { margin: 0; font-family: "Manrope", Arial, sans-serif; font-size: 18px; font-weight: 600; line-height: 1; letter-spacing: .19em; }
html .elementor .w6-footer__tagline { max-width: 280px; margin-top: 18px; color: rgba(243,239,232,.62); font-size: 13px; }
html .elementor .w6-footer__heading { margin: 0 0 18px; color: #AAA49A; font-family: "Manrope", Arial, sans-serif; font-size: 10px; font-weight: 600; line-height: 1.4; letter-spacing: .15em; text-transform: uppercase; }
html .elementor .w6-footer__links { display: flex; flex-direction: column; gap: 10px; padding: 0; }
html .elementor .w6-footer__links .e-paragraph-base,
html .elementor .w6-footer__links a { color: rgba(243,239,232,.82); font-size: 12px; text-decoration: none; transition: color var(--w6-transition); }
html .elementor .w6-footer__links a:hover { color: var(--w6-white); }
html .elementor .w6-footer__bottom {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 0 0;
  border-top: 1px solid var(--w6-dark-line);
  color: rgba(243,239,232,.5);
  font-size: 10px;
}
html .elementor .w6-footer__bottom a { color: rgba(243,239,232,.7); text-decoration: none; }

/* ---------- 19. Tablet ---------- */
@media (max-width: 1024px) {
  :root { --w6-gutter: 24px; --w6-section-space: 88px; --w6-section-space-large: 112px; }
  html .elementor .w6-header__inner { min-height: 72px; }
  html .elementor .w6-nav .elementor-nav-menu { gap: 14px; }
  html .elementor .w6-nav .elementor-nav-menu--main .elementor-item { font-size: 9px; }
  html .elementor .w6-hero__layout { gap: 36px; }
  html .elementor .w6-hero__title { font-size: clamp(46px, 6.5vw, 66px); }
  html .elementor .w6-worlds-grid,
  html .elementor .w6-service-grid,
  html .elementor .w6-benefits-grid { gap: 18px; }
  html .elementor .w6-steps { grid-template-columns: repeat(2, minmax(0,1fr)); }
  html .elementor .w6-step:nth-child(3) { border-left: 0; padding-left: 0; }
  html .elementor .w6-step:nth-child(n+3) { border-top: 1px solid var(--w6-light-grey); }
  html .elementor .w6-footer__top { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

/* ---------- 20. Telefon ---------- */
@media (max-width: 767px) {
  :root { --w6-gutter: 20px; --w6-section-space: 68px; --w6-section-space-large: 88px; --w6-section-space-small: 48px; }
  body { font-size: 15px; }
  html .elementor .w6-header__inner { min-height: 70px; gap: 12px; }
  html .elementor img.w6-logo,
  html .elementor .w6-logo img { max-width: 122px; max-height: 38px; }
  html .elementor .w6-button.w6-header-cta { min-height: 38px; padding-inline: 12px; font-size: 9px; }
  html .elementor .w6-nav .elementor-nav-menu--dropdown { padding: 10px 20px 18px; border: 0; background: var(--w6-warm-white); box-shadow: 0 12px 24px rgba(17,17,15,.08); }
  html .elementor .w6-nav .elementor-nav-menu--dropdown .elementor-item { padding: 13px 0; border-bottom: 1px solid var(--w6-light-grey); color: var(--w6-black); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
  html .elementor .w6-hero { padding-block: 28px 56px; }
  html .elementor .w6-hero__layout,
  html .elementor .w6-hero--reverse .w6-hero__layout { grid-template-columns: 1fr; gap: 30px; }
  html .elementor .w6-hero__content { order: 1; padding-block: 12px; }
  html .elementor .w6-hero__media { order: 2; }
  html .elementor .w6-hero__title { font-size: clamp(44px, 13vw, 58px); line-height: .96; }
  html .elementor .w6-hero__lead { font-size: 14px; }
  html .elementor .w6-hero__media img,
  html .elementor img.w6-hero__media { max-height: none; aspect-ratio: 4 / 4.5; }
  html .elementor .w6-hero__actions { gap: 16px; margin-top: 23px; }
  html .elementor .w6-hero--full-image { min-height: 620px; }
  html .elementor .w6-worlds-grid,
  html .elementor .w6-service-grid,
  html .elementor .w6-benefits-grid,
  html .elementor .w6-testimonial-grid { grid-template-columns: 1fr; gap: 28px; }
  html .elementor .w6-world-card__image img,
  html .elementor .w6-service-card__image img { aspect-ratio: 4 / 4.7; }
  html .elementor .w6-world-card__title { font-size: 32px; }
  html .elementor .w6-gallery-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
  html .elementor .w6-gallery-item,
  html .elementor .w6-gallery-item--large,
  html .elementor .w6-gallery-item--small,
  html .elementor .w6-gallery-item--wide,
  html .elementor .w6-gallery-item--narrow { grid-column: auto; grid-row: auto; }
  html .elementor .w6-gallery-item--full { grid-column: 1 / -1; }
  html .elementor .w6-gallery-item img { aspect-ratio: 4 / 5; }
  html .elementor .w6-steps { grid-template-columns: 1fr; }
  html .elementor .w6-step,
  html .elementor .w6-step + .w6-step { padding: 22px 0; border-left: 0; border-top: 1px solid var(--w6-light-grey); }
  html .elementor .w6-step:first-child { border-top: 0; }
  html .elementor .w6-step__number { margin-bottom: 20px; }
  html .elementor .w6-split,
  html .elementor .w6-split--image-first { grid-template-columns: 1fr; gap: 28px; }
  html .elementor .w6-split--image-first .w6-split__media,
  html .elementor .w6-split--image-first .w6-split__content { order: initial; }
  html .elementor .w6-split__media img { aspect-ratio: 4 / 4.8; }
  html .elementor .w6-cta-band__inner { align-items: flex-start; flex-direction: column; gap: 28px; }
  html .elementor .w6-faq .e-accordion-item-header-base { padding: 19px 0; }
  html .elementor .w6-faq .e-accordion-item-title-base .e-paragraph-base { font-size: 22px; }
  html .elementor .w6-footer__top { grid-template-columns: 1fr 1fr; gap: 34px 20px; padding-bottom: 36px; }
  html .elementor .w6-footer__top > :first-child { grid-column: 1 / -1; }
  html .elementor .w6-footer__bottom { align-items: flex-start; flex-direction: column; gap: 9px; }
}

/* ---------- 21. Dostępność: ograniczony ruch ---------- */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}


/* ---------- 22. Hero slider (e-tabs jako slajdy) ---------- */
html .elementor .w6-hero--slider { display: block; min-height: 0; padding: 0; overflow: hidden; }
html .elementor .w6-hero__slides { position: relative; width: 100%; gap: 0; padding: 0; }
html .elementor .w6-hero__slides .e-tabs-content-area-base,
html .elementor .w6-hero__slides .e-tab-content-base { width: 100%; padding: 0; }
html .elementor .w6-hero__slides .e-tab-content-base.e--selected { animation: w6-hero-fade 700ms ease both; }
@keyframes w6-hero-fade { from { opacity: 0; } to { opacity: 1; } }
html .elementor .w6-hero__slide {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: clamp(680px, 84vh, 880px);
  padding: 0;
  overflow: hidden;
  background: var(--w6-black);
}
html .elementor .w6-hero--slider .w6-hero__background img,
html .elementor .w6-hero--slider img.w6-hero__background { object-position: 70% center; }
html .elementor .w6-hero--slider .w6-hero__background::after {
  background: linear-gradient(90deg, rgba(17,17,15,.78) 0%, rgba(17,17,15,.46) 38%, rgba(17,17,15,0) 62%);
}
html .elementor .w6-hero--slider .w6-hero__layout { display: block; padding: 72px 0 104px; }
html .elementor .w6-hero--slider .w6-hero__content { max-width: 540px; padding: 0; }
html .elementor .w6-hero--slider .w6-eyebrow { display: flex; align-items: center; gap: 16px; color: var(--w6-cream); }
html .elementor .w6-hero--slider .w6-eyebrow::after { content: ""; width: 48px; height: 1px; background: currentColor; opacity: .5; }
html .elementor .w6-hero--slider .w6-hero__title { margin-top: 24px; font-size: clamp(42px, 4.6vw, 68px); line-height: 1; color: var(--w6-white); }
html .elementor .w6-hero--slider .w6-hero__lead { margin-top: 22px; max-width: 440px; color: rgba(255,255,255,.86); }
html .elementor .w6-hero--slider .w6-hero__actions { margin-top: 34px; gap: 28px; }

/* przyciski i linki na ciemnym hero */
html .elementor .w6-hero--dark .w6-button { color: var(--w6-black); background: var(--w6-cream); border-color: var(--w6-cream); }
html .elementor .w6-hero--dark .w6-button:hover,
html .elementor .w6-hero--dark .w6-button:focus-visible { color: var(--w6-cream); background: transparent; border-color: var(--w6-cream); }
html .elementor .w6-link.e-button-base { min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
html .elementor .w6-hero--dark .w6-link { color: var(--w6-cream); }

/* wskaźniki slajdów: 01 — 02 — 03 */
html .elementor .w6-hero__controls {
  position: absolute;
  left: max(var(--w6-gutter), calc((100% - var(--w6-wide-width)) / 2));
  bottom: 40px;
  z-index: 3;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
  width: auto;
  padding: 0;
}
html .elementor .w6-hero__controls .e-tab-base {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  width: auto;
  padding: 8px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: rgba(243,239,232,.5);
  cursor: pointer;
  transition: color var(--w6-transition);
}
html .elementor .w6-hero__controls .e-tab-base .e-paragraph-base { margin: 0; color: inherit; font-family: "Manrope", Arial, sans-serif; font-size: 11px; font-weight: 600; line-height: 1; letter-spacing: .14em; }
html .elementor .w6-hero__controls .e-tab-base::after { content: ""; width: 28px; height: 1px; background: currentColor; opacity: .6; transition: width var(--w6-transition), opacity var(--w6-transition); }
html .elementor .w6-hero__controls .e-tab-base.e--selected { color: var(--w6-white); }
html .elementor .w6-hero__controls .e-tab-base.e--selected::after { width: 56px; opacity: 1; }
html .elementor .w6-hero__controls .e-tab-base:hover,
html .elementor .w6-hero__controls .e-tab-base:focus-visible { color: var(--w6-cream); }

/* pionowy podpis po prawej */
html .elementor .w6-hero__tag {
  position: absolute;
  right: max(var(--w6-gutter), calc((100% - var(--w6-wide-width)) / 2));
  bottom: 40px;
  z-index: 3;
  margin: 0;
  padding-right: 16px;
  border-right: 1px solid rgba(243,239,232,.4);
  color: var(--w6-cream);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: .16em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
}

/* tablet i telefon: zdjęcie nad tekstem, tekst nie zasłania twarzy */
@media (max-width: 1024px) {
  html .elementor .w6-hero__slide { flex-direction: column; align-items: stretch; min-height: 0; }
  html .elementor .w6-hero--slider .w6-hero__background { position: relative; inset: auto; width: 100%; height: clamp(300px, 56vw, 520px); }
  html .elementor .w6-hero--slider .w6-hero__background::after { background: linear-gradient(180deg, rgba(17,17,15,0) 55%, rgba(17,17,15,1) 100%); }
  html .elementor .w6-hero--slider .w6-hero__layout { padding: 8px 0 96px; }
  html .elementor .w6-hero--slider .w6-hero__content { max-width: 560px; }
  html .elementor .w6-hero__controls { bottom: 36px; }
  html .elementor .w6-hero__tag { display: none; }
}
@media (max-width: 767px) {
  html .elementor .w6-hero--slider .w6-hero__background { height: clamp(300px, 78vw, 440px); }
  html .elementor .w6-hero--slider .w6-hero__background img { object-position: 68% center; }
  html .elementor .w6-hero--slider .w6-hero__title { font-size: clamp(38px, 11vw, 48px); }
  html .elementor .w6-hero--slider .w6-hero__actions { gap: 22px; }
}/* End custom CSS */