:root {
  --gold: #e0b36a;
  --gold-soft: #f3d9a4;
  --dark: #0b0908;
  --card: #151210;
  --text: #ffffff;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: 'Inter', sans-serif;
  background: var(--dark);
  color: var(--text);
}

/* HEADER */
.topbar {
  display: flex;
  justify-content: space-between;
  padding: 20px 70px;
  border-bottom: 1px solid rgba(224,179,106,0.3);
}

.logo {
  font-weight: 700;
  color: var(--gold);
  font-size: 20px;
}

nav a {
  margin-left: 30px;
  color: #ccc;
  text-decoration: none;
}

nav a:hover {
  color: var(--gold);
}

/* HERO */
.hero {
  display: flex;
  justify-content: space-between;
  padding: 120px 80px;
  background:
    radial-gradient(circle at center, #3a2b1b, #0b0908);
}

.hero-left {
  max-width: 600px;
}

.hero h1 {
  font-size: 48px;
  line-height: 1.2;
}

.hero h1 span {
  color: var(--gold);
}

.hero p {
  color: #cfcfcf;
  margin: 30px 0;
}

.buttons {
  display: flex;
  gap: 20px;
}

.btn {
  padding: 14px 34px;
  border-radius: 30px;
  text-decoration: none;
  font-size: 14px;
}

.primary {
  background: var(--gold);
  color: #000;
  box-shadow: 0 0 30px rgba(224,179,106,0.6);
}

.outline {
  border: 1px solid var(--gold);
  color: var(--gold);
}

/* INFO CARD */
.hero-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(224,179,106,0.4);
  border-radius: 18px;
  padding: 30px;
  width: 300px;
  backdrop-filter: blur(8px);
}

.hero-card h3 {
  color: var(--gold);
  font-size: 14px;
  letter-spacing: 1px;
}

/* CARS */
.cars {
  display: flex;
  justify-content: center;
  gap: 30px;
  padding: 120px 60px;
  background: radial-gradient(circle, #20170f, #0b0908);
}

.car-card {
  background: var(--card);
  width: 280px;
  border-radius: 22px;
  padding: 20px;
  text-align: center;
  box-shadow: 0 25px 60px rgba(0,0,0,0.7);
  transition: 0.4s;
}

.car-card:hover {
  transform: translateY(-12px);
  box-shadow: 0 40px 90px rgba(224,179,106,0.6);
}

.car-card img {
  width: 100%;
  margin-bottom: 15px;
}

.price {
  color: var(--gold);
  font-size: 22px;
}

footer {
  text-align: center;
  padding: 30px;
  color: #777;
}
i.fa-solid {
  color: var(--gold);
  margin-right: 8px;
  font-size: 14px;
}
/* Kontakt – lepsze wyśrodkowanie */
.hero {
  gap: 80px;
}

.hero-card {
  margin-top: 40px;
}

/* Ikony Font Awesome – złoty styl */
i.fa-solid {
  color: var(--gold);
  margin-right: 10px;
  font-size: 14px;
  text-shadow: 0 0 6px rgba(224,179,106,0.6);
}
/* === KONTAKT – IDEALNA SYMETRIA === */
.hero-contact {
  padding: 100px 80px;
}

.contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  max-width: 1100px;
  margin: 0 auto;
  align-items: center;
  gap: 80px;
}

/* Kontakt info */
.contact-info {
  line-height: 1.8;
  font-size: 16px;
}

i.fa-solid {
  color: var(--gold);
  margin-right: 10px;
  text-shadow: 0 0 6px rgba(224,179,106,0.6);
}

/* MAPA */
.map-box {
  max-width: 1100px;
  margin: 80px auto 0;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(224,179,106,0.4);
  box-shadow: 0 30px 80px rgba(0,0,0,0.6);
}

.map-box iframe {
  width: 100%;
  height: 380px;
  border: none;
}

/* === ANIMACJE WEJŚCIA (PREMIUM) === */
.animate-left {
  opacity: 0;
  transform: translateX(-40px);
  animation: slideLeft 1s ease forwards;
}

.animate-right {
  opacity: 0;
  transform: translateX(40px);
  animation: slideRight 1s ease forwards;
}

