/* =========================================================================
   Audyt GEO (03.09.2026)

   HERO: wariant W6 ze strony szkicow, wybrany przez Marcina. Karta pokazuje
   te same elementy strony w dwoch kolumnach: co widzi czlowiek i co odczytal
   model AI. Kazdy wiersz niesie PRZYCZYNE, a nie sam werdykt, bo o to chodzi
   w tej usludze. Wiersz z problemem uzywa tej samej grammatyki co karta na
   /audyty-ppc/ (rozowe tlo), zeby trzy podstrony audytowe byly rodzina.
   Odrzucone po drodze: plakietka "Priorytet 1" przy jednym wierszu (to byl
   domysl co do waznosci, nie wiedza) oraz pas w tle pod kolumna modelu
   (przeswitywal w przerwach i robil paski).
   ========================================================================= */

body.netim-audyt-geo{ --geo-eout: cubic-bezier(.16,1,.3,1) }
body.netim-audyt-geo .ah-card--geo{ padding-bottom:16px }
body.netim-audyt-geo .ah-sbar--geo .mag{ color:#1a4d8f }
body.netim-audyt-geo .ah-sbar--geo .u .b{ color:#3dbd6e }
body.netim-audyt-geo .ah-sbar--geo .u .g{ color:#9aa3bd }

/* linia skanujaca: liniowo, zeby trafiala w wiersze rozstawione rowno */
body.netim-audyt-geo .ah-card--geo .ah-scan{
  animation-name:geScan; animation-duration:1.12s; animation-delay:.92s;
  animation-timing-function:linear;
}
@keyframes geScan{
  0%{ opacity:0; transform:translateY(0) } 9%{ opacity:1 }
  86%{ opacity:1 } 100%{ opacity:0; transform:translateY(470px) }
}

/* ---------- tabela porownania ---------- */
body.netim-audyt-geo .ge-tab{ position:relative }
/* cienka linia miedzy kolumnami zamiast pasa w tle */
body.netim-audyt-geo .ge-tab::before{
  content:""; position:absolute; z-index:0; top:6px; bottom:6px;
  right:calc(12px + 78px + 4px); /* padding wiersza + kolumna + pol odstepu */
  width:1px; background:rgba(5,10,48,.10);
}
body.netim-audyt-geo .ge-hd,
body.netim-audyt-geo .ge-r{
  position:relative; z-index:1;
  display:grid; grid-template-columns:minmax(0,1fr) 78px 78px; align-items:center; gap:8px;
}
body.netim-audyt-geo .ge-hd{ padding:14px 12px 9px; border-bottom:1px solid rgba(5,10,48,.10) }
body.netim-audyt-geo .ge-hd .ge-el,
body.netim-audyt-geo .ge-hd .ge-c{
  font:800 9.5px/1 'Montserrat',sans-serif; letter-spacing:.11em;
  text-transform:uppercase; color:#63698a;
}
body.netim-audyt-geo .ge-hd .ge-c{ text-align:center; letter-spacing:.06em; white-space:nowrap }
body.netim-audyt-geo .ge-hd .ge-c:last-child{ color:#1a4d8f }

body.netim-audyt-geo .ge-r{
  padding:12px; border-radius:11px; margin-top:5px; background:rgba(9,16,54,.028);
  opacity:0; transform:translateX(10px);
  animation:ahRowIn .55s var(--geo-eout) var(--t) forwards;
}
body.netim-audyt-geo .ge-r--zle{
  background:rgba(239,74,82,.08);
  box-shadow:inset 0 0 0 1px rgba(239,74,82,.14);
}
body.netim-audyt-geo .ge-el{ font:700 13px/1.3 'Montserrat',sans-serif; color:#050a30 }
body.netim-audyt-geo .ge-el em{
  display:block; margin-top:4px; font-style:normal;
  font:500 11px/1.4 'Montserrat',sans-serif; color:#656c8a;
}
body.netim-audyt-geo .ge-r--zle .ge-el{ font-weight:800 }
body.netim-audyt-geo .ge-r--zle .ge-el em{ color:#a35056; font-weight:600 }

/* znacznik: najpierw czeka, potem rozstrzyga, tak samo jak na /audyty-ppc/ */
/* Kolumna "czlowiek" jest zawsze zielona, wiec jej animowanie niczego nie
   mowi, a podwaja ruch: dziesiec znacznikow kreci sie naraz. Czlowiek pojawia
   sie od razu jako kontekst, a rozstrzyga sie WYLACZNIE kolumna modelu, bo to
   ona jest przedmiotem audytu. */
body.netim-audyt-geo .ge-mk{
  justify-self:center; width:22px; height:22px; border-radius:50%; position:relative;
}
body.netim-audyt-geo .ge-czl{
  background:var(--mkc); box-shadow:0 4px 10px -3px var(--mksh);
  opacity:0; transform:scale(.5);
  animation:ahMarkPop .42s var(--geo-eout) var(--t) forwards;
}
body.netim-audyt-geo .ge-czl::before,
body.netim-audyt-geo .ge-czl::after{ opacity:1; animation:none }
body.netim-audyt-geo .ge-model{
  background:rgba(5,10,48,0); transform:scale(.5); opacity:0;
  animation:
    ahMarkPop .42s var(--geo-eout) var(--t) forwards,
    geRozstrzyg .46s var(--geo-eout) calc(var(--t) + .44s) forwards;
}
body.netim-audyt-geo .ge-ok{ --mkc:#1fbf6a; --mksh:rgba(31,191,106,.45) }
body.netim-audyt-geo .ge-no{ --mkc:#ef4a52; --mksh:rgba(239,74,82,.55) }
@keyframes geRozstrzyg{
  0%{ background:rgba(5,10,48,0); box-shadow:none; transform:scale(1) }
  52%{ transform:scale(1.16) }
  60%{ background:var(--mkc) }
  100%{ background:var(--mkc); box-shadow:0 4px 10px -3px var(--mksh); transform:scale(1) }
}
body.netim-audyt-geo .ge-model > b{
  position:absolute; inset:0; border-radius:50%;
  border:1.7px solid rgba(5,10,48,.13); border-top-color:#26a7f0;
  animation: geKreci .8s linear infinite, geCzekaKoniec .26s linear calc(var(--t) + .44s) forwards;
}
@keyframes geKreci{ to{ transform:rotate(360deg) } }
@keyframes geCzekaKoniec{ to{ opacity:0 } }
body.netim-audyt-geo .ge-model::before,
body.netim-audyt-geo .ge-model::after{
  opacity:0; animation:geGlif .3s var(--geo-eout) calc(var(--t) + .56s) forwards;
}
@keyframes geGlif{ to{ opacity:1 } }
body.netim-audyt-geo .ge-ok::after{
  content:""; position:absolute; left:7.5px; top:5.5px; width:5px; height:9px;
  border:solid #fff; border-width:0 2.4px 2.4px 0; transform:rotate(42deg);
}
body.netim-audyt-geo .ge-no::before,
body.netim-audyt-geo .ge-no::after{
  content:""; position:absolute; left:10px; top:5.5px; width:2.4px; height:11px;
  background:#fff; border-radius:2px;
}
body.netim-audyt-geo .ge-no::before{ transform:rotate(45deg) }
body.netim-audyt-geo .ge-no::after { transform:rotate(-45deg) }

body.netim-audyt-geo .k1{ --t:.77s } body.netim-audyt-geo .k2{ --t:.94s }
body.netim-audyt-geo .k3{ --t:1.10s } body.netim-audyt-geo .k4{ --t:1.25s }
body.netim-audyt-geo .k5{ --t:1.41s }

/* ---------- blok domykajacy ---------- */
body.netim-audyt-geo .ge-bud{
  margin-top:14px; padding:15px 17px; border-radius:15px;
  background:linear-gradient(180deg,#0a1148,#060c30);
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset, 0 22px 44px -26px rgba(5,10,48,.75);
  opacity:0; animation:ahRise .7s var(--geo-eout) 1.9s forwards;
}
body.netim-audyt-geo .ge-bud-h{ display:flex; align-items:flex-end; justify-content:space-between; gap:14px }
body.netim-audyt-geo .ge-bud small{
  display:block; margin-bottom:7px; font:600 9.5px/1 'Montserrat',sans-serif;
  letter-spacing:.13em; text-transform:uppercase; color:#9fb3d8;
}
body.netim-audyt-geo .ge-bud-lab{ font:600 13.5px/1.25 'Montserrat',sans-serif; color:#c8d3ea }
/* motyw ustawia globalnie b,strong{color:#333}, wiec kolor podajemy wprost */
body.netim-audyt-geo .ge-bud-lab b{
  font:900 19px/1 'Montserrat',sans-serif; color:#fff; margin-right:4px;
  font-variant-numeric:tabular-nums;
}
body.netim-audyt-geo .ge-bud-v{ text-align:right; flex:none }
body.netim-audyt-geo .ge-bud-v small{ text-align:right }
body.netim-audyt-geo .ge-bud-num b{
  font:900 31px/1 'Montserrat',sans-serif; letter-spacing:-.03em; color:#e8983a;
}
body.netim-audyt-geo .ge-bud-bar{
  position:relative; height:14px; margin:14px 0 11px; border-radius:999px;
  background:rgba(255,255,255,.08); overflow:hidden;
  box-shadow:inset 0 1px 2px rgba(5,10,48,.55);
}
body.netim-audyt-geo .ge-bud-bar span{
  position:absolute; top:0; bottom:0; transform:scaleX(0); transform-origin:left center;
  animation:geBar .78s var(--geo-eout) forwards;
}
body.netim-audyt-geo .ge-bud-bar .ok { left:0; width:75%; border-radius:999px 0 0 999px;
  background:linear-gradient(180deg,rgba(255,255,255,.30),rgba(255,255,255,.20)); animation-delay:2.04s }
body.netim-audyt-geo .ge-bud-bar .zle{ left:75%; width:25%; border-radius:0 999px 999px 0;
  background:linear-gradient(180deg,#f0a44a,#dd8b2c); animation-delay:2.44s }
/* podzialka na jasnym pasku musi byc jasniejsza, nie ciemniejsza */
@keyframes geBar{ to{ transform:scaleX(1) } }
body.netim-audyt-geo .ge-bud-bar::after{
  content:""; position:absolute; inset:0; z-index:3; pointer-events:none; border-radius:999px;
  background:repeating-linear-gradient(90deg,transparent 0 calc(25% - 1.5px),rgba(5,10,48,.42) calc(25% - 1.5px) 25%);
}
body.netim-audyt-geo .ge-bud-leg{ display:flex; justify-content:space-between; gap:12px }
body.netim-audyt-geo .ge-bud-leg span{
  position:relative; padding-left:13px; font:600 10.5px/1.3 'Montserrat',sans-serif; color:#b9c6e2;
}
body.netim-audyt-geo .ge-bud-leg span::before{
  content:""; position:absolute; left:0; top:4px; width:7px; height:7px; border-radius:50%;
}
body.netim-audyt-geo .ge-bud-leg .l-ok::before { background:rgba(255,255,255,.34) }
body.netim-audyt-geo .ge-bud-leg .l-zle::before{ background:#e8983a }

/* ---------- sekcja "Co dokladnie sprawdzamy" ---------- */
/* Tlo biale: sekcja wyzej (jak pracujemy) tez ma #f1f4fb i granica znikala */
body.netim-audyt-geo .gez{ background:#fff }
body.netim-audyt-geo .gez-hd{ text-align:center }
body.netim-audyt-geo .gez-lead{
  margin:14px auto 0; max-width:62ch;
  font:500 15.5px/1.65 'Montserrat',sans-serif; color:#5b6385;
}
body.netim-audyt-geo .gez-wrap{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,3vw,46px); align-items:start; margin-top:clamp(26px,3vw,40px);
}
body.netim-audyt-geo .gez-kol{ display:grid; gap:9px; align-content:start }
body.netim-audyt-geo .gez-p{
  border-radius:13px; background:#fff;
  box-shadow:0 0 0 1px rgba(5,10,48,.06), 0 10px 22px -18px rgba(5,10,48,.4);
  transition:box-shadow .3s var(--geo-eout), background .3s var(--geo-eout);
}
body.netim-audyt-geo .gez-p[open]{
  box-shadow:0 0 0 1px rgba(30,94,159,.18), 0 22px 40px -26px rgba(5,10,48,.5);
}
body.netim-audyt-geo .gez-p summary{
  display:flex; align-items:center; gap:13px; padding:15px 17px;
  cursor:pointer; list-style:none; border-radius:13px;
  transition:background .25s var(--geo-eout);
}
body.netim-audyt-geo .gez-p summary::-webkit-details-marker{ display:none }
body.netim-audyt-geo .gez-p summary:hover{ background:rgba(38,167,240,.055) }
body.netim-audyt-geo .gez-p summary:focus-visible{ outline:3px solid #26a7f0; outline-offset:-3px }
body.netim-audyt-geo .gez-n{
  flex:none; display:grid; place-items:center; width:30px; height:26px; border-radius:8px;
  background:rgba(9,16,54,.05); color:#63698a;
  font:900 11px/1 'Montserrat',sans-serif; font-variant-numeric:tabular-nums;
  transition:background .25s var(--geo-eout), color .25s var(--geo-eout);
}
body.netim-audyt-geo .gez-p[open] .gez-n{ background:#1e5e9f; color:#fff }
body.netim-audyt-geo .gez-t{
  flex:1; min-width:0; font:700 14.5px/1.4 'Montserrat',sans-serif;
  letter-spacing:-.01em; color:#050a30;
}
body.netim-audyt-geo .gez-c{
  display:flex; align-items:center; gap:8px; flex:none;
  font:600 11px/1 'Montserrat',sans-serif; color:#656c8a;
  font-variant-numeric:tabular-nums;
}
body.netim-audyt-geo .gez-mtr{
  width:52px; height:4px; border-radius:4px; overflow:hidden;
  background:rgba(9,16,54,.08);
}
body.netim-audyt-geo .gez-mtr span{ display:block; height:100%; border-radius:4px; background:#80dfa0 }
body.netim-audyt-geo .gez-p[open] .gez-mtr span{ background:#1e5e9f }
body.netim-audyt-geo .gez-p summary i{ position:relative; width:20px; height:20px; flex:none; color:#63698a }
body.netim-audyt-geo .gez-p summary i::before,
body.netim-audyt-geo .gez-p summary i::after{
  content:""; position:absolute; left:50%; top:50%; background:currentColor;
  border-radius:2px; transition:transform .28s var(--geo-eout);
}
body.netim-audyt-geo .gez-p summary i::before{ width:13px; height:2px; transform:translate(-50%,-50%) }
body.netim-audyt-geo .gez-p summary i::after { width:2px; height:13px; transform:translate(-50%,-50%) }
body.netim-audyt-geo .gez-p[open] summary i{ color:#1e5e9f }
body.netim-audyt-geo .gez-p[open] summary i::after{ transform:translate(-50%,-50%) scaleY(0) }
body.netim-audyt-geo .gez-d{ padding:0 17px 17px 60px }
body.netim-audyt-geo .gez-d ul{
  list-style:none; margin:0; padding-top:13px; display:grid; gap:9px;
  border-top:1px dashed rgba(5,10,48,.13);
}
body.netim-audyt-geo .gez-d li{
  position:relative; padding-left:17px;
  font:500 13.5px/1.55 'Montserrat',sans-serif; color:#5b6385;
}
body.netim-audyt-geo .gez-d li::before{
  content:""; position:absolute; left:0; top:8px; width:7px; height:7px;
  border-radius:2px; background:#80dfa0;
}
body.netim-audyt-geo .gez-p[open] .gez-d{ animation:gezOtw .32s var(--geo-eout) both }
@keyframes gezOtw{ from{ opacity:0; transform:translateY(-5px) } to{ opacity:1; transform:none } }

@media (max-width: 900px){
  body.netim-audyt-geo .ge-hd,
  body.netim-audyt-geo .ge-r{ grid-template-columns:minmax(0,1fr) 58px 58px; gap:6px }
  body.netim-audyt-geo .ge-tab::before{ right:calc(12px + 58px + 3px) }
  body.netim-audyt-geo .ge-el{ font-size:12.5px }
  body.netim-audyt-geo .gez-d{ padding:0 15px 15px 15px }
}
@media (prefers-reduced-motion: reduce){
  body.netim-audyt-geo .ge-r,
  body.netim-audyt-geo .ge-mk,
  body.netim-audyt-geo .ge-mk::before,
  body.netim-audyt-geo .ge-mk::after,
  body.netim-audyt-geo .ge-bud,
  body.netim-audyt-geo .ge-bud-bar span{ animation:none; opacity:1; transform:none }
  body.netim-audyt-geo .ge-mk{ background:var(--mkc); box-shadow:0 4px 10px -3px var(--mksh) }
  body.netim-audyt-geo .ge-model > b{ display:none }
  body.netim-audyt-geo .ah-card--geo .ah-scan{ display:none }
  body.netim-audyt-geo .gez-p[open] .gez-d{ animation:none }
}

/* =========================================================================
   SEKCJE PONIZEJ HERO (03.09.2026)
   Uklady wziete z /audyty-ppc/, bo tam sa juz zaakceptowane. Klasy wlasne,
   zeby nie mieszac zakresow, ale wartosci te same: ten sam rytm, te same
   cienie, ta sama krzywa. Naglowki ida naprzemiennie: prawa, srodek, lewa,
   srodek, lewa, srodek.
   ========================================================================= */

/* ---------- 1. Czym jest audyt GEO: zdjecie plus tekst ---------- */
body.netim-audyt-geo .gcz{ background:#f1f4fb }
body.netim-audyt-geo .gcz-wrap{
  display:grid; grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
  gap:clamp(32px,4.6vw,64px); align-items:center;
}
body.netim-audyt-geo .gcz-foto{
  position:relative; margin:0; border-radius:24px; overflow:hidden;
  box-shadow:0 50px 90px -50px rgba(5,10,48,.5);
}
body.netim-audyt-geo .gcz-foto img{ width:100%; aspect-ratio:4/3; object-fit:cover; display:block }
body.netim-audyt-geo .gcz-foto figcaption{
  position:absolute; left:16px; bottom:16px;
  display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border-radius:999px;
  background:rgba(5,10,48,.72); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  color:#fafbff; font:700 italic 11.5px/1 'Montserrat',sans-serif;
}
body.netim-audyt-geo .gcz-foto figcaption i{ width:7px; height:7px; border-radius:50%; background:#80dfa0; flex:none }
body.netim-audyt-geo .gcz-tx .sec-h{ text-align:left }
body.netim-audyt-geo .gcz-tx p{ margin:18px 0 0; font:500 15.5px/1.7 'Montserrat',sans-serif; color:#5b6385 }
body.netim-audyt-geo .gcz-pts{ display:grid; gap:12px; margin:24px 0 0; padding:0; list-style:none }
body.netim-audyt-geo .gcz-pts li{
  display:flex; gap:11px; align-items:flex-start;
  font:600 14.5px/1.45 'Montserrat',sans-serif; color:#1a2046;
}
body.netim-audyt-geo .gcz-pts li svg{ width:20px; height:20px; flex:none; color:#3dbd6e; margin-top:1px }

/* ---------- 2. Co daje audyt GEO: lista redakcyjna plus karta ---------- */
body.netim-audyt-geo .gko{
  display:grid; grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
  gap:clamp(34px,4.4vw,64px); align-items:center; margin-top:clamp(28px,3vw,44px);
}
body.netim-audyt-geo .gko-lista{ list-style:none; margin:0; padding:0 }
body.netim-audyt-geo .gko-lista li{
  display:grid; grid-template-columns:auto minmax(0,1fr); gap:clamp(16px,1.6vw,24px);
  padding:clamp(20px,2.1vw,26px) 0; border-top:1px solid rgba(5,10,48,.11);
}
body.netim-audyt-geo .gko-lista li:first-child{ border-top:0; padding-top:0 }
body.netim-audyt-geo .gko-n{
  font:900 clamp(26px,2.7vw,34px)/1 'Montserrat',sans-serif;
  letter-spacing:-.03em; color:#7386b2; font-variant-numeric:tabular-nums; padding-top:2px;
}
body.netim-audyt-geo .gko-tx h3{
  margin:0 0 9px; font:800 clamp(17px,1.55vw,20px)/1.3 'Montserrat',sans-serif;
  letter-spacing:-.016em; color:#050a30; text-wrap:balance;
}
body.netim-audyt-geo .gko-tx p{
  margin:0; font:500 clamp(14px,1.06vw,15px)/1.68 'Montserrat',sans-serif;
  color:#5b6385; max-width:52ch;
}

/* karta z rekordem, ktory model zbudowal o stronie (wariant W7 ze szkicow) */
body.netim-audyt-geo .gko-karta{
  position:sticky; top:104px; overflow:hidden;
  background:linear-gradient(180deg,#eef3fc,#e7edf9); border-radius:22px;
  box-shadow:0 2px 0 0 rgba(255,255,255,.7) inset,
             0 60px 100px -58px rgba(5,10,48,.55),
             0 22px 48px -26px rgba(5,10,48,.30);
}
body.netim-audyt-geo .gko-top{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:16px 20px 15px; background:linear-gradient(180deg,#0a1148,#060c30);
}
body.netim-audyt-geo .gko-top-tx{ font:800 15px/1.2 'Montserrat',sans-serif; color:#fff; letter-spacing:-.012em }
body.netim-audyt-geo .gko-top-tx small{
  display:block; margin-bottom:5px; font:600 9.5px/1 'Montserrat',sans-serif;
  letter-spacing:.14em; text-transform:uppercase; color:#9fb3d8;
}
body.netim-audyt-geo .gko-top img{ width:88px; height:auto; flex:none; opacity:.92 }
body.netim-audyt-geo .gko-code{ margin:0; padding:18px 18px; background:#0a1148; overflow:hidden }
body.netim-audyt-geo .gko-code code{
  display:block; font:600 12px/1.85 ui-monospace,SFMono-Regular,Menlo,monospace;
  color:#9fb3d8; white-space:pre;
}
body.netim-audyt-geo .gko-l{ display:block; padding:1px 8px; border-radius:5px }
body.netim-audyt-geo .gko-l--ok{ color:#a8e6c0 }
body.netim-audyt-geo .gko-l--bad{ background:rgba(239,74,82,.20); color:#ffb4b4 }
body.netim-audyt-geo .gko-l--warn{ background:rgba(232,152,58,.18); color:#f0c08a }
body.netim-audyt-geo .gko-leg{ display:flex; flex-wrap:wrap; gap:10px; padding:14px 20px 16px }
body.netim-audyt-geo .gko-lg{ position:relative; padding-left:15px; font:600 10.5px/1.3 'Montserrat',sans-serif; color:#5c6383 }
body.netim-audyt-geo .gko-lg::before{ content:""; position:absolute; left:0; top:3px; width:8px; height:8px; border-radius:2px }
body.netim-audyt-geo .gko-lg--ok::before{ background:#1fbf6a }
body.netim-audyt-geo .gko-lg--bad::before{ background:#ef4a52 }
body.netim-audyt-geo .gko-lg--warn::before{ background:#e8983a }

/* ---------- 3. Jak pracujemy ---------- */
body.netim-audyt-geo .gjp-wrap{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr);
  gap:clamp(28px,4vw,58px); align-items:start;
}
/* tekst lekko odsuniety od gory, zeby optycznie balansowal z ciemnym headerem karty */
body.netim-audyt-geo .gjp-tx{ padding-top:6px }
body.netim-audyt-geo .gjp-tx .sec-h{ text-align:left }
body.netim-audyt-geo .gjp-tx p{ margin:18px 0 0; max-width:52ch; font:500 15.5px/1.7 'Montserrat',sans-serif; color:#5b6385 }
body.netim-audyt-geo .gjp-panel{
  border-radius:18px; padding:22px 24px 20px;
  background:linear-gradient(180deg,#0a1148,#060c30);
  box-shadow:0 34px 60px -40px rgba(5,10,48,.75);
}
body.netim-audyt-geo .gjp-kick{
  display:flex; align-items:center; gap:9px; margin-bottom:16px;
  font:800 10.5px/1 'Montserrat',sans-serif; letter-spacing:.13em;
  text-transform:uppercase; color:#9fb3d8;
}
body.netim-audyt-geo .gjp-kick i{ width:7px; height:7px; border-radius:50%; background:#26a7f0; flex:none }
body.netim-audyt-geo .gjp-panel ul{ list-style:none; margin:0; padding:0; display:grid; gap:11px }
body.netim-audyt-geo .gjp-panel li{
  position:relative; padding-left:19px; font:600 14px/1.5 'Montserrat',sans-serif; color:#c8d3ea;
}
body.netim-audyt-geo .gjp-panel li::before{
  content:""; position:absolute; left:0; top:8px; width:7px; height:7px;
  border-radius:2px; background:rgba(38,167,240,.75);
}

/* ---------- 4. Proces: os z numerami i strzalkami ---------- */
body.netim-audyt-geo .gpr-tor{
  --gpr-gap: clamp(20px,2.4vw,38px);
  list-style:none; margin:clamp(34px,3.6vw,50px) 0 0; padding:0;
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--gpr-gap); align-items:start;
}
body.netim-audyt-geo .gpr-k{ position:relative; padding-top:56px }
body.netim-audyt-geo .gpr-w{
  position:absolute; top:0; left:0; z-index:2;
  display:grid; place-items:center; width:40px; height:40px; border-radius:50%;
  font:900 13px/1 'Montserrat',sans-serif; background:#0a1148; color:#fff;
  box-shadow:0 0 0 2px currentColor inset;
}
body.netim-audyt-geo .gpr-k--ty .gpr-w{ color:#80dfa0 }
body.netim-audyt-geo .gpr-k--my .gpr-w{ color:#26a7f0 }
body.netim-audyt-geo .gpr-k::before{
  content:""; position:absolute; z-index:1; top:19px; left:48px;
  right:calc(-1 * var(--gpr-gap) + 7px); height:2px;
  background:linear-gradient(90deg,rgba(159,179,216,.60),rgba(159,179,216,.28));
}
body.netim-audyt-geo .gpr-k::after{
  content:""; position:absolute; z-index:1; top:13px; right:calc(-1 * var(--gpr-gap) + 7px);
  width:11px; height:11px; border:solid rgba(159,179,216,.8); border-width:2.5px 2.5px 0 0;
  transform:rotate(45deg);
}
body.netim-audyt-geo .gpr-k:last-child::before,
body.netim-audyt-geo .gpr-k:last-child::after{ display:none }
body.netim-audyt-geo .gpr-k h3{
  margin:0 0 9px; font:800 clamp(16px,1.4vw,18px)/1.3 'Montserrat',sans-serif;
  letter-spacing:-.016em; color:#fff;
}
body.netim-audyt-geo .gpr-k p{ margin:0; font:500 14px/1.65 'Montserrat',sans-serif; color:#c8d3ea }

/* uklad dwukolumnowy FAQ, reguly z sklepy-usluga.css sa pod klasa .netim-shop */
body.netim-audyt-geo .f8-grid{
  display:grid; gap:clamp(24px,3.5vw,48px); align-items:start; margin-top:6px;
  grid-template-columns:1.35fr .65fr;
}

@media (max-width: 1000px){
  body.netim-audyt-geo .gcz-wrap,
  body.netim-audyt-geo .gko,
  body.netim-audyt-geo .gjp-wrap{ grid-template-columns:minmax(0,1fr); gap:26px }
  body.netim-audyt-geo .gko-karta{ position:static; max-width:520px }
}
@media (max-width: 900px){
  body.netim-audyt-geo .f8-grid{ grid-template-columns:minmax(0,1fr) }
  body.netim-audyt-geo .gpr-tor{ grid-template-columns:minmax(0,1fr); gap:0 }
  body.netim-audyt-geo .gpr-k{ padding:0 0 26px 58px }
  body.netim-audyt-geo .gpr-k:last-child{ padding-bottom:0 }
  body.netim-audyt-geo .gpr-k::before{
    top:48px; bottom:6px; left:19px; right:auto; width:2px; height:auto;
    background:linear-gradient(180deg,rgba(159,179,216,.60),rgba(159,179,216,.28));
  }
  body.netim-audyt-geo .gpr-k::after{ top:auto; bottom:2px; left:15px; right:auto; border-width:0 2.5px 2.5px 0 }
}

/* ---------- Jak pracujemy: decyzje specjalisty (wariant W5) ----------
   Dwie wczesniejsze proby wymienialy zakres audytu, czyli to samo, co sekcja
   "Co dokladnie sprawdzamy". Ta pokazuje osad: co odrzucilismy jako formalne,
   co podnieslismy do priorytetu i co wymaga decyzji klienta. */
body.netim-audyt-geo .gjp-dec{
  border-radius:22px; overflow:hidden;
  background:linear-gradient(180deg,#eef3fc,#e7edf9);
  box-shadow:0 2px 0 0 rgba(255,255,255,.7) inset,
             0 60px 100px -58px rgba(5,10,48,.55),
             0 22px 48px -26px rgba(5,10,48,.30);
}
body.netim-audyt-geo .gjp-dec-top{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:16px 20px 15px; background:linear-gradient(180deg,#0a1148,#060c30);
}
body.netim-audyt-geo .gjp-dec-tx{ font:800 15px/1.2 'Montserrat',sans-serif; color:#fff; letter-spacing:-.012em }
body.netim-audyt-geo .gjp-dec-tx small{
  display:block; margin-bottom:5px; font:600 9.5px/1 'Montserrat',sans-serif;
  letter-spacing:.14em; text-transform:uppercase; color:#9fb3d8;
}
body.netim-audyt-geo .gjp-dec img{ width:88px; height:auto; flex:none; opacity:.92 }
body.netim-audyt-geo .gjp-w{
  margin:14px 16px 0; padding:15px 16px 16px; border-radius:14px; background:#fff;
  box-shadow:0 0 0 1px rgba(5,10,48,.055), 0 14px 26px -20px rgba(5,10,48,.42);
}
body.netim-audyt-geo .gjp-w header{ display:flex; align-items:flex-start; gap:10px; margin-bottom:11px }
body.netim-audyt-geo .gjp-w h4{ margin:0; flex:1; font:800 14.5px/1.32 'Montserrat',sans-serif; color:#050a30 }
body.netim-audyt-geo .gjp-b{
  flex:none; font:800 9.5px/1 'Montserrat',sans-serif; letter-spacing:.06em;
  padding:6px 9px; border-radius:6px; white-space:nowrap;
}
body.netim-audyt-geo .gjp-b--szare   { color:#5f6684; background:rgba(9,16,54,.07) }
body.netim-audyt-geo .gjp-b--czerwone{ color:#c1373e; background:rgba(239,74,82,.12) }
body.netim-audyt-geo .gjp-b--zolte   { color:#96590f; background:rgba(232,152,58,.16) }
body.netim-audyt-geo .gjp-dow{
  margin:0 0 11px; padding-left:11px; position:relative;
  font:600 12.5px/1.5 'Montserrat',sans-serif; color:#5b6385;
}
body.netim-audyt-geo .gjp-dow::before{
  content:""; position:absolute; left:0; top:4px; bottom:4px; width:2px;
  border-radius:2px; background:rgba(5,10,48,.16);
}
body.netim-audyt-geo .gjp-rek{
  margin:0; padding-top:11px; border-top:1px dashed rgba(5,10,48,.14);
  font:500 12.5px/1.6 'Montserrat',sans-serif; color:#3a4160;
}
body.netim-audyt-geo .gjp-rek span{
  display:block; margin-bottom:4px; font:800 9px/1 'Montserrat',sans-serif;
  letter-spacing:.11em; text-transform:uppercase; color:#1a4d8f;
}
body.netim-audyt-geo .gjp-wiecej{
  margin:13px 16px 16px; text-align:center;
  font:600 11.5px/1.4 'Montserrat',sans-serif; color:#5f6684;
}

/* ---------- listwa podsumowania zakresu (pelna szerokosc, niska) ---------- */
body.netim-audyt-geo .gez-suma{
  position:relative; overflow:hidden; isolation:isolate;
  display:flex; align-items:center; flex-wrap:wrap; gap:14px clamp(16px,2.6vw,30px);
  margin-top:clamp(14px,2vw,22px); padding:15px clamp(18px,2.6vw,28px); border-radius:16px;
  background:linear-gradient(90deg,#0a1148,#060c30);
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset, 0 30px 56px -40px rgba(5,10,48,.7);
}
body.netim-audyt-geo .gez-suma-syg{
  position:absolute; z-index:-1; top:50%; right:-52px; transform:translateY(-50%);
  width:170px; height:auto; color:#fff; opacity:.08; pointer-events:none;
}
body.netim-audyt-geo .gez-suma-n{ display:flex; align-items:center; gap:10px; margin:0 }
/* motyw ustawia globalnie b,strong{color:#333}, wiec kolor podajemy wprost */
body.netim-audyt-geo .gez-suma-n b{
  font:900 30px/.9 'Montserrat',sans-serif; letter-spacing:-.04em;
  color:#80dfa0; font-variant-numeric:tabular-nums;
}
body.netim-audyt-geo .gez-suma-n span{ font:800 12.5px/1.25 'Montserrat',sans-serif; color:#fff; letter-spacing:-.01em }
body.netim-audyt-geo .gez-suma-rule{
  display:block; width:2px; height:30px; border-radius:2px;
  background:#80dfa0; opacity:.4;
}
body.netim-audyt-geo .gez-suma-t{ margin:0; font:600 13px/1.45 'Montserrat',sans-serif; color:#9fb3d8 }
body.netim-audyt-geo .gez-suma-cta{
  display:inline-flex; align-items:center; gap:8px; margin-left:auto;
  padding:11px 20px; border-radius:999px; text-decoration:none;
  background:#80dfa0; color:#050a30;
  font:800 13.5px/1 'Montserrat',sans-serif; letter-spacing:-.01em;
  box-shadow:0 12px 26px -14px rgba(128,223,160,.7);
  transition:transform .2s var(--geo-eout), box-shadow .25s var(--geo-eout);
}
body.netim-audyt-geo .gez-suma-cta .arr{ transition:transform .25s var(--geo-eout) }
body.netim-audyt-geo .gez-suma-cta:hover{ box-shadow:0 18px 34px -14px rgba(128,223,160,.9) }
body.netim-audyt-geo .gez-suma-cta:hover .arr{ transform:translateX(4px) }
body.netim-audyt-geo .gez-suma-cta:active{ transform:scale(.97) }
body.netim-audyt-geo .gez-suma-cta:focus-visible{ outline:3px solid #26a7f0; outline-offset:3px }
@media (max-width: 700px){
  body.netim-audyt-geo .gez-suma-cta{ margin-left:0 }
  body.netim-audyt-geo .gez-suma-rule{ display:none }
  body.netim-audyt-geo .gez-mtr{ display:none }
}

@media (max-width: 900px){
  body.netim-audyt-geo .gez-wrap{ grid-template-columns:minmax(0,1fr); gap:9px }
}
@media (prefers-reduced-motion: reduce){
  body.netim-audyt-geo .gjp-log li{ animation:none; opacity:1; transform:none }
}

/* Na waskim ekranie plakietka zjada szerokosc naglowka i zostaje sierota
   ("Podniesione do priorytetu / 1"). Plakietka idzie nad tytul. */
@media (max-width:640px){
  body.netim-audyt-geo .gjp-w header{ flex-direction:column; align-items:flex-start; gap:8px }
  body.netim-audyt-geo .gjp-w h4{ flex:none }
}

/* Hero: lewa kolumna szerzej, karta wezsza i nizsza (uwaga Marcina 03.09:
   H1 lamal sie na 4 linie, karta przerastala tekst). Scoped do GEO, siostry
   SEO/PPC bez zmian. */
@media (min-width: 981px){
  body.netim-audyt-geo .ah-wrap{ grid-template-columns:1.16fr .84fr; gap:52px }
  body.netim-audyt-geo .ah-card{ max-width:430px; margin-left:auto }
  body.netim-audyt-geo .ge-bud{ padding-top:14px }
}

/* Stopka karty hero: jedna linia, zamiast pudla z podwojnymi etykietami */
body.netim-audyt-geo .ge-stopka{
  display:flex; align-items:center; gap:14px; margin-top:14px;
  padding-top:13px; border-top:1px solid rgba(5,10,48,.08);
}
body.netim-audyt-geo .ge-stopka-n{
  flex:none; font:600 12px/1.2 'Montserrat',sans-serif; color:#4a5170;
}
body.netim-audyt-geo .ge-stopka-n b{
  font:900 17px/1 'Montserrat',sans-serif; color:#050a30;
  font-variant-numeric:tabular-nums;
}
body.netim-audyt-geo .ge-stopka-bar{
  flex:1; display:flex; height:5px; border-radius:4px; overflow:hidden;
  background:rgba(9,16,54,.07);
}
body.netim-audyt-geo .ge-stopka-bar .ok{ width:74.5%; background:#c6ccdf }
body.netim-audyt-geo .ge-stopka-bar .zle{ width:25.5%; background:#e8983a }
body.netim-audyt-geo .ge-stopka-zle{
  flex:none; font:800 12px/1.2 'Montserrat',sans-serif; color:#b06a12;
  font-variant-numeric:tabular-nums;
}

/* link-klej do sekcji zakresu: wypelnia pustke pod tekstem i spina obie sekcje */
body.netim-audyt-geo .gjp-dalej{
  display:inline-flex; align-items:center; gap:8px; margin-top:22px;
  font:800 13.5px/1 'Montserrat',sans-serif; color:#1e5e9f; text-decoration:none;
  border-bottom:2px solid rgba(30,94,159,.3); padding-bottom:3px;
  transition:color .2s var(--geo-eout), border-color .2s var(--geo-eout);
}
body.netim-audyt-geo .gjp-dalej .arr{ transition:transform .25s var(--geo-eout) }
body.netim-audyt-geo .gjp-dalej:hover{ color:#050a30; border-color:#80dfa0 }
body.netim-audyt-geo .gjp-dalej:hover .arr{ transform:translateY(3px) }
body.netim-audyt-geo .gjp-dalej:focus-visible{ outline:3px solid #26a7f0; outline-offset:3px }
/* wiekszy oddech przed stykiem z bialym zakresem: cien karty W5 siegal krawedzi
   i robil kreche (pomiar jasnosci 234 vs 255; cel: skok ok. 10-15) */
body.netim-audyt-geo section.sec.gjp{ padding-bottom:118px }

/* Naglowki w przeplocie (uwaga Marcina 03.09): czym-jest PRAWA -> korzysci LEWA
   -> jak-pracujemy PRAWA -> zakres SRODEK. Do tego numeracja 01-04 w korzysciach
   wyleciala: dublowala sie z 01-06 w zakresie (ten sam blad co na PPC). */
body.netim-audyt-geo .sec.gko-sec > .shell > .sec-h.gko-h{ text-align:left }
body.netim-audyt-geo .gko-ptak{
  flex:none; display:grid; place-items:center; width:30px; height:30px; border-radius:9px;
  background:rgba(128,223,160,.2); color:#1d7a44;
}
body.netim-audyt-geo .gko-ptak svg{ width:15px; height:15px }
@media (min-width: 901px){
  body.netim-audyt-geo .gjp-wrap--odbicie .gjp-tx{ order:2; padding-left:clamp(6px,1.4vw,20px) }
  body.netim-audyt-geo .gjp-wrap--odbicie .gjp-dec{ order:1 }
}

/* ---------- sekcja "Jak wyglada raport" (wzorzec karty z /audyt-ppc/,
   ten sam jezyk co nasze realne dokumenty: ciemna okladka, meta, pozycje
   z priorytetem, dowodem i zaleceniem) ---------- */
body.netim-audyt-geo .grk{ background:#f1f4fb }
body.netim-audyt-geo .grk-wrap{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.94fr);
  gap:clamp(30px,4.4vw,64px); align-items:start;
}
body.netim-audyt-geo .grk-tx{ padding-top:6px }
body.netim-audyt-geo .grk-tx .sec-h{ text-align:left; margin-bottom:18px }
body.netim-audyt-geo .grk-tx p{
  margin:0 0 14px; max-width:52ch;
  font:500 15px/1.7 'Montserrat',sans-serif; color:#3a4160;
}
/* kartka raportu (wariant W1 ze szkicow, wybor Marcina 03.09):
   papier, nie interfejs. Prostuje sie na hover, wchodzi z ustawieniem
   rotacji przy scrollu (klasa grk1--in z malego skryptu ponizej sekcji). */
body.netim-audyt-geo .grk-karta{ position:relative; max-width:450px; margin-left:auto }
body.netim-audyt-geo .grk1-kartka{
  position:relative; z-index:2;
  padding:26px 28px 20px; background:linear-gradient(178deg,#fff 82%,#fbfcff);
  border-radius:6px; transform:rotate(1.6deg);
  box-shadow:0 1px 0 rgba(5,10,48,.05), 0 34px 60px -34px rgba(5,10,48,.5),
             0 10px 22px -14px rgba(5,10,48,.28);
  transition:transform .45s var(--geo-eout);
}
body.netim-audyt-geo .grk-karta:hover .grk1-kartka{ transform:rotate(.5deg) translateY(-3px) }
body.netim-audyt-geo .grk1-pod{
  position:absolute; z-index:1; inset:16px -16px -12px auto; width:86%;
  background:#f2f5fc; border-radius:6px; transform:rotate(-2.4deg);
  box-shadow:0 24px 44px -30px rgba(5,10,48,.4);
  transition:transform .45s var(--geo-eout);
}
body.netim-audyt-geo .grk-karta:hover .grk1-pod{ transform:rotate(-3.2deg) }
body.netim-audyt-geo .grk1-naglowek{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding-bottom:12px; margin-bottom:16px; border-bottom:1.5px solid #050a30;
}
body.netim-audyt-geo .grk1-naglowek span{ font:600 10px/1 'Montserrat',sans-serif; color:#5f6684; letter-spacing:.06em }
body.netim-audyt-geo .grk1-tytul{
  display:flex; align-items:center; gap:10px;
  margin:0 0 7px; font:800 13.5px/1.35 'Montserrat',sans-serif; color:#050a30;
}
/* stempel priorytetu: obrys jak pieczatka, lekko skosny */
body.netim-audyt-geo .grk1-stempel{
  flex:none; padding:4px 8px; border-radius:4px; transform:rotate(-4deg);
  box-shadow:0 0 0 1.6px rgba(193,55,62,.75) inset;
  color:#c1373e; font:800 8.5px/1 'Montserrat',sans-serif;
  font-style:normal; letter-spacing:.12em; text-transform:uppercase;
}
body.netim-audyt-geo .grk1-akapit{ margin:0 0 15px; font:500 12px/1.7 'Montserrat',sans-serif; color:#3a4160 }
body.netim-audyt-geo .grk1-akapit mark{
  background:linear-gradient(180deg,transparent 8%,rgba(128,223,160,.5) 8% 94%,transparent 94%);
  color:inherit; padding:1px 3px; border-radius:3px;
}
body.netim-audyt-geo .grk1-stopka{
  display:flex; justify-content:space-between; margin-top:4px; padding-top:10px;
  border-top:1px solid rgba(5,10,48,.12);
  font:500 10px/1 'Montserrat',sans-serif; color:#8890ab;
}
/* wejscie przy scrollu: kartki dojezdzaja do swoich rotacji */
@media (prefers-reduced-motion: no-preference){
  body.netim-audyt-geo .grk-karta.grk1--start .grk1-kartka{ opacity:0; transform:rotate(5deg) translateY(26px) }
  body.netim-audyt-geo .grk-karta.grk1--start .grk1-pod{ opacity:0; transform:rotate(1deg) translateY(20px) }
  body.netim-audyt-geo .grk-karta.grk1--in .grk1-kartka{ opacity:1; transform:rotate(1.6deg); transition:transform .7s var(--geo-eout), opacity .5s var(--geo-eout) }
  body.netim-audyt-geo .grk-karta.grk1--in .grk1-pod{ opacity:1; transform:rotate(-2.4deg); transition:transform .7s var(--geo-eout) .06s, opacity .5s var(--geo-eout) .06s }
}

@media (max-width: 900px){
  body.netim-audyt-geo .grk-wrap{ grid-template-columns:minmax(0,1fr); gap:28px }
}
