:root {
  --bg: #050509;
  --bg-soft: #0b0b11;
  --panel: #101017;
  --panel-2: #15151d;
  --text: #f7f7f8;
  --muted: #a8a8b2;
  --line: rgba(255,255,255,.11);
  --red: #ef0917;
  --red-dark: #85000a;
  --red-soft: rgba(239,9,23,.16);
  --shadow: 0 30px 70px rgba(0,0,0,.45);
  --radius: 22px;
  --max: 1220px;
}



html.skip-splash .splash-screen { display: none !important; }
html.skip-splash body.splash-active { overflow: auto; }
body.splash-active {
  overflow: hidden;
}

.splash-screen {
  position: fixed;
  inset: 0;
  z-index: 5000;
  display: grid;
  place-items: center;
  padding: 24px;
  background:
    radial-gradient(circle at 50% 42%, rgba(239,9,23,.25), transparent 24rem),
    linear-gradient(180deg, #020205 0%, #07070b 58%, #030306 100%);
  opacity: 1;
  visibility: visible;
  transition: opacity .6s ease, visibility .6s ease;
  overflow: hidden;
}

.splash-screen::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(115deg, transparent 18%, rgba(239,9,23,.07) 50%, transparent 74%),
    repeating-linear-gradient(120deg, transparent 0 42px, rgba(255,255,255,.015) 43px 44px);
  pointer-events: none;
}

.splash-screen.is-leaving {
  opacity: 0;
  visibility: hidden;
}

.splash-enter {
  position: relative;
  z-index: 1;
  width: min(88vw, 620px);
  display: grid;
  justify-items: center;
  gap: 18px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
}

.splash-enter img {
  position: relative;
  z-index: 2;
  width: min(100%, 540px);
  max-height: 68vh;
  object-fit: contain;
  border-radius: 28px;
  box-shadow:
    0 32px 85px rgba(0,0,0,.78),
    0 0 44px rgba(239,9,23,.16);
  transition: transform .35s ease, filter .35s ease;
}

.splash-enter:hover img,
.splash-enter:focus-visible img {
  transform: scale(1.025);
  filter: brightness(1.06);
}

.splash-enter:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 12px;
  border-radius: 28px;
}

.splash-label {
  position: relative;
  z-index: 2;
  font-size: .82rem;
  font-weight: 950;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: #f5f5f7;
}

.splash-arrow {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 50%;
  color: var(--red);
  font-size: 1.35rem;
  font-weight: 900;
  animation: splashArrow 1.7s ease-in-out infinite;
}

.splash-lines {
  position: absolute;
  inset: -12%;
  z-index: 0;
  opacity: .68;
  background:
    linear-gradient(104deg, transparent 0 42%, rgba(239,9,23,.28) 43%, transparent 44%),
    linear-gradient(112deg, transparent 0 58%, rgba(239,9,23,.17) 59%, transparent 60%);
  filter: blur(.4px);
  animation: splashGlow 2.7s ease-in-out infinite;
}

@keyframes splashArrow {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(7px); }
}

@keyframes splashGlow {
  0%, 100% { opacity: .46; transform: scale(.98); }
  50% { opacity: .85; transform: scale(1.02); }
}

@media (max-width: 780px) {
  .splash-screen {
    padding: 18px;
  }

  .splash-enter {
    width: min(92vw, 470px);
    gap: 16px;
  }

  .splash-enter img {
    width: min(100%, 430px);
    max-height: 64vh;
    border-radius: 22px;
  }

  .splash-label {
    font-size: .7rem;
    letter-spacing: .18em;
  }

  .splash-arrow {
    width: 38px;
    height: 38px;
  }
}

@media (max-width: 390px) {
  .splash-enter {
    width: 94vw;
  }

  .splash-enter img {
    max-height: 61vh;
  }
}

@media (prefers-reduced-motion: reduce) {
  .splash-arrow,
  .splash-lines {
    animation: none;
  }
}


* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  overflow-x: hidden;
  background:
    radial-gradient(circle at 8% 15%, rgba(239,9,23,.08), transparent 28rem),
    linear-gradient(180deg, #050509, #08080c 60%, #050509);
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
}
body.menu-open { overflow: hidden; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
.container { width: min(calc(100% - 40px), var(--max)); margin-inline: auto; }
.section { padding: 104px 0; position: relative; }
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.skip-link {
  position: fixed; left: 16px; top: -60px; z-index: 9999;
  background: #fff; color: #000; padding: 12px 16px; border-radius: 8px;
}
.skip-link:focus { top: 16px; }

.site-header {
  position: fixed; inset: 0 0 auto; z-index: 1000;
  border-bottom: 1px solid transparent;
  transition: .25s ease;
}
.site-header.scrolled {
  background: rgba(5,5,9,.86);
  backdrop-filter: blur(16px);
  border-color: var(--line);
}
.nav-wrap { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: flex; align-items: center; gap: 12px; font-size: .9rem; letter-spacing: .12em; white-space: nowrap; }
.brand img { width: 54px; height: 54px; object-fit: cover; border-radius: 10px; }
.brand b { color: var(--red); }
.main-nav { display: flex; align-items: center; gap: 22px; font-size: .88rem; font-weight: 700; }
.main-nav > a:not(.nav-cta) { color: #d9d9df; }
.main-nav > a:not(.nav-cta):hover { color: #fff; }
.nav-dropdown { position: relative; }
.nav-dropdown-toggle {
  display: inline-flex; align-items: center; gap: 7px; padding: 10px 0;
  border: 0; background: transparent; color: #d9d9df;
  font: inherit; font-weight: 700; cursor: pointer; transition: color .2s ease;
}
.nav-dropdown-toggle:hover,
.nav-dropdown.open .nav-dropdown-toggle { color: #fff; }
.nav-dropdown-toggle:focus-visible { color: #fff; outline: 2px solid rgba(239,9,23,.65); outline-offset: 4px; border-radius: 4px; }
.nav-dropdown-toggle span { color: var(--red); font-size: 1rem; transition: transform .2s ease; }
.nav-dropdown.open .nav-dropdown-toggle span { transform: rotate(180deg); }
.nav-dropdown-menu {
  position: absolute; top: calc(100% + 14px); left: 50%; width: 310px;
  padding: 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px;
  background: rgba(8,8,12,.98); box-shadow: 0 24px 60px rgba(0,0,0,.5);
  opacity: 0; visibility: hidden; transform: translate(-50%, -8px);
  pointer-events: none; transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}
.nav-dropdown-menu::before {
  content: ""; position: absolute; left: 0; right: 0; top: -16px; height: 16px;
}
.nav-dropdown.open .nav-dropdown-menu,
.nav-dropdown:hover .nav-dropdown-menu {
  opacity: 1; visibility: visible; transform: translate(-50%, 0); pointer-events: auto;
}
.nav-dropdown-menu a {
  display: block; padding: 14px 15px; border-radius: 11px; color: #fff; text-align: left;
  border: 1px solid transparent; transition: background .2s ease, border-color .2s ease;
}
.nav-dropdown-menu a:hover, .nav-dropdown-menu a:focus-visible {
  background: rgba(239,9,23,.10); border-color: rgba(239,9,23,.3);
}
.nav-dropdown-menu strong { display: block; font-size: .92rem; }
.nav-dropdown-menu small { display: block; margin-top: 5px; color: #9f9fa8; font-size: .75rem; font-weight: 500; line-height: 1.4; }
.nav-dropdown-end .nav-dropdown-menu { left: auto; right: 0; transform: translate(0, -8px); }
.nav-dropdown-end.open .nav-dropdown-menu,
.nav-dropdown-end:hover .nav-dropdown-menu { transform: translate(0, 0); }
.nav-dropdown-menu-compact { width: 280px; }
.nav-dropdown-menu-compact a { padding: 13px 14px; }
.nav-cta {
  padding: 11px 18px; background: var(--red); color: white;
  border-radius: 999px; box-shadow: 0 8px 25px rgba(239,9,23,.27);
}
.menu-toggle { display: none; background: none; border: 0; padding: 8px; cursor: pointer; }
.menu-toggle span:not(.sr-only) { width: 27px; height: 2px; background: white; display: block; margin: 6px; transition: .25s; }

.hero {
  position: relative;
  min-height: 890px; padding-top: 125px; display: grid; align-items: center;
  overflow: hidden; isolation: isolate;
}
.hero::before {
  content: ""; position: absolute; inset: 0; z-index: -2;
  background:
    linear-gradient(90deg, rgba(5,5,9,.98) 0%, rgba(5,5,9,.86) 42%, rgba(5,5,9,.24) 80%),
    repeating-linear-gradient(120deg, transparent 0 48px, rgba(255,255,255,.018) 49px 50px);
}
.hero-glow {
  position: absolute; width: 720px; height: 720px; right: -140px; top: 80px; z-index: -1;
  border-radius: 50%; background: radial-gradient(circle, rgba(239,9,23,.32), transparent 66%);
  filter: blur(8px);
}
.hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 46px; }
.eyebrow {
  margin: 0 0 18px; color: #ff4753; font-size: .78rem; font-weight: 900;
  letter-spacing: .18em; text-transform: uppercase;
}
h1, h2, h3 { margin: 0; line-height: 1.04; letter-spacing: -.035em; }
h1 { font-size: clamp(3.2rem, 7vw, 6.6rem); max-width: 780px; text-transform: uppercase; }
h2 { font-size: clamp(2.3rem, 5vw, 4.5rem); }
h3 { font-size: 1.45rem; }
.hero-text { max-width: 700px; color: #c4c4cc; font-size: clamp(1rem, 1.6vw, 1.2rem); margin: 28px 0 34px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; }
.button {
  display: inline-flex; justify-content: center; align-items: center; min-height: 52px;
  padding: 0 24px; border: 1px solid transparent; border-radius: 999px;
  font-weight: 850; cursor: pointer; transition: transform .2s, background .2s, border-color .2s;
}
.button:hover { transform: translateY(-2px); }
.button.primary { background: var(--red); box-shadow: 0 14px 35px rgba(239,9,23,.27); }
.button.ghost { border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.04); }
.button.full { width: 100%; border-radius: 13px; }
.hero-stats { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 42px; }
.hero-stats > div {
  min-width: 165px;
  padding: 13px 18px;
  border-left: 2px solid var(--red);
  background: rgba(255,255,255,.035);
}
.hero-stats strong, .hero-stats span { display: block; }
.hero-stats strong { font-size: 1.08rem; }
.hero-stats span { color: var(--muted); font-size: .78rem; }
.logo-stage {
  position: relative; min-height: 550px; display: grid; place-items: center;
  border-radius: 50%; background: radial-gradient(circle, rgba(255,255,255,.06), transparent 64%);
}
.logo-stage::after {
  content: ""; position: absolute; inset: 11%; border: 1px solid rgba(255,255,255,.08); border-radius: 50%;
}
.logo-stage img {
  width: min(100%, 560px); border-radius: 30px;
  filter: drop-shadow(0 34px 45px rgba(0,0,0,.75));
  position: relative; z-index: 2;
}
.speed-line {
  position: absolute; height: 4px; border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--red), transparent);
  filter: blur(.4px); transform: rotate(-12deg); opacity: .7;
}
.line-a { width: 88%; top: 23%; right: -18%; }
.line-b { width: 72%; bottom: 29%; left: -20%; }
.line-c { width: 48%; bottom: 17%; right: -9%; }
.hero-bottom {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 120px;
  pointer-events: none;
  background: linear-gradient(transparent, #08080c);
}

.problem-strip {
  position: relative;
  z-index: 2;
  padding: 30px 0 42px;
  border-block: 1px solid var(--line);
  background: linear-gradient(180deg, #0d0d13, #09090e);
}
.problem-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
}
.problem-heading p {
  margin: 0;
  color: var(--red);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.problem-heading strong {
  font-size: 1.12rem;
  letter-spacing: -.01em;
}
.problem-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.problem-grid a {
  position: relative;
  min-height: 132px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto 1fr;
  column-gap: 13px;
  row-gap: 7px;
  padding: 23px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
    #101016;
  box-shadow: 0 15px 30px rgba(0,0,0,.18);
  transition: transform .2s, border-color .2s, background .2s;
}
.problem-grid a:hover {
  transform: translateY(-3px);
  border-color: rgba(239,9,23,.62);
  background:
    linear-gradient(145deg, rgba(239,9,23,.14), rgba(255,255,255,.025)),
    #111117;
}
.problem-grid span {
  grid-row: 1 / 3;
  color: var(--red);
  font-size: .78rem;
  font-weight: 950;
}
.problem-grid b {
  color: #fff;
  text-transform: uppercase;
  font-size: .92rem;
  letter-spacing: .025em;
}
.problem-grid small {
  grid-column: 2 / 4;
  color: #b9b9c2;
  line-height: 1.4;
}
.problem-grid i {
  color: var(--red);
  font-style: normal;
  font-size: 1.15rem;
  font-weight: 900;
}

.two-col { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; align-items: start; }
.intro-copy { font-size: 1.13rem; color: #c9c9d0; }
.check-list { list-style: none; padding: 0; margin: 28px 0 0; display: grid; gap: 12px; }
.check-list li { position: relative; padding-left: 32px; }
.check-list li::before { content: "✓"; color: var(--red); font-weight: 950; position: absolute; left: 0; }
.section-heading { margin-bottom: 46px; }
.section-heading.center { text-align: center; max-width: 760px; margin-inline: auto; margin-bottom: 50px; }
.section-heading > p:last-child, .section-heading.center > p:last-child { color: var(--muted); max-width: 700px; }
.section-heading.center > p:last-child { margin-inline: auto; }
.section-heading.two-line { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: end; }
.section-heading.two-line > p { color: var(--muted); margin: 0 0 4px; }



.decor-section {
  padding-top: 28px;
  background:
    radial-gradient(circle at 85% 10%, rgba(239,9,23,.12), transparent 22rem),
    linear-gradient(180deg, #07070b, #0b0b12);
}
.decor-hero {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 18px;
  margin-bottom: 18px;
}
.decor-copy,
.decor-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: linear-gradient(150deg, #14141c, #0b0b11);
  box-shadow: 0 18px 36px rgba(0,0,0,.18);
}
.decor-copy {
  padding: 42px;
  display: grid;
  align-content: center;
}
.decor-copy p:last-child {
  margin: 20px 0 0;
  color: var(--muted);
  max-width: 55ch;
}
.decor-hero-image {
  position: relative;
  min-height: 420px;
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid var(--line);
  box-shadow: 0 18px 36px rgba(0,0,0,.18);
}
.decor-hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.decor-grid {
  display: grid;
  grid-template-columns: 1.15fr .85fr .85fr;
  gap: 18px;
}
.decor-card {
  min-height: 320px;
}
.decor-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}
.decor-card:hover img,
.decor-hero-image:hover img {
  transform: scale(1.04);
}
.decor-card::after,
.decor-hero-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(5,5,9,0) 25%, rgba(5,5,9,.75) 100%);
  pointer-events: none;
}
.decor-card-copy {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 22px;
  z-index: 2;
}
.decor-card-copy span {
  display: inline-block;
  margin-bottom: 7px;
  color: #ff5a64;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .69rem;
  font-weight: 900;
}
.decor-card-copy strong {
  display: block;
  font-size: 1.25rem;
  line-height: 1.15;
}

.decor-link-panel,
.decor-service-trigger {
  cursor: pointer;
}
.decor-service-trigger {
  appearance: none;
  -webkit-appearance: none;
  width: 100%;
  padding: 0;
  border: 1px solid var(--line);
  text-align: left;
  color: inherit;
  font: inherit;
}
.decor-link-panel {
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.decor-link-panel:hover,
.decor-link-panel:focus-visible,
.decor-service-trigger:hover,
.decor-service-trigger:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(239,9,23,.35);
  box-shadow: 0 20px 40px rgba(0,0,0,.24), 0 0 0 1px rgba(239,9,23,.12);
}
.decor-link-panel:focus-visible,
.decor-service-trigger:focus-visible {
  outline: 2px solid rgba(239,9,23,.7);
  outline-offset: 2px;
}
.decor-panel-action,
.decor-image-action,
.decor-card-copy small {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  font-size: .92rem;
  font-weight: 800;
  color: #fff;
}
.decor-panel-action i,
.decor-image-action i,
.decor-card-copy small i {
  font-style: normal;
  transition: transform .2s ease;
}
.decor-link-panel:hover .decor-panel-action i,
.decor-link-panel:hover .decor-image-action i,
.decor-service-trigger:hover .decor-card-copy small i,
.decor-link-panel:focus-visible .decor-panel-action i,
.decor-link-panel:focus-visible .decor-image-action i,
.decor-service-trigger:focus-visible .decor-card-copy small i {
  transform: translateX(4px);
}
.decor-image-action {
  position: absolute;
  left: 22px;
  bottom: 22px;
  z-index: 2;
}
.decor-card-large {
  min-height: 320px;
}

.packages-section { background: linear-gradient(180deg, #0a0a10, #07070b); }
.tabs { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-bottom: 34px; }
.tab {
  border: 1px solid var(--line); background: #111118; border-radius: 999px;
  padding: 11px 20px; cursor: pointer; font-weight: 800;
}
.tab.active, .tab:hover { background: var(--red); border-color: var(--red); }
.package-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.package-card {
  position: relative; display: flex; flex-direction: column; padding: 28px;
  background: linear-gradient(150deg, #17171f, #0d0d13); border: 1px solid var(--line);
  border-radius: var(--radius); overflow: hidden; min-height: 100%;
  box-shadow: 0 15px 40px rgba(0,0,0,.18); transition: transform .25s, border-color .25s;
}
.package-card:hover { transform: translateY(-6px); border-color: rgba(239,9,23,.55); }
.package-card::before {
  content: ""; position: absolute; width: 160px; height: 160px; border-radius: 50%;
  right: -70px; top: -70px; background: rgba(239,9,23,.15); filter: blur(10px);
}
.package-group { color: var(--red); text-transform: uppercase; letter-spacing: .16em; font-size: .7rem; font-weight: 900; }
.package-card h3 { margin-top: 12px; }
.price { font-size: 1.5rem; font-weight: 950; margin: 13px 0; }
.package-desc { color: var(--muted); min-height: 74px; }
.package-items { margin: 12px 0 20px; padding-left: 19px; color: #d6d6dc; }
.package-items li::marker { color: var(--red); }
.package-effect {
  margin-top: auto; border-top: 1px solid var(--line); padding-top: 17px;
  color: #cfcfd6; font-size: .9rem;
}
.package-effect b { color: white; }
.package-card { cursor: pointer; }
.package-actions { display: grid; grid-template-columns: 1fr; gap: 10px; margin-top: 22px; }
.package-actions .button { width: 100%; min-height: 48px; border-radius: 12px; }
.package-details-button { position: relative; z-index: 2; }
.package-button { position: relative; z-index: 2; margin-top: 0; width: 100%; border-radius: 12px; }

.service-controls { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.service-filter {
  background: transparent; border: 1px solid var(--line); border-radius: 999px; padding: 9px 15px; cursor: pointer;
}
.service-filter.active, .service-filter:hover { background: white; color: #050509; }
.service-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; }
.service-card {
  padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.028);
  display: grid; grid-template-columns: 1fr auto; gap: 20px; transition: background .2s, border-color .2s;
}
.service-card:hover { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.22); }
.service-category { color: var(--red); text-transform: uppercase; letter-spacing: .11em; font-size: .67rem; font-weight: 900; }
.service-card h3 { margin: 7px 0 11px; }
.service-card p { color: var(--muted); margin: 0; }
.service-prices { text-align: right; display: grid; align-content: center; gap: 3px; min-width: 145px; }
.service-prices span { font-weight: 850; font-size: .87rem; }

.works-section { overflow: hidden; background: #09090e; }
.works-grid { display: grid; grid-template-columns: repeat(12, 1fr); grid-auto-rows: 230px; gap: 12px; }
.work-card {
  position: relative; overflow: hidden; border-radius: 18px; background:
    linear-gradient(145deg, rgba(239,9,23,.20), transparent 55%),
    repeating-linear-gradient(120deg, #111118 0 36px, #15151d 37px 38px);
  border: 1px solid var(--line);
}
.work-card:nth-child(1), .work-card:nth-child(6) { grid-column: span 7; }
.work-card:nth-child(2), .work-card:nth-child(5) { grid-column: span 5; }
.work-card:nth-child(3), .work-card:nth-child(4), .work-card:nth-child(7), .work-card:nth-child(8), .work-card:nth-child(9) { grid-column: span 4; }
.work-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.work-card:hover img { transform: scale(1.04); }
.work-placeholder { position: absolute; inset: 0; display: grid; place-items: center; text-align: center; padding: 30px; }
.work-placeholder strong { font-size: 1.2rem; }
.work-placeholder span { display: block; color: var(--muted); font-size: .82rem; }
.work-badge {
  position: absolute; left: 16px; bottom: 16px; padding: 7px 11px; z-index: 2;
  background: rgba(5,5,9,.78); backdrop-filter: blur(8px); border-radius: 999px; font-size: .76rem;
}

.news-section { background: linear-gradient(180deg, #07070b, #0d0d13); }
.news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.news-card {
  padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); background: #111118;
}
.news-card time { color: var(--red); text-transform: uppercase; letter-spacing: .12em; font-size: .7rem; font-weight: 900; }
.news-card h3 { margin: 12px 0; }
.news-card p { color: var(--muted); }
.news-card-featured {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
  padding: 0;
  overflow: hidden;
  min-height: 360px;
  border-color: rgba(239,9,23,.28);
  background: linear-gradient(135deg, rgba(239,9,23,.10), #111118 52%);
}
.news-video-preview {
  position: relative;
  width: 100%;
  min-height: 360px;
  padding: 0;
  border: 0;
  overflow: hidden;
  background: #07070b;
  cursor: pointer;
}
.news-video-preview::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 55%, rgba(7,7,11,.52));
  pointer-events: none;
}
.news-video-preview img {
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
  transition: transform .35s ease, filter .35s ease;
}
.news-video-preview:hover img { transform: scale(1.025); filter: brightness(1.07); }
.news-play-badge {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--red);
  color: #fff;
  box-shadow: 0 18px 45px rgba(239,9,23,.36);
  transform: translate(-50%, -50%);
  font-size: 1.1rem;
}
.news-card-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(28px, 4vw, 54px);
}
.news-card-body h3 { font-size: clamp(1.65rem, 3vw, 2.7rem); }
.news-card-body .text-link { margin-top: 8px; }
.text-link { color: white; font-weight: 850; display: inline-flex; gap: 8px; }
.text-link:hover { color: #ff4a54; }

.booking-section { background:
  radial-gradient(circle at 85% 25%, rgba(239,9,23,.22), transparent 26rem),
  linear-gradient(140deg, #101017, #07070b);
}
.booking-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 70px; align-items: start; }
.booking-copy { position: sticky; top: 120px; }
.booking-copy > p:not(.eyebrow) { color: var(--muted); font-size: 1.08rem; }
.booking-note {
  margin-top: 28px; padding: 22px; border-left: 3px solid var(--red); background: rgba(255,255,255,.04);
}
.booking-note strong, .booking-note span { display: block; }
.booking-note span { color: var(--muted); margin-top: 8px; font-size: .9rem; }
.booking-form {
  padding: 30px; border: 1px solid var(--line); border-radius: var(--radius);
  background: rgba(5,5,9,.68); box-shadow: var(--shadow);
}
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.booking-form label { display: grid; gap: 8px; margin-bottom: 16px; font-size: .84rem; font-weight: 800; color: #dedee4; }
.booking-form input, .booking-form select, .booking-form textarea {
  width: 100%; border: 1px solid var(--line); border-radius: 11px; padding: 13px 14px;
  color: white; background: #111118; outline: 0;
}
.booking-form input:focus, .booking-form select:focus, .booking-form textarea:focus { border-color: var(--red); }
.booking-form select option { color: black; background: white; }
.booking-form .consent { display: flex; grid-template-columns: auto 1fr; align-items: flex-start; gap: 10px; font-weight: 500; color: var(--muted); }
.consent input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--red); }
.form-status { margin-bottom: 0; color: #b8ffbe; font-size: .86rem; }

.contact-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 20px; }
.contact-panel, .map-card {
  min-height: 520px; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden;
}
.contact-panel { padding: 42px; background: #111118; }
.contact-list { margin-top: 35px; display: grid; }
.contact-list > * { display: flex; justify-content: space-between; gap: 24px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.contact-list span { color: var(--muted); }
.contact-list strong { text-align: right; }
.contact-list a:hover strong { color: #ff4a54; }
.contact-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  margin-top: 28px;
}
.contact-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 13px 18px;
  border-radius: 999px;
  background: var(--red);
  color: #fff;
  font-weight: 950;
  box-shadow: var(--glow);
  text-align: center;
}
.contact-cta:hover { transform: translateY(-2px); }
.social-pill-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.social-pill {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 11px 14px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: linear-gradient(160deg, rgba(255,255,255,.04), rgba(255,255,255,.012));
  font-size: .86rem;
  font-weight: 850;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.social-pill:hover {
  border-color: var(--red);
  background: rgba(239,9,23,.09);
  transform: translateY(-2px);
}
.social-pill svg {
  width: 19px;
  height: 19px;
  flex: 0 0 auto;
  stroke: currentColor;
  stroke-width: 1.8;
  fill: none;
}
.social-pill .social-fill { fill: currentColor; stroke: none; }
.social-pill path { fill: currentColor; stroke: none; }
.map-card iframe { width: 100%; height: 100%; min-height: 520px; border: 0; filter: grayscale(1) invert(.9) contrast(.85); }

.site-footer { border-top: 1px solid var(--line); padding: 28px 0; background: #050509; }
.footer-grid { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 28px; color: var(--muted); font-size: .85rem; }
.footer-brand { display: flex; align-items: center; gap: 13px; color: white; }
.footer-brand img { width: 46px; height: 46px; object-fit: cover; border-radius: 9px; }
.footer-brand strong, .footer-brand span { display: block; }
.footer-brand span { color: var(--muted); font-size: .75rem; }

.floating-phone {
  position: fixed; right: 22px; bottom: 22px; z-index: 900; width: 56px; height: 56px;
  display: grid; place-items: center; border-radius: 50%; background: var(--red);
  box-shadow: 0 15px 35px rgba(239,9,23,.38); font-size: 1.3rem;
}

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 1180px) {
  .main-nav { gap: 16px; font-size: .82rem; }
  .brand { font-size: .82rem; letter-spacing: .09em; }
  .brand img { width: 48px; height: 48px; }
  .nav-cta { padding: 10px 16px; }
}

@media (max-width: 1020px) {
  .main-nav { gap: 18px; }
  .hero { min-height: auto; padding: 150px 0 100px; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { text-align: center; }
  .hero-text { margin-inline: auto; }
  .hero-actions, .hero-stats { justify-content: center; }
  .hero-visual { order: -1; }
  .logo-stage { min-height: 360px; }
  .logo-stage img { width: min(76vw, 430px); }
  .problem-grid { grid-template-columns: repeat(2, 1fr); }
  .problem-heading { align-items: start; flex-direction: column; gap: 4px; }
  .decor-hero, .decor-grid { grid-template-columns: 1fr; }
  .decor-hero-image, .decor-card, .decor-card-large { min-height: 300px; }
  .package-grid { grid-template-columns: repeat(2, 1fr); }
  .booking-grid, .contact-grid { grid-template-columns: 1fr; }
  .contact-panel h2 { max-width: 14ch; }
  .booking-copy { position: static; }
}

@media (max-width: 780px) {
  .section { padding: 72px 0; }
  .container { width: min(calc(100% - 28px), var(--max)); }
  .site-header,
  .site-header.scrolled {
    background: rgba(5,5,9,.97);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .menu-toggle { display: block; z-index: 1003; }
  .main-nav {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100dvh;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 24px;
    padding: max(105px, env(safe-area-inset-top)) 24px max(40px, env(safe-area-inset-bottom));
    overflow-y: auto;
    text-align: center;
    font-size: 1.35rem;
    background: rgba(5,5,9,.99);
    transform: translateX(100%);
    transition: transform .3s ease;
    z-index: 1001;
  }
  .main-nav.open { transform: translateX(0); }
  .main-nav > a {
    flex: 0 0 auto;
  }
  .nav-dropdown { width: min(100%, 430px); flex: 0 0 auto; }
  .nav-dropdown-toggle {
    width: 100%; justify-content: center; padding: 6px 0; font-size: 1.35rem;
  }
  .nav-dropdown-menu {
    position: static; width: 100%; max-height: 0; padding: 0 8px; margin-top: 0;
    border: 0; border-radius: 0; background: transparent; box-shadow: none;
    opacity: 1; visibility: visible; transform: none; pointer-events: none; overflow: hidden;
    transition: max-height .28s ease, margin-top .28s ease, padding .28s ease;
  }
  .nav-dropdown:hover .nav-dropdown-menu { max-height: 0; margin-top: 0; padding-block: 0; }
  .nav-dropdown.open .nav-dropdown-menu {
    max-height: 190px; margin-top: 8px; padding-block: 4px; pointer-events: auto;
  }
  .nav-dropdown-menu a {
    padding: 11px 14px; text-align: center; background: rgba(255,255,255,.035);
    border-color: rgba(255,255,255,.08);
  }
  .nav-dropdown-menu a + a { margin-top: 8px; }
  .nav-dropdown-menu strong { font-size: .98rem; }
  .nav-dropdown-menu small { font-size: .72rem; }
  .main-nav .nav-cta {
    margin-top: 6px;
    padding-inline: 28px;
  }
  .menu-toggle.open span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .menu-toggle.open span:nth-child(2) { opacity: 0; }
  .menu-toggle.open span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
  .brand span { display: none; }

  /* Mobile hero: hide the duplicated large logo and keep everything inside the screen. */
  .hero {
    min-height: auto;
    padding: 126px 0 64px;
  }
  .hero-grid {
    display: block;
    width: 100%;
  }
  .hero-copy {
    width: 100%;
    min-width: 0;
    text-align: left;
  }
  .hero-visual {
    display: none;
  }
  .hero .eyebrow {
    max-width: 100%;
    margin-bottom: 16px;
    font-size: .68rem;
    line-height: 1.5;
    letter-spacing: .13em;
    overflow-wrap: anywhere;
  }
  h1 {
    width: 100%;
    max-width: 100%;
    font-size: clamp(2.25rem, 10.2vw, 3rem);
    line-height: 1.02;
    letter-spacing: -.045em;
    overflow-wrap: normal;
  }
  .hero-text {
    width: 100%;
    max-width: 100%;
    margin: 24px 0 28px;
    font-size: 1rem;
    line-height: 1.55;
  }
  .hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 10px;
  }
  .hero-actions .button {
    width: 100%;
    min-width: 0;
  }
  .hero-stats {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 8px;
    margin-top: 28px;
  }
  .hero-stats > div {
    width: 100%;
    min-width: 0;
    padding: 12px 14px;
  }
  .hero-bottom {
    height: 60px;
  }

  .problem-heading {
    align-items: flex-start;
  }
  .problem-grid { grid-template-columns: 1fr; }
  .problem-grid a { min-height: 118px; }
  .decor-section { padding-top: 12px; }
  .decor-copy { padding: 30px 24px; }
  .decor-hero-image, .decor-card, .decor-card-large { min-height: 240px; }
  .decor-card-copy { left: 16px; right: 16px; bottom: 16px; }
  .decor-card-copy strong { font-size: 1.06rem; }
  .decor-card-copy small, .decor-panel-action, .decor-image-action { font-size: .84rem; margin-top: 12px; }
  .two-col, .section-heading.two-line { grid-template-columns: 1fr; gap: 28px; }
  .package-grid, .service-grid, .news-grid { grid-template-columns: 1fr; }
  .social-pill-row { grid-template-columns: 1fr; }
  .service-card { grid-template-columns: 1fr; }
  .service-prices { text-align: left; min-width: 0; }
  .works-grid { grid-template-columns: 1fr; grid-auto-rows: 270px; }
  .work-card:nth-child(n) { grid-column: auto; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .contact-list > * { display: grid; gap: 5px; }
  .contact-list strong { text-align: left; }
  .footer-grid { grid-template-columns: 1fr; text-align: center; }
  .footer-brand { justify-content: center; }
  .floating-phone {
    right: 16px;
    bottom: 16px;
    width: 52px;
    height: 52px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .reveal { opacity: 1; transform: none; }
}

@media (max-width: 390px) {
  h1 {
    font-size: clamp(2.05rem, 9.8vw, 2.45rem);
  }
  .hero .eyebrow {
    font-size: .62rem;
  }
}


@media (max-width: 780px) {
  .site-header {
    overflow: visible;
  }
  body.menu-open .floating-phone {
    opacity: 0;
    pointer-events: none;
  }
}


.floating-top {
  position: fixed;
  right: 22px;
  bottom: 92px;
  z-index: 899;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  background: rgba(17,17,24,.92);
  color: #fff;
  box-shadow: 0 12px 28px rgba(0,0,0,.34);
  font-size: 1.45rem;
  font-weight: 900;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease, background .2s ease;
}
.floating-top:hover {
  background: var(--red);
  border-color: var(--red);
}
.floating-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

@media (max-width: 780px) {
  .floating-top {
    right: 18px;
    bottom: 82px;
    width: 46px;
    height: 46px;
  }
  body.menu-open .floating-top {
    opacity: 0;
    pointer-events: none;
  }
}


.hidden-field {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}


.video-section {
  background:
    radial-gradient(circle at 86% 14%, rgba(239,9,23,.14), transparent 23rem),
    linear-gradient(180deg, #07070b, #0b0b12);
}
.video-tabs {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin: 26px 0 22px;
}
.video-tab {
  border: 1px solid var(--line);
  background: rgba(255,255,255,.025);
  color: var(--text);
  border-radius: 999px;
  padding: 10px 15px;
  font-weight: 900;
  cursor: pointer;
}
.video-tab.active,
.video-tab:hover {
  border-color: var(--red);
  background: rgba(239,9,23,.10);
}
.video-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.video-card {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  background: linear-gradient(150deg, #14141c, #0b0b11);
  cursor: pointer;
  min-height: 100%;
  transition: transform .22s ease, border-color .22s ease;
}
.video-card:hover {
  transform: translateY(-4px);
  border-color: rgba(239,9,23,.55);
}
.video-thumb {
  position: relative;
  aspect-ratio: 9 / 13;
  overflow: hidden;
  background: #08080c;
}
.video-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .78;
  transition: transform .45s ease, opacity .22s ease;
}
.video-card:hover .video-thumb img {
  transform: scale(1.045);
  opacity: .92;
}
.video-thumb::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(5,5,9,0) 30%, rgba(5,5,9,.84) 100%),
    radial-gradient(circle at 50% 50%, rgba(239,9,23,.16), transparent 14rem);
  pointer-events: none;
}
.play-badge {
  position: absolute;
  left: 18px;
  bottom: 18px;
  z-index: 2;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--red);
  color: #fff;
  box-shadow: var(--glow);
  font-size: .85rem;
  padding-left: 2px;
}
.coming-soon {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  padding: 7px 10px;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(10px);
  font-size: .72rem;
  font-weight: 900;
}
.video-card-copy {
  padding: 18px;
}
.video-card-copy span {
  display: inline-block;
  color: #ff5a64;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: .68rem;
  font-weight: 950;
  margin-bottom: 9px;
}
.video-card-copy h3 {
  margin: 0;
  font-size: 1.05rem;
  line-height: 1.15;
}
.video-card-copy p {
  color: var(--muted);
  margin: 10px 0 0;
  font-size: .92rem;
}
.video-card.is-placeholder {
  cursor: default;
}
.video-card.is-placeholder:hover {
  transform: none;
  border-color: var(--line);
}
.video-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  place-items: center;
  padding: 22px;
}
.video-modal.active {
  display: grid;
}
.video-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.78);
  backdrop-filter: blur(8px);
}
.video-modal-dialog {
  position: relative;
  z-index: 1;
  width: min(980px, 96vw);
}
.video-modal-close {
  position: absolute;
  right: -10px;
  top: -52px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid var(--line);
  background: #111119;
  color: #fff;
  font-size: 1.7rem;
  cursor: pointer;
}
.video-frame-wrap {
  position: relative;
  aspect-ratio: 16 / 9;
  background: #000;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: 0 24px 70px rgba(0,0,0,.55);
}
.video-frame-wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
body.modal-open {
  overflow: hidden;
}

@media (max-width: 1020px) {
  .video-grid { grid-template-columns: repeat(2, 1fr); }
  .video-thumb { aspect-ratio: 16 / 10; }
}
@media (max-width: 640px) {
  .video-grid { grid-template-columns: 1fr; }
  .video-thumb { aspect-ratio: 16 / 10; }
  .video-card-copy { padding: 16px; }
}


.works-actions {
  margin-top: 22px;
  display: flex;
  justify-content: center;
}
.works-video-grid {
  margin-top: 6px;
}








/* V24 - duże logo mobilne bez nachodzenia na nagłówek. Desktop bez zmian. */
@media (max-width: 760px) {
  .site-header .nav-wrap {
    min-height: 188px;
    align-items: center;
  }

  .site-header .brand img {
    width: 168px;
    height: 168px;
    border-radius: 30px;
  }

  .site-header .brand span {
    display: none;
  }

  .hero-visual {
    display: none;
  }

  .hero {
    padding-top: 270px;
  }
}

@media (max-width: 430px) {
  .site-header .nav-wrap {
    min-height: 178px;
  }

  .site-header .brand img {
    width: 156px;
    height: 156px;
    border-radius: 28px;
  }

  .hero {
    padding-top: 250px;
  }
}


/* V27 - pełne opisy usług po kliknięciu kafelka */
.service-card {
  cursor: pointer;
  position: relative;
}
.service-card:focus-visible {
  outline: 2px solid var(--red);
  outline-offset: 4px;
}
.service-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  color: #ff3342;
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.service-more::after {
  content: "→";
  font-size: 1rem;
}
.service-modal {
  position: fixed;
  inset: 0;
  z-index: 1100;
  display: none;
  place-items: center;
  padding: 22px;
}
.service-modal.active {
  display: grid;
}
.service-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.78);
  backdrop-filter: blur(8px);
}
.service-modal-dialog {
  position: relative;
  z-index: 1;
  width: min(980px, 96vw);
  max-height: min(86vh, 900px);
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 12% 0%, rgba(239,9,23,.16), transparent 22rem),
    linear-gradient(150deg, #15151e, #0a0a10);
  box-shadow: 0 30px 90px rgba(0,0,0,.6);
  padding: clamp(26px, 4vw, 48px);
}
.service-modal-close {
  position: sticky;
  top: 0;
  margin-left: auto;
  margin-bottom: 6px;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid var(--line);
  background: #111119;
  color: #fff;
  font-size: 1.7rem;
  cursor: pointer;
}
.service-modal-head h2 {
  margin: 8px 0 16px;
  font-size: clamp(2.1rem, 5vw, 4rem);
  line-height: .96;
  letter-spacing: -.045em;
}
.service-modal-head p:not(.eyebrow) {
  max-width: 760px;
  color: var(--muted);
  font-size: 1.05rem;
  line-height: 1.65;
}
.service-modal-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-top: 26px;
}
.service-detail-box,
.service-detail-result,
.service-detail-note {
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255,255,255,.025);
  padding: 22px;
}
.service-detail-box h3,
.service-detail-result h3 {
  margin: 0 0 14px;
  font-size: 1.05rem;
}
.service-detail-box ul {
  margin: 0;
  padding-left: 18px;
  color: var(--muted);
  line-height: 1.65;
}
.service-detail-box li + li {
  margin-top: 8px;
}
.service-detail-result {
  margin-top: 18px;
}
.service-detail-result p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}
.service-detail-note {
  margin-top: 14px;
  display: grid;
  gap: 8px;
  color: var(--muted);
  line-height: 1.55;
}
.service-detail-note strong {
  color: var(--text);
}
.service-modal-prices {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}
.service-modal-prices span {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  padding: 9px 13px;
  font-weight: 950;
  background: rgba(255,255,255,.035);
}
.service-modal-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 28px;
}
@media (max-width: 760px) {
  .service-modal {
    padding: 12px;
    align-items: end;
  }
  .service-modal-dialog {
    width: 100%;
    max-height: 88vh;
    border-radius: 24px 24px 0 0;
    padding: 22px;
  }
  .service-modal-grid {
    grid-template-columns: 1fr;
  }
  .service-modal-actions .button {
    width: 100%;
  }
}


/* V32 - lokalny blok SEO pod frazy typu myjnia i detailing Łowicz */
.local-seo-section {
  background:
    radial-gradient(circle at 12% 0%, rgba(239,9,23,.11), transparent 24rem),
    linear-gradient(180deg, #09090e, #07070b);
}
.local-seo-card {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 34px;
  align-items: start;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: clamp(28px, 4vw, 48px);
  background: linear-gradient(150deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
}
.local-seo-card h2 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1;
  letter-spacing: -.045em;
}
.local-seo-copy p {
  color: var(--muted);
  line-height: 1.65;
  margin: 0 0 16px;
}
.local-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}
.local-tags span {
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 999px;
  padding: 8px 12px;
  background: rgba(255,255,255,.03);
  font-size: .82rem;
  font-weight: 850;
}
@media (max-width: 900px) {
  .local-seo-card {
    grid-template-columns: 1fr;
  }
}

/* V33 - sekcje O nas oraz Promocje i bony */
.about-section {
  background:
    radial-gradient(circle at 85% 12%, rgba(239,9,23,.12), transparent 24rem),
    linear-gradient(180deg, #07070b, #09090e);
}
.about-grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 24px;
  align-items: stretch;
}
.about-card,
.about-points article {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: linear-gradient(150deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
}
.about-card {
  padding: clamp(30px, 4vw, 52px);
}
.about-card h2 {
  margin: 0 0 22px;
  font-size: clamp(2.1rem, 4.8vw, 4.2rem);
  line-height: .98;
  letter-spacing: -.052em;
}
.about-card p {
  color: var(--muted);
  line-height: 1.72;
  margin: 0 0 16px;
}
.about-points {
  display: grid;
  gap: 16px;
}
.about-points article {
  padding: 24px;
}
.about-points span {
  color: #ff3342;
  font-weight: 950;
  letter-spacing: .12em;
}
.about-points h3 {
  margin: 10px 0 8px;
}
.about-points p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}
.promo-section {
  background:
    radial-gradient(circle at 18% 10%, rgba(239,9,23,.14), transparent 24rem),
    linear-gradient(180deg, #0b0b12, #07070b);
}
.promo-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.promo-card {
  position: relative;
  overflow: hidden;
  min-height: 360px;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(239,9,23,.24), transparent 14rem),
    linear-gradient(150deg, #16161f, #0a0a10);
}
.promo-card::after {
  content: "";
  position: absolute;
  width: 190px;
  height: 190px;
  right: -70px;
  bottom: -80px;
  border-radius: 50%;
  border: 1px solid rgba(239,9,23,.28);
  box-shadow: 0 0 60px rgba(239,9,23,.18);
}
.promo-top {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 24px;
}
.promo-top span,
.promo-top strong {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  padding: 8px 10px;
  background: rgba(0,0,0,.28);
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.promo-highlight {
  position: relative;
  z-index: 1;
  display: inline-flex;
  width: fit-content;
  margin-bottom: 20px;
  color: #fff;
  font-size: clamp(2.9rem, 6vw, 5.2rem);
  line-height: .9;
  font-weight: 950;
  letter-spacing: -.08em;
  text-shadow: 0 12px 38px rgba(239,9,23,.28);
}
.promo-card h3 {
  position: relative;
  z-index: 1;
  margin: 0 0 12px;
  font-size: 1.45rem;
}
.promo-card p {
  position: relative;
  z-index: 1;
  margin: 0 0 24px;
  color: var(--muted);
  line-height: 1.6;
}
.promo-card .button {
  position: relative;
  z-index: 1;
  margin-top: auto;
  justify-content: center;
}
@media (max-width: 980px) {
  .about-grid,
  .promo-grid {
    grid-template-columns: 1fr;
  }
}


/* V44 - O nas jak w zaakceptowanym projekcie, z poprawionym autem */
.about-premium-v44 {
  position: relative;
  overflow: hidden;
  padding: clamp(92px, 8vw, 138px) 0;
  background:
    radial-gradient(circle at 12% 18%, rgba(239,9,23,.10), transparent 25rem),
    radial-gradient(circle at 86% 75%, rgba(239,9,23,.16), transparent 30rem),
    linear-gradient(180deg, #050509, #09090e);
}
.about-premium-v44::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.36), transparent 48%, rgba(239,9,23,.055)),
    radial-gradient(circle at 74% 94%, rgba(239,9,23,.24), transparent 22rem);
}
.about-v44-layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(330px, .78fr) minmax(620px, 1.22fr);
  gap: clamp(38px, 5vw, 78px);
  align-items: center;
}
.about-v44-copy h2 {
  margin: 0;
  max-width: 680px;
  font-size: clamp(3.4rem, 6vw, 6.7rem);
  line-height: .92;
  letter-spacing: -.072em;
}
.about-v44-copy h2 span {
  color: var(--red);
}
.about-v44-copy > i {
  display: block;
  width: 58px;
  height: 2px;
  margin: 34px 0 32px;
  background: var(--red);
  box-shadow: 0 0 22px rgba(239,9,23,.75);
}
.about-v44-copy p {
  max-width: 600px;
  margin: 0 0 22px;
  color: var(--muted);
  font-size: clamp(1rem, 1.2vw, 1.13rem);
  line-height: 1.72;
  font-weight: 500;
}
.about-v44-values {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 40px;
}
.about-v44-values article {
  border-right: 1px solid rgba(255,255,255,.13);
  padding-right: 18px;
}
.about-v44-values article:last-child {
  border-right: 0;
}
.about-v44-values span {
  display: block;
  margin-bottom: 12px;
  color: var(--red);
  font-size: 2.4rem;
  line-height: 1;
  text-shadow: 0 0 24px rgba(239,9,23,.45);
}
.about-v44-values strong {
  display: block;
  margin-bottom: 5px;
  color: #fff;
  font-size: 1.02rem;
}
.about-v44-values small {
  display: block;
  color: var(--muted);
  line-height: 1.45;
}
.about-v44-panel {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  border: 1px solid rgba(255,255,255,.12);
  background: #07070b;
  box-shadow: 0 36px 110px rgba(0,0,0,.55);
}
.about-v44-panel::after {
  content: "";
  position: absolute;
  inset: auto 7% 0 7%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(239,9,23,.95), transparent);
  box-shadow: 0 0 34px rgba(239,9,23,.8);
}
.about-v44-panel img {
  display: block;
  width: 100%;
  min-height: 620px;
  object-fit: cover;
  object-position: center;
  filter: saturate(1.04) contrast(1.04);
}
@media (max-width: 1180px) {
  .about-v44-layout {
    grid-template-columns: 1fr;
  }
  .about-v44-copy h2,
  .about-v44-copy p {
    max-width: 860px;
  }
  .about-v44-panel img {
    min-height: auto;
  }
}
@media (max-width: 760px) {
  .about-v44-values {
    grid-template-columns: 1fr;
  }
  .about-v44-values article {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.13);
    padding: 0 0 18px;
  }
  .about-v44-values article:last-child {
    border-bottom: 0;
  }
  .about-v44-panel {
    border-radius: 24px;
  }
}
@media (max-width: 520px) {
  .about-v44-copy h2 {
    font-size: clamp(2.65rem, 13vw, 4.15rem);
  }
}