.animate-bottom {
  opacity: 0;
  transform: translateY(40px);
  animation: slideUp 1.1s ease forwards;
  animation-delay: 0.4s;
}

@keyframes slideLeft {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideRight {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* =========================
   REGULAMIN – WYŚRODKOWANY
   ========================= */

.regulamin-section {
  background: radial-gradient(circle at center, #3a2b1b, #0b0908);
  padding: 120px 40px;
}

.regulamin-box {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.regulamin-box h1 {
  margin-bottom: 50px;
}

.regulamin-text {
  text-align: left;
  line-height: 1.8;
  font-size: 16px;
}

.regulamin-text p {
  margin-bottom: 18px;
  padding-left: 20px;
  position: relative;
}

.regulamin-text p::before {
  content: "•";
  position: absolute;
  left: 0;
  color: var(--gold);
}
/* =========================
   FOOTER – PREMIUM GOLD
   ========================= */

.footer-premium {
  background: linear-gradient(to top, #0b0908, #15110d);
  border-top: 1px solid rgba(224,179,106,0.3);
  padding: 60px 40px 30px;
}

.footer-content {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 60px;
  align-items: center;
}

/* LEWA */
.footer-logo {
  font-weight: 700;
  font-size: 20px;
  color: var(--gold);
  margin-bottom: 10px;
}

.footer-left p {
  margin: 6px 0;
  color: #b8b1a6;
  font-size: 14px;
}

/* ŚRODEK */
.footer-center {
  text-align: center;
}

.footer-center a {
  display: block;
  color: #d2c6b2;
  text-decoration: none;
  margin: 6px 0;
  font-size: 14px;
  transition: 0.3s;
}

.footer-center a:hover {
  color: var(--gold);
  letter-spacing: 0.5px;
}

/* PRAWA */
.footer-right {
  text-align: right;
}

.footer-right span {
  display: block;
  margin-bottom: 10px;
  color: #b8b1a6;
  font-size: 14px;
}

.social-icons {
  display: flex;
  justify-content: flex-end;
  gap: 14px;
}

.social-icons a {
  width: 38px;
  height: 38px;
  border: 1px solid rgba(224,179,106,0.4);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  transition: 0.3s;
}

.social-icons a:hover {
  background: var(--gold);
  color: #000;
  box-shadow: 0 0 20px rgba(224,179,106,0.7);
}

/* DOLNA LINIA */
.footer-bottom {
  text-align: center;
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid rgba(224,179,106,0.2);
  color: #8f877a;
  font-size: 13px;
}
/* =========================
   FOOTER – MINIMAL PREMIUM
   ========================= */

.footer-premium {
  background: linear-gradient(to top, #0b0908, #15110d);
  border-top: 1px solid rgba(224,179,106,0.25);
  padding: 70px 40px 30px;
}

.footer-content-simple {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* BRAND */
.footer-brand p {
  margin: 6px 0;
  font-size: 14px;
  color: #b8b1a6;
}

.footer-logo {
  font-weight: 700;
  font-size: 22px;
  color: var(--gold);
  margin-bottom: 10px;
}

/* SOCIAL */
.footer-social {
  display: flex;
  gap: 18px;
}

.footer-social a {
  width: 46px;
  height: 46px;
  border: 1px solid rgba(224,179,106,0.45);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  font-size: 18px;
  transition: 0.3s;
}

.footer-social a:hover {
  background: var(--gold);
  color: #000;
  box-shadow: 0 0 25px rgba(224,179,106,0.7);
  transform: translateY(-2px);
}

/* COPYRIGHT */
.footer-bottom {
  text-align: center;
  margin-top: 45px;
  padding-top: 20px;
  border-top: 1px solid rgba(224,179,106,0.2);
  color: #8f877a;
  font-size: 13px;
}
/* =========================
   TOPBAR – PREMIUM GOLD
   ========================= */

.topbar {
  position: sticky;
  top: 0;
  z-index: 1000;

  display: flex;
  justify-content: space-between;
  align-items: center;

  padding: 18px 70px;

  background: rgba(11, 9, 8, 0.75);
  backdrop-filter: blur(10px);

  border-bottom: 1px solid rgba(224,179,106,0.25);
}

/* subtelna złota poświata */
.topbar::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60%;
  height: 1px;
  background: linear-gradient(
    to right,
    transparent,
    rgba(224,179,106,0.6),
    transparent
  );
}

/* LOGO */
.logo {
  font-weight: 700;
  font-size: 20px;
  color: var(--gold);
  letter-spacing: 0.5px;
}

/* MENU */
.topbar nav a {
  position: relative;
  margin-left: 32px;
  color: #e0d6c4;
  font-size: 14px;
  text-decoration: none;
  transition: color 0.3s;
}

/* złota kreska pod linkiem */
.topbar nav a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0%;
  height: 1px;
  background: var(--gold);
  transition: width 0.3s;
}

.topbar nav a:hover {
  color: var(--gold);
}

.topbar nav a:hover::after {
  width: 100%;
}

/* =========================
   LOGO GRAFICZNE – PREMIUM
   ========================= */

.logo-wrapper {
  display: flex;
  align-items: center;
}

.logo-img {
  height: 100px;          /* główny rozmiar logo */
  width: auto;
  display: block;
  filter: drop-shadow(0 0 8px rgba(224,179,106,0.6));
  transition: transform 0.3s ease, filter 0.3s ease;
}

/* Subtelny hover */
.logo-img:hover {
  transform: scale(1.04);
  filter: drop-shadow(0 0 14px rgba(224,179,106,0.9));
}

/* Mniejszy rozmiar po scrollu */
.topbar.scrolled .logo-img {
  height: 38px;
}
/* LOGO – FIX WIELKOŚCI I MARGINESÓW */

.logo-img {
  display: block;
  height: 250px;
  width: auto;
  margin: 0;
}

/* TOPBAR – CIAŚNIEJ */
.topbar {
  padding: 8px 8px;
  align-items: center;
  line-height: 1;
}

.topbar.scrolled {
  padding: 6px 40px;
}

.topbar.scrolled .logo-img {
  height: 50px;
}
/* =========================
   TOPBAR – KONTROLA LOGO
   ========================= */

.topbar {
  padding: 0px 40px;
  align-items: center;
}

/* LOGO – BEZ ROZPYCHANIA */
.logo-img {
  display: block;
  max-height: 60px;   /* REALNA WYSOKOŚĆ LOGO */
  height: auto;       /* ignoruje 250px */
  width: auto;
  margin: 0;
}

/* po scrollu */
.topbar.scrolled .logo-img {
  max-height: 50px;
}
/* =========================
   LOGO – WIĘKSZE WIZUALNIE
   ========================= */

.logo-img {
  display: block;
  max-height: 180px;        /* REALNY ROZMIAR (większy niż było) */
  width: auto;
  margin: 0;

  /* WIZUALNE POWIĘKSZENIE */
  transform: scale(1.25);
  transform-origin: left center;

  /* PREMIUM GLOW */
  filter:
    drop-shadow(0 0 6px rgba(224,179,106,0.6))
    drop-shadow(0 0 14px rgba(224,179,106,0.4));

  transition: transform 0.3s ease, filter 0.3s ease;
}

/* hover = jeszcze trochę mocy */
.logo-img:hover {
  transform: scale(1.35);
}

/* po scrollu – nadal wyraźne, ale ciaśniej */
.topbar.scrolled .logo-img {
  max-height: 64px;
  transform: scale(1.15);
}
/* =========================
   NAV – GOLD BAR BUTTONS
   ========================= */

.topbar nav {
  display: flex;
  gap: 14px;
}

/* PODSTAWA PRZYCISKU */
.topbar nav a {
  position: relative;
  padding: 10px 18px;
  font-size: 13px;
  letter-spacing: 0.4px;
  text-transform: uppercase;

  color: var(--gold);
  border: 1px solid rgba(224,179,106,0.45);
  background: linear-gradient(
    135deg,
    rgba(224,179,106,0.12),
    rgba(0,0,0,0.4)
  );

  /* ŚCIĘTE ROGI = SZTABKA */
  clip-path: polygon(
    8px 0%,
    100% 0%,
    calc(100% - 8px) 100%,
    0% 100%
  );

  transition: all 0.3s ease;
  backdrop-filter: blur(6px);
}

/* ZŁOTY BLASK */
.topbar nav a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    120deg,
    transparent 30%,
    rgba(224,179,106,0.35),
    transparent 70%
  );
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* HOVER */
.topbar nav a:hover {
  background: linear-gradient(
    135deg,
    rgba(224,179,106,0.35),
    rgba(0,0,0,0.3)
  );
  box-shadow:
    0 0 12px rgba(224,179,106,0.5),
    inset 0 0 8px rgba(224,179,106,0.4);
  transform: translateY(-1px);
}

.topbar nav a:hover::before {
  opacity: 1;
}

/* AKTYWNA STRONA – PEŁNA SZTABKA */
.topbar nav a.active {
  background: linear-gradient(
    135deg,
    #e0b36a,
    #b58b45
  );
  color: #000;
  font-weight: 600;
  box-shadow:
    0 0 18px rgba(224,179,106,0.9);
}
/* =========================
   MOBILE / RESPONSIVE
   ========================= */

@media (max-width: 768px) {

  /* ===== BODY ===== */
  body {
    overflow-x: hidden;
  }

  /* ===== TOPBAR ===== */
  .topbar {
    padding: 10px 16px;
  }

  .logo-img {
    max-height: 48px;
    transform: scale(1.1);
  }

  .topbar nav {
    gap: 8px;
  }

  .topbar nav a {
    padding: 8px 12px;
    font-size: 11px;
  }

  /* ===== HERO ===== */
  .hero {
    padding: 40px 16px;
  }

  .hero h1 {
    font-size: 28px;
    line-height: 1.2;
  }

  .hero h1 span {
    font-size: 22px;
  }

  .hero p {
    font-size: 14px;
  }

  /* układ hero w kolumnie */
  .hero,
  .contact-grid {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .hero-left,
  .hero-card {
    width: 100%;
    max-width: 100%;
  }

  .hero-card {
    margin-top: 0;
  }

  /* ===== KARTY AUT ===== */
  .cars {
    padding: 30px 16px;
  }

  .cars-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .car-card {
    width: 100%;
    margin: 0 auto;
  }

  /* ===== MAPA ===== */
  .map-box iframe {
    width: 100%;
    height: 260px;
    border-radius: 14px;
  }

  /* ===== FOOTER ===== */
  .footer-premium {
    padding: 30px 16px;
    text-align: center;
  }

  .footer-content-simple {
    flex-direction: column;
    gap: 20px;
  }

  .footer-social a {
    font-size: 18px;
  }

  .footer-bottom {
    font-size: 12px;
    margin-top: 12px;
  }
}
/* =========================
   FLOTA – ANIMACJA WEJŚCIA
   ========================= */

.car-card {
  animation: none;
}

/* start animacji */
.car-card.animate-bottom {
  opacity: 0;
  transform: translateY(40px);
  animation: carEnter 0.9s ease forwards;
}

@keyframes carEnter {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* =========================
   FOOTER – ULEPSZENIA
   ========================= */

.footer-center {
  text-align: center;
  margin-top: 10px;
}

.footer-claim {
  font-size: 13px;
  letter-spacing: 0.5px;
  color: rgba(224,179,106,0.65);
  text-transform: uppercase;
}

/* Powered by */
.footer-powered {
  margin-top: 12px;
  font-size: 11px;
  color: rgba(255,255,255,0.45);
}

.footer-powered a {
  color: rgba(224,179,106,0.8);
  text-decoration: none;
  margin-left: 4px;
}

.footer-powered a:hover {
  color: var(--gold);
}
/* =========================
   FOOTER – CLEAN PREMIUM
   ========================= */

.footer-layout-clean {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* środek naprawdę na środku */
.footer-center {
  flex: 1;
  text-align: center;
}

.footer-claim {
  font-size: 12.5px;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: rgba(224,179,106,0.65);
}

/* prawa strona maksymalnie do prawej */
.footer-right {
  display: flex;
  flex-direction: column;

