/* Motyw dietunio.pl: style ze wszystkich makiet (docs/makiety/), paleta „Pudełko”, Familjen Grotesk. */
:root{
  --bg:#FFFFFF;
  --ink:#2A1740;
  --ink-2:#4A3D5C;
  --muted:#6E6280;
  --line:#ECE5F1;
  --mist:#F8F4FC;
  --peach:#FFE9DA;
  --peach-2:#FFF4EC;
  --apricot:#FF9564;
  --apricot-d:#F5814D;
  --butter:#FFD24D;
  --pink:#F47BA8;
  --violet:#8B6CF2;
  --ok:#22A06B;
  --m1:#FFD24D;--m2:#FFB27A;--m3:#FF7A3D;--m4:#F47BA8;--m5:#8B6CF2;
  --shadow:0 18px 40px -18px rgba(42,23,64,.28);
  --shadow-s:0 8px 22px -14px rgba(42,23,64,.35);
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:"Familjen Grotesk",system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip}
html{scroll-behavior:smooth;scroll-padding-top:72px}
img{display:block;max-width:100%}
a{color:inherit}
button,input,select{font:inherit;color:inherit}
h1,h2,h3,h4,p,ul{margin:0}
ul{padding:0;list-style:none}
.container{width:min(1200px,100% - 48px);margin-inline:auto}
.num{font-variant-numeric:tabular-nums}
:focus-visible{outline:2.5px solid var(--violet);outline-offset:2px;border-radius:6px}
.muted{color:var(--muted)}

/* ---------- nawigacja ---------- */
.nav{position:relative;z-index:6}
.nav .container{display:flex;align-items:center;gap:36px;height:76px;position:relative}
.wordmark{font-weight:700;font-size:27px;letter-spacing:-.04em;text-decoration:none;margin-right:auto}
.wordmark i{font-style:normal;color:var(--apricot)}
.nav-links{display:flex;align-self:stretch;gap:30px;font-size:16px;font-weight:500}
.nav-links > a{align-self:center}
.nav-links > a,.nav-item > a{text-decoration:none;opacity:.86}
.nav-links > a.on,.nav-item > a.on{opacity:1;text-decoration:underline;text-decoration-color:var(--apricot);text-decoration-thickness:2px;text-underline-offset:8px}
.icon-btn{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;cursor:pointer}
.icon-btn svg{width:19px;height:19px}
.nav-toggle{display:none}
.nav-toggle svg + svg,.nav.open .nav-toggle svg:first-child{display:none}
.nav.open .nav-toggle svg + svg{display:block}

/* menu główne: panele z najpopularniejszymi stronami (template-parts/nav.php) */
.nav-item{display:flex;align-items:center;gap:5px}
.nav-sub{width:24px;height:30px;display:grid;place-items:center;border:0;background:none;padding:0;cursor:pointer;color:var(--muted);border-radius:7px}
.nav-sub svg{width:15px;height:15px;transition:transform .15s}
.nav-sub:hover{color:var(--ink)}
.nav-panel{position:absolute;top:100%;right:0;width:min(760px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden;font-size:15px;visibility:hidden;opacity:0;transform:translateY(-6px);transition:opacity .15s,transform .15s,visibility 0s linear .15s}
.nav-item.open .nav-panel{visibility:visible;opacity:1;transform:none;transition-delay:0s}
.nav-item.open .nav-sub svg{transform:rotate(180deg)}
@media (hover:hover) and (min-width:981px){
  .nav-item:hover .nav-panel{visibility:visible;opacity:1;transform:none;transition-delay:0s}
  .nav-item:hover .nav-sub svg{transform:rotate(180deg)}
}
.np-body{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;padding:22px 26px 24px}
.np-body.solo{grid-template-columns:minmax(0,1fr)}
.np-h{display:flex;justify-content:space-between;gap:12px;font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.np-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.np-list a{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);text-decoration:none;font-weight:600;line-height:1.25}
.np-list a span{flex:1;min-width:0}
.np-list small{font-size:14px;font-weight:600;color:var(--ink-2);white-space:nowrap}
.np-list a:hover span{text-decoration:underline;text-decoration-color:var(--apricot);text-decoration-thickness:2px;text-underline-offset:4px}
.np-list a:hover small{color:var(--apricot-d)}
.np-cities{grid-template-columns:repeat(3,minmax(0,1fr))}
.np-cities small{font-weight:500;color:var(--muted)}
.np-feature{display:flex;flex-direction:column;gap:6px;background:var(--peach-2);border-radius:16px;padding:16px 18px 18px;text-decoration:none}
.np-feature img{width:84px;height:84px;margin:-4px 0 0 -6px}
.np-feature b{font-size:20px;letter-spacing:-.02em;line-height:1.15}
.np-feature span{color:var(--ink-2);font-size:14px;line-height:1.45}
.np-feature em{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:6px;font-style:normal;font-weight:700}
.np-feature em svg,.np-all svg{width:16px;height:16px;transition:transform .15s}
.np-feature:hover{background:var(--peach)}
.np-feature:hover em svg,.np-all:hover svg{transform:translateX(3px)}
.np-brands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 14px;margin-top:6px}
.np-brands a{display:flex;align-items:center;gap:12px;padding:7px;margin-inline:-7px;border-radius:14px;text-decoration:none;font-weight:600;line-height:1.2}
.np-brands a:hover{background:var(--mist)}
.np-brands .logo{width:66px;height:40px}
.np-all{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 26px;background:var(--mist);border-top:1px solid var(--line);font-weight:650;text-decoration:none}

/* ---------- wspólne ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:13px;padding:0 22px;min-height:52px;background:var(--apricot);color:var(--ink);font-weight:700;font-size:16px;cursor:pointer;white-space:nowrap;text-decoration:none;box-shadow:inset 0 -3px 0 rgba(42,23,64,.14);transition:background .15s}
.btn:hover{background:var(--apricot-d)}
.btn svg{width:17px;height:17px}
.btn.sec{background:#fff;box-shadow:none;border:1.5px solid var(--ink);min-height:46px;padding:0 18px;font-size:15px}
.btn.sec:hover{background:var(--mist)}
.btn.sm{min-height:40px;padding:0 14px;font-size:14.5px;border-radius:11px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;text-decoration:none;font-weight:500;font-size:14px;line-height:1.2;white-space:nowrap}
a.chip:hover,button.chip:hover{border-color:var(--ink)}
button.chip{cursor:pointer}
.tag{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:12.5px;font-weight:600;background:#F1E8FF;line-height:1.3;white-space:nowrap}
.tag.t-wegetarianska{background:#DDF2CC}.tag.t-weganska{background:#C2E8A8}.tag.t-wege-z-ryba{background:#D2EEF0}.tag.t-sportowa{background:#FFE1CF}.tag.t-niski-ig,.tag.t-low-carb,.tag.t-keto{background:#FCE0EC}.tag.t-bez-glutenu,.tag.t-bez-laktozy{background:#E2ECFB}.tag.t-kuchnia-domowa{background:#FFF0C2}
.tag.model{background:transparent;border:1px solid var(--line);color:var(--muted);font-weight:500}
.meals{display:inline-flex;gap:2px;padding:2.5px;border-radius:6px;background:var(--ink);flex:none}
.meals i{width:6px;height:11px;border-radius:2px;display:block;background:#4A3561}
.meals i.on:nth-child(1){background:var(--m1)}.meals i.on:nth-child(2){background:var(--m2)}.meals i.on:nth-child(3){background:var(--m3)}.meals i.on:nth-child(4){background:var(--m4)}.meals i.on:nth-child(5){background:var(--m5)}.meals i.on:nth-child(6){background:#C7B8F8}
.logo{width:76px;height:46px;border:1px solid var(--line);border-radius:10px;display:grid;grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;padding:4px 6px;flex:none;background:#fff}
.logo img{width:100%;height:100%;object-fit:contain}
.logo.on-dark{border-color:transparent}
.logo.mark{border-color:transparent;font-weight:700;font-size:15px;letter-spacing:-.02em;color:var(--ink);line-height:1}
[data-tip]{position:relative;cursor:help}
[data-tip]:hover::after,[data-tip]:focus::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:max-content;max-width:250px;background:var(--ink);color:#fff;font:500 13px/1.4 "Familjen Grotesk",system-ui,sans-serif;padding:8px 11px;border-radius:9px;z-index:30;text-align:left;white-space:normal;box-shadow:var(--shadow-s)}
.i{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;border:1.5px solid currentColor;font:700 10px/1 system-ui,sans-serif;opacity:.5;font-style:normal;margin-left:4px;vertical-align:1px}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:12px 30px;flex-wrap:wrap;margin-bottom:26px}
.sec-head h2{font-size:clamp(28px,3vw,38px);letter-spacing:-.03em;line-height:1.05}
.sec-head p{color:var(--muted);margin-top:8px;font-size:16px;max-width:60ch;line-height:1.45}
section.block{padding:80px 0 0}
.seg{display:inline-flex;gap:2px;padding:3px;border-radius:12px;background:var(--mist);border:1px solid var(--line)}
.seg button{border:0;background:transparent;border-radius:9px;padding:7px 12px;font-weight:600;font-size:14.5px;cursor:pointer;white-space:nowrap}
.seg button:hover{background:#fff}
.seg button[aria-pressed=true]{background:var(--ink);color:#fff}
.seg button:disabled{opacity:.35;cursor:default;background:transparent}

/* ---------- nagłówek miasta ---------- */
.crumbs{font-size:14.5px;color:var(--muted)}
.crumbs a{text-decoration:none}
.crumbs a:hover{text-decoration:underline}
/* kropka marki na końcu H1 (dtt_title) */
.h-end{font-style:normal;color:var(--apricot)}
.quick{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:26px;font-size:14.5px}
.quick > span{color:var(--muted);margin-right:4px}

