@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-sans-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-sans-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
  src: url("../assets/fonts/space-grotesk-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
  src: url("../assets/fonts/space-grotesk-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
  color-scheme: light;
  --ink: #171615;
  --muted: #6d6760;
  --paper: #f4f6fa;
  --paper-soft: #fbfcfe;
  --charcoal: #171615;
  --line: #d9e1ef;
  --card: #ffffff;
  --navy: #102d63;
  --navy-soft: #e8edf6;
  --navy-light: #9bb4df;
  --tech-bg: #161b21;
  --tech-panel: #12161c;
  --tech-footer: #0a0d11;
  --tech-accent: #4fc3f7;
  --tech-accent-rgb: 79, 195, 247;
  --tech-text: #f2f5f7;
  --tech-muted: #8b96a0;
  --tech-muted-2: #9fa9b2;
  --tech-border: rgba(79, 195, 247, .24);
  --tech-glow-soft: rgba(79, 195, 247, .22);
  --tech-glow-strong: rgba(79, 195, 247, .55);
  --font-head: "Space Grotesk", Aptos, "Trebuchet MS", Arial, sans-serif;
  --font-body: "IBM Plex Sans", Aptos, "Trebuchet MS", Arial, sans-serif;
  --font-mono: ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --oak: var(--navy);
  --steel: var(--navy);
  --machine: var(--navy);
  --radius: 8px;
  --max: 1200px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--font-body);
  color: var(--ink);
  background: var(--paper);
}
body[data-theme="steel"] { --oak: var(--steel); }
body[data-theme="machine"] { --oak: var(--machine); }
img { max-width: 100%; display: block; }
a { color: inherit; }
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid var(--tech-accent);
  outline-offset: 3px;
}
button, input, textarea, select { font: inherit; }
.privacy-consent[hidden] { display: none !important; }
.container { width: min(var(--max), calc(100% - 48px)); margin: 0 auto; }
.skip-link {
  position: absolute;
  left: 16px;
  top: 12px;
  z-index: 50;
  transform: translateY(-150%);
  background: var(--oak);
  color: #fff;
  padding: 12px 16px;
  border-radius: var(--radius);
  font-weight: 700;
}
.skip-link:focus { transform: translateY(0); }
.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(23, 22, 21, 0.97);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.header__inner {
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.brand {
  display: inline-flex;
  align-items: center;
  color: #fff;
  text-decoration: none;
}
.brand__image {
  width: clamp(140px, 12vw, 174px);
  height: auto;
}
.nav { display: flex; align-items: center; gap: 6px; }
.nav a {
  color: rgba(255,255,255,.78);
  text-decoration: none;
  font-weight: 700;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border-radius: var(--radius);
}
.nav a:hover, .nav a[aria-current="page"] {
  color: #fff;
  background: rgba(96,134,201,.22);
}
.nav__contact {
  position: relative;
  border: 1px solid rgba(var(--tech-accent-rgb), .34);
}
.menu-toggle {
  display: none;
  min-height: 42px;
  padding: 0 14px;
  border-radius: var(--radius);
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
  color: #fff;
  font-weight: 700;
}
.breadcrumbs {
  background: #0d1218;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: var(--tech-muted-2);
}
.breadcrumbs__list {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 8px;
  padding-bottom: 8px;
  list-style: none;
  overflow-x: auto;
  white-space: nowrap;
  font-size: .84rem;
}
.breadcrumbs__list li { display: inline-flex; align-items: center; gap: 10px; }
.breadcrumbs__list li + li::before { content: "/"; color: rgba(255,255,255,.28); }
.breadcrumbs__list a { color: var(--tech-accent); text-decoration: none; }
.breadcrumbs__list a:hover { text-decoration: underline; }
.breadcrumbs__list [aria-current="page"] { color: rgba(255,255,255,.72); }
.hero {
  background: linear-gradient(115deg, #171615 0%, #20201e 47%, #f4f6fa 47%, #fbfcfe 100%);
  color: #fff;
  overflow: hidden;
}
.hero .eyebrow { color: var(--navy-light); }
.hero--simple { background: #20201e; padding: 96px 0; }
.hero__grid {
  min-height: min(78vh, 760px);
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(520px, 1.28fr);
  align-items: center;
  gap: clamp(28px, 5vw, 68px);
  padding: clamp(56px, 8vw, 92px) 0;
}
.hero__copy { max-width: 640px; }
.eyebrow {
  margin: 0 0 16px;
  color: var(--oak);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
h1, h2, h3 { margin: 0; line-height: 1.08; font-family: var(--font-head); }
h1 { font-size: clamp(2.5rem, 5vw, 4.4rem); max-width: 12ch; }
h2 { font-size: clamp(2rem, 3vw, 2.65rem); }
h3 { font-size: 1.25rem; }
.lead {
  max-width: 58ch;
  margin: 22px 0 0;
  color: rgba(255,255,255,.72);
  font-size: 1.08rem;
  line-height: 1.75;
}
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 26px;
  border-radius: var(--radius);
  border: 1px solid transparent;
  background: var(--oak);
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  cursor: pointer;
}
.btn--secondary {
  background: transparent;
  color: #fff;
  border-color: rgba(255,255,255,.66);
}
.btn:hover { filter: brightness(1.06); }
.hero__media img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: contain;
  border-radius: var(--radius);
  border: 1px solid rgba(255,255,255,.45);
  box-shadow: 0 28px 70px rgba(23,22,21,.24);
}
.article-meta {
  background: var(--paper-soft);
  border-bottom: 1px solid var(--line);
}
.article-meta__inner {
  min-height: 58px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 24px;
  color: var(--muted);
  font-size: .9rem;
}
.article-meta time { color: var(--ink); font-weight: 700; }
body[data-page="produkcja-cnc-druk-3d"] .hero {
  background:
    radial-gradient(circle at 78% 28%, rgba(96,134,201,.18), transparent 34%),
    linear-gradient(135deg, #171615 0%, #20201e 100%);
}
body[data-page="produkcja-cnc-druk-3d"] .hero__grid {
  min-height: auto;
  grid-template-columns: minmax(330px, .82fr) minmax(520px, 1.18fr);
  padding: clamp(58px, 7vw, 86px) 0 clamp(64px, 8vw, 96px);
}
body[data-page="produkcja-cnc-druk-3d"] .hero__copy {
  max-width: 570px;
}
body[data-page="produkcja-cnc-druk-3d"] h1 {
  max-width: 11.5ch;
  font-size: clamp(2.35rem, 4.15vw, 4.05rem);
}
body[data-page="produkcja-cnc-druk-3d"] .lead {
  max-width: 43rem;
  color: rgba(255,255,255,.78);
}
body[data-page="produkcja-cnc-druk-3d"] .hero__media {
  padding: clamp(10px, 1.4vw, 16px);
  border: 1px solid rgba(155,180,223,.22);
  border-radius: calc(var(--radius) + 6px);
  background: linear-gradient(135deg, rgba(255,255,255,.085), rgba(255,255,255,.035));
  box-shadow: 0 24px 70px rgba(0,0,0,.26);
}
body[data-page="produkcja-cnc-druk-3d"] .hero__media img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
  padding: 0;
  border: 0;
  background: #f7f8fa;
  box-shadow: none;
}
body[data-page="home"] {
  color-scheme: dark;
  color: var(--tech-text);
  background:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    var(--tech-bg);
  background-size: 36px 36px, 36px 36px, auto;
}
body[data-page="home"] .site-header {
  background: rgba(10, 13, 17, .92);
  border-bottom: 1px solid rgba(var(--tech-accent-rgb), .14);
  box-shadow: 0 18px 44px rgba(0,0,0,.22);
  backdrop-filter: blur(14px);
}
body[data-page="home"] .nav a {
  color: var(--tech-muted-2);
  font-size: .9rem;
}
body[data-page="home"] .nav a:hover,
body[data-page="home"] .nav a[aria-current="page"] {
  color: var(--tech-text);
  background: rgba(var(--tech-accent-rgb), .09);
}
body[data-page="home"] .hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 16% 22%, rgba(var(--tech-accent-rgb), .12), transparent 34%),
    linear-gradient(135deg, #11161c 0%, var(--tech-bg) 52%, #0f141a 100%);
  color: var(--tech-text);
}
body[data-page="home"] .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(rgba(255,255,255,.052) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.052) 1px, transparent 1px);
  background-size: 36px 36px;
  opacity: .75;
  pointer-events: none;
}
body[data-page="home"] .hero::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  width: clamp(128px, 14vw, 230px);
  background:
    repeating-linear-gradient(90deg, rgba(var(--tech-accent-rgb), .98) 0 3px, transparent 3px 7px),
    repeating-linear-gradient(135deg, rgba(255,255,255,.045) 0 12px, transparent 12px 24px),
    linear-gradient(180deg, rgba(19,29,38,.86), rgba(10,13,17,.96));
  clip-path: polygon(28% 0, 100% 0, 100% 100%, 0 100%);
  box-shadow: -24px 0 44px rgba(var(--tech-accent-rgb), .08);
  opacity: 1;
  pointer-events: none;
}
body[data-page="home"] .hero__grid {
  position: relative;
  z-index: 2;
  min-height: min(82vh, 820px);
  grid-template-columns: minmax(280px, .78fr) minmax(520px, 1.22fr);
  gap: clamp(34px, 5vw, 74px);
}
body[data-page="home"] .hero__copy {
  position: relative;
  z-index: 2;
}
body[data-page="home"] h1 {
  max-width: 12ch;
  color: var(--tech-text);
  letter-spacing: 0;
}
body[data-page="home"] h1 span {
  display: block;
  color: var(--tech-accent);
  text-shadow: 0 0 26px var(--tech-glow-soft);
}
body[data-page="home"] .lead {
  color: var(--tech-muted-2);
}
body[data-page="home"] .hero__media {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(var(--tech-accent-rgb), .32);
  border-radius: calc(var(--radius) + 2px);
  background: var(--tech-panel);
  clip-path: polygon(8% 0, 100% 0, 100% 100%, 0 100%);
  box-shadow: 0 34px 110px rgba(0,0,0,.38), 0 0 38px rgba(var(--tech-accent-rgb), .11);
}
body[data-page="home"] .hero__media::before {
  content: "";
  position: absolute;
  inset: -20% auto -20% -8%;
  z-index: 2;
  width: 30%;
  background: repeating-linear-gradient(135deg, rgba(var(--tech-accent-rgb), .34) 0 2px, transparent 2px 9px);
  clip-path: polygon(0 0, 100% 0, 54% 100%, 0 100%);
  opacity: .65;
  pointer-events: none;
}
body[data-page="home"] .hero__media img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  filter: saturate(.96) contrast(1.06);
}
body[data-page="home"] .btn {
  background: var(--tech-accent);
  color: #071018;
  box-shadow: 0 0 28px rgba(var(--tech-accent-rgb), .22);
}
body[data-page="home"] .btn--secondary {
  background: rgba(255,255,255,.025);
  color: var(--tech-text);
  border-color: rgba(var(--tech-accent-rgb), .38);
  box-shadow: none;
}
body[data-page="home"] .band,
body[data-page="home"] .band:nth-of-type(even) {
  background: var(--tech-bg);
  color: var(--tech-text);
}
body[data-page="home"] .band--dark {
  background: var(--tech-panel);
}
body[data-page="home"] .band--facts {
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.032) 0 12px, transparent 12px 24px),
    linear-gradient(180deg, #11161c, var(--tech-panel));
}
body[data-page="home"] .section-head .eyebrow {
  color: var(--tech-accent);
  font-weight: 700;
  letter-spacing: .08em;
}
body[data-page="home"] .section-head p:not(.eyebrow),
body[data-page="home"] .band--dark .section-head p:not(.eyebrow) {
  color: var(--tech-muted-2);
}
body[data-page="home"] .card,
body[data-page="home"] .case-card,
body[data-page="home"] .step,
body[data-page="home"] .list-panel,
body[data-page="home"] .faq details {
  border-color: rgba(var(--tech-accent-rgb), .18);
  background: linear-gradient(180deg, rgba(18,22,28,.96), rgba(14,18,23,.96));
  box-shadow: 0 18px 60px rgba(0,0,0,.22);
}
body[data-page="home"] .card p,
body[data-page="home"] .case-card p,
body[data-page="home"] .step p,
body[data-page="home"] .list-panel p {
  color: var(--tech-muted-2);
}
body[data-page="home"] .choice-grid {
  gap: 22px;
}
body[data-page="home"] .choice-card {
  position: relative;
  min-height: 310px;
  align-content: start;
  padding: 26px;
  overflow: hidden;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
body[data-page="home"] .choice-card:hover,
body[data-page="home"] .choice-card:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(var(--tech-accent-rgb), .52);
  box-shadow: 0 24px 80px rgba(0,0,0,.32), 0 0 34px rgba(var(--tech-accent-rgb), .12);
}
body[data-page="home"] .choice-card--business {
  border-color: rgba(var(--tech-accent-rgb), .46);
  background: linear-gradient(180deg, rgba(var(--tech-accent-rgb), .075), rgba(18,22,28,.96));
}
body[data-page="home"] .choice-card--prefab::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 7px;
  background: repeating-linear-gradient(90deg, rgba(var(--tech-accent-rgb), .72) 0 10px, transparent 10px 18px);
}
body[data-page="home"] .choice-card h3 {
  color: var(--tech-text);
}
body[data-page="home"] .choice-card__more {
  margin-top: auto;
  color: var(--tech-accent);
  font-weight: 700;
}
.choice-icon {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin: 10px 0 2px;
  border: 1px solid rgba(var(--tech-accent-rgb), .38);
  border-radius: 6px;
  box-shadow: inset 0 0 18px rgba(var(--tech-accent-rgb), .08);
}
.choice-icon--home::before {
  content: "";
  position: absolute;
  top: 7px;
  width: 20px;
  height: 20px;
  border-left: 2px solid var(--tech-accent);
  border-top: 2px solid var(--tech-accent);
  transform: rotate(45deg);
}
.choice-icon--home::after {
  content: "";
  position: absolute;
  bottom: 7px;
  width: 25px;
  height: 19px;
  border: 2px solid var(--tech-accent);
  border-top: 0;
}
.choice-icon--home i {
  position: absolute;
  z-index: 1;
  bottom: 7px;
  left: 50%;
  width: 7px;
  height: 10px;
  border: 2px solid var(--tech-accent);
  border-bottom: 0;
  background: var(--tech-panel);
  transform: translateX(-50%);
}
.choice-icon--business {
  grid-template-columns: repeat(2, 5px);
  grid-template-rows: repeat(2, 5px);
  place-content: start center;
  gap: 5px 7px;
  padding-top: 10px;
}
.choice-icon--business::before {
  content: "";
  position: absolute;
  inset: 5px 8px 5px;
  border: 2px solid var(--tech-accent);
  border-radius: 2px 2px 0 0;
  background: rgba(var(--tech-accent-rgb), .06);
}
.choice-icon--business::after {
  content: "";
  position: absolute;
  bottom: 5px;
  left: 50%;
  width: 7px;
  height: 9px;
  border: 2px solid var(--tech-accent);
  border-bottom: 0;
  transform: translateX(-50%);
}
.choice-icon--business i {
  position: relative;
  z-index: 1;
  width: 5px;
  height: 5px;
  background: var(--tech-accent);
}
.choice-icon--prefab {
  align-content: center;
  justify-items: center;
  gap: 4px;
}
.choice-icon--prefab i {
  display: block;
  height: 4px;
  background: var(--tech-accent);
  box-shadow: 0 0 12px var(--tech-glow-soft);
}
.choice-icon--prefab i:nth-child(1) { width: 24px; transform: translateX(-4px); }
.choice-icon--prefab i:nth-child(2) { width: 28px; }
.choice-icon--prefab i:nth-child(3) { width: 22px; transform: translateX(5px); }
body[data-page="home"] .band--facts .card h3 {
  color: var(--tech-accent);
  text-shadow: 0 0 18px var(--tech-glow-soft);
}
body[data-page="home"] .machine-card,
body[data-page="home"] .band--dark .card,
body[data-page="home"] .band--dark .case-card,
body[data-page="home"] .band--dark .step,
body[data-page="home"] .band--dark .list-panel {
  background: rgba(18,22,28,.96);
  border-color: rgba(var(--tech-accent-rgb), .18);
}
body[data-page="home"] .machine-badge,
body[data-page="home"] .machine-tags li,
body[data-page="home"] .case-card__top span,
body[data-page="home"] .footer-title {
  color: var(--tech-accent);
}
body[data-page="home"] .cta {
  background:
    linear-gradient(90deg, rgba(255,255,255,.18), transparent 44%),
    var(--tech-accent);
  color: #061018;
}
body[data-page="home"] .cta p {
  color: rgba(6,16,24,.74);
}
body[data-page="home"] .cta .btn {
  background: var(--tech-footer);
  color: var(--tech-text);
  box-shadow: 0 18px 42px rgba(0,0,0,.25);
}
body[data-page="home"] .site-footer {
  background: var(--tech-footer);
  color: var(--tech-muted-2);
}
body[data-page="home"] .footer__grid,
body[data-page="home"] .footer__bottom {
  border-color: rgba(var(--tech-accent-rgb), .14);
}
.band { padding: clamp(64px, 8vw, 104px) 0; background: var(--paper-soft); }
.band:nth-of-type(even) { background: #fff; }
.band.band--dark {
  --oak: var(--navy-light);
  background: #20201e;
  color: #fff;
}
.band--dark .card,
.band--dark .case-card,
.band--dark .step,
.band--dark .list-panel,
.band--dark .faq details {
  background: rgba(255,255,255,.055);
  border-color: rgba(255,255,255,.13);
  box-shadow: none;
}
.band--dark .card p,
.band--dark .case-card p,
.band--dark .step p,
.band--dark .list-panel p,
.band--dark .faq details p {
  color: rgba(255,255,255,.72);
}
.band.band--paper { background: var(--paper); }
.stack { display: grid; gap: 32px; }
.section-head { max-width: 780px; }
.section-head p:not(.eyebrow) {
  margin: 16px 0 0;
  color: var(--muted);
  font-size: 1.06rem;
  line-height: 1.7;
}
.band--dark .section-head p:not(.eyebrow) { color: rgba(255,255,255,.72); }
.card-grid, .case-grid, .steps, .link-grid {
  display: grid;
  gap: 18px;
}
.card-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.card-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.case-grid, .link-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.link-grid--pathways { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.pathway-card {
  min-height: 210px;
  align-content: start;
}
.pathway-card--active { grid-column: span 3; }
body .link-grid--pathways .card.pathway-card--unavailable {
  grid-column: span 2;
  display: grid;
  gap: 12px;
  color: var(--muted);
  background: rgba(113,122,130,.24);
  border-color: rgba(113,122,130,.46);
  box-shadow: none;
  cursor: not-allowed;
  filter: grayscale(1);
}
body .link-grid--pathways .card.pathway-card--unavailable h3,
body .link-grid--pathways .card.pathway-card--unavailable p { color: var(--muted); }
.pathway-card__status {
  align-self: end;
  width: max-content;
  margin-top: auto;
  padding: 7px 10px;
  border: 1px solid rgba(128,136,143,.38);
  border-radius: 999px;
  color: var(--muted);
  font-family: var(--font-mono);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.case-grid--featured { gap: 24px; }
.case-grid--single { grid-template-columns: minmax(0, 1fr); }
.case-grid--single .case-card__content--body > p { max-width: 75ch; }
.steps { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.card, .case-card, .step, .list-panel, .faq details, .legal article {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 28px;
  box-shadow: 0 14px 34px rgba(42,34,26,.06);
}
.card p, .case-card p, .step p, .list-panel p, .legal p {
  color: var(--muted);
  line-height: 1.7;
}
.card--link {
  text-decoration: none;
  display: grid;
  gap: 12px;
}
.card--link span { color: var(--oak); font-weight: 800; }
.case-card ul {
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}
.case-card li::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 10px; background: var(--oak); border-radius: 50%; }
.case-card {
  display: grid;
  gap: 22px;
  align-content: start;
  grid-auto-rows: max-content;
  min-height: 100%;
}
.case-card--with-media {
  padding: 0;
  overflow: hidden;
}
.case-card__content {
  display: grid;
  gap: 18px;
}
.case-card--with-media .case-card__content {
  padding-left: 28px;
  padding-right: 28px;
}
.case-card--with-media .case-card__content:first-child {
  padding-top: 28px;
}
.case-card__content--body {
  padding-bottom: 28px;
}
.case-card__content--body p {
  margin: 0;
}
.case-card__media {
  display: grid;
  gap: 8px;
  padding: 8px;
  background: rgba(255,255,255,.05);
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.case-card--with-media .case-card__media {
  order: 2;
}
.case-card--with-media .case-card__content--body {
  order: 3;
}
.case-card__media-button {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  cursor: zoom-in;
  overflow: hidden;
}
.case-card__media-button:focus-visible {
  outline: 3px solid var(--navy-light);
  outline-offset: 3px;
}
.case-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 6px;
  transition: transform 180ms ease, filter 180ms ease;
}
.case-card__media-button:hover img {
  transform: scale(1.025);
  filter: brightness(1.04);
}
.case-card__media-main {
  aspect-ratio: 16 / 9;
}
.case-card__media-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(72px, 1fr));
  gap: 8px;
}
.case-card__media-row img {
  aspect-ratio: 16 / 10;
}
.private-realizations {
  display: grid;
  gap: 32px;
  margin-top: clamp(28px, 5vw, 64px);
  padding-top: clamp(44px, 6vw, 76px);
  border-top: 1px solid rgba(255,255,255,.16);
}
[data-room-gallery] [data-room-card][hidden],
[data-room-gallery] [data-room-more][hidden] {
  display: none !important;
}
.room-gallery__filters,
[data-room-gallery] [data-room-filters] {
  display: none;
  flex-wrap: wrap;
  gap: 10px;
}
[data-room-gallery].room-gallery--enhanced .room-gallery__filters,
[data-room-gallery].room-gallery--enhanced [data-room-filters] {
  display: flex;
}
[data-room-gallery] [data-room-filter] {
  display: none;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 9px 16px;
  border: 1px solid var(--theme-line, var(--line));
  border-radius: 999px;
  color: var(--theme-ink, var(--ink));
  background: var(--theme-surface, var(--card));
  font: inherit;
  font-size: .86rem;
  font-weight: 800;
  cursor: pointer;
  transition: border-color 180ms ease, color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}
[data-room-gallery].room-gallery--enhanced [data-room-filter] {
  display: inline-flex;
}
[data-room-gallery] [data-room-filter]:hover {
  border-color: rgba(var(--theme-accent-rgb, 36, 93, 152), .62);
  background: rgba(var(--theme-accent-rgb, 36, 93, 152), .08);
}
[data-room-gallery] [data-room-filter][aria-pressed="true"] {
  border-color: var(--theme-accent, var(--oak));
  color: #fff;
  background: var(--theme-accent, var(--oak));
  box-shadow: 0 8px 22px rgba(var(--theme-accent-rgb, 36, 93, 152), .18);
}
.room-gallery__footer,
[data-room-gallery] [data-room-footer] {
  display: grid;
  justify-items: center;
  gap: 12px;
}
[data-room-gallery] [data-room-more] {
  display: none;
  min-height: 50px;
  padding: 10px 22px;
  border: 1px solid var(--theme-accent, var(--oak));
  border-radius: var(--radius);
  color: var(--theme-accent, var(--oak));
  background: transparent;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
[data-room-gallery].room-gallery--enhanced [data-room-more]:not([hidden]) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
[data-room-gallery] [data-room-more]:hover {
  color: #fff;
  background: var(--theme-accent, var(--oak));
}
[data-room-gallery] [data-room-status] {
  margin: 0;
  color: var(--theme-muted, var(--muted));
  font-size: .84rem;
  line-height: 1.5;
}
.room-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}
.room-card {
  position: relative;
  display: flex;
  min-width: 0;
  overflow: hidden;
  scroll-margin-top: 110px;
  flex-direction: column;
  border: 1px solid var(--theme-line, rgba(255,255,255,.16));
  border-radius: var(--radius);
  background: var(--theme-surface, rgba(255,255,255,.055));
  box-shadow: 0 18px 42px rgba(0,0,0,.12);
}
.room-card__media {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  color: inherit;
  background: rgba(0,0,0,.18);
}
.room-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 52%, rgba(6,10,16,.46));
}
.room-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 260ms ease, filter 260ms ease;
}
.room-card__media:hover img,
.room-card__media:focus-visible img {
  transform: scale(1.025);
  filter: brightness(1.04);
}
.room-card__photo-count {
  position: absolute;
  z-index: 1;
  right: 14px;
  bottom: 14px;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 6px 11px;
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 999px;
  color: #fff;
  background: rgba(8,14,22,.72);
  backdrop-filter: blur(8px);
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .02em;
}
.room-card__gallery-item[hidden] {
  display: none !important;
}
.room-card__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 13px;
  padding: 22px;
}
.room-card__content h3 {
  margin: 0;
  color: var(--theme-ink, #fff);
  font-size: clamp(1.2rem, 1.7vw, 1.55rem);
  line-height: 1.18;
}
.room-card__content > p:not(.room-card__project) {
  margin: 0;
  color: var(--theme-muted, rgba(255,255,255,.74));
  line-height: 1.62;
}
.room-card__project {
  margin: 0;
  color: var(--theme-accent, var(--oak));
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .075em;
  line-height: 1.45;
  text-transform: uppercase;
}
.room-card__project a {
  color: inherit;
  text-decoration-color: color-mix(in srgb, currentColor 55%, transparent);
  text-underline-offset: 3px;
}
.room-card__action {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: auto;
  padding-top: 4px;
  color: var(--theme-accent, var(--oak));
  font-size: .82rem;
  font-weight: 850;
}
.room-card__action span {
  transition: transform 180ms ease;
}
.room-card:has(.room-card__media:hover) .room-card__action span {
  transform: translateX(3px);
}
.project-groups {
  display: grid;
  gap: 22px;
  margin-top: clamp(18px, 3vw, 34px);
  padding-top: clamp(30px, 4vw, 50px);
  border-top: 1px solid var(--theme-line, rgba(255,255,255,.16));
}
.project-groups__head {
  max-width: 760px;
}
.project-groups__head h3 {
  margin: 8px 0 12px;
  color: var(--theme-ink, #fff);
  font-size: clamp(1.45rem, 2.2vw, 2rem);
}
.project-groups__head > p:last-child {
  margin: 0;
  color: var(--theme-muted, rgba(255,255,255,.74));
  line-height: 1.65;
}
.project-groups__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.project-group {
  padding: 22px;
  scroll-margin-top: 110px;
  border: 1px solid var(--theme-line, rgba(255,255,255,.16));
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--theme-surface, #172231) 82%, transparent);
}
.project-group > p {
  margin: 0 0 7px;
  color: var(--theme-accent, var(--oak));
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.project-group h4 {
  margin: 0 0 14px;
  color: var(--theme-ink, #fff);
  font-size: 1.12rem;
}
.project-group ul {
  display: grid;
  gap: 7px;
  margin: 0;
  padding-left: 19px;
  color: var(--theme-muted, rgba(255,255,255,.74));
}
.project-group a {
  color: inherit;
  text-underline-offset: 3px;
}
.room-card__media:focus-visible,
[data-room-gallery] [data-room-filter]:focus-visible,
[data-room-gallery] [data-room-more]:focus-visible,
.room-card__project a:focus-visible,
.project-group a:focus-visible {
  outline: 3px solid var(--theme-accent, var(--oak));
  outline-offset: 3px;
}
@media (max-width: 1000px) {
  .room-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 660px) {
  .room-gallery-grid,
  .project-groups__grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .room-gallery__filters,
  [data-room-gallery] [data-room-filters] {
    flex-wrap: nowrap;
    margin-inline: -24px;
    padding: 3px 24px 8px;
    overflow-x: auto;
    scrollbar-width: thin;
    scroll-padding-inline: 24px;
  }
  [data-room-gallery] [data-room-filter] {
    flex: 0 0 auto;
  }
  .room-card__content,
  .project-group {
    padding: 19px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .room-card__media img,
  .room-card__action span {
    transition: none;
  }
}
.case-card__media-button[hidden] { display: none; }
.case-card__gallery-more { position: relative; }
.case-card__gallery-more > span {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 8px;
  border-radius: 6px;
  color: #fff;
  background: rgba(9, 16, 26, .7);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-align: center;
  text-transform: uppercase;
  transition: background 180ms ease;
}
.case-card__gallery-more:hover > span { background: rgba(9, 16, 26, .58); }
.case-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.case-card__top span {
  color: var(--oak);
  font-size: .88rem;
  font-weight: 900;
  letter-spacing: .12em;
}
.case-card__top p {
  margin: 0;
  color: rgba(255,255,255,.68);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.case-card h3 {
  font-size: clamp(1.45rem, 2vw, 1.9rem);
}
.case-title-amp {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 800;
}
.case-card dl {
  display: grid;
  gap: 0;
  margin: 0;
  border-top: 1px solid rgba(255,255,255,.12);
}
.case-card dl div {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 18px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.case-card dt {
  color: var(--oak);
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.case-card dd {
  margin: 0;
  color: rgba(255,255,255,.86);
  line-height: 1.45;
}

/* Studium przypadku realizacji kompleksowej */
.case-study {
  display: grid;
  gap: 30px;
}
body[data-theme] .case-study h2,
body[data-theme] .case-study h3 {
  color: var(--theme-ink);
}
.case-study__summary {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: 24px;
  align-items: start;
}
.case-study__lead {
  max-width: 72ch;
  margin: 0;
  color: var(--theme-muted, rgba(255,255,255,.78));
  font-size: 1.08rem;
  line-height: 1.75;
}
.case-study__facts {
  display: grid;
  gap: 0;
  margin: 0;
  border-top: 1px solid var(--theme-line, rgba(255,255,255,.16));
}
.case-study__facts div {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 16px;
  padding: 14px 0;
  border-bottom: 1px solid var(--theme-line, rgba(255,255,255,.16));
}
.case-study__facts dt {
  color: var(--theme-accent, var(--oak));
  font-size: .73rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.case-study__facts dd {
  margin: 0;
  color: var(--theme-ink, rgba(255,255,255,.9));
  line-height: 1.5;
}
.case-study__gallery {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
  grid-template-rows: repeat(2, minmax(190px, 1fr));
  gap: 12px;
}
.case-study__photo {
  position: relative;
  min-height: 220px;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--theme-line, rgba(255,255,255,.16));
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(var(--theme-accent-rgb, 183, 120, 81), .1), rgba(255,255,255,.26)),
    repeating-linear-gradient(135deg, transparent 0 22px, rgba(var(--theme-accent-rgb, 183, 120, 81), .07) 22px 23px),
    var(--theme-surface, rgba(255,255,255,.05));
}
.case-study__photo--main {
  grid-row: 1 / -1;
  min-height: 464px;
}
.case-study__photo::before,
.case-study__photo::after {
  content: "";
  position: absolute;
  pointer-events: none;
}
.case-study__photo::before {
  inset: 24px;
  border: 1px dashed rgba(var(--theme-accent-rgb, 183, 120, 81), .38);
  border-radius: calc(var(--radius) - 6px);
}
.case-study__photo::after {
  width: 64px;
  height: 44px;
  left: 50%;
  top: 43%;
  transform: translate(-50%, -50%);
  border: 2px solid color-mix(in srgb, var(--theme-muted, #fff) 58%, transparent);
  border-radius: 5px;
  background:
    radial-gradient(circle at 75% 28%, var(--theme-accent, rgba(255,255,255,.54)) 0 4px, transparent 5px),
    linear-gradient(145deg, transparent 0 45%, color-mix(in srgb, var(--theme-muted, #fff) 48%, transparent) 46% 51%, transparent 52%),
    linear-gradient(35deg, transparent 0 43%, color-mix(in srgb, var(--theme-muted, #fff) 36%, transparent) 44% 50%, transparent 51%);
}
.case-study__photo figcaption {
  position: absolute;
  inset: auto 24px 22px;
  z-index: 1;
  display: grid;
  gap: 4px;
}
.case-study__photo figcaption strong {
  color: var(--theme-ink, #fff);
  font-size: 1.05rem;
}
.case-study__photo figcaption span {
  color: var(--theme-accent, rgba(255,255,255,.62));
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.case-study__owners {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.case-study__owner {
  padding: 26px;
  border: 1px solid var(--theme-line, rgba(255,255,255,.16));
  border-radius: var(--radius);
  background: var(--theme-surface, rgba(255,255,255,.055));
}
.case-study__owner h3 {
  margin-bottom: 14px;
  color: var(--theme-ink, #fff);
}
.case-study__owner p {
  margin: 0;
  color: var(--theme-muted, rgba(255,255,255,.7));
  line-height: 1.7;
}
.case-study__journey {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: case-stage;
}
.case-study__journey li {
  position: relative;
  min-height: 168px;
  padding: 52px 18px 20px;
  border: 1px solid var(--theme-line, rgba(255,255,255,.14));
  border-radius: var(--radius);
  background: var(--theme-surface, rgba(255,255,255,.04));
  color: var(--theme-muted, rgba(255,255,255,.72));
  line-height: 1.55;
  counter-increment: case-stage;
}
.case-study__journey li::before {
  content: "0" counter(case-stage);
  position: absolute;
  top: 18px;
  left: 18px;
  color: var(--theme-accent, var(--oak));
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .1em;
}
.case-study__quote {
  margin: 0;
  padding: 30px;
  border-left: 4px solid var(--theme-accent, var(--oak));
  border-radius: 0 var(--radius) var(--radius) 0;
  background: var(--theme-surface, rgba(255,255,255,.06));
}
.case-study__quote p {
  margin: 0;
  color: var(--theme-muted, rgba(255,255,255,.68));
  font-size: clamp(1.2rem, 2.2vw, 1.65rem);
  font-style: italic;
  line-height: 1.55;
}
.case-study__quote footer {
  margin-top: 14px;
  color: var(--theme-accent, var(--oak));
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.machine-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}
.machine-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: var(--radius);
  background: rgba(255,255,255,.055);
  color: inherit;
  text-align: left;
  font: inherit;
  padding: 0;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.machine-card:hover,
.machine-card:focus-within {
  transform: translateY(-2px);
  border-color: rgba(155,180,223,.42);
  background: rgba(255,255,255,.08);
  outline: 2px solid rgba(155,180,223,.48);
  outline-offset: 3px;
}
.machine-badge {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  min-height: 28px;
  margin: 0;
  padding: 7px 10px;
  border: 1px solid rgba(155,180,223,.28);
  border-radius: 999px;
  color: var(--navy-light);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .14em;
  line-height: 1;
  text-transform: uppercase;
}
.machine-card__badge {
  margin: 18px 18px 0;
}
.machine-card img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
  padding: 0;
  margin-top: 16px;
}
.machine-card--soon {
  position: relative;
  border-color: rgba(var(--tech-accent-rgb), .34);
  background: linear-gradient(145deg, rgba(var(--tech-accent-rgb), .09), rgba(255,255,255,.045));
}
.machine-card--soon .machine-card__badge {
  color: #071018;
  border-color: var(--tech-accent);
  background: var(--tech-accent);
}
.machine-card--system img { object-position: left center; }
.production-groups {
  display: grid;
  gap: clamp(58px, 7vw, 92px);
}
.production-group {
  display: grid;
  gap: 26px;
}
.production-group__head {
  display: grid;
  grid-template-columns: minmax(260px, .75fr) minmax(320px, 1.25fr);
  align-items: end;
  gap: 32px;
  padding-bottom: 22px;
  border-bottom: 1px solid rgba(var(--tech-accent-rgb), .2);
}
.production-group__head h3 {
  color: #fff;
  font-size: clamp(1.65rem, 3vw, 2.35rem);
}
.production-group__head p {
  max-width: 66ch;
  margin: 0;
  color: var(--tech-muted-2);
  line-height: 1.7;
}
.machine-card__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin-top: auto;
  padding: 0 18px 18px;
}
.machine-card__actions--single { grid-template-columns: 1fr; }
.production-group[data-group="software"] .machine-grid {
  grid-template-columns: minmax(0, 1fr);
  max-width: 780px;
}
.production-group[data-group="software"] .machine-card {
  display: grid;
  grid-template-columns: minmax(280px, 1.2fr) minmax(260px, .8fr);
  grid-template-rows: auto auto 1fr auto auto;
}
.production-group[data-group="software"] .machine-card > img {
  grid-column: 1;
  grid-row: 1 / 6;
  height: 100%;
  margin: 0;
  border-right: 1px solid rgba(var(--tech-accent-rgb), .16);
}
.production-group[data-group="software"] .machine-card > :not(img) { grid-column: 2; }
.machine-card__actions .machine-card__action {
  margin: 0;
}
.machine-card__order,
.machine-card__actions .machine-card__action {
  min-height: 46px;
  padding: 10px 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius);
  text-align: center;
  text-decoration: none;
  font-size: .82rem;
  font-weight: 800;
}
.machine-card__order {
  color: #071018;
  background: var(--tech-accent);
  border: 1px solid var(--tech-accent);
}
.machine-card__actions .machine-card__action {
  color: #fff;
  border: 1px solid rgba(var(--tech-accent-rgb), .42);
  background: rgba(var(--tech-accent-rgb), .08);
}
.machine-card__actions .machine-card__action:hover { background: rgba(var(--tech-accent-rgb), .17); }
.machine-card__order:hover { filter: brightness(1.08); }
@media (max-width: 720px) {
  .production-group__head { grid-template-columns: 1fr; gap: 12px; }
  .machine-card__actions { grid-template-columns: 1fr; }
  .production-group[data-group="software"] .machine-card { display: flex; }
  .production-group[data-group="software"] .machine-card > img { height: auto; border-right: 0; }
}
.machine-card__title {
  margin: 20px 22px 0;
  color: #fff;
  font-size: 1.22rem;
}
.machine-card__text {
  display: -webkit-box;
  min-height: calc(1.65em * 3);
  margin: 12px 22px 0;
  overflow: hidden;
  color: rgba(255,255,255,.72);
  line-height: 1.65;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.machine-card__static {
  display: none;
}
.machine-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.machine-card__tags {
  margin: 0 22px 12px;
  margin-top: auto;
  padding-top: 18px;
}
.machine-card__action {
  min-height: 44px;
  margin: 0 22px 22px;
  border: 1px solid rgba(155,180,223,.42);
  border-radius: var(--radius);
  background: rgba(155,180,223,.08);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}
.machine-card__action:hover { background: rgba(155,180,223,.16); }
.machine-card__action:focus-visible {
  outline: 2px solid var(--tech-accent);
  outline-offset: 3px;
}
.machine-tags li {
  padding: 7px 10px;
  border: 1px solid rgba(155,180,223,.28);
  border-radius: 999px;
  color: rgba(255,255,255,.86);
  font-size: .78rem;
  font-weight: 800;
}
.machine-modal[hidden] { display: none; }
.machine-modal {
  position: fixed;
  inset: 0;
  z-index: 60;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(0,0,0,.72);
}
.machine-modal__panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(440px, 1.2fr) minmax(460px, .95fr);
  align-items: center;
  gap: clamp(20px, 3vw, 32px);
  width: min(1220px, calc(100vw - 48px));
  max-height: calc(100vh - 48px);
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.machine-modal__close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: var(--radius);
  background: rgba(23,22,21,.86);
  color: #fff;
  font-size: 1rem;
  font-weight: 800;
  cursor: pointer;
}
.machine-modal__close:hover,
.machine-modal__close:focus-visible {
  border-color: rgba(155,180,223,.56);
  outline: 2px solid rgba(155,180,223,.48);
  outline-offset: 3px;
}
.machine-modal__media {
  display: grid;
  place-items: center;
  align-self: center;
  min-height: 0;
  overflow: hidden;
  padding: 0;
  border: 1px solid rgba(155,180,223,.24);
  border-radius: calc(var(--radius) + 4px);
  background: transparent;
  box-shadow: 0 32px 100px rgba(0,0,0,.46);
}
.machine-modal__media img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: calc(100vh - 96px);
  object-fit: contain;
  object-position: center;
}
.machine-modal__content {
  display: grid;
  align-content: start;
  gap: 18px;
  min-width: 0;
  max-height: calc(100vh - 48px);
  overflow: auto;
  padding: clamp(28px, 4vw, 46px);
  border: 1px solid rgba(155,180,223,.24);
  border-radius: calc(var(--radius) + 4px);
  background: #20201e;
  box-shadow: 0 32px 100px rgba(0,0,0,.46);
  color: #fff;
}
.machine-modal__content > p:not(.machine-badge):not(.machine-modal__note) {
  margin: 0;
  color: rgba(255,255,255,.78);
  line-height: 1.7;
}
.machine-modal__columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  padding-top: 4px;
}
.machine-modal__columns h3 {
  margin-bottom: 12px;
  color: #fff;
  font-size: 1rem;
}
.machine-modal__columns ul {
  display: grid;
  gap: 9px;
  margin: 0;
  padding-left: 18px;
  color: rgba(255,255,255,.76);
  line-height: 1.55;
}
.machine-modal__note {
  margin: 0;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.72);
  line-height: 1.6;
}
.step span {
  display: inline-grid;
  place-items: center;
  width: 52px;
  height: 52px;
  margin-bottom: 18px;
  border-radius: 50%;
  background: var(--oak);
  color: #fff;
  font-weight: 900;
}
.list-panel { display: grid; gap: 12px; }
.list-panel p { margin: 0; padding-left: 22px; position: relative; }
.list-panel p::before {
  content: "";
  position: absolute;
  left: 0;
  top: .7em;
  width: 8px;
  height: 8px;
  background: var(--oak);
  border-radius: 50%;
}
.cta {
  padding: clamp(58px, 7vw, 86px) 0;
  background: var(--navy-soft);
}
.cta__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
}
.cta p { margin: 14px 0 0; color: #384762; line-height: 1.7; max-width: 72ch; }
.faq { display: grid; gap: 12px; }
.faq-groups { display: grid; gap: 44px; }
.faq-group { scroll-margin-top: 110px; }
.faq-group > h3 { margin: 0 0 18px; font-size: clamp(1.15rem, 2vw, 1.45rem); }
.faq details { padding: 0; overflow: hidden; }
.faq summary {
  cursor: pointer;
  padding: 22px 26px;
  font-weight: 800;
}
.faq details p { margin: 0; padding: 0 26px 24px; color: var(--muted); line-height: 1.7; }
.faq__more {
  display: inline-block;
  margin: -8px 26px 24px;
  color: var(--accent);
  font-weight: 800;
}
.interview-list { display: grid; gap: 22px; max-width: 960px; }
.interview-item { padding-bottom: 22px; border-bottom: 1px solid var(--line); }
.interview-item:last-child { padding-bottom: 0; border-bottom: 0; }
.interview-item h3 { margin: 0 0 14px; font-size: clamp(1.08rem, 2vw, 1.35rem); line-height: 1.35; }
.interview-item p { margin: 0 0 14px; color: var(--muted); line-height: 1.8; }
.interview-item p:last-child { margin-bottom: 0; }
.contact-layout {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(520px, 1.22fr);
  gap: 42px;
  align-items: start;
}
.contact-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 28px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
}
.contact-form label { display: grid; gap: 8px; font-weight: 800; }
.contact-form .full, .contact-form > button { grid-column: 1 / -1; }
.contact-form input, .contact-form textarea, .contact-form select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  min-height: 52px;
  padding: 12px 14px;
  background: #fbfaf7;
}
.contact-form input[type="file"] { padding: 8px; }
.contact-form input[type="file"]::file-selector-button {
  min-height: 36px;
  margin-right: 12px;
  padding: 7px 12px;
  border: 1px solid rgba(var(--tech-accent-rgb), .34);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(var(--tech-accent-rgb), .1);
  color: var(--tech-text);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.contact-form textarea { resize: vertical; }
.optional-fields {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 0;
  background: #fbfaf7;
}
.optional-fields summary {
  cursor: pointer;
  padding: 16px;
  font-weight: 900;
}
.optional-fields__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 0 16px 16px;
}
.file-list {
  display: grid;
  gap: 8px;
  margin: -4px 0 0;
  padding: 0;
  list-style: none;
}
.file-list:empty { display: none; }
.file-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fbfaf7;
  font-size: .92rem;
  font-weight: 700;
}
.file-list button {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--ink);
  min-height: 34px;
  padding: 6px 12px;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.form-note {
  display: block;
  color: var(--muted);
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.5;
}
.consent { grid-template-columns: 22px minmax(0, 1fr); align-items: start; font-weight: 500 !important; }
.consent input { min-height: auto; width: 18px; margin-top: 2px; }
.hp { position: absolute; left: -9999px; opacity: 0; }
.form-status { display: none; padding: 14px 16px; border-radius: var(--radius); font-weight: 800; }
body[data-form-status="success"] [data-status="success"] { display: block; background: #e4f4ea; color: #21694a; }
body[data-form-status="saved"] [data-status="saved"] { display: block; background: #e7eef9; color: #123a70; }
body[data-form-status="error"] [data-status="error"],
body[data-form-status="rate_limited"] [data-status="rate_limited"] { display: block; background: #f8e6e4; color: #9a342d; }
.lightbox {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 72px;
  align-items: center;
  gap: 18px;
  padding: 72px 32px 32px;
  background: rgba(8, 16, 32, .94);
}
.lightbox[hidden] { display: none; }
body.lightbox-open { overflow: hidden; }
.lightbox__figure {
  margin: 0;
  display: grid;
  gap: 14px;
  justify-items: center;
}
.lightbox__figure img {
  max-width: min(100%, 1480px);
  max-height: calc(100vh - 150px);
  object-fit: contain;
  border-radius: 8px;
  box-shadow: 0 28px 80px rgba(0,0,0,.38);
}
.lightbox__figure figcaption {
  display: grid;
  gap: 5px;
  color: rgba(255,255,255,.78);
  line-height: 1.5;
  text-align: center;
}
.lightbox__counter {
  color: rgba(255,255,255,.58);
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.lightbox__nav[hidden] { display: none; }
.lightbox__close,
.lightbox__nav {
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.08);
  color: #fff;
  cursor: pointer;
}
.lightbox__close {
  position: absolute;
  top: 18px;
  right: 22px;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 8px;
  font-weight: 800;
}
.lightbox__nav {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  font-size: 2.4rem;
  line-height: 1;
}
.lightbox__nav:hover,
.lightbox__close:hover {
  background: rgba(255,255,255,.16);
}
.legal { display: grid; gap: 18px; max-width: 880px; }
.site-footer {
  background: #171615;
  color: rgba(255,255,255,.72);
  padding: 42px 0 28px;
}
.footer__grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.2fr) minmax(160px, .8fr) minmax(200px, 1fr) minmax(220px, 1fr) minmax(150px, .75fr);
  gap: 48px;
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}
.site-footer a { display: block; color: rgba(255,255,255,.78); text-decoration: none; margin: 8px 0; }
.site-footer a:hover { color: #fff; }
.site-footer p { line-height: 1.65; }
.footer-title {
  color: var(--navy-light);
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-weight: 900;
}
.footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-top: 22px;
}
.footer__bottom nav { display: flex; flex-wrap: wrap; gap: 18px; }
.footer__bottom a { margin: 0; }

/* Global cyber-tech skin for every page. */
body {
  --oak: var(--tech-accent);
  color-scheme: dark;
  color: var(--tech-text);
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    var(--tech-bg);
  background-size: 36px 36px, 36px 36px, auto;
}
body[data-theme="steel"],
body[data-theme="machine"] {
  --oak: var(--tech-accent);
}
.site-header {
  background: rgba(10, 13, 17, .92);
  border-bottom: 1px solid rgba(var(--tech-accent-rgb), .14);
  box-shadow: 0 18px 44px rgba(0,0,0,.22);
  backdrop-filter: blur(14px);
}
.nav a {
  color: var(--tech-muted-2);
  font-size: .9rem;
}
.nav a:hover,
.nav a[aria-current="page"] {
  color: var(--tech-text);
  background: rgba(var(--tech-accent-rgb), .09);
}
.skip-link {
  background: var(--tech-accent);
  color: #071018;
}
body:not([data-page="home"]) .hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 72% 20%, rgba(var(--tech-accent-rgb), .11), transparent 34%),
    linear-gradient(135deg, #11161c 0%, var(--tech-bg) 56%, #0f141a 100%);
  color: var(--tech-text);
}
body:not([data-page="home"]) .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 36px 36px;
  opacity: .75;
}
body:not([data-page="home"]) .hero .eyebrow,
.eyebrow,
.section-head .eyebrow,
.footer-title {
  color: var(--tech-accent);
}
body:not([data-page="home"]) .hero__grid {
  grid-template-columns: minmax(440px, .95fr) minmax(520px, 1.05fr);
  gap: clamp(32px, 3.5vw, 50px);
  min-height: auto;
  padding: clamp(58px, 7vw, 94px) 0;
}
body:not([data-page="home"]) .hero__copy {
  max-width: none;
}
body:not([data-page="home"]) .hero h1 {
  max-width: 16ch;
  font-size: clamp(2.55rem, 3.6vw, 3.5rem);
  text-wrap: balance;
}
body:not([data-page="home"]) .hero .lead {
  max-width: 54ch;
  text-wrap: pretty;
}
.section-head h2,
.card h3,
.case-card h3,
.step h3 {
  text-wrap: balance;
}
body:not([data-page="home"]) .hero__media {
  overflow: hidden;
  padding: clamp(8px, 1.1vw, 14px);
  border: 1px solid rgba(var(--tech-accent-rgb), .24);
  border-radius: calc(var(--radius) + 4px);
  background: rgba(18,22,28,.9);
  box-shadow: 0 28px 90px rgba(0,0,0,.32), 0 0 28px rgba(var(--tech-accent-rgb), .08);
}
body:not([data-page="home"]) .hero__media img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
  padding: 0;
  border: 0;
  border-radius: var(--radius);
  background: transparent;
  box-shadow: none;
  filter: saturate(.96) contrast(1.04);
}
.hero--simple {
  background:
    radial-gradient(circle at 74% 22%, rgba(var(--tech-accent-rgb), .11), transparent 34%),
    linear-gradient(135deg, #11161c, var(--tech-bg));
}
.lead,
.section-head p:not(.eyebrow),
.band--dark .section-head p:not(.eyebrow) {
  color: var(--tech-muted-2);
}
h1, h2, h3 {
  color: var(--tech-text);
}
.btn {
  background: var(--tech-accent);
  color: #071018;
  box-shadow: 0 0 28px rgba(var(--tech-accent-rgb), .22);
}
.btn--secondary {
  background: rgba(255,255,255,.025);
  color: var(--tech-text);
  border-color: rgba(var(--tech-accent-rgb), .38);
  box-shadow: none;
}
.band,
.band:nth-of-type(even),
.band.band--paper {
  background: var(--tech-bg);
  color: var(--tech-text);
}
.band.band--dark {
  --oak: var(--tech-accent);
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.026) 0 12px, transparent 12px 24px),
    var(--tech-panel);
  color: var(--tech-text);
}
.card,
.case-card,
.step,
.list-panel,
.faq details,
.legal article,
.contact-form,
.optional-fields {
  border-color: rgba(var(--tech-accent-rgb), .18);
  background: linear-gradient(180deg, rgba(18,22,28,.96), rgba(14,18,23,.96)), var(--tech-panel);
  box-shadow: 0 18px 60px rgba(0,0,0,.22);
  color: var(--tech-text);
}
.band--dark .card,
.band--dark .case-card,
.band--dark .step,
.band--dark .list-panel,
.band--dark .faq details {
  border-color: rgba(var(--tech-accent-rgb), .18);
  background: rgba(18,22,28,.96);
}
.card p,
.case-card p,
.step p,
.list-panel p,
.legal p,
.faq details p,
.band--dark .card p,
.band--dark .case-card p,
.band--dark .step p,
.band--dark .list-panel p,
.band--dark .faq details p,
.form-note {
  color: var(--tech-muted-2);
}
.card--link span,
.case-card__top span,
.case-card dt,
.step span,
.machine-badge,
.machine-tags li {
  color: var(--tech-accent);
}
.step span {
  background: rgba(var(--tech-accent-rgb), .1);
  border: 1px solid rgba(var(--tech-accent-rgb), .32);
  box-shadow: 0 0 20px rgba(var(--tech-accent-rgb), .12);
}
.list-panel p::before,
.case-card li::before {
  background: var(--tech-accent);
  box-shadow: 0 0 14px var(--tech-glow-soft);
}
.machine-card {
  border-color: rgba(var(--tech-accent-rgb), .18);
  background: rgba(18,22,28,.96);
}
.machine-card:hover,
.machine-card:focus-within {
  border-color: rgba(var(--tech-accent-rgb), .52);
  background: rgba(var(--tech-accent-rgb), .065);
  outline-color: rgba(var(--tech-accent-rgb), .45);
}
.machine-card__title,
.machine-modal__columns h3 {
  color: var(--tech-text);
}
.machine-card__text,
.machine-modal__columns ul,
.machine-modal__note,
.machine-modal__content > p:not(.machine-badge):not(.machine-modal__note) {
  color: var(--tech-muted-2);
}
.machine-modal {
  background: rgba(0,0,0,.78);
}
.machine-modal__content {
  border-color: rgba(var(--tech-accent-rgb), .2);
  background: var(--tech-panel);
}
.contact-form input,
.contact-form textarea,
.contact-form select,
.file-list li,
.file-list button {
  border-color: rgba(var(--tech-accent-rgb), .2);
  background: rgba(10,13,17,.58);
  color: var(--tech-text);
}
.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: var(--tech-muted);
}
.form-status {
  border: 1px solid rgba(var(--tech-accent-rgb), .2);
}
body[data-form-status="success"] [data-status="success"],
body[data-form-status="saved"] [data-status="saved"] {
  background: rgba(var(--tech-accent-rgb), .12);
  color: var(--tech-text);
}
body[data-form-status="error"] [data-status="error"],
body[data-form-status="rate_limited"] [data-status="rate_limited"] {
  background: rgba(178, 55, 55, .18);
  color: #ffd7d7;
}
.cta {
  background:
    linear-gradient(90deg, rgba(255,255,255,.18), transparent 44%),
    var(--tech-accent);
  color: #061018;
}
.cta h2 {
  color: #061018;
}
.cta p {
  color: rgba(6,16,24,.74);
}
.cta .btn {
  background: var(--tech-footer);
  color: var(--tech-text);
  box-shadow: 0 18px 42px rgba(0,0,0,.25);
}
.site-footer {
  background: var(--tech-footer);
  color: var(--tech-muted-2);
}
.footer__grid,
.footer__bottom {
  border-color: rgba(var(--tech-accent-rgb), .14);
}
.site-footer a {
  color: var(--tech-muted-2);
}
.site-footer a:hover {
  color: var(--tech-accent);
}

/* Segment: klienci indywidualni - cieplej, spokojniej i bardziej domowo. */
body[data-theme="warm"] {
  --oak: #b96f45;
  --radius: 8px;
  color-scheme: light;
  color: #292a2a;
  background: #f2efe9;
}
body[data-theme="warm"] .site-header {
  background: rgba(24, 25, 27, .97);
  border-bottom-color: rgba(222, 160, 114, .22);
  box-shadow: 0 12px 34px rgba(25, 21, 18, .18);
}
body[data-theme="warm"] .nav a {
  color: rgba(255,255,255,.76);
}
body[data-theme="warm"] .nav a:hover,
body[data-theme="warm"] .nav a[aria-current="page"] {
  color: #fff;
  background: rgba(222, 160, 114, .13);
}
body[data-theme="warm"] .nav__contact {
  border-color: rgba(222, 160, 114, .42);
}
body[data-theme="warm"] .hero {
  background:
    radial-gradient(circle at 74% 24%, rgba(214, 145, 95, .18), transparent 36%),
    linear-gradient(120deg, #242321 0%, #302a26 54%, #1d2428 100%);
  color: #f8f4ef;
}
body[data-theme="warm"] .hero::before {
  background:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  opacity: .35;
}
body[data-theme="warm"] .hero h1 {
  color: #fffaf5;
}
body[data-theme="warm"] .hero .eyebrow {
  color: #e1a277;
}
body[data-theme="warm"] .hero .lead {
  color: rgba(255,248,241,.76);
}
body[data-theme="warm"] .hero__media {
  border-color: rgba(225, 162, 119, .34);
  background: rgba(255,255,255,.045);
  box-shadow: 0 28px 80px rgba(19,16,14,.34);
}
body[data-theme="warm"] .btn {
  background: #d69468;
  color: #261d18;
  box-shadow: 0 14px 34px rgba(151, 86, 45, .2);
}
body[data-theme="warm"] .btn--secondary {
  color: #fff9f3;
  background: rgba(255,255,255,.035);
  border-color: rgba(255,244,234,.52);
  box-shadow: none;
}
body[data-theme="warm"] .band,
body[data-theme="warm"] .band.band--paper {
  color: #292a2a;
  background: #f2efe9;
}
body[data-theme="warm"] .band:nth-of-type(even) {
  background: #e9edef;
}
body[data-theme="warm"] .band.band--dark {
  --oak: #e1a277;
  color: #f8f4ef;
  background: #25292b;
}
body[data-theme="warm"] h2,
body[data-theme="warm"] h3 {
  color: #292a2a;
}
body[data-theme="warm"] .section-head .eyebrow,
body[data-theme="warm"] .footer-title {
  color: #ad633c;
}
body[data-theme="warm"] .section-head p:not(.eyebrow),
body[data-theme="warm"] .lead,
body[data-theme="warm"] .card p,
body[data-theme="warm"] .step p,
body[data-theme="warm"] .list-panel p,
body[data-theme="warm"] .faq details {
  color: #686661;
}
body[data-theme="warm"] .card,
body[data-theme="warm"] .case-card,
body[data-theme="warm"] .step,
body[data-theme="warm"] .list-panel,
body[data-theme="warm"] .faq details,
body[data-theme="warm"] .contact-form,
body[data-theme="warm"] .contact-card {
  color: #292a2a;
  border-color: #d8d1c8;
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 48px rgba(55,45,37,.08);
}
body[data-theme="warm"] .contact-form label,
body[data-theme="warm"] .optional-fields summary {
  color: #292a2a;
}
body[data-theme="warm"] .contact-form input,
body[data-theme="warm"] .contact-form textarea,
body[data-theme="warm"] .contact-form select,
body[data-theme="warm"] .file-list li {
  border-color: #cec3b7;
  background: #fffdf9;
  color: #292a2a;
}
body[data-theme="warm"] .contact-form input::placeholder,
body[data-theme="warm"] .contact-form textarea::placeholder {
  color: #80786f;
}
body[data-theme="warm"] .contact-form input[type="file"]::file-selector-button,
body[data-theme="warm"] .file-list button {
  border-color: #c7b5a6;
  background: #f1e5da;
  color: #342821;
}
body[data-theme="warm"] .optional-fields {
  border-color: #d8d1c8;
  background: #f7f2eb;
}
body[data-theme="warm"] .form-note {
  color: #746d65;
}
body[data-theme="warm"] .band--dark .card,
body[data-theme="warm"] .band--dark .case-card,
body[data-theme="warm"] .band--dark .step,
body[data-theme="warm"] .band--dark .list-panel {
  border-color: rgba(255,255,255,.12);
  background: rgba(255,255,255,.07);
}
body[data-theme="warm"] .band--dark h2,
body[data-theme="warm"] .band--dark h3,
body[data-theme="warm"] .band--dark .card p,
body[data-theme="warm"] .band--dark .step p,
body[data-theme="warm"] .band--dark .list-panel p {
  color: #f8f4ef;
}
body[data-theme="warm"] .cta {
  color: #231b17;
  background:
    linear-gradient(90deg, rgba(255,255,255,.18), transparent 48%),
    #d69468;
}
body[data-theme="warm"] .cta h2,
body[data-theme="warm"] .cta p {
  color: #231b17;
}

/* Segment: B2B - elegancki grafit i uporządkowany charakter korporacyjny. */
body[data-theme="warm"] .footer__audience,
body[data-theme="warm"] .site-footer a:hover,
body[data-theme="warm"] .site-footer a:focus-visible,
body[data-theme="warm"] .footer__audience:hover,
body[data-theme="warm"] .footer__audience:focus-visible {
  color: #e1a277;
}
body[data-theme="warm"] .site-footer a:focus-visible,
body[data-theme="warm"] .footer__audience:focus-visible {
  outline-color: #d7915e;
}

body[data-theme="steel"] {
  --oak: #9ab2ce;
  --radius: 6px;
  color-scheme: dark;
  color: #edf2f7;
  background: #0d141d;
  background-image: none;
}
body[data-theme="steel"] .site-header {
  background: rgba(8, 13, 19, .97);
  border-bottom-color: rgba(154,178,206,.18);
  box-shadow: 0 14px 38px rgba(0,0,0,.28);
}
body[data-theme="steel"] .nav a {
  color: #aab5c1;
}
body[data-theme="steel"] .nav a:hover,
body[data-theme="steel"] .nav a[aria-current="page"] {
  color: #f2f5f8;
  background: rgba(154,178,206,.1);
}
body[data-theme="steel"] .nav__contact {
  border-color: rgba(154,178,206,.35);
}
body[data-theme="steel"] .hero {
  background:
    radial-gradient(circle at 76% 20%, rgba(94,126,163,.16), transparent 38%),
    linear-gradient(120deg, #0c131d 0%, #111c29 58%, #0b1118 100%);
}
body[data-theme="steel"] .hero::before {
  background:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 54px 54px;
  opacity: .45;
}
body[data-theme="steel"] .hero .eyebrow,
body[data-theme="steel"] .section-head .eyebrow,
body[data-theme="steel"] .footer-title {
  color: #9ab2ce;
}
body[data-theme="steel"] .hero__media {
  border-color: rgba(154,178,206,.24);
  background: rgba(255,255,255,.025);
  box-shadow: 0 30px 88px rgba(0,0,0,.38);
}
body[data-theme="steel"] .btn {
  color: #101821;
  background: #dce5ef;
  box-shadow: none;
}
body[data-theme="steel"] .btn--secondary {
  color: #edf2f7;
  background: transparent;
  border-color: rgba(220,229,239,.42);
}
body[data-theme="steel"] .band,
body[data-theme="steel"] .band.band--paper {
  color: #edf2f7;
  background: #0f1722;
}
body[data-theme="steel"] .band:nth-of-type(even) {
  background: #141e2a;
}
body[data-theme="steel"] .band.band--dark {
  background: #0a1018;
}
body[data-theme="steel"] .card,
body[data-theme="steel"] .case-card,
body[data-theme="steel"] .step,
body[data-theme="steel"] .list-panel,
body[data-theme="steel"] .faq details,
body[data-theme="steel"] .contact-form,
body[data-theme="steel"] .contact-card {
  color: #edf2f7;
  border-color: rgba(154,178,206,.17);
  background: rgba(255,255,255,.025);
  box-shadow: none;
}
body[data-theme="steel"] h1,
body[data-theme="steel"] h2,
body[data-theme="steel"] h3 {
  color: #f3f6f9;
}
body[data-theme="steel"] .lead,
body[data-theme="steel"] .section-head p:not(.eyebrow),
body[data-theme="steel"] .card p,
body[data-theme="steel"] .case-card p,
body[data-theme="steel"] .step p,
body[data-theme="steel"] .list-panel p {
  color: #9ca8b5;
}
body[data-theme="steel"] .cta {
  color: #101821;
  background: #dce5ef;
}
body[data-theme="steel"] .cta h2,
body[data-theme="steel"] .cta p {
  color: #101821;
}

/* Segment: prefabrykacja - techniczny, precyzyjny i produkcyjny. */
body[data-theme="machine"] {
  --radius: 4px;
}
body[data-theme="machine"] .section-head .eyebrow,
body[data-theme="machine"] .hero .eyebrow,
body[data-theme="machine"] .machine-badge {
  letter-spacing: .15em;
}
body[data-theme="machine"] .band:nth-of-type(even) {
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.025) 0 10px, transparent 10px 20px),
    #11171d;
}
body[data-theme="machine"] .card,
body[data-theme="machine"] .case-card,
body[data-theme="machine"] .step,
body[data-theme="machine"] .list-panel,
body[data-theme="machine"] .faq details {
  border-color: rgba(var(--tech-accent-rgb), .25);
  background: #10161c;
  box-shadow: none;
}
body[data-theme="machine"] .hero__media,
body[data-theme="machine"] .machine-card {
  border-radius: 4px;
}
body[data-theme="machine"] .interview-item p {
  color: var(--tech-muted-2);
}

body[data-theme] .band.cooperation-scope {
  --scope-navy: #22467d;
  --scope-base: #252e40;
  --scope-panel: #2e3a52;
  --scope-cream: #f2efe8;
  --scope-muted: #aeb8ca;
  --scope-line: #52607b;
  color: var(--scope-cream);
  background-color: var(--scope-base);
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 34px 34px, 34px 34px, auto;
}
.cooperation-scope__inner {
  display: grid;
  gap: 0;
}
.cooperation-scope {
  scroll-margin-top: 92px;
}
.cooperation-scope__head {
  max-width: 720px;
  margin: 0 auto 28px;
  text-align: center;
}
.cooperation-scope__head .eyebrow,
.band.cooperation-scope .section-head .eyebrow {
  color: #9db8e0;
}
body[data-theme] .cooperation-scope__head h2 {
  color: var(--scope-cream);
  font-size: clamp(1.8rem, 4vw, 2.6rem);
}
.band.cooperation-scope .cooperation-scope__head p:not(.eyebrow) {
  color: var(--scope-muted);
}
.scope-path-switch {
  display: flex;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto;
  padding: 6px;
  gap: 8px;
  background: var(--scope-panel);
  border: 1px solid var(--scope-line);
  border-radius: 999px;
}
.scope-path-button {
  min-height: 44px;
  padding: 10px 18px;
  color: var(--scope-muted);
  background: transparent;
  border: 0;
  border-radius: 999px;
  box-shadow: none;
  font-family: var(--font-head);
  font-size: .86rem;
  font-weight: 700;
  cursor: pointer;
  transition: color .25s ease, background .25s ease, box-shadow .25s ease;
}
.scope-path-button:hover { color: var(--scope-cream); }
.scope-path-button.is-active {
  color: var(--scope-cream);
  background: var(--scope-navy);
  box-shadow: 0 8px 24px rgba(18,43,80,.46);
}
.scope-path-button:focus-visible,
.scope-stage:focus-visible,
.scope-summary__cta:focus-visible {
  outline: 3px solid #8ec4ff;
  outline-offset: 3px;
}
body[data-theme] .scope-path-tagline {
  margin: 8px auto 34px;
  color: var(--scope-muted);
  font-size: .8rem;
  text-align: center;
}
.scope-rail {
  display: flex;
  align-items: stretch;
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
}
.scope-stage-wrap {
  display: flex;
  flex: 1 1 0;
  min-width: 0;
  align-items: center;
}
.scope-connector {
  flex: 0 0 18px;
  height: 2px;
  background: var(--scope-line);
  transition: background .3s ease, box-shadow .3s ease;
}
.scope-connector.is-active {
  background: #5b84c4;
  box-shadow: 0 0 10px rgba(91,132,196,.72);
}
.scope-stage {
  width: 100%;
  min-width: 0;
  min-height: 142px;
  padding: 18px 12px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: var(--scope-cream);
  text-align: center;
  background: var(--scope-panel);
  border: 1px solid var(--scope-line);
  border-radius: 8px;
  box-shadow: none;
  cursor: pointer;
  transition: transform .2s ease, background .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.scope-stage:hover { transform: translateY(-3px); }
.scope-stage.is-active,
.scope-stage--locked-sure {
  background: var(--scope-navy);
  border-color: #4a6fa8;
  box-shadow: 0 12px 34px rgba(18,43,80,.48);
}
.scope-stage--locked { cursor: default; }
.scope-stage--locked:hover { transform: none; }
.scope-stage--locked-client {
  background: var(--scope-panel);
  border-color: var(--scope-line);
  box-shadow: none;
}
.scope-stage__label {
  max-width: 100%;
  overflow-wrap: anywhere;
  color: var(--scope-cream);
  font-family: var(--font-head);
  font-size: .96rem;
  font-weight: 700;
}
.scope-pill {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  color: var(--scope-muted);
  background: rgba(139,151,173,.14);
  border: 1px solid rgba(174,184,202,.14);
  border-radius: 999px;
  font-family: var(--font-mono);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.scope-stage.is-active .scope-pill,
.scope-stage--locked-sure .scope-pill {
  color: var(--scope-cream);
  background: rgba(242,239,232,.15);
  border-color: rgba(242,239,232,.12);
}
.scope-switch {
  position: relative;
  width: 40px;
  height: 22px;
  background: var(--scope-line);
  border-radius: 999px;
  transition: background .3s ease;
}
.scope-switch span {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  background: var(--scope-cream);
  border-radius: 50%;
  transition: transform .3s ease;
}
.scope-stage.is-active .scope-switch { background: #6f99d5; }
.scope-stage.is-active .scope-switch span { transform: translateX(18px); }
.scope-benefits {
  width: 100%;
  max-width: 920px;
  margin: 30px auto 0;
  padding: 20px 22px;
  color: var(--scope-cream);
  border: 1px dashed #4a6fa8;
  border-radius: 8px;
}
body[data-theme] .scope-benefits h3 {
  margin: 0 0 10px;
  color: #9db8e0;
  font-family: var(--font-mono);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}
body[data-theme] .scope-benefit {
  position: relative;
  margin: 0;
  padding: 7px 0 7px 20px;
  color: var(--scope-cream);
  font-size: .88rem;
  line-height: 1.55;
}
.scope-benefit::before {
  content: "→";
  position: absolute;
  left: 0;
  color: #6f99d5;
}
.scope-summary {
  width: 100%;
  max-width: 920px;
  margin: 28px auto 0;
  padding: 28px;
  color: var(--scope-cream);
  background: rgba(46,58,82,.94);
  border: 1px solid var(--scope-line);
  border-radius: 10px;
  box-shadow: 0 22px 58px rgba(8,14,24,.24);
}
body[data-theme] .scope-summary h3 {
  margin: 0 0 6px;
  color: var(--scope-cream);
  font-size: 1.35rem;
}
.scope-summary__lead {
  margin: 0 0 24px;
  color: var(--scope-muted);
}
.scope-summary__columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}
.scope-summary h4 {
  margin: 0 0 12px;
  color: #9db8e0;
  font-family: var(--font-mono);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.scope-summary ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.scope-summary li {
  padding: 11px 0;
  color: var(--scope-muted);
  border-top: 1px solid var(--scope-line);
  line-height: 1.55;
}
.scope-summary li strong {
  display: block;
  margin-bottom: 3px;
  color: var(--scope-cream);
}
.scope-summary .scope-summary__cta {
  width: 100%;
  margin-top: 26px;
  color: var(--scope-cream);
  background: var(--scope-navy);
  border-color: #4a6fa8;
  box-shadow: 0 14px 34px rgba(18,43,80,.42);
}

/* Shared navigation: navy brand panel, restrained furniture texture and cyan details. */
body .site-header.site-header {
  --header-brand-width: 32%;
  position: sticky;
  min-height: 96px;
  isolation: isolate;
  background: linear-gradient(100deg, #111417 0%, #0a0d10 100%);
  border-bottom: 1px solid rgba(var(--tech-accent-rgb), .22);
  box-shadow: 0 14px 34px rgba(0,0,0,.28);
  backdrop-filter: none;
}
.site-header::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0 auto 0 0;
  width: var(--header-brand-width);
  background:
    repeating-linear-gradient(0deg, rgba(255,255,255,.022) 0 1px, transparent 1px 4px),
    repeating-linear-gradient(96deg, transparent 0 54px, rgba(var(--tech-accent-rgb), .026) 54px 55px),
    linear-gradient(105deg, #07182b 0%, #0a2946 62%, #0a2036 100%);
  box-shadow: inset -28px 0 44px rgba(0,0,0,.2);
}
.site-header::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: calc(var(--header-brand-width) - 2px);
  width: 3px;
  background: var(--tech-accent);
  box-shadow: 0 0 14px rgba(var(--tech-accent-rgb), .42);
}
.header__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: none;
  min-height: 96px;
  margin: 0;
  display: grid;
  grid-template-columns: var(--header-brand-width) minmax(0, 1fr);
  gap: 0;
}
.brand {
  width: 100%;
  min-width: 0;
  min-height: 96px;
  justify-content: center;
  padding: 12px 34px;
}
.brand__image {
  width: clamp(190px, 18vw, 320px);
  max-height: 72px;
  object-fit: contain;
}
.nav {
  min-width: 0;
  justify-content: center;
  gap: clamp(2px, .75vw, 14px);
  padding: 0 clamp(22px, 3vw, 64px);
}
body .site-header .nav a {
  position: relative;
  min-height: 48px;
  padding: 0 clamp(6px, .6vw, 12px);
  border-radius: 0;
  color: #d3d8dd;
  background: transparent;
  font-family: var(--font-body);
  font-size: clamp(.82rem, .82vw, 1rem);
  font-weight: 500;
  letter-spacing: 0;
  white-space: nowrap;
}
body .site-header .nav a:not(.nav__contact)::after {
  content: "";
  position: absolute;
  left: 7px;
  right: 7px;
  bottom: 3px;
  height: 2px;
  background: var(--tech-accent);
  box-shadow: 0 0 10px rgba(var(--tech-accent-rgb), .42);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .18s ease;
}
body .site-header .nav a:hover,
body .site-header .nav a[aria-current="page"] {
  color: #fff;
  background: transparent;
}
body .site-header .nav a:not(.nav__contact):hover::after,
body .site-header .nav a:not(.nav__contact)[aria-current="page"]::after {
  transform: scaleX(1);
}
body .site-header .nav__contact {
  min-height: 44px;
  margin-left: 8px;
  padding: 0 18px;
  border: 1px solid rgba(var(--tech-accent-rgb), .82);
  border-radius: 4px;
  box-shadow:
    inset -4px 0 0 rgba(var(--tech-accent-rgb), .62),
    0 0 16px rgba(var(--tech-accent-rgb), .09);
}
body .site-header .nav__contact:hover,
body .site-header .nav__contact[aria-current="page"] {
  border-color: var(--tech-accent);
  background: rgba(var(--tech-accent-rgb), .08);
  box-shadow:
    inset -4px 0 0 var(--tech-accent),
    0 0 20px rgba(var(--tech-accent-rgb), .18);
}
.menu-toggle {
  border-color: rgba(var(--tech-accent-rgb), .58);
  background: rgba(9, 26, 43, .86);
  color: #fff;
}

/* Ciepły wariant belki dla wybranej ścieżki klienta indywidualnego. */
body[data-theme="warm"] .site-header.site-header {
  background: linear-gradient(100deg, #171717 0%, #0d0e10 100%);
  border-bottom-color: rgba(215, 145, 94, .34);
}
body[data-theme="warm"] .site-header::before {
  background:
    repeating-linear-gradient(0deg, rgba(255,255,255,.018) 0 1px, transparent 1px 4px),
    repeating-linear-gradient(92deg, transparent 0 62px, rgba(215,145,94,.02) 62px 63px),
    linear-gradient(105deg, #17100c 0%, #2a1c15 60%, #1c120e 100%);
  box-shadow: inset -28px 0 44px rgba(0,0,0,.26);
}
body[data-theme="warm"] .site-header::after {
  background: #d7915e;
  box-shadow: 0 0 14px rgba(215,145,94,.34);
}
body[data-theme="warm"] .site-header .nav a:not(.nav__contact)::after {
  background: #d7915e;
  box-shadow: 0 0 10px rgba(215,145,94,.32);
}
body[data-theme="warm"] .site-header .nav__contact {
  border-color: rgba(215,145,94,.82);
  box-shadow:
    inset -4px 0 0 rgba(215,145,94,.62),
    0 0 16px rgba(215,145,94,.08);
}
body[data-theme="warm"] .site-header .nav__contact:hover,
body[data-theme="warm"] .site-header .nav__contact[aria-current="page"] {
  border-color: #d7915e;
  background: rgba(215,145,94,.08);
  box-shadow:
    inset -4px 0 0 #d7915e,
    0 0 20px rgba(215,145,94,.16);
}
body[data-theme="warm"] .menu-toggle {
  border-color: rgba(215,145,94,.58);
  background: rgba(42,28,21,.9);
}

html.audience-home-entry,
html.audience-picker-open,
html.audience-home-entry body,
html.audience-picker-open body {
  overflow: hidden;
}
.audience-picker {
  position: fixed;
  z-index: 1000;
  inset: 0;
  display: none;
  overflow-y: auto;
  color: #f2f5f7;
  background: rgba(12, 13, 14, .98);
  backdrop-filter: blur(16px);
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.audience-picker::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
html.sure-consent-pending .audience-picker,
html.sure-consent-open .audience-picker {
  display: none;
}
.audience-home-entry .audience-picker,
.audience-picker-open .audience-picker {
  display: block;
}
.audience-picker__inner {
  position: relative;
  width: 100%;
  min-height: 100%;
  margin: 0 auto;
  overflow: hidden;
  background: #222426;
  box-shadow: 0 0 80px rgba(0,0,0,.55);
}
.audience-picker__bar {
  position: sticky;
  z-index: 4;
  top: 0;
  display: flex;
  min-height: clamp(88px, 8vw, 116px);
  align-items: center;
  justify-content: space-between;
  padding: 16px clamp(28px, 4.5vw, 68px);
  border-bottom: 1px solid rgba(255,255,255,.14);
  background:
    linear-gradient(115deg, rgba(255,255,255,.055), transparent 42%),
    linear-gradient(100deg, #343638, #242628 64%, #1d1f21);
  box-shadow: 0 12px 36px rgba(0,0,0,.24);
}
.audience-picker__bar::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 38%;
  width: 1px;
  background: rgba(214,154,105,.9);
  box-shadow: 0 0 16px rgba(214,154,105,.26);
}
.audience-picker__bar img {
  width: clamp(170px, 18vw, 250px);
  height: auto;
  max-height: 72px;
  object-fit: contain;
  object-position: left center;
}
.audience-picker__close {
  position: relative;
  z-index: 1;
  min-height: 50px;
  padding: 0 22px;
  border: 1px solid rgba(255,255,255,.32);
  border-radius: 5px;
  color: #f2f5f7;
  background: rgba(10,11,12,.32);
  cursor: pointer;
  font-weight: 700;
  transition: border-color .2s ease, background .2s ease, color .2s ease;
}
.audience-picker__close:hover,
.audience-picker__close:focus-visible {
  border-color: #d69a69;
  color: #fff;
  background: rgba(214,154,105,.12);
}
.audience-picker[data-reselect="false"] .audience-picker__close {
  display: none;
}
.audience-picker__hero {
  position: relative;
  isolation: isolate;
  display: grid;
  min-height: clamp(720px, calc(100vh - 104px), 900px);
  grid-template-rows: 1fr auto;
  align-content: stretch;
  gap: clamp(34px, 5vw, 68px);
  padding: clamp(44px, 5vw, 76px) clamp(28px, 4.5vw, 68px) clamp(34px, 4vw, 56px);
  background-image:
    linear-gradient(90deg, rgba(28,29,30,.96) 0%, rgba(28,29,30,.82) 34%, rgba(28,29,30,.34) 64%, rgba(28,29,30,.12) 100%),
    linear-gradient(0deg, rgba(22,23,24,.8) 0%, transparent 48%),
    var(--audience-hero);
  background-position: center;
  background-size: cover;
}
.audience-picker__hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255,255,255,.035), transparent 18%);
}
.audience-picker__hero-copy {
  align-self: start;
  width: min(570px, 52%);
}
body .audience-picker__hero-copy h2 {
  margin: 0 0 24px;
  color: #f7f9fb;
  font-size: clamp(3.35rem, 6.1vw, 6.15rem);
  line-height: .96;
  letter-spacing: 0;
}
body .audience-picker__hero-copy h2 span,
body .audience-picker__hero-copy h2 strong {
  display: block;
}
body .audience-picker__hero-copy h2 strong {
  color: #abb8c3;
  font-weight: 700;
}
body .audience-picker__hero-copy p {
  max-width: 520px;
  margin: 0;
  color: #e0e3e5;
  font-size: clamp(1rem, 1.35vw, 1.22rem);
  line-height: 1.65;
}
.audience-picker__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: clamp(16px, 2vw, 24px);
}
.audience-option {
  --option-accent: #d69a69;
  --option-accent-rgb: 214, 154, 105;
  position: relative;
  display: flex;
  min-height: 292px;
  flex-direction: column;
  align-items: flex-start;
  overflow: hidden;
  padding: clamp(24px, 2.4vw, 34px);
  border: 1px solid rgba(var(--option-accent-rgb), .62);
  border-radius: 7px;
  color: #f2f5f7;
  text-decoration: none;
  background: rgba(42,31,24,.88);
  box-shadow: 0 18px 52px rgba(0,0,0,.3);
  backdrop-filter: blur(10px);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.audience-option:hover,
.audience-option:focus-visible {
  transform: translateY(-6px);
  border-color: var(--option-accent);
  background: rgba(var(--option-accent-rgb), .16);
  box-shadow: 0 28px 72px rgba(0,0,0,.42), 0 0 30px rgba(var(--option-accent-rgb), .12);
}
.audience-option--individual {
  --option-accent: #d69a69;
  --option-accent-rgb: 214, 154, 105;
  --tech-accent: var(--option-accent);
  --tech-accent-rgb: var(--option-accent-rgb);
  --tech-panel: #30231d;
  background: linear-gradient(155deg, rgba(77,52,37,.92), rgba(35,29,26,.91));
}
.audience-option--business {
  --option-accent: #62aee5;
  --option-accent-rgb: 98, 174, 229;
  --tech-accent: var(--option-accent);
  --tech-accent-rgb: var(--option-accent-rgb);
  --tech-panel: #142536;
  background: linear-gradient(155deg, rgba(22,56,84,.93), rgba(18,29,39,.92));
}
.audience-option--prefab {
  --option-accent: #b2c472;
  --option-accent-rgb: 178, 196, 114;
  --tech-accent: var(--option-accent);
  --tech-accent-rgb: var(--option-accent-rgb);
  --tech-panel: #2b3020;
  background: linear-gradient(155deg, rgba(65,70,38,.93), rgba(31,34,25,.92));
}
.audience-option .choice-icon {
  margin: 0 0 24px;
}
body .audience-option h3 {
  max-width: 15ch;
  margin: 0 0 16px;
  color: #f7f9fb;
  font-size: clamp(1.4rem, 2vw, 1.82rem);
  line-height: 1.16;
}
body .audience-option p {
  max-width: 31ch;
  margin: 0;
  color: #e1e4e6;
  font-size: clamp(.94rem, 1.1vw, 1.04rem);
  line-height: 1.55;
}
.audience-option__action {
  display: grid;
  width: 52px;
  height: 52px;
  place-items: center;
  align-self: flex-end;
  margin-top: auto;
  border: 1px solid var(--option-accent);
  border-radius: 50%;
  color: var(--option-accent);
  font-size: 1.8rem;
  line-height: 1;
  transition: color .2s ease, background .2s ease, transform .2s ease;
}
.audience-option:hover .audience-option__action,
.audience-option:focus-visible .audience-option__action {
  color: #151719;
  background: var(--option-accent);
  transform: translateX(3px);
}
.audience-picker__facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: clamp(28px, 3vw, 42px) clamp(24px, 4.5vw, 68px);
  color: #17191b;
  background: #f1f0ee;
  border-bottom: 1px solid #d4d1cd;
}
.audience-fact {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-width: 0;
  padding: 0 clamp(18px, 2.4vw, 34px);
  border-right: 1px solid #d4d1cd;
}
.audience-fact:first-child { padding-left: 0; }
.audience-fact:last-child {
  padding-right: 0;
  border-right: 0;
}
body .audience-fact h3 {
  margin: 0 0 5px;
  color: #151719;
  font-size: clamp(.96rem, 1.15vw, 1.1rem);
  line-height: 1.2;
}
body .audience-fact p {
  margin: 0;
  color: #52585d;
  font-size: .86rem;
  line-height: 1.4;
}
.audience-fact__icon {
  position: relative;
  display: block;
  width: 48px;
  height: 48px;
  color: #27313a;
}
.audience-fact__icon--precision {
  border: 2px solid currentColor;
  border-radius: 50%;
}
.audience-fact__icon--precision::before,
.audience-fact__icon--precision::after {
  content: "";
  position: absolute;
  background: currentColor;
}
.audience-fact__icon--precision::before { inset: 21px -8px auto; height: 2px; }
.audience-fact__icon--precision::after { inset: -8px auto -8px 21px; width: 2px; }
.audience-fact__icon--precision i {
  position: absolute;
  inset: 14px;
  border: 2px solid currentColor;
  border-radius: 50%;
}
.audience-fact__icon--layers i,
.audience-fact__icon--layers::before,
.audience-fact__icon--layers::after {
  content: "";
  position: absolute;
  left: 8px;
  width: 30px;
  height: 16px;
  border: 2px solid currentColor;
  transform: skewY(-20deg);
}
.audience-fact__icon--layers::before { top: 5px; }
.audience-fact__icon--layers i { top: 15px; }
.audience-fact__icon--layers::after { top: 25px; }
.audience-fact__icon--delivery i {
  position: absolute;
  top: 12px;
  left: 3px;
  width: 28px;
  height: 22px;
  border: 2px solid currentColor;
}
.audience-fact__icon--delivery i::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 26px;
  width: 14px;
  height: 13px;
  border: 2px solid currentColor;
  border-left: 0;
}
.audience-fact__icon--delivery i::after {
  content: "";
  position: absolute;
  top: 26px;
  left: 4px;
  width: 7px;
  height: 7px;
  border: 2px solid currentColor;
  border-radius: 50%;
  background: #f1f0ee;
  box-shadow: 25px 0 0 -2px #f1f0ee, 25px 0 0 0 currentColor;
}
.audience-fact__icon--shield i {
  position: absolute;
  inset: 3px 7px 1px;
  border: 2px solid currentColor;
  border-radius: 46% 46% 54% 54% / 22% 22% 72% 72%;
}
.audience-fact__icon--shield i::after {
  content: "";
  position: absolute;
  top: 13px;
  left: 9px;
  width: 12px;
  height: 7px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
}
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}
.audience-picker__status {
  margin: 0;
  padding: 16px 24px;
  color: #ffb8b8;
  text-align: center;
  background: #222426;
}
.audience-picker__status:empty { display: none; }
.footer__audience {
  align-self: start;
  padding: 0;
  border: 0;
  color: var(--tech-accent);
  background: transparent;
  cursor: pointer;
  font-weight: 700;
}
.footer__audience:hover {
  color: #fff;
}
@media (max-width: 1180px) {
  body .site-header.site-header { --header-brand-width: 38%; }
  .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-self: end;
    align-self: center;
    margin-right: 24px;
  }
  .nav {
    position: fixed;
    inset: 96px 24px auto;
    display: none;
    padding: 12px;
    background: rgba(10, 13, 17, .985);
    border: 1px solid rgba(var(--tech-accent-rgb), .3);
    border-radius: 6px;
    box-shadow: 0 24px 60px rgba(0,0,0,.42);
  }
  body.nav-open .nav { display: grid; }
  body .site-header .nav a {
    width: 100%;
    min-height: 48px;
    justify-content: center;
  }
  body .site-header .nav__contact {
    margin: 6px 0 0;
  }
}
@media (max-width: 1080px) {
  .audience-picker__bar::after { left: 42%; }
  .audience-picker__hero-copy { width: min(590px, 62%); }
  .audience-picker__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .audience-fact { padding: 18px 24px; }
  .audience-fact:first-child { padding-left: 24px; }
  .audience-fact:nth-child(2) { border-right: 0; }
  .audience-fact:nth-child(-n+2) { border-bottom: 1px solid #d4d1cd; }
  .hero { background: #20201e; }
  .hero__grid, .contact-layout { grid-template-columns: 1fr; }
  body:not([data-page="home"]) .hero__grid {
    grid-template-columns: minmax(0, 1fr);
  }
  body:not([data-page="home"]) .hero__copy {
    min-width: 0;
  }
  body[data-page="home"] .hero__grid {
    grid-template-columns: 1fr;
  }
  body[data-page="home"] .hero::after {
    top: 0;
    right: 0;
    bottom: 0;
    width: clamp(82px, 16vw, 150px);
  }
  body[data-page="home"] .hero__media {
    max-width: 860px;
    clip-path: polygon(4% 0, 100% 0, 100% 100%, 0 100%);
  }
  body[data-page="produkcja-cnc-druk-3d"] .hero__grid { grid-template-columns: 1fr; }
  body[data-page="produkcja-cnc-druk-3d"] .hero__media { max-width: 760px; }
  .card-grid--4, .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .machine-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
  .container { width: calc(100% - 32px); }
  body .site-header.site-header {
    --header-brand-width: 68%;
    min-height: 76px;
  }
  .site-header::after { width: 2px; }
  .header__inner {
    width: 100%;
    min-height: 76px;
    grid-template-columns: var(--header-brand-width) minmax(0, 1fr);
  }
  .brand {
    min-height: 76px;
    justify-content: flex-start;
    padding: 10px 20px;
  }
  .brand__image {
    width: clamp(150px, 47vw, 205px);
    max-height: 56px;
  }
  body:not([data-page="home"]) .hero h1 {
    width: 100%;
    max-width: 100%;
    overflow-wrap: break-word;
  }
  .menu-toggle {
    display: inline-flex;
    align-items: center;
    margin-right: 16px;
  }
  .audience-picker {
    padding: 0;
    background: #202224;
  }
  .audience-picker__inner { width: 100%; }
  .audience-picker__bar {
    min-height: 80px;
    padding: 12px 18px;
  }
  .audience-picker__bar::after { display: none; }
  .audience-picker__bar img {
    width: min(170px, 50vw);
    max-height: 56px;
  }
  .audience-picker__close {
    min-height: 44px;
    padding: 0 15px;
    background: rgba(7,10,14,.42);
  }
  .audience-picker__hero {
    min-height: 0;
    grid-template-rows: auto auto;
    gap: 34px;
    padding: 44px 18px 30px;
    background-image:
      linear-gradient(90deg, rgba(28,29,30,.94), rgba(28,29,30,.68)),
      linear-gradient(0deg, rgba(22,23,24,.9), transparent 54%),
      var(--audience-hero);
    background-position: 62% center;
  }
  .audience-picker__hero-copy {
    width: 100%;
    max-width: 520px;
  }
  body .audience-picker__hero-copy h2 {
    max-width: 8.5ch;
    margin-bottom: 20px;
    font-size: clamp(3rem, 14vw, 4.5rem);
  }
  body .audience-picker__hero-copy p {
    max-width: 44ch;
    font-size: .98rem;
    line-height: 1.55;
  }
  .audience-picker__grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .audience-option {
    min-height: 238px;
    padding: 24px;
  }
  .audience-option .choice-icon { margin-bottom: 18px; }
  body .audience-option h3 { max-width: 16ch; }
  .audience-picker__facts { grid-template-columns: 1fr; padding: 12px 18px; }
  .audience-fact,
  .audience-fact:first-child {
    padding: 20px 0;
    border-right: 0;
    border-bottom: 1px solid #d4d1cd;
  }
  .audience-fact:last-child { border-bottom: 0; }
  .nav {
    position: fixed;
    inset: 76px 16px auto;
    display: none;
    padding: 10px;
    background: rgba(10,13,17,.985);
    border: 1px solid rgba(var(--tech-accent-rgb), .28);
    border-radius: var(--radius);
  }
  body.nav-open .nav { display: grid; }
  .nav a { min-height: 48px; }
  .card-grid--3, .card-grid--4, .case-grid, .steps, .link-grid, .machine-grid, .footer__grid, .contact-form, .optional-fields__grid { grid-template-columns: 1fr; }
  .link-grid.link-grid--pathways { grid-template-columns: 1fr; }
  body .link-grid--pathways .card.pathway-card--active,
  body .link-grid--pathways .card.pathway-card--unavailable { grid-column: auto; }
  .cooperation-scope__inner { gap: 0; }
  .scope-path-switch {
    width: 100%;
    max-width: 440px;
    flex-direction: column;
    border-radius: 8px;
  }
  .scope-path-button {
    width: 100%;
    border-radius: 5px;
  }
  .scope-rail {
    max-width: 440px;
    flex-direction: column;
  }
  .scope-stage-wrap {
    flex-direction: column;
    align-items: stretch;
  }
  .scope-connector {
    width: 2px;
    height: 14px;
    flex-basis: 14px;
    margin: 0 auto;
  }
  .scope-stage { min-height: 118px; }
  .scope-summary { padding: 22px; }
  .scope-summary__columns { grid-template-columns: 1fr; }
  .case-card--with-media > :not(.case-card__media) {
    margin-left: 22px;
    margin-right: 22px;
  }
  .case-card__media-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .case-study__summary,
  .case-study__gallery,
  .case-study__owners,
  .case-study__journey {
    grid-template-columns: 1fr;
  }
  .case-study__gallery { grid-template-rows: none; }
  .case-study__photo--main {
    grid-row: auto;
    min-height: 340px;
  }
  .case-study__journey li { min-height: 0; }
  .lightbox {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    padding: 76px 16px 20px;
  }
  .lightbox__figure {
    grid-column: 1 / -1;
    order: -1;
  }
  .lightbox__figure img {
    max-height: calc(100vh - 190px);
  }
  .lightbox__nav {
    width: 100%;
    height: 48px;
    border-radius: 8px;
    font-size: 1.8rem;
  }
  .machine-modal {
    align-items: end;
    padding: 0;
  }
  .machine-modal__panel {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    width: calc(100% - 24px);
    height: auto;
    max-height: calc(100vh - 24px);
    overflow: visible;
    border-radius: 0;
  }
  .machine-modal__media {
    min-height: 0;
    padding: 0;
    border-radius: var(--radius);
  }
  .machine-modal__media img { max-height: 34vh; }
  .machine-modal__content {
    max-height: calc(66vh - 64px);
    overflow: auto;
    padding: 24px;
  }
  .machine-modal__columns {
    grid-template-columns: 1fr;
  }
  .hero__grid { min-height: auto; padding: 44px 0; }
  body[data-page="produkcja-cnc-druk-3d"] .hero__grid { padding: 44px 0 52px; }
  body[data-page="produkcja-cnc-druk-3d"] h1 { font-size: clamp(2.05rem, 10vw, 3rem); }
  body[data-page="produkcja-cnc-druk-3d"] .hero__media img {
    aspect-ratio: 4 / 3;
    padding: 12px;
  }
  body[data-page="home"] .hero__grid {
    padding: 52px 0 58px;
  }
  body[data-page="home"] .hero__media {
    clip-path: none;
  }
  body[data-page="home"] .hero__media::before {
    width: 38%;
  }
  body[data-page="home"] h1 {
    max-width: 11ch;
  }
  body[data-page="home"] .choice-card {
    min-height: 260px;
  }
  h1 { font-size: clamp(2.15rem, 11vw, 3rem); }
  .btn { width: 100%; }
  .cta__grid, .footer__bottom { grid-template-columns: 1fr; display: grid; }
}

/* Adaptive editorial skin. The selected audience supplies one palette to every page. */
body[data-theme="warm"] {
  --theme-page: #f4eee8;
  --theme-page-rgb: 244, 238, 232;
  --theme-surface: #fcfaf7;
  --theme-surface-alt: #ebe2d9;
  --theme-ink: #272522;
  --theme-muted: #68615b;
  --theme-accent: #b77851;
  --theme-accent-rgb: 183, 120, 81;
  --theme-header: #242220;
  --theme-header-panel: #332821;
  --theme-line: #d8c9bc;
}
body[data-theme="steel"] {
  --theme-page: #edf1f5;
  --theme-page-rgb: 237, 241, 245;
  --theme-surface: #fbfcfd;
  --theme-surface-alt: #e2e8ee;
  --theme-ink: #182330;
  --theme-muted: #5a6571;
  --theme-accent: #245d98;
  --theme-accent-rgb: 36, 93, 152;
  --theme-header: #252a2f;
  --theme-header-panel: #333a40;
  --theme-line: #c7d1db;
}
body[data-theme="machine"] {
  --theme-page: #f3f0e8;
  --theme-page-rgb: 243, 240, 232;
  --theme-surface: #fcfbf7;
  --theme-surface-alt: #e8e5da;
  --theme-ink: #25261f;
  --theme-muted: #626357;
  --theme-accent: #686f3b;
  --theme-accent-rgb: 104, 111, 59;
  --theme-header: #25251e;
  --theme-header-panel: #34352a;
  --theme-line: #d0cebd;
}
body[data-theme] {
  --ink: var(--theme-ink);
  --muted: var(--theme-muted);
  --paper: var(--theme-page);
  --paper-soft: var(--theme-surface);
  --card: var(--theme-surface);
  --line: var(--theme-line);
  --oak: var(--theme-accent);
  --tech-accent: var(--theme-accent);
  --tech-accent-rgb: var(--theme-accent-rgb);
  color-scheme: light;
  color: var(--theme-ink);
  background: var(--theme-page);
  background-image: none;
}
body[data-theme] h1,
body[data-theme] h2,
body[data-theme] h3 {
  color: var(--theme-ink);
}
body[data-theme] .eyebrow,
body[data-theme] .section-head .eyebrow,
body[data-theme] .footer-title {
  color: var(--theme-accent);
}
body[data-theme] a:focus-visible,
body[data-theme] button:focus-visible,
body[data-theme] input:focus-visible,
body[data-theme] textarea:focus-visible,
body[data-theme] select:focus-visible {
  outline-color: var(--theme-accent);
}

body[data-theme] .site-header.site-header {
  min-height: 88px;
  background: var(--theme-header);
  border-bottom: 1px solid rgba(var(--theme-accent-rgb), .58);
  box-shadow: 0 12px 30px rgba(21, 22, 22, .14);
  backdrop-filter: blur(14px);
}
body[data-theme] .site-header::before {
  background:
    linear-gradient(100deg, rgba(var(--theme-accent-rgb), .11), transparent 64%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.018) 0 1px, transparent 1px 4px),
    var(--theme-header-panel);
  box-shadow: inset -24px 0 40px rgba(0,0,0,.16);
}
body[data-theme] .site-header::after {
  width: 2px;
  background: var(--theme-accent);
  box-shadow: 0 0 14px rgba(var(--theme-accent-rgb), .34);
}
body[data-theme] .header__inner { min-height: 88px; }
body[data-theme] .brand { min-height: 88px; }
body[data-theme] .brand__image {
  width: clamp(156px, 14vw, 205px);
  max-height: 66px;
}
body[data-theme] .site-header .nav a {
  color: rgba(255,255,255,.76);
  font-size: .91rem;
}
body[data-theme] .site-header .nav a:hover,
body[data-theme] .site-header .nav a[aria-current="page"] {
  color: #fff;
  background: rgba(var(--theme-accent-rgb), .12);
}
body[data-theme] .site-header .nav a:not(.nav__contact)::after {
  background: var(--theme-accent);
  box-shadow: 0 0 10px rgba(var(--theme-accent-rgb), .28);
}
body[data-theme] .site-header .nav__contact {
  border-color: rgba(var(--theme-accent-rgb), .7);
  box-shadow: inset -3px 0 0 rgba(var(--theme-accent-rgb), .48);
}
body[data-theme] .menu-toggle {
  border-color: rgba(var(--theme-accent-rgb), .64);
  background: rgba(0,0,0,.16);
}

body[data-theme] .breadcrumbs {
  color: rgba(255,255,255,.66);
  background: color-mix(in srgb, var(--theme-header) 92%, #000);
  border-bottom-color: rgba(var(--theme-accent-rgb), .18);
}
body[data-theme] .breadcrumbs__list a { color: color-mix(in srgb, var(--theme-accent) 72%, #fff); }

body[data-theme] .hero,
body[data-theme][data-page="home"] .hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--theme-ink);
  background: var(--theme-page);
}
body[data-theme] .hero::before,
body[data-theme][data-page="home"] .hero::before,
body[data-theme][data-page="home"] .hero::after {
  display: none;
}
body[data-theme] .hero__grid,
body[data-theme][data-page="home"] .hero__grid,
body[data-theme]:not([data-page="home"]) .hero__grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  min-height: clamp(640px, calc(100svh - 92px), 790px);
  padding: clamp(42px, 5.4vh, 62px) 0;
}
body[data-theme] .hero__copy,
body[data-theme]:not([data-page="home"]) .hero__copy,
body[data-theme][data-page="home"] .hero__copy {
  position: relative;
  z-index: 3;
  width: min(100%, 680px);
  max-width: 680px;
}
body[data-theme] .hero .eyebrow {
  margin-bottom: 16px;
  color: var(--theme-accent);
  font-size: .78rem;
  letter-spacing: .18em;
}
body[data-theme] .hero h1,
body[data-theme]:not([data-page="home"]) .hero h1,
body[data-theme][data-page="home"] .hero h1 {
  max-width: 17ch;
  margin: 0;
  color: var(--theme-ink);
  font-size: clamp(3rem, 3.7vw, 4rem);
  line-height: 1.01;
  letter-spacing: 0;
  text-wrap: balance;
  text-shadow: none;
}
body[data-theme] .hero__title-accent,
body[data-theme][data-page="home"] .hero h1 span {
  display: block;
  color: var(--theme-accent);
}
body[data-theme] .hero .lead {
  max-width: 50ch;
  margin-top: 20px;
  color: var(--theme-muted);
  font-size: 1rem;
  line-height: 1.58;
}
body[data-theme] .hero .actions {
  display: grid;
  width: min(100%, 430px);
  gap: 12px;
  margin-top: 22px;
}
body[data-theme] .hero .btn,
body[data-theme] .btn {
  min-height: 54px;
  padding: 0 22px;
  border: 1px solid var(--theme-accent);
  border-radius: 7px;
  color: #fff;
  background: var(--theme-accent);
  box-shadow: 0 12px 28px rgba(var(--theme-accent-rgb), .17);
}
body[data-theme] .hero .btn::after { content: "→"; margin-left: auto; font-size: 1.35rem; font-weight: 400; }
body[data-theme] .hero .btn--secondary,
body[data-theme] .btn--secondary {
  color: var(--theme-ink);
  background: rgba(255,255,255,.54);
  border-color: color-mix(in srgb, var(--theme-accent) 70%, var(--theme-line));
  box-shadow: none;
}
body[data-theme] .hero__media,
body[data-theme]:not([data-page="home"]) .hero__media,
body[data-theme][data-page="home"] .hero__media {
  position: absolute;
  z-index: 0;
  inset: 0 calc((100vw - 100%) / -2) 0 37%;
  width: auto;
  max-width: none;
  overflow: hidden;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  clip-path: none;
}
body[data-theme] .hero__media::before { display: none; }
body[data-theme] .hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(var(--theme-page-rgb),1) 0%, rgba(var(--theme-page-rgb),.92) 17%, rgba(var(--theme-page-rgb),.5) 39%, rgba(var(--theme-page-rgb),0) 63%),
    linear-gradient(0deg, rgba(var(--theme-page-rgb),.72) 0%, rgba(var(--theme-page-rgb),0) 25%);
}
body[data-theme] .hero__media img,
body[data-theme]:not([data-page="home"]) .hero__media img,
body[data-theme][data-page="home"] .hero__media img {
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  filter: saturate(.9) contrast(1.01);
}
body[data-theme="warm"] .hero__media img { object-position: 68% center; }
body[data-theme="machine"] .hero__media img { object-position: 24% center; }

@media (min-width: 1081px) and (max-height: 760px) {
  body[data-theme] .hero__grid,
  body[data-theme][data-page="home"] .hero__grid,
  body[data-theme]:not([data-page="home"]) .hero__grid {
    min-height: calc(100svh - 92px);
    padding: 30px 0;
  }
  body[data-theme] .hero h1,
  body[data-theme]:not([data-page="home"]) .hero h1,
  body[data-theme][data-page="home"] .hero h1 {
    max-width: 19ch;
    font-size: clamp(2.75rem, 3.25vw, 3.45rem);
  }
  body[data-theme] .hero .lead {
    margin-top: 14px;
    line-height: 1.45;
  }
  body[data-theme] .hero .actions {
    width: min(100%, 620px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 18px;
  }
}

.audience-benefits {
  position: relative;
  z-index: 2;
  background: var(--theme-surface);
  border-top: 1px solid var(--theme-line);
  border-bottom: 1px solid var(--theme-line);
}
.audience-benefits__grid {
  display: grid;
  min-height: 174px;
  align-items: stretch;
}
.audience-benefits__grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.audience-benefits__grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.audience-benefit {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  padding: 30px 26px;
  border-right: 1px solid var(--theme-line);
}
.audience-benefit:first-child { padding-left: 0; }
.audience-benefit:last-child { padding-right: 0; border-right: 0; }
.audience-benefit h2 {
  margin: 0 0 6px;
  font-size: 1rem;
  line-height: 1.25;
}
.audience-benefit p {
  margin: 0;
  color: var(--theme-muted);
  font-size: .88rem;
  line-height: 1.5;
}
.audience-benefit__icon {
  position: relative;
  width: 44px;
  height: 44px;
  color: var(--theme-accent);
  border: 1px solid currentColor;
  border-radius: 50%;
}
.audience-benefit__icon::before,
.audience-benefit__icon::after,
.audience-benefit__icon i {
  content: "";
  position: absolute;
  background: currentColor;
}
.audience-benefit__icon::before { width: 18px; height: 2px; left: 12px; top: 16px; }
.audience-benefit__icon::after { width: 12px; height: 2px; left: 15px; top: 24px; }
.audience-benefit__icon i { width: 6px; height: 6px; left: 18px; top: 18px; border-radius: 50%; }
.audience-benefit__icon--layers { border-radius: 7px; transform: rotate(45deg); }
.audience-benefit__icon--layers::before { top: 13px; left: 11px; }
.audience-benefit__icon--layers::after { top: 27px; left: 11px; width: 18px; }
.audience-benefit__icon--layers i { display: none; }
.audience-benefit__icon--delivery { border-radius: 7px; }
.audience-benefit__icon--delivery::before { width: 23px; left: 8px; top: 14px; }
.audience-benefit__icon--delivery::after { width: 18px; left: 8px; top: 22px; }
.audience-benefit__icon--delivery i { left: 27px; top: 27px; }
.audience-benefit__icon--shield { border-radius: 50% 50% 58% 58%; }
.audience-benefit__icon--shield::before { width: 14px; left: 9px; top: 22px; transform: rotate(45deg); }
.audience-benefit__icon--shield::after { width: 20px; left: 16px; top: 18px; transform: rotate(-48deg); }
.audience-benefit__icon--shield i { display: none; }

body[data-theme] .band,
body[data-theme] .band:nth-of-type(even),
body[data-theme] .band.band--paper {
  padding: clamp(64px, 7vw, 94px) 0;
  color: var(--theme-ink);
  background: var(--theme-page);
}
body[data-theme] .band:nth-of-type(even) { background: var(--theme-surface-alt); }
body[data-theme] .band.band--dark {
  --oak: var(--theme-accent);
  color: var(--theme-ink);
  background: var(--theme-surface-alt);
}
body[data-theme] .section-head { max-width: 860px; }
body[data-theme] .section-head h2 { font-size: clamp(2rem, 3.5vw, 3.35rem); }
body[data-theme] .section-head p:not(.eyebrow),
body[data-theme] .lead,
body[data-theme] .band--dark .section-head p:not(.eyebrow) {
  color: var(--theme-muted);
}
body[data-theme] .card,
body[data-theme] .case-card,
body[data-theme] .step,
body[data-theme] .list-panel,
body[data-theme] .faq details,
body[data-theme] .legal article,
body[data-theme] .contact-form,
body[data-theme] .contact-card,
body[data-theme] .optional-fields,
body[data-theme] .band--dark .card,
body[data-theme] .band--dark .case-card,
body[data-theme] .band--dark .step,
body[data-theme] .band--dark .list-panel,
body[data-theme] .band--dark .faq details {
  color: var(--theme-ink);
  border-color: var(--theme-line);
  background: var(--theme-surface);
  box-shadow: 0 16px 40px rgba(35, 34, 31, .065);
}
body[data-theme] .card,
body[data-theme] .step,
body[data-theme] .list-panel { min-height: 100%; }
body[data-theme] .card p,
body[data-theme] .case-card p,
body[data-theme] .step p,
body[data-theme] .list-panel p,
body[data-theme] .legal p,
body[data-theme] .faq details p,
body[data-theme] .band--dark .card p,
body[data-theme] .band--dark .case-card p,
body[data-theme] .band--dark .step p,
body[data-theme] .band--dark .list-panel p,
body[data-theme] .band--dark .faq details p {
  color: var(--theme-muted);
}
body[data-theme] .card--link { transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
body[data-theme] .card--link:hover {
  transform: translateY(-3px);
  border-color: rgba(var(--theme-accent-rgb), .58);
  box-shadow: 0 22px 48px rgba(var(--theme-accent-rgb), .12);
}
body[data-theme] .card--link span,
body[data-theme] .case-card__top span,
body[data-theme] .case-card dt,
body[data-theme] .step span {
  color: var(--theme-accent);
}
body[data-theme] .step span {
  background: rgba(var(--theme-accent-rgb), .08);
  border-color: rgba(var(--theme-accent-rgb), .32);
  box-shadow: none;
}
body[data-theme] .case-card__media {
  background: var(--theme-surface-alt);
  border-bottom-color: var(--theme-line);
}
body[data-theme] .case-card__top,
body[data-theme] .case-card dl,
body[data-theme] .case-card dl div { border-color: var(--theme-line); }
body[data-theme] .case-card__top p,
body[data-theme] .case-card dd { color: var(--theme-muted); }

body[data-theme] .machine-card {
  color: var(--theme-ink);
  border-color: var(--theme-line);
  background: var(--theme-surface);
  box-shadow: 0 16px 38px rgba(35,34,31,.07);
}
body[data-theme] .machine-card:hover,
body[data-theme] .machine-card:focus-within {
  border-color: rgba(var(--theme-accent-rgb), .6);
  background: var(--theme-surface);
  outline-color: rgba(var(--theme-accent-rgb), .42);
}
body[data-theme] .machine-card__title { color: var(--theme-ink); }
body[data-theme] .machine-card__text { color: var(--theme-muted); }
body[data-theme] .machine-badge,
body[data-theme] .machine-tags li {
  color: var(--theme-accent);
  border-color: rgba(var(--theme-accent-rgb), .34);
}
body[data-theme] .machine-card__action {
  color: var(--theme-ink);
  border-color: rgba(var(--theme-accent-rgb), .4);
  background: rgba(var(--theme-accent-rgb), .08);
}
body[data-theme] .machine-modal { background: rgba(20,20,18,.82); }
body[data-theme] .machine-modal__content {
  border-color: rgba(var(--theme-accent-rgb), .35);
  background: color-mix(in srgb, var(--theme-header) 94%, #000);
}

/* Zaplecze produkcyjne zawsze korzysta z technicznej, ciemnej palety. */
body[data-page="produkcja-cnc-druk-3d"] .machine-card {
  color: var(--tech-text);
  border-color: rgba(var(--tech-accent-rgb), .2);
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
}
body[data-page="produkcja-cnc-druk-3d"] {
  --tech-accent: #4fc3f7;
  --tech-accent-rgb: 79, 195, 247;
}
body[data-page="produkcja-cnc-druk-3d"] .machine-card__title { color: #fff; }
body[data-page="produkcja-cnc-druk-3d"] .machine-card__text { color: rgba(242,245,247,.72); }
body[data-page="produkcja-cnc-druk-3d"] .machine-badge,
body[data-page="produkcja-cnc-druk-3d"] .machine-tags li {
  color: var(--tech-accent);
  border-color: rgba(var(--tech-accent-rgb), .36);
  background: rgba(var(--tech-accent-rgb), .065);
}
body[data-page="produkcja-cnc-druk-3d"] .machine-card__actions .machine-card__order {
  color: #071018;
  border-color: var(--tech-accent);
  background: var(--tech-accent);
  box-shadow: 0 10px 24px rgba(var(--tech-accent-rgb), .2);
}
body[data-page="produkcja-cnc-druk-3d"] .machine-card__actions .machine-card__action {
  color: #fff;
  border-color: rgba(var(--tech-accent-rgb), .42);
  background: rgba(var(--tech-accent-rgb), .08);
  box-shadow: none;
}
body[data-page="produkcja-cnc-druk-3d"] .machine-card__actions .machine-card__action:hover {
  background: rgba(var(--tech-accent-rgb), .18);
}
.capacity-infinity {
  display: inline-block;
  margin-left: 5px;
  color: #fff;
  font-family: var(--font-head);
  font-size: 3em;
  line-height: .3;
  vertical-align: -.22em;
  text-shadow: 0 0 16px rgba(var(--tech-accent-rgb), .7);
}
.machine-tags li:has(.capacity-infinity) {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  padding-right: 13px;
}
body[data-theme] .machine-modal__content h2,
body[data-theme] .machine-modal__content h3 { color: #fff; }
body[data-theme] .machine-modal__content p,
body[data-theme] .machine-modal__columns ul,
body[data-theme] .machine-modal__note { color: rgba(255,255,255,.72); }

body[data-theme] .contact-form label,
body[data-theme] .optional-fields summary { color: var(--theme-ink); }
body[data-theme] .contact-form,
body[data-theme] .contact-form label,
body[data-theme] .contact-form input,
body[data-theme] .contact-form textarea,
body[data-theme] .contact-form select,
body[data-theme] .optional-fields,
body[data-theme] .optional-fields__grid {
  min-width: 0;
  max-width: 100%;
}
body[data-theme] .contact-form input,
body[data-theme] .contact-form textarea,
body[data-theme] .contact-form select,
body[data-theme] .file-list li,
body[data-theme] .file-list button {
  color: var(--theme-ink);
  border-color: var(--theme-line);
  background: #fff;
}
body[data-theme] .contact-form input::placeholder,
body[data-theme] .contact-form textarea::placeholder { color: color-mix(in srgb, var(--theme-muted) 78%, #fff); }
body[data-theme] .contact-form input[type="file"]::file-selector-button,
body[data-theme] .file-list button {
  color: var(--theme-ink);
  border-color: rgba(var(--theme-accent-rgb), .32);
  background: rgba(var(--theme-accent-rgb), .09);
}
body[data-theme] .form-note { color: var(--theme-muted); }

body[data-theme] .cta {
  color: #fff;
  background: var(--theme-accent);
}
body[data-theme] .cta h2,
body[data-theme] .cta p { color: #fff; }
body[data-theme] .cta .btn {
  color: #fff;
  border-color: rgba(255,255,255,.28);
  background: var(--theme-header);
  box-shadow: 0 16px 38px rgba(0,0,0,.18);
}
body[data-theme] .site-footer {
  color: rgba(255,255,255,.68);
  background: color-mix(in srgb, var(--theme-header) 72%, #090a0b);
}
body[data-theme] .site-footer a { color: rgba(255,255,255,.72); }
body[data-theme] .site-footer a:hover,
body[data-theme] .footer__audience:hover { color: color-mix(in srgb, var(--theme-accent) 58%, #fff); }
body[data-theme] .footer__grid,
body[data-theme] .footer__bottom { border-color: rgba(var(--theme-accent-rgb), .22); }
body[data-theme] .footer__audience { color: color-mix(in srgb, var(--theme-accent) 68%, #fff); }

body[data-theme] .audience-picker__hero-copy h2,
body[data-theme] .audience-picker__hero-copy h2 span,
body[data-theme] .audience-option h3 {
  color: #f4f5f6;
}
body[data-theme] .audience-picker__hero-copy h2 strong { color: #aeb9c5; }
body[data-theme] .audience-picker__hero-copy p,
body[data-theme] .audience-option p { color: rgba(255,255,255,.78); }

body[data-theme] .band.cooperation-scope {
  --scope-navy: color-mix(in srgb, var(--theme-accent) 88%, #202118);
  --scope-base: var(--theme-surface-alt);
  --scope-panel: var(--theme-surface);
  --scope-cream: var(--theme-ink);
  --scope-muted: var(--theme-muted);
  --scope-line: color-mix(in srgb, var(--theme-accent) 24%, var(--theme-line));
  color: var(--theme-ink);
  background: linear-gradient(180deg, color-mix(in srgb, var(--theme-surface) 42%, var(--theme-page)) 0%, var(--theme-page) 100%);
}
body[data-theme] .cooperation-scope__head .eyebrow,
body[data-theme] .band.cooperation-scope .section-head .eyebrow {
  color: var(--theme-accent);
}
body[data-theme] .scope-path-switch {
  background: color-mix(in srgb, var(--theme-surface) 88%, var(--theme-accent));
  border-color: var(--scope-line);
  box-shadow: 0 10px 28px rgba(var(--theme-accent-rgb), .1);
}
body[data-theme] .scope-path-button {
  color: var(--theme-muted);
}
body[data-theme] .scope-path-button:hover:not(.is-active) {
  color: var(--theme-ink);
  background: color-mix(in srgb, var(--theme-accent) 8%, transparent);
}
body[data-theme] .scope-path-button.is-active {
  color: #fff;
  background: var(--scope-navy);
  box-shadow: 0 8px 22px rgba(var(--theme-accent-rgb), .22);
}
body[data-theme] .scope-path-button:focus-visible,
body[data-theme] .scope-stage:focus-visible,
body[data-theme] .scope-summary__cta:focus-visible {
  outline-color: var(--theme-accent);
}
body[data-theme] .scope-connector {
  background: var(--scope-line);
}
body[data-theme] .scope-connector.is-active {
  background: var(--theme-accent);
  box-shadow: none;
}
body[data-theme] .scope-stage {
  color: var(--theme-ink);
  background: var(--theme-surface);
  border-color: var(--scope-line);
  box-shadow: 0 8px 24px rgba(39, 39, 31, .06);
}
body[data-theme] .scope-stage:hover {
  border-color: color-mix(in srgb, var(--theme-accent) 55%, var(--theme-line));
  box-shadow: 0 12px 28px rgba(var(--theme-accent-rgb), .1);
}
body[data-theme] .scope-stage.is-dependent-locked,
body[data-theme] .scope-stage.is-dependent-locked:hover {
  transform: none;
  cursor: not-allowed;
  border-color: var(--theme-accent);
  box-shadow: 0 14px 32px rgba(var(--theme-accent-rgb), .22);
}
body[data-theme] .scope-path-button:disabled {
  cursor: not-allowed;
  opacity: 1;
}
body[data-theme] .scope-stage.is-active,
body[data-theme] .scope-stage--locked-sure {
  color: #fff;
  background: var(--scope-navy);
  border-color: var(--theme-accent);
  box-shadow: 0 14px 32px rgba(var(--theme-accent-rgb), .22);
}
body[data-theme] .scope-stage--locked-client,
body[data-theme] .scope-stage--locked-client:hover {
  color: var(--theme-ink);
  background: var(--theme-surface);
  border-color: var(--scope-line);
  box-shadow: 0 8px 24px rgba(39, 39, 31, .06);
}
body[data-theme] .scope-stage__label {
  color: var(--theme-ink);
}
body[data-theme] .scope-stage.is-active .scope-stage__label,
body[data-theme] .scope-stage--locked-sure .scope-stage__label {
  color: #fff;
}
body[data-theme] .scope-pill {
  color: var(--theme-muted);
  background: var(--theme-surface-alt);
  border-color: var(--theme-line);
}
body[data-theme] .scope-stage.is-active .scope-pill,
body[data-theme] .scope-stage--locked-sure .scope-pill {
  color: #fff;
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.22);
}
body[data-theme] .scope-switch {
  background: color-mix(in srgb, var(--theme-muted) 42%, var(--theme-surface-alt));
}
body[data-theme] .scope-switch span {
  background: var(--theme-surface);
  box-shadow: 0 1px 3px rgba(0,0,0,.18);
}
body[data-theme] .scope-stage.is-active .scope-switch {
  background: rgba(255,255,255,.42);
}
body[data-theme] .scope-stage.is-active .scope-switch span {
  background: #fff;
}
body[data-theme] .scope-benefits {
  color: var(--theme-ink);
  background: color-mix(in srgb, var(--theme-accent) 4%, var(--theme-surface));
  border-color: color-mix(in srgb, var(--theme-accent) 48%, var(--theme-line));
}
body[data-theme] .scope-benefits h3,
body[data-theme] .scope-summary h4 {
  color: var(--theme-accent);
}
body[data-theme] .scope-benefit {
  color: var(--theme-ink);
}
body[data-theme] .scope-benefit::before {
  color: var(--theme-accent);
}
body[data-theme] .scope-summary {
  color: var(--theme-ink);
  background: var(--theme-surface);
  border-color: var(--scope-line);
  box-shadow: 0 20px 48px rgba(39, 39, 31, .1);
}
body[data-theme] .scope-summary h3,
body[data-theme] .scope-summary li strong {
  color: var(--theme-ink);
}
body[data-theme] .scope-summary li {
  color: var(--theme-muted);
  border-color: var(--theme-line);
}
body[data-theme] .scope-summary .scope-summary__cta {
  color: #fff;
  background: var(--scope-navy);
  border-color: var(--theme-accent);
  box-shadow: 0 12px 28px rgba(var(--theme-accent-rgb), .2);
}
body[data-theme] .cooperation-scope__head p,
body[data-theme] .scope-path-tagline,
body[data-theme] .scope-stage p,
body[data-theme] .scope-summary p,
body[data-theme] .scope-benefit p { color: var(--theme-muted); }

@media (max-width: 1080px) {
  body[data-theme] .hero__grid,
  body[data-theme][data-page="home"] .hero__grid,
  body[data-theme]:not([data-page="home"]) .hero__grid {
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    min-height: 610px;
  }
  body[data-theme] .hero h1,
  body[data-theme]:not([data-page="home"]) .hero h1,
  body[data-theme][data-page="home"] .hero h1 { font-size: clamp(2.8rem, 5.7vw, 4.45rem); }
  .audience-benefit { grid-template-columns: 42px minmax(0, 1fr); padding: 26px 18px; }
}

@media (max-width: 820px) {
  body[data-theme] .site-header.site-header { min-height: 80px; }
  body[data-theme] .header__inner {
    min-height: 80px;
    grid-template-columns: 62% minmax(0, 1fr);
  }
  body[data-theme] .brand { min-height: 80px; padding: 10px 18px; }
  body[data-theme] .brand__image { width: min(172px, 45vw); max-height: 58px; }
  body[data-theme] .menu-toggle { min-height: 44px; margin-right: 16px; }
  body[data-theme] .nav {
    inset: 80px 14px auto;
    color: #fff;
    background: color-mix(in srgb, var(--theme-header) 96%, #000);
    border-color: rgba(var(--theme-accent-rgb), .38);
  }
  body[data-theme] .breadcrumbs { display: none; }
  body[data-theme] .hero__grid,
  body[data-theme][data-page="home"] .hero__grid,
  body[data-theme]:not([data-page="home"]) .hero__grid {
    display: block;
    width: 100%;
    min-height: 790px;
    padding: 0;
  }
  body[data-theme] .hero__copy,
  body[data-theme]:not([data-page="home"]) .hero__copy,
  body[data-theme][data-page="home"] .hero__copy {
    width: 100%;
    max-width: none;
    min-height: 790px;
    padding: 64px 24px 252px;
  }
  body[data-theme] .hero__media,
  body[data-theme]:not([data-page="home"]) .hero__media,
  body[data-theme][data-page="home"] .hero__media {
    inset: 0;
    width: 100%;
    height: 100%;
  }
  body[data-theme] .hero__media::after {
    background:
      linear-gradient(90deg, rgba(var(--theme-page-rgb),.98) 0%, rgba(var(--theme-page-rgb),.93) 42%, rgba(var(--theme-page-rgb),.24) 74%, rgba(var(--theme-page-rgb),0) 100%),
      linear-gradient(0deg, rgba(var(--theme-page-rgb),.96) 0%, rgba(var(--theme-page-rgb),.78) 29%, rgba(var(--theme-page-rgb),0) 58%);
  }
  body[data-theme] .hero h1,
  body[data-theme]:not([data-page="home"]) .hero h1,
  body[data-theme][data-page="home"] .hero h1 {
    max-width: 11ch;
    font-size: clamp(2.75rem, 11vw, 4rem);
    line-height: 1.04;
  }
  body[data-theme] .hero .eyebrow { margin-bottom: 20px; }
  body[data-theme] .hero .lead {
    max-width: 31ch;
    margin-top: 24px;
    font-size: 1rem;
    line-height: 1.62;
  }
  body[data-theme] .hero .actions { width: min(100%, 430px); margin-top: 28px; }
  body[data-theme] .hero .btn { width: 100%; }
  .audience-benefits__grid,
  .audience-benefits__grid--3,
  .audience-benefits__grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .audience-benefit,
  .audience-benefit:first-child,
  .audience-benefit:last-child {
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: start;
    padding: 24px 18px;
    border-right: 1px solid var(--theme-line);
    border-bottom: 1px solid var(--theme-line);
  }
  .audience-benefit:nth-child(even) { border-right: 0; }
  .audience-benefit:nth-last-child(-n+2) { border-bottom: 0; }
  body[data-theme] .band,
  body[data-theme] .band:nth-of-type(even),
  body[data-theme] .band.band--paper { padding: 58px 0; }
  body[data-theme] .section-head h2 { font-size: clamp(2rem, 9vw, 2.8rem); }
}

@media (max-width: 520px) {
  body[data-theme] .contact-form input[type="file"] {
    min-width: 0;
    padding: 6px;
    font-size: .86rem;
  }
  body[data-theme] .contact-form input[type="file"]::file-selector-button {
    margin-right: 7px;
    padding-inline: 9px;
  }
  body[data-theme] .hero__grid,
  body[data-theme][data-page="home"] .hero__grid,
  body[data-theme]:not([data-page="home"]) .hero__grid,
  body[data-theme] .hero__copy,
  body[data-theme]:not([data-page="home"]) .hero__copy,
  body[data-theme][data-page="home"] .hero__copy { min-height: 760px; }
  body[data-theme] .hero__copy,
  body[data-theme]:not([data-page="home"]) .hero__copy,
  body[data-theme][data-page="home"] .hero__copy { padding: 54px 20px 232px; }
  body[data-theme] .hero h1,
  body[data-theme]:not([data-page="home"]) .hero h1,
  body[data-theme][data-page="home"] .hero h1 {
    font-size: clamp(2.35rem, 10vw, 3.25rem);
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
  }
  .audience-benefits__grid,
  .audience-benefits__grid--3,
  .audience-benefits__grid--4 { grid-template-columns: 1fr; }
  .audience-benefit,
  .audience-benefit:first-child,
  .audience-benefit:last-child,
  .audience-benefit:nth-child(even),
  .audience-benefit:nth-last-child(-n+2) {
    padding: 20px 0;
    border-right: 0;
    border-bottom: 1px solid var(--theme-line);
  }
  .audience-benefit:last-child { border-bottom: 0; }
}

/* Prywatność, pomiar konwersji i szybki kontakt */
html.sure-consent-open,
html.sure-consent-open body {
  overflow: hidden;
}
.privacy-consent {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  place-items: end center;
  padding: 24px;
  background: rgba(7, 12, 20, .68);
  backdrop-filter: blur(8px);
}
.privacy-consent__panel {
  width: min(760px, 100%);
  max-height: calc(100dvh - 48px);
  overflow: auto;
  padding: clamp(22px, 3vw, 32px);
  border: 1px solid #cbd6e7;
  border-radius: 14px;
  background: #fff;
  color: #171615;
  box-shadow: 0 28px 90px rgba(0, 0, 0, .34);
}
.privacy-consent__copy h2 {
  max-width: none;
  font-size: clamp(1.45rem, 2.5vw, 1.95rem);
}
.privacy-consent__copy p:not(.eyebrow) {
  max-width: 68ch;
  margin: 12px 0 0;
  color: #4f5c70;
  line-height: 1.55;
}
.privacy-consent__summary,
.privacy-consent__details {
  margin-top: 22px;
}
.privacy-consent__policy {
  display: inline-block;
  margin-top: 14px;
  color: #173f7a;
  font-weight: 800;
}
.privacy-consent__choices {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.privacy-consent__choices legend {
  margin-bottom: 10px;
  font-family: var(--font-head);
  font-size: 1.05rem;
  font-weight: 700;
}
.privacy-consent__choices label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 64px;
  padding: 12px 14px;
  border: 1px solid #d8e1ef;
  background: #f7f9fc;
}
.privacy-consent__choices label + label { border-top: 0; }
.privacy-consent__choices label:first-of-type { border-radius: 8px 8px 0 0; }
.privacy-consent__choices label:last-of-type { border-radius: 0 0 8px 8px; }
.privacy-consent__choices span { display: grid; gap: 3px; }
.privacy-consent__choices small { color: #59667a; line-height: 1.35; }
.privacy-consent__choices input {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  accent-color: #173f7a;
}
.privacy-consent__actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.privacy-consent__actions .btn { min-height: 50px; padding: 10px 16px; }
.privacy-consent__actions .btn.privacy-consent__decision,
.privacy-consent__actions .btn.privacy-consent__decision:hover,
.privacy-consent__actions .btn.privacy-consent__decision:focus-visible {
  border-color: #173f7a;
  background: #173f7a;
  color: #fff;
  box-shadow: none;
}
.privacy-consent__text-button {
  min-height: 44px;
  padding: 8px 4px;
  border: 0;
  background: transparent;
  color: #173f7a;
  font: inherit;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.privacy-consent__summary > .privacy-consent__text-button {
  display: block;
  margin: 6px auto -8px;
}
.privacy-consent__detail-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
}
.privacy-consent__detail-actions .btn.privacy-consent__save {
  min-height: 48px;
  padding: 10px 24px;
  border-color: #173f7a;
  background: #173f7a;
  color: #fff;
  box-shadow: none;
}
.footer__privacy { white-space: nowrap; }

.site-footer .contact-save-link {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 12px;
  padding: 8px 11px;
  border: 1px solid rgba(var(--tech-accent-rgb), .32);
  border-radius: 8px;
  color: color-mix(in srgb, var(--tech-accent) 72%, #fff);
  font-size: .84rem;
  font-weight: 800;
}
.site-footer .contact-save-link::before {
  content: "+";
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border: 1px solid currentColor;
  border-radius: 50%;
  line-height: 1;
}
.site-footer .contact-save-link:hover { border-color: currentColor; }

.mobile-contact-bar { display: none; }
#formularz,
#wycena-pliku,
#szybka-wycena,
#zgloszenie {
  scroll-margin-top: 96px;
}
.form-status:focus-visible {
  outline: 3px solid var(--tech-accent);
  outline-offset: 4px;
}

@media (max-width: 820px) {
  .privacy-consent {
    align-items: end;
    padding: 10px;
  }
  .privacy-consent__panel {
    max-height: calc(100dvh - 20px);
    padding: 22px 18px max(22px, env(safe-area-inset-bottom));
  }
  .privacy-consent__copy h2 { max-width: none; }
  .privacy-consent__actions {
    grid-template-columns: 1fr;
  }
  body.has-mobile-contact-bar { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
  .mobile-contact-bar {
    position: fixed;
    z-index: 900;
    left: 0;
    right: 0;
    bottom: 0;
    display: grid;
    grid-template-columns: minmax(0, .85fr) 64px minmax(0, 1.15fr);
    gap: 6px;
    padding: 8px 10px max(8px, env(safe-area-inset-bottom));
    border-top: 1px solid rgba(255,255,255,.16);
    background: rgba(10, 14, 20, .97);
    box-shadow: 0 -10px 30px rgba(0,0,0,.22);
  }
  .mobile-contact-bar a {
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    text-align: center;
    text-decoration: none;
    font-weight: 800;
  }
  .mobile-contact-bar__phone {
    flex-direction: column;
    border: 1px solid rgba(255,255,255,.28);
    color: #fff;
    font-size: .72rem;
    line-height: 1.2;
  }
  .mobile-contact-bar__phone strong { font-size: .9rem; }
  .mobile-contact-bar__save {
    flex-direction: column;
    gap: 1px;
    border: 1px solid rgba(var(--tech-accent-rgb), .46);
    color: #fff;
    font-size: .68rem;
    line-height: 1.1;
  }
  .mobile-contact-bar__save span {
    font-size: 1.15rem;
    font-weight: 500;
    line-height: .8;
  }
  .mobile-contact-bar__save strong { font-size: .68rem; }
  .mobile-contact-bar__quote {
    background: var(--tech-accent);
    color: #07121b;
  }
  html.sure-consent-open .mobile-contact-bar,
  html.audience-picker-open .mobile-contact-bar { display: none; }
}

@media print {
  .privacy-consent,
  .mobile-contact-bar,
  .footer__privacy { display: none !important; }
}

/* Ekran pierwszego wyboru zawsze miesci sie w jednym, nieruchomym widoku. */
.audience-picker {
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
}
.audience-picker__inner {
  display: grid;
  height: 100%;
  min-height: 0;
  grid-template-rows: auto minmax(0, 1fr) auto auto;
}
.audience-picker__bar {
  position: relative;
}
.audience-picker__hero {
  min-height: 0;
  height: 100%;
  overflow: hidden;
  grid-template-rows: auto minmax(0, 1fr);
  gap: clamp(14px, 2.2vh, 24px);
  padding-top: clamp(18px, 3vh, 34px);
  padding-bottom: clamp(18px, 2.8vh, 32px);
}
.audience-picker__hero-copy {
  align-self: start;
  width: min(540px, 48%);
}
body .audience-picker__hero-copy h2 {
  margin-bottom: clamp(8px, 1.4vh, 15px);
  font-size: clamp(2.55rem, 4.25vw, 4.25rem);
}
body .audience-picker__hero-copy p {
  font-size: clamp(.9rem, 1.05vw, 1.06rem);
  line-height: 1.48;
}
.audience-picker__grid {
  min-height: 0;
}
.audience-option {
  min-height: 0;
  height: 100%;
  padding: clamp(18px, 2vw, 28px);
}
.audience-option .choice-icon {
  margin-bottom: 14px;
}
body .audience-option h3 {
  margin-bottom: 9px;
  font-size: clamp(1.22rem, 1.65vw, 1.58rem);
}
body .audience-option p {
  font-size: clamp(.82rem, .95vw, .96rem);
  line-height: 1.42;
}
.audience-option__action {
  width: 44px;
  height: 44px;
  font-size: 1.5rem;
}
.audience-picker__facts {
  padding-top: clamp(15px, 2vh, 28px);
  padding-bottom: clamp(15px, 2vh, 28px);
}

@media (max-width: 820px) {
  .audience-picker__inner {
    grid-template-rows: auto minmax(0, 1fr);
  }
  .audience-picker__bar {
    min-height: 72px;
    padding: 8px 16px;
  }
  .audience-picker__bar img {
    width: min(146px, 43vw);
    max-height: 48px;
  }
  .audience-picker__close {
    min-height: 40px;
    padding: 0 13px;
  }
  .audience-picker__hero {
    grid-template-rows: auto minmax(0, 1fr);
    gap: 14px;
    padding: 18px 16px;
  }
  .audience-picker__hero-copy {
    max-width: none;
  }
  body .audience-picker__hero-copy h2 {
    max-width: none;
    margin-bottom: 8px;
    font-size: clamp(2rem, 8.5vw, 2.75rem);
    line-height: .98;
  }
  body .audience-picker__hero-copy p {
    max-width: 42ch;
    font-size: .84rem;
    line-height: 1.35;
  }
  .audience-picker__grid {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
  .audience-option {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 40px;
    grid-template-rows: auto auto;
    align-content: center;
    align-items: center;
    column-gap: 13px;
    padding: 12px 14px;
  }
  .audience-option .choice-icon {
    grid-column: 1;
    grid-row: 1 / 3;
    margin: 0;
  }
  body .audience-option h3 {
    grid-column: 2;
    grid-row: 1;
    max-width: none;
    margin: 0 0 3px;
    font-size: clamp(1rem, 4.6vw, 1.28rem);
  }
  body .audience-option p {
    display: -webkit-box;
    grid-column: 2;
    grid-row: 2;
    max-width: none;
    overflow: hidden;
    font-size: clamp(.72rem, 3.05vw, .84rem);
    line-height: 1.3;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .audience-option__action {
    width: 38px;
    height: 38px;
    grid-column: 3;
    grid-row: 1 / 3;
    align-self: center;
    margin: 0;
    font-size: 1.35rem;
  }
  .audience-picker__facts,
  .audience-picker__status:empty {
    display: none;
  }
}

@media (max-height: 700px) {
  .audience-picker__bar {
    min-height: 64px;
    padding-block: 7px;
  }
  .audience-picker__hero {
    gap: 10px;
    padding-top: 14px;
    padding-bottom: 14px;
  }
  body .audience-picker__hero-copy h2 {
    margin-bottom: 6px;
    font-size: clamp(1.8rem, 6vh, 3.15rem);
  }
  body .audience-picker__hero-copy p {
    display: none;
  }
  .audience-picker__facts {
    display: none;
  }
}

/* Te reguły muszą pozostać po globalnych wariantach motywu. */
body[data-theme] .band .case-study h2,
body[data-theme] .band .case-study h3,
body[data-theme] .band--dark .case-study h2,
body[data-theme] .band--dark .case-study h3 {
  color: var(--theme-ink);
}

/* Kreator wyboru ścieżki dla klientów indywidualnych. */
.b2c-guide-band {
  position: relative;
  overflow: clip;
  scroll-margin-top: 96px;
}
.b2c-guide-band::before {
  position: absolute;
  inset: 0 auto 0 50%;
  width: min(760px, 54vw);
  content: "";
  pointer-events: none;
  background:
    radial-gradient(circle at 72% 28%, rgba(var(--theme-accent-rgb), .13), transparent 42%),
    linear-gradient(115deg, transparent, rgba(255,255,255,.36));
}
.b2c-guide {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding: clamp(26px, 4vw, 54px);
  border: 1px solid color-mix(in srgb, var(--theme-line) 82%, var(--theme-accent));
  border-radius: 18px;
  background: color-mix(in srgb, var(--theme-surface) 94%, transparent);
  box-shadow: 0 30px 70px rgba(39, 37, 34, .08);
}
.b2c-guide__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 36px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--theme-line);
}
body[data-theme] .band .b2c-guide h2,
body[data-theme] .band .b2c-guide h3 {
  color: var(--theme-ink);
}
.b2c-guide__header h2 {
  max-width: 20ch;
  margin: 0;
  font-size: clamp(2rem, 3.5vw, 3.35rem);
  line-height: 1.03;
  text-wrap: balance;
}
.b2c-guide__header .eyebrow { margin-bottom: 12px; }
.b2c-guide__header > div > p:last-child {
  max-width: 62ch;
  margin: 14px 0 0;
  color: var(--theme-muted);
}
.b2c-guide__progress {
  display: grid;
  grid-template-columns: repeat(3, minmax(72px, 1fr));
  min-width: 270px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.b2c-guide__progress li {
  position: relative;
  display: grid;
  justify-items: center;
  gap: 7px;
  color: var(--theme-muted);
}
.b2c-guide__progress li:not(:last-child)::after {
  position: absolute;
  top: 17px;
  left: calc(50% + 22px);
  right: calc(-50% + 22px);
  height: 1px;
  content: "";
  background: var(--theme-line);
}
.b2c-guide__progress span {
  position: relative;
  z-index: 1;
  display: grid;
  width: 35px;
  height: 35px;
  place-items: center;
  border: 1px solid var(--theme-line);
  border-radius: 50%;
  color: var(--theme-muted);
  background: var(--theme-surface);
  font-family: var(--font-heading);
  font-size: .8rem;
  font-weight: 700;
}
.b2c-guide__progress small {
  font-size: .72rem;
  letter-spacing: .04em;
}
.b2c-guide__progress li.is-active { color: var(--theme-ink); }
.b2c-guide__progress li.is-active span {
  border-color: var(--theme-accent);
  color: #fff;
  background: var(--theme-accent);
  box-shadow: 0 0 0 5px rgba(var(--theme-accent-rgb), .12);
}
.b2c-guide__step,
.b2c-guide__result {
  padding-top: clamp(28px, 4vw, 46px);
}
.b2c-guide__kicker {
  margin: 0 0 8px;
  color: var(--theme-accent);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.b2c-guide__step > h3,
.b2c-guide__result > h3 {
  max-width: 25ch;
  margin: 0;
  font-size: clamp(1.55rem, 2.5vw, 2.25rem);
  line-height: 1.12;
  text-wrap: balance;
}
.b2c-guide__tiles {
  display: grid;
  gap: 14px;
  margin-top: 24px;
}
.b2c-guide__tiles--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.b2c-guide__tiles--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.b2c-guide__tiles--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.b2c-guide__tile {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 210px;
  flex-direction: column;
  align-items: flex-start;
  padding: 24px;
  border: 1px solid var(--theme-line);
  border-radius: 12px;
  color: var(--theme-ink);
  background: var(--theme-surface);
  box-shadow: 0 12px 26px rgba(39, 37, 34, .045);
  cursor: pointer;
  font: inherit;
  text-align: left;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.b2c-guide__tile::after {
  position: absolute;
  right: 20px;
  bottom: 22px;
  width: 9px;
  height: 9px;
  border-top: 2px solid var(--theme-accent);
  border-right: 2px solid var(--theme-accent);
  color: var(--theme-accent);
  content: "";
  transform: rotate(45deg);
}
.b2c-guide__tile:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--theme-accent) 64%, var(--theme-line));
  box-shadow: 0 18px 34px rgba(var(--theme-accent-rgb), .12);
}
.b2c-guide__tile:focus-visible {
  outline: 3px solid var(--theme-accent);
  outline-offset: 3px;
}
.b2c-guide__tile[aria-pressed="true"] {
  border-color: var(--theme-accent);
  background: color-mix(in srgb, var(--theme-surface) 86%, var(--theme-accent));
  box-shadow: inset 0 0 0 1px var(--theme-accent), 0 18px 34px rgba(var(--theme-accent-rgb), .13);
}
.b2c-guide__tile--featured {
  background:
    linear-gradient(140deg, rgba(var(--theme-accent-rgb), .12), transparent 58%),
    var(--theme-surface);
}
.b2c-guide__tile[hidden] { display: none; }
.b2c-guide__tile strong {
  display: block;
  max-width: 22ch;
  margin: 18px 0 10px;
  color: var(--theme-ink);
  font-family: var(--font-heading);
  font-size: 1.08rem;
  line-height: 1.22;
}
.b2c-guide__tile > span:last-of-type:not(.b2c-guide__badge):not(.b2c-guide__number) {
  max-width: 32ch;
  padding-right: 20px;
  color: var(--theme-muted);
  font-size: .91rem;
  line-height: 1.55;
}
.b2c-guide__number {
  color: var(--theme-accent);
  font-family: var(--font-heading);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .14em;
}
.b2c-guide__badge {
  display: inline-flex;
  min-height: 29px;
  align-items: center;
  padding: 5px 9px;
  border: 1px solid rgba(var(--theme-accent-rgb), .26);
  border-radius: 999px;
  color: var(--theme-accent);
  background: rgba(var(--theme-accent-rgb), .08);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .045em;
  line-height: 1.2;
  text-transform: uppercase;
}
.b2c-guide__back,
.b2c-guide__reset {
  min-height: 44px;
  margin: -8px 0 16px;
  padding: 0;
  border: 0;
  color: var(--theme-accent);
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-size: .88rem;
  font-weight: 700;
}
.b2c-guide__back:hover,
.b2c-guide__reset:hover { text-decoration: underline; }
.b2c-guide__scope-note,
.b2c-guide__help {
  margin: 18px 0 0;
  color: var(--theme-muted);
  font-size: .88rem;
  line-height: 1.55;
}
.b2c-guide__help a,
.b2c-guide__scope-note a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  color: var(--theme-accent);
  font-weight: 700;
}
.b2c-guide__result {
  max-width: 980px;
  margin: 34px auto 0;
  padding: clamp(26px, 4vw, 44px);
  border: 1px solid color-mix(in srgb, var(--theme-accent) 42%, var(--theme-line));
  border-radius: 14px;
  background:
    linear-gradient(130deg, rgba(var(--theme-accent-rgb), .1), transparent 52%),
    var(--theme-surface-alt);
  box-shadow: 0 22px 46px rgba(39, 37, 34, .08);
}
.b2c-guide__result:focus { outline: none; }
.b2c-guide__selection {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0 0 16px;
}
.b2c-guide__selection span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid rgba(var(--theme-accent-rgb), .28);
  border-radius: 999px;
  color: var(--theme-ink);
  background: rgba(255,255,255,.42);
  font-size: .75rem;
  font-weight: 700;
}
.b2c-guide__result-lead {
  max-width: 68ch;
  margin: 16px 0 0;
  color: var(--theme-muted);
  font-size: 1rem;
  line-height: 1.65;
}
.b2c-guide__result-list {
  display: grid;
  gap: 10px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}
.b2c-guide__result-list li {
  position: relative;
  padding-left: 28px;
  color: var(--theme-ink);
  line-height: 1.5;
}
.b2c-guide__result-list li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--theme-accent);
  content: "✓";
  font-weight: 800;
}
.b2c-guide__result-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px;
  margin-top: 28px;
}
.b2c-guide__result-actions .btn { width: auto; min-width: min(100%, 300px); }
.b2c-guide__secondary-link {
  color: var(--theme-accent);
  font-weight: 700;
}
.b2c-guide__reset { margin: 20px 0 -8px; color: var(--theme-muted); }
.b2c-guide__production {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 28px;
  margin-top: 30px;
  padding: 22px 24px;
  border-radius: 10px;
  color: rgba(255,255,255,.86);
  background: var(--theme-header);
}
.b2c-guide__production strong {
  display: block;
  color: #fff;
  font-family: var(--font-heading);
  font-size: 1rem;
}
.b2c-guide__production p { margin: 5px 0 0; color: rgba(255,255,255,.66); font-size: .86rem; }
.b2c-guide__production a { color: color-mix(in srgb, var(--theme-accent) 64%, #fff); font-weight: 700; white-space: nowrap; }
.b2c-guide__noscript {
  margin: 22px 0 0;
  padding: 18px;
  border: 1px solid var(--theme-line);
  color: var(--theme-muted);
  background: var(--theme-surface-alt);
}

@media (max-width: 1040px) {
  .b2c-guide__header { grid-template-columns: 1fr; align-items: start; }
  .b2c-guide__progress { width: min(100%, 430px); }
  .b2c-guide__tiles--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  [data-guide-step="design"] .b2c-guide__tiles--3 { grid-template-columns: 1fr; }
  [data-guide-step="design"] .b2c-guide__tile { min-height: 0; }
}

@media (max-width: 760px) {
  .b2c-guide { padding: 24px 18px; border-radius: 12px; }
  .b2c-guide__header { gap: 24px; padding-bottom: 24px; }
  .b2c-guide__progress { min-width: 0; }
  .b2c-guide__progress li:not(:last-child)::after { left: calc(50% + 19px); right: calc(-50% + 19px); }
  .b2c-guide__progress small { font-size: .65rem; }
  .b2c-guide__tiles--4,
  .b2c-guide__tiles--3,
  .b2c-guide__tiles--2 { grid-template-columns: 1fr; }
  .b2c-guide__tile { min-height: 174px; padding: 21px; }
  .b2c-guide__production { grid-template-columns: 1fr; gap: 14px; }
  .b2c-guide__production a { white-space: normal; }
  .b2c-guide__result { margin-top: 24px; padding: 24px 19px; }
  .b2c-guide__result-actions { align-items: stretch; }
  .b2c-guide__result-actions .btn { width: 100%; }
}

/* Home navigation: liquid-glass treatment over the audience entry hero. */
body[data-page="home"] .site-header.site-header {
  background:
    linear-gradient(110deg, rgba(255,255,255,.105), rgba(255,255,255,.025) 38%, rgba(133,151,166,.075) 72%, rgba(255,255,255,.035)),
    rgba(22,27,31,.7);
  border-bottom: 1px solid rgba(228,236,242,.2);
  box-shadow: 0 14px 38px rgba(3,8,12,.28), inset 0 1px 0 rgba(255,255,255,.14);
  -webkit-backdrop-filter: blur(22px) saturate(132%);
  backdrop-filter: blur(22px) saturate(132%);
}
body[data-page="home"] .site-header::before {
  background:
    linear-gradient(112deg, rgba(255,255,255,.1), rgba(255,255,255,.025) 56%, rgba(var(--theme-accent-rgb),.08)),
    rgba(18,23,27,.26);
  box-shadow: inset -1px 0 0 rgba(255,255,255,.11), inset 0 1px 0 rgba(255,255,255,.08);
}
body[data-page="home"] .site-header::after {
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(231,238,244,.5) 22%, rgba(var(--theme-accent-rgb),.58) 62%, transparent);
  box-shadow: 0 0 18px rgba(var(--theme-accent-rgb),.22);
}
body[data-page="home"] .site-header .nav a:hover,
body[data-page="home"] .site-header .nav a[aria-current="page"] {
  background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.045));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 8px 22px rgba(0,0,0,.14);
}
body[data-page="home"] .audience-picker__bar {
  margin: 12px 14px 0;
  border: 1px solid rgba(231,238,243,.2);
  border-radius: 22px;
  background:
    radial-gradient(circle at 18% -60%, rgba(255,255,255,.2), transparent 42%),
    linear-gradient(112deg, rgba(255,255,255,.13), rgba(255,255,255,.035) 44%, rgba(130,148,162,.1)),
    rgba(22,27,31,.58);
  box-shadow: 0 16px 38px rgba(3,8,12,.3), inset 0 1px 0 rgba(255,255,255,.17);
  -webkit-backdrop-filter: blur(24px) saturate(135%);
  backdrop-filter: blur(24px) saturate(135%);
}
body[data-page="home"] .audience-picker__bar::after { left: 30%; }
body[data-page="home"] .audience-picker__bar > img { width: clamp(165px, 15vw, 205px); }
body[data-page="home"] .audience-picker__close {
  border-color: rgba(235,241,245,.24);
  background: linear-gradient(135deg, rgba(255,255,255,.11), rgba(255,255,255,.035));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 8px 20px rgba(0,0,0,.14);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
body[data-page="home"] .audience-picker__nav {
  position: relative;
  z-index: 2;
  display: flex;
  min-width: 0;
  flex: 1;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(2px, .4vw, 6px);
  margin-left: clamp(16px, 2vw, 28px);
}
body[data-page="home"] .audience-picker__nav a {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  padding: 0 clamp(7px, .75vw, 12px);
  border: 1px solid transparent;
  border-radius: 12px;
  color: rgba(244,247,249,.88);
  font-size: clamp(.69rem, .82vw, .86rem);
  font-weight: 700;
  line-height: 1.15;
  text-align: center;
  white-space: nowrap;
}
body[data-page="home"] .audience-picker__nav a:hover,
body[data-page="home"] .audience-picker__nav a:focus-visible {
  border-color: rgba(235,241,245,.18);
  color: #fff;
  background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.04));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.13);
}
body[data-page="home"] .audience-picker__nav .audience-picker__contact {
  border-color: rgba(214,154,105,.42);
  background: rgba(214,154,105,.08);
}
@media (max-width: 1300px) and (min-width: 901px) {
  body[data-page="home"] .audience-picker__bar { padding-inline: 28px; }
  body[data-page="home"] .audience-picker__bar > img { width: 165px; }
  body[data-page="home"] .audience-picker__nav {
    align-content: center;
    flex-wrap: wrap;
    gap: 1px;
    margin-left: 14px;
  }
  body[data-page="home"] .audience-picker__nav a {
    min-height: 38px;
    padding-inline: 5px;
    font-size: .62rem;
  }
}
@media (max-width: 900px) {
  body[data-page="home"] .audience-picker__bar { padding-inline: 18px; }
  body[data-page="home"] .audience-picker__bar img { width: 145px; }
  body[data-page="home"] .audience-picker__nav {
    justify-content: flex-start;
    margin-left: 22px;
    overflow-x: auto;
    scrollbar-width: none;
  }
  body[data-page="home"] .audience-picker__nav::-webkit-scrollbar { display: none; }
  body[data-page="home"] .audience-picker__nav a { font-size: .7rem; }
}
body[data-page="home"] .audience-picker__menu {
  position: relative;
  z-index: 8;
  margin-left: auto;
}
body[data-page="home"] .audience-picker__menu summary {
  display: inline-flex;
  min-width: 112px;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(235,241,245,.25);
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.04));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 9px 22px rgba(0,0,0,.18);
  cursor: pointer;
  font-weight: 750;
  list-style: none;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
body[data-page="home"] .audience-picker__menu summary::-webkit-details-marker { display: none; }
body[data-page="home"] .audience-picker__menu summary::after {
  margin-left: 12px;
  content: "⌄";
  transition: transform .2s ease;
}
body[data-page="home"] .audience-picker__menu[open] summary::after { transform: rotate(180deg); }
body[data-page="home"] .audience-picker__menu .audience-picker__nav {
  position: absolute;
  z-index: 12;
  top: calc(100% + 12px);
  right: 0;
  display: none;
  width: min(310px, calc(100vw - 40px));
  margin: 0;
  padding: 12px;
  overflow: visible;
  border: 1px solid rgba(235,241,245,.2);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.035)),
    rgba(25,31,36,.88);
  box-shadow: 0 22px 48px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.13);
  -webkit-backdrop-filter: blur(24px) saturate(135%);
  backdrop-filter: blur(24px) saturate(135%);
}
body[data-page="home"] .audience-picker__menu[open] .audience-picker__nav { display: grid; }
body[data-page="home"] .audience-picker__menu .audience-picker__nav a {
  min-height: 44px;
  justify-content: flex-start;
  padding: 0 14px;
  font-size: .82rem;
  text-align: left;
}
body[data-page="home"] .audience-picker__bar {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
}
body[data-page="home"] .audience-picker__bar::after { display: none; }
body[data-page="home"] .audience-picker__hero {
  padding-top: clamp(138px, 13vh, 166px);
}
@media (max-width: 900px) {
  body[data-page="home"] .audience-picker__hero { padding-top: 126px; }
}

/* Unified liquid-glass navigation on every standard page. */
body:not([data-page="home"]) .site-header.site-header {
  position: absolute;
  z-index: 50;
  top: 0;
  right: 0;
  left: 0;
  margin: 12px 14px 0;
  min-height: 90px;
  overflow: visible;
  border: 1px solid rgba(231,238,243,.2);
  border-radius: 22px;
  background:
    radial-gradient(circle at 18% -60%, rgba(255,255,255,.2), transparent 42%),
    linear-gradient(112deg, rgba(255,255,255,.13), rgba(255,255,255,.035) 44%, rgba(130,148,162,.1)),
    rgba(22,27,31,.68);
  box-shadow: 0 16px 38px rgba(3,8,12,.28), inset 0 1px 0 rgba(255,255,255,.17);
  -webkit-backdrop-filter: blur(24px) saturate(135%);
  backdrop-filter: blur(24px) saturate(135%);
}
body[data-offer-page]:not([data-page="home"]) .offer-hero {
  padding-top: calc(clamp(72px, 9vw, 120px) + 108px);
}
body[data-page="produkcja-cnc-druk-3d"] .hero__grid {
  padding-top: calc(clamp(58px, 7vw, 86px) + 108px);
}
body:not([data-page="home"]) .hero--simple { padding-top: 204px; }
body:not([data-page="home"]) .site-header::before,
body:not([data-page="home"]) .site-header::after { display: none; }
body:not([data-page="home"]) .site-header .header__inner {
  min-height: 88px;
  grid-template-columns: minmax(180px, 1fr) auto;
  padding: 0 clamp(18px, 3vw, 42px);
}
body:not([data-page="home"]) .site-header .brand {
  width: auto;
  min-height: 88px;
  justify-content: flex-start;
}
body:not([data-page="home"]) .site-header .brand__image {
  width: clamp(150px, 15vw, 205px);
  max-height: 64px;
}
body:not([data-page="home"]) .site-header .menu-toggle {
  display: inline-flex;
  min-width: 112px;
  min-height: 48px;
  grid-column: 2;
  grid-row: 1;
  align-items: center;
  justify-content: center;
  justify-self: end;
  border: 1px solid rgba(235,241,245,.25);
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.04));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 9px 22px rgba(0,0,0,.18);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
body:not([data-page="home"]) .site-header .nav {
  position: absolute;
  z-index: 20;
  top: calc(100% + 12px);
  right: clamp(18px, 3vw, 42px);
  display: none;
  width: min(310px, calc(100vw - 40px));
  margin: 0;
  padding: 12px;
  grid-template-columns: 1fr;
  gap: 2px;
  border: 1px solid rgba(235,241,245,.2);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.035)),
    rgba(25,31,36,.92);
  box-shadow: 0 22px 48px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.13);
  -webkit-backdrop-filter: blur(24px) saturate(135%);
  backdrop-filter: blur(24px) saturate(135%);
}
body:not([data-page="home"]).nav-open .site-header .nav { display: grid; }
body:not([data-page="home"]) .site-header .nav a,
body:not([data-page="home"]) .site-header .nav__contact {
  min-height: 44px;
  justify-content: flex-start;
  padding: 0 14px;
  border: 1px solid transparent;
  border-radius: 12px;
  font-size: .82rem;
  text-align: left;
}

/* Exact shared geometry for every liquid-glass header. */
body[data-page="home"] .site-header.site-header,
body[data-page="home"] .audience-picker__bar,
body:not([data-page="home"]) .site-header.site-header {
  position: absolute;
  z-index: 50;
  top: 0;
  right: 0;
  left: 0;
  min-height: 64px;
  height: 64px;
  margin: 8px 10px 0;
  padding: 0 28px;
  border-radius: 11px;
}
body[data-page="home"] .audience-picker__bar > img,
body:not([data-page="home"]) .site-header .brand__image {
  width: 170px;
  height: auto;
  max-height: 48px;
}
body[data-page="home"] .site-header .header__inner,
body:not([data-page="home"]) .site-header .header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 62px;
  height: 62px;
  padding: 0;
}
body:not([data-page="home"]) .site-header .brand {
  min-height: 62px;
  height: 62px;
}
body[data-page="home"] .audience-picker__menu summary,
body:not([data-page="home"]) .site-header .menu-toggle {
  min-width: 96px;
  min-height: 40px;
  height: 40px;
  border-radius: 8px;
}
body[data-page="home"] .audience-picker__menu .audience-picker__nav,
body:not([data-page="home"]) .site-header .nav {
  top: calc(100% + 8px);
  border-radius: 9px;
}
body[data-page="home"] .audience-picker__hero { padding-top: 92px; }
body[data-offer-page]:not([data-page="home"]) .offer-hero {
  padding-top: calc(clamp(72px, 9vw, 120px) + 78px);
}
body[data-page="produkcja-cnc-druk-3d"] .hero__grid {
  padding-top: calc(clamp(58px, 7vw, 86px) + 78px);
}
body:not([data-page="home"]) .hero--simple { padding-top: 174px; }
@media (max-width: 900px) {
  body[data-page="home"] .audience-picker__bar,
  body:not([data-page="home"]) .site-header.site-header {
    margin: 7px 8px 0;
    padding-inline: 18px;
  }
  body[data-page="home"] .audience-picker__bar > img,
  body:not([data-page="home"]) .site-header .brand__image { width: 150px; }
  body[data-page="home"] .audience-picker__hero { padding-top: 88px; }
}

/* Identical logo origin and a frameless hamburger on every page. */
body:not([data-page="home"]) .site-header .brand {
  justify-content: flex-start;
  padding: 0;
  transform: translateX(-20px);
}
body[data-page="home"] .audience-picker__menu summary,
body:not([data-page="home"]) .site-header .menu-toggle {
  position: relative;
  width: 42px;
  min-width: 42px;
  height: 42px;
  min-height: 42px;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  color: #f3f6f8;
  background: transparent;
  box-shadow: none;
  font-size: 0;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
body[data-page="home"] .audience-picker__menu summary::before,
body:not([data-page="home"]) .site-header .menu-toggle::before {
  content: "";
  width: 27px;
  height: 2px;
  border-radius: 99px;
  color: currentColor;
  background: currentColor;
  box-shadow: 0 -8px 0 currentColor, 0 8px 0 currentColor;
}
body[data-page="home"] .audience-picker__menu summary::after { display: none; }
body[data-page="home"] .audience-picker__menu summary:hover,
body[data-page="home"] .audience-picker__menu summary:focus-visible,
body:not([data-page="home"]) .site-header .menu-toggle:hover,
body:not([data-page="home"]) .site-header .menu-toggle:focus-visible {
  color: #fff;
  background: transparent;
  box-shadow: none;
}

/* Anchor the hamburger to the header itself, independent of legacy page grids. */
body:not([data-page="home"]) .site-header .menu-toggle {
  position: absolute;
  top: 10px;
  right: 0;
  z-index: 24;
  margin: 0;
}
@media (max-width: 900px) {
  body:not([data-page="home"]) .site-header .menu-toggle { right: 0; }
}

/* Quiet, editorial dropdown shared by the homepage and all inner pages. */
body[data-page="home"] .audience-picker__menu .audience-picker__nav,
body:not([data-page="home"]) .site-header .nav {
  width: min(300px, calc(100vw - 32px));
  padding: 16px 14px;
  gap: 2px;
  border: 1px solid rgba(222, 230, 235, .10);
  border-radius: 11px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.055), transparent 42%),
    rgba(18, 23, 27, .91);
  box-shadow: 0 18px 42px rgba(0,0,0,.28);
  -webkit-backdrop-filter: blur(28px) saturate(112%);
  backdrop-filter: blur(28px) saturate(112%);
}
body:not([data-page="home"]) .site-header .nav {
  left: auto !important;
  right: 0 !important;
  transform: none !important;
}
body[data-page="home"] .audience-picker__menu .audience-picker__nav a,
body:not([data-page="home"]) .site-header .nav a,
body:not([data-page="home"]) .site-header .nav__contact {
  display: grid;
  grid-template-columns: 8px minmax(0, 1fr) auto;
  column-gap: 10px;
  min-height: 43px;
  align-items: center;
  justify-content: stretch;
  padding: 6px 8px;
  border: 0;
  border-radius: 7px;
  color: rgba(238,242,244,.74);
  background: transparent;
  box-shadow: none;
  font-size: .84rem;
  font-weight: 590;
  line-height: 1.25;
  text-decoration: none;
  transition: color .18s ease, background-color .18s ease;
}
body[data-page="home"] .audience-picker__menu .audience-picker__nav a::before,
body:not([data-page="home"]) .site-header .nav a::before {
  position: static;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  content: "";
  background: rgb(var(--theme-accent-rgb));
  box-shadow: 0 0 9px rgba(var(--theme-accent-rgb),.42);
  opacity: 0;
}
body[data-page="home"] .audience-picker__menu .audience-picker__nav a::after,
body:not([data-page="home"]) .site-header .nav a::after {
  position: static;
  width: auto;
  height: auto;
  content: "\2192";
  color: rgba(238,242,244,.45);
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: 1;
  transform: none;
  transition: color .18s ease, transform .18s ease;
}
body[data-page="home"] .audience-picker__menu .audience-picker__nav a:hover,
body[data-page="home"] .audience-picker__menu .audience-picker__nav a:focus-visible,
body:not([data-page="home"]) .site-header .nav a:hover,
body:not([data-page="home"]) .site-header .nav a:focus-visible {
  border: 0;
  color: #fff;
  background: rgba(255,255,255,.035);
  box-shadow: none;
}
body[data-page="home"] .audience-picker__menu .audience-picker__nav a:hover::after,
body[data-page="home"] .audience-picker__menu .audience-picker__nav a:focus-visible::after,
body:not([data-page="home"]) .site-header .nav a:hover::after,
body:not([data-page="home"]) .site-header .nav a:focus-visible::after {
  color: rgba(255,255,255,.82);
  transform: translateX(3px);
}
body:not([data-page="home"]) .site-header .nav a[aria-current="page"] {
  color: #fff;
  background: transparent !important;
  box-shadow: none;
}
body:not([data-page="home"]) .site-header .nav a[aria-current="page"]::before { opacity: 1; }
body[data-page="home"] .audience-picker__menu .audience-picker__contact,
body:not([data-page="home"]) .site-header .nav__contact {
  margin-top: 10px;
  border: 0;
  color: rgba(238,242,244,.86);
  background: transparent;
}
@media (max-width: 900px) {
  body:not([data-page="home"]) .site-header .nav { right: 0 !important; }
}

@media (prefers-reduced-motion: reduce) {
  .b2c-guide__tile { transition: none; }
  .b2c-guide__tile:hover { transform: none; }
}

/* One identical glass bar on the homepage and every inner page. */
body[data-page="home"] .audience-picker__bar,
body:not([data-page="home"]) .site-header.site-header {
  border: 1px solid rgba(231,238,243,.2) !important;
  background:
    radial-gradient(circle at 18% -60%, rgba(255,255,255,.2), transparent 42%),
    linear-gradient(112deg, rgba(255,255,255,.13), rgba(255,255,255,.035) 44%, rgba(130,148,162,.1)),
    rgba(22,27,31,.58) !important;
  box-shadow: 0 16px 38px rgba(3,8,12,.3), inset 0 1px 0 rgba(255,255,255,.17) !important;
  -webkit-backdrop-filter: blur(24px) saturate(135%) !important;
  backdrop-filter: blur(24px) saturate(135%) !important;
  background-color: rgba(22,27,31,.62) !important;
}
body:not([data-page="home"]) .site-header .brand { transform: none !important; }

/* 2026 sales architecture: one concise homepage, three audience paths. */
.home-hub{position:relative;min-height:100svh;padding:clamp(110px,13vh,160px) 0 70px;background:linear-gradient(90deg,rgba(12,15,18,.9),rgba(12,15,18,.58) 56%,rgba(12,15,18,.35)),url('../assets/glowny-wybor-tlo-v2.webp') center/cover no-repeat;color:#fff}
.home-hub:after{position:absolute;inset:auto 0 0;height:34%;content:"";background:linear-gradient(transparent,rgba(10,13,15,.62));pointer-events:none}
.home-hub .container{position:relative;z-index:1}
.home-hub__intro{max-width:760px;margin-bottom:38px}
.home-hub__intro .eyebrow{color:#d7b18f}
.home-hub__intro h1{max-width:13ch;margin:0 0 18px;color:#fff;font-size:clamp(3rem,6.6vw,6.4rem);line-height:.95;letter-spacing:-.045em}
.home-hub__intro .lead{max-width:700px;margin:0;color:#e3e6e8;font-size:clamp(1rem,1.55vw,1.22rem);line-height:1.65}
.home-hub__choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-hub__card{display:flex;min-height:310px;min-width:0;flex-direction:column;padding:30px;border:1px solid rgba(255,255,255,.24);border-radius:20px;color:#fff;background:rgba(22,27,31,.58);box-shadow:0 24px 60px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.18);backdrop-filter:blur(18px);text-decoration:none;transition:transform .2s,border-color .2s,background .2s}
.home-hub__card:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.48);background:rgba(31,38,44,.72)}
.home-hub__card>span:first-child{width:max-content;margin-bottom:42px;padding:7px 11px;border:1px solid currentColor;border-radius:999px;color:#d7b18f;font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.home-hub__card--business>span:first-child{color:#78b8df}.home-hub__card--makers>span:first-child{color:#b7c873}
.home-hub__card h2{margin:0 0 12px;color:#fff;font-size:clamp(1.45rem,2.3vw,2.15rem);line-height:1.08}
.home-hub__card p{margin:0;color:#d3d8dc;line-height:1.58}
.home-hub__card strong{margin-top:auto;padding-top:26px;color:#fff;font-size:.88rem}
.home-proof{padding:clamp(70px,8vw,110px) 0;background:#f2f1ed}
.home-proof__facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:70px}
.home-proof__facts article{padding:24px;border-top:2px solid #6e777e}
.home-proof__facts strong{display:block;margin-bottom:7px;color:#242729;font-size:1.35rem}.home-proof__facts p{margin:0;color:#62676a;line-height:1.5}
.home-proof__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-proof__card{overflow:hidden;border:1px solid #d5d7d6;border-radius:20px;background:#fff;text-decoration:none;box-shadow:0 18px 46px rgba(31,37,40,.08)}
.home-proof__card img{width:100%;height:230px;object-fit:cover}.home-proof__card div{padding:24px}.home-proof__card span{color:#647079;font-size:.7rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.home-proof__card h3{margin:10px 0 8px;color:#242729;font-size:1.3rem}.home-proof__card p{margin:0;color:#666b6e;line-height:1.55}
.home-contact{padding:clamp(68px,8vw,105px) 0;background:#1b2329;color:#fff}.home-contact__inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.home-contact h2{max-width:720px;margin:0 0 12px;color:#fff}.home-contact p{max-width:700px;margin:0;color:#c5cdd2;line-height:1.6}.home-contact .actions{flex:0 0 auto}
@media(max-width:900px){.home-hub{min-height:auto}.home-hub__choices,.home-proof__grid{grid-template-columns:1fr}.home-hub__card{min-height:250px}.home-proof__facts{grid-template-columns:repeat(2,minmax(0,1fr))}.home-contact__inner{display:block}.home-contact .actions{margin-top:28px}}
@media(max-width:560px){.home-hub{padding-top:105px}.home-hub__intro h1{font-size:clamp(2.75rem,14vw,4.3rem)}.home-hub__card{min-height:230px;padding:24px}.home-proof__facts{grid-template-columns:1fr}.home-proof__card img{height:210px}}

/* Final shared navigation contract and the original three-route colour system. */
body[data-page="home"] .audience-picker__bar,
body:not([data-page="home"]) .site-header.site-header {
  box-sizing: border-box;
  width: auto;
  min-height: 64px;
  height: 64px;
  margin: 8px 10px 0;
  padding: 0 28px;
  border: 1px solid rgba(231,238,243,.20) !important;
  border-radius: 11px;
  background:
    radial-gradient(circle at 18% -60%,rgba(255,255,255,.20),transparent 42%),
    linear-gradient(112deg,rgba(255,255,255,.13),rgba(255,255,255,.035) 44%,rgba(130,148,162,.10)),
    rgba(22,27,31,.62) !important;
  box-shadow: 0 16px 38px rgba(3,8,12,.30),inset 0 1px 0 rgba(255,255,255,.17) !important;
  -webkit-backdrop-filter: blur(24px) saturate(135%) !important;
  backdrop-filter: blur(24px) saturate(135%) !important;
}
body:not([data-page="home"]) .site-header .header__inner {
  width: 100%;
  max-width: none;
  min-height: 62px;
  height: 62px;
  margin: 0;
  padding: 0;
}
body[data-page="home"] .audience-picker__bar > img,
body[data-page="home"] .site-header .brand__image,
body:not([data-page="home"]) .site-header .brand__image {
  width: 170px;
  max-height: 48px;
}
body[data-page="home"] .site-header .brand,
body:not([data-page="home"]) .site-header .brand {
  width: auto;
  min-height: 62px;
  height: 62px;
  justify-content: flex-start;
  padding: 0;
  transform: none !important;
}
body[data-page="home"] .audience-picker__menu summary,
body[data-page="home"] .site-header .menu-toggle,
body:not([data-page="home"]) .site-header .menu-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  min-width: 42px;
  height: 42px;
  min-height: 42px;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  color: #f3f6f8;
  background: transparent;
  box-shadow: none;
  font-size: 0;
}
body[data-page="home"] .site-header .menu-toggle::before,
body:not([data-page="home"]) .site-header .menu-toggle::before {
  width: 27px;
  height: 2px;
  border-radius: 99px;
  content: "";
  color: currentColor;
  background: currentColor;
  box-shadow: 0 -8px 0 currentColor,0 8px 0 currentColor;
}
body[data-page="home"] .site-header .menu-toggle,
body:not([data-page="home"]) .site-header .menu-toggle { position:absolute;top:10px;right:0;margin:0!important; }
body[data-page="home"] .site-header::before,
body[data-page="home"] .site-header::after { display:none; }
body[data-page="home"] .site-header.site-header,
body:not([data-page="home"]) .site-header.site-header { background-color:rgba(22,27,31,.62)!important; }
body[data-page="home"] .site-header .nav {
  position: absolute;
  z-index: 20;
  top: calc(100% + 8px);
  right: 0;
  display: none;
  width: min(300px,calc(100vw - 32px));
  padding: 16px 14px;
  gap: 2px;
  grid-template-columns: 1fr;
  border: 1px solid rgba(222,230,235,.10);
  border-radius: 11px;
  background: linear-gradient(145deg,rgba(255,255,255,.055),transparent 42%),rgba(18,23,27,.91);
  box-shadow: 0 18px 42px rgba(0,0,0,.28);
  -webkit-backdrop-filter: blur(28px) saturate(112%);
  backdrop-filter: blur(28px) saturate(112%);
}
body[data-page="home"].nav-open .site-header .nav { display:grid; }
body[data-page="home"] .site-header .nav a,
body[data-page="home"] .site-header .nav__contact {
  min-height: 43px;
  justify-content: flex-start;
  padding: 6px 12px;
  border: 0;
  border-radius: 7px;
  color: rgba(238,242,244,.76);
  background: transparent;
  box-shadow: none;
  font-size: .84rem;
}
body[data-page="home"] .site-header .nav a:hover,
body[data-page="home"] .site-header .nav a:focus-visible { color:#fff;background:rgba(255,255,255,.04); }

.home-hub__card:not(.home-hub__card--business):not(.home-hub__card--makers) {
  border-color: rgba(224,177,139,.40);
  background: linear-gradient(145deg,rgba(104,67,47,.72),rgba(55,42,34,.62));
}
.home-hub__card--business {
  border-color: rgba(132,184,219,.40);
  background: linear-gradient(145deg,rgba(36,77,107,.74),rgba(28,43,55,.64));
}
.home-hub__card--makers {
  border-color: rgba(183,200,115,.42);
  background: linear-gradient(145deg,rgba(82,91,47,.74),rgba(43,49,34,.66));
}
.home-hub__card:not(.home-hub__card--business):not(.home-hub__card--makers):hover { background: linear-gradient(145deg,rgba(118,76,52,.82),rgba(62,46,36,.74)); }
.home-hub__card--business:hover { background: linear-gradient(145deg,rgba(42,91,126,.84),rgba(31,49,63,.76)); }
.home-hub__card--makers:hover { background: linear-gradient(145deg,rgba(94,105,53,.84),rgba(49,57,37,.78)); }

@media(max-width:900px){
  body[data-page="home"] .site-header.site-header,
  body[data-page="home"] .audience-picker__bar,
  body:not([data-page="home"]) .site-header.site-header { margin:7px 8px 0;padding-inline:18px; }
  body[data-page="home"] .audience-picker__bar > img,
  body[data-page="home"] .site-header .brand__image,
  body:not([data-page="home"]) .site-header .brand__image { width:150px; }
}
