:root{
  --green:#79c31a;
  --green-dark:#63a612;
  --overlay: rgba(15, 23, 42, .55);
  --container: 1200px;
  --radius: 999px;

  /* UI feel */
  --ease: cubic-bezier(.2,.9,.2,1);
  --focus: rgba(121,195,26,.55);
  --glow: rgba(121,195,26,.45);
}

*{ box-sizing:border-box; }
html,body{ height:100%; }

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  font-family:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:#0b1220;
}

a{ color:inherit; text-decoration:none; }
button{ font-family:inherit; }

/* lepsze przewijanie + kotwice bez wjeżdżania pod nav */
section[id]{
  scroll-margin-top: 86px;
}

.page{ min-height:100vh; }

/* NAV */
.nav{
  background:#fff;
  height:70px;
  display:flex;
  align-items:center;
  border-bottom:1px solid rgba(2,6,23,.06);

  /* lepsze zachowanie przy scrollu */
  position: sticky;
  top: 0;
  z-index: 50;
}

.nav__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

.brand{ min-width:180px; }
.brand__mark{
  width:34px;height:34px;border-radius:50%;
  border:2px solid rgba(2,6,23,.15);
}

.nav__links{
  display:flex; gap:26px;
  font-size:14px; color:rgba(2,6,23,.8);
  flex:1;
}

.nav__actions{ display:flex; gap:12px; justify-content:flex-end; min-width:360px; }

/* ====== WSPÓLNY “GLOW BUTTON” (bez zmiany klas w HTML) ====== */
.pill,
.hero__cta,
.about__button,
.tile__btn,
.footer__pill{
  position: relative;
  isolation: isolate;
  transition: transform .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease), filter .18s var(--ease);
}

.pill::before,
.hero__cta::before,
.about__button::before,
.tile__btn::before,
.footer__pill::before{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius: inherit;
  background: radial-gradient(circle at 30% 20%, rgba(255,255,255,.45), transparent 55%),
              radial-gradient(circle at 60% 60%, var(--glow), transparent 60%);
  filter: blur(14px);
  opacity: .0;
  z-index: -1;
  transition: opacity .18s var(--ease), transform .18s var(--ease);
  transform: translateY(2px);
  pointer-events:none;
}

.pill:hover::before,
.hero__cta:hover::before,
.about__button:hover::before,
.tile:hover .tile__btn::before,
.footer__pill:hover::before{
  opacity: .95;
  transform: translateY(0);
}

.pill:focus-visible,
.hero__cta:focus-visible,
.about__button:focus-visible,
.tile__btn:focus-visible,
.footer__pill:focus-visible{
  outline: 2px solid var(--focus);
  outline-offset: 3px;
}

/* Twoje przyciski */
.pill{
  height:30px; padding:0 14px; border-radius:var(--radius);
  background:var(--green); color:#fff;
  font-size:12px; font-weight:600;
  border:0; cursor:pointer; white-space:nowrap;
  box-shadow:0 6px 18px rgba(121,195,26,.28);
  display:inline-flex; align-items:center; justify-content:center;
}
.pill:hover{
  background:var(--green-dark);
  transform:translateY(-1px);
  box-shadow:0 10px 26px rgba(121,195,26,.33);
}

/* HERO */
.hero{
  position: relative;
  min-height: 650px;
  overflow: hidden;
  background: #0b1220;

  /* parallax variable */
  --py: 0px;
}

.hero::before{
  content: "";
  position: absolute;
  inset: 0;
  background:
  linear-gradient(
    90deg,
    rgba(11,18,32,0.95) 0%,
    rgba(11,18,32,0.85) 45%,
    rgba(11,18,32,0.65) 100%
  ),
  url("./assets/hero-bg.jpg") center / cover no-repeat;

  z-index: 0;
  pointer-events: none;

  /* parallax (wydajnie) */
  transform: translate3d(0, var(--py), 0) scale(1.06);
  will-change: transform;
}

.hero__inner{
  position:relative; z-index:1;
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:flex; align-items:center; gap:40px;
  padding:64px 0;
}

.hero__content{ flex:1 1 58%; max-width:680px; }

.hero__title{
  margin:0 0 18px;
  font-size:54px; line-height:1.03; font-weight:800;
  color:var(--green);
  text-shadow:0 10px 30px rgba(0,0,0,.25);
}