/* V45 - finalna sekcja O nas z poprawionym zdjęciem zespołu i autem */
.about-final-section {
  position: relative;
  overflow: hidden;
  padding: clamp(92px, 8vw, 140px) 0;
  background:
    radial-gradient(circle at 12% 18%, rgba(239,9,23,.10), transparent 25rem),
    radial-gradient(circle at 86% 75%, rgba(239,9,23,.18), transparent 30rem),
    linear-gradient(180deg, #050509, #09090e);
}
.about-final-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.35), transparent 48%, rgba(239,9,23,.06)),
    radial-gradient(circle at 74% 94%, rgba(239,9,23,.23), transparent 22rem);
}
.about-final-layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(330px, .78fr) minmax(620px, 1.22fr);
  gap: clamp(38px, 5vw, 78px);
  align-items: center;
}
.about-final-copy h2 {
  margin: 0;
  max-width: 680px;
  font-size: clamp(3.4rem, 6vw, 6.7rem);
  line-height: .92;
  letter-spacing: -.072em;
}
.about-final-copy h2 span {
  color: var(--red);
}
.about-final-copy > i {
  display: block;
  width: 58px;
  height: 2px;
  margin: 34px 0 32px;
  background: var(--red);
  box-shadow: 0 0 22px rgba(239,9,23,.75);
}
.about-final-copy p {
  max-width: 600px;
  margin: 0 0 22px;
  color: var(--muted);
  font-size: clamp(1rem, 1.2vw, 1.13rem);
  line-height: 1.72;
  font-weight: 500;
}
.about-final-values {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 40px;
}
.about-final-values article {
  border-right: 1px solid rgba(255,255,255,.13);
  padding-right: 18px;
}
.about-final-values article:last-child {
  border-right: 0;
}
.about-final-values span {
  display: block;
  margin-bottom: 12px;
  color: var(--red);
  font-size: 2.4rem;
  line-height: 1;
  text-shadow: 0 0 24px rgba(239,9,23,.45);
}
.about-final-values strong {
  display: block;
  margin-bottom: 5px;
  color: #fff;
  font-size: 1.02rem;
}
.about-final-values small {
  display: block;
  color: var(--muted);
  line-height: 1.45;
}
.about-final-panel {
  position: relative;
  overflow: hidden;
  min-height: 650px;
  border-radius: 30px;
  border: 1px solid rgba(255,255,255,.12);
  background: #07070b;
  box-shadow: 0 36px 110px rgba(0,0,0,.55);
}
.about-final-panel::after {
  content: "";
  position: absolute;
  inset: auto 7% 0 7%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(239,9,23,.95), transparent);
  box-shadow: 0 0 34px rgba(239,9,23,.8);
}
.about-final-panel img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 650px;
  object-fit: cover;
  object-position: center;
  filter: saturate(1.04) contrast(1.04);
}
.about-final-label {
  position: absolute;
  z-index: 2;
  top: 28px;
  left: 30px;
  display: grid;
  gap: 4px;
  padding-left: 18px;
  border-left: 2px solid var(--red);
  text-transform: uppercase;
}
.about-final-label span {
  color: var(--red);
  font-weight: 950;
  letter-spacing: .18em;
}
.about-final-label strong {
  color: #fff;
  letter-spacing: .12em;
  font-size: 1.15rem;
}
.about-final-stats {
  position: absolute;
  z-index: 2;
  left: 5%;
  right: 5%;
  bottom: 32px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 24px;
  background: rgba(7,7,11,.74);
  backdrop-filter: blur(10px);
  box-shadow: 0 20px 60px rgba(0,0,0,.42);
}
.about-final-stats article {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0 16px;
  align-items: center;
  padding: 24px 28px;
  border-right: 1px solid rgba(255,255,255,.12);
}
.about-final-stats article:last-child {
  border-right: 0;
}
.about-final-stats span {
  grid-row: span 2;
  color: var(--red);
  font-size: 2.2rem;
  line-height: 1;
  text-shadow: 0 0 24px rgba(239,9,23,.52);
}
.about-final-stats strong {
  color: #fff;
  font-size: clamp(2rem, 3.2vw, 3.2rem);
  line-height: .95;
  letter-spacing: -.045em;
}
.about-final-stats small {
  display: block;
  color: var(--muted);
  line-height: 1.35;
}
@media (max-width: 1180px) {
  .about-final-layout {
    grid-template-columns: 1fr;
  }
  .about-final-copy h2,
  .about-final-copy p {
    max-width: 860px;
  }
}
@media (max-width: 760px) {
  .about-final-values,
  .about-final-stats {
    grid-template-columns: 1fr;
  }
  .about-final-values article,
  .about-final-stats article {
    border-right: 0;
  }
  .about-final-values article {
    border-bottom: 1px solid rgba(255,255,255,.13);
    padding: 0 0 18px;
  }
  .about-final-values article:last-child {
    border-bottom: 0;
  }
  .about-final-panel {
    min-height: 620px;
    border-radius: 24px;
  }
  .about-final-panel img {
    min-height: 620px;
    object-position: 55% center;
  }
  .about-final-stats {
    left: 18px;
    right: 18px;
    bottom: 18px;
  }
  .about-final-stats article {
    padding: 16px 18px;
  }
}
@media (max-width: 520px) {
  .about-final-copy h2 {
    font-size: clamp(2.65rem, 13vw, 4.15rem);
  }
  .about-final-panel {
    min-height: 660px;
  }
  .about-final-panel img {
    min-height: 660px;
    object-position: 56% center;
  }
}


