@import url('https://fonts.googleapis.com/css2?family=Inter:wght@600;700&display=swap');

.sekcja-hero {
  position: relative;
  overflow: hidden;
  min-height: 42vh;
  padding: 6rem 1rem 2.5rem;
  background: linear-gradient(180deg, rgba(51,102,204,0.08), rgba(0,0,0,0) 60%);
}
.sekcja-hero::before {
  content: "";
  position: absolute;
  inset: -20% -10% 30% -10%;
  background:
    radial-gradient(40% 35% at 20% 30%, rgba(51,102,204,.22), transparent 60%),
    radial-gradient(35% 30% at 80% 35%, rgba(102,153,255,.20), transparent 60%),
    radial-gradient(45% 40% at 50% 70%, rgba(51,102,204,.16), transparent 60%);
  filter: blur(32px);
  animation: animujTlo 18s linear infinite alternate;
  pointer-events: none;
  opacity: .65;
}
@keyframes animujTlo {
  from { transform: translateY(-1%) rotate(-1deg) scale(1.02); }
  to   { transform: translateY( 2%) rotate( 1deg) scale(1.05); }
}

.hero-tekst {
  max-width: 1080px;
  margin: 0 auto;
  text-align: center;
  padding: 0 1rem;
}
.sekcja-hero h1 {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: clamp(28px, 4vw, 44px);
  margin: 0 0 .6rem;
  color: var(--text-dark);
}
.lead {
  font-size: clamp(16px, 1.6vw, 20px);
  line-height: 1.7;
  color: var(--text-medium);
  margin: 0 auto 1.2rem;
  max-width: 900px;
}
.hero-tekst > * { opacity: 0; animation: fadeInUp .7s ease both; }
.hero-tekst h1    { animation-delay: .05s; }
.hero-tekst .lead { animation-delay: .12s; }
@keyframes fadeInUp { from {opacity:0; transform:translateY(10px);} to {opacity:1; transform:translateY(0);} }

.sekcja-cta { padding: 0 1rem 4rem; }
.karta-cta {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 16px;
  padding: 1.25rem 1.4rem;
  text-align: center;
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 10px 28px rgba(0,0,0,.07);
  transition: box-shadow .2s ease, transform .2s ease;
}
.karta-cta:hover {
  box-shadow: 0 14px 34px rgba(0,0,0,.09);
  transform: translateY(-1px);
}

.przycisk {
  position: relative;
  display: inline-block;
  min-width: 240px;
  padding: 1.08rem 2.0rem;
  border-radius: 14px;
  text-decoration: none;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1;
  letter-spacing: .25px;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;

  color: #fff;
  background: linear-gradient(135deg, #2F64CF 0%, #3B77FF 55%, #2F64CF 100%);
  background-size: 200% 100%;
  background-position: 0% 0%;
  border: 0;
  cursor: pointer;

  box-shadow: 0 10px 26px rgba(47,100,207,.32);

  transition:
    box-shadow .28s cubic-bezier(.22,.8,.2,1),
    background-position .60s cubic-bezier(.22,.8,.2,1);
}

.przycisk:hover {
  box-shadow: 0 16px 36px rgba(47,100,207,.38);
  background-position: 100% 0%;
}

.przycisk:focus-visible {
  outline: none;
  box-shadow:
    0 0 0 3px rgba(59,119,255,.22),
    0 12px 30px rgba(47,100,207,.38);
}

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}