.hero__desc{
  margin:0 0 22px;
  color:rgba(255,255,255,.92);
  font-size:12.5px; line-height:1.75;
  max-width:560px;
  text-shadow:0 8px 24px rgba(0,0,0,.35);
  text-align: left;
}

.hero__cta{
  height:28px; padding:0 14px; border-radius:var(--radius);
  background:var(--green); color:#fff;
  font-size:11px; font-weight:700;
  border:0; cursor:pointer;
  box-shadow:0 8px 22px rgba(121,195,26,.25);
  display:inline-flex; align-items:center; justify-content:center;
}
.hero__cta:hover{
  background:var(--green-dark);
  transform:translateY(-1px);
  box-shadow:0 12px 30px rgba(121,195,26,.32);
}

.hero__visual{
  position: relative;
  flex: 1 1 42%;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  pointer-events: none;
}

.hero__girl{
  width: 420px;
  max-width: 100%;
  height: auto;
  margin-bottom: -50px;
  transform: translateY(80px);
  filter:
    drop-shadow(0 30px 60px rgba(0,0,0,.45))
    drop-shadow(0 8px 20px rgba(0,0,0,.35));
  user-select: none;
}

.corner-note{
  position:absolute; left:24px; bottom:14px;
  color:rgba(255,255,255,.35);
  font-size:11px;
  z-index:2;
}

.placeholder{ height:300px; background:#fff; }
.placeholder.alt{ background:#f6f7fb; }

@media (max-width: 980px){
  .nav__links{ display:none; }
  .nav__actions{ min-width:auto; }
  .hero__inner{ flex-direction:column; align-items:flex-start; }
  .hero__visual{ width:100%; justify-content:center; min-height:auto; }
  .hero__title{ font-size:44px; text-align: left;}
}

/* ===== O MNIE ===== */
.about{
  background:#ffffff;
  padding:100px 0 120px; /* było 220px do tiles; teraz tiles jest osobno */
}

.about__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 420px 1fr;
  gap:80px;
  align-items:start;
}

.about__photo img{
  width:100%;
  border-radius:28px;
  box-shadow:0 30px 60px rgba(0,0,0,.18);
  display:block;
  margin-top: 120px;
}

.about__title{
  margin:0 0 24px;
  font-size:42px;
  font-weight:800;
  color:#7cc414;
}

.about__content p{
  font-size:14px;
  line-height:1.75;
  color:#1f2937;
  margin:0 0 16px;
  max-width:620px;
}

.about__cta-text{
  margin-top:24px;
}

.about__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:18px;
  height:34px;
  padding:0 18px;
  border-radius:999px;
  background:#7cc414;
  color:#fff;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
  box-shadow:0 8px 22px rgba(124,196,20,.35);
}

.about__button:hover{
  background:#6ab010;
  transform:translateY(-1px);
  box-shadow:0 12px 30px rgba(124,196,20,.40);
}

/* ===== RWD ===== */
@media (max-width: 980px){
  .about__inner{
    grid-template-columns:1fr;
    gap:40px;
  }
}

@media (max-width: 520px){
  .about{
    padding:60px 0 80px;
  }

  .about__title{
    font-size:32px;
  }
}

/* ===== TILES (2 KARTY) ===== */
.tiles{
  position: relative;
  overflow: hidden;
  background: #0b1220;

  /* parallax variable */
  --py: 0px;
}

/* biały pas nad tłem tiles */
.tiles__spacer{
  height: 140px;
  background: #fff;
}

/* tło tiles */
.tiles::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(0deg, rgba(12,18,32,.65), rgba(12,18,32,.65)),
    url("./assets/tiles-bg.jpg") center/cover no-repeat;
  z-index:0;
  pointer-events:none;

  /* parallax (wydajnie) */
  transform: translate3d(0, var(--py), 0) scale(1.08);
  will-change: transform;
}

/* zawartość nad tłem */
.tiles__inner{
  position:relative;
  z-index:1;
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 90px;
  align-items:center;
  padding: 90px 0 110px;
}

.tile{
  display:block;
  border-radius: 34px;
  overflow:hidden;
  text-decoration:none;
  background:#fff;
  box-shadow: 0 40px 90px rgba(0,0,0,.35);
  transform: translateY(0);
  transition: transform .22s var(--ease), box-shadow .22s var(--ease);
}

.tile:hover{
  transform: translateY(-6px);
  box-shadow: 0 52px 110px rgba(0,0,0,.42);
}

