/* BananoweFury: czarny minimalizm, żółty #fafb09 tylko jako akcent (logo, CTA, model w nazwie auta) */
:root {
  --bg: #000;
  --bg-2: #0a0a0a;
  --bg-3: #121212;
  --line: rgba(255, 255, 255, .1);
  --line-2: rgba(255, 255, 255, .18);
  --text: #fff;
  --mute: rgba(255, 255, 255, .56);
  --dim: rgba(255, 255, 255, .38);
  --y: #fafb09;
  --ff: 'Saira', system-ui, sans-serif;
  --ff-d: 'Michroma', 'Saira', sans-serif;
  --ff-logo: 'Anton', 'Impact', sans-serif;
  --w: 1320px;
  --pad: clamp(16px, 4vw, 40px);
  --w-outer: calc(var(--w) + 2 * var(--pad));
  --r: 16px;
  --r-sm: 9px;
  --sec: clamp(72px, 9vw, 128px);
  --h2: clamp(24px, 2.6vw, 36px);
  --ease: cubic-bezier(.2, .7, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 76px; }
body { margin: 0; background: var(--bg); color: var(--text); font: 400 16px/1.6 var(--ff); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }

.wrap { width: 100%; max-width: var(--w-outer); margin: 0 auto; padding-left: var(--pad); padding-right: var(--pad); }
.h2 { font: 400 var(--h2)/1.15 var(--ff-d); text-transform: uppercase; margin: 0; }
.head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px 32px; flex-wrap: wrap; margin-bottom: clamp(28px, 3.4vw, 44px); }

