@font-face{font-family:'Bricolage Grotesque';src:url(../fonts/bricolage.woff2) format('woff2');font-weight:600 800;font-display:swap}
@font-face{font-family:'Figtree';src:url(../fonts/figtree.woff2) format('woff2');font-weight:400 700;font-display:swap}
/* diety.fit – arkusz stylów. Motyw: etykieta wartości odżywczych + tacka z przegródkami. */

:root{
  --ink:#14231C; --ink-2:#4E5D56; --line:#E3EAE3; --line-2:#C9D6CF;
  --papier:#FFFFFF; --bialy:#fff; --jogurt:#F3F7F2; --jogurt-2:#E6EEE4;
  --burak:#B42318; --burak-2:#912018; --burak-t:#FDECEA;
  --szpinak:#1F6B4A; --szpinak-t:#E6F0EA; --marchew:#E8892B; --marchew-t:#FFF1E3;
  --marka:#1F6B4A; --marka-2:#134A33; --marka-t:#E6F0EA; --mango:#FF9F43; --mango-t:#FFE3C8; --limonka:#D8F26A;
  --font:'Figtree',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-display:'Bricolage Grotesque','Figtree',system-ui,sans-serif;
  --r-s:10px; --r-m:16px; --r-l:24px;
  --cien:0 1px 2px rgba(20,35,28,.06),0 12px 32px rgba(20,35,28,.08);
  --naglowek:72px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--naglowek) + 12px)}