.tile__media{
  height: 390px;
  background:#e5e7eb;
}

.tile__media img{
  width:100%;
  height:100%;
  object-fit: cover;
  display:block;
}

.tile__footer{
  padding: 28px 26px 26px;
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(6px);
  text-align:center;
}

.tile__footer h3{
  margin: 0 0 14px;
  font-size: 30px;
  font-weight: 800;
  color: #7cc414;
  letter-spacing: -0.3px;
}

.tile__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: 28px;
  padding: 0 16px;
  border-radius: 999px;
  background:#7cc414;
  color:#fff;
  font-size: 11px;
  font-weight: 800;
  box-shadow: 0 10px 24px rgba(124,196,20,.35);
}

.tile:hover .tile__btn{
  background:#6ab010;
  transform: translateY(-1px);
}

@media (max-width: 980px){
  .tiles__inner{
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .tile__media{ height: 320px; }
}

@media (max-width: 520px){
  .tiles__inner{ padding: 60px 0 80px; }
  .tile__footer h3{ font-size: 24px; }
}

/* ===== IP ===== */
.ip{
  background:#ffffff;
  padding: 90px 0 110px;
}

.ip__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr 620px;
  gap: 80px;
  align-items:center;
}

.ip__title{
  margin:0 0 18px;
  font-size: 56px;
  line-height: 1.06;
  font-weight: 800;
  color:#7cc414;
  letter-spacing: -0.6px;
}

.ip__lead{
  margin:0;
  max-width: 420px;
  font-size: 12.8px;
  line-height: 1.75;
  color:#111827;
}

.ip__grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  justify-content:end;
}

.ipcard{
  border: 1.8px solid rgba(17,24,39,.55);
  border-radius: 14px;
  padding: 18px 18px 16px;
  background:#fff;
  text-align:center;

  transition: transform .18s var(--ease), box-shadow .18s var(--ease);
}

.ipcard:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(0,0,0,.10);
}

.ipcard__icon{
  width:46px;
  height:46px;
  margin: 0 auto 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#7cc414;
  font-size: 24px;
  font-weight: 800;
}

.ipcard__line{
  height:2px;
  width: 85%;
  margin: 0 auto 12px;
  background: rgba(17,24,39,.75);
}

.ipcard__title{
  margin: 0 0 10px;
  font-size: 15.5px;
  font-weight: 800;
  color:#7cc414;
  line-height: 1.15;
}

.ipcard__text{
  margin: 0;
  font-size: 11.5px;
  line-height: 1.55;
  color:#111827;
}

@media (max-width: 1100px){
  .ip__inner{
    grid-template-columns: 1fr;
    gap: 40px;
    align-items:start;
  }

  .ip__grid{
    justify-content:start;
    max-width: 640px;
  }
}

@media (max-width: 620px){
  .ip{
    padding: 60px 0 70px;
  }

  .ip__title{
    font-size: 36px;
  }

  .ip__grid{
    grid-template-columns: 1fr;
  }
}

/* ===== STOPKA (KRÓTSZA) ===== */
.footer{
  background:#ffffff;
  border-top:1px solid rgba(2,6,23,.06);
  padding:18px 0;
}

.footer__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr auto 1fr;
  align-items:center;
  gap:18px;
}

.footer__logo{
  font-size:24px;
  font-weight:800;
  color:var(--green);
  letter-spacing:.5px;
}

.footer__nav{
  display:flex;
  gap:22px;
  justify-content:center;
  font-size:13px;
  color:#0f172a;
}

.footer__nav a{
  transition:.2s var(--ease);
}

.footer__nav a:hover{
  color:var(--green);
}

.footer__contact{
  display:flex;
  gap:10px;
  justify-content:flex-end;
  flex-wrap:wrap;
}

.footer__pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:28px;
  padding:0 12px;
  border-radius:999px;
  background:var(--green);
  color:#fff;
  font-size:12px;
  font-weight:600;
  box-shadow:0 6px 18px rgba(121,195,26,.28);
}

.footer__pill:hover{
  background:var(--green-dark);
  transform:translateY(-1px);
  box-shadow:0 10px 26px rgba(121,195,26,.33);
}

@media (max-width: 900px){
  .footer__inner{
    grid-template-columns:1fr;
    text-align:center;
  }

  .footer__contact{
    justify-content:center;
  }
}

/* ukrycie tymczasowych placeholderów */
.placeholder{
  display:none !important;
  height:0 !important;
  padding:0 !important;
  margin:0 !important;
}