/* ---------- przyciski ---------- */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 50px; padding: 0 24px; border-radius: var(--r-sm); font: 600 15px/1 var(--ff); border: 1px solid transparent; cursor: pointer; transition: background .2s, color .2s, border-color .2s; white-space: nowrap; }
.btn--sm { height: 40px; padding: 0 18px; font-size: 14px; }
.btn--y { background: var(--y); color: #000; }
.btn--y:hover { background: #fff; }
.btn--w { background: #fff; color: #000; }
.btn--w:hover { background: var(--y); }
.btn--ghost { border-color: var(--line-2); color: #fff; background: rgba(0, 0, 0, .25); }
.btn--ghost:hover { border-color: #fff; }

/* ---------- logo (odtworzone z tablic rejestracyjnych floty) ---------- */
.logo { display: inline-flex; flex-direction: column; align-items: flex-start; color: var(--y); font-family: var(--ff-logo); line-height: 1; text-transform: uppercase; }
.logo__w { font-size: 36px; line-height: .92; }
.logo__w small { font-size: .74em; }
.logo__t { font-size: 10.3px; margin-top: 4px; white-space: nowrap; }
.logo__t small { font-size: .8em; }

/* ---------- nawigacja ---------- */
.nav { position: fixed; inset: 0 0 auto; z-index: 50; transition: background .3s, border-color .3s; border-bottom: 1px solid transparent; }
.nav:not(.nav--over), .nav.is-solid { background: rgba(0, 0, 0, .92); border-bottom-color: var(--line); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.nav__in { max-width: var(--w-outer); margin: 0 auto; padding: 0 var(--pad); height: 76px; display: flex; align-items: center; gap: 32px; }
.nav__logo { flex-shrink: 0; }
.nav__links { display: flex; gap: 30px; margin-left: auto; }
.nav__links a, .nav__tel { font-size: 15px; font-weight: 500; color: rgba(255, 255, 255, .82); transition: color .2s; }
.nav__links a:hover, .nav__tel:hover { color: #fff; }
.nav__cta { display: flex; align-items: center; gap: 22px; }
.nav__burger { display: none; width: 44px; height: 44px; background: none; border: 0; padding: 0; cursor: pointer; position: relative; }
.nav__burger span { position: absolute; left: 11px; right: 11px; height: 2px; background: #fff; transition: transform .3s var(--ease), top .3s var(--ease); }
.nav__burger span:first-child { top: 17px; }
.nav__burger span:last-child { top: 25px; }
.nav.is-open .nav__burger span:first-child { top: 21px; transform: rotate(45deg); }
.nav.is-open .nav__burger span:last-child { top: 21px; transform: rotate(-45deg); }
.menu { display: none; }

@media (max-width: 900px) {
  .nav__links, .nav__tel { display: none; }
  .nav__cta { margin-left: auto; gap: 8px; }
  .nav__burger { display: block; }
  .menu { display: flex; flex-direction: column; position: fixed; inset: 76px 0 0; background: #000; padding: 32px var(--pad); gap: 6px; opacity: 0; visibility: hidden; transition: opacity .25s, visibility .25s; }
  .menu a { font: 400 22px/1.2 var(--ff-d); text-transform: uppercase; padding: 14px 0; border-bottom: 1px solid var(--line); }
  .menu .menu__tel { font: 600 20px/1 var(--ff); border: 0; margin-top: 18px; color: var(--y); }
  .nav.is-open { background: #000; }
  .nav.is-open .menu { opacity: 1; visibility: visible; }
}
@media (max-width: 420px) {
  .logo__w { font-size: 29px; }
  .logo__t { font-size: 8.3px; }
}

/* ---------- hero ---------- */
/* desktop: zdjęcie na pełną szerokość i wysokość ekranu, dosunięte do dołu (koła przy dolnej krawędzi).
   Kadr 1:1 jest wyższy niż każdy poziomy ekran, więc zawsze wypełnia szerokość i nigdy nie tnie auta z boków;
   nad dachem zostaje szyba na napisy. */
.hero { position: relative; height: 100svh; min-height: 560px; overflow: hidden; background: #000; }
.hero__bg { position: absolute; inset: 0; }
.hero__bg img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 100%; }
.hero::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(0, 0, 0, .92) 0%, rgba(0, 0, 0, .78) 20%, rgba(0, 0, 0, .35) 30%, rgba(0, 0, 0, 0) 38%, rgba(0, 0, 0, 0) 97%, rgba(0, 0, 0, .7) 100%); }
.hero__in { position: relative; z-index: 2; padding-top: calc(76px + clamp(10px, 1.3vw, 30px)); display: flex; align-items: flex-end; justify-content: space-between; gap: 20px 32px; }
.hero__title { font: 400 clamp(30px, 3vw, 56px)/1.14 var(--ff-d); text-transform: uppercase; margin: 0; color: #fff; text-shadow: 0 2px 18px rgba(0, 0, 0, .85), 0 0 2px rgba(0, 0, 0, .6); }
.hero__btns { display: flex; flex-wrap: wrap; gap: 12px; flex-shrink: 0; }

/* telefon i ekrany pionowe: napisy na czerni u góry, pionowe zdjęcie pod spodem */
@media (max-width: 760px), (max-aspect-ratio: 1/1) {
  .hero { height: auto; min-height: 0; display: flex; flex-direction: column; }
  .hero__in { order: -1; display: block; padding-top: calc(76px + 36px); }
  .hero__in > .hero__btns { margin-top: 24px; }
  .hero__bg { position: relative; inset: auto; margin-top: -30px; }
  .hero__bg img { height: auto; aspect-ratio: 4 / 5; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 26%); mask-image: linear-gradient(180deg, transparent 0%, #000 26%); }
  .hero::after { background: linear-gradient(180deg, rgba(0, 0, 0, 0) 84%, #000 100%); }
  .hero__title { font-size: clamp(24px, 6.4vw, 48px); }
  .hero__btns .btn { flex: 1 1 auto; }
}

/* ---------- tło z mapą (rytm sekcji) ---------- */
.map-bg { position: relative; isolation: isolate; }
.map-bg::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: .07;
  background: url(../img/map-world.svg) center 40px / min(1600px, 140vw) auto repeat-y; }

/* ---------- flota ---------- */
.fleet { padding: clamp(40px, 5vw, 72px) 0 var(--sec); }
.fleet--more { padding-top: var(--sec); }
.filters { display: flex; flex-wrap: wrap; gap: 8px; }
.filters button { height: 38px; padding: 0 16px; border-radius: 99px; border: 1px solid var(--line); background: rgba(0, 0, 0, .5); color: var(--mute); font-size: 14px; font-weight: 500; cursor: pointer; transition: color .2s, border-color .2s, background .2s; }
.filters button:hover { color: #fff; border-color: var(--line-2); }
.filters button.is-on { background: #fff; border-color: #fff; color: #000; }

.grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 24px); }
@media (max-width: 1099px) { .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 679px) { .grid { grid-template-columns: 1fr; } }

.car { position: relative; display: block; aspect-ratio: 5 / 4; border-radius: var(--r); overflow: hidden; background: var(--bg-3); isolation: isolate; }
.car.is-hidden { display: none; }
.car > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .7s var(--ease); z-index: -2; }
.car::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(0, 0, 0, .18) 0%, rgba(0, 0, 0, 0) 22%, rgba(0, 0, 0, 0) 46%, rgba(0, 0, 0, .72) 74%, rgba(0, 0, 0, .94) 100%); }
.car:hover > img { transform: scale(1.035); }
.car__tag { position: absolute; top: 14px; left: 14px; padding: 7px 12px; border-radius: 8px; background: rgba(0, 0, 0, .6); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); font-size: 13px; font-weight: 500; line-height: 1; }
.car__body { position: absolute; left: 0; right: 0; bottom: 0; padding: 0 clamp(14px, 1.5vw, 20px) clamp(14px, 1.5vw, 20px); display: flex; flex-direction: column; align-items: flex-start; }
.car__logo { height: 38px; width: auto; max-width: 110px; opacity: .8; margin-bottom: 12px; filter: drop-shadow(0 1px 8px rgba(0, 0, 0, .5)); }
.car__logo--dodge { height: 12px; margin-bottom: 16px; }
.car__logo--mustang { height: 30px; }
.car__logo--audi { height: 22px; margin-bottom: 14px; }
.car__name { font: 400 clamp(16px, 1.45vw, 21px)/1.25 var(--ff-d); }
.car__name b { font-weight: 400; color: var(--y); }
.car__name small { font: 500 12px/1 var(--ff); color: var(--mute); margin-left: 2px; }
.car__row { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; margin-top: 14px; }
.specs { display: flex; flex-wrap: wrap; gap: 5px; min-width: 0; }
.car .specs { flex-wrap: nowrap; }
.spec { display: inline-flex; align-items: center; gap: 5px; height: 32px; padding: 0 9px; border-radius: 7px; background: rgba(255, 255, 255, .08); border: 1px solid var(--line); font-size: 12.5px; font-weight: 600; white-space: nowrap; }
.spec i { font-style: normal; font-weight: 400; font-size: 11px; color: var(--mute); text-transform: uppercase; }
.car__go { flex-shrink: 0; width: 42px; height: 42px; border-radius: 10px; background: #fff; color: #000; display: grid; place-items: center; transition: background .2s; }
.car__go svg { width: 20px; height: 20px; }
.car:hover .car__go { background: var(--y); }
.car__empty { position: absolute; inset: 0; z-index: -2; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 14px; padding-top: 17%; background: var(--bg-3); }
.car__empty img { width: 42%; opacity: .09; }
.car__empty span { font-size: 13px; color: var(--dim); }

@media (max-width: 1300px) and (min-width: 1100px), (max-width: 860px) and (min-width: 680px), (max-width: 400px) {
  .spec { padding: 0 8px; font-size: 12px; gap: 4px; }
  .spec i { font-size: 10.5px; }
}

/* ---------- cennik ---------- */
.prices { padding: 0 0 var(--sec); }
.plans { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 24px); }
@media (max-width: 960px) { .plans { grid-template-columns: 1fr; max-width: 560px; } }
.plan { background: var(--bg-2); border: 1px solid var(--line); border-radius: var(--r); padding: clamp(22px, 2.2vw, 30px); display: flex; flex-direction: column; }
.plan__from { margin: 0 0 20px; color: var(--mute); font-size: 15px; }
.plan__from b { font: 400 clamp(24px, 2.2vw, 30px)/1 var(--ff-d); color: #fff; margin: 0 4px; }
.ptable { width: 100%; border-collapse: collapse; font-size: 15px; }
.ptable th { text-align: left; font-weight: 400; font-size: 12px; text-transform: uppercase; color: var(--dim); padding: 0 0 10px; }
.ptable td { padding: 12px 0; border-top: 1px solid var(--line); }
.ptable th:not(:first-child), .ptable td:not(:first-child) { text-align: right; }
.ptable td b { font-weight: 600; }
.ptable td span { color: var(--dim); font-size: 13px; }
.ptable__extra { margin: 0; padding: 12px 0 0; border-top: 1px solid var(--line); font-size: 14px; color: var(--mute); }
.plan__cars { list-style: none; margin: 22px 0 0; padding: 18px 0 0; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: 6px; }
.plan__cars a { display: inline-block; padding: 5px 10px; border-radius: 7px; background: rgba(255, 255, 255, .06); font-size: 13px; color: rgba(255, 255, 255, .8); transition: background .2s, color .2s; }
.plan__cars a:hover { background: #fff; color: #000; }
.deposit { margin: 24px 0 0; max-width: 760px; color: var(--mute); font-size: 15px; }
.deposit b { color: #fff; font-weight: 600; }

/* ---------- kontakt ---------- */
.contact { position: relative; padding: var(--sec) 0; border-top: 1px solid var(--line); overflow: hidden; isolation: isolate; }
/* mapa Europy: Polska (57% szer., 45% wys. mapy) wypada pod kolumną z adresami */
.contact__map { position: absolute; z-index: -1; width: 1000px; max-width: none; left: 50%; margin-left: -880px; top: 40px; pointer-events: none; 
  -webkit-mask-image: radial-gradient(closest-side at 57% 50%, #000 55%, transparent 100%); mask-image: radial-gradient(closest-side at 57% 50%, #000 55%, transparent 100%); }
.contact__in { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(36px, 6vw, 96px); align-items: start; }
@media (max-width: 900px) { .contact__in { grid-template-columns: 1fr; } .contact__map { width: 820px; left: 0; margin-left: -290px; top: 10px; } }
.contact__tel { display: block; margin-top: 28px; font: 400 clamp(22px, 2.4vw, 32px)/1.2 var(--ff-d); }
.contact__tel:hover { color: var(--y); }
.contact__mail { display: inline-block; margin-top: 10px; font-size: 17px; color: var(--mute); }
.contact__mail:hover { color: #fff; }
.places { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 36px; }
.place { display: flex; flex-direction: column; gap: 6px; padding: 18px 20px; border: 1px solid var(--line); border-radius: 12px; background: rgba(10, 10, 10, .8); transition: border-color .2s; }
.place:hover { border-color: var(--line-2); }
.place b { font: 400 14px/1.2 var(--ff-d); text-transform: uppercase; }
.place span { font-size: 14px; color: var(--mute); line-height: 1.5; }
@media (max-width: 420px) { .places { grid-template-columns: 1fr; } }

/* ---------- formularz ---------- */
.form { background: rgba(10, 10, 10, .88); border: 1px solid var(--line); border-radius: var(--r); padding: clamp(20px, 2.4vw, 32px); }
.form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.field { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.field--wide { grid-column: 1 / -1; }
.field span { font-size: 13px; color: var(--mute); }
.field input, .field select, .field textarea { width: 100%; height: 48px; padding: 0 14px; border-radius: var(--r-sm); border: 1px solid var(--line-2); background: #000; font-size: 15px; outline: none; transition: border-color .2s; color-scheme: dark; }
.field textarea { height: auto; padding: 12px 14px; resize: vertical; min-height: 96px; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: #fff; }
.field .is-bad { border-color: #ff5a4f; }
.form__hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.form__send { width: 100%; margin-top: 18px; }
.form__send[disabled] { opacity: .6; cursor: wait; }
.form__note { margin: 12px 0 0; font-size: 12.5px; color: var(--dim); line-height: 1.5; }
.form__note a { text-decoration: underline; text-underline-offset: 2px; }
.form__msg { margin: 10px 0 0; font-size: 14px; min-height: 1em; }
.form__msg.is-ok { color: var(--y); }
.form__msg.is-err { color: #ff7a70; }
@media (max-width: 480px) { .form__grid { grid-template-columns: 1fr; } }

/* ---------- podstrona auta ---------- */
/* nagłówek jak hero strony głównej: zdjęcie 11:10 po prawej, tekst na czerni po lewej */
.vh { --hh: clamp(560px, 86svh, 880px); position: relative; height: var(--hh); display: flex; align-items: center; overflow: hidden; isolation: isolate; }
.vh__bg { position: absolute; top: 0; right: 0; bottom: 0; width: min(68%, calc(var(--hh) * 1.1)); height: 100%; object-fit: cover; object-position: 50% 100%; z-index: -2;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 46%); mask-image: linear-gradient(90deg, transparent 0%, #000 46%); }
.vh::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(180deg, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 18%, rgba(0, 0, 0, 0) 75%, #000 100%); }
.vh--empty { --hh: clamp(460px, 62svh, 620px); }
.vh--empty::after { display: none; }
.vh__in { padding-top: 76px; }
.vh__from { margin: 26px 0 0; color: var(--mute); font-size: 16px; }
.vh__from b { font: 400 clamp(22px, 2vw, 28px)/1 var(--ff-d); color: #fff; margin: 0 4px; }
@media (max-width: 1100px) and (min-width: 761px) {
  .vh__bg { width: 76%; -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 50%); mask-image: linear-gradient(90deg, transparent 0%, #000 50%); }
  .vh::after { background: linear-gradient(90deg, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, 0) 55%), linear-gradient(180deg, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 18%, rgba(0, 0, 0, 0) 75%, #000 100%); }
}
@media (max-width: 760px) {
  .vh { height: auto; flex-direction: column; align-items: stretch; }
  .vh__in { order: -1; padding-top: calc(76px + 28px); }
  .vh__bg { position: relative; width: 100%; height: auto; aspect-ratio: 11 / 10; margin-top: -20px;
    -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 24%); mask-image: linear-gradient(180deg, transparent 0%, #000 24%); }
  .vh--empty { padding-bottom: 40px; }
  .vh .hero__btns .btn { flex: 1 1 auto; }
}
.back { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 500; color: rgba(255, 255, 255, .78); margin-bottom: 28px; padding: 8px 12px 8px 8px; border-radius: 8px; background: rgba(0, 0, 0, .45); }
.back svg { width: 18px; height: 18px; }
.back:hover { color: #fff; }
.vh__logo { display: block; height: 52px; width: auto; opacity: .85; margin-bottom: 16px; }
.vh__logo.car__logo--dodge { height: 18px; }
.vh__logo.car__logo--audi { height: 30px; }
.vh__name { font: 400 clamp(28px, 4vw, 56px)/1.1 var(--ff-d); margin: 0 0 22px; }
.vh__name b { font-weight: 400; color: var(--y); }
.vh__name small { font: 500 clamp(14px, 1.4vw, 18px)/1 var(--ff); color: var(--mute); }
.specs--lg .spec { height: 40px; padding: 0 14px; font-size: 15px; }
.specs--lg .spec i { font-size: 12px; }

.vbook { padding: clamp(40px, 5vw, 72px) 0 var(--sec); }
.vbook__in { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(36px, 6vw, 96px); align-items: start; }
.vbook .h2 { margin-bottom: 24px; }
.vbook__call { margin: 18px 0 0; color: var(--mute); }
.vbook__call a { color: #fff; font-weight: 600; }
.vbook__call a:hover { color: var(--y); }
@media (max-width: 900px) { .vbook__in { grid-template-columns: 1fr; } }

.gallery { padding: 0 0 var(--sec); }
.gal { columns: 4 240px; column-gap: 12px; }
.gal__i { display: block; margin-bottom: 12px; border-radius: 12px; overflow: hidden; break-inside: avoid; background: var(--bg-3); }
.gal__i img { width: 100%; transition: transform .6s var(--ease), opacity .3s; }
.gal__i:hover img { transform: scale(1.03); }

.lb { position: fixed; inset: 0; z-index: 100; background: rgba(0, 0, 0, .94); display: flex; align-items: center; justify-content: center; padding: 56px 64px; }
.lb[hidden] { display: none; }
.lb img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 8px; }
.lb__x, .lb__nav { position: absolute; width: 48px; height: 48px; border-radius: 10px; border: 1px solid var(--line-2); background: rgba(0, 0, 0, .6); color: #fff; cursor: pointer; display: grid; place-items: center; font-size: 28px; line-height: 1; }
.lb__x { top: 14px; right: 14px; }
.lb__nav svg { width: 22px; height: 22px; }
.lb__nav--p { left: 10px; }
.lb__nav--n { right: 10px; }
.lb__x:hover, .lb__nav:hover { border-color: #fff; }
@media (max-width: 600px) { .lb { padding: 64px 8px; } .lb__nav { top: auto; bottom: 10px; } .lb__nav--p { left: calc(50% - 56px); } .lb__nav--n { right: calc(50% - 56px); } }

/* ---------- podstrony tekstowe ---------- */
.doc { padding: calc(76px + var(--sec)) 0 var(--sec); min-height: 70svh; }
.wrap--doc { max-width: calc(820px + 2 * var(--pad)); }
.doc .h2 { margin-bottom: 28px; }
.doc p { color: rgba(255, 255, 255, .75); }
.doc a:not(.btn) { text-decoration: underline; text-underline-offset: 2px; }
.doc .btn { margin-top: 16px; }

/* ---------- stopka ---------- */
.foot { border-top: 1px solid var(--line); padding: 44px 0 28px; }
.foot__in { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.foot__nav { display: flex; flex-wrap: wrap; gap: 10px 26px; }
.foot__nav a { font-size: 14px; color: var(--mute); }
.foot__nav a:hover { color: #fff; }
.foot__bottom { display: flex; align-items: center; gap: 12px 24px; flex-wrap: wrap; margin-top: 34px; padding-top: 22px; border-top: 1px solid var(--line); font-size: 13px; color: var(--dim); }
.foot__bottom a:hover { color: #fff; }
.footer__made { margin-left: auto; display: inline-flex; align-items: center; gap: 7px; padding: 6px 12px; background: #fff; border: 1px solid var(--line); border-radius: 999px; transition: transform .2s; }
.footer__made:hover { transform: scale(1.04); }
.footer__made-label { font-size: 11.5px; color: #666; }
.footer__made-logo { width: 16px; height: 16px; border-radius: 3px; }
.footer__made-name { font-size: 11.5px; font-weight: 600; color: #111; }
@media (max-width: 600px) { .footer__made { margin-left: 0; } }

/* ---------- wejścia ---------- */
.js .rv { opacity: 0; transform: translateY(18px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
.js .rv.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .js .rv { opacity: 1; transform: none; transition: none; } }