body{margin:0;font-family:var(--font);font-size:1.0625rem;line-height:1.6;color:var(--ink);background:var(--papier);font-stretch:100%;font-weight:420}
img,svg{max-width:100%}
a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--burak)}
h1,h2,h3{font-stretch:85%;line-height:1.1;margin:0 0 .6em;letter-spacing:-.01em}
h1{font-size:clamp(2rem,4.2vw,3.05rem);font-weight:780}
h2{font-size:clamp(1.5rem,2.6vw,2.05rem);font-weight:760}
h3{font-size:1.15rem;font-weight:720;font-stretch:90%}
p{margin:0 0 1em}
small{font-size:.82em}
:focus-visible{outline:3px solid var(--szpinak);outline-offset:2px;border-radius:4px}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;background:var(--ink);color:#fff;padding:.6rem 1rem;border-radius:var(--r-s);z-index:100}
.skip:focus{top:12px;color:#fff}
.kontener{max-width:1200px;margin:0 auto;padding:0 20px}
.js-tylko{display:none}
html.js .js-tylko{display:table-cell}
.liczba,.etykieta dd,.cena-etykieta__kwota,.tabela td{font-variant-numeric:tabular-nums}

/* Przyciski */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.65rem 1.15rem;border-radius:10px;font:inherit;font-weight:650;font-size:1rem;text-decoration:none;border:2px solid transparent;cursor:pointer;line-height:1.2;transition:background-color .15s,color .15s,border-color .15s}
.btn--glowny{background:var(--burak);color:#fff}
.btn--glowny:hover{background:var(--burak-2);color:#fff}
.btn--obrys{border-color:var(--ink);color:var(--ink);background:transparent}
.btn--obrys:hover{background:var(--ink);color:#fff}
.btn--tekst{padding-left:.2rem;padding-right:.2rem;text-decoration:underline;text-underline-offset:.2em;font-weight:600}
.btn--pelny{width:100%}

/* Nagłówek */
.naglowek{position:sticky;top:0;z-index:50;background:var(--bialy);border-bottom:1px solid var(--line)}
.naglowek__pas{max-width:1240px;margin:0 auto;padding:0 20px;height:var(--naglowek);display:flex;align-items:center;gap:20px}
.logo{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink)}
.logo__nazwa{font-weight:820;font-stretch:82%;font-size:1.5rem;letter-spacing:-.015em}
.logo--jasne{color:#fff}
.menu{flex:1}
.menu__lista{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.menu__przycisk{font:inherit;font-weight:620;font-size:.98rem;color:var(--ink);background:none;border:0;border-radius:var(--r-s);padding:.55rem .8rem;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem}
.menu__przycisk::after{content:"";width:.45em;height:.45em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .15s}
.menu__przycisk:hover,.menu__przycisk[aria-expanded="true"]{background:var(--jogurt)}
.menu__przycisk[aria-expanded="true"]::after{transform:translateY(2px) rotate(225deg)}
.naglowek__akcje{display:flex;align-items:center;gap:10px;margin-left:auto}
.szukaj-przycisk{display:inline-flex;align-items:center;gap:.45rem;font:inherit;font-weight:600;font-size:.95rem;color:var(--ink);background:var(--jogurt);border:1px solid var(--line);border-radius:999px;padding:.5rem .95rem;cursor:pointer}
.szukaj-przycisk:hover{border-color:var(--ink)}
.koszyk{position:relative;display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:50%;color:var(--ink)}
.koszyk:hover{background:var(--jogurt)}
.koszyk__licznik{position:absolute;top:4px;right:2px;min-width:18px;height:18px;border-radius:9px;background:var(--burak);color:#fff;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px}
.burger{display:none;width:44px;height:44px;border:0;background:none;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;border-radius:var(--r-s)}
.burger span:not(.sr){display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Mega menu */
.mega{position:absolute;left:0;right:0;top:100%;background:var(--bialy);border-bottom:1px solid var(--line);box-shadow:var(--cien);max-height:calc(100vh - var(--naglowek));overflow:auto}
.mega[hidden]{display:none}
.mega__siatka{max-width:1240px;margin:0 auto;padding:26px 20px 30px;display:grid;gap:28px}
.mega__siatka--3{grid-template-columns:2fr 1fr 1fr}
.mega__siatka--5{grid-template-columns:repeat(4,1fr) 1.1fr}
.mega__siatka--miasta{grid-template-columns:1.1fr 1fr 1.2fr}
.mega__kolumna .szukaj{margin:.2rem 0 1rem}
.mega__kolumna--wyroznik{background:var(--jogurt);border-radius:var(--r-l);padding:18px 20px}
.mega__tytul{font-size:.82rem;font-weight:700;color:var(--ink-2);margin:0 0 .7rem;letter-spacing:.01em}
.mega__opis{font-size:.95rem;color:var(--ink-2)}
.mega__linki{list-style:none;margin:0 0 1rem;padding:0}
.mega__linki--2{columns:2;column-gap:24px}
.mega__linki li{break-inside:avoid}
.mega__linki a{display:flex;align-items:center;gap:.55rem;padding:.32rem 0;text-decoration:none;font-weight:540}
.mega__linki a:hover span{text-decoration:underline}
.mega__linki small{margin-left:auto;color:var(--ink-2);font-variant-numeric:tabular-nums;padding-left:.5rem}
.mega__mapa .mapa{max-width:260px}

/* Znak marki */
.znak{--k:var(--ink);display:inline-flex;align-items:center;justify-content:center;flex:none;width:28px;height:28px;border-radius:8px;background:var(--k);color:#fff;font-weight:800;font-stretch:80%;font-size:.8rem;letter-spacing:-.02em}
.znak--duzy{width:52px;height:52px;border-radius:14px;font-size:1.15rem}

/* Menu mobilne */
.mobilne{position:fixed;top:var(--naglowek);left:0;right:0;bottom:0;background:var(--bialy);z-index:49;overflow:auto;padding:16px 20px 40px}
.mobilne[hidden]{display:none}
.mobilne__szukaj{margin-bottom:12px}
.mobilne__sekcja{border-bottom:1px solid var(--line)}
.mobilne__sekcja summary{list-style:none;cursor:pointer;padding:.95rem 0;font-weight:700;font-size:1.1rem;display:flex;justify-content:space-between}
.mobilne__sekcja summary::-webkit-details-marker{display:none}
.mobilne__sekcja summary::after{content:"+";font-weight:500}
.mobilne__sekcja[open] summary::after{content:"–"}
.mobilne__sekcja ul{list-style:none;margin:0 0 .8rem;padding:0}
.mobilne__sekcja a{display:block;padding:.45rem 0;text-decoration:none}
.mobilne__tytul{font-size:.8rem;font-weight:700;color:var(--ink-2);margin:.6rem 0 .2rem}
.mobilne .btn{margin-top:20px}
body.blokada{overflow:hidden}

/* Wyszukiwarka */
.szukaj{position:relative}
.szukaj__etykieta{display:block;font-weight:650;font-size:.95rem;margin-bottom:.4rem}
.szukaj__pole{width:100%;height:52px;border:2px solid var(--ink);border-radius:var(--r-m);padding:0 1rem 0 2.8rem;font:inherit;font-size:1.05rem;color:var(--ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='22' height='22'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5' fill='none' stroke='%231f2742' stroke-width='2'/%3E%3Cpath d='M15.5 15.5 21 21' stroke='%231f2742' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat .85rem center;-webkit-appearance:none;appearance:none}
.szukaj--duze .szukaj__pole{height:60px;font-size:1.12rem}
.szukaj--inline{max-width:420px;margin-top:1.4rem}
.szukaj--inline .szukaj__pole{height:48px;border-width:1.5px}
.szukaj__lista{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--cien);list-style:none;margin:0;padding:6px;max-height:340px;overflow:auto;z-index:60}
.szukaj__lista[hidden]{display:none}
.szukaj__lista li{padding:.55rem .75rem;border-radius:var(--r-s);cursor:pointer;line-height:1.3}
.szukaj__lista li small{display:block;color:var(--ink-2);font-size:.82rem}
.szukaj__lista li[aria-selected="true"],.szukaj__lista li:hover{background:var(--jogurt)}
.szukaj__lista mark{background:none;color:inherit;font-weight:750}
.szukaj__lista .szukaj__brak{cursor:default;color:var(--ink-2)}
.szukaj-warstwa{position:fixed;inset:0;background:rgba(31,39,66,.45);z-index:70;display:flex;align-items:flex-start;justify-content:center;padding:12vh 16px 16px}
.szukaj-warstwa[hidden]{display:none}
.szukaj-warstwa__okno{background:#fff;border-radius:22px;padding:26px;width:min(640px,100%);position:relative;box-shadow:var(--cien)}
.szukaj-warstwa__tytul{font-weight:780;font-stretch:85%;font-size:1.6rem;margin:0 0 .8rem}
.szukaj-warstwa__info{color:var(--ink-2);font-size:.92rem;margin:.8rem 0 0}
.szukaj-warstwa__zamknij{position:absolute;top:14px;right:14px;font:inherit;font-weight:600;background:var(--jogurt);border:0;border-radius:999px;padding:.4rem .9rem;cursor:pointer}

/* Sekcje i układ */
.sekcja{padding:56px 0}
.sekcja--jogurt{background:var(--jogurt)}
.sekcja__wstep{color:var(--ink-2);max-width:760px}
.dwie-kolumny{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.dwie-kolumny--mapa{grid-template-columns:1.15fr .85fr}
.tekst{max-width:720px}
.tekst--szeroki{max-width:860px}
.male-tytul{font-weight:700;font-size:.92rem;margin:1.4rem 0 .5rem}
.przypis{font-size:.85rem;color:var(--ink-2);margin-top:.6rem}
.linki-dalej{margin-top:1.4rem;font-weight:600}
.lead{font-size:1.16rem;line-height:1.55;color:var(--ink);max-width:720px}

/* Okruszki */
.okruszki ol{display:flex;flex-wrap:wrap;gap:.3rem;list-style:none;margin:0 0 1.1rem;padding:0;font-size:.88rem;color:var(--ink-2)}
.okruszki li+li::before{content:"/";margin-right:.3rem;color:var(--line-2)}
.okruszki a{color:var(--ink-2)}

/* Hero podstron */
.hero-strona{background:var(--jogurt);padding:30px 0 46px;border-bottom:1px solid var(--line)}
.hero-strona__siatka{display:grid;grid-template-columns:1.45fr .75fr;gap:44px;align-items:start}
.hero-strona__wstep{color:var(--ink-2);max-width:700px}

/* Etykieta wartości odżywczych – motyw przewodni */
.etykieta{background:#fff;border:2px solid var(--ink);border-radius:6px;padding:14px 16px 12px;max-width:360px;width:100%;justify-self:end}
.etykieta__tytul{font-weight:820;font-stretch:78%;font-size:1.4rem;line-height:1.05;margin:0 0 .5rem;padding-bottom:.45rem;border-bottom:9px solid var(--ink)}
.etykieta__wiersze{margin:0}
.etykieta__wiersz{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:.42rem 0;border-bottom:1px solid var(--ink)}
.etykieta__wiersz--gruby{border-bottom-width:4px}
.etykieta dt{font-weight:650;font-size:.95rem}
.etykieta dt small{display:block;font-weight:450;color:var(--ink-2);font-size:.78rem}
.etykieta dd{margin:0;font-weight:820;font-stretch:75%;font-size:1.45rem;text-align:right;white-space:nowrap}
.etykieta__stopka{font-size:.78rem;color:var(--ink-2);margin:.55rem 0 0;line-height:1.4}

/* Spis treści strony */
.spis{background:#fff;border-bottom:1px solid var(--line)}
.spis__lista{display:flex;gap:6px;list-style:none;margin:0 auto;padding-top:10px;padding-bottom:10px;overflow-x:auto;scrollbar-width:none}
.spis__lista::-webkit-scrollbar{display:none}
.spis a{display:block;white-space:nowrap;padding:.38rem .8rem;border-radius:999px;border:1px solid var(--line);text-decoration:none;font-weight:600;font-size:.92rem}
.spis a:hover{border-color:var(--ink);color:var(--ink)}

/* Filtry */
.filtry{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center;margin:0 0 10px;padding:16px;background:var(--jogurt);border-radius:var(--r-l)}
.filtry__grupa{display:flex;flex-wrap:wrap;gap:8px}
.filtry__grupa--cechy{gap:8px 18px}
.filtry__sort{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.92rem;margin-left:auto}
.filtry__sort select{height:40px;border:1.5px solid var(--line-2);border-radius:10px;padding:0 .6rem;font:inherit;font-size:.95rem;background:#fff;color:var(--ink)}
.filtry__wynik{font-size:.9rem;color:var(--ink-2);min-height:1.4em;margin:0 0 10px}
.chip{font:inherit;font-size:.9rem;font-weight:600;color:var(--ink);background:#fff;border:1.5px solid var(--line-2);border-radius:999px;padding:.32rem .75rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.chip__licznik{font-size:.75rem;font-weight:700;background:var(--jogurt-2);color:var(--ink);border-radius:999px;padding:0 .4rem;min-width:1.4rem;text-align:center}
.chip[aria-pressed="true"] .chip__licznik{background:rgba(255,255,255,.2);color:#fff}
.przelacznik{display:inline-flex;align-items:center;gap:.5rem;font-size:.92rem;font-weight:560;cursor:pointer}
.przelacznik input{-webkit-appearance:none;appearance:none;width:38px;height:22px;border-radius:11px;background:var(--line-2);position:relative;cursor:pointer;margin:0;flex:none;transition:background-color .15s}
.przelacznik input::before{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s}
.przelacznik input:checked{background:var(--szpinak)}
.przelacznik input:checked::before{transform:translateX(16px)}

/* Lista firm */
.lista-marek{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.marka-wiersz{display:grid;grid-template-columns:1fr 1.55fr minmax(200px,.8fr);gap:22px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);align-items:start}
.marka-wiersz[hidden]{display:none}
.marka-wiersz__glowa{display:flex;gap:14px;align-items:flex-start}
.marka-wiersz__nazwa{font-size:1.3rem;margin:.15rem 0 .25rem}
.marka-wiersz__nazwa a{text-decoration:none}
.marka-wiersz__nazwa a:hover{text-decoration:underline}
.marka-wiersz__tagline{font-size:.93rem;color:var(--ink-2);margin:0}
.marka-wiersz__dostawa{font-size:.93rem;margin:.7rem 0 .4rem}
.marka-wiersz__diety{font-size:.86rem;color:var(--ink-2);margin:0}
.marka-wiersz__prawa{display:grid;gap:12px}
.marka-wiersz__akcje{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.marka-wiersz--zwarty{grid-template-columns:1.2fr 1.3fr minmax(180px,.7fr);align-items:center}
.cechy{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.cecha{font-size:.8rem;font-weight:600;padding:.18rem .55rem;border-radius:6px;background:var(--jogurt)}
.cecha--wybor{background:var(--marchew-t)}
.cecha--eko{background:var(--szpinak-t);color:var(--szpinak)}
.cena-etykieta{border:2px solid var(--ink);border-radius:8px;padding:8px 12px 9px;display:grid;grid-template-columns:auto 1fr;column-gap:.4rem;align-items:baseline;background:#fff}
.cena-etykieta__od{font-size:.85rem;font-weight:600}
.cena-etykieta__kwota{font-weight:830;font-stretch:75%;font-size:2rem;line-height:1}
.cena-etykieta__jedn{grid-column:1/-1;font-size:.8rem;color:var(--ink-2);margin-top:2px}
.cena-etykieta__kcal{grid-column:1/-1;font-size:.82rem;font-weight:650;border-top:1px solid var(--ink);margin-top:6px;padding-top:5px}
.pusto{padding:18px;background:var(--marchew-t);border-radius:var(--r-m);font-weight:600}

/* Tabele */
.tabela-ramka{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);margin-top:1rem}
.tabela-ramka--wysoka{max-height:640px;overflow:auto}
.tabela{width:100%;border-collapse:collapse;font-size:.95rem}
.tabela caption{text-align:left;font-size:.85rem;color:var(--ink-2);padding:.8rem .9rem .2rem}
.tabela th,.tabela td{padding:.6rem .9rem;text-align:left;vertical-align:top}
.tabela thead th{font-size:.82rem;font-weight:700;color:var(--ink-2);background:#f7f9f5;white-space:nowrap;position:sticky;top:0}
.tabela tbody tr{border-top:1px solid var(--line)}
.tabela tfoot tr{border-top:2px solid var(--ink);font-weight:700}
.tabela tbody th{font-weight:650}
.tabela tbody th a{text-decoration:none}
.tabela tbody th a:hover{text-decoration:underline}
.tabela__min{color:var(--szpinak);font-weight:750;background:var(--szpinak-t)}
.tabela__miejsce{font-weight:830;font-stretch:75%;font-size:1.25rem}
.tabela small{color:var(--ink-2)}
.pasek{display:inline-flex;align-items:center;gap:.5rem;font-weight:700}
.pasek__tlo{fill:var(--jogurt-2)}
.pasek__wartosc{fill:var(--szpinak)}
.metodologia{margin:1.1rem 0 0;max-width:860px;color:var(--ink-2);font-size:.92rem}
.metodologia a{font-weight:650;color:var(--ink)}

/* Kalkulatory */
.kalk{display:grid;grid-template-columns:1.35fr 1fr;gap:24px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;margin-top:1rem}
.kalk__pola{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;align-content:start}
.pole{display:flex;flex-direction:column;gap:6px;font-size:.9rem;font-weight:620;border:0;margin:0;padding:0;min-width:0}
.pole input[type=number],.pole select{height:46px;border:1.5px solid var(--line-2);border-radius:10px;padding:0 .75rem;font:inherit;font-size:1rem;font-weight:450;color:var(--ink);background:#fff;width:100%}
.pole--radio{flex-direction:row;flex-wrap:wrap;gap:6px 16px;align-items:center}
.pole--radio legend{width:100%;margin-bottom:6px;padding:0}
.pole--radio label{display:inline-flex;align-items:center;gap:.4rem;font-weight:500}
.pole--radio input{accent-color:var(--szpinak);width:18px;height:18px;margin:0}
.kalk .przelacznik{grid-column:1/-1}
.kalk__wynik{background:var(--jogurt);border-radius:var(--r-l);padding:20px;align-self:stretch}
.kalk__info{color:var(--ink-2);margin:0}
.kalk__suma{font-weight:830;font-stretch:75%;font-size:2.6rem;line-height:1;margin:.2rem 0 .6rem}
.kalk__lista{margin:0;display:grid;gap:4px}
.kalk__lista div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:.32rem 0;font-size:.93rem}
.kalk__lista dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}
.kalk__uwaga{grid-column:1/-1;font-size:.83rem;color:var(--ink-2);margin:0}
.kalk__wynik .btn{margin-top:14px}

/* Mapy */
.mapa{width:100%;height:auto;display:block}
.mapa__obszar path{fill:#dfe8db;stroke:#fff;stroke-width:1.3;transition:fill .15s}
.mapa__obszar:hover path,.mapa__obszar:focus path{fill:#b9d3c3}
.mapa__powiat{fill:#edf1ea;stroke:#c3ccc0;stroke-width:.8}
.mapa__powiat--wlasny{fill:#d3e7da;stroke:var(--szpinak);stroke-width:1.8}
.mapa__punkt circle{fill:var(--burak);stroke:#fff;stroke-width:1.5}
.mapa__punkt:hover circle,.mapa__punkt:focus circle{fill:var(--ink)}
.mapa__siedziba{fill:var(--burak);stroke:#fff;stroke-width:2.5}
.mapa__napis{font:650 13px var(--font);fill:var(--ink);paint-order:stroke;stroke:#fff;stroke-width:3.5px;stroke-linejoin:round}
.mapa__napis--maly{font-size:12px;font-weight:550}
.mapa__napis--glowny{font-size:16px;font-weight:800}
.mapa-powiatu,.mapa-woj,.mapa-polski{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:14px}
.mapa-powiatu figcaption,.mapa-woj figcaption,.mapa-polski figcaption{font-size:.85rem;color:var(--ink-2);margin-top:.5rem}

/* Kafle i listy */
.lista-chipow{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.lista-chipow li{font-size:.86rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.18rem .65rem}
.kafle-diet,.kafle-miast,.kalk-kafle,.marki-siatka{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;gap:12px}
.kafle-diet{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.kafle-miast{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.kalk-kafle{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.marki-siatka{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.kafle-diet a,.kafle-miast a,.kalk-kafle a,.marka-kafel{display:flex;flex-direction:column;gap:2px;height:100%;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:var(--r-m);text-decoration:none;transition:border-color .15s}
.kafle-diet a:hover,.kafle-miast a:hover,.kalk-kafle a:hover,.marka-kafel:hover{border-color:var(--ink);color:var(--ink)}
.kafle-diet__nazwa,.kafle-miast__nazwa,.kalk-kafle__nazwa,.marka-kafel__nazwa{font-weight:700}
.kafle-diet__ile,.kafle-miast__dane,.kalk-kafle__opis,.marka-kafel__opis{font-size:.86rem;color:var(--ink-2)}
.marka-kafel .znak{margin-bottom:8px}
.marka-kafel__dane{font-size:.86rem;font-weight:650;margin-top:auto;padding-top:6px}

/* FAQ */
.faq{max-width:860px;border-top:1px solid var(--line)}
.faq__pozycja{border-bottom:1px solid var(--line)}
.faq__pozycja summary{list-style:none;cursor:pointer;padding:1rem 2.2rem 1rem 0;font-weight:680;position:relative}
.faq__pozycja summary::-webkit-details-marker{display:none}
.faq__pozycja summary::after{content:"+";position:absolute;right:.4rem;top:.85rem;font-size:1.3rem;font-weight:500}
.faq__pozycja[open] summary::after{content:"–"}
.faq__pozycja p{margin:0 0 1.1rem;color:var(--ink-2);max-width:780px}

/* Strona główna */
.hero{padding:44px 0 56px;background:var(--jogurt);border-bottom:1px solid var(--line)}
.hero__siatka{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(2.2rem,4.6vw,3.5rem)}
.hero__szybkie{font-size:.95rem;color:var(--ink-2);margin-top:1rem}
.hero__szybkie a{font-weight:600}
.tacka{margin:0}
.tacka__ramka{display:grid;grid-template-columns:repeat(3,1fr);grid-template-areas:"a b c" "d d e";gap:12px;padding:14px;background:#fff;border:3px solid var(--ink);border-radius:28px;transform:rotate(-1.5deg);box-shadow:0 22px 50px rgba(31,39,66,.12)}
.tacka__przegroda{border-radius:16px;padding:16px 14px;min-height:118px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 0 2px 0 rgba(31,39,66,.05)}
.tacka__przegroda--1{grid-area:a;background:var(--burak-t)}
.tacka__przegroda--2{grid-area:b;background:var(--szpinak-t)}
.tacka__przegroda--3{grid-area:d;background:var(--marchew-t);min-height:150px}
.tacka__przegroda--4{grid-area:c;background:#eef0f6}
.tacka__przegroda--5{grid-area:e;background:#f3efe2}
.tacka__posilek{font-weight:650;font-size:.92rem}
.tacka__kcal{font-weight:830;font-stretch:75%;font-size:1.65rem;font-variant-numeric:tabular-nums}
.tacka figcaption{font-size:.88rem;color:var(--ink-2);margin-top:18px;text-align:center}
.kroki{list-style:none;counter-reset:krok;margin:1.2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.kroki li{counter-increment:krok;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:20px}
.kroki li::before{content:counter(krok);display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:2px solid var(--ink);border-radius:8px;font-weight:830;font-stretch:75%;font-size:1.3rem;margin-bottom:12px}
.kroki p{margin:0;color:var(--ink-2)}
.grupy-diet{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:1rem}
.grupy-diet ul{list-style:none;margin:0;padding:0}
.grupy-diet li{padding:.3rem 0;border-bottom:1px solid var(--line)}
.grupy-diet small{color:var(--ink-2)}
.kcal-pasek{margin-top:1.4rem;display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-weight:650}
.kcal-pasek a{padding:.3rem .8rem;border:1.5px solid var(--ink);border-radius:999px;text-decoration:none;font-weight:700;font-variant-numeric:tabular-nums}
.kcal-pasek a:hover{background:var(--ink);color:#fff}
.lista-woj{list-style:none;margin:1rem 0 1.4rem;padding:0;columns:2;column-gap:28px}
.lista-woj li{break-inside:avoid;padding:.3rem 0;border-bottom:1px solid var(--line)}
.lista-woj small{color:var(--ink-2)}
.indeks{columns:3;column-gap:32px;margin-top:1.2rem}
.indeks__woj{break-inside:avoid;margin-bottom:1.6rem}
.indeks__woj h3{font-size:1.05rem;margin-bottom:.4rem}
.indeks ul{list-style:none;margin:0;padding:0}
.indeks li{padding:.12rem 0;font-size:.95rem}
.indeks small{color:var(--ink-2);font-variant-numeric:tabular-nums}
.blad{padding:30px 0}
.blad .szukaj{margin:1.4rem 0;max-width:560px}

/* Stopka */
.stopka{background:var(--ink);color:#d9deea;padding:48px 0 20px;margin-top:0}
.stopka a{color:#fff;text-decoration:none}
.stopka a:hover{text-decoration:underline;color:#fff}
.stopka__siatka{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:28px}
.stopka__marka p{font-size:.93rem;margin-top:.8rem;max-width:300px}
.stopka__tytul{font-weight:750;color:#fff;margin:0 0 .6rem}
.stopka ul{list-style:none;margin:0;padding:0}
.stopka li{padding:.22rem 0;font-size:.93rem}
.stopka__dol{max-width:1200px;margin:34px auto 0;padding:16px 20px 0;border-top:1px solid rgba(255,255,255,.15);display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:.82rem}
.stopka__dol p{margin:0}
.logo--jasne .logo__znak rect:first-child{fill:#fff}

/* Responsywność */
@media (max-width:1080px){
  .menu,.naglowek__cta{display:none}
  .burger{display:inline-flex}
  .szukaj-przycisk span{display:none}
  .szukaj-przycisk{padding:.55rem}
  .marka-wiersz,.marka-wiersz--zwarty{grid-template-columns:1fr 1fr}
  .marka-wiersz__srodek{grid-column:1/-1;grid-row:2}
  .marka-wiersz__prawa{grid-column:2;grid-row:1}
  .grupy-diet{grid-template-columns:repeat(2,1fr)}
  .stopka__siatka{grid-template-columns:repeat(2,1fr)}
  .indeks{columns:2}
}
@media (max-width:820px){
  .hero__siatka,.hero-strona__siatka,.dwie-kolumny,.dwie-kolumny--mapa,.kalk{grid-template-columns:1fr}
  .etykieta{justify-self:start;max-width:none}
  .kroki{grid-template-columns:1fr}
  .tacka{max-width:440px}
  .filtry__sort{margin-left:0}
  .sekcja{padding:42px 0}
}
@media (max-width:560px){
  body{font-size:1rem}
  .marka-wiersz,.marka-wiersz--zwarty{grid-template-columns:1fr;padding:16px}
  .marka-wiersz__prawa,.marka-wiersz__srodek{grid-column:auto;grid-row:auto}
  .kalk__pola{grid-template-columns:1fr}
  .kalk{padding:16px}
  .grupy-diet,.stopka__siatka{grid-template-columns:1fr}
  .indeks,.lista-woj,.mega__linki--2{columns:1}
  .logo__nazwa{font-size:1.3rem}
  .tacka__kcal{font-size:1.35rem}
  .tacka__przegroda{min-height:96px;padding:12px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .tacka__ramka{transform:none}
}
@media print{
  .naglowek,.stopka,.spis,.filtry,.kalk,.szukaj{display:none}
}

/* ===== Etap 2: strony ogólne, widżety, quiz ===== */
[hidden]{display:none!important}
.hero-strona__siatka--jedna{grid-template-columns:1fr}
.hero-strona__cta{display:flex;flex-wrap:wrap;gap:10px;margin:1.3rem 0 0}
.tekst--po{margin-top:1.1rem}
.punkty{list-style:none;margin:1rem 0 0;padding:0;max-width:860px;display:grid;gap:8px}
.punkty li{position:relative;padding:.55rem .8rem .55rem 2.1rem;background:#fff;border:1px solid var(--line);border-radius:var(--r-m)}
.punkty li::before{content:"";position:absolute;left:.85rem;top:1.05rem;width:.55rem;height:.55rem;border-radius:2px;background:var(--szpinak)}
.punkty strong{font-weight:700}
.dzien{list-style:none;margin:1rem 0 0;padding:0;max-width:760px;border:2px solid var(--ink);border-radius:8px;background:#fff}
.dzien li{display:grid;grid-template-columns:9.5rem 1fr auto;gap:12px;align-items:baseline;padding:.6rem .9rem;border-bottom:1px solid var(--ink)}
.dzien li:last-child{border-bottom:0}
.dzien__posilek{font-weight:750}
.dzien__danie{color:var(--ink-2)}
.dzien__kcal{font-weight:830;font-stretch:75%;font-size:1.25rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.przyklad{max-width:860px;background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:14px 16px;margin:1rem 0 0}
.uwaga{max-width:860px;background:var(--marchew-t);border-left:4px solid var(--marchew);border-radius:6px;padding:12px 16px;margin:1rem 0 0;font-size:.97rem}
.kafle-diet--opis a{gap:6px}
.kafle-diet__opis{font-size:.88rem;color:var(--ink-2);line-height:1.45}
.kafle-diet--opis .kafle-diet__ile{margin-top:auto;font-weight:650;color:var(--ink)}
.wykres{margin:1.2rem 0 0;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:16px;max-width:760px}
.wykres__svg{width:100%;height:auto;display:block}
.wykres__slupek{fill:var(--szpinak)}
.wykres__etykieta{font:500 13px var(--font);fill:var(--ink)}
.wykres__wartosc{font:700 13px var(--font);fill:var(--ink)}
.wykres figcaption{font-size:.85rem;color:var(--ink-2);margin-top:.5rem}
.pole--szeroka{grid-column:1/-1}
.pole__etykieta{font-weight:620}
.pole select[name="miasto"]{height:46px;border:1.5px solid var(--line-2);border-radius:10px;padding:0 .75rem;font:inherit;font-size:1rem;background:#fff;color:var(--ink);width:100%}
.szukaj--pole .szukaj__pole{height:46px;border-width:1.5px;font-size:1rem}
.pole__info{font-size:.88rem;color:var(--burak);font-weight:600;margin:.3rem 0 0}
.kalk--jedna{grid-template-columns:1fr}
.kalk__pola--3{grid-template-columns:repeat(3,1fr)}
.porownaj{grid-template-columns:1fr}
.porownaj__wynik{min-width:0}
.btn--maly{min-height:36px;padding:.4rem .8rem;font-size:.9rem}
.kalk__komunikat{margin:.7rem 0 0;font-weight:600}
.tabela--porownanie td small,.tabela--porownanie th small{display:block;color:var(--ink-2);font-weight:450}
.quiz{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;margin-top:1rem}
.quiz__krok{border:0;margin:0;padding:0;min-width:0}
.quiz__krok legend{font-weight:780;font-stretch:85%;font-size:1.35rem;margin-bottom:.9rem;padding:0}
.quiz__opcje{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.quiz__opcja{display:flex;align-items:center;gap:.6rem;border:1.5px solid var(--line-2);border-radius:var(--r-m);padding:.8rem .9rem;cursor:pointer;font-weight:560;background:#fff}
.quiz__opcja input{accent-color:var(--szpinak);width:18px;height:18px;margin:0;flex:none}
.quiz__opcja:has(input:checked){border-color:var(--ink);background:var(--jogurt)}
.quiz .przelacznik{margin-top:1rem}
.quiz__nawigacja{display:flex;justify-content:space-between;gap:10px;margin-top:1.4rem}
.quiz__nawigacja [data-quiz-dalej]{margin-left:auto}
.quiz__wynik{margin-top:1.4rem}
.quiz__oferty{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:10px}
.quiz__oferty li{display:grid;grid-template-columns:auto 1fr auto auto;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:12px 14px}
.quiz__oferta small,.quiz__cena small{display:block;color:var(--ink-2);font-size:.82rem;font-weight:450}
.quiz__cena{font-weight:830;font-stretch:75%;font-size:1.4rem;text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:820px){
  .kalk__pola--3{grid-template-columns:1fr 1fr}
  .dzien li{grid-template-columns:1fr auto}
  .dzien__danie{grid-column:1/-1;grid-row:2}
  .quiz__oferty li{grid-template-columns:auto 1fr;}
  .quiz__cena{text-align:left}
}
@media (max-width:560px){
  .kalk__pola--3{grid-template-columns:1fr}
  .quiz{padding:16px}
}

/* ===== Etap 3: koszyk, zamówienie, proforma, opinie ===== */
.pole-ukryte{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.btn--duzy{min-height:52px;padding:.85rem 1.4rem;font-size:1.05rem}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.koszyk-lista{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;gap:12px}
.koszyk-pozycja{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:16px 18px}
.koszyk-pozycja--blad{grid-template-columns:1fr auto;background:var(--marchew-t)}
.koszyk-pozycja__nazwa{font-size:1.2rem;margin:0 0 .3rem}
.koszyk-pozycja__opis p{margin:0 0 .3rem;color:var(--ink-2);font-size:.95rem}
.koszyk-pozycja__cena{display:grid;justify-items:end;gap:2px;text-align:right}
.koszyk-pozycja__kwota{font-weight:830;font-stretch:75%;font-size:1.6rem;font-variant-numeric:tabular-nums}
.koszyk-pozycja__cena small{color:var(--ink-2)}
.koszyk-pozycja__akcje{display:flex;gap:4px}
.koszyk-suma{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:1.2rem;padding:16px 18px;border:2px solid var(--ink);border-radius:var(--r-m);background:#fff}
.koszyk-suma p{margin:0;font-size:1.15rem}
.koszyk-suma strong{font-weight:830;font-stretch:75%;font-size:1.8rem;font-variant-numeric:tabular-nums}
.zamowienie__siatka{display:grid;grid-template-columns:1.4fr .8fr;gap:28px;align-items:start;margin-top:1rem}
.zamowienie__formularz{display:grid;gap:18px}
.zamowienie__grupa{border:1px solid var(--line);border-radius:var(--r-l);padding:18px;margin:0;background:#fff;min-width:0}
.zamowienie__grupa legend{font-weight:750;font-size:1.1rem;padding:0 .3rem}
.pole textarea,.pole input[type=text],.pole input[type=email],.pole input[type=tel],.pole input[type=password]{min-height:46px;border:1.5px solid var(--line-2);border-radius:10px;padding:.55rem .75rem;font:inherit;font-size:1rem;font-weight:450;color:var(--ink);background:#fff;width:100%}
.pole [aria-invalid="true"]{border-color:var(--burak)}
.zgoda{display:flex;gap:.6rem;align-items:flex-start;font-size:.93rem;margin:.3rem 0}
.zgoda input{width:18px;height:18px;margin:.15rem 0 0;accent-color:var(--szpinak);flex:none}
.zamowienie__blad{background:var(--burak-t);color:var(--burak-2);border-radius:var(--r-m);padding:12px 14px;font-weight:600;margin:0}
.zamowienie__info{font-size:.9rem;color:var(--ink-2);margin:0}
.zamowienie__podsumowanie{position:sticky;top:calc(var(--naglowek) + 16px);background:#fff;border:2px solid var(--ink);border-radius:var(--r-m);padding:18px}
.zamowienie__podsumowanie h2{font-size:1.25rem}
.podsumowanie-lista{list-style:none;margin:0;padding:0}
.podsumowanie-lista li{padding:.6rem 0;border-bottom:1px solid var(--line);font-size:.92rem}
.podsumowanie-lista__kwota{display:block;text-align:right;font-weight:750;font-variant-numeric:tabular-nums}
.podsumowanie-suma{display:flex;justify-content:space-between;align-items:baseline;font-size:1.05rem;margin:1rem 0 .5rem}
.podsumowanie-suma strong{font-weight:830;font-stretch:75%;font-size:1.7rem;font-variant-numeric:tabular-nums}
.zamowienie__sukces{background:#fff;border:2px solid var(--szpinak);border-radius:var(--r-l);padding:24px;margin-top:1rem}
.zamowienie__sukces:focus{outline:none}
.naglowek--prosty{position:static}
.strona-php__tresc{padding-top:28px;padding-bottom:48px}
.proforma{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:28px}
.proforma__ostrzezenie{background:var(--burak-t);color:var(--burak-2);font-weight:650;padding:10px 14px;border-radius:var(--r-s)}
.proforma__glowa{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;border-bottom:9px solid var(--ink);padding-bottom:12px;margin-bottom:16px}
.proforma__rodzaj{margin:0;font-weight:650;color:var(--ink-2)}
.proforma__glowa h1{margin:0;font-size:2rem}
.proforma__daty{margin:0;display:grid;gap:4px}
.proforma__daty div{display:flex;gap:10px;justify-content:space-between}
.proforma__daty dd{margin:0;font-weight:700}
.proforma__strony{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:12px}
.proforma__strony h2,.proforma__platnosc h2{font-size:1.05rem;margin:0 0 .4rem}
.proforma__brak{color:var(--burak);font-weight:650}
.proforma__vat{max-width:520px;margin:1rem 0 0 auto}
.proforma__platnosc{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start;margin-top:1.2rem;padding:16px;border:2px solid var(--ink);border-radius:var(--r-m)}
.proforma__qr{margin:0;text-align:center}
.proforma__qr figcaption{font-size:.82rem;color:var(--ink-2)}
.proforma__uwaga{font-size:.88rem;color:var(--ink-2);margin-top:1rem}
.proforma .tabela{font-size:.9rem}
.opinia{max-width:760px}
.opinia__formularz{display:grid;gap:14px;margin-top:1rem}
.ocena{border:1px solid var(--line);border-radius:var(--r-m);padding:12px 14px;margin:0;background:#fff}
.ocena legend{font-weight:700;padding:0 .3rem}
.ocena__skala{display:flex;gap:8px;flex-wrap:wrap}
.ocena__skala label{display:inline-flex;align-items:center;gap:.3rem;border:1.5px solid var(--line-2);border-radius:999px;padding:.3rem .8rem;cursor:pointer;font-weight:650}
.ocena__skala label:has(input:checked){background:var(--ink);color:#fff;border-color:var(--ink)}
.ocena__skala input{accent-color:var(--szpinak)}
.opinie{margin-top:1rem}
.opinie__brak{color:var(--ink-2);font-style:italic}
.opinie__podsumowanie{display:flex;align-items:baseline;gap:10px;margin-bottom:.6rem}
.opinie__srednia{font-weight:830;font-stretch:75%;font-size:2.4rem}
.opinie__lista{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:10px;max-width:860px}
.opinia-karta{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:12px 16px}
.opinia-karta__glowa{font-size:.9rem;color:var(--ink-2);margin:0 0 .3rem}
.moderacja__lista{list-style:none;margin:1rem 0;padding:0;display:grid;gap:12px}
.moderacja__opinia{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:14px 16px}
.moderacja__akcje{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:.6rem}
.moderacja__akcje form{margin:0}
.moderacja__zasady{color:var(--ink-2)}
@media (max-width:820px){
  .zamowienie__siatka,.proforma__strony,.proforma__platnosc{grid-template-columns:1fr}
  .zamowienie__podsumowanie{position:static;order:-1}
  .koszyk-pozycja{grid-template-columns:1fr}
  .koszyk-pozycja .znak{display:none}
  .koszyk-pozycja__cena{justify-items:start;text-align:left}
}
@media print{
  .proforma__akcje,.proforma__ostrzezenie{display:none}
  .proforma{border:0;padding:0}
}

/* ===== Etap 4: kontakt, poradnik ===== */
.kontakt__info{font-size:.88rem;color:var(--ink-2);margin:0}
.kontakt__wynik{background:var(--burak-t);color:var(--burak-2);border-radius:var(--r-m);padding:12px 14px;font-weight:600;margin:0}
.kontakt__wynik--ok{background:var(--szpinak-t);color:var(--szpinak)}
.kontakt__dane{background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:20px}
.kontakt__dane h2{font-size:1.25rem}
.pole select{height:46px;border:1.5px solid var(--line-2);border-radius:10px;padding:0 .75rem;font:inherit;font-size:1rem;background:#fff;color:var(--ink);width:100%}
.hero-strona__wstep{font-size:.92rem}

/* ===== Etap 4: poradnik, jadłospisy, kontakt ===== */
.hero-strona__meta{font-size:.9rem;color:var(--ink-2);margin:.4rem 0 0}
.jadlospis{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:10px;max-width:880px}
.jadlospis__posilek{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:12px 16px}
.jadlospis__glowa{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 .2rem}
.jadlospis__nazwa{font-size:.82rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:var(--szpinak)}
.jadlospis__kcal{font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.jadlospis__danie{font-weight:700;font-size:1.05rem;margin:0 0 .25rem}
.jadlospis__skladniki{margin:0;color:var(--ink-2);font-size:.95rem}
.jadlospis__przygotowanie{margin:.35rem 0 0;font-size:.92rem}
.jadlospis__bilans{margin:.8rem 0 0;font-weight:650;font-size:.95rem;max-width:880px}
.zakupy{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:1rem}
.zakupy__grupa{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:14px 16px}
.zakupy__grupa h3{font-size:1rem;margin:0 0 .5rem}
.zakupy__grupa ul{margin:0;padding-left:1.1rem;font-size:.93rem}
.zakupy__grupa li{margin:.15rem 0}
.kontakt{background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:22px;margin-top:1rem;max-width:860px}
.kontakt textarea{min-height:140px;resize:vertical}
.kontakt__info{font-size:.9rem;color:var(--ink-2);margin:1rem 0 .4rem}
.kontakt__wynik{background:var(--burak-t);color:var(--burak-2);border-radius:var(--r-m);padding:12px 14px;font-weight:600;margin:.6rem 0 0}
.kontakt__wynik--ok{background:var(--szpinak-t,#e6f2ea);color:var(--szpinak)}
@media print{.jadlospis__posilek,.zakupy__grupa{break-inside:avoid}}
.stopka__marki{font-size:.85rem;opacity:.85;margin:.4rem 0}

/* ===== Poradnik: ramka „W skrócie”, filtr tabel ===== */
.skrot{background:var(--szpinak-t);border-left:4px solid var(--szpinak);border-radius:var(--r-m);padding:12px 16px;margin:1rem 0 0;max-width:760px}
.skrot__tytul{margin:0 0 .3rem;font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--szpinak)}
.skrot ul{margin:0;padding-left:1.1rem}
.skrot li{margin:.2rem 0}
.filtr-tabeli{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:.8rem 0}
.filtr-tabeli label{font-weight:650}
.filtr-tabeli input{min-height:44px;border:1.5px solid var(--line-2);border-radius:10px;padding:.45rem .75rem;font:inherit;width:min(100%,320px)}
tr[hidden]{display:none}


/* ===== v2 (2026-10): wygląd diety.fit – bazylia, mango, limonka; Bricolage Grotesque + Figtree ===== */
body{font-family:var(--font);color:var(--ink);background:var(--papier);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,h3,.male-tytul,.mega__tytul,.stopka__tytul{font-family:var(--font-display);font-stretch:normal}
h1{font-weight:800;letter-spacing:-.03em;line-height:1.04}
h2{font-weight:800;letter-spacing:-.022em;line-height:1.1}
h3{font-weight:700;letter-spacing:-.012em}
a:hover{color:var(--marka)}
main p a,main li>a:only-child:not([class]),.faq a,.tekst a{color:var(--marka);text-decoration-thickness:1px;text-underline-offset:.18em}
main p a:hover,.faq a:hover,.tekst a:hover{color:var(--marka-2)}
:focus-visible{outline:3px solid var(--marka);outline-offset:2px}
::selection{background:var(--limonka);color:var(--ink)}

/* Przyciski */
.btn{border-radius:999px;min-height:48px;padding:.7rem 1.35rem;font-weight:700;transition:background-color .15s,color .15s,border-color .15s,box-shadow .15s}
.btn--glowny{background:var(--marka);color:#fff;box-shadow:0 1px 2px rgba(20,35,28,.14)}
.btn--glowny:hover{background:var(--marka-2);color:#fff}
.btn--obrys{border:2px solid var(--marka);color:var(--marka);background:#fff}
.btn--obrys:hover{background:var(--marka);border-color:var(--marka);color:#fff}
.btn--tekst{color:var(--marka);border-radius:8px}
.btn--maly{min-height:40px;padding:.45rem 1rem}
.btn--duzy{min-height:56px;padding:.9rem 1.8rem;font-size:1.06rem}
.btn--akcent{background:var(--limonka);color:var(--ink)}
.btn--akcent:hover{background:#C9E655;color:var(--ink)}

/* Nagłówek i logo */
.naglowek{background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}
.logo{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}
.logo__znak{width:40px;height:40px;flex:none}
.logo__nazwa{font-family:var(--font-display);font-weight:800;font-size:1.6rem;letter-spacing:-.035em;line-height:1;color:var(--ink)}
.logo__kropka{color:var(--mango)}
.logo__fit{color:var(--marka)}
.logo--jasne,.logo--jasne .logo__nazwa{color:var(--ink)}
.menu__przycisk{border-radius:999px;font-weight:650;padding:.55rem .95rem}
.menu__przycisk:hover,.menu__przycisk[aria-expanded="true"]{background:var(--jogurt);color:var(--ink)}
.szukaj-przycisk,.koszyk{border-radius:999px}
.koszyk__licznik{background:var(--mango);color:var(--ink);font-weight:800}
.mega{box-shadow:0 24px 48px rgba(20,35,28,.12)}
.mega__kolumna--wyroznik{background:var(--jogurt);border-radius:var(--r-l)}
.mega__tytul{font-weight:700}
.burger span:not(.sr){background:var(--ink)}

/* Sekcje i nagłówki stron */
.sekcja h2{font-size:clamp(1.65rem,3vw,2.4rem)}
.hero-strona{background:var(--jogurt);border-bottom:0}
.hero-strona h1{font-size:clamp(1.9rem,4vw,3rem)}
.okruszki{font-size:.9rem;color:var(--ink-2)}
.okruszki a{color:var(--ink-2)}
.okruszki a:hover{color:var(--marka)}
.male-tytul{font-weight:700}

/* Strona główna: sekcja startowa */
.hero{background:var(--jogurt);padding:56px 0 64px;border-bottom:0}
.hero h1{font-size:clamp(2.3rem,5vw,3.9rem);letter-spacing:-.035em;line-height:1.02}
.hero .lead{font-size:1.15rem;color:var(--ink-2)}
.hero__nadtytul{display:inline-flex;align-items:center;padding:.45rem .95rem;border-radius:999px;background:var(--limonka);font-weight:700;font-size:.92rem;margin:0 0 1.1rem;color:var(--ink)}
.hero .szukaj--duze{background:#fff;border-radius:24px;padding:12px 14px 14px;box-shadow:var(--cien);margin-top:1.4rem}
.hero .szukaj__etykieta{display:block;font-size:.85rem;font-weight:700;color:var(--ink-2);margin:0 4px 6px}
.szukaj--duze .szukaj__pole{min-height:58px;border-radius:16px;border:2px solid var(--line);font-size:1.1rem;padding-left:50px;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F6B4A' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4-4'/%3E%3C/svg%3E") 16px center/22px no-repeat}
.szukaj__pole:focus{border-color:var(--marka);outline:none;box-shadow:0 0 0 4px var(--marka-t)}
.szukaj__lista{border-radius:18px;box-shadow:var(--cien);border:1px solid var(--line)}
.hero__szybkie a{color:var(--marka);font-weight:600}

/* Strona główna: przykładowy dzień */
.tacka__ramka{display:flex;flex-direction:column;gap:10px;padding:22px;background:#fff;border:0;border-radius:28px;box-shadow:var(--cien);grid-template-areas:none}
.tacka__glowa{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px}
.tacka__tytul{font-family:var(--font-display);font-weight:700;font-size:1.35rem}
.tacka__suma{padding:.35rem .75rem;border-radius:999px;background:var(--jogurt);font-weight:700;font-size:.85rem;white-space:nowrap}
.tacka__przegroda,.tacka__przegroda--1,.tacka__przegroda--2,.tacka__przegroda--3,.tacka__przegroda--4,.tacka__przegroda--5{grid-area:auto;min-height:0;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:16px;background:var(--jogurt);box-shadow:none}
.tacka__posilek{display:flex;flex-direction:column;font-weight:700}
.tacka__danie{font-weight:500;font-size:.9rem;color:var(--ink-2)}
.tacka__kcal{font-family:var(--font-display);font-weight:800;white-space:nowrap}
.tacka__stopka{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:6px}
.tacka__cena{padding:.45rem .9rem;border-radius:12px;background:var(--mango);font-weight:700;color:var(--ink)}
.tacka__cena strong{font-family:var(--font-display);font-size:1.4rem;font-weight:800}
.tacka__dostawa{font-weight:600;color:var(--ink-2)}
.tacka figcaption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Pasek atutów */
.atuty{border-bottom:1px solid var(--line);background:#fff}
.atuty__lista{list-style:none;margin:0 auto;padding-top:22px;padding-bottom:22px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.atuty__lista li{display:flex;gap:12px;align-items:center;font-size:.92rem;color:var(--ink-2)}
.atuty__lista strong{display:block;color:var(--ink);font-size:1rem}
.atuty__lista svg{flex:none;width:30px;height:30px;color:var(--marka)}
@media (max-width:900px){.atuty__lista{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.atuty__lista{grid-template-columns:1fr}}

/* Pasmo z zachętą (ciemne) */
.pasmo{background:var(--ink);color:#fff}
.pasmo__siatka{display:flex;flex-wrap:wrap;gap:20px 32px;align-items:center;justify-content:space-between;padding-top:52px;padding-bottom:52px}
.pasmo h2{color:#fff;margin:0 0 .4rem}
.pasmo p{color:#C9D6CF;margin:0;font-size:1.08rem}

/* Kafle i karty */
.kafle-diet a,.kafle-miast a{border-radius:20px;border:1px solid var(--line);background:#fff;transition:border-color .15s,box-shadow .15s,transform .15s}
.kafle-diet a:hover,.kafle-miast a:hover{border-color:var(--marka);box-shadow:var(--cien);transform:translateY(-1px);color:var(--ink)}
.kafle-diet__nazwa,.kafle-miast__nazwa{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em}
.chip{border-radius:999px;font-weight:650}
.chip[aria-pressed="true"]{background:var(--marka);border-color:var(--marka);color:#fff}
.chip[aria-pressed="true"] .chip__licznik{background:rgba(255,255,255,.2);color:#fff}
.lista-chipow li{border-radius:999px}

/* Karta marki na listach */
.marka-wiersz{border-radius:24px;border:1px solid var(--line);padding:22px;transition:border-color .15s,box-shadow .15s}
.marka-wiersz:hover{border-color:var(--marka);box-shadow:var(--cien)}
.znak{border-radius:12px;font-family:var(--font-display);font-weight:800;letter-spacing:-.02em}
.znak--duzy{border-radius:18px}
.marka-wiersz__nazwa{font-family:var(--font-display);font-size:1.4rem}
.marka-wiersz__nazwa a{color:var(--ink)}
.cecha{border-radius:999px;padding:.25rem .7rem;font-weight:650;background:var(--jogurt)}
.cecha--probny{background:var(--limonka);font-weight:750;color:var(--ink)}
.cecha--wybor{background:var(--mango-t)}
.cecha--eko{background:var(--marka-t);color:var(--marka-2)}
.cena-etykieta{border:0;border-radius:18px;background:var(--jogurt);padding:12px 16px}
.cena-etykieta__kwota{font-family:var(--font-display);font-weight:800;font-stretch:normal;font-size:2.1rem;letter-spacing:-.025em}
.cena-etykieta__kcal{border-top:1px solid var(--line-2);font-weight:650}

/* Filtry, tabele, pytania */
.filtry{border-radius:24px;background:var(--jogurt);padding:18px 20px}
.filtry__sort select{border-radius:12px;min-height:44px}
.przelacznik input:checked{background:var(--marka)}
.tabela-ramka{border-radius:20px;border:1px solid var(--line)}
.tabela th{background:var(--jogurt);font-weight:700}
.tabela__min{color:var(--marka-2);background:var(--marka-t);font-weight:800}
.faq__pozycja{border:1px solid var(--line);border-radius:16px;background:#fff;margin:0 0 10px;padding:4px 18px}
.faq__pozycja summary{font-weight:700;padding:14px 0;cursor:pointer}
.faq__pozycja[open]{border-color:var(--line-2)}
.kroki>li{border-radius:20px;background:var(--jogurt);border:0}

/* Formularze i quiz */
.pole input,.pole select,.pole textarea{border-radius:12px;border:1.5px solid var(--line-2);min-height:48px}
.pole input:focus,.pole select:focus,.pole textarea:focus{border-color:var(--marka);box-shadow:0 0 0 4px var(--marka-t);outline:none}
.quiz__opcja{border-radius:16px}
.quiz__opcja:has(input:checked){border-color:var(--marka);background:var(--marka-t)}
.uwaga{border-radius:16px}

/* Stopka */
.stopka{background:var(--jogurt);color:var(--ink-2);border-top:1px solid var(--line)}
.stopka a{color:var(--ink)}
.stopka a:hover{color:var(--marka)}
.stopka__tytul{color:var(--ink);font-weight:700}
.stopka__dol{border-top-color:var(--line);color:var(--ink-2)}
.tacka__ramka{transform:none}
.kroki li::before{border:0;border-radius:999px;background:var(--marka);color:#fff;font-family:var(--font-display);font-weight:800;font-stretch:normal;font-size:1.15rem}
.szukaj__pole{border-color:var(--line-2);border-radius:14px}
.szukaj__pole:hover{border-color:var(--marka)}
/* Karta marki – strona główna */
.marka-kafel{gap:14px;padding:20px;border-radius:24px;border:1px solid var(--line);transition:border-color .15s,box-shadow .15s,transform .15s}
.marka-kafel:hover{border-color:var(--marka);box-shadow:var(--cien);transform:translateY(-1px)}
.marka-kafel .znak{margin:0;flex:none}
.marka-kafel__glowa{display:flex;gap:14px;align-items:center}
.marka-kafel__nazwy{display:flex;flex-direction:column;gap:2px;min-width:0}
.marka-kafel__nazwa{font-family:var(--font-display);font-weight:700;font-size:1.25rem;letter-spacing:-.01em}
.marka-kafel__cechy{display:flex;flex-wrap:wrap;gap:6px}
.marka-kafel__dol{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto}
.marka-kafel__cena{font-family:var(--font-display);font-weight:800;font-size:1.75rem;letter-spacing:-.02em;line-height:1}
.marka-kafel__cena small{font-family:var(--font);font-weight:500;font-size:.85rem;letter-spacing:0;color:var(--ink-2)}
.marka-kafel__link{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:999px;background:var(--marka);color:#fff;font-weight:700;font-size:.92rem}
.marka-kafel:hover .marka-kafel__link{background:var(--marka-2)}
.marka-kafel__link::after{content:"→";margin-left:6px}
.naglowek__cta{white-space:nowrap}
.hero__nadtytul{width:fit-content}
/* Karta danych miasta / marki (dawna „etykieta”) */
.etykieta{border:0;border-radius:24px;padding:20px 22px 16px;box-shadow:var(--cien)}
.etykieta__tytul{font-family:var(--font-display);font-weight:800;font-stretch:normal;font-size:1.3rem;letter-spacing:-.015em;border-bottom:0;padding-bottom:0;margin:0 0 .6rem}
.etykieta__wiersz{border-bottom:1px solid var(--line)}
.etykieta__wiersz--gruby{border-bottom-width:1px}
.etykieta__wiersz:last-child{border-bottom:0}
.etykieta dt{font-weight:600;color:var(--ink-2)}
.etykieta dd{font-family:var(--font-display);font-weight:800;font-stretch:normal;font-size:1.35rem;letter-spacing:-.015em}
.etykieta__wiersz--gruby dd{color:var(--marka)}
.etykieta__stopka{border-top:1px solid var(--line);padding-top:.55rem}
/* Etykieta ceny w karcie marki */
.cena-etykieta__od{font-weight:600;color:var(--ink-2)}
.cena-etykieta__jedn{color:var(--ink-2)}
/* Porównanie marek: pole przy marce i pasek (komputer: po zaznaczeniu; telefon: zawsze, z „Filtry”) */
.porownaj-pole{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:650;font-size:.92rem;cursor:pointer}
.porownaj-pole input{width:20px;height:20px;accent-color:var(--marka)}
.porownanie{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:40;display:none;align-items:center;gap:10px 14px;width:min(760px,calc(100% - 24px));padding:10px 10px 10px 18px;border-radius:20px;background:var(--ink);color:#fff;box-shadow:0 16px 40px rgba(20,35,28,.3)}
.porownanie--aktywne{display:flex}
.porownanie [hidden]{display:none!important}
.porownanie__tekst{margin:0;flex:1;min-width:0;font-weight:600;font-size:.95rem}
.porownanie__link{flex:none;min-height:46px}
.porownanie__link[aria-disabled="true"]{opacity:.6}
.porownanie__wyczysc{color:#C9D6CF;min-height:46px}
.porownanie__wyczysc:hover{color:#fff}
.porownanie__filtry{display:none}
@media (max-width:820px){
  .porownanie{display:flex;bottom:12px;padding:8px;gap:8px}
  .porownanie__tekst{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .porownanie__wyczysc{display:none}
  .porownanie__filtry{display:inline-flex;flex:1;align-items:center;justify-content:center;min-height:48px;border-radius:14px;background:#2A3B33;color:#fff;font-weight:700;text-decoration:none}
  .porownanie__filtry:hover{color:#fff;background:#33463D}
  .porownanie__link{flex:1.4;border-radius:14px}
  .lista-marek{padding-bottom:84px}
}
/* Małe ekrany – warstwa v2 */
.marka-kafel__cechy{align-items:flex-start}
.marka-kafel__cechy .cecha{display:inline-flex;align-items:center;line-height:1.3}
@media (max-width:560px){
  .logo__nazwa{font-size:1.35rem}
  .logo__znak{width:34px;height:34px}
  .hero{padding:36px 0 44px}
  .hero__nadtytul{font-size:.82rem}
  .tacka__ramka{padding:16px;border-radius:22px}
  .tacka__glowa{flex-wrap:wrap}
  .marka-kafel__cena{font-size:1.5rem}
  .etykieta{padding:16px 18px 12px}
  .marka-wiersz{padding:18px}
}
.sekcja__przyciski{display:flex;flex-wrap:wrap;gap:10px;margin:1.3rem 0 0}
.menu14{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin:1rem 0 .4rem}
.menu14__dzien{border:1px solid var(--line);border-radius:18px;padding:14px 16px;background:#fff}
.menu14__dzien h3{font-size:1.05rem;margin:0 0 .3rem}
.menu14__dzien dl{margin:0}
.menu14__dzien dt{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin-top:.5rem}
.menu14__dzien dd{margin:0;font-size:.93rem;line-height:1.4}
.menu14__wiecej summary{cursor:pointer;font-weight:700;color:var(--marka);margin:.6rem 0;min-height:44px;display:flex;align-items:center}

/* kolory marek – generowane z content/marki.json */
.marka--sezonowo{--k:#7a4a2a}
.marka--miarka{--k:#2f5d8a}
.marka--rozsadnie{--k:#3d7a3a}
.marka--sila-talerza{--k:#b2361f}
.marka--keto-kompas{--k:#7a5c00}
.marka--spokojny-cukier{--k:#4b5fa8}
.marka--lagodna-kuchnia{--k:#3f7a6e}
.marka--roslinnie{--k:#4f7f2a}
.marka--srodziemka{--k:#1f6c8c}
.marka--koperek{--k:#5f7f12}
.marka--przerwa-obiadowa{--k:#a35a12}