/* preferencje dostępności */
@media (prefers-reduced-motion: reduce){
  *{
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
  .hero::before,
  .tiles::before{
    transform: none !important;
  }
}
:root{
  --green:#79c31a;
  --green-dark:#63a612;
  --container:1200px;
  --radius:999px;
  --ease:cubic-bezier(.2,.9,.2,1);
  --glow: rgba(121,195,26,.45);
  --focus: rgba(121,195,26,.55);
}

:root{
  --green:#79c31a;
  --green-dark:#63a612;
  --container:1200px;
  --radius:999px;
  --ease:cubic-bezier(.2,.9,.2,1);
  --glow: rgba(121,195,26,.45);
  --focus: rgba(121,195,26,.55);
}

*{ box-sizing:border-box; }
html,body{ height:100%; }
html{ scroll-behavior:smooth; }

body{
  margin:0;
  font-family:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:#0b1220;
}

a{ color:inherit; text-decoration:none; }

/* NAV */
.nav{
  background:#fff;
  height:70px;
  display:flex;
  align-items:center;
  border-bottom:1px solid rgba(2,6,23,.06);
  position: sticky;
  top: 0;
  z-index: 50;
}

.nav__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

.brand{ display:flex; align-items:center; min-width:180px; }
.brand__text{
  font-size:26px;
  font-weight:800;
  letter-spacing:.5px;
  color:var(--green);
}

.nav__links{
  display:flex;
  gap:28px;
  font-size:14px;
  color:rgba(2,6,23,.8);
  flex:1;
}
.nav__links a{ padding:10px 2px; transition:.18s var(--ease); }
.nav__links a:hover{ color:rgba(2,6,23,1); }
.nav__links .is-active{ color:rgba(2,6,23,1); font-weight:700; }

.nav__actions{
  display:flex;
  gap:12px;
  justify-content:flex-end;
  min-width:360px;
}

/* BUTTONS + glow */
.pill{
  height:32px;
  padding:0 16px;
  border-radius:var(--radius);
  background:var(--green);
  color:#fff;
  font-size:12px;
  font-weight:700;
  border:0;
  cursor:pointer;
  white-space:nowrap;
  box-shadow:0 8px 22px rgba(121,195,26,.25);
  transition: transform .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  position:relative;
  isolation:isolate;
}
.pill--small{ height:30px; font-size:11px; }

.pill::before{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius: inherit;
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.45), transparent 55%),
    radial-gradient(circle at 60% 60%, var(--glow), transparent 60%);
  filter: blur(14px);
  opacity: 0;
  transform: translateY(2px);
  z-index:-1;
  transition: opacity .18s var(--ease), transform .18s var(--ease);
  pointer-events:none;
}
.pill:hover{
  background:var(--green-dark);
  transform:translateY(-1px);
  box-shadow:0 12px 30px rgba(121,195,26,.32);
}
.pill:hover::before{ opacity:.95; transform: translateY(0); }
.pill:focus-visible{ outline:2px solid var(--focus); outline-offset:3px; }

/* HERO IP */
.hero-ip{
  position:relative;
  min-height:640px;
  overflow:hidden;
  background:#0b1220;
  --py: 0px;
}

.hero-ip::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      90deg,
      rgba(11,18,32,0.95) 0%,
      rgba(11,18,32,0.85) 45%,
      rgba(11,18,32,0.65) 100%
    ),
    url("./assets/hero-bg.jpg") center / cover no-repeat;

  transform: translate3d(0, var(--py), 0) scale(1.06);
  will-change: transform;
  pointer-events:none;
  z-index:0;
}

.hero-ip__inner{
  position:relative;
  z-index:1;
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;

  display:flex;
  align-items:center;      /* równa góra/dół dla tekstu */
  gap:40px;

  min-height:640px;
  padding:0;
}

.hero-ip__content{ flex:1 1 58%; max-width:640px; }

.hero-ip__title{
  margin:0 0 14px;
  font-size:52px;
  line-height:1.05;
  font-weight:800;
  color:var(--green);
  letter-spacing:-0.6px;
  text-shadow:0 10px 30px rgba(0,0,0,.25);
}
.hero-ip__desc{
  margin:0 0 18px;
  color:rgba(255,255,255,.92);
  font-size:12.8px;
  line-height:1.75;
  text-shadow:0 8px 24px rgba(0,0,0,.35);
  max-width:520px;
}
.hero-ip__cta{
  height:28px;
  padding:0 14px;
  font-size:11px;
  font-weight:800;
  text-transform: lowercase;
}

