:root {
  --primary: #0b2a6b;
  --accent: #d6222c;
  --light: #ffffff;
  --price-max: 1000px;
}

html {
  scroll-behavior: smooth;
}
body {
  font-family: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Helvetica,
    Arial, "Apple Color Emoji", "Segoe UI Emoji";
}

/* Akcent */
.btn-accent {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--accent);
  --bs-btn-border-color: var(--accent);
  --bs-btn-hover-bg: #b51d25;
  --bs-btn-hover-border-color: #b51d25;
  --bs-btn-focus-shadow-rgb: 214, 34, 44;
}

/* NAV */
#topnav {
  transition: background-color 0.25s ease, box-shadow 0.25s ease;
  z-index: 1050;
}
#topnav.bg-transparent {
  background-color: transparent !important;
}
#topnav .nav-link {
  color: rgba(255, 255, 255, 0.92);
}
#topnav .nav-link:hover {
  color: #fff;
}
#topnav.scrolled {
  background: rgba(255, 255, 255, 0.95) !important;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.06);
  backdrop-filter: blur(8px);
}
#topnav.scrolled .navbar-brand span,
#topnav.scrolled .nav-link {
  color: var(--primary) !important;
}

/* Toggler na białym tle po scrollu */
#topnav.scrolled .navbar-toggler {
  border-color: rgba(11, 42, 107, 0.35);
}
#topnav.scrolled .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(11,42,107,0.9)' stroke-width='2' stroke-linecap='round' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

@media (max-width: 991.98px) {
  #topnav:not(.scrolled) .navbar-collapse.show {
    backdrop-filter: blur(2px);
  }
}

/* Sekcje */
.section {
  scroll-margin-top: 84px;
}
.hero {
  min-height: 72vh;
  background: radial-gradient(
      80% 70% at 10% 10%,
      rgba(255, 255, 255, 0.15),
      transparent 50%
    ),
    linear-gradient(180deg, var(--primary) 0%, #061a46 100%);
  color: var(--light);
  padding-top: 88px;
}
.hero-card {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(6px);
  color: #fff;
}
.hero h1 {
  text-shadow: 0 2px 20px rgba(0, 0, 0, 0.15);
}

/* CENNIK */
.pricing-wrap {
  max-width: var(--price-max);
  margin: 0 auto;
}
.price-list {
  border-radius: 1rem;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 2px 30px rgba(11, 42, 107, 0.06);
  border: 1px solid rgba(11, 42, 107, 0.08);
}
.price-item {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    "title price"
    "note  price";
  gap: 0.25rem 1rem;
  padding: 0.9rem 1.1rem;
  align-items: center;
}
.price-item + .price-item {
  border-top: 1px dashed rgba(11, 42, 107, 0.18);
}
.pi-title {
  grid-area: title;
  font-weight: 600;
  letter-spacing: 0.2px;
}
.pi-note {
  grid-area: note;
  font-size: 0.9rem;
  color: #6c757d;
  font-style: italic;
  margin-top: 0.1rem;
}
.pi-price {
  grid-area: price;
  justify-self: end;
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  font-weight: 700;
  color: var(--accent);
}

@media (max-width: 576px) {
  .price-item {
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "note"
      "price";
  }
  .pi-price {
    justify-self: start;
    margin-top: 0.25rem;
  }
}

footer {
  background: #fff;
}