/* plakat miasta: duży kontur granic w rastrze, liczby jako metki cenowe */
.hA{padding:20px 0 90px}
.hA .container{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:40px;align-items:center}
.hA h1{font-size:clamp(42px,5.2vw,68px);line-height:1.02;letter-spacing:-.035em;margin-top:22px}
.hA .lede{font-size:clamp(17px,1.5vw,20px);line-height:1.5;color:var(--ink-2);margin-top:22px;max-width:30em}
.hA .lede b{color:var(--ink);font-weight:600}
.hA .acts{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px}
.hA .acts .muted{font-size:14.5px}
.hA .acts .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ok);margin-right:8px;box-shadow:0 0 0 3px rgba(34,160,107,.15)}
.poster{position:relative;padding:40px 20px 30px}
.poster svg.city{display:block;width:100%;height:auto;max-height:420px;overflow:visible}
.poster .city .shape{fill:url(#dots);stroke:var(--apricot);stroke-width:1.6;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.poster .city .under{fill:var(--peach);stroke:none}
.poster .city .ctr{fill:var(--ink)}
.poster .city .ctr-ring{fill:none;stroke:var(--ink);stroke-width:1;opacity:.35;vector-effect:non-scaling-stroke}
.poster .city text{font:600 5.4px "Familjen Grotesk",sans-serif;fill:var(--ink);letter-spacing:.02em}
.poster .cap{display:flex;justify-content:flex-start;padding-left:4%;gap:14px;font-size:13.5px;color:var(--muted);margin-top:18px}
.poster .cap b{color:var(--ink)}
.tagx{position:absolute;display:grid;gap:2px;background:#fff;padding:10px 16px 10px 26px;border-radius:6px 12px 12px 6px;box-shadow:var(--shadow);clip-path:polygon(14px 0,100% 0,100% 100%,14px 100%,0 50%);text-decoration:none}
.tagx::before{content:"";position:absolute;left:12px;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:#E8DFF3}
.tagx b{font-size:26px;letter-spacing:-.03em;line-height:1}
.tagx span{font-size:12.5px;color:var(--muted);font-weight:600;white-space:nowrap}
.tagx small{font-size:12.5px;color:var(--ink-2);font-weight:500}
.tagx.t1{left:-4%;top:6%;transform:rotate(-5deg);background:var(--apricot)}
.tagx.t1 span{color:rgba(42,23,64,.75)}
.tagx.t1::before{background:rgba(255,255,255,.6)}
.tagx.t1:hover{background:var(--apricot-d)}
.tagx.t2{right:0;top:30%;transform:rotate(4deg)}
.tagx.t3{left:20%;bottom:16%;transform:rotate(-2deg)}
.poster .mascot{position:absolute;width:150px;right:2%;bottom:-6px;transform:rotate(5deg);filter:drop-shadow(0 12px 14px rgba(42,23,64,.18))}

/* zakładki sekcji */
.secnav{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.secnav .container{display:flex;align-items:center;gap:6px;height:60px;overflow-x:auto;scrollbar-width:none}
.secnav .container::-webkit-scrollbar{display:none}
.secnav a{padding:8px 14px;border-radius:999px;text-decoration:none;font-weight:600;font-size:15px;color:var(--ink-2);white-space:nowrap}
.secnav a small{font-weight:500;color:var(--muted);margin-left:3px}
.secnav a:hover{background:var(--mist)}
.secnav a.on{background:var(--ink);color:#fff}
.secnav a.on small{color:rgba(255,255,255,.7)}
.secnav .city{margin-left:auto;font-weight:700;font-size:15px;white-space:nowrap;opacity:0;transition:.2s;padding-left:20px}
.secnav.stuck .city{opacity:1}

/* ---------- najtańsze oferty ---------- */
.fbar{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-s);padding:18px 20px}
.frow{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px}
.fgrp{display:flex;align-items:center;gap:10px}
.fgrp > label,.fgrp > .fl{font-size:13.5px;font-weight:600;color:var(--muted);white-space:nowrap}
.flabels{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.flabels::-webkit-scrollbar{display:none}
.flabels button{flex:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 13px;font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap}
.flabels button small{color:var(--muted);font-weight:500;margin-left:5px}
.flabels button:hover{border-color:#D9CCE6}
.flabels button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.flabels button[aria-pressed=true] small{color:rgba(255,255,255,.7)}
.fmore{display:flex;flex-wrap:wrap;align-items:center;gap:10px 26px;margin-top:14px;font-size:14.5px}
.budget{display:flex;align-items:center;gap:10px}
.budget input{width:150px;accent-color:var(--apricot)}
.budget b{min-width:72px}
.check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-weight:500}
.check input{width:18px;height:18px;accent-color:var(--ink);margin:0}
.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:500}
.switch input{appearance:none;width:38px;height:22px;border-radius:99px;background:#DCD3E6;position:relative;margin:0;cursor:pointer;transition:background .15s}
.switch input::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.switch input:checked{background:var(--ink)}
.switch input:checked::after{left:19px}
.reset{background:none;border:0;padding:0;font-weight:700;text-decoration:underline;text-underline-offset:4px;cursor:pointer;margin-left:auto}

.rsum{display:flex;justify-content:space-between;align-items:baseline;gap:8px 20px;flex-wrap:wrap;margin:26px 4px 12px}
.rsum p{font-size:15.5px;color:var(--ink-2)}
.rsum p b{color:var(--ink)}
.rsum small{font-size:13px;color:var(--muted)}
.olist{display:grid;gap:10px}
.orow{display:grid;grid-template-columns:34px 84px minmax(0,1fr) 150px 140px auto;gap:4px 20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 18px;transition:border-color .15s,box-shadow .15s}
.orow:hover{border-color:#D9CCE6;box-shadow:var(--shadow-s)}
.orow.first{background:var(--peach-2);border-color:#FBD3BC}
.pos{font-size:15px;font-weight:700;color:var(--muted);text-align:center}
.orow.first .pos{color:var(--apricot-d)}
.orow .logo{width:84px;height:50px}
.who{min-width:0}
.who .bn{font-size:13.5px;font-weight:600;color:var(--muted);text-decoration:none}
.who .bn:hover{text-decoration:underline;color:var(--ink)}
.who .on{display:block;font-size:18px;font-weight:650;letter-spacing:-.01em;line-height:1.25;text-decoration:none;margin-top:1px}
.who .on:hover{text-decoration:underline;text-decoration-color:var(--apricot);text-decoration-thickness:2px;text-underline-offset:4px}
.who .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.spec{display:flex;align-items:center;gap:10px;font-size:14.5px;line-height:1.3}
.spec small{display:block;color:var(--muted);font-size:13px}
.price{text-align:right;white-space:nowrap}
.price b{display:block;font-size:24px;letter-spacing:-.03em;line-height:1}
.price small{display:block;font-size:12.5px;color:var(--muted);margin-top:4px}
.price .trial{color:var(--ok);font-weight:600}
.price .ref{color:#9A5B00}
/* Rabat za długość zamówienia przy cenie (dtt_len_note) */
.price .len{color:#6A4FD0;font-weight:600}
.price .len.unk{color:var(--muted);font-weight:500}
.price .dlv{margin-top:2px}
.price .dlv.unk{color:var(--muted)}
.fgrp.days{gap:8px}
.others{grid-column:3/-1;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:4px}
.others > button{background:none;border:0;padding:0;text-align:left;font-size:14px;font-weight:600;color:var(--ink-2);cursor:pointer;text-decoration:underline;text-decoration-color:#D9CCE6;text-underline-offset:4px}
.others > button:hover{text-decoration-color:var(--ink)}
.olist-sub{grid-column:3/-1;display:none;border-top:1px dashed var(--line);margin-top:6px;padding-top:4px}
.orow.open .olist-sub{display:block}
.sub{display:grid;grid-template-columns:minmax(0,1fr) 150px 140px;gap:20px;align-items:center;padding:8px 0;font-size:14.5px}
.sub a{text-decoration:none;font-weight:600}
.sub a:hover{text-decoration:underline}
.sub .p{text-align:right;font-weight:700}
.sub .s{color:var(--muted);font-size:13.5px}
.more-row{display:flex;justify-content:center;margin-top:18px}
.empty{padding:40px 20px;text-align:center;border:1.5px dashed var(--line);border-radius:18px;color:var(--muted)}
.empty b{display:block;color:var(--ink);font-size:18px;margin-bottom:6px}
.tnote{font-size:13px;color:var(--muted);margin:16px 4px 0;line-height:1.5;max-width:90ch}

/* ---------- cateringi ---------- */
.local{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:28px;align-items:center;background:var(--peach-2);border-radius:24px;padding:26px 28px;margin-bottom:34px;position:relative;overflow:hidden}
.local h3{font-size:24px;letter-spacing:-.02em;line-height:1.15}
.local p{color:var(--ink-2);margin-top:8px;line-height:1.5;font-size:15px}
.local .lcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.bctl{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-bottom:18px}
.bsearch{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:0 12px;height:42px;background:#fff;min-width:220px}
.bsearch svg{width:17px;height:17px;color:var(--muted);flex:none}
.bsearch input{border:0;outline:0;background:transparent;width:100%;font-size:15px}
.bfilters{display:flex;gap:8px;flex-wrap:wrap}
.bfilters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.bfilters button small{color:var(--muted);margin-left:2px}
.bfilters button[aria-pressed=true] small{color:rgba(255,255,255,.7)}
.bsort{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;color:var(--muted)}
.bgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.bcard{display:grid;gap:12px;align-content:start;border:1px solid var(--line);border-radius:18px;padding:18px;text-decoration:none;background:#fff;transition:box-shadow .15s,border-color .15s}
.bcard:hover{box-shadow:var(--shadow-s);border-color:#D9CCE6}
.bcard .top{display:flex;align-items:center;gap:12px;min-width:0}
.bcard h3{font-size:17px;letter-spacing:-.01em;line-height:1.2;overflow-wrap:anywhere}
.bcard .top small{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.bcard .p{font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.1}
.bcard .p small{font-size:13px;color:var(--muted);font-weight:500;letter-spacing:0}
.bcard .pw{font-size:13px;color:var(--muted);margin-top:3px;line-height:1.35}
.bcard .meta{display:flex;flex-wrap:wrap;gap:6px}
.bcard .meta .tag{font-size:12px}
.bcard .facts2{font-size:13.5px;color:var(--ink-2);display:flex;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:10px}
.bcard .facts2 span::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--violet);margin-right:6px;vertical-align:2px}
.local .bcard{background:#fff;border-color:transparent}
.also{font-size:14.5px;color:var(--ink-2);margin-top:22px;line-height:1.6}
.also a{font-weight:600;text-underline-offset:3px}

/* ---------- rodzaje diet ---------- */
.dmenu{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:28px 56px;align-items:start}
.dcols{display:grid;grid-template-columns:1fr 1fr;column-gap:48px}
.ditem{display:grid;grid-template-columns:auto minmax(24px,1fr) auto;column-gap:12px;align-items:end;width:100%;background:none;border:0;border-bottom:1px solid var(--line);padding:15px 2px 14px;text-align:left;cursor:pointer}
.ditem .dn{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:650;letter-spacing:-.01em;line-height:1.2}
.ditem .sw{width:12px;height:12px;border-radius:4px;flex:none;background:#CDB9F5}
.ditem .lead{border-bottom:2px dotted #D9CCE6;margin-bottom:6px}
.ditem .dp{font-size:18px;font-weight:700;letter-spacing:-.02em;white-space:nowrap}
.ditem .dp small{font-size:13px;font-weight:500;color:var(--muted);letter-spacing:0;margin-right:4px}
.ditem .dm{grid-column:1/-1;font-size:13.5px;color:var(--muted);margin:4px 0 0 22px}
.ditem:hover .dn span{text-decoration:underline;text-decoration-color:var(--apricot);text-decoration-thickness:2px;text-underline-offset:4px}
.ditem:hover .dp{color:var(--apricot-d)}
.dspecial{background:var(--mist);border-radius:22px;padding:22px 24px 18px}
.dspecial h3{font-size:19px;letter-spacing:-.01em}
.dspecial .ditem{border-bottom-color:#E6DDF0}
.dspecial .ditem:last-child{border-bottom:0}
.mednote{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.45}

/* ---------- ceny w mieście ---------- */
.market{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:36px;align-items:start}
.mtext p{font-size:17px;line-height:1.65;color:var(--ink-2)}
.mtext p + p{margin-top:16px}
.mtext b{color:var(--ink)}
.mcards{display:grid;gap:14px}
.hcard{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-s);padding:22px 24px 18px}
.hcard .k{font-size:13.5px;font-weight:600;color:var(--muted)}
.hcard .big{display:flex;align-items:baseline;gap:8px;margin-top:6px}
.hcard .big b{font-size:34px;letter-spacing:-.03em;line-height:1}
.hcard .big span{color:var(--muted);font-size:14.5px}
.hist{display:flex;align-items:end;gap:3px;height:120px;margin-top:18px}
.hist i{flex:1;border-radius:4px 4px 1px 1px;background:#E6DDF6;min-height:3px;position:relative}
.hist i.m{background:var(--apricot)}
.hist i:hover{background:var(--violet)}
.hist-axis{display:flex;justify-content:space-between;font-size:12.5px;color:var(--muted);margin-top:6px}
.hist-note{font-size:12.5px;color:var(--muted);margin-top:8px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.mini{background:var(--mist);border-radius:18px;padding:16px 18px}
.mini:nth-child(2){background:var(--peach-2)}
.mini .k{font-size:13px;font-weight:600;color:var(--muted)}
.bars{display:grid;gap:9px;margin-top:12px}
.bar{display:grid;grid-template-columns:86px minmax(0,1fr) 56px;gap:10px;align-items:center;font-size:13.5px}
.bar span{white-space:nowrap}
.bar i{display:block;height:10px;border-radius:99px;background:#CDB9F5}
.mini:nth-child(2) .bar i{background:#FFC29E}
.bar b{text-align:right;font-variant-numeric:tabular-nums}

/* ---------- pytania, okolice ---------- */
.faq{display:grid;gap:10px;max-width:860px}
.faq details{border:1px solid var(--line);border-radius:16px;background:#fff}
.faq summary{list-style:none;cursor:pointer;padding:18px 22px;font-weight:650;font-size:17px;display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:24px;font-weight:400;color:var(--muted);line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 22px 20px;color:var(--ink-2);line-height:1.6}
.faq details p a{font-weight:600;text-underline-offset:3px}
.near{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ncity{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid var(--line);border-radius:16px;padding:14px 16px;text-decoration:none;background:#fff;transition:border-color .15s}
.ncity:hover{border-color:var(--ink)}
.ncity b{font-size:16.5px;display:block}
.ncity small{font-size:13px;color:var(--muted)}
.ncity .km{font-size:13px;font-weight:700;color:var(--violet);background:#F1E8FF;border-radius:999px;padding:3px 9px;white-space:nowrap}

.source{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:28px;align-items:center;background:var(--mist);border-radius:24px;padding:24px 32px;margin:80px 0 0}
.source img{width:150px;margin:-50px 0 -30px}
.source h3{font-size:21px;letter-spacing:-.02em}
.source p{color:var(--ink-2);margin-top:8px;line-height:1.55;font-size:15px}
footer.foot{margin-top:72px;border-top:1px solid var(--line);padding:28px 0 48px;font-size:14px;color:var(--muted)}
footer.foot .container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

/* ---------- mniejsze ekrany ---------- */
@media (max-width:1100px){
  .bgrid,.near{grid-template-columns:repeat(3,minmax(0,1fr))}
  .orow{grid-template-columns:30px 72px minmax(0,1fr) 130px 120px auto;gap:6px 14px}
  .orow .logo{width:72px;height:44px}
  .sub{grid-template-columns:minmax(0,1fr) 130px 120px;gap:14px}
}
@media (max-width:980px){
  .nav .container{position:static;gap:10px}
  .nav-toggle{display:grid}
  .nav-links{display:none}
  .nav.open .nav-links{display:block;position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;background:#fff;border-block:1px solid var(--line);box-shadow:var(--shadow);padding:4px 24px 20px}
  .nav-links > a,.nav-item{border-bottom:1px solid var(--line)}
  .nav-links > a{display:block;padding:15px 0;font-size:18px;font-weight:650;opacity:1}
  .nav-item{flex-wrap:wrap;gap:0}
  .nav-item > a{flex:1;padding:15px 0;font-size:18px;font-weight:650;opacity:1}
  .nav-sub{width:44px;height:44px;margin-right:-10px}
  .nav-sub svg{width:18px;height:18px}
  .nav-panel{position:static;width:100%;display:none;border:0;border-radius:0;box-shadow:none;overflow:visible;visibility:visible;opacity:1;transform:none;transition:none}
  .nav-item.open .nav-panel{display:block}
  .np-body{grid-template-columns:minmax(0,1fr);gap:16px;padding:2px 0 14px}
  .np-h{display:none}
  .np-list{grid-template-columns:minmax(0,1fr)}
  .np-cities{grid-template-columns:repeat(2,minmax(0,1fr))}
  .np-list a{padding:11px 0}
  .np-list li:last-child a{border-bottom:0}
  .np-feature{display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:14px;padding:14px 16px}
  .np-feature img{width:64px;height:64px;margin:0;grid-row:span 3}
  .np-feature b{font-size:18px}
  .np-feature em{padding-top:2px}
  .np-brands{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;margin-top:0}
  .np-brands .logo{width:56px;height:36px}
  .np-all{border:0;border-radius:12px;padding:13px 16px;margin-bottom:16px}
  .hA .container{grid-template-columns:minmax(0,1fr)}
  .poster{max-width:620px}
  .market{grid-template-columns:minmax(0,1fr)}
  .local{grid-template-columns:minmax(0,1fr)}
  .bgrid,.near{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dmenu{grid-template-columns:minmax(0,1fr)}
  .orow{grid-template-columns:72px minmax(0,1fr) auto;grid-template-areas:"logo who price" "logo spec price" "x others act";gap:4px 14px}
  .orow .pos{display:none}
  .orow .logo{grid-area:logo;align-self:start}
  .who{grid-area:who}
  .spec{grid-area:spec;margin-top:6px}
  .price{grid-area:price;align-self:start}
  .orow > .btn{grid-area:act;justify-self:end;margin-top:8px}
  .others{grid-area:others;grid-column:auto;margin-top:8px}
  .olist-sub{grid-column:1/-1}
  .secnav .city{display:none}
}
@media (max-width:620px){
  .container{width:calc(100% - 32px)}
  .nav .container{height:64px}
  .nav.open .nav-links{padding-inline:16px}
  .wordmark{font-size:24px}
  section.block{padding-top:60px}
  .hA{padding-bottom:48px}
  .hA .acts .btn{width:100%}
  .quick{flex-wrap:nowrap;overflow-x:auto;margin-inline:-16px;padding-inline:16px;scrollbar-width:none;margin-top:24px}
  .quick::-webkit-scrollbar{display:none}
  .quick > *{flex:none}
  .poster{padding:34px 0 10px}
  .poster svg.city{max-height:300px}
  .tagx{padding:7px 12px 7px 22px}
  .tagx b{font-size:20px}
  .tagx span,.tagx small{font-size:11.5px}
  .tagx.t1{left:0;top:0}
  .tagx.t2{right:0;top:30%}
  .tagx.t3{left:4%;bottom:24%}
  .poster .cap{justify-content:flex-start;padding:0 96px 0 0;margin-top:22px;flex-wrap:wrap;gap:2px 12px}
  .poster .mascot{width:92px;bottom:-14px}
  .fbar{padding:14px 14px;border-radius:18px;margin-inline:-4px}
  .frow{gap:12px}
  .fgrp{width:100%;justify-content:space-between}
  .seg{overflow-x:auto;scrollbar-width:none;max-width:100%}
  .seg::-webkit-scrollbar{display:none}
  .seg button{padding:7px 10px}
  .fmore{gap:12px 18px}
  .budget input{width:120px}
  .reset{margin-left:0}
  .orow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who price" "spec spec" "others act";padding:14px 14px}
  .orow .logo{display:none}
  .spec{margin-top:4px;font-size:13.5px;color:var(--muted)}
  .spec small{display:inline;font-size:13.5px}
  .spec small::before{content:" · "}
  .others > button{font-size:13.5px}
  .who .on{font-size:17px}
  .price b{font-size:22px}
  .sub{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}
  .sub .s{grid-column:1;grid-row:2}
  .sub .p{grid-row:1/3;grid-column:2}
  .local{padding:22px 18px}
  .local .lcards{grid-template-columns:minmax(0,1fr)}
  .bsort{margin-left:0}
  .bsearch{min-width:0;width:100%}
  .bgrid,.near{grid-template-columns:minmax(0,1fr)}
  .dcols{grid-template-columns:minmax(0,1fr)}
  .ditem .dn,.ditem .dp{font-size:16.5px}
  .dspecial{padding:18px 16px 12px}
  .bgrid{gap:8px}
  .bgrid .bcard{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:12px 14px;border-radius:14px}
  .bgrid .bcard .top .logo{width:60px;height:38px}
  .bgrid .bcard .meta,.bgrid .bcard .facts2,.bgrid .bcard .pw{display:none}
  .bgrid .bcard .p{font-size:17px;text-align:right;white-space:nowrap}
  .bgrid .bcard h3{font-size:15.5px}
  .near{grid-template-columns:repeat(2,minmax(0,1fr))}
  .split{grid-template-columns:minmax(0,1fr)}
  .hcard{padding:18px 16px 14px}
  .source{grid-template-columns:minmax(0,1fr);padding:22px;text-align:left}
  .source img{width:110px;margin:-60px 0 0}
}

/* ---------- motyw: elementy spoza makiety ---------- */
.skip{position:absolute;left:-9999px;top:8px;z-index:50;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px}
.skip:focus{left:12px}
.nav-links a[aria-current]{opacity:1}
.np-list .sw{width:12px;height:12px;border-radius:4px;flex:none;background:#CDB9F5}
.sw.sw-wegetarianska{background:#B9E39A}.sw.sw-weganska{background:#8FD169}.sw.sw-wege-z-ryba{background:#A9DDE2}.sw.sw-sportowa{background:#FFB38A}
.sw.sw-niski-ig,.sw.sw-low-carb{background:#F6A9C6}.sw.sw-keto{background:#F47BA8}.sw.sw-bez-glutenu,.sw.sw-bez-laktozy{background:#B5CDF5}.sw.sw-kuchnia-domowa{background:#FFD86B}
a.ditem{text-decoration:none;color:inherit}
.dmenu.solo{grid-template-columns:minmax(0,1fr)}
.bcard.hid{display:none}
.poster .blob{aspect-ratio:16/10;border-radius:44% 56% 52% 48%/55% 45% 55% 45%;background:var(--peach)}
.olist.loading{opacity:.55;transition:opacity .15s}
.foot nav a{text-decoration:none}
.foot nav a:hover{text-decoration:underline}
.page-plain h1{font-size:clamp(34px,4vw,48px);letter-spacing:-.03em;line-height:1.08;margin-bottom:18px}
.narrow{max-width:780px}
.prose{font-size:17px;line-height:1.65;color:var(--ink-2)}
.prose p{margin:0 0 1em}

/* ---------- Strona marki (makieta docs/makiety/strona-marki.html) ---------- */
/* Nagłówek marki „Na talerzu” (docs/makiety/hero-marki-warianty.html, wariant C): --bc = kolor marki. */
.bhead{--bc-t:color-mix(in srgb,var(--bc) 13%,#fff);--bc-d:color-mix(in srgb,var(--bc) 72%,#000);--bc-m:color-mix(in srgb,var(--bc) 32%,#fff);--k:1;padding:22px 0 64px;overflow:hidden}
.bhead .container{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:40px;align-items:center}
.bhead .kind{font-weight:600;color:var(--ink-2);margin:26px 0 8px;font-size:16px}
.bhead .kind a{color:inherit;text-underline-offset:3px}
.bhead h1{font-size:clamp(42px,5.4vw,72px);line-height:1;letter-spacing:-.045em}
.blede{font-size:clamp(17px,1.5vw,19px);line-height:1.55;color:var(--ink-2);margin-top:20px;max-width:36em}
.blede b{color:var(--ink);font-weight:600}
.bintro{font-size:16px;line-height:1.6;color:var(--ink-2);margin-top:14px;max-width:38em}
.bintro p{margin:0 0 .6em}
.bintro p:last-child{margin-bottom:0}
.btags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.btags a{text-decoration:none}
.btags .more{border-style:dashed;color:var(--muted)}
.bstale{margin-top:18px;background:#FFF1D6;color:#6B4300;border-radius:12px;padding:10px 14px;font-size:15px;max-width:34em}
.bhead .acts{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap;margin-top:28px}
.bhead .acts .muted{font-size:14.5px}
.bhead .acts .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ok);margin-right:8px;box-shadow:0 0 0 3px rgba(34,160,107,.15)}
.bhead .acts .dot.old{background:#E0A100;box-shadow:0 0 0 3px rgba(224,161,0,.18)}
.bvis{position:relative}
.stage{position:relative;height:470px}
.stage .disc{position:absolute;inset:-20px -150px -40px 10px;border-radius:50%;background:var(--bc-t)}
.stage .plate{position:absolute;left:50%;top:50%;width:400px;aspect-ratio:1;translate:-50% -52%;border-radius:50%;background:#fff;
  box-shadow:0 40px 60px -34px rgba(42,23,64,.45),0 0 0 1px rgba(42,23,64,.05),inset 0 -6px 0 rgba(42,23,64,.04)}
.stage .plate::before{content:"";position:absolute;inset:14px;border-radius:50%;border:2px solid var(--bc-m)}
.stage .plate .well{position:absolute;inset:56px;border-radius:50%;display:grid;place-items:center;background:#fff;
  box-shadow:inset 0 3px 8px rgba(42,23,64,.13),0 1px 0 #fff,0 0 0 1px rgba(42,23,64,.06)}
.stage .plate .well img{width:calc(var(--lw) * var(--k));height:calc(var(--lh) * var(--k));object-fit:contain}
.stage .plate .well.name span{font-weight:700;font-size:30px;letter-spacing:-.03em;line-height:1.05;text-align:center;padding:0 24px}
.stage .fork,.stage .knife{position:absolute;top:50%;height:300px;translate:0 -54%;color:var(--bc-d);opacity:.22}
.stage .fork{left:calc(50% - 270px)}
.stage .knife{left:calc(50% + 236px)}
.ptag{position:absolute;left:-1%;top:3%;display:grid;gap:3px;background:var(--apricot);padding:11px 20px 12px 32px;border-radius:6px 14px 14px 6px;box-shadow:var(--shadow);clip-path:polygon(16px 0,100% 0,100% 100%,16px 100%,0 50%);transform:rotate(-5deg);z-index:2;text-decoration:none;max-width:72%}
.ptag::before{content:"";position:absolute;left:13px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:rgba(255,255,255,.65)}
.ptag:hover{background:var(--apricot-d)}
.ptag small{font-size:12.5px;font-weight:700;color:rgba(42,23,64,.75);text-transform:uppercase;letter-spacing:.04em}
.ptag b{font-size:32px;letter-spacing:-.035em;line-height:1}
.ptag span{font-size:13.5px;color:rgba(42,23,64,.85);font-weight:600}
.ptag em{font-style:normal;font-size:12.5px;color:rgba(42,23,64,.7)}
.rosette{position:absolute;right:2%;bottom:8%;width:128px;height:128px;display:grid;place-items:center;text-align:center;padding:16px;transform:rotate(10deg);z-index:2;filter:drop-shadow(0 8px 12px rgba(42,23,64,.2));
  background:radial-gradient(circle,var(--ros) 56px,transparent 57px),repeating-conic-gradient(var(--ros) 0 7.5deg,transparent 7.5deg 15deg);--ros:var(--butter)}
.rosette div{font-size:13px;font-weight:600;line-height:1.15;color:var(--ink)}
.rosette b{display:block;font-size:30px;letter-spacing:-.03em;line-height:1.05}
.rosette[data-tip]::after{transform:translateX(-50%) rotate(-10deg)}
.stage .mascot{position:absolute;width:132px;left:2%;bottom:-4px;transform:rotate(-6deg);filter:drop-shadow(0 12px 14px rgba(42,23,64,.2));z-index:3;pointer-events:none}
.bvis .cap{position:relative;z-index:1;margin:14px 0 0;font-size:14px;line-height:1.6;color:var(--muted);text-align:center}
.bvis .cap span{white-space:nowrap}
.bvis .cap i{font-style:normal;margin:0 4px}
.bvis .cap b{color:var(--ink)}
.secnav .mini-cta{margin-left:auto;display:flex;align-items:center;gap:12px;opacity:0;transform:translateY(4px);transition:.2s;pointer-events:none}
.secnav.stuck .mini-cta{opacity:1;transform:none;pointer-events:auto}
.mini-cta b{font-size:15px;white-space:nowrap}
.mini-cta .btn{min-height:40px;padding:0 14px;font-size:14.5px;border-radius:11px}
.filters{display:flex;gap:8px;flex-wrap:wrap}
.filters button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-weight:600;font-size:14.5px;cursor:pointer}
.filters button small{color:var(--muted);font-weight:500;margin-left:4px}
.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.filters button[aria-pressed=true] small{color:rgba(255,255,255,.7)}
.offers{display:grid;grid-template-columns:380px minmax(0,1fr);gap:28px;align-items:start}
.ogroup{font-size:12.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:14px 4px 2px}
.ogroup:first-child,.olist-note + .ogroup{margin-top:0}
.oitem{text-decoration:none;color:inherit;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:center;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.oitem:hover{border-color:#D9CCE6}
.oitem[aria-current=true]{border-color:var(--apricot);box-shadow:0 0 0 1px var(--apricot),var(--shadow-s);background:var(--peach-2)}
.oitem .nm{font-weight:650;font-size:16.5px;line-height:1.25}
.oitem .lb{font-size:13.5px;color:var(--muted);grid-column:1}
.oitem .pr{grid-column:2;grid-row:1/3;text-align:right}
.oitem .pr b{display:block;font-size:19px;letter-spacing:-.02em}
.oitem .pr small{font-size:12.5px;color:var(--muted);white-space:nowrap}
.olist-note{font-size:13.5px;color:var(--muted);margin:0 4px 6px}
.oitem .two{white-space:nowrap;font-size:12px;font-weight:600;color:#9A5B00;background:#FFF1D6;border-radius:6px;padding:1px 6px;margin-left:6px;vertical-align:1px}
.odetail{position:sticky;top:84px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden}
.od-head{padding:24px 26px 6px}
.od-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.od-title h3{font-size:30px;letter-spacing:-.03em;line-height:1.05}
.od-title .anchor{font-size:13.5px;color:var(--muted);text-decoration:none;border:1px solid var(--line);border-radius:8px;padding:3px 8px}
.od-title .anchor:hover{color:var(--ink)}
.od-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.od-desc{color:var(--ink-2);margin-top:12px;font-size:15.5px;line-height:1.5}
.cmp{display:flex;align-items:center;gap:14px;margin:18px 26px 0;padding:13px 16px;border-radius:14px;background:var(--mist);font-size:14.5px;line-height:1.4}
.cmp .ico{width:34px;height:34px;border-radius:10px;background:#fff;display:grid;place-items:center;flex:none}
.cmp .ico svg{width:18px;height:18px}
.cmp.down .ico{color:var(--ok)}
.cmp.up .ico{color:#C2410C}
.cmp b{font-weight:700}
.vtabs{display:flex;gap:8px;overflow-x:auto;padding:22px 26px 4px;scrollbar-width:none}
.vtabs::-webkit-scrollbar{display:none}
.vtab{display:grid;gap:6px;justify-items:start;min-width:118px;flex:none;border:1px solid var(--line);background:#fff;border-radius:14px;padding:10px 12px;cursor:pointer;text-align:left}
.vtab b{font-size:14.5px;font-weight:650;white-space:nowrap}
.vtab small{font-size:12.5px;color:var(--muted);white-space:nowrap}
.vtab[aria-selected=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:#FDFBFF}
.mealline{padding:10px 26px 0;font-size:14px;color:var(--muted)}
.ptable{width:100%;border-collapse:collapse;margin-top:14px;font-variant-numeric:tabular-nums}
.ptable th{font-size:13px;color:var(--muted);font-weight:600;text-align:right;padding:10px 26px;border-bottom:1px solid var(--line);white-space:nowrap}
.ptable th:first-child,.ptable td:first-child{text-align:left}
.ptable td{padding:12px 26px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap;font-size:15.5px}
.ptable tbody tr{cursor:pointer;transition:background .12s}
.ptable tbody tr:hover td{background:#FCFAFE}
.ptable td.main{font-weight:700;font-size:17px}
.ptable td.sec{color:var(--muted)}
.ptable-wrap{overflow-x:auto}
.ptable tr.sel td{background:var(--peach-2)}
.ptable tr.sel td:first-child{font-weight:700}
.calc{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;padding:16px 26px;background:#FDFBFF;border-bottom:1px solid var(--line);font-size:14.5px}
.calc b{font-size:16px}
.calc .lbl{color:var(--muted);font-weight:600}
/* Koszt zamówienia na 5, 10, 20, 30 dni (dtt_len_cells, brand.js) */
.calc .lens{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%}
.calc .ln{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}
.calc .ln i{font-style:normal;font-size:12.5px;font-weight:600;color:var(--muted)}
.calc .ln small{font-size:12.5px;color:var(--muted)}
.calc .ln em{font-style:normal;font-weight:700;color:#6A4FD0;margin-left:6px}
.calc .ln.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.octl{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.od-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 26px 22px}
.od-foot p{font-size:13px;color:var(--muted);max-width:44ch;line-height:1.45}
#map use.woj{fill:#ECE6F4;stroke:#fff;stroke-width:1.6;stroke-linejoin:round}
#map use.wojb{fill:none;stroke:#fff;stroke-width:2.4;stroke-linejoin:round}
img#map{max-width:100%;height:auto}
#map .pt .dot{fill:var(--apricot);stroke:#fff}
#map .pt .hq{fill:var(--ink);stroke:#fff}
.warn{background:#FFF1D6;color:#6B4300;border-radius:14px;padding:12px 16px;margin:-8px 0 22px;font-size:15px;line-height:1.45}
.odetails{align-self:stretch;min-width:0}
.js .odetail:not(.on),.js .vpanel:not(.on),.js .vh{display:none}
.js .oitem.hid,.js .ogroup.hid{display:none}
html:not(.js) .jsonly,html:not(.js) .vtabs{display:none}
html:not(.js) .odetail{position:static}
html:not(.js) .odetail + .odetail{margin-top:20px}
.odetail.tall{position:static}
.vh{padding:18px 26px 0;font-size:16.5px;letter-spacing:-.01em}
.calc [hidden]{display:none}
.deliv{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:start}
.mapcard{position:relative;background:var(--mist);border-radius:24px;padding:20px 20px 14px}
#map{display:block;width:100%;height:auto;overflow:visible}
#map .woj path{fill:#ECE6F4;stroke:#fff;stroke-width:1.6;stroke-linejoin:round;transition:fill .2s}
#map .woj path.on{fill:#FFE4D3}
#map .halo circle{fill:var(--apricot)}
#map .pt{cursor:pointer}
#map .pt circle{transition:r .12s}
#map .pt:hover .dot{fill:#E85F22}
#map .lbl{font:600 12px "Familjen Grotesk",sans-serif;fill:var(--ink);paint-order:stroke;stroke:#F8F4FC;stroke-width:4px;stroke-linejoin:round;pointer-events:none}
.legend{display:flex;gap:6px 18px;flex-wrap:wrap;font-size:13px;color:var(--muted);padding:8px 4px 0}
.legend i{display:inline-block;vertical-align:-1px;margin-right:6px;border-radius:50%}
.legend .l1{width:10px;height:10px;background:var(--apricot);box-shadow:0 0 0 2px #fff}
.legend .l2{width:8px;height:8px;background:#fff;border:1.5px solid #BDAECF}
.legend .l4{width:14px;height:10px;border-radius:3px;background:#FFE4D3}
.legend .l5{width:9px;height:9px;background:#fff;border:2px solid var(--ink)}
.legend .l6{width:14px;height:14px;background:rgba(255,149,100,.25)}
.legend .cap{flex-basis:100%;font-size:12.5px}
.dcard .dh{font-size:clamp(28px,2.6vw,36px);font-weight:700;letter-spacing:-.03em;line-height:1.05;margin-top:14px}
.clabel{font-size:14px;font-weight:600;color:var(--muted);margin-bottom:-8px}
.legend .l3{width:12px;height:12px;background:var(--ink);border:3px solid #fff;box-shadow:0 0 0 1px var(--ink)}
.maptip{position:absolute;left:0;top:0;pointer-events:none;background:var(--ink);color:#fff;font-size:13px;font-weight:600;padding:6px 10px;border-radius:8px;transform:translate(-50%,calc(-100% - 12px));opacity:0;transition:opacity .12s;white-space:nowrap;z-index:3}
.maptip small{font-weight:500;opacity:.75;margin-left:6px}
.maptip.on{opacity:1}
#map .pow path{fill:transparent;stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke}
#map .pow path.on{fill:#FFD8C1}
#map .woj path{vector-effect:non-scaling-stroke}
#map .plbl{font-family:"Familjen Grotesk",sans-serif;font-weight:600;fill:#9A8AAE;paint-order:stroke;stroke:#F8F4FC;stroke-linejoin:round;pointer-events:none}
#map .plbl.on{fill:#B5521F}
.mapwrap{position:relative;border-radius:16px;overflow:hidden}
.inset{position:absolute;right:10px;top:10px;width:96px;height:auto;background:rgba(255,255,255,.85);border-radius:10px;padding:5px;box-shadow:0 4px 12px -6px rgba(42,23,64,.35)}
.inset path{fill:#E4DAF0;stroke:#fff;stroke-width:2}
.inset rect{fill:rgba(255,149,100,.25);stroke:var(--apricot);stroke-width:6}
.maplabel{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);background:#fff;border-radius:999px;padding:10px 18px;font-weight:700;font-size:17px;box-shadow:var(--shadow-s);white-space:nowrap;pointer-events:none}
.maplabel i{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--apricot);margin-right:8px;vertical-align:0}
.dside{display:grid;gap:20px;align-content:start}
.dcard{background:var(--peach-2);border-radius:22px;padding:24px 26px}
.scope{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;padding:5px 11px;border-radius:999px;background:#fff;color:var(--ink)}
.scope i{width:8px;height:8px;border-radius:50%;background:var(--apricot)}
.dcard .big{font-size:56px;font-weight:700;letter-spacing:-.04em;line-height:1;margin-top:14px}
.dcard .big small{font-size:21px;color:var(--muted);font-weight:600;letter-spacing:-.01em}
.dcard p{margin-top:10px;color:var(--ink-2);line-height:1.5}
.dcard .no{margin-top:16px;padding-top:14px;border-top:1px dashed #F2CDB5;font-size:15px}
.dcard .no b{display:block;font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.cities{display:flex;flex-wrap:wrap;gap:8px}
.cities-all summary{list-style:none}
.cities-all summary::-webkit-details-marker{display:none}
.cities-all .vgroups{columns:2 200px;column-gap:28px;margin-top:16px}
.vgroup{break-inside:avoid;margin-bottom:14px}
.vgroup b{display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px}
.vgroup a{display:inline-block;margin:0 10px 4px 0;font-size:15px;text-underline-offset:3px}
.more-btn{justify-self:start;background:none;border:0;padding:0;font-weight:700;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.addr{font-size:14px;color:var(--muted);display:flex;gap:8px;align-items:start;line-height:1.45}
.addr svg{width:18px;height:18px;flex:none;margin-top:1px}
.perks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.perk{border:1px solid var(--line);border-radius:18px;padding:20px;background:#fff}
.perk .ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;margin-bottom:14px}
.perk .ic svg{width:22px;height:22px}
.perk h3{font-size:17px;letter-spacing:-.01em}
.perk .v{font-size:26px;font-weight:700;letter-spacing:-.03em;margin-top:8px}
.perk p{font-size:14px;color:var(--muted);margin-top:6px;line-height:1.45}
.similar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.scard{display:grid;gap:14px;border:1px solid var(--line);border-radius:18px;padding:18px;text-decoration:none;background:#fff;transition:box-shadow .15s,border-color .15s}
.scard:hover{box-shadow:var(--shadow-s);border-color:#D9CCE6}
.scard .top{display:flex;align-items:center;gap:12px}
.scard h3{font-size:17px;letter-spacing:-.01em}
.scard .top small{font-size:13px;color:var(--muted)}
.scard .p{font-size:22px;font-weight:700;letter-spacing:-.02em}
.scard .p small{font-size:13px;color:var(--muted);font-weight:500;letter-spacing:0}
.scard .meta{font-size:13.5px;color:var(--muted)}
.source .acts{display:grid;gap:10px;justify-items:stretch}
.mbar{display:none}
@media (max-width:1100px){
  .perks,.similar{grid-template-columns:repeat(2,minmax(0,1fr))}
  .offers{grid-template-columns:330px minmax(0,1fr)}
}
@media (max-width:980px){
  .bhead .container{grid-template-columns:minmax(0,1fr);gap:28px}
  .bvis{max-width:560px;width:100%;margin-inline:auto}
  .offers{grid-template-columns:minmax(0,1fr)}
  .odetail{position:static;margin:4px 0 6px}
  .deliv{grid-template-columns:minmax(0,1fr)}
  .secnav .mini-cta{display:none}
}
@media (max-width:620px){
  .bhead{padding-bottom:44px}
  .bhead .kind{margin-top:18px}
  .blede{margin-top:16px}
  .bhead{--k:.7}
  .stage{height:350px}
  .stage .disc{inset:-10px -60px -20px 10px}
  .stage .plate{width:280px}
  .stage .plate::before{inset:10px}
  .stage .plate .well{inset:38px}
  .stage .plate .well.name span{font-size:21px;padding:0 14px}
  .stage .fork,.stage .knife{height:210px}
  .stage .fork{left:calc(50% - 184px)}
  .stage .knife{left:calc(50% + 160px)}
  .ptag{left:0;top:0;padding:8px 14px 9px 26px;max-width:88%}
  .ptag b{font-size:25px}
  .ptag em{display:none}
  .ptag span{font-size:12.5px;max-width:62vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .rosette{width:96px;height:96px;right:0;bottom:4%;padding:10px;background:radial-gradient(circle,var(--ros) 42px,transparent 43px),repeating-conic-gradient(var(--ros) 0 7.5deg,transparent 7.5deg 15deg)}
  .rosette b{font-size:21px}
  .rosette div{font-size:10.5px}
  .stage .mascot{width:88px;bottom:-6px}
  .bvis .cap{margin-top:12px;font-size:13.5px}
  .od-head{padding:20px 18px 4px}
  .od-title h3{font-size:25px}
  .cmp{margin:16px 18px 0}
  .vtabs{padding:18px 18px 4px}
  .mealline{padding:10px 18px 0}
  .ptable th,.ptable td{padding-inline:10px}
  .ptable td{font-size:14.5px}
  .ptable td.main{font-size:15.5px}
  .vh{padding-inline:18px}
  .ptable th:first-child,.ptable td:first-child{padding-left:18px}
  .calc,.od-foot{padding-inline:18px}
  .calc .lens{grid-template-columns:repeat(2,minmax(0,1fr))}
  .octl{align-items:stretch;width:100%}
  .od-foot .btn{width:100%}
  .perks,.similar{grid-template-columns:minmax(0,1fr)}
  .mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);box-shadow:0 -10px 24px -18px rgba(42,23,64,.5);transform:translateY(110%);transition:transform .25s}
  .mbar.show{transform:none}
  .mbar small{display:block;font-size:12px;color:var(--muted)}
  .mbar b{font-size:20px;letter-spacing:-.02em}
  .mbar .btn{min-height:46px;padding:0 16px;font-size:15px}
  footer.foot{padding-bottom:96px}
}

/* ---------- Rodzaje diet, „z wyborem menu”, katalog, lista marek ---------- */
.dayphoto{margin:0;padding:24px 0 8px}
.dayphoto img{display:block;width:100%;max-width:560px;height:auto;margin:0 auto;filter:drop-shadow(0 22px 24px rgba(42,23,64,.18)) drop-shadow(0 3px 4px rgba(42,23,64,.1))}
.hL .mednote{max-width:34em}
.ftop{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.fbar select{border:1px solid var(--line);border-radius:11px;background:#fff;padding:8px 34px 8px 12px;font-weight:600;font-size:14.5px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%232A1740' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px;cursor:pointer;max-width:240px}
.fbar select:hover{border-color:#D9CCE6}
.about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px 56px;align-items:start}
.atext h2{font-size:clamp(28px,3vw,38px);letter-spacing:-.03em;line-height:1.08}
.atext p{color:var(--ink-2);line-height:1.6;margin-top:14px;max-width:38em}
.abrands{background:var(--mist);border-radius:24px;padding:24px 26px}
.abrands h3{font-size:19px;letter-spacing:-.01em}
.abrands h3 small{font-size:14px;color:var(--muted);font-weight:600;margin-left:4px}
.blist{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;margin-top:10px}
.bitem{display:grid;grid-template-columns:auto minmax(16px,1fr) auto;column-gap:10px;align-items:end;padding:10px 2px 9px;border-bottom:1px solid #E6DDF0;text-decoration:none;color:inherit}
.bitem .bn{font-weight:650;font-size:15px;line-height:1.25}
.bitem .lead{border-bottom:2px dotted #D9CCE6;margin-bottom:5px}
.bitem .bp{font-weight:700;font-size:15px;white-space:nowrap}
.bitem .bp small{font-weight:500;color:var(--muted);margin-right:3px;font-size:12.5px}
.bitem > small{grid-column:1/-1;font-size:12.5px;color:var(--muted);margin-top:1px}
.bitem:hover .bn{text-decoration:underline;text-underline-offset:3px}
.bmore{margin-top:14px}
.bmore summary{list-style:none}
.bmore summary::-webkit-details-marker{display:none}
.abrands .tnote{margin-top:14px}
.related{margin-top:44px}
.related h3{font-size:19px;letter-spacing:-.01em;margin-bottom:12px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
@media (max-width:980px){
  .about{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:620px){
  .blist{grid-template-columns:minmax(0,1fr)}
  .abrands{padding:20px 18px;border-radius:18px}
  .fbar select{max-width:none;width:100%}
  .ftop .fgrp{width:100%}
}
.hC .container > div:only-child{grid-column:1/-1;max-width:760px}
.poster.pmap .pl{display:block;width:88%;height:auto;margin:0 auto;filter:drop-shadow(4px 6px 0 rgba(42,23,64,.06))}
.dmodel{margin-top:22px;padding-top:6px;border-top:2px solid var(--ink)}
.dmodel .ditem{border-bottom:0}
.cityidx{columns:4 200px;column-gap:32px}
.cityidx .vgroup a{display:block;margin:0 0 6px;text-decoration:none;font-size:15px}
.cityidx .vgroup a:hover{text-decoration:underline;text-underline-offset:3px}
.cityidx .vgroup a small{color:var(--muted);font-size:12.5px;margin-left:2px}
.hS{padding-bottom:8px}
.dlinks{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:26px;font-size:14.5px}
.dlinks span{color:var(--muted)}
.dlinks a{text-underline-offset:3px}

/* ---------- wspólne: strona główna, strony informacyjne, 404 ---------- */
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:var(--muted)}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--apricot);border-radius:2px}
.bubble{position:relative;z-index:1;background:var(--ink);color:#fff;font-weight:600;font-size:16px;line-height:1.35;padding:14px 18px;border-radius:18px 18px 18px 4px;max-width:230px;margin:0 0 18px -40px;transform:rotate(-2deg)}
.bubble::after{content:"";position:absolute;left:0;bottom:-10px;border-style:solid;border-width:10px 14px 0 0;border-color:var(--ink) transparent transparent transparent}
.pmeta{display:flex;align-items:center;gap:10px;font-size:14.5px;color:var(--muted)}
.pmeta .dot{width:9px;height:9px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px rgba(34,160,107,.15);display:inline-block;flex:none}

/* ---------- strona marki: opinie (template-parts/brand/reviews.php) ---------- */
.stars{position:relative;display:inline-flex;line-height:0;vertical-align:middle}
.stars>span{display:flex;gap:2px}
.stars svg{width:18px;height:18px;flex:none}
.stars .off svg{fill:#EAE1F2}
.stars .on{position:absolute;left:0;top:0;overflow:hidden}
.stars .on svg{fill:var(--butter);stroke:#E5A800;stroke-width:1.2;stroke-linejoin:round}
.stars.lg svg{width:24px;height:24px}
.stars.sm svg{width:14px;height:14px}
.rv-msg{border-radius:14px;padding:14px 18px;font-weight:600;font-size:15.5px;line-height:1.45;margin:0 0 24px;max-width:860px}
.rv-msg.ok{background:#E3F5EC;color:#145C3D}
.rv-msg.err{background:#FDE2EC;color:#7A1940}
.sec-head p a{color:var(--ink);font-weight:600;text-decoration-color:var(--apricot);text-decoration-thickness:2px;text-underline-offset:3px}
.rv-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:32px 64px;align-items:start}
.rv-sum{position:sticky;top:84px;background:var(--peach-2);border-radius:26px;padding:26px 26px 24px;display:grid;gap:22px}
.rv-score{display:flex;align-items:center;gap:16px}
.rv-score>b{font-size:64px;line-height:.9;letter-spacing:-.05em;font-weight:700}
.rv-score>div{display:grid;gap:6px}
.rv-score>div>span:last-child{font-size:14.5px;color:var(--ink-2);font-weight:600}
.rv-dist{display:grid;gap:7px}
.rv-dist li{display:grid;grid-template-columns:14px minmax(0,1fr) 28px;align-items:center;gap:10px;font-size:13.5px;font-weight:600;color:var(--ink-2)}
.rv-dist li span:last-child{text-align:right;color:var(--muted);font-weight:500}
.rv-dist i{display:block;height:8px;border-radius:99px;background:#fff;overflow:hidden}
.rv-dist i b{display:block;height:100%;border-radius:99px;background:var(--apricot)}
.rv-asp{margin:0;display:grid;gap:2px;border-top:2px dotted #EBCDB8;padding-top:16px}
.rv-asp div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 0}
.rv-asp dt{font-size:14.5px;font-weight:600}
.rv-asp dd{margin:0;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700}
.rv-sum .btn{width:100%}
.rv-grid.none{grid-template-columns:minmax(0,1fr)}
.rv-grid.none .rv-sum{position:relative;top:0;grid-template-columns:130px minmax(0,1fr) auto;align-items:center;gap:8px 32px;padding:22px 32px}
.rv-grid.none .rv-sum img{grid-row:span 2;width:130px;margin:-34px 0 -24px;transform:rotate(-5deg)}
.rv-grid.none .rv-sum h3{font-size:22px;letter-spacing:-.02em;align-self:end}
.rv-grid.none .rv-sum p{color:var(--ink-2);line-height:1.55;font-size:15.5px;max-width:52ch;grid-column:2;align-self:start}
.rv-grid.none .rv-sum .btn{grid-column:3;grid-row:1 / span 2;width:auto}
.rv-list{margin:0;padding:0;list-style:none}
.rv-list li{padding:24px 0;border-bottom:2px dotted #D9CCE6}
.rv-list li:first-child{padding-top:4px}
.rv-list li:target{background:linear-gradient(90deg,var(--mist),transparent);border-radius:14px}
.js .rv-list li.more{display:none}
.js .rv-list.all li.more{display:block}
.rv-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.rv-top time{font-size:14px;color:var(--muted)}
.rv-who{margin-top:10px;font-size:15px;color:var(--ink-2);line-height:1.45}
.rv-who b{color:var(--ink);font-size:16px}
.rv-body p{margin-top:10px;line-height:1.62;font-size:16px;max-width:68ch;overflow-wrap:anywhere}
.rv-foot{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:14px;font-size:13.5px;color:var(--muted)}
.rv-foot a{color:var(--muted);text-underline-offset:3px}
.rv-foot a:hover{color:var(--ink)}
.rv-more{margin-top:22px}
.rform{margin-top:40px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-s);max-width:960px;scroll-margin-top:84px}
.rform summary{list-style:none;cursor:pointer;padding:22px 28px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-weight:700;font-size:20px;letter-spacing:-.015em}
.rform summary::-webkit-details-marker{display:none}
.rform summary::after{content:"+";font-size:28px;font-weight:400;color:var(--muted);line-height:1}
.rform[open] summary::after{content:"–"}
.rform form{display:grid;gap:24px;padding:4px 28px 30px}
.rform fieldset{border:0;margin:0;padding:0;min-width:0}
.rform legend{font-size:14px;font-weight:600;color:var(--muted);margin-bottom:10px;padding:0}
.rform legend small,.rf-field small{font-weight:500}
.rf-main{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}
.rf-word{font-weight:700;color:var(--ink-2);font-size:16px;min-width:8ch}
.rf-main .rf-err{flex-basis:100%}
.rstars{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:2px}
.rstars input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.rstars label{cursor:pointer;line-height:0;padding:2px;border-radius:8px}
.rstars svg{width:26px;height:26px;fill:#EAE1F2;stroke:#D9CCE6;stroke-width:1;transition:fill .12s,transform .12s}
.rstars.lg svg{width:40px;height:40px}
.rstars .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rstars input:checked ~ label svg{fill:var(--butter);stroke:#E5A800}
.rstars:hover input:checked ~ label svg{fill:#EAE1F2;stroke:#D9CCE6}
.rstars:hover label:hover svg,.rstars:hover label:hover ~ label svg{fill:var(--butter);stroke:#E5A800}
.rstars label:hover svg{transform:scale(1.08)}
.rstars input:focus-visible + label{outline:2.5px solid var(--violet);outline-offset:1px}
.rf-asp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 40px}
.rf-asp legend{grid-column:1 / -1}
.rf-asp div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;border-bottom:2px dotted var(--line)}
.rf-asp div>span{font-size:15.5px;font-weight:600}
.rf-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rf-row.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.rf-field{display:grid;gap:8px;align-content:start}
.rf-field>span{font-size:14px;font-weight:600;color:var(--muted)}
.rf-field input,.rf-field select,.rf-field textarea{font:inherit;width:100%;border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;font-size:16px;background:#fff;color:var(--ink);transition:border-color .15s}
.rf-field textarea{min-height:150px;line-height:1.5;resize:vertical}
.rf-field input:focus,.rf-field select:focus,.rf-field textarea:focus{outline:0;border-color:var(--ink)}
.rform .bad input,.rform .bad textarea{border-color:#D6336C}
.rform .rf-err{color:#B4235A;font-size:13.5px;font-weight:600}
.rf-check{display:flex;align-items:flex-start;gap:12px;cursor:pointer}
.rf-check input{width:20px;height:20px;margin:1px 0 0;flex:none;accent-color:var(--ink)}
.rf-check span{font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.rf-check a{color:var(--ink);font-weight:600;text-underline-offset:3px}
.rf-check.bad span{color:#7A1940}
.rform .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rf-send{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.rf-send small{font-size:13px;color:var(--muted);line-height:1.45;max-width:36em}
@media (max-width:980px){
  .rv-grid{grid-template-columns:minmax(0,1fr)}
  .rv-sum{position:relative;top:0}
  .rv-grid:not(.none) .rv-sum{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 32px}
  .rv-grid:not(.none) .rv-sum .btn{grid-column:1 / -1}
  .rv-asp{border-top:0;padding-top:0}
}
@media (max-width:620px){
  .rv-grid:not(.none) .rv-sum{grid-template-columns:minmax(0,1fr)}
  .rv-asp{border-top:2px dotted #EBCDB8;padding-top:16px}
  .rv-grid.none .rv-sum{grid-template-columns:minmax(0,1fr);padding:22px;text-align:left}
  .rv-grid.none .rv-sum img{grid-row:auto;width:100px;margin:-30px 0 0}
  .rv-grid.none .rv-sum p,.rv-grid.none .rv-sum .btn{grid-column:auto;grid-row:auto}
  .rv-grid.none .rv-sum .btn{width:100%}
  .rform summary{padding:18px 20px;font-size:18px}
  .rform form{padding:4px 20px 24px}
  .rf-asp,.rf-row,.rf-row.two{grid-template-columns:minmax(0,1fr)}
  .rstars.lg svg{width:36px;height:36px}
}
/* Oceny dań z systemu zamówień marki (reviews.php, #oceny-dan): karta dań z kropkowaną linią do wyniku. */
.dr{margin-top:48px;border-top:2px solid var(--ink);padding-top:26px;max-width:1060px}
.dr-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px 28px;align-items:center}
.dr-score{display:grid;justify-items:center;background:var(--mist);border-radius:22px;padding:16px 22px;min-width:150px;text-align:center}
.dr-score b{font-size:44px;line-height:1;letter-spacing:-.04em}
.dr-score span{font-size:13.5px;font-weight:600;color:var(--ink-2);margin-top:6px}
.dr-head h3{font-size:22px;letter-spacing:-.02em}
.dr-head p{color:var(--ink-2);margin-top:8px;line-height:1.55;font-size:15px;max-width:70ch}
.dr-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 48px;margin-top:26px}
.dr-lists h4{font-size:14px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 6px}
.dr-lists li{display:grid;grid-template-columns:minmax(0,auto) minmax(16px,1fr) auto;grid-template-areas:"n l s" "n . c";align-items:end;column-gap:10px;padding:10px 0}
.dr-lists li>span{grid-area:n;font-weight:600;font-size:15.5px;line-height:1.35}
.dr-lists li>span small{display:block;font-weight:500;font-size:13px;color:var(--muted)}
.dr-lists li>i{grid-area:l;border-bottom:2px dotted #D9CCE6;margin-bottom:6px;align-self:end}
.dr-lists li>b{grid-area:s;font-size:17px;text-align:right}
.dr-lists li>small{grid-area:c;font-size:12.5px;color:var(--muted);text-align:right;white-space:nowrap}
@media (max-width:620px){
  .dr-head{grid-template-columns:minmax(0,1fr)}
  .dr-score{justify-items:start;text-align:left;grid-auto-flow:column;align-items:baseline;gap:10px;justify-content:start}
  .dr-lists{grid-template-columns:minmax(0,1fr)}
}

/* ---------- strona marki: artykuł z edytora (template-parts/brand/about.php) ---------- */
.bart{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:32px 72px;align-items:start}
.bprose{max-width:740px;color:var(--ink-2);font-size:17px;line-height:1.7}
.bprose>h2{font-size:clamp(28px,3vw,38px);letter-spacing:-.03em;line-height:1.05;color:var(--ink);margin:0 0 22px}
.bprose h3{font-size:22px;letter-spacing:-.02em;line-height:1.2;color:var(--ink);margin:34px 0 10px}
.bprose h4{font-size:18px;color:var(--ink);margin:26px 0 8px}
.bprose p{margin:0 0 1em}
.bprose ul,.bprose ol{margin:0 0 1em;padding-left:1.3em}
.bprose ul{list-style:none;padding-left:0}
.bprose ul>li{position:relative;padding-left:22px;margin:0 0 .45em}
.bprose ul>li::before{content:"";position:absolute;left:4px;top:.68em;width:7px;height:7px;border-radius:2px;background:var(--apricot);transform:rotate(45deg)}
.bprose ol>li{margin:0 0 .45em;padding-left:4px}
.bprose a{color:var(--ink);font-weight:600;text-decoration-color:var(--apricot);text-decoration-thickness:2px;text-underline-offset:3px}
.bprose strong,.bprose b{color:var(--ink)}
.bprose blockquote{margin:24px 0;padding:18px 22px;background:var(--mist);border-radius:18px;color:var(--ink)}
.bprose img{height:auto;border-radius:18px}
.bart-side{position:sticky;top:96px;display:grid;justify-items:center;gap:6px;padding-top:40px}
.bart-side .bubble{margin:0 0 4px -30px;font-size:15px}
.bart-side img{width:150px;transform:rotate(-4deg)}
.bart-side .btn{margin-top:8px}
@media (max-width:980px){
  .bart{grid-template-columns:minmax(0,1fr)}
  .bart-side{display:none}
}

/* ---------- wyszukiwarka w nagłówku (template-parts/search.php, assets/js/search.js) i wyniki (search.php) ---------- */
.sr{position:absolute;top:calc(100% + 2px);right:0;z-index:7;width:min(620px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden;display:none}
.sr.open,html:not(.js) .sr:target{display:block}
.sr-btn[aria-expanded="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.sr-form{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 18px;border-bottom:1px solid var(--line)}
.sr-field{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
.sr-field svg{width:20px;height:20px;color:var(--apricot);flex:none}
.sr-field input{border:0;outline:0;background:transparent;width:100%;min-width:0;height:46px;font-size:18px;font-weight:600}
.sr-field input::placeholder{color:#A99FB6;font-weight:500}
.sr-close{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:var(--muted);flex:none}
.sr-close:hover{background:var(--mist);color:var(--ink)}
.sr-close svg{width:18px;height:18px}
.sr-start{display:grid;gap:8px;padding:12px 22px 22px}
.sr-start .np-h{margin:8px 0 0}
.sr-start[hidden]{display:none}
.sr-field input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
:where(.sr,.srp) .sw{width:12px;height:12px;border-radius:4px;flex:none;background:#CDB9F5}
.sr-res{max-height:min(560px,calc(100dvh - 170px));overflow-y:auto;overscroll-behavior:contain;padding-top:6px}
.sr-g{padding:4px 10px 8px}
.sr-g .np-h{padding:8px 12px 4px;margin:0}
.sr-it{display:flex;align-items:center;gap:14px;padding:8px 12px;border-radius:14px;text-decoration:none;line-height:1.25}
.sr-it:hover,.sr-it[aria-selected="true"]{background:var(--mist)}
.sr-tx{flex:1;min-width:0;display:grid;gap:2px}
.sr-it b{font-size:16px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sr-it small{color:var(--muted);font-size:13.5px}
.sr-it mark{background:var(--peach);color:inherit;border-radius:4px;box-shadow:0 0 0 1px var(--peach)}
.sr-it .logo{width:58px;height:36px;border-radius:9px}
.sr-it .logo.mark{font-size:13px}
.sr-ic{width:58px;height:36px;border-radius:9px;background:var(--mist);color:var(--ink-2);display:grid;place-items:center;flex:none}
.sr-ic svg{width:18px;height:18px}
.sr-ic .sw{width:15px;height:15px}
.sr-top{background:var(--peach-2)}
.sr-top:hover,.sr-top[aria-selected="true"]{background:var(--peach)}
.sr-top .sr-ic{background:var(--apricot);color:var(--ink)}
.sr-top > svg{width:18px;height:18px;flex:none;transition:transform .15s}
.sr-top:hover > svg,.sr-top[aria-selected="true"] > svg{transform:translateX(3px)}
.sr-note,.sr-none{padding:18px 22px 22px;color:var(--muted);line-height:1.5}
.sr-none b{display:block;color:var(--ink);font-size:17px;margin-bottom:4px}
.srp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 48px;align-items:start}
.srp-g .np-h{padding:0 12px 6px;font-size:12.5px}
.srp-g .sr-it{padding-block:10px}
.srp-none{padding:0 0 18px}
@media (max-width:980px){
  .sr{top:100%;left:0;right:0;width:auto;border-radius:0;border-inline:0}
  .sr .np-h{display:flex}
  .sr-res{max-height:calc(100dvh - 130px)}
  .srp{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:620px){
  .sr-form{padding-left:16px}
  .sr-start{padding-inline:16px}
  .sr-g{padding-inline:4px}
}