.hero-ip__visual{
  flex:1 1 42%;
  display:flex;
  justify-content:flex-end;
  align-items:flex-end;  /* “babka” do dołu */
  height:100%;
  pointer-events:none;
}
.hero-ip__girl{
  width:420px;
  max-width:100%;
  height:auto;
  transform: translateY(48px); /* 👈 babka niżej */
  filter:
    drop-shadow(0 30px 60px rgba(0,0,0,.45))
    drop-shadow(0 8px 20px rgba(0,0,0,.35));
  user-select:none;
}


/* IP INFO */
.ip-info{
  background:#fff;
  padding:110px 0;
}

.ip-info__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr 520px; /* tekst | obraz */
  gap:80px;
  align-items:center;
}

.ip-info--reverse .ip-info__inner{
  grid-template-columns: 520px 1fr; /* obraz | tekst */
}

.ip-info__title{
  margin:0 0 18px;
  font-size:42px;
  line-height:1.1;
  font-weight:800;
  color:var(--green);
}

.ip-info__text{
  margin:0 0 20px;
  max-width:520px;
  font-size:14px;
  line-height:1.75;
  color:#111827;
}

.ip-info__cta{
  height:28px;
  font-size:11px;
  font-weight:800;
}

.ip-info__image img{
  width:100%;
  display:block;
  border-radius:28px;
  box-shadow:0 30px 60px rgba(0,0,0,.25);
}

/* IP STEPS */
.ip-step{
  background:#fff;
  padding:110px 0;
  border-top:1px solid rgba(2,6,23,.08);
}

.ip-step__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr 520px; /* KROK 1: tekst | obraz */
  gap:80px;
  align-items:center;
}

.ip-step--reverse .ip-step__inner{
  grid-template-columns: 520px 1fr; /* KROK 2: obraz | tekst */
}

.ip-step__image img{
  width:100%;
  display:block;
  border-radius:28px;
  box-shadow:0 30px 60px rgba(0,0,0,.22);
}

.ip-step__kicker{
  font-size:12px;
  font-weight:800;
  letter-spacing:.8px;
  color: rgba(17,24,39,.55);
  margin-bottom:8px;
}

.ip-step__title{
  margin:0 0 16px;
  font-size:36px;
  line-height:1.14;
  font-weight:800;
  color: var(--green);
  letter-spacing:-0.3px;
}

.ip-step__text{
  margin:0 0 14px;
  font-size:13px;
  line-height:1.75;
  color:#111827;
  max-width:640px;
}

.ip-step__list{
  margin:10px 0 0;
  padding-left:18px;
  max-width:640px;
  color:#111827;
  font-size:13px;
  line-height:1.75;
}
.ip-step__list li{ margin:0 0 10px; }

/* RWD */
@media (max-width: 980px){
  .nav__links{ display:none; }
  .nav__actions{ min-width:auto; }

  .hero-ip__inner{
    flex-direction:column;
    align-items:flex-start;
    min-height:auto;
    padding:64px 0 56px;
  }
  .hero-ip__title{ font-size:42px; }
  .hero-ip__visual{ width:100%; justify-content:center; }

  .ip-info,
  .ip-step{ padding:70px 0; }

  .ip-info__inner,
  .ip-info--reverse .ip-info__inner,
  .ip-step__inner,
  .ip-step--reverse .ip-step__inner{
    grid-template-columns:1fr;
    gap:40px;
  }

  .ip-info__title{ font-size:32px; }
  .ip-step__title{ font-size:30px; }

  /* na mobile obrazek nad treścią w odwróconych sekcjach */
  .ip-info--reverse .ip-info__image,
  .ip-step--reverse .ip-step__image{
    order:-1;
  }
}

