/* ================= PERSPEKTYWA — arkusz stylów ================= */

:root{
  --krem:        #f6f5f0;
  --krem-cien:   #eceae2;
  --bialy:       #ffffff;
  --atrament:    #16332c;
  --ziel-glab:   #0d4a3c;
  --ziel:        #19897b;
  --turkus:      #41aeb4;
  --turkus-jasny:#a9d9e4;
  --zloto:       #c8a96a;
  --tekst:       #2c423c;
  --tekst-cichy: #5d7069;
  --grad:        linear-gradient(120deg,#0d5c4b 0%,#2a9d8f 55%,#6cc5d9 100%);
  --cien-karta:  0 10px 30px -12px rgba(13,74,60,.18);
  --cien-foto:   0 24px 60px -24px rgba(13,74,60,.38);
  --r: 18px;
  --font-n: "Quicksand","Trebuchet MS",system-ui,sans-serif;
  --font-t: "Nunito Sans","Segoe UI",system-ui,sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  font-family:var(--font-t); font-size:17px; line-height:1.7;
  color:var(--tekst); background:var(--krem);
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
img{ max-width:100%; display:block; }
h1,h2,h3,h4{ font-family:var(--font-n); color:var(--atrament); line-height:1.25; font-weight:600; }
a{ color:var(--ziel); text-decoration:none; }
a:hover{ color:var(--ziel-glab); }
.sekcja-wewn{ max-width:1160px; margin:0 auto; padding:0 24px; }

/* drobny ornament nad nagłówkami sekcji */
.etykieta{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--font-n); font-size:13.5px; font-weight:600;
  letter-spacing:.22em; text-transform:uppercase; color:var(--ziel);
}
.etykieta::before{ content:""; width:34px; height:2px; background:var(--grad); border-radius:2px; }

.naglowek-sekcji{ font-size:clamp(28px,4vw,40px); margin:14px 0 18px; }

/* ---------------- przyciski ---------------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-family:var(--font-n); font-weight:600; font-size:16px;
  padding:15px 30px; border-radius:999px; border:0; cursor:pointer;
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
  text-align:center;
}
.btn-glowny{
  background:var(--grad); color:#fff;
  box-shadow:0 12px 28px -10px rgba(21,118,105,.55);
}
.btn-glowny:hover{ transform:translateY(-2px); box-shadow:0 16px 34px -10px rgba(21,118,105,.65); color:#fff; }
.btn-obrys{
  background:transparent; color:var(--ziel-glab);
  box-shadow:inset 0 0 0 2px rgba(13,74,60,.35);
}
.btn-obrys:hover{ box-shadow:inset 0 0 0 2px var(--ziel); color:var(--ziel); transform:translateY(-2px); }
.btn-jasny{ background:#fff; color:var(--ziel-glab); box-shadow:0 12px 28px -14px rgba(0,0,0,.5); }
.btn-jasny:hover{ transform:translateY(-2px); color:var(--ziel); }

/* ---------------- nagłówek / nawigacja ---------------- */
.naglowek{
  position:sticky; top:0; z-index:50;
  background:rgba(246,245,240,.88); backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(13,74,60,.08);
}
.naglowek-wewn{
  max-width:1160px; margin:0 auto; padding:12px 24px;
  display:flex; align-items:center; justify-content:space-between; gap:20px;
}
.logo-link img{ height:64px; width:auto; }
.menu{ display:flex; align-items:center; gap:28px; list-style:none; }
.menu a{
  font-family:var(--font-n); font-weight:600; font-size:15.5px; color:var(--atrament);
  position:relative; padding:6px 0;
}
.menu a::after{
  content:""; position:absolute; left:0; bottom:0; height:2px; width:0;
  background:var(--grad); border-radius:2px; transition:width .25s ease;
}
.menu a:hover::after{ width:100%; }
.menu .menu-cta{ background:var(--grad); color:#fff; padding:10px 22px; border-radius:999px; }
.menu .menu-cta::after{ display:none; }
.menu .menu-cta:hover{ opacity:.92; }
.hamburger{ display:none; background:none; border:0; cursor:pointer; padding:8px; }
.hamburger span{ display:block; width:26px; height:2.6px; background:var(--atrament); margin:5.5px 0; border-radius:2px; transition:.3s; }

/* ---------------- hero ---------------- */
.hero{ position:relative; padding:72px 0 96px; overflow:hidden; }
.hero::before{ /* miękkie plamy brandowe jak na logoP1 */
  content:""; position:absolute; inset:-20% -10% auto auto; width:60%; height:120%;
  background:
    radial-gradient(42% 38% at 78% 18%, rgba(108,197,217,.33), transparent 70%),
    radial-gradient(36% 34% at 92% 70%, rgba(42,157,143,.22), transparent 70%);
  pointer-events:none;
}
.hero::after{
  content:""; position:absolute; left:-14%; bottom:-34%; width:46%; height:80%;
  background:radial-gradient(45% 45% at 30% 70%, rgba(13,92,75,.16), transparent 70%);
  pointer-events:none;
}
.hero-siatka{
  position:relative; display:grid; grid-template-columns:1.05fr .95fr;
  gap:clamp(36px,6vw,80px); align-items:center;
}
.hero-tekst h1{ font-size:clamp(34px,4.6vw,52px); margin:16px 0 22px; }
.hero-tekst p{ max-width:56ch; margin-bottom:16px; }
.hero-akcje{ display:flex; flex-wrap:wrap; gap:16px; margin-top:30px; }
.hero-foto{ position:relative; justify-self:center; }
.hero-foto img{
  width:min(440px,86vw); height:auto; aspect-ratio:1; object-fit:cover;
  border-radius:58% 42% 56% 44% / 48% 54% 46% 52%;
  box-shadow:var(--cien-foto);
}
.hero-foto::before{ /* obrys-echo kształtu */
  content:""; position:absolute; inset:-16px;
  border-radius:58% 42% 56% 44% / 48% 54% 46% 52%;
  border:1.6px solid rgba(42,157,143,.4); transform:rotate(-3deg);
}
.cytat{
  position:absolute; left:min(-48px,-4vw); bottom:-34px; width:min(340px,80vw);
  background:rgba(255,255,255,.92); backdrop-filter:blur(8px);
  border-left:3px solid; border-image:linear-gradient(180deg,#2a9d8f,#6cc5d9) 1;
  padding:20px 24px; box-shadow:var(--cien-karta); border-radius:0 var(--r) var(--r) 0;
}
.cytat p{ font-style:italic; font-size:14.8px; line-height:1.6; color:var(--tekst); }
.cytat cite{ display:block; margin-top:10px; font-style:normal; font-family:var(--font-n); font-weight:600; font-size:13px; letter-spacing:.08em; color:var(--ziel); }

/* ---------------- kafelki ---------------- */
.oferta{ padding:96px 0 80px; background:
  linear-gradient(180deg,var(--krem) 0%,#fff 18%,#fff 100%); }
.oferta-naglowek{ text-align:center; max-width:720px; margin:0 auto 54px; }
.kafelki{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(248px,1fr));
  gap:26px;
}
.kafelek{
  position:relative; display:flex; flex-direction:column;
  background:#fff; border:1px solid rgba(13,74,60,.09);
  border-radius:var(--r); padding:34px 28px 26px;
  box-shadow:var(--cien-karta);
  transition:transform .3s ease, box-shadow .3s ease;
}
.kafelek::before{
  content:""; position:absolute; inset:0 auto auto 0; height:4px; width:100%;
  background:var(--grad); border-radius:var(--r) var(--r) 0 0;
  opacity:0; transition:opacity .3s;
}
.kafelek:hover{ transform:translateY(-8px); box-shadow:0 24px 48px -18px rgba(13,74,60,.28); }
.kafelek:hover::before{ opacity:1; }
.kafelek-ikona{ width:66px; height:66px; margin-bottom:20px; }
.kafelek-ikona svg{ width:100%; height:100%; }
.kafelek h3{ font-size:21px; color:var(--ziel-glab); }
.kafelek .podtytul{ font-family:var(--font-n); font-size:14px; font-weight:600; color:var(--turkus); margin:4px 0 12px; }
.kafelek p{ font-size:15.3px; color:var(--tekst-cichy); flex:1; }
.kafelek-stopka{ margin-top:20px; display:flex; flex-direction:column; gap:14px; }
.kafelek-wiecej{
  font-family:var(--font-n); font-weight:600; font-size:15px; color:var(--ziel);
  display:inline-flex; align-items:center; gap:8px;
}
.kafelek-wiecej::after{ content:"→"; transition:transform .25s; }
.kafelek:hover .kafelek-wiecej::after{ transform:translateX(5px); }
.kafelek-badge{
  display:flex; align-items:center; gap:10px;
  padding-top:12px; border-top:1px dashed rgba(13,74,60,.15);
}
.kafelek-badge img{ height:20px; width:auto; }
.kafelek-badge span{ font-size:12px; color:var(--tekst-cichy); letter-spacing:.02em; }

/* ---------------- sekcje metod ---------------- */
.metoda{ padding:88px 0; }
.metoda:nth-of-type(odd){ background:#fff; }
.metoda-siatka{ display:grid; grid-template-columns:76px 1fr; gap:clamp(20px,4vw,44px); align-items:start; }
.metoda-ikona{ width:76px; height:76px; padding:14px; background:#fff; border:1px solid rgba(13,74,60,.1); border-radius:20px; box-shadow:var(--cien-karta); }
.metoda-ikona svg{ width:100%; height:100%; }
.metoda h2{ font-size:clamp(26px,3.4vw,34px); margin-bottom:18px; }
.metoda p{ max-width:72ch; margin-bottom:14px; }
.metoda ul{ margin:18px 0 22px; padding-left:0; list-style:none; display:grid; gap:12px; max-width:72ch; }
.metoda ul li{ position:relative; padding-left:34px; }
.metoda ul li::before{
  content:""; position:absolute; left:4px; top:9px; width:14px; height:8px;
  border-left:2.4px solid var(--ziel); border-bottom:2.4px solid var(--ziel);
  transform:rotate(-48deg); border-radius:1px;
}
.metoda .wyroznienie{ font-weight:700; color:var(--ziel-glab); }
.metoda .btn{ margin-top:14px; }
.metoda h3{ font-size:19px; margin:26px 0 10px; color:var(--ziel-glab); }

/* ---------------- pakiet (ciemna sekcja) ---------------- */
.pakiet{
  position:relative; padding:100px 0; color:#dfe9e4; overflow:hidden;
  background:linear-gradient(135deg,#0b2f27 0%,#0d4a3c 55%,#14655a 100%);
}
.pakiet::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(60% 50% at 85% 15%, rgba(108,197,217,.18), transparent 70%);
  pointer-events:none;
}
.pakiet .etykieta{ color:var(--turkus-jasny); }
.pakiet h2,.pakiet h3{ color:#fff; }
.pakiet .naglowek-sekcji{ max-width:800px; }
.pakiet > .sekcja-wewn > p{ max-width:76ch; margin-bottom:14px; color:#cfe0d9; }
.kroki{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:22px; margin:46px 0 34px; counter-reset:krok;
}
.krok{
  position:relative; background:rgba(255,255,255,.055);
  border:1px solid rgba(169,217,228,.18); border-radius:var(--r);
  padding:30px 24px 24px; backdrop-filter:blur(4px);
  transition:background .3s, transform .3s;
}
.krok:hover{ background:rgba(255,255,255,.1); transform:translateY(-6px); }
.krok::before{
  counter-increment:krok; content:counter(krok,decimal-leading-zero);
  font-family:var(--font-n); font-weight:700; font-size:40px; line-height:1;
  display:block; margin-bottom:14px;
  background:linear-gradient(120deg,#8fd4c9,#6cc5d9); -webkit-background-clip:text; background-clip:text; color:transparent;
}
.krok h3{ font-size:17.5px; margin-bottom:10px; line-height:1.4; }
.krok p{ font-size:14.6px; color:#c3d6cf; margin-bottom:8px; }
.krok p b{ color:#eaf4f0; font-weight:700; }
.pakiet-dlaczego{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:18px; margin:10px 0 36px; }
.pakiet-dlaczego div{ padding-left:18px; border-left:2px solid rgba(169,217,228,.4); }
.pakiet-dlaczego b{ color:#fff; font-family:var(--font-n); display:block; margin-bottom:4px; }
.pakiet-dlaczego p{ font-size:14.6px; color:#c3d6cf; }
.pakiet-cytat{ font-style:italic; color:var(--turkus-jasny); margin:28px 0; font-size:18px; }

/* ---------------- o mnie ---------------- */
.omnie{ padding:96px 0; background:#fff; }
.omnie-siatka{ display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(36px,6vw,80px); }
.omnie-foto{ position:relative; align-self:start; position:sticky; top:110px; }
.omnie-foto img{ height:auto; border-radius:var(--r); box-shadow:var(--cien-foto); }
.omnie-foto::after{
  content:""; position:absolute; inset:18px -18px -18px 18px;
  border:1.6px solid rgba(42,157,143,.45); border-radius:var(--r); z-index:-1;
}
.omnie-cytat{ font-style:italic; color:var(--tekst-cichy); margin:14px 0 24px; font-size:18.5px; }
.omnie-cytat cite{ font-style:normal; font-family:var(--font-n); font-weight:600; font-size:14px; color:var(--ziel); }
.omnie h2{ font-size:clamp(28px,3.6vw,38px); }
.omnie p{ margin-bottom:14px; }
.omnie h3{ font-size:21px; margin:34px 0 14px; color:var(--ziel-glab); }
.filary{ display:grid; gap:16px; margin-top:6px; }
.filar{ padding:18px 22px; background:var(--krem); border-radius:14px; border:1px solid rgba(13,74,60,.07); }
.filar b{ font-family:var(--font-n); color:var(--ziel-glab); }
.certyfikaty{ list-style:none; display:grid; gap:10px; margin-top:6px; }
.certyfikaty li a,.certyfikaty li span{
  display:flex; align-items:center; gap:12px; padding:13px 18px;
  background:var(--krem); border:1px solid rgba(13,74,60,.08); border-radius:12px;
  font-size:15.2px; color:var(--tekst); transition:border-color .25s, transform .25s;
}
.certyfikaty li a:hover{ border-color:var(--ziel); transform:translateX(4px); }
.certyfikaty li a::before,.certyfikaty li span::before{
  content:""; flex:0 0 auto; width:18px; height:18px; border-radius:50%;
  background:var(--grad); mask:radial-gradient(circle at center, transparent 42%, #000 46%);
  -webkit-mask:radial-gradient(circle at center, transparent 42%, #000 46%);
}
.certyfikaty li a::after{ content:"zobacz →"; margin-left:auto; font-size:12.5px; font-family:var(--font-n); font-weight:600; color:var(--ziel); white-space:nowrap; }

/* ---------------- kontakt ---------------- */
.kontakt{ position:relative; padding:100px 0; overflow:hidden; }
.kontakt::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(50% 55% at 8% 10%, rgba(108,197,217,.2), transparent 70%),
    radial-gradient(45% 50% at 95% 90%, rgba(42,157,143,.16), transparent 70%);
  pointer-events:none;
}
.kontakt-siatka{ position:relative; display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(36px,6vw,80px); align-items:center; }
.kontakt-foto img{
  width:min(420px,86vw); height:auto; border-radius:var(--r);
  box-shadow:var(--cien-foto); justify-self:center;
}
.kontakt h2{ font-size:clamp(30px,4vw,42px); margin:14px 0 18px; }
.kontakt p{ max-width:58ch; }
.kontakt-dane{ display:grid; gap:12px; margin:28px 0 32px; }
.kontakt-dane a{
  display:inline-flex; align-items:center; gap:14px; font-size:17px; color:var(--atrament);
  font-family:var(--font-n); font-weight:600; width:fit-content;
}
.kontakt-dane a:hover{ color:var(--ziel); }
.kontakt-dane svg{ width:22px; height:22px; stroke:var(--ziel); flex:0 0 auto; }

/* ---------------- stopka ---------------- */
.stopka{ background:#0b2620; color:#9fb5ac; padding:64px 0 34px; }
.stopka-siatka{ display:grid; grid-template-columns:auto 1fr auto; gap:clamp(30px,5vw,70px); align-items:start; }
.stopka-logo{ text-align:center; }
.stopka-logo img{ height:120px; width:auto; opacity:.96; margin:0 auto 14px; }
.stopka-marka{ font-family:var(--font-n); font-weight:600; font-size:21px; letter-spacing:.3em; color:#e8efeb; margin-left:.3em; }
.stopka-haslo{ font-family:var(--font-n); font-size:11.5px; letter-spacing:.08em; color:#8fa89f; margin-top:6px; }
.stopka h4{ color:#e8efeb; font-size:15px; letter-spacing:.14em; text-transform:uppercase; margin-bottom:16px; }
.stopka ul{ list-style:none; display:grid; gap:9px; }
.stopka a{ color:#9fb5ac; font-size:14.8px; }
.stopka a:hover{ color:#8fd4c9; }
.stopka-dane{ font-size:14.4px; line-height:1.9; font-style:normal; }
.stopka-dol{
  max-width:1160px; margin:44px auto 0; padding:22px 24px 0;
  border-top:1px solid rgba(159,181,172,.18);
  display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between;
  font-size:13px; color:#6f847c;
}

/* ---------------- modal rezerwacji ---------------- */
.modal-tlo{
  position:fixed; inset:0; z-index:100; display:flex; align-items:center; justify-content:center;
  background:rgba(11,38,32,.55); backdrop-filter:blur(6px); padding:24px;
  opacity:0; pointer-events:none; transition:opacity .3s;
}
.modal-tlo.otwarty{ opacity:1; pointer-events:auto; }
.modal{
  background:#fff; border-radius:var(--r); max-width:470px; width:100%;
  padding:38px 34px; box-shadow:0 40px 80px -20px rgba(0,0,0,.4);
  transform:translateY(14px); transition:transform .3s;
}
.modal-tlo.otwarty .modal{ transform:none; }
.modal h3{ font-size:22px; margin-bottom:12px; }
.modal p{ font-size:15.4px; color:var(--tekst-cichy); margin-bottom:8px; }
.modal .kontakt-dane{ margin:20px 0 6px; }
.modal-zamknij{
  position:absolute; margin:0; float:right; background:none; border:0; cursor:pointer;
  font-size:26px; line-height:1; color:var(--tekst-cichy); padding:4px 8px;
}
.modal-zamknij:hover{ color:var(--atrament); }

/* ---------------- animacje wejścia ---------------- */
.anim{ opacity:0; transform:translateY(26px); transition:opacity .7s ease, transform .7s ease; }
.anim.widoczny{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  .anim{ opacity:1; transform:none; transition:none; }
}

/* ---------------- podstrony prawne ---------------- */
.prawna{ padding:72px 0 90px; max-width:860px; }
.prawna h1{ font-size:clamp(28px,4vw,38px); margin-bottom:8px; }
.prawna .firma{ font-family:var(--font-n); font-weight:600; color:var(--ziel); margin-bottom:34px; }
.prawna h2{ font-size:21px; margin:38px 0 14px; color:var(--ziel-glab); }
.prawna p,.prawna li{ font-size:15.6px; color:var(--tekst); margin-bottom:10px; }
.prawna ol,.prawna ul{ padding-left:24px; display:grid; gap:8px; margin-bottom:14px; }
.prawna .powrot{ display:inline-flex; gap:8px; margin-bottom:28px; font-family:var(--font-n); font-weight:600; }

/* ---------------- responsywność ---------------- */
@media (max-width:980px){
  .hero-siatka,.omnie-siatka,.kontakt-siatka{ grid-template-columns:1fr; }
  .hero{ padding-top:48px; }
  .hero-foto{ order:-1; margin-bottom:40px; }
  .cytat{ left:0; bottom:-26px; }
  .omnie-foto{ position:static; max-width:440px; }
  .stopka-siatka{ grid-template-columns:1fr; }
  .stopka-logo img{ height:96px; }
}
@media (max-width:820px){
  .menu{
    position:fixed; inset:76px 0 auto 0; z-index:49;
    flex-direction:column; align-items:center; gap:4px;
    background:rgba(246,245,240,.98); backdrop-filter:blur(16px);
    padding:10px 0 26px; border-bottom:1px solid rgba(13,74,60,.1);
    transform:translateY(-130%); transition:transform .35s ease;
  }
  .menu.otwarte{ transform:none; }
  .menu li{ width:100%; text-align:center; }
  .menu a{ display:block; padding:13px 0; }
  .menu .menu-cta{ display:inline-block; margin-top:10px; }
  .hamburger{ display:block; }
  .hamburger.aktywny span:nth-child(1){ transform:translateY(8.1px) rotate(45deg); }
  .hamburger.aktywny span:nth-child(2){ opacity:0; }
  .hamburger.aktywny span:nth-child(3){ transform:translateY(-8.1px) rotate(-45deg); }
  .metoda-siatka{ grid-template-columns:1fr; }
  .metoda-ikona{ width:64px; height:64px; padding:12px; }
}

/* ---------------- ceny ---------------- */
.cena{
  display:inline-flex; align-items:center; gap:14px; flex-wrap:wrap;
  margin:6px 0 10px; padding:12px 20px;
  background:var(--krem); border:1px solid rgba(13,74,60,.12); border-radius:14px;
}
.cena-nazwa{ font-size:15px; color:var(--tekst-cichy); }
.cena-kwota{ font-family:var(--font-n); font-weight:700; font-size:21px; color:var(--ziel-glab); white-space:nowrap; }
.cena-jasna{ background:rgba(255,255,255,.07); border-color:rgba(169,217,228,.25); }
.cena-jasna .cena-nazwa{ color:#c3d6cf; }
.cena-jasna .cena-kwota{ color:#fff; }

/* ---------------- baner cookies ---------------- */
.cookies-pasek{
  position:fixed; left:16px; right:16px; bottom:16px; z-index:90;
  display:flex; align-items:center; justify-content:space-between; gap:22px; flex-wrap:wrap;
  max-width:1100px; margin:0 auto; padding:20px 26px;
  background:#fff; border:1px solid rgba(13,74,60,.12); border-radius:var(--r);
  box-shadow:0 24px 60px -18px rgba(11,38,32,.4);
  transform:translateY(calc(100% + 32px)); opacity:0;
  transition:transform .45s ease, opacity .45s ease;
}
.cookies-pasek.widoczny-pasek{ transform:none; opacity:1; }
.cookies-tresc{ flex:1 1 420px; }
.cookies-tresc strong{ font-family:var(--font-n); color:var(--ziel-glab); display:block; margin-bottom:4px; }
.cookies-tresc p{ font-size:13.8px; line-height:1.55; color:var(--tekst-cichy); }
.cookies-akcje{ display:flex; gap:12px; flex-wrap:wrap; }
.cookies-akcje .btn{ padding:11px 22px; font-size:14.5px; }
.zgoda{ display:flex; gap:12px; align-items:flex-start; margin:14px 0; cursor:pointer; }
.zgoda input{ margin-top:5px; width:17px; height:17px; accent-color:var(--ziel); flex:0 0 auto; }
.zgoda span{ font-size:14.3px; color:var(--tekst-cichy); line-height:1.55; }
.zgoda b{ color:var(--atrament); }

/* ---------------- lightbox certyfikatów ---------------- */
.lightbox{
  position:fixed; inset:0; z-index:110; display:flex; align-items:center; justify-content:center;
  background:rgba(11,38,32,.82); backdrop-filter:blur(8px); padding:30px 64px;
  opacity:0; pointer-events:none; transition:opacity .25s;
}
.lightbox.otwarty{ opacity:1; pointer-events:auto; }
.lightbox figure{ max-width:min(960px,92vw); text-align:center; }
.lightbox-obraz{
  max-height:80vh; max-width:100%; margin:0 auto; border-radius:10px;
  box-shadow:0 30px 80px -20px rgba(0,0,0,.6); background:#fff;
}
.lightbox figcaption{ margin-top:14px; color:#cfe0d9; font-family:var(--font-n); font-size:14.5px; }
.lightbox-licznik{ color:#8fd4c9; margin-left:8px; }
.lightbox-zamknij,.lightbox-wstecz,.lightbox-dalej{
  position:absolute; background:rgba(255,255,255,.1); color:#fff; border:0; cursor:pointer;
  width:46px; height:46px; border-radius:50%; font-size:26px; line-height:1;
  display:flex; align-items:center; justify-content:center; transition:background .25s;
}
.lightbox-zamknij:hover,.lightbox-wstecz:hover,.lightbox-dalej:hover{ background:rgba(255,255,255,.22); }
.lightbox-zamknij{ top:22px; right:22px; }
.lightbox-wstecz{ left:14px; top:50%; transform:translateY(-50%); }
.lightbox-dalej{ right:14px; top:50%; transform:translateY(-50%); }
.cert-ile{ color:var(--turkus); font-size:12px; font-family:var(--font-n); font-weight:600; }
@media (max-width:640px){
  .lightbox{ padding:18px; }
  .lightbox-wstecz{ left:6px; } .lightbox-dalej{ right:6px; }
  .cookies-pasek{ left:10px; right:10px; bottom:10px; }
}