/* V46 - zaakceptowana sekcja O nas oraz galeria filmów i zdjęć */
.about-v46-section {
  position: relative;
  overflow: hidden;
  padding: clamp(88px, 8vw, 132px) 0;
  background:
    radial-gradient(circle at 88% 12%, rgba(239,9,23,.16), transparent 27rem),
    linear-gradient(180deg, #050508 0%, #09090d 100%);
}
.about-v46-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(0,0,0,.3), transparent 55%, rgba(239,9,23,.05));
}
.about-v46-section .container { position: relative; z-index: 1; }
.about-v46-main {
  display: grid;
  grid-template-columns: minmax(360px, .86fr) minmax(610px, 1.14fr);
  gap: clamp(36px, 4.5vw, 76px);
  align-items: center;
}
.about-v46-copy h2 {
  margin: 0;
  font-size: clamp(3.2rem, 5.35vw, 6rem);
  line-height: .96;
  letter-spacing: -.06em;
}
.about-v46-copy h2 span { color: var(--red); }
.about-v46-lead {
  max-width: 650px;
  margin: 28px 0 32px;
  color: var(--muted);
  font-size: clamp(1rem, 1.1vw, 1.14rem);
  line-height: 1.7;
}
.about-v46-values { border-top: 1px solid rgba(255,255,255,.13); }
.about-v46-values article {
  display: grid;
  grid-template-columns: 62px 1fr;
  gap: 18px;
  align-items: center;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255,255,255,.13);
}
.about-v46-values article > span {
  color: var(--red);
  font-size: 2.35rem;
  line-height: 1;
  text-align: center;
  text-shadow: 0 0 24px rgba(239,9,23,.45);
}
.about-v46-values strong { display: block; margin-bottom: 5px; color: #fff; font-size: 1.14rem; }
.about-v46-values small { display: block; color: var(--muted); line-height: 1.5; }
.about-v46-photo {
  position: relative;
  overflow: hidden;
  min-height: 570px;
  border: 1px solid rgba(239,9,23,.28);
  border-radius: 30px;
  background: #050508;
  box-shadow: 0 34px 100px rgba(0,0,0,.52), 0 0 70px rgba(239,9,23,.08);
}
.about-v46-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(5,5,8,.26), transparent 26%), linear-gradient(180deg, transparent 70%, rgba(5,5,8,.35));
}
.about-v46-photo img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 570px;
  object-fit: cover;
  object-position: center;
}
.about-v46-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  margin-top: 24px;
}
.about-v46-stats article {
  display: grid;
  grid-template-columns: 82px 1fr;
  gap: 22px;
  align-items: center;
  min-height: 150px;
  padding: 24px 30px;
  border: 1px solid rgba(239,9,23,.38);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(20,20,26,.92), rgba(7,7,11,.96));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.02), 0 18px 50px rgba(0,0,0,.34);
}
.about-v46-stats article > span {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 50%;
  color: var(--red);
  font-size: 2.25rem;
  background: #0b0b10;
  box-shadow: inset 0 0 18px rgba(255,255,255,.04), 0 0 30px rgba(239,9,23,.09);
}
.about-v46-stats strong { display: block; color: var(--red); font-size: clamp(2.5rem, 4vw, 4.35rem); line-height: .9; letter-spacing: -.05em; }
.about-v46-stats small { display: block; margin-top: 10px; color: #fff; text-transform: uppercase; letter-spacing: .04em; line-height: 1.25; }

.works-v46 { background: radial-gradient(circle at 12% 10%, rgba(239,9,23,.12), transparent 24rem), #08080d; }
.works-v46-heading { text-align: center; }
.works-v46-heading h2 { margin: 0; color: var(--red); font-size: clamp(2.8rem, 5vw, 5.4rem); letter-spacing: .035em; line-height: 1; }
.works-v46-heading > p:last-child { margin: 15px 0 0; color: var(--muted); font-size: 1.08rem; }
.works-v46-tabs { display: flex; justify-content: center; gap: 12px; margin: 30px 0 28px; }
.works-v46-tab {
  min-width: 128px;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 999px;
  padding: 11px 24px;
  background: rgba(255,255,255,.025);
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
  cursor: pointer;
  transition: .2s ease;
}
.works-v46-tab:hover, .works-v46-tab.active { border-color: var(--red); background: var(--red); box-shadow: 0 0 28px rgba(239,9,23,.28); }
.works-v46-panel[hidden] { display: none !important; }
.works-v46 .video-card-copy { padding: 14px 16px 16px; text-align: center; }
.works-v46 .video-card-copy p { margin: 0; color: #fff; font-weight: 800; }
.photo-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.photo-card {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 5;
  padding: 0;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 22px;
  background: #09090d;
  cursor: pointer;
  transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}
.photo-card:hover { transform: translateY(-5px); border-color: rgba(239,9,23,.72); box-shadow: 0 20px 52px rgba(0,0,0,.42); }
.photo-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.photo-card:hover img { transform: scale(1.045); }
.photo-card-overlay {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  gap: 8px;
  color: #fff;
  background: linear-gradient(180deg, transparent 50%, rgba(0,0,0,.74));
  opacity: 0;
  transition: opacity .22s ease;
}
.photo-card:hover .photo-card-overlay { opacity: 1; }
.photo-card-overlay b { justify-self: center; width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; background: var(--red); font-size: 1.8rem; box-shadow: var(--glow); }
.photo-card-overlay small { margin-top: 120px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.photo-modal { position: fixed; inset: 0; z-index: 1100; display: none; place-items: center; padding: 24px; }
.photo-modal.active { display: grid; }
.photo-modal-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.9); backdrop-filter: blur(10px); }
.photo-modal-dialog { position: relative; z-index: 1; display: grid; place-items: center; width: min(1120px, 95vw); height: min(88vh, 920px); }
.photo-modal-dialog img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 18px; box-shadow: 0 30px 100px rgba(0,0,0,.65); }
.photo-modal-close { position: absolute; z-index: 3; right: 0; top: -48px; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; background: #111119; color: #fff; font-size: 1.7rem; cursor: pointer; }
.photo-modal-nav { position: absolute; z-index: 3; top: 50%; transform: translateY(-50%); width: 48px; height: 64px; border: 1px solid rgba(255,255,255,.18); border-radius: 16px; background: rgba(8,8,13,.72); color: #fff; font-size: 2.3rem; cursor: pointer; backdrop-filter: blur(10px); }
.photo-modal-prev { left: 10px; } .photo-modal-next { right: 10px; }
.photo-modal-counter { position: absolute; z-index: 3; bottom: 10px; padding: 8px 13px; border-radius: 999px; background: rgba(0,0,0,.72); color: #fff; font-weight: 900; }

@media (max-width: 1180px) {
  .about-v46-main { grid-template-columns: 1fr; }
  .about-v46-photo { min-height: 610px; }
  .about-v46-photo img { min-height: 610px; }
  .about-v46-stats { grid-template-columns: 1fr 1fr 1fr; gap: 14px; }
  .about-v46-stats article { grid-template-columns: 62px 1fr; padding: 20px; }
  .about-v46-stats article > span { width: 58px; height: 58px; font-size: 1.8rem; }
}
@media (max-width: 820px) {
  .about-v46-stats { grid-template-columns: 1fr; }
  .about-v46-photo, .about-v46-photo img { min-height: 500px; }
  .photo-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .about-v46-section { padding: 76px 0; }
  .about-v46-copy h2 { font-size: clamp(2.65rem, 13vw, 4rem); }
  .about-v46-values article { grid-template-columns: 48px 1fr; gap: 12px; }
  .about-v46-values article > span { font-size: 1.9rem; }
  .about-v46-photo { min-height: 380px; border-radius: 22px; }
  .about-v46-photo img { min-height: 380px; object-position: 52% center; }
  .about-v46-stats article { min-height: 118px; }
  .photo-grid { grid-template-columns: 1fr; }
  .photo-card { aspect-ratio: 4 / 5; }
  .photo-card-overlay { opacity: 1; background: linear-gradient(180deg, transparent 63%, rgba(0,0,0,.72)); }
  .photo-card-overlay b { display: none; }
  .photo-card-overlay small { margin-top: 340px; }
  .photo-modal-nav { width: 42px; height: 56px; }
}


/* V47 - interaktywne opisy pakietów */
.package-modal {
  position: fixed;
  inset: 0;
  z-index: 1120;
  display: none;
  place-items: center;
  padding: 22px;
}
.package-modal.active { display: grid; }
.package-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.84);
  backdrop-filter: blur(10px);
}
.package-modal-dialog {
  position: relative;
  z-index: 1;
  width: min(1060px, 96vw);
  max-height: min(90vh, 960px);
  overflow: auto;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 30px;
  background:
    radial-gradient(circle at 8% 0%, rgba(239,9,23,.2), transparent 27rem),
    radial-gradient(circle at 100% 30%, rgba(239,9,23,.08), transparent 25rem),
    linear-gradient(145deg, #15151e, #09090e 62%);
  box-shadow: 0 35px 110px rgba(0,0,0,.72);
  padding: clamp(24px, 4vw, 52px);
  scrollbar-width: thin;
  scrollbar-color: rgba(239,9,23,.7) rgba(255,255,255,.05);
}
.package-modal-close {
  position: sticky;
  z-index: 5;
  top: 0;
  margin-left: auto;
  margin-bottom: 4px;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  background: rgba(12,12,18,.9);
  color: #fff;
  font-size: 1.8rem;
  cursor: pointer;
  backdrop-filter: blur(10px);
}
.package-modal-head {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  gap: 28px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--line);
}
.package-modal-head h2 {
  margin: 8px 0 14px;
  font-size: clamp(2.3rem, 6vw, 5rem);
  line-height: .94;
  letter-spacing: -.055em;
}
.package-modal-head p:not(.eyebrow) {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  font-size: 1.04rem;
  line-height: 1.65;
}
.package-modal-price {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 150px;
  padding: 14px 18px;
  border: 1px solid rgba(239,9,23,.48);
  border-radius: 999px;
  background: rgba(239,9,23,.12);
  color: #fff;
  font-size: 1.2rem;
  white-space: nowrap;
  box-shadow: 0 0 32px rgba(239,9,23,.12);
}
.package-modal-summary {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-top: 24px;
}
.package-summary-box {
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255,255,255,.026);
  padding: 22px;
}
.package-summary-box h3 {
  margin: 0 0 14px;
  font-size: 1.05rem;
}
.package-summary-box ul {
  margin: 0;
  padding-left: 19px;
  color: var(--muted);
  line-height: 1.62;
}
.package-summary-box li + li { margin-top: 8px; }
.package-summary-box li::marker { color: var(--red); }
.package-summary-includes li {
  color: #ededf2;
  font-weight: 750;
}
.package-breakdown-head { margin: 34px 0 16px; }
.package-breakdown-head h3 {
  margin: 7px 0 0;
  font-size: clamp(1.6rem, 3vw, 2.35rem);
  letter-spacing: -.03em;
}
.package-breakdown {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.package-stage-card {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 16px;
  align-items: start;
  min-height: 160px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.012));
  padding: 20px;
}
.package-stage-card > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: var(--red);
  color: #fff;
  font-weight: 950;
  box-shadow: 0 10px 28px rgba(239,9,23,.22);
}
.package-stage-card h3 {
  margin: 2px 0 9px;
  font-size: 1.05rem;
}
.package-stage-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
  font-size: .94rem;
}
.package-modal-result {
  margin-top: 18px;
  border: 1px solid rgba(239,9,23,.28);
  border-radius: 22px;
  background: linear-gradient(135deg, rgba(239,9,23,.13), rgba(255,255,255,.025));
  padding: 22px;
}
.package-modal-result span {
  display: block;
  margin-bottom: 8px;
  color: #ff4a57;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.package-modal-result p {
  margin: 0;
  color: #f3f3f5;
  font-size: 1.05rem;
  line-height: 1.6;
}
.package-modal-note {
  display: grid;
  gap: 7px;
  margin-top: 14px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.02);
  padding: 18px 20px;
  color: var(--muted);
  line-height: 1.55;
}
.package-modal-note strong { color: #fff; }
.package-modal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}
@media (max-width: 760px) {
  .package-modal {
    align-items: end;
    padding: 0;
  }
  .package-modal-dialog {
    width: 100%;
    max-height: 92vh;
    border-radius: 26px 26px 0 0;
    padding: 20px;
  }
  .package-modal-head {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .package-modal-price {
    justify-self: start;
    min-width: 0;
  }
  .package-modal-summary,
  .package-breakdown {
    grid-template-columns: 1fr;
  }
  .package-stage-card { min-height: 0; }
  .package-modal-actions .button { width: 100%; }
}

/* =========================================================
   V49 - POWERCHIP V-TECH
   ========================================================= */
.nav-dropdown-menu { width: 344px; }
.nav-dropdown-featured {
  margin-top: 4px;
  background: linear-gradient(135deg, rgba(239,9,23,.14), rgba(239,9,23,.04));
  border-color: rgba(239,9,23,.26) !important;
}
.nav-dropdown-featured strong { display: flex; align-items: center; gap: 8px; }
.nav-dropdown-featured strong span {
  display: inline-flex;
  padding: 3px 6px;
  border-radius: 999px;
  background: var(--red);
  color: #fff;
  font-size: .55rem;
  line-height: 1;
  letter-spacing: .1em;
}

/* Home page PowerChip teaser */
.powerchip-teaser {
  position: relative;
  min-height: 680px;
  display: grid;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  border-block: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 68% 50%, rgba(239,9,23,.26), transparent 27rem),
    linear-gradient(110deg, #050508 0%, #08080d 49%, #08070a 100%);
}
.powerchip-teaser::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(5,5,8,.99) 0%, rgba(5,5,8,.92) 43%, rgba(5,5,8,.44) 68%, rgba(5,5,8,.72) 100%),
    repeating-linear-gradient(118deg, transparent 0 55px, rgba(255,255,255,.015) 56px 57px);
}
.powerchip-teaser-media {
  position: absolute;
  inset: 0 0 0 48%;
  z-index: -2;
}
.powerchip-teaser-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(.82) contrast(1.08) brightness(.74);
}
.powerchip-teaser-grid {
  display: grid;
  grid-template-columns: 1.12fr .88fr;
  align-items: center;
  gap: 70px;
  padding-block: 88px;
}
.powerchip-brandline,
.pc-brand-row {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 22px;
}
.powerchip-brandline > span,
.pc-brand-row > span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 7px 12px;
  border-radius: 999px;
  border: 1px solid rgba(239,9,23,.44);
  background: rgba(239,9,23,.13);
  color: #ff4d59;
  font-size: .66rem;
  font-weight: 950;
  letter-spacing: .15em;
}
.powerchip-brandline img,
.pc-brand-row img { width: 102px; height: auto; }
.powerchip-teaser h2 {
  max-width: 720px;
  margin: 0 0 22px;
  font-size: clamp(2.7rem, 5.1vw, 5.3rem);
  line-height: .94;
  letter-spacing: -.055em;
}
.powerchip-teaser h2 em,
.pc-hero h1 em { color: var(--red); font-style: normal; }
.powerchip-teaser-copy > p {
  max-width: 680px;
  margin: 0;
  color: #c4c4cc;
  font-size: 1.03rem;
  line-height: 1.75;
}
.powerchip-teaser-facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin: 32px 0;
}
.powerchip-teaser-facts div {
  min-width: 0;
  padding: 17px 16px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 16px;
  background: rgba(13,13,19,.68);
  box-shadow: 0 18px 35px rgba(0,0,0,.18);
}
.powerchip-teaser-facts strong,
.powerchip-teaser-facts span { display: block; }
.powerchip-teaser-facts strong { color: #fff; font-size: 1.3rem; line-height: 1.1; }
.powerchip-teaser-facts span { margin-top: 6px; color: #a8a8b2; font-size: .72rem; line-height: 1.35; }
.powerchip-teaser-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.powerchip-teaser-note { display: block; max-width: 650px; margin-top: 20px; color: #7f7f89; line-height: 1.55; }
.powerchip-teaser-device {
  position: relative;
  min-height: 480px;
  display: grid;
  place-items: center;
}
.powerchip-teaser-device > img {
  position: relative;
  z-index: 2;
  width: min(100%, 430px);
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 34px 90px rgba(0,0,0,.62), 0 0 70px rgba(239,9,23,.18);
}
.powerchip-device-halo {
  position: absolute;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  border: 1px solid rgba(239,9,23,.38);
  box-shadow: inset 0 0 80px rgba(239,9,23,.12), 0 0 85px rgba(239,9,23,.15);
}
.powerchip-teaser-device > span {
  position: absolute;
  right: -10px;
  bottom: 36px;
  z-index: 3;
  padding: 14px 17px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(5,5,9,.88);
  color: #c8c8d0;
  font-size: .65rem;
  font-weight: 900;
  letter-spacing: .16em;
  box-shadow: 0 18px 40px rgba(0,0,0,.45);
}
.powerchip-teaser-device > span b { color: var(--red); }

/* PowerChip page */
.powerchip-page { background: #050508; }
.powerchip-page main { overflow: hidden; }
.powerchip-page .site-header { background: rgba(5,5,9,.88); backdrop-filter: blur(16px); border-bottom-color: rgba(255,255,255,.08); }
.pc-hero {
  position: relative;
  min-height: 860px;
  display: grid;
  align-items: center;
  padding: 150px 0 72px;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 76% 44%, rgba(239,9,23,.27), transparent 29rem),
    radial-gradient(circle at 8% 85%, rgba(110,0,10,.19), transparent 28rem),
    linear-gradient(145deg, #050508 0%, #09090e 58%, #050508 100%);
}
.pc-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(105deg, rgba(5,5,8,.98) 0%, rgba(5,5,8,.79) 50%, rgba(5,5,8,.26) 100%),
    repeating-linear-gradient(120deg, transparent 0 55px, rgba(255,255,255,.014) 56px 57px);
}
.pc-hero-noise {
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .38;
  background-image: radial-gradient(rgba(255,255,255,.11) .65px, transparent .65px);
  background-size: 8px 8px;
  mask-image: linear-gradient(90deg, transparent, #000 50%, #000);
}
.pc-hero-grid {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  align-items: center;
  gap: 64px;
}
.pc-hero h1 {
  max-width: 800px;
  margin: 0 0 24px;
  font-size: clamp(3.5rem, 6.2vw, 6.8rem);
  line-height: .9;
  letter-spacing: -.065em;
}
.pc-hero-copy > p {
  max-width: 690px;
  margin: 0;
  color: #c6c6ce;
  font-size: 1.08rem;
  line-height: 1.75;
}
.pc-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 31px 0 34px; }
.pc-hero-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.pc-hero-metrics article {
  padding: 16px 15px;
  border-left: 2px solid var(--red);
  background: linear-gradient(90deg, rgba(239,9,23,.09), transparent);
}
.pc-hero-metrics strong,
.pc-hero-metrics span { display: block; }
.pc-hero-metrics strong { font-size: 1.36rem; line-height: 1.1; }
.pc-hero-metrics span { margin-top: 6px; color: #9999a3; font-size: .72rem; line-height: 1.35; }
.pc-hero-visual { position: relative; min-height: 570px; display: grid; place-items: center; }
.pc-hero-image-wrap {
  position: relative;
  width: min(100%, 525px);
  aspect-ratio: 1 / 1;
  border-radius: 42px;
  overflow: hidden;
  transform: rotate(2deg);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 45px 100px rgba(0,0,0,.62), 0 0 90px rgba(239,9,23,.13);
}
.pc-hero-image-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(145deg, transparent 48%, rgba(239,9,23,.22));
  pointer-events: none;
}
.pc-hero-image-wrap img { width: 100%; height: 100%; object-fit: cover; }
.pc-scan-line {
  position: absolute;
  left: 0;
  right: 0;
  top: 18%;
  height: 2px;
  background: linear-gradient(90deg, transparent, #ff2333, transparent);
  box-shadow: 0 0 22px rgba(239,9,23,.9);
  animation: pcScan 4s ease-in-out infinite;
}
@keyframes pcScan { 0%,100% { top: 16%; opacity: .28; } 50% { top: 82%; opacity: .95; } }
.pc-floating-card {
  position: absolute;
  z-index: 3;
  min-width: 180px;
  padding: 14px 17px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 15px;
  background: rgba(7,7,11,.9);
  box-shadow: 0 20px 45px rgba(0,0,0,.46);
  backdrop-filter: blur(12px);
}
.pc-floating-card span,
.pc-floating-card strong { display: block; }
.pc-floating-card span { color: #ff4c59; font-size: .62rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.pc-floating-card strong { margin-top: 4px; font-size: .9rem; }
.pc-floating-card-a { top: 45px; left: -26px; }
.pc-floating-card-b { right: -5px; bottom: 42px; }
.pc-hero-disclaimer { margin-top: 22px; color: #777781; font-size: .73rem; line-height: 1.55; }

.pc-benefits { background: linear-gradient(180deg, #08080d, #050508); }
.pc-benefit-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 42px; }
.pc-benefit-card {
  position: relative;
  min-height: 255px;
  padding: 27px 25px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(255,255,255,.035), rgba(255,255,255,.012));
  overflow: hidden;
}
.pc-benefit-card::after {
  content: "";
  position: absolute;
  inset: auto -50px -75px auto;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: rgba(239,9,23,.1);
  filter: blur(12px);
}
.pc-benefit-card > span { color: var(--red); font-size: .72rem; font-weight: 950; letter-spacing: .12em; }
.pc-benefit-card h3 { margin: 48px 0 10px; font-size: 1.2rem; }
.pc-benefit-card p { margin: 0; color: var(--muted); font-size: .91rem; line-height: 1.65; }

.pc-products { background: radial-gradient(circle at 50% 38%, rgba(239,9,23,.08), transparent 34rem), #050508; }
.pc-product-grid { display: grid; grid-template-columns: repeat(3, 1fr); align-items: stretch; gap: 18px; margin-top: 44px; }
.pc-product-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 30px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 26px;
  background: linear-gradient(160deg, #111118, #0a0a0f);
  box-shadow: 0 28px 60px rgba(0,0,0,.24);
  overflow: hidden;
}
.pc-product-card::after {
  content: "";
  position: absolute;
  inset: auto -80px -110px auto;
  width: 230px;
  height: 230px;
  border-radius: 50%;
  background: rgba(239,9,23,.08);
  filter: blur(18px);
}
.pc-product-featured { border-color: rgba(239,9,23,.55); transform: translateY(-12px); box-shadow: 0 35px 80px rgba(0,0,0,.36), 0 0 60px rgba(239,9,23,.09); }
.pc-product-ribbon {
  position: absolute;
  top: 0;
  right: 24px;
  padding: 7px 11px;
  border-radius: 0 0 10px 10px;
  background: var(--red);
  color: #fff;
  font-size: .55rem;
  font-weight: 950;
  letter-spacing: .1em;
}
.pc-product-top { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 23px; }
.pc-product-top span { color: #ff515d; font-size: .6rem; font-weight: 950; letter-spacing: .13em; }
.pc-product-top b { color: rgba(255,255,255,.14); font-size: .82rem; letter-spacing: .08em; }
.pc-product-card h3 { margin: 0; font-size: 1.6rem; line-height: 1.14; }
.pc-product-sub { min-height: 52px; margin: 10px 0 22px; color: var(--muted); font-size: .92rem; }
.pc-product-numbers { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 22px; }
.pc-product-numbers div { padding: 15px; border-radius: 15px; background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.07); }
.pc-product-numbers strong,
.pc-product-numbers span { display: block; }
.pc-product-numbers strong { color: var(--red); font-size: 1.28rem; line-height: 1; }
.pc-product-numbers span { margin-top: 6px; color: #a8a8b1; font-size: .66rem; line-height: 1.35; }
.pc-product-card ul { margin: 0 0 24px; padding: 0; list-style: none; }
.pc-product-card li { position: relative; padding: 9px 0 9px 24px; color: #d2d2d9; font-size: .88rem; border-bottom: 1px solid rgba(255,255,255,.07); }
.pc-product-card li::before { content: "✓"; position: absolute; left: 0; color: var(--red); font-weight: 900; }
.pc-product-price { margin-top: auto; padding: 20px 0 22px; }
.pc-product-price small,
.pc-product-price strong,
.pc-product-price span { display: block; }
.pc-product-price small { color: #888892; font-size: .66rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.pc-product-price strong { margin: 6px 0; font-size: 2.1rem; line-height: 1; }
.pc-product-price span { color: #8d8d97; font-size: .72rem; }
.pc-engine-variants {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 28px;
  margin-top: 24px;
  padding: 30px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 24px;
  background: linear-gradient(120deg, rgba(239,9,23,.11), rgba(255,255,255,.02));
}
.pc-engine-copy h3 { margin: 7px 0 8px; font-size: 1.5rem; }
.pc-engine-copy p:not(.eyebrow) { margin: 0; color: var(--muted); }
.pc-engine-prices { display: grid; grid-template-columns: repeat(2, minmax(170px, 1fr)); gap: 12px; }
.pc-engine-prices article { min-width: 170px; padding: 18px 20px; border-radius: 16px; border: 1px solid rgba(255,255,255,.1); background: rgba(5,5,9,.66); }
.pc-engine-prices span,
.pc-engine-prices strong,
.pc-engine-prices small { display: block; }
.pc-engine-prices span { color: #aaaab3; font-size: .73rem; font-weight: 800; }
.pc-engine-prices strong { margin: 6px 0 3px; color: #fff; font-size: 1.5rem; }
.pc-engine-prices small { color: #74747e; font-size: .66rem; }

.pc-process { background: #09090e; }
.pc-process-grid { display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 70px; }
.pc-process-photo { position: relative; min-height: 590px; border-radius: 28px; overflow: hidden; border: 1px solid rgba(255,255,255,.11); box-shadow: 0 30px 70px rgba(0,0,0,.4); }
.pc-process-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(5,5,9,.88)); }
.pc-process-photo img { width: 100%; height: 100%; min-height: 590px; object-fit: cover; }
.pc-process-photo > div { position: absolute; left: 28px; right: 28px; bottom: 28px; z-index: 2; }
.pc-process-photo span,
.pc-process-photo strong { display: block; }
.pc-process-photo span { color: var(--red); font-size: .7rem; font-weight: 950; letter-spacing: .14em; }
.pc-process-photo strong { margin-top: 6px; font-size: 2.2rem; }
.pc-process-copy h2 { max-width: 600px; margin: 7px 0 30px; font-size: clamp(2.1rem, 4vw, 4rem); line-height: 1.02; letter-spacing: -.04em; }
.pc-process-list { margin: 0; padding: 0; list-style: none; }
.pc-process-list li { display: grid; grid-template-columns: 48px 1fr; gap: 18px; padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.09); }
.pc-process-list li > span { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 50%; background: var(--red); font-weight: 950; }
.pc-process-list strong { display: block; font-size: 1rem; }
.pc-process-list p { margin: 5px 0 0; color: var(--muted); font-size: .88rem; }

.pc-important { padding-top: 72px; padding-bottom: 72px; background: #050508; }
.pc-important-box { display: grid; grid-template-columns: .86fr 1.14fr; gap: 60px; padding: 38px; border: 1px solid rgba(239,9,23,.33); border-radius: 25px; background: linear-gradient(130deg, rgba(239,9,23,.12), rgba(255,255,255,.018)); }
.pc-important-box h2 { max-width: 570px; margin: 7px 0 0; font-size: clamp(1.8rem, 3.1vw, 3.2rem); line-height: 1.05; }
.pc-important-text { border-left: 1px solid rgba(255,255,255,.12); padding-left: 34px; }
.pc-important-text p { margin: 0; color: #babac3; line-height: 1.72; }
.pc-important-text p + p { margin-top: 14px; }

.pc-form-section { background: radial-gradient(circle at 20% 50%, rgba(239,9,23,.12), transparent 27rem), #09090e; }
.pc-form-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 70px; align-items: start; }
.pc-form-copy { position: sticky; top: 125px; }
.pc-form-copy h2 { max-width: 590px; margin: 8px 0 20px; font-size: clamp(2.3rem, 4.7vw, 4.8rem); line-height: .98; letter-spacing: -.05em; }
.pc-form-copy > p { max-width: 550px; color: var(--muted); line-height: 1.75; }
.pc-form-contact { margin-top: 35px; padding: 19px 21px; border-left: 2px solid var(--red); background: rgba(255,255,255,.025); }
.pc-form-contact span,
.pc-form-contact a { display: block; }
.pc-form-contact span { color: #8f8f99; font-size: .75rem; }
.pc-form-contact a { margin-top: 4px; font-size: 1.3rem; font-weight: 900; }
.pc-check-form { padding: 30px; }

@media (max-width: 1100px) {
  .powerchip-teaser-grid,
  .pc-hero-grid { gap: 34px; }
  .powerchip-teaser-facts { grid-template-columns: 1fr; }
  .powerchip-teaser-facts div { display: grid; grid-template-columns: 150px 1fr; align-items: center; gap: 10px; }
  .powerchip-teaser-facts span { margin-top: 0; }
  .pc-benefit-grid { grid-template-columns: repeat(2, 1fr); }
  .pc-product-grid { grid-template-columns: 1fr; max-width: 760px; margin-inline: auto; }
  .pc-product-featured { transform: none; }
  .pc-product-sub { min-height: 0; }
}

@media (max-width: 900px) {
  .powerchip-teaser { min-height: auto; }
  .powerchip-teaser-media { inset: 0; opacity: .24; }
  .powerchip-teaser::before { background: linear-gradient(90deg, rgba(5,5,8,.98), rgba(5,5,8,.86)); }
  .powerchip-teaser-grid,
  .pc-hero-grid,
  .pc-process-grid,
  .pc-important-box,
  .pc-form-grid { grid-template-columns: 1fr; }
  .powerchip-teaser-device { display: none; }
  .pc-hero { min-height: auto; padding-top: 140px; }
  .pc-hero-visual { order: -1; min-height: 390px; }
  .pc-hero-image-wrap { width: min(76vw, 390px); }
  .pc-floating-card-a { left: 5%; }
  .pc-floating-card-b { right: 5%; }
  .pc-process-grid { gap: 42px; }
  .pc-process-photo,
  .pc-process-photo img { min-height: 480px; }
  .pc-important-text { border-left: 0; border-top: 1px solid rgba(255,255,255,.12); padding: 25px 0 0; }
  .pc-form-copy { position: static; }
  .pc-engine-variants { grid-template-columns: 1fr; }
}

@media (max-width: 780px) {
  .nav-dropdown.open .nav-dropdown-menu { max-height: 310px; }
  .nav-dropdown-featured strong { justify-content: center; }
  .powerchip-teaser-grid { padding-block: 68px; }
  .powerchip-brandline,
  .pc-brand-row { flex-wrap: wrap; gap: 12px; }
  .powerchip-brandline img,
  .pc-brand-row img { width: 88px; }
  .powerchip-teaser h2 { font-size: clamp(2.55rem, 13vw, 4rem); }
  .powerchip-teaser-facts div { grid-template-columns: 122px 1fr; }
  .powerchip-teaser-actions .button,
  .pc-hero-actions .button { width: 100%; }
  .pc-hero { padding: 122px 0 60px; }
  .pc-hero-visual { min-height: 310px; }
  .pc-hero-image-wrap { width: min(86vw, 320px); border-radius: 28px; }
  .pc-floating-card { min-width: 148px; padding: 11px 13px; }
  .pc-floating-card-a { top: 5px; left: 0; }
  .pc-floating-card-b { right: 0; bottom: 0; }
  .pc-hero h1 { font-size: clamp(3rem, 15vw, 4.6rem); }
  .pc-hero-metrics { grid-template-columns: 1fr; }
  .pc-benefit-grid { grid-template-columns: 1fr; }
  .pc-benefit-card { min-height: 0; }
  .pc-benefit-card h3 { margin-top: 24px; }
  .pc-product-card { padding: 25px 20px; }
  .pc-product-numbers { grid-template-columns: 1fr; }
  .pc-engine-variants { padding: 23px 19px; }
  .pc-engine-prices { grid-template-columns: 1fr; width: 100%; }
  .pc-engine-prices article { min-width: 0; }
  .pc-process-photo,
  .pc-process-photo img { min-height: 390px; }
  .pc-process-photo strong { font-size: 1.75rem; }
  .pc-process-list li { grid-template-columns: 42px 1fr; gap: 13px; }
  .pc-important-box { gap: 26px; padding: 24px 20px; }
  .pc-check-form { padding: 22px 18px; }
}

@media (max-width: 430px) {
  .powerchip-teaser-facts div { grid-template-columns: 1fr; }
  .powerchip-teaser-facts span { margin-top: 5px; }
  .pc-floating-card { display: none; }
  .pc-hero-visual { min-height: 285px; }
  .pc-hero-image-wrap { width: min(90vw, 290px); }
  .pc-product-ribbon { right: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .pc-scan-line { animation: none; }
}

/* V50 - informacja przy cenniku PowerChip */
.pc-price-note {
  max-width: 860px;
  margin: -10px 0 30px;
  color: var(--muted);
  font-size: 0.92rem;
  line-height: 1.65;
}

/* =========================================================
   V51 - MOBILE MENU TYPOGRAPHY / OFFER DROPDOWN FIX
   ========================================================= */
@media (max-width: 780px) {
  .main-nav {
    align-items: stretch;
    gap: 18px;
    padding-left: 18px;
    padding-right: 18px;
  }

  .main-nav > a,
  .nav-dropdown,
  .main-nav .nav-cta {
    width: min(100%, 360px);
    margin-inline: auto;
  }

  .main-nav > a:not(.nav-cta),
  .nav-dropdown-toggle {
    white-space: normal;
    line-height: 1.18;
    font-size: clamp(1.08rem, 5.2vw, 1.28rem);
  }

  .nav-dropdown-menu {
    width: 100% !important;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
  }

  .nav-dropdown.open .nav-dropdown-menu {
    max-height: 360px;
  }

  .nav-dropdown-menu a {
    padding: 12px 14px;
  }

  .nav-dropdown-menu strong {
    font-size: .92rem;
    line-height: 1.25;
    white-space: normal;
  }

  .nav-dropdown-menu small {
    font-size: .7rem;
    line-height: 1.32;
  }

  .nav-dropdown-featured strong {
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 6px;
  }

  .nav-dropdown-featured strong span {
    font-size: .48rem;
    padding: 3px 6px;
  }

  .main-nav .nav-cta {
    margin-top: 8px;
  }
}

/* =========================================================
   V52 - FINAL MOBILE OFFER DROPDOWN POSITION FIX
   Desktop dropdown uses translateX(-50%). Disable it on mobile.
   ========================================================= */
@media (max-width: 780px) {
  .nav-dropdown-menu,
  .nav-dropdown.open .nav-dropdown-menu,
  .nav-dropdown:hover .nav-dropdown-menu {
    position: static !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .nav-dropdown,
  .nav-dropdown-menu,
  .nav-dropdown-menu a {
    box-sizing: border-box;
  }
}


/* V53 - featured video in Aktualności */
@media (max-width: 780px) {
  .news-card-featured {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .news-video-preview,
  .news-video-preview img {
    min-height: 230px;
    height: 230px;
  }
  .news-video-preview::after {
    background: linear-gradient(180deg, transparent 58%, rgba(7,7,11,.42));
  }
  .news-card-body { padding: 26px 24px 30px; }
  .news-play-badge { width: 56px; height: 56px; }
}

/* V57 - PANEL KLIENTA */
.panel-nav-link{display:inline-flex;align-items:center;gap:7px;color:#fff!important}.panel-nav-link::before{content:"●";color:var(--red);font-size:.55rem}.footer-panel-link{color:#ff5a64;font-weight:800}.booking-form input[type=email]{width:100%}@media(max-width:780px){.panel-nav-link{width:min(100%,360px);justify-content:center;margin-inline:auto}}


/* =========================================================
   V62 - EXPECTATIONS FORM
   ========================================================= */
.booking-expectations {
  margin: 2px 0 18px;
  padding: 20px;
  border: 1px solid rgba(239,9,23,.3);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(239,9,23,.08), rgba(255,255,255,.025));
}
.booking-expectations[hidden] { display: none !important; }
.booking-expectations-head { margin-bottom: 15px; }
.booking-expectations-head span {
  display: block;
  color: #ff5c67;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.booking-expectations-head strong { display: block; margin-top: 5px; font-size: 1.08rem; }
.booking-expectations-head p { margin: 7px 0 0; color: var(--muted); font-size: .83rem; }
.expectation-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.booking-form .expectation-option {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  background: rgba(5,5,9,.55);
  color: #dcdce2;
  font-size: .78rem;
  font-weight: 700;
  cursor: pointer;
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.booking-form .expectation-option:hover { border-color: rgba(239,9,23,.45); transform: translateY(-1px); }
.booking-form .expectation-option:has(input:checked) { border-color: var(--red); background: rgba(239,9,23,.12); color: #fff; }
.booking-form .expectation-option input {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  margin: 0;
  accent-color: var(--red);
}
.booking-form .expectations-note-label { margin: 14px 0 0; }
.expectations-validation { min-height: 20px; margin: 7px 0 0; color: #ff7881; font-size: .76rem; }
@media (max-width: 700px) {
  .expectation-grid { grid-template-columns: 1fr; }
  .booking-expectations { padding: 16px; }
}

/* V72 - stan zalogowania na stronie publicznej */
.is-authenticated-link{position:relative}.is-authenticated-link::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#28d694;box-shadow:0 0 10px rgba(40,214,148,.8);top:9px;right:9px}.footer-panel-link.is-authenticated-link::after{top:50%;right:-14px;transform:translateY(-50%)}


/* V76 - konto klienta i zachęta do rejestracji */
.nav-account-link{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.035);min-width:116px;position:relative}
.nav-account-link:hover{border-color:rgba(244,22,36,.6);background:rgba(244,22,36,.08)}
.nav-account-icon{width:9px;height:9px;border-radius:50%;color:#f41624;text-shadow:0 0 12px #f41624;font-size:9px}
.nav-account-copy{display:flex;flex-direction:column;line-height:1.05}.nav-account-copy strong{font-size:11px}.nav-account-copy small{font-size:8px;color:var(--muted);margin-top:3px}.nav-account-badge{position:absolute;right:-6px;top:-7px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#f41624;color:#fff;font-size:10px;display:grid;place-items:center;box-shadow:0 0 18px rgba(244,22,36,.65)}
.client-account-section{padding-top:48px;padding-bottom:48px;background:linear-gradient(180deg,#09090e,#050509)}
.client-account-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;padding:38px;border:1px solid rgba(255,255,255,.09);border-radius:26px;background:radial-gradient(circle at 12% 20%,rgba(244,22,36,.14),transparent 36%),linear-gradient(145deg,rgba(18,18,25,.98),rgba(7,7,12,.98));box-shadow:0 26px 75px rgba(0,0,0,.36)}
.client-account-copy h2{max-width:620px;margin:8px 0 16px}.client-account-copy>p:not(.eyebrow){color:var(--muted);line-height:1.75}.client-account-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.client-account-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-account-benefits article{padding:20px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.025)}.client-account-benefits span{color:#f41624;font-size:11px;font-weight:900;letter-spacing:.12em}.client-account-benefits strong{display:block;margin:10px 0 6px;font-size:15px}.client-account-benefits p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.booking-account-hint{margin-top:16px;padding:18px;border:1px solid rgba(244,22,36,.28);border-radius:16px;background:rgba(244,22,36,.06);display:grid;gap:6px}.booking-account-hint strong{font-size:14px}.booking-account-hint span{color:var(--muted);font-size:12px;line-height:1.55}.booking-account-hint a{color:#ff4651;font-weight:800;font-size:12px}
.account-draft-notice{grid-column:1/-1;margin-bottom:16px;padding:14px 16px;border:1px solid rgba(36,201,138,.35);border-radius:14px;background:rgba(36,201,138,.08);display:flex;flex-direction:column;gap:4px}.account-draft-notice strong{color:#68e6ae}.account-draft-notice span{font-size:12px;color:var(--muted)}
.account-benefits-modal{position:fixed;inset:0;z-index:1100;display:none;align-items:center;justify-content:center;padding:20px}.account-benefits-modal.active{display:flex}.account-benefits-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.82);backdrop-filter:blur(8px)}.account-benefits-dialog{position:relative;width:min(620px,100%);padding:34px;border:1px solid rgba(255,255,255,.13);border-radius:24px;background:radial-gradient(circle at 90% 10%,rgba(244,22,36,.18),transparent 35%),#0c0c12;box-shadow:0 35px 100px rgba(0,0,0,.65)}.account-benefits-dialog h2{margin:8px 0 10px;font-size:clamp(30px,5vw,52px)}.account-benefits-reason{color:var(--muted);line-height:1.65}.account-benefits-close{position:absolute;right:18px;top:16px;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:#15151d;color:#fff;font-size:24px}.account-benefits-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0}.account-benefits-list span{padding:13px 14px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.025);font-size:12px}.account-benefits-list span:before{content:"✓";color:#f41624;font-weight:900;margin-right:8px}.account-benefits-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.account-continue-link{border:0;background:transparent;color:#aaa;text-decoration:underline;text-underline-offset:4px;padding:10px;cursor:pointer}.account-benefits-dialog>small{display:block;color:#777;margin-top:16px;line-height:1.5}
@media(max-width:1050px){.nav-account-link{order:8;width:100%;justify-content:center}.client-account-card{grid-template-columns:1fr}.client-account-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.client-account-card{padding:24px}.client-account-benefits,.account-benefits-list{grid-template-columns:1fr}.account-benefits-dialog{padding:28px 20px}.account-benefits-actions .button{width:100%}.account-continue-link{width:100%}}

/* V87 - widoczna ikona kalendarza na ciemnym formularzu */
.booking-form input[type="date"],.booking-form input[type="datetime-local"],.booking-form input[type="time"]{color-scheme:dark;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 11h18'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px 18px;padding-right:46px!important}
.booking-form input[type="date"]::-webkit-calendar-picker-indicator,.booking-form input[type="datetime-local"]::-webkit-calendar-picker-indicator,.booking-form input[type="time"]::-webkit-calendar-picker-indicator{opacity:0;width:30px;height:30px;cursor:pointer}

.footer-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center}.footer-links a{white-space:nowrap}@media(max-width:780px){.footer-links{flex-direction:column;gap:8px}}
\n\n/* V92: czytelny podział wielkości auta + zapytanie dla wybranego auta */\n.vehicle-size-guide{margin:4px 0 14px;padding:12px 14px;border:1px solid rgba(255,255,255,.11);border-radius:12px;background:rgba(255,255,255,.035);display:grid;gap:5px;color:#c9c9d0;font-size:.79rem;line-height:1.55}\n.vehicle-size-guide strong{color:#fff;font-size:.82rem}.vehicle-size-guide b{color:#f2f2f5}.vehicle-size-guide small{color:#8e8e99;font-size:.72rem}.vehicle-size-guide.compact{margin-top:8px}.admin-size-guide{margin-top:-2px}\n.booking-selected-vehicle{margin:0 0 14px;padding:15px 16px;border:1px solid rgba(239,9,23,.48);border-radius:14px;background:linear-gradient(135deg,rgba(239,9,23,.13),rgba(255,255,255,.025));display:grid;gap:3px}.booking-selected-vehicle[hidden]{display:none}.booking-selected-vehicle span{color:#ff4d58;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;font-weight:800}.booking-selected-vehicle strong{font-size:1.08rem;color:#fff}.booking-selected-vehicle small{color:#aaaab4;line-height:1.45}\n.client-vehicle-actions-three{grid-template-columns:repeat(3,minmax(0,1fr))}.client-vehicle-actions-three .panel-button{min-width:0}\n.inquiry-deleted-notice{margin:14px 0;padding:14px 16px;border:1px solid rgba(239,9,23,.38);border-radius:14px;background:rgba(239,9,23,.08);display:grid;gap:5px}.inquiry-deleted-notice strong{color:#fff}.inquiry-deleted-notice span{color:#c8c8d0;line-height:1.5;font-size:.86rem}\n@media(max-width:760px){.client-vehicle-actions-three{grid-template-columns:1fr}.vehicle-size-guide{font-size:.76rem}}\n

/* V93 - wiele uslug w zapytaniu */
.booking-selected-services{margin:-2px 0 18px;padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.025)}
.booking-selected-services-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.booking-selected-services-head strong{font-size:.82rem}.booking-selected-services-head span,.booking-selected-services-empty{color:#9e9ea7;font-size:.72rem;line-height:1.45}
.booking-service-chips{display:flex;flex-wrap:wrap;gap:8px}.booking-service-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 9px 8px 11px;border:1px solid rgba(239,9,23,.42);border-radius:999px;background:rgba(239,9,23,.1);font-size:.73rem}.booking-service-chip button{display:grid;place-items:center;width:20px;height:20px;border:0;border-radius:50%;background:rgba(255,255,255,.09);color:#fff;cursor:pointer;font-size:15px;line-height:1}.booking-service-chip button:hover{background:#ef0917}
@media(max-width:640px){.booking-selected-services-head{align-items:flex-start;flex-direction:column}}


/* V95: aktywny przycisk kalendarza i wstępna wycena zapytania */
.booking-date-picker{position:relative;display:block;width:100%}
.booking-date-picker>input{width:100%;background-image:none!important;padding-right:52px!important}
.booking-date-picker-button{position:absolute;z-index:3;right:7px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:10px;background:rgba(255,255,255,.055);color:#fff;cursor:pointer}
.booking-date-picker-button:hover,.booking-date-picker-button:focus-visible{background:rgba(239,9,23,.18);outline:1px solid rgba(239,9,23,.7)}
.booking-date-picker-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.booking-date-picker input::-webkit-calendar-picker-indicator{opacity:0!important;pointer-events:none;width:0!important;margin:0!important}
.booking-price-summary{margin:-3px 0 18px;padding:16px;border:1px solid rgba(239,9,23,.34);border-radius:15px;background:linear-gradient(135deg,rgba(239,9,23,.09),rgba(255,255,255,.025));display:grid;gap:11px}
.booking-price-summary[hidden]{display:none}
.booking-price-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.booking-price-head span{color:#ff6670;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.booking-price-head strong{font-size:1.05rem;text-align:right}
.booking-price-lines{display:grid;gap:6px;padding-top:9px;border-top:1px solid rgba(255,255,255,.08)}.booking-price-lines>div{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:.75rem}.booking-price-lines span{color:#d7d7de}.booking-price-lines b{white-space:nowrap;color:#fff}.booking-price-lines b.is-individual{color:#ffc66d}
.booking-price-summary p{margin:0;color:#9c9ca6;font-size:.7rem;line-height:1.55}
.booking-service-chip>span{display:grid;gap:2px}.booking-service-chip small{color:#ffadb2;font-size:.62rem;font-weight:750}
@media(max-width:640px){.booking-price-head{align-items:flex-start;flex-direction:column}.booking-price-head strong{text-align:left}.booking-price-lines>div{align-items:flex-start;flex-direction:column;gap:2px}}

/* V119 - wyszukiwarka potrzeb klienta w formularzu zapytania */
.booking-service-finder{position:relative;display:grid;gap:8px;min-width:0}.booking-service-finder>label{font-weight:800}.booking-service-search-control{position:relative;display:flex;align-items:center}.booking-service-search-control>span{position:absolute;left:14px;z-index:1;color:#ff4b5c;font-size:1.35rem;pointer-events:none}.booking-service-search-control input{width:100%;padding-left:42px!important}.booking-service-search-results{position:relative;z-index:1;top:auto;left:auto;right:auto;max-height:310px;overflow:auto;margin-top:2px;padding:7px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:#111116;box-shadow:0 14px 32px rgba(0,0,0,.32)}.booking-service-search-results>button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;text-align:left;padding:11px 12px;border:0;border-bottom:1px solid rgba(255,255,255,.07);background:transparent;color:#fff;cursor:pointer}.booking-service-search-results>button:last-child{border-bottom:0}.booking-service-search-results>button:hover,.booking-service-search-results>button:focus{background:rgba(239,9,23,.12);outline:none;border-radius:9px}.booking-service-search-results button strong{grid-column:1;font-size:.86rem}.booking-service-search-results button small{grid-column:1;color:#90909a;font-size:.67rem}.booking-service-search-results button span{grid-column:2;grid-row:1/3;align-self:center;color:#ff6670;font-weight:850;font-size:.72rem}.booking-service-search-empty{display:grid;gap:8px;padding:14px;color:#d7d7dd}.booking-service-search-empty span{color:#9898a2;font-size:.76rem;line-height:1.5}.booking-service-search-empty button{justify-self:start;border:1px solid rgba(239,9,23,.45);border-radius:9px;background:rgba(239,9,23,.12);color:#fff;padding:9px 12px;font-weight:800;cursor:pointer}.booking-service-browser{margin-top:3px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025);padding:0 12px}.booking-service-browser summary{cursor:pointer;padding:11px 0;color:#c7c7cd;font-size:.75rem;font-weight:800}.booking-service-browser-label{display:grid;gap:7px;padding:0 0 12px}.booking-service-browser-label select{width:100%}.booking-service-row{align-items:start}
@media(max-width:760px){.booking-service-search-results{top:auto;max-height:270px}.booking-service-finder{z-index:auto}}

/* V120 - podział pakietów specjalnych na auta nowe i używane */
.special-package-tabs {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: -18px 0 18px;
}
.special-package-tab {
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.035);
  color: #f5f5f7;
  border-radius: 12px;
  padding: 11px 22px;
  cursor: pointer;
  font-weight: 850;
  transition: background .2s, border-color .2s, transform .2s;
}
.special-package-tab:hover { transform: translateY(-1px); border-color: rgba(239,9,23,.5); }
.special-package-tab.active { background: rgba(239,9,23,.16); border-color: rgba(239,9,23,.7); color: #fff; }
.special-package-note {
  max-width: 900px;
  margin: 0 auto 28px;
  padding: 14px 18px;
  border: 1px solid rgba(239,9,23,.28);
  border-left: 3px solid var(--red);
  border-radius: 12px;
  background: rgba(239,9,23,.055);
  color: #cfcfd6;
  font-size: .9rem;
  line-height: 1.55;
}
.special-package-note strong { color: #fff; margin-right: 5px; }
.special-package-tabs[hidden], .special-package-note[hidden] { display: none !important; }

/* =========================================================
   V151 - DESKTOP NAV: bez zawijania etykiet
   ========================================================= */
@media (min-width: 781px) {
  .site-header .nav-wrap {
    width: min(calc(100% - 28px), 1360px);
    max-width: 1360px;
    gap: 18px;
  }
  .main-nav {
    flex-wrap: nowrap;
    white-space: nowrap;
  }
  .main-nav > a,
  .nav-dropdown-toggle,
  .nav-account-link,
  .nav-cta {
    white-space: nowrap;
  }
}
@media (min-width: 781px) and (max-width: 1240px) {
  .site-header .nav-wrap { gap: 12px; }
  .main-nav { gap: 13px; font-size: .78rem; }
  .brand { gap: 9px; font-size: .76rem; letter-spacing: .07em; }
  .brand img { width: 44px; height: 44px; }
  .nav-account-link { min-width: 106px; padding: 6px 8px; }
  .nav-account-copy strong { font-size: 10px; }
  .nav-account-copy small { font-size: 7px; }
  .nav-cta { padding: 10px 13px; }
}
@media (min-width:781px){.site-header .brand,.main-nav>*,.main-nav>a{flex:0 0 auto}}


/* V164 — panel klienta na telefonie: kafelki i sekcje na żądanie */
.client-mobile-hub{display:none}
@media(max-width:760px){
  html,body{background:#050509!important;overflow-x:hidden!important;overscroll-behavior:none!important}
  .client-mobile-hub{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}
  .client-mobile-hub button{min-width:0;min-height:112px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:#101017;color:#fff;text-align:left;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center}
  .client-mobile-hub button>span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:rgba(239,9,23,.14);color:#ff5964;font-size:1rem}
  .client-mobile-hub strong{font-size:.84rem}.client-mobile-hub small{color:#8d8d98;font-size:.64rem}
  .client-mobile-section{scroll-margin-top:84px}
  .client-mobile-section>.section-title{cursor:default;align-items:center!important;margin-bottom:0!important;padding:3px 0}
  .client-mobile-toggle{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 13px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#111118;color:#fff;font-weight:850;font-size:.7rem}
  .client-mobile-toggle b{font-size:1rem;transition:transform .18s ease}.client-mobile-section.is-open .client-mobile-toggle b{transform:rotate(180deg)}
  .client-mobile-section:not(.is-open)>:not(.section-title){display:none!important}
  .client-profile-section .client-profile-grid{grid-template-columns:1fr!important}
  .dashboard-section{padding:16px!important;border-radius:18px!important;margin-bottom:11px!important}
  .dashboard-section .section-title h2{font-size:1.2rem!important}
  .dashboard-section .chat-intro{display:none}
  .client-chat-section.is-open .chat-intro{display:block}
}


/* =========================================================
   V165 — panel klienta mobile: kafelki otwierają osobne ekrany
   ========================================================= */
@media(max-width:760px){
  .client-mobile-hub{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin:8px 0 18px!important}
  .client-mobile-hub button{position:relative!important;min-height:132px!important;padding:17px 16px!important;border-radius:20px!important;background:linear-gradient(180deg,#13131b 0%,#0d0d13 100%)!important;border:1px solid rgba(255,255,255,.11)!important;box-shadow:0 14px 30px rgba(0,0,0,.18)!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 20px!important;grid-template-rows:auto auto!important;column-gap:12px!important;row-gap:4px!important;align-items:center!important;cursor:pointer!important}
  .client-mobile-hub button:active{transform:scale(.985)}
  .client-mobile-hub button>span{grid-row:1/3!important;width:42px!important;height:42px!important;border-radius:13px!important;font-size:1.15rem!important}
  .client-mobile-hub button>strong{font-size:.93rem!important;line-height:1.16!important;align-self:end!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}
  .client-mobile-hub button>small{font-size:.69rem!important;line-height:1.35!important;align-self:start!important;color:#92929d!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}
  .client-mobile-hub button>b{grid-column:3!important;grid-row:1/3!important;align-self:center!important;justify-self:end!important;font-size:1.15rem!important;color:#ff5c67!important}

  /* Na ekranie głównym panelu klienta nie pokazujemy rozwiniętych sekcji. */
  body:not(.client-mobile-detail-mode) .client-mobile-section{display:none!important}
  body.client-mobile-detail-mode .client-mobile-hub,
  body.client-mobile-detail-mode .dashboard-welcome,
  body.client-mobile-detail-mode .dashboard-stats{display:none!important}
  body.client-mobile-detail-mode .client-mobile-section{display:none!important}
  body.client-mobile-detail-mode .client-mobile-section.is-mobile-active{display:block!important;margin:0!important;padding:14px!important;border-radius:18px!important;min-height:calc(100dvh - 90px)!important}

  /* Wyłączamy stary mechanizm rozwijania z V164. */
  .client-mobile-toggle{display:none!important}
  .client-mobile-section:not(.is-open)>:not(.section-title){display:initial}
  .client-mobile-section:not(.is-open) #client-add-vehicle{display:inline-flex!important}

  .client-mobile-section>.section-title{display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;margin:0 0 16px!important;padding:2px 0 14px!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
  .client-mobile-section>.section-title>div{min-width:0!important}
  .client-mobile-section>.section-title h2{font-size:1.35rem!important;line-height:1.1!important;margin-top:3px!important}
  .client-mobile-section>.section-title .chat-intro{display:none!important}
  .client-mobile-section>.section-title>#client-add-vehicle{grid-column:1/-1!important;width:100%!important;margin-top:2px!important}
  .client-mobile-back{grid-column:1!important;grid-row:1!important;width:46px!important;height:46px!important;border-radius:15px!important;border:1px solid rgba(255,255,255,.13)!important;background:#13131a!important;color:#fff!important;display:grid!important;place-items:center!important;font:inherit!important;font-size:1.55rem!important;font-weight:900!important;padding:0!important;cursor:pointer!important}
  .client-mobile-back:active{transform:scale(.96)}

  .client-profile-section .client-profile-grid{grid-template-columns:1fr!important}
  body.client-mobile-detail-mode{overflow-x:hidden!important;background:#050509!important}
  body.client-mobile-detail-mode .dashboard-shell{padding-top:12px!important}
}


/* V166 — promocja APP na stronie WWW + czytelne ceny */
.mk-app-promo{padding:68px 0;background:#07070b;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.07);overflow:hidden}
.mk-app-promo-shell{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.72fr);gap:54px;align-items:center;padding:42px 46px;border:1px solid rgba(255,255,255,.085);border-radius:32px;background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(239,9,23,.035) 60%,rgba(239,9,23,.075));box-shadow:0 28px 80px rgba(0,0,0,.28)}
.mk-app-promo-copy h2{margin:10px 0 16px;max-width:13ch;font-size:clamp(2.35rem,4.5vw,4.85rem);line-height:.96;letter-spacing:-.055em;text-transform:none}
.mk-app-promo-copy h2 em{display:block;font-style:normal;color:#ef0917}
.mk-app-promo-copy>p{max-width:61ch;margin:0;color:#aaaab4;font-size:1rem;line-height:1.65}
.mk-app-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0}
.mk-app-benefits span{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 12px;border:1px solid rgba(255,255,255,.075);border-radius:14px;background:rgba(255,255,255,.025);color:#e9e9ee;font-weight:800;font-size:.82rem}
.mk-app-benefits b{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:8px;background:rgba(239,9,23,.12);color:#ff5360;font-size:.64rem;letter-spacing:.06em}
.mk-app-promo-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}
.mk-app-qr-details{position:relative}
.mk-app-qr-details summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.025);color:#fff;font-size:.8rem;font-weight:900}
.mk-app-qr-details summary::-webkit-details-marker{display:none}
.mk-app-qr-details[open] summary{border-color:rgba(239,9,23,.45);background:rgba(239,9,23,.08)}
.mk-app-qr-popover{position:absolute;z-index:12;left:0;top:58px;width:270px;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:#0b0b10;box-shadow:0 24px 70px rgba(0,0,0,.6)}
.mk-app-qr{display:block;width:100%;height:auto;border-radius:12px;background:#fff}
.mk-app-qr-popover div{display:grid;gap:4px;margin-top:10px}.mk-app-qr-popover strong{font-size:.78rem}.mk-app-qr-popover span{color:#8f8f99;font-size:.68rem;line-height:1.4}
.mk-app-preview{position:relative;display:grid;place-items:center;min-height:360px}
.mk-app-preview-glow{position:absolute;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(239,9,23,.26),rgba(239,9,23,0) 68%);filter:blur(8px)}
.mk-app-preview-card{position:relative;width:min(100%,330px);padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:30px;background:linear-gradient(160deg,#121219,#08080d);box-shadow:0 26px 70px rgba(0,0,0,.46);transform:rotate(2deg)}
.mk-app-preview-head{display:flex;align-items:center;gap:11px;margin-bottom:26px}.mk-app-preview-head img{width:54px;height:54px;border-radius:15px}.mk-app-preview-head div{display:grid}.mk-app-preview-head b{font-size:.92rem}.mk-app-preview-head span{color:#ef0917;font-size:.66rem;font-weight:950;letter-spacing:.15em}
.mk-app-preview-card>strong{display:block;margin-bottom:22px;font-size:2rem;line-height:1.02;letter-spacing:-.04em}
.mk-app-preview-row{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-top:1px solid rgba(255,255,255,.07);font-size:.74rem}.mk-app-preview-row span{color:#92929c}.mk-app-preview-row b{white-space:nowrap;color:#fff}

/* Ceny: zawsze logiczna kolejność i bez łamania „zł” do nowej linii */
.service-prices span,.service-modal-prices span{white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;hyphens:none!important}
.service-modal-prices{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px!important;width:100%}
.service-modal-prices span{display:flex;align-items:center;justify-content:center;min-height:44px;text-align:center;padding:10px 12px!important;border-radius:14px!important;font-size:.82rem}

@media(max-width:780px){
  .mk-app-promo{padding:44px 0}
  .mk-app-promo-shell{grid-template-columns:1fr;padding:27px 22px;border-radius:24px;gap:20px}
  .mk-app-promo-copy h2{font-size:clamp(2.25rem,11.5vw,3.35rem);max-width:11ch}
  .mk-app-promo-copy>p{font-size:.92rem}
  .mk-app-benefits{grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}
  .mk-app-benefits span{min-height:44px;padding:9px;font-size:.72rem}
  .mk-app-promo-actions .button{width:100%}
  .mk-app-qr-details{display:none!important}
  .mk-app-preview{display:none}
  .service-modal-prices{grid-template-columns:1fr!important}
  .service-modal-prices span{justify-content:flex-start;min-height:42px;padding:9px 13px!important}
  .service-prices{min-width:0!important;gap:5px!important}
  .service-prices span{font-size:.8rem!important}
}
@media all and (display-mode:standalone){.mk-app-promo{display:none!important}}


/* V167 — MK Detailing APP: QR w osobnym oknie + stała instrukcja instalacji */
.mk-app-promo-actions{align-items:stretch}
.mk-app-promo-actions .button,.mk-app-qr-trigger{min-height:48px}
.mk-app-qr-trigger{padding:0 18px;border:1px solid rgba(239,9,23,.38);border-radius:999px;background:rgba(239,9,23,.07);color:#fff;font-size:.8rem;font-weight:900;cursor:pointer;transition:.18s ease}
.mk-app-qr-trigger:hover{background:rgba(239,9,23,.13);border-color:rgba(239,9,23,.62)}
.mk-app-site-dialog{width:min(92vw,620px);max-height:min(88dvh,780px);padding:0;border:0;background:transparent;color:#fff;overflow:visible}
.mk-app-site-dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.mk-app-site-dialog-card{position:relative;max-height:88dvh;overflow:auto;padding:30px;border:1px solid rgba(255,255,255,.13);border-radius:28px;background:radial-gradient(circle at 100% 0,rgba(239,9,23,.14),transparent 20rem),#0b0b10;box-shadow:0 30px 100px rgba(0,0,0,.68)}
.mk-app-site-dialog-card h2{margin:9px 44px 10px 0;font-size:clamp(1.7rem,4vw,2.55rem);line-height:1;letter-spacing:-.045em}
.mk-app-site-dialog-card>p{margin:0 0 20px;color:#a6a6b0;line-height:1.55}
.mk-app-site-dialog-close{position:absolute;top:18px;right:18px;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:#15151d;color:#fff;font-size:1.45rem;cursor:pointer}
.mk-app-qr-dialog-card{text-align:center}.mk-app-qr-dialog-card .eyebrow{text-align:left}.mk-app-qr-dialog-card h2{text-align:left}.mk-app-qr-dialog-card>p{text-align:left}
.mk-app-qr-dialog-card .mk-app-qr{width:min(58vw,300px);height:auto;margin:22px auto 12px;padding:12px;border-radius:22px;background:#fff}
.mk-app-qr-dialog-card>small{display:block;color:#a5a5ae;font-weight:800}
.mk-app-install-lead{max-width:54ch}
.mk-app-install-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 18px;padding:5px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#09090e}
.mk-app-install-tabs button{min-height:42px;border:0;border-radius:999px;background:transparent;color:#8f8f99;font-weight:900;cursor:pointer}.mk-app-install-tabs button.active{background:linear-gradient(135deg,#ef0917,#b6000c);color:#fff}
.mk-app-install-panel ol{display:grid;gap:10px;margin:0 0 20px;padding:0;list-style:none;counter-reset:mkappstep}
.mk-app-install-panel li{counter-increment:mkappstep;display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:12px;padding:12px 13px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025)}
.mk-app-install-panel li::before{content:counter(mkappstep);grid-row:1/3;width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:rgba(239,9,23,.14);color:#ff5b66;font-weight:950}
.mk-app-install-panel li b{align-self:end;font-size:.86rem}.mk-app-install-panel li span{color:#9696a0;font-size:.72rem;line-height:1.4}
@media(max-width:780px){
  .mk-app-qr-trigger{display:none!important}
  .mk-app-promo-actions{display:grid;grid-template-columns:1fr;gap:9px}
  .mk-app-promo-actions .button{width:100%}
  .mk-app-site-dialog{width:min(94vw,560px)}
  .mk-app-site-dialog-card{padding:24px 18px 20px;border-radius:23px}
  .mk-app-site-dialog-close{top:14px;right:14px}
}
@media all and (display-mode:standalone){.mk-app-site-dialog{display:none!important}}