/* preferencje dostępności */
@media (prefers-reduced-motion: reduce){
  *{
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
  .hero-ip::before{
    transform: none !important;
  }
}
.ip-step{
  padding: 95px 0; /* trochę ciaśniej jak w XD */
}

.ip-step__title{
  font-size: 34px; /* na screenie jest minimalnie mniejszy niż wcześniejsze */
}
.ip-step__image{
  width:100%;
  max-width:520px;
  aspect-ratio: 4 / 3;   /* 🔥 kluczowe – jak pozostałe */
  border-radius:24px;
  overflow:hidden;
  background:#e5e7eb;
  box-shadow:0 30px 60px rgba(0,0,0,.18);
}

.ip-step__image img{
  width:100%;
  height:100%;
  object-fit: cover;    /* 🔥 ucina pionowe zdjęcie */
  display:block;
}
/* ===== STOPKA – CLEAN ===== */
.footer-clean{
  background:#ffffff;
  border-top:1px solid rgba(2,6,23,.08);
  padding:22px 0;
}

.footer-clean__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr auto 1fr;
  align-items:center;
  gap:24px;
}

.footer-clean__logo{
  font-size:26px;
  font-weight:800;
  letter-spacing:.6px;
  color:var(--green);
}

.footer-clean__nav{
  display:flex;
  gap:26px;
  justify-content:center;
  font-size:13px;
  color:#0f172a;
}

.footer-clean__nav a{
  transition:.18s var(--ease);
}

.footer-clean__nav a:hover{
  color:var(--green);
}

.footer-clean__actions{
  display:flex;
  gap:10px;
  justify-content:flex-end;
  flex-wrap:wrap;
}

/* RWD */
@media (max-width: 900px){
  .footer-clean__inner{
    grid-template-columns:1fr;
    text-align:center;
  }

  .footer-clean__actions{
    justify-content:center;
  }
}

/* ===== MŁODY ROLNIK – DLA KOGO ===== */
.mr-who{
  background:#fff;
  padding:110px 0;
  position:relative;
}

.mr-who__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr 560px;
  gap:80px;
  align-items:start;
}

.mr-who__title{
  margin:0 0 22px;
  font-size:54px;
  line-height:1.05;
  font-weight:800;
  color:var(--green);
  letter-spacing:-0.6px;
}

.mr-who__list{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:18px;
  max-width: 640px;
}

.mr-who__list li{
  position:relative;
  padding-left:22px;
  font-size:13px;
  line-height:1.7;
  color:#111827;
}

.mr-who__list li::before{
  content:"";
  position:absolute;
  left:0;
  top: 9px;
  width:8px;
  height:8px;
  border-radius:999px;
  background:#f5df2e; /* żółty bullet jak na screenie */
}

.mr-who__summary{
  margin:26px 0 0;
  font-size:16px;
  line-height:1.5;
  font-weight:800;
  color:var(--green);
}

.mr-who__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr 560px;
  gap:80px;
  align-items:start;
}

.mr-who__image{
  border-radius:28px;        /* ✅ TU */
  overflow:hidden;           /* ✅ KLUCZ */
  box-shadow:0 30px 60px rgba(0,0,0,.18);
  background:#e5e7eb;
  align-self:center;         /* zostaje – centrowanie pionowe */
}

.mr-who__image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.mr-who__note{
  position:absolute;
  left:24px;
  bottom:14px;
  font-size:11px;
  color:rgba(17,24,39,.35);
}

/* RWD */
@media (max-width: 980px){
  .mr-who{ padding:70px 0; }

  .mr-who__inner{
    grid-template-columns:1fr;
    gap:40px;
  }

  .mr-who__title{
    font-size:38px;
  }
}
/* ===== MŁODY ROLNIK – KWOTA WSPARCIA ===== */
.mr-amount{
  position:relative;
  overflow:hidden;
  background:#0b1220;
  padding:110px 0;
  --py: 0px;
}

.mr-amount::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(11,18,32,.92) 0%, rgba(11,18,32,.86) 55%, rgba(11,18,32,.78) 100%),
    url("./assets/hero-bg.jpg") center/cover no-repeat;
  transform: translate3d(0, var(--py), 0) scale(1.06);
  will-change: transform;
  z-index:0;
  pointer-events:none;
}

.mr-amount__inner{
  position:relative;
  z-index:1;
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 520px 1fr;
  gap:90px;
  align-items:center;
}

.mr-amount__image{
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 30px 60px rgba(0,0,0,.35);
  background:#111827;
}

.mr-amount__image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.mr-amount__title{
  margin:0 0 18px;
  font-size:48px;
  line-height:1.05;
  font-weight:800;
  color:var(--green);
  letter-spacing:-0.6px;
}

.mr-amount__block{
  margin:0 0 16px;
}

.mr-amount__block h3{
  margin:0 0 6px;
  font-size:12px;
  font-weight:800;
  color:rgba(121,195,26,.95);
}

.mr-amount__block p{
  margin:0;
  font-size:12.6px;
  line-height:1.7;
  color:rgba(255,255,255,.9);
  max-width:560px;
}

.mr-amount__lines{
  margin-top:6px;
}

.mr-amount__note{
  position:absolute;
  left:24px;
  bottom:14px;
  font-size:11px;
  color:rgba(255,255,255,.35);
  z-index:2;
}

/* RWD */
@media (max-width: 980px){
  .mr-amount{
    padding:70px 0;
  }

  .mr-amount__inner{
    grid-template-columns:1fr;
    gap:40px;
  }

  .mr-amount__title{
    font-size:38px;
  }
}

/* prefers-reduced-motion */
@media (prefers-reduced-motion: reduce){
  .mr-amount::before{
    transform:none !important;
  }
}
/* ===== MŁODY ROLNIK – DLACZEGO WARTO ===== */
.mr-benefits{
  background:#ffffff;
  padding:110px 0 120px;
  position:relative;
}

.mr-benefits__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 1fr 520px;
  gap:90px;
  align-items:center;
}

.mr-benefits__title{
  margin:0 0 26px;
  font-size:48px;
  line-height:1.1;
  font-weight:800;
  color:var(--green);
  letter-spacing:-0.6px;
}

.mr-benefits__list{
  list-style:none;
  padding:0;
  margin:0;
  max-width:560px;
}

.mr-benefits__list li{
  position:relative;
  padding-left:22px;
  margin-bottom:14px;
  font-size:13px;
  line-height:1.7;
  color:#111827;
}

.mr-benefits__list li::before{
  content:"";
  position:absolute;
  left:0;
  top:9px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--green);
}

.mr-benefits__image{
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 30px 60px rgba(0,0,0,.18);
  background:#e5e7eb;
}

.mr-benefits__image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.mr-benefits__note{
  position:absolute;
  left:24px;
  bottom:14px;
  font-size:11px;
  color:rgba(0,0,0,.35);
}

/* RWD */
@media (max-width: 980px){
  .mr-benefits{
    padding:70px 0 80px;
  }

  .mr-benefits__inner{
    grid-template-columns:1fr;
    gap:40px;
  }

  .mr-benefits__title{
    font-size:36px;
  }
}

/* ===== MŁODY ROLNIK – DOTACJA ===== */
.mr-funds{
  position:relative;
  overflow:hidden;
  background:#0b1220;
  padding:110px 0 130px;
  --py: 0px;
}

.mr-funds::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(0deg, rgba(11,18,32,.78), rgba(11,18,32,.78)),
    url("./assets/mr-funds-bg.jpg") center/cover no-repeat;
  transform: translate3d(0, var(--py), 0) scale(1.06);
  will-change: transform;
  z-index:0;
  pointer-events:none;
}

.mr-funds__inner{
  position:relative;
  z-index:1;
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
}

.mr-funds__title{
  margin:0 0 48px;
  text-align:center;
  font-size:48px;
  font-weight:800;
  color:var(--green);
  letter-spacing:-0.6px;
}

.mr-funds__grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:40px;
}

.mr-fund-card{
  background:#bfbfbf;
  border-radius:28px;
  padding:34px 34px 30px;
}

.mr-fund-card__head{
  background:var(--green);
  color:#fff;
  font-size:14px;
  font-weight:800;
  padding:18px 22px;
  border-radius:999px;
  margin:-58px auto 26px;
  text-align:center;
  max-width:92%;
  box-shadow:0 18px 40px rgba(121,195,26,.35);
}

.mr-fund-card__list{
  list-style:none;
  padding:0;
  margin:0;
}

.mr-fund-card__list li{
  position:relative;
  padding-left:22px;
  margin-bottom:12px;
  font-size:13px;
  line-height:1.65;
  color:#111827;
}

.mr-fund-card__list li::before{
  content:"";
  position:absolute;
  left:0;
  top:8px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--green);
}

.mr-funds__note{
  position:absolute;
  left:24px;
  bottom:14px;
  font-size:11px;
  color:rgba(255,255,255,.35);
  z-index:2;
}

/* RWD */
@media (max-width: 980px){
  .mr-funds{
    padding:70px 0 90px;
  }

  .mr-funds__grid{
    grid-template-columns:1fr;
  }

  .mr-funds__title{
    font-size:36px;
  }
}

/* prefers-reduced-motion */
@media (prefers-reduced-motion: reduce){
  .mr-funds::before{
    transform:none !important;
  }
}
/* ===== INTEGROWANA PRODUKCJA – CO MOŻESZ ZYSKAĆ ===== */
.ip-gains{
  background:#fff;
  padding:110px 0;
  border-bottom:1px solid rgba(2,6,23,.08);
}

.ip-gains__inner{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns: 520px 1fr;
  gap:90px;
  align-items:center;
}

.ip-gains__image{
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 30px 60px rgba(0,0,0,.18);
  background:#e5e7eb;
}

.ip-gains__image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

/* nagłówek po prawej jak na screenie */
.ip-gains__title{
  margin:0 0 22px;
  font-size:52px;
  line-height:1.06;
  font-weight:800;
  color:var(--green);
  letter-spacing:-0.6px;
}

.ip-gains__blocks{
  display:flex;
  flex-direction:column;
  gap:18px;
  max-width: 640px;
}

.ip-gains__block h3{
  margin:0 0 6px;
  font-size:12.5px;
  font-weight:800;
  color:#111827;
}

.ip-gains__block p{
  margin:0;
  font-size:13px;
  line-height:1.75;
  color:#111827;
}

.ip-gains__actions{
  margin-top:22px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

/* RWD */
@media (max-width: 980px){
  .ip-gains{
    padding:70px 0;
  }

  .ip-gains__inner{
    grid-template-columns:1fr;
    gap:40px;
  }

  .ip-gains__title{
    font-size:38px;
  }

  .ip-gains__actions{
    justify-content:flex-start;
  }
}

@media (max-width: 900px){
  /* NAV – wszystko na środku */
  .nav{ height:auto; }
  .nav__inner{
    width:min(var(--container), calc(100% - 32px));
    padding:14px 0;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:10px;
    text-align:center;
  }

  .brand{ min-width:auto; }
  .nav__actions{
    min-width:auto;
    justify-content:center;
    flex-wrap:wrap;
  }

  /* jeśli kiedyś pokażesz linki nav na mobile */
  .nav__links{
    justify-content:center;
    flex-wrap:wrap;
  }
}

@media (max-width: 980px){
  /* HERO (home) – wyśrodkowanie */
  .hero__inner{
    align-items:center !important;
    text-align:center;
  }
  .hero__content{
    max-width: 680px;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  .hero__desc{ max-width: 560px; }
  .hero__visual{ justify-content:center; }
  .hero__girl{
    transform: translateY(28px); /* mniej “w dół” na mobile */
  }

  /* HERO (podstrony) – wyśrodkowanie */
  .hero-ip__inner{
    align-items:center !important;
    text-align:center;
  }
  .hero-ip__content{
    max-width: 680px;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  .hero-ip__desc{ max-width: 560px; }
  .hero-ip__visual{ justify-content:center; }
  .hero-ip__girl{
    transform: translateY(28px); /* mniej “w dół” na mobile */
  }

  /* wszystkie gridy: centrowanie treści + przycisków */
  .about__inner,
  .tiles__inner,
  .ip__inner,
  .ip-info__inner,
  .ip-step__inner,
  .footer__inner,
  .footer-clean__inner,
  .mr-who__inner,
  .mr-amount__inner,
  .mr-benefits__inner,
  .ip-gains__inner{
    text-align:center;
    justify-items:center;
  }

  /* teksty w sekcjach – środek */
  .about__content,
  .ip__lead,
  .ip-info__text,
  .ip-step__text,
  .mr-who__summary,
  .mr-amount__block p,
  .ip-gains__block p{
    text-align:center;
  }

  /* przyciski i akcje – środek */
  .ip-gains__actions,
  .footer__contact,
  .footer-clean__actions{
    justify-content:center;
  }

  /* listy (kropki) – na mobile lepiej wyrównać do lewej, ale cały blok zostaje wyśrodkowany */
  .mr-who__list,
  .mr-benefits__list,
  .mr-fund-card__list,
  .ip-step__list{
    text-align:left;
    margin-left:auto;
    margin-right:auto;
    max-width: 520px;
  }
}

/* jeszcze ciaśniej na małych telefonach */
@media (max-width: 520px){
  .hero__title,
  .hero-ip__title{ font-size:34px !important; }

  .nav__inner{ width: calc(100% - 24px); }

  .pill{ font-size:11px; }
}
