:root{--red:#e01820;--black:#111;--ink:#252525;--muted:#4a4a4a;--line:#d8d8d8;--warm:#f3eee9;--white:#fff;--max:1320px}
*{box-sizing:border-box}html{scroll-behavior:smooth}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body{margin:0;background:#fff;color:var(--ink);font:16px/1.45 Arial,"Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased}body.kosik-otevreny{overflow:hidden}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}.obal{width:min(calc(100% - 80px),var(--max));margin:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:800;line-height:1.1}.sekce-kicker,.stitek{text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em;color:#4a4a4a}

/* Header follows Weber's three bands: utility, shopping navigation, promotion. */
.hlava{position:relative;z-index:30;background:#fff}.hlava-horni{height:58px;background:#050505;color:#fff}.hlava-horni-vnitrek{height:100%;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700}.hlava-horni nav{display:flex;gap:42px;margin-left:auto}.hlava a{color:inherit;text-decoration:none}.hlava-hlavni{border-bottom:1px solid #222}.hlava-vnitrek{height:74px;display:flex;align-items:center;gap:42px}.znacka{flex:none}.znacka img{width:145px;height:50px;object-fit:contain}.rozcestnik{display:flex;align-self:stretch;align-items:stretch;gap:34px}.rozcestnik a{flex:none;display:flex;align-items:center;position:relative;font-size:13px;font-weight:700;white-space:nowrap}.rozcestnik a:hover,.rozcestnik a[aria-current=page]{color:var(--red)}.rozcestnik a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--red)}.hlava-vpravo{margin-left:auto;display:flex;align-items:center;gap:12px}
/* Logo Weber v černé liště nahoře. Roman 12. 9. 2026: „logo má být v černé
   liště nahoře, ne v bílé." Patří k firemní lince, ne mezi naše zboží —
   jsme autorizovaný prodejce. Logo má vlastní bílý rámeček, takže na černém
   podkladu drží samo a nepotřebuje oddělovač. */
/* Roman 16. 9. 2026: „posuň doprava k logu." Odkazy horní lišty jdou
   automatickým odsazením zleva až k logu Weber, jazyk zůstává vlevo. */
.hlava-znacka-weber{flex:none;display:flex;align-items:center;margin-left:34px}
.hlava-znacka-weber img{display:block;width:auto;height:24px}
/* Pole hledání v černé liště. Roman 16. 9. 2026: „hledej dáme do černé linie
   nad slovo plyn, ne vedle." Odsazení zleva je šířka loga (180 px) a mezera
   za ním (22 px) — díky tomu začátek pole sedí přesně nad položkou Plyn
   v menu pod lištou, na každé šířce okna. */
.lista-hledani{position:relative;display:block;flex:none;width:242px;--logo:145px;--mezera:42px;margin-left:calc(var(--logo) + var(--mezera) - 46px)}
/* Roman 17. 9. 2026: „tu černou lištu trošku zvětši" a „musí být
   transparentní pozadí" — pole hledání splývá s lištou, jen tenký rámeček. */
.lista-hledani input{width:100%;height:36px;padding:0 34px 0 14px;border:1px solid #3a3a3a;border-radius:18px;background:transparent;color:#fff;font-size:13px}
.lista-hledani input::placeholder{color:#8a8a8a}
.lista-hledani input:focus{outline:none;border-color:#7a7a7a;background:transparent}
.lista-hledani svg{position:absolute;right:11px;top:10px;width:16px;fill:none;stroke:#bbb;stroke-width:2;pointer-events:none}
.meny{display:flex;border:1px solid var(--line);border-radius:20px;padding:2px}.meny button{min-width:34px;height:30px;border-radius:16px;background:#fff;font-size:12px}.meny button[aria-pressed=true]{background:#111;color:#fff}.moje-otevrit,.kosik-otevrit{height:38px;padding:0 14px;background:#fff;border:1px solid #222;font-size:12px;font-weight:700}.promo{min-height:48px;display:flex;align-items:center;justify-content:center;padding:10px 40px;border-bottom:1px solid var(--line);text-align:center;font-size:14px}.promo span{font-weight:800;margin-right:4px}

/* Hero mirrors the large framed Weber campaign panel. */
.hero{position:relative;isolation:isolate;width:100%;height:clamp(320px,34vw,440px);margin:0 auto;display:grid;place-items:center;overflow:hidden;color:#fff}.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.34),rgba(0,0,0,.2) 48%,rgba(0,0,0,.32))}.hero-slide{position:absolute;inset:0;z-index:-2;background-repeat:no-repeat;background-size:cover;opacity:0;animation:hero-stridani 18s infinite ease-in-out}.hero-slide-lide{background-image:url('/assets/kuchyne/spolecnost.jpg');background-position:center 43%}.hero-slide-kuchyne{background-image:url('/assets/kuchyne/linka.jpg');background-position:center 46%;animation-delay:6s}.hero-slide-detail{background-image:url('/assets/weber/detail-genesis.jpg');background-position:center 46%;animation-delay:12s}@keyframes hero-stridani{0%,28%{opacity:1;transform:scale(1)}36%,92%{opacity:0;transform:scale(1.025)}94%,100%{opacity:1;transform:scale(1)}}.hero-vnitrek{width:min(850px,90%);text-align:center}.hero-kicker{display:inline-grid;place-items:center;width:126px;height:126px;margin:0 0 18px;background:var(--red);color:#fff;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.hero-logo{display:block;width:min(270px,58%);height:auto;margin:0 auto 16px;filter:drop-shadow(0 2px 14px rgba(0,0,0,.68))}.hero-logo-odkaz{display:block;text-decoration:none}.hero h1{max-width:850px;margin:0 auto;color:#fff;font-size:42px;text-transform:uppercase;text-shadow:0 2px 14px rgba(0,0,0,.95)}.hero h1:after{content:"";display:block;width:360px;max-width:62%;height:7px;margin:14px auto;background:var(--red);transform:skewX(-28deg)}.hero-text{margin:0 auto;color:#fff;font-size:18px;font-weight:800;text-shadow:0 2px 13px rgba(0,0,0,.95)}.hero-tlacitka{display:none}.duvera{display:none}@media(prefers-reduced-motion:reduce){.hero-slide{animation:none}.hero-slide-lide{opacity:1}.hero-slide-kuchyne,.hero-slide-detail{display:none}}

/* Category and range navigation. */
.rady-sekce{padding:0;background:var(--warm)}.delici-pruh{height:34px;background:#282828}.rady-sekce h2,.rozcesti-sekce h2{text-align:center;font-size:28px;text-transform:uppercase}.rady-uvod{max-width:650px;margin:-4px auto 34px;text-align:center;color:var(--muted)}.rozcesti,.rady{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px 6px}.dlazdice{min-width:0;padding:0;background:transparent;text-align:center}.dlazdice-obraz{height:210px;display:grid;place-items:center;padding:4px;background:transparent;overflow:hidden}/* --velikost nastavuje skript podle skutecne sirky grilu: Summit ma 190 cm a zabere celou dlazdici, Smokey Joe 36 cm a zabere kousek. Kde rozmer od vyrobce neznama, promenna se nenastavi a plati puvodnich 100 %. */.dlazdice-obraz img{width:var(--velikost,100%);height:var(--velikost,100%);object-fit:contain;transition:transform .25s}.dlazdice:hover img{transform:scale(1.05)}.dlazdice b{display:block;margin:10px 0 4px;font-size:17px}.dlazdice>span:not(.dlazdice-obraz){display:block;color:#4a4a4a;font-size:12px}.rada-cena{font-weight:800;color:#222!important}.rozcesti-sekce{padding:44px 0 46px;background:#fff}.rozcesti-sekce .rozcesti{grid-template-columns:repeat(4,minmax(0,1fr))}.rozcesti-sekce .dlazdice-obraz{height:245px;background:#f3f3f4}

/* Editorial blocks use Weber's spacious three-column rhythm. */
.proc{padding:48px 0 58px;background:var(--warm)}.proc>.obal>.sekce-kicker{text-align:center}.proc h2{text-align:center;font-size:34px}.proc-mrizka{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:36px}.proc article img{width:100%;aspect-ratio:4/3;object-fit:cover}.proc h3{margin:18px 0 8px;font-size:21px}.proc p{color:#555}.pas{padding:60px 0;color:#fff;background:#111}.pas-vnitrek{padding:46px;background:transparent}.pas h2{font-size:38px;max-width:560px}.pas-vnitrek>p:not(.sekce-kicker){max-width:700px}.pas ul{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin:32px 0 0;padding:0;list-style:none}.pas li{border-top:2px solid var(--red);padding-top:14px}.pas b,.pas span{display:block}.pas span{margin-top:7px;color:#ccc;font-size:14px}

/* Catalog: desktop sidebar + three product columns, like Weber PLP. */
.katalog{padding:52px 0 84px;background:#fff}.katalog>.obal{display:grid;grid-template-columns:245px minmax(0,1fr);grid-template-areas:"title title" "cat cat" "filters toolbar" "filters chips" "filters section" "filters grid" "filters empty" "filters pages" "note note";column-gap:34px}.sekce-hlavicka{grid-area:title;display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:20px}.sekce-hlavicka h2{margin:0;font-size:30px}.sekce-hlavicka>p{margin:0;color:#4a4a4a;font-size:13px}.kat-hlava{grid-area:cat;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;column-gap:20px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.kat-hlava h2{margin:0;font-size:28px;line-height:1.1}.kat-hlava p{margin:0;color:#4a4a4a;font-size:13px}.kat-hlava button{grid-column:1/-1;justify-self:start;padding:0;margin-bottom:6px;background:none;color:var(--red);font-size:12px;font-weight:700}.ovladani{grid-area:filters;display:flex;flex-direction:column;padding-right:8px}.ovladani .ovladani.ma-vyber .podkategorie,.ovladani.ma-vyber .rada-filtr,.ovladani.ma-vyber .cena-filtr,.ovladani.ma-vyber .dostupnost-filtr{order:-1}.ovladani.ma-vyber #kategorie{margin-top:18px}.kategorie{display:flex;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--line)}.kategorie:before{content:attr(data-nadpis);padding:13px 0 7px;color:#111;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.kategorie button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:31px;padding:5px 2px;border-bottom:1px solid #eee;background:#fff;text-align:left;font-size:13px;line-height:1.25}.kategorie button:last-child{border-bottom:0}.kategorie button:hover{color:var(--red)}.kategorie button b{font-weight:inherit}.kategorie button i{flex:0 0 auto;color:#8a8a8a;font-size:11px;font-style:normal}.kategorie button[aria-pressed=true]{font-weight:800;color:var(--red)}.kategorie button[aria-pressed=true] i{color:var(--red)}.podkategorie,.dostupnost-filtr,.rada-filtr,.cena-filtr{margin-top:18px}.kategorie.zkraceno button:not(.vic-filtru):nth-of-type(n+9){display:none}.vic-filtru{justify-content:flex-start!important;color:var(--red);font-weight:800}.kategorie button.bez-fotky-filtr{display:none}.vysledky-hlavicka{grid-area:toolbar;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;margin-bottom:14px;border-bottom:1px solid var(--line)}.pocet{margin:0;font-size:13px;font-weight:800}.vysledky-volby{display:flex;gap:10px}.razeni{display:flex;align-items:center;gap:7px;color:#5f5f5f;font-size:12px}.razeni select{height:34px;padding:0 28px 0 9px;border:1px solid #ccc;background:#fff;font-size:12px}.aktivni-filtry{grid-area:chips;display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px}.aktivni-filtry .chip{display:inline-flex;align-items:center;gap:7px;height:29px;padding:0 11px;border:1px solid #ccc;border-radius:15px;background:#fff;font-size:12px;font-weight:700}.aktivni-filtry .chip:hover{border-color:#111}.aktivni-filtry .chip:after{content:"×";color:#888;font-size:15px;line-height:1}.aktivni-filtry .zrusit-vse{padding:0 4px;background:none;color:var(--red);font-size:12px;font-weight:800;text-decoration:underline}.sekce{grid-area:section}.mrizka{grid-area:grid;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:54px 18px}.skupina{margin-bottom:62px}.skupina-hlava{display:flex;align-items:baseline;gap:12px;margin-bottom:20px;border-bottom:1px solid var(--line)}.skupina-hlava h3{font-size:25px}.skupina-hlava span{color:#5f5f5f;font-size:13px}.skupina-vic{margin-left:auto;background:none;color:var(--red);font-weight:800}.skupina .mrizka{grid-template-columns:repeat(3,minmax(0,1fr))}.mrizka-radek .karta:nth-child(n+4){display:none}.mrizka-dve-rady .karta:nth-child(n+7){display:none}.karta{min-width:0;background:#fff;cursor:pointer}.obrazek{height:285px;display:grid;place-items:center;padding:18px;border:1px solid #ddd;background:#fff}.obrazek img{width:100%;height:100%;object-fit:contain}.obrazek svg{width:120px}.telo{padding:13px 0 0}.stitek{display:none}.karta h3{min-height:44px;margin:0 0 7px;font-size:15px;line-height:1.4;font-weight:500}.cislo{margin:0 0 7px;color:#5f5f5f;font-size:12px}.dostupnost{margin:0 0 7px;font-size:12px;font-weight:700}.skladem{color:#287a3b}.objednavka{color:#5f5f5f}.cena-radek{display:flex;align-items:baseline;gap:6px;min-height:44px}.castka{margin:0;font-size:20px;font-weight:800}.dph{margin:0;color:#4a4a4a;font-size:12px}.koupit{width:100%;height:48px;margin-top:8px;background:var(--red);color:#fff;font-weight:800}.koupit:hover,.odeslat:hover{background:#c90008}.prazdno{grid-area:empty}.strankovani{grid-area:pages;display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:50px}.strankovani button{min-width:42px;height:42px;border:1px solid #5f5f5f;background:#fff}.strankovani button[aria-current=page]{background:#111;color:#fff}.poznamka{grid-area:note;margin-top:70px;color:#5f5f5f;font-size:12px}

/* Product detail. */
body.na-produktu .promo,body.na-produktu .hero,body.na-produktu .duvera,body.na-produktu .rady-sekce,body.na-produktu .rozcesti-sekce,body.na-produktu .proc,body.na-produktu .pas,body.na-produktu .katalog,body.na-produktu .pomoc{display:none}.produkt-stranka{padding:30px 0 90px}.drobecky{display:flex;gap:8px;margin-bottom:30px;font-size:12px}.drobecky>*:not(:last-child):after{content:"/";margin-left:8px;color:#999}.drobecky a{color:#4a4a4a;text-decoration:none}.produkt-vrch{display:grid;grid-template-columns:58% 1fr;gap:55px}.produkt-galerie{background:transparent}.produkt-obraz{height:560px;display:grid;place-items:center;padding:38px}.produkt-obraz img{width:100%;height:100%;object-fit:contain}.produkt-nazev{margin:8px 0 12px;font-size:36px}.produkt-nakup .cislo{font-size:13px}/* Roman 11. 9. 2026: „obrázek nesmí být v žádném rámečku, koupit je strašně
   velké, dej ho vedle ceny." Cenovka je proto řádek: vlevo částka s DPH,
   vpravo tlačítko, které už nezabírá celou šířku sloupce. */
.produkt-cenovka{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:24px 0;padding:22px 0;border-block:1px solid var(--line)}
.produkt-cena-blok{min-width:0}
.produkt-cenovka .castka{margin:0;font-size:34px;line-height:1.1}
.produkt-cenovka .dph{margin:4px 0 0}
/* Efekt tlačítka podle uiverse.io/SouravBandyopadhyay/ugly-pug-52, přepsaný
   na naše barvy a české popisky: text vyjede nahoru, košík nastoupí zespoda
   a nad tlačítkem se ukáže bublina se jménem akce. */
.produkt-koupit{position:relative;flex:0 0 auto;width:172px;height:46px;margin:0;padding:0;overflow:visible;border-radius:6px;font-size:15px;transition:background .25s}
.produkt-koupit .koupit-text,.produkt-koupit .koupit-ikona{position:absolute;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:top .38s cubic-bezier(.34,.9,.4,1),opacity .2s}
.produkt-koupit .koupit-text{top:0}
.produkt-koupit .koupit-ikona{top:100%}
.produkt-koupit .koupit-ikona svg{width:22px;height:22px}
/* Roman 13. 9. 2026: „dát pryč zdvojené info Koupit bílým písmem." Vyjetý
   text zůstával vidět nad tlačítkem přes bublinu, proto po najetí zmizí. */
.produkt-koupit:hover .koupit-text{top:-100%;opacity:0}
.produkt-koupit:hover .koupit-ikona{top:0}
.produkt-koupit:before{content:attr(data-bublina);position:absolute;left:50%;bottom:calc(100% + 16px);transform:translateX(-50%);padding:0 14px;height:34px;display:flex;align-items:center;white-space:nowrap;border-radius:5px;background:#16161a;color:#fff;font-size:13px;font-weight:600}
.produkt-koupit:after{content:"";position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);border:5px solid transparent;border-top-color:#16161a}
.produkt-koupit:before,.produkt-koupit:after{opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s,bottom .3s}
.produkt-koupit:hover:before{opacity:1;visibility:visible;bottom:calc(100% + 12px)}
.produkt-koupit:hover:after{opacity:1;visibility:visible;bottom:calc(100% + 2px)}
@media(prefers-reduced-motion:reduce){.produkt-koupit .koupit-text,.produkt-koupit .koupit-ikona,.produkt-koupit:before,.produkt-koupit:after{transition:none}}.produkt-sliby{padding:0;list-style:none}.produkt-sliby li{padding:8px 0;border-bottom:1px solid #eee;color:#555;font-size:14px}.produkt-sliby li:before{content:"✓";margin-right:10px;color:#21813b}/* Roman 11. 9. 2026: „popis při rozkliknutí produktu je ošklivý, uprav to;
   hlavně tam musí být prostor pro parametry, nebo to zakomponuj nějak pěkně
   do karty zboží." Popis dostal víc místa a čitelnou sazbu, parametry stojí
   ve vlastní kartě, která se drží při rolování nahoře. */
.produkt-spodek{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;margin-top:60px;align-items:start}
.produkt-popis{max-width:68ch;color:#33333a;font-size:16px;line-height:1.75}
.produkt-popis h2,.produkt-popis h3,.produkt-popis h4{margin:26px 0 8px;color:#111;font-size:18px;line-height:1.3;letter-spacing:-.01em}
.produkt-popis h2:first-child,.produkt-popis h3:first-child,.produkt-popis h4:first-child{margin-top:0}
.produkt-popis p{margin:0 0 14px}
.produkt-popis strong{color:#111}
.produkt-popis ul,.produkt-popis ol{margin:0 0 16px;padding-left:0;list-style:none}
.produkt-popis ul li{position:relative;padding:0 0 7px 22px}
.produkt-popis ul li:before{content:"";position:absolute;left:2px;top:11px;width:7px;height:7px;border-radius:50%;background:var(--red)}
.produkt-popis ol{counter-reset:krok}
.produkt-popis ol li{position:relative;padding:0 0 7px 26px;counter-increment:krok}
.produkt-popis ol li:before{content:counter(krok) ".";position:absolute;left:0;color:var(--red);font-weight:800}
.produkt-popis img{max-width:100%;height:auto}
.produkt-popis table{width:100%;border-collapse:collapse;margin:0 0 16px}
.produkt-popis td,.produkt-popis th{padding:8px 10px;border-bottom:1px solid #e6e6e6;text-align:left;font-size:15px}
#produkt-parametry-blok{position:sticky;top:18px;padding:22px 24px 18px;border:1px solid #e6e6e6;border-radius:10px;background:#fafafa}
#produkt-parametry-blok .produkt-nadpis{margin-top:0}
.produkt-parametry{margin:0}
.produkt-parametry>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:14px;padding:9px 10px;border-bottom:1px solid #e8e8e8}
.produkt-parametry>div:nth-child(odd){background:#fff}
.produkt-parametry>div:last-child{border-bottom:0}
.produkt-parametry dt{color:#5f5f5f;font-size:13px}
.produkt-parametry dd{margin:0;text-align:right;font-size:14px;font-weight:700;color:#111}.podobne{margin-top:70px}.podobne .mrizka{grid-template-columns:repeat(4,1fr)}

/* Cart and account drawers. */
.kosik{position:fixed;inset:0;z-index:80;display:flex;justify-content:flex-end;background:rgba(0,0,0,.58)}.kosik-vnitrek{width:min(510px,100%);height:100%;overflow:auto;padding:28px;background:#fff}.kosik-hlava{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ddd}.kosik-zavrit{width:42px;height:42px;background:#fff;font-size:28px}.kosik-seznam{padding:0;list-style:none}.kosik-seznam li{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;padding:15px 0;border-bottom:1px solid #ddd}.kusy{display:flex;align-items:center}.kusy button{width:30px;height:30px}.pryc{background:#fff}.kosik-celkem{display:flex;justify-content:space-between;padding:18px 0;font-size:20px}.kosik-formular h3{margin-top:25px}.kosik-formular label{display:block;margin-bottom:12px;font-size:12px;font-weight:700}.kosik-formular input,.kosik-formular textarea{display:block;width:100%;margin-top:5px;padding:11px;border:1px solid #999}.dva-sloupce{display:grid;grid-template-columns:1fr 1fr;gap:12px}.zpusob{margin:18px 0;padding:0;border:0}.kosik-formular .volba{display:flex;gap:8px;font-size:14px;font-weight:400}.kosik-formular .volba input{width:auto}.kosik-slib{padding:14px;background:#f3f3f3;font-size:13px}.odeslat{width:100%;height:52px;background:var(--red);color:#fff;font-weight:800}.stav{padding:4px 8px;background:#eee;font-size:12px}.objednavka header,.objednavka footer{display:flex;justify-content:space-between;padding:12px;background:#f4f4f4}.objednavka ul{padding:12px;list-style:none}

.pomoc{padding:65px 0;background:#d3d3d3}.pomoc-vnitrek{display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:center}.pomoc h2{font-size:34px}.pomoc a{padding:16px 22px;background:var(--red);color:#fff;text-decoration:none;font-weight:800}.pata{padding:60px 0;background:#fff;border-top:1px solid #ddd}.pata-vnitrek{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px}.pata-rady{margin-top:34px;padding-top:26px;padding-bottom:34px;border-top:1px solid #ddd}.pata-rady b{display:block;margin-bottom:12px;color:#111;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.pata-rady div{display:flex;flex-wrap:wrap;gap:9px 22px}.pata-rady a{color:#4a4a4a;font-size:13px;text-decoration:none}.pata-rady a:hover{color:var(--red);text-decoration:underline}.pata img{width:180px}.pata nav{display:grid;gap:10px}.pata a{color:#222}.firma{margin:0}

@media(max-width:1100px){.obal{width:min(calc(100% - 40px),var(--max))}.rozcestnik{gap:18px}.lista-hledani{--logo:145px;--mezera:19px;width:min(242px,28vw)}/* Na tabletu se hlavička nevešla a celá stránka se dala posunout do strany o 55 bodů — AGENTS.md říká, že přesah být nesmí na žádné šířce. Pravá strana lišty se proto smrskne: hledání zúží, měna a účet zmizí (obojí je dostupné níž na stránce). */.hlava-vnitrek{gap:22px}.hlava-vpravo{gap:8px}.meny,.moje-otevrit{display:none}.rozcestnik a{font-size:12px}.rady{grid-template-columns:repeat(3,1fr)}.rozcesti-sekce .rozcesti{grid-template-columns:repeat(3,1fr)}.mrizka,.skupina .mrizka{grid-template-columns:repeat(2,1fr)}.mrizka-radek .karta:nth-child(n+3),.mrizka-dve-rady .karta:nth-child(n+5){display:none}}

@media(max-width:760px){.obal{width:calc(100% - 16px)}/* Logo Weber v liště jen na širší obrazovce. Na mobilu má lišta 55 px,
   značka stojí uprostřed a košík s nabídkou jsou k jejím krajům přilepené
   napevno — logo by se s nimi překrývalo. */
.hlava-znacka-weber{display:none}
/* Na mobilu se lišta dřív schovávala celá. Od chvíle, kdy je v ní jediné
   pole hledání na webu (Roman 16. 9. 2026), by tím zmizelo i hledání —
   proto lišta zůstává, ale nese jen pole přes celou šířku; jazyk a odkazy
   se skrývají, ty má návštěvník v nabídce pod ☰ a v patičce. */
.hlava-horni{height:auto;padding:6px 0}
.hlava-horni-vnitrek>span,.hlava-horni nav{display:none}
.lista-hledani{--logo:0px;--mezera:0px;width:100%;margin-left:0}
.lista-hledani input{height:34px;font-size:13px}
.hlava-hlavni{border-bottom:1px solid #111}.hlava-vnitrek{height:55px;justify-content:center;padding:0 8px}.znacka img{width:105px;height:42px}.rozcestnik{position:absolute;left:8px}.rozcestnik:before{content:"☰";font-size:25px}.rozcestnik a{display:none}.hlava-vpravo{position:absolute;right:8px;margin:0}.meny,.moje-otevrit{display:none}.kosik-otevrit{width:34px;height:34px;padding:0;border:0;font-size:0}.kosik-otevrit:before{content:"🛒";font-size:19px}.promo{min-height:38px;padding:6px 34px 6px 8px;font-size:12px}.hero{width:100%;height:250px;margin-top:0}.hero-logo{width:min(200px,70%);margin-bottom:12px}.hero:before{background-position:center}.hero-vnitrek{width:95%}.hero-kicker{width:auto;height:auto;padding:12px 18px;margin-bottom:20px}.hero h1{font-size:29px}.hero h1:after{height:6px;width:260px}.hero-text{font-size:16px}.rady-sekce{padding:0}.rady-sekce h2,.rozcesti-sekce h2{font-size:24px}.rady{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory}.dlazdice-rada{flex:0 0 82%;scroll-snap-align:start}.dlazdice-obraz{height:270px}.rozcesti-sekce{padding:48px 0}.rozcesti-sekce .rozcesti{grid-template-columns:1fr 1fr;gap:18px 10px}.rozcesti-sekce .dlazdice-obraz{height:155px}.proc{padding:48px 0}.proc h2{font-size:28px}.proc-mrizka{grid-template-columns:1fr}.pas{padding:30px 8px}.pas-vnitrek{padding:28px 20px}.pas h2{font-size:30px}.pas ul{grid-template-columns:1fr}.katalog{padding:40px 0 60px}.katalog>.obal{display:block}.sekce-hlavicka{display:block}.sekce-hlavicka h2,.kat-hlava h2{font-size:29px}.sekce-hlavicka>p{font-size:13px}.ovladani{display:block;margin:16px 0}.kategorie{flex-direction:row;flex-wrap:wrap;gap:7px;border-top:0}.kategorie:before{flex:0 0 100%;padding:0 0 5px}.kategorie button{flex:0 0 auto;min-height:33px;padding:0 12px;border:1px solid #d5d5d5;border-radius:17px;font-size:12px}.kategorie button:last-child{border:1px solid #d5d5d5}.kategorie button[aria-pressed=true]{border-color:var(--red)}.podkategorie,.dostupnost-filtr,.rada-filtr,.cena-filtr{margin-top:14px}.aktivni-filtry{margin:0 0 12px}.kat-hlava{display:block;padding-bottom:12px}.vysledky-hlavicka{display:block;border:0}.vysledky-volby{display:grid;grid-template-columns:1fr 1fr;margin-top:13px}.razeni span{display:none}.razeni select{width:100%}.mrizka,.skupina .mrizka{grid-template-columns:1fr 1fr;gap:42px 8px}.obrazek{height:185px;padding:8px}.karta h3{min-height:58px;font-size:12px}.cislo{font-size:12px}.dostupnost{font-size:12px}.castka{font-size:15px}.koupit{height:44px;font-size:0}.koupit:after{content:"🛒";font-size:18px}.skupina-hlava h3{font-size:22px}.skupina-vic{font-size:12px}.produkt-vrch,.produkt-spodek{grid-template-columns:1fr;gap:28px}.produkt-obraz{height:340px;padding:20px}.produkt-nazev{font-size:28px}.podobne .mrizka{grid-template-columns:1fr 1fr}.pomoc-vnitrek,.pata-vnitrek{grid-template-columns:1fr}.kosik-vnitrek{padding:20px 14px}.dva-sloupce{grid-template-columns:1fr}.kosik-seznam li{grid-template-columns:1fr auto}.pata{padding:40px 0}}

/* Exact Weber-style page order: category strip, three promos, cinematic panel,
   benefits, ranges, then the product listing. */
.rozcesti-sekce{padding:62px 0 78px;background:var(--warm)}
.rozcesti-sekce .rozcesti{grid-template-columns:repeat(6,minmax(0,1fr))}
.rozcesti-sekce .dlazdice-obraz{height:190px;background:transparent}
.weber-promos{padding:44px 0 26px;background:var(--warm)}
.weber-promos>.obal{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.weber-promos article img{width:100%;aspect-ratio:4/3;object-fit:cover;border-bottom:2px solid var(--red)}
.weber-promos article>p{margin:18px 0 7px;color:#5f5f5f;text-transform:uppercase;font-size:12px;font-weight:800}
.weber-promos h2{min-height:32px;margin:0 0 8px;font-size:21px}
.weber-promos a{display:inline-block;padding:12px 18px;background:var(--red);color:#fff;text-decoration:none;font-size:13px;font-weight:800}
.works-kolekce{padding:38px 0 50px;background:var(--warm)}.works-hero,.works-vyhody{width:min(calc(100% - 32px),1120px)}.works-hero{display:grid;grid-template-columns:1fr .92fr;align-items:center;gap:42px}.works-obraz img{display:block;width:100%;height:360px;object-fit:cover}.works-obsah h1{margin:7px 0 15px;font-size:46px;line-height:1}.works-perex{max-width:470px;color:#444;font-size:16px;line-height:1.5}.works-cta{display:inline-block;margin-top:18px;padding:13px 18px;background:var(--red);color:#fff;text-decoration:none;font-size:12px;font-weight:800}.works-vyhody{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:34px;border-top:1px solid #cfc8c2;border-bottom:1px solid #cfc8c2}.works-vyhody article{padding:20px 20px 23px;border-right:1px solid #cfc8c2}.works-vyhody article:first-child{border-left:1px solid #cfc8c2}.works-vyhody span{color:var(--red);font-size:12px;font-weight:900}.works-vyhody h2{margin:8px 0 6px;font-size:16px}.works-vyhody p{margin:0;color:#555;font-size:12px;line-height:1.45}.stranka-works .katalog{padding-top:34px}.stranka-works .sekce-hlavicka h2{font-size:0}.stranka-works .sekce-hlavicka h2:after{content:'Produkty Weber Works';font-size:32px}.stranka-works .sekce-hlavicka .sekce-kicker{font-size:0}.stranka-works .sekce-hlavicka .sekce-kicker:after{content:'Vyberte a kupte';font-size:12px}
.pas{position:relative;width:min(calc(100% - 96px),1360px);aspect-ratio:2/1;min-height:360px;margin:0 auto 80px;padding:0;display:grid;place-items:stretch}
.pas-vnitrek{width:calc(100% - 32px);margin:16px;padding:5% 46px 0;text-align:center;animation:pas-napis 18s ease-in-out infinite}
.pas h2{max-width:760px;margin-inline:auto;font-size:42px;text-transform:uppercase}.pas-vnitrek>p:not(.sekce-kicker){max-width:700px;margin-inline:auto}
.proc{background:#fff}/* Ctyri karty misto ctyr sloupcu textu. Roman 8. 9. 2026 poslal navrh:
   ikona vlevo, text vedle ni, cervena sipka vpravo, bila karta se stinem.
   Karta je cela odkaz — vede tam, kde se ten slib da overit. */
.duvera{display:block;padding:34px 0;background:#fff}
.duvera ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}
.duvera li{min-height:0;padding:0;border:0}

.duvera li a:hover{transform:translateY(-2px);border-color:#d5d5d5;box-shadow:0 12px 26px rgba(20,20,20,.12)}
.duvera-ikona{display:grid;width:52px;height:42px;place-items:center;color:#111}
.duvera-ikona svg{width:100%;height:100%}
.duvera-cary{fill:var(--red)}
.duvera-text b{display:block;font-size:15px;line-height:1.25;text-transform:uppercase}
.duvera-text small{display:block;margin-top:5px;color:#6b6b6b;font-size:12px}
.duvera li{perspective:1100px}.duvera li a{position:relative;display:block;height:96px;color:inherit;text-decoration:none;transform-style:preserve-3d;transform:translateZ(-48px);transition:transform .5s cubic-bezier(.32,.72,.3,1)}.duvera-sip{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:var(--red);color:#fff;font-size:17px;line-height:1}.duvera-stena{position:absolute;inset:0;display:grid;align-items:center;gap:14px;padding:16px 18px;border:1px solid #e6e6e6;border-radius:10px;background:#fff;box-shadow:0 6px 18px rgba(20,20,20,.07);transition:opacity .5s}.duvera-lic{grid-template-columns:auto minmax(0,1fr) auto;border-left:10px solid var(--red);transform:translateZ(48px)}.duvera-rub{grid-template-columns:auto minmax(0,1fr) auto;border-color:var(--red);border-left:10px solid #9c0d13;background:var(--red);color:#fff;opacity:0;transform:rotateX(90deg) translateZ(48px)}.duvera-rub .duvera-ikona{color:#fff}.duvera-rub .duvera-cary{fill:#16161a}.duvera-rub .duvera-text small{color:rgba(255,255,255,.85)}.duvera-rub .duvera-sip{background:#fff;color:var(--red)}.duvera li a:hover,.duvera li a:focus-visible{transform:translateZ(-48px) rotateX(-90deg)}.duvera li a:hover .duvera-lic,.duvera li a:focus-visible .duvera-lic{opacity:0}.duvera li a:hover .duvera-rub,.duvera li a:focus-visible .duvera-rub{opacity:1}@media(prefers-reduced-motion:reduce){.duvera li a,.duvera-stena{transition:none}}

@media(max-width:1100px){.rozcesti-sekce .rozcesti{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){
 .rozcesti-sekce .rozcesti{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory}
 .rozcesti-sekce .dlazdice{flex:0 0 44%;scroll-snap-align:start}.rozcesti-sekce .dlazdice-obraz{height:150px}
 .weber-promos{padding:30px 0 20px}.weber-promos>.obal{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory}.weber-promos article{flex:0 0 82%;scroll-snap-align:start}.weber-promos h2{min-height:0}.works-kolekce{padding:16px 0 34px}.works-hero{grid-template-columns:1fr;gap:20px}.works-obraz img{height:240px}.works-obsah{padding:0 6px}.works-obsah h1{font-size:36px}.works-perex{font-size:14px}.works-cta{margin-top:12px}.works-vyhody{display:grid;grid-template-columns:1fr 1fr;margin-top:26px}.works-vyhody article,.works-vyhody article:first-child{border:0;border-top:1px solid #cfc8c2;padding:16px 10px}.works-vyhody h2{font-size:14px}.works-vyhody p{font-size:12px}.stranka-works .katalog{padding-top:34px}
 .pas{width:calc(100% - 16px);aspect-ratio:2/1;min-height:220px;margin-bottom:48px;padding:0}.pas h2{font-size:29px}
 .duvera{padding:26px 0}.duvera ul{grid-template-columns:1fr 1fr;gap:12px}.duvera li a{min-height:84px;padding:13px 14px;gap:11px}.duvera-ikona{width:42px;height:34px}.duvera-text b{font-size:13.5px}
}

/* Product navigation copied from the supplied Weber reference. */
@media(min-width:1101px){
 .hlava-vnitrek{height:84px;gap:22px}
 .znacka img{width:180px;height:58px}
 /* Pole v liště drží linii s „Plyn": logo je tu širší a mezera užší. */
 .lista-hledani{--logo:180px;--mezera:22px}
 .rozcestnik{flex:1;justify-content:space-between;gap:22px;margin-left:24px}
 .rozcestnik a{font-size:16px}
 .hlava-vpravo{gap:8px}
 .moje-otevrit{display:none}
 .rozcestnik .nav-plyn{min-width:54px}
 .rozcestnik .nav-uhli{min-width:108px}
 .rozcestnik .nav-elektrina{min-width:78px}
}

/* Plynové grily: vlastní rozcestník řad podle dodané předlohy. */
.plyn-rozcestnik{padding:44px 0 44px;border-top:2px solid #111;background:#fff}
/* Hlavička sekce: červený znak, nadpis ležící na červené čáře a vpravo
   odkaz na celou nabídku.

   Roman 17. 8. 2026: „rámeček musí být tak, aby gril uvnitř byl uprostřed
   ze všech stran, a z rámečku půjde doprava čára, která bude dlouhá jako
   celý nápis — nápis bude jako ležet na té čáře. Čára červená, silueta
   bílá. Nápis a funkční čudlík budou naopak vpravo ve stejné linii a
   skončí v linii s eurem nahoře v liště."

   Čára je spodní hrana nadpisu. Aby vycházela od rámečku a ne až od
   prvního písmene, má nadpis zápornou mezeru vlevo přesně o velikost
   mezery mezi znakem a textem, a stejnou hodnotu si přidá zpátky jako
   odsazení. */
.plyn-hlavicka{display:flex;align-items:flex-end;gap:22px;margin-bottom:44px}
.plyn-hlavicka h1{margin:0 0 0 -22px;padding:0 0 12px 22px;font-size:38px;border-bottom:2px solid var(--red)}
/* Odkaz doprava. Obal má stejnou šířku jako lišta nad ním, takže konec
   odkazu padne do jedné svislé linie s přepínačem měny. */
.plyn-hlavicka a{margin-left:auto;padding-bottom:18px;color:var(--red);text-decoration:none;text-transform:uppercase;font-size:15px;font-weight:700}
.plyn-hlavicka a span{font-size:28px;line-height:0;vertical-align:-2px}
/* Roman 11. 9. 2026: „jsou moc blízko sebe.“ Mezera mezi sloupci
   povyrostla ze 14 na 24 px. */
.plyn-mrizka{display:grid;grid-template-columns:repeat(var(--sloupcu,6),minmax(0,1fr));gap:18px 24px;align-items:end}
/* Venkovní kuchyně stojí ve druhé řadě. Zapsaná do prvního sloupce —
   ten je nahoře obsazený, takže dlaždice spadne pod řadu grilů. */
.plyn-dlazdice.dolni-rada{grid-column:auto}
/* Dlaždice je někdy tlačítko a někdy odkaz na stránku řady. Bez tohohle
   vypadaly odkazové dlaždice jako modrý podtržený text a řada se
   rozpadla na dva různé vzhledy. */
.plyn-dlazdice{padding:0;background:#fff;text-align:center;color:inherit;text-decoration:none}
/* Snímky skupin mají každý jiný poměr stran — Smokey Mountain je vysoký
   a úzký, Ranch široký a nízký. Bez pevné výšky boxu měla každá dlaždice
   jinou výšku, grily nestály na jedné zemi a popisky se rozjely do
   schodů. Výška je proto společná a snímek v ní dosedá dolů. */
.plyn-obraz{height:var(--vyska-obrazu,180px);display:flex;align-items:flex-end;justify-content:center}
.plyn-obraz img{display:block;width:100%;height:100%;object-fit:contain;object-position:bottom;transition:transform .2s}
.plyn-dlazdice:hover img{transform:scale(1.04)}
/* Měřítko podle skutečných centimetrů se na rozcestníku nepoužívá.

   Roman 24. 8. 2026: „měli jsme výšky grilů už srovnané.“ Když se každý
   gril kreslil ve své skutečné velikosti, stál Traveler o polovinu vyšší
   než Q a řada vypadala rozházeně. Společnou výšku počítá srovnejVysky
   v zbozi.js; skutečné rozměry se člověk dozví až u konkrétního modelu. */

/* Silueta skupiny. Obal drží šířku podle skutečné velikosti grilu
   (style="width:…%") a výšku si silueta dopočítá z poměru plátna sama.

   Roman 17. 8. 2026: „ještě výš a dát všechny siluety u všech modelů
   výš." Do té doby měl obrázek pevných 190 px, ale silueta je široká
   200 a vysoká 150 — vešla se tedy podle šířky a nad grilem zbývalo
   přes padesát prázdných pixelů. Bez pevné výšky prázdno mizí a řada
   začíná hned pod nadpisem. */
.plyn-obraz.je-silueta{height:auto}
.plyn-obraz .silueta-obal{display:block;width:100%;margin-inline:auto}
.silueta{display:block;width:100%;height:auto;color:#1f1f1f;transition:transform .2s,color .2s}
.plyn-dlazdice:hover .silueta{transform:scale(1.04);color:var(--red)}
/* Dva řádky i pro jednoslovný název. Jinak by „Přenosné plynové grily"
   zabralo o řádek víc a jeho silueta by v řadě stála výš než ostatní. */
.plyn-dlazdice b{display:block;min-height:2.4em;margin-top:15px;font-size:18px;font-weight:500}
#uhli-mrizka{align-items:end}
/* Elektricke produktove snimky jsou v souborech orezane tesneji nez plynove,
   takze pri 100% sirce sloupce mezi jejich viditelnymi okraji skoro nezbyla
   mezera. Drzi proto stejne siroke obrazove pole a vsechna pole zacinaji na
   leve hrane sveho sloupce: prvni gril je na spolecne leve ose a mezi kazdou
   dvojici zustava stejna skutecna mezera. */
@media(min-width:761px){
  #elektrina-mrizka .plyn-obraz{justify-content:center}
  #elektrina-mrizka .plyn-obraz img{width:auto;height:130px;max-width:none}
  /* Zdroj 76 je čtvercový s výrazně větším bílým okolím než široký snímek
     43. Měřítko proto srovnává viditelný výrobek, ne celé JPEG plátno.

     Roman 11. 9. 2026: „plancha je špatně umístěná pod názvem a jsou moc
     blízko sebe." Měřítko 1,55 roztáhlo snímek na 306 px, ačkoli dlaždice
     měří 208 — přetékal tedy skoro o padesát pixelů na každou stranu a lezl
     na souseda i na jeho popisek. Zvětšení zůstává jen takové, aby se vešlo
     mezi sloupce. */
  /* Měřítko drzí poměr mezi třemi planchami (hlídá to test) a šířka snímku
     ho vrací do dlaždice: 0,64 × 200 × 1,55 = 198 px, tedy těsně pod šířku
     sloupce. Roman 11. 9. 2026: „jsou moc blízko sebe." */
  #plancha-mrizka .plancha-gpd76 .plyn-obraz img{transform:scale(1.55);width:64%;transform-origin:center bottom}
  #plancha-mrizka .plancha-gpd76:hover .plyn-obraz img{transform:scale(1.60)}
  #plancha-mrizka .plancha-gp71 .plyn-obraz img{transform:scale(1.42);width:66%;transform-origin:center bottom}
  #plancha-mrizka .plancha-gp71:hover .plyn-obraz img{transform:scale(1.47)}
  /* Nejmenší model drží poměr ke 76 cm: 43 / 76 = 0,57. */
  #plancha-mrizka .plyn-dlazdice:not(.plancha-gpd76):not(.plancha-gp71) .plyn-obraz img{width:57%}
}
/* Elektřina, plancha a pelety mívaly vlastní užší mřížku, takže jejich
   dlaždice byly širší než na plynu a plotna vedle Summitu vypadala jako
   největší kus v nabídce. Šířku sloupce teď drží skript (--sloupcu) pro
   všechny rozcestníky stejně. */

@media(max-width:1100px){.plyn-mrizka{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.plyn-rozcestnik{padding:30px 0 30px}.plyn-hlavicka{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:30px}.plyn-hlavicka h1{margin-bottom:12px;font-size:30px}.plyn-mrizka{grid-template-columns:1fr 1fr;gap:30px 12px}.plyn-obraz{height:var(--vyska-obrazu,140px)}#elektrina-mrizka .plyn-obraz img{width:auto;height:110px;max-width:none}.plyn-dlazdice b{font-size:15px}}
@media(max-width:760px){
  #plancha-mrizka{grid-template-columns:repeat(3,minmax(0,1fr))}
  #plancha-mrizka .plancha-gpd76 .plyn-obraz img{transform:scale(1.40);width:64%;transform-origin:center bottom}
  #plancha-mrizka .plancha-gpd76:hover .plyn-obraz img{transform:scale(1.45)}
  #plancha-mrizka .plancha-gp71 .plyn-obraz img{transform:scale(1.28);width:66%;transform-origin:center bottom}
  #plancha-mrizka .plancha-gp71:hover .plyn-obraz img{transform:scale(1.33)}
  #plancha-mrizka .plyn-dlazdice:not(.plancha-gpd76):not(.plancha-gp71) .plyn-obraz img{width:57%}
}
/* Dlaždice řady je odkaz na její stránku, ne tlačítko — musí vypadat
   stejně jako sousední tlačítka, tedy bez podtržení a v barvě textu. */
a.plyn-dlazdice{display:block;color:inherit;text-decoration:none}
/* Uvod ke chytrym grilum — kratke vysvetleni nad vypisem. */
.chytre-uvod{padding:44px 0 8px;border-top:2px solid #111;background:#fff}
.chytre-uvod h1{margin:0 0 14px;font-size:clamp(30px,3vw,44px);text-transform:uppercase;letter-spacing:-.03em}
.chytre-text{max-width:640px;margin:0;font-size:17px;line-height:1.6}
.chytre-body{max-width:640px;margin:20px 0 0;padding:0;list-style:none}
.chytre-body li{position:relative;padding:0 0 0 26px;margin-bottom:10px;font-size:15.5px;line-height:1.55}
.chytre-body li:before{content:"";position:absolute;left:0;top:8px;width:10px;height:10px;background:var(--red);transform:skewX(-24deg)}
@media(max-width:760px){.chytre-uvod{padding:30px 0 6px}.chytre-text{font-size:15.5px}.chytre-body li{font-size:14.5px}}

/* Zvyrazneni v horni liste: cervena od cary k care, bez siluety. */
/* Vybraná i najetá položka vypadají stejně — červená plocha přes celou
   výšku lišty.

   Roman 17. 8. 2026: „když najedeš na ty ikonky Plyn a další, objeví se
   velký fialový piktogram, to je špatně, musí to být jen červený
   rámeček." Do té doby se po najetí vysouvala tmavě fialová karta
   (#87243d) s velkým bílým piktogramem grilu. Karta i piktogramy jsou
   pryč, včetně skriptu, který je otevíral. */
.rozcestnik a.je-aktivni,.rozcestnik a:hover{background:var(--red);color:#fff;padding-inline:12px;margin-inline:-12px}

/* Cerveny znak se siluetou pred nadpisem sekce. */
/* Silueta ve znaku je bílá a stojí uprostřed ze všech stran. Musí se to
   napsat sem: v dlaždicích má silueta tmavou barvu a dosedá na spodní
   hranu, aby grily stály na jedné zemi — tady je to jinak. */
.hlavicka-znak{flex:none;display:grid;place-items:center;width:96px;height:96px;background:var(--red)}
.hlavicka-znak svg{width:74px;height:74px;color:#fff}
@media(max-width:760px){.hlavicka-znak{width:64px;height:64px}.hlavicka-znak svg{width:50px;height:50px}}

/* ------------------------------------------------ Weber Grill Academy
   Kurzy jsou zážitek, ne další produktová karta. Proto mají vlastní tmavou
   scénu mezi inspirací a katalogem, ale drží stejný kontejner jako zbytek webu. */
.academy{padding:72px 0;background:#f4f2ef;color:#111;scroll-margin-top:88px}
.academy-vnitrek{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(380px,.65fr);align-items:stretch;max-width:1180px;background:#fff;box-shadow:0 8px 24px rgba(25,18,12,.09)}
.academy-obraz{position:relative;min-height:460px;overflow:hidden;background:#171717}
.academy-obraz:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.1);pointer-events:none}
.academy-obraz img{display:block;width:100%;height:100%;object-fit:cover;object-position:48% center}
.academy-obsah{display:flex;flex-direction:column;justify-content:center;padding:52px 46px;background:#fff;border-top:2px solid var(--red)}
.academy .sekce-kicker{margin:0 0 18px;color:var(--red);font-size:12px;letter-spacing:.14em}
.academy h2{margin:0;font-size:clamp(36px,3.1vw,50px);font-weight:800;line-height:.94;letter-spacing:-.045em;text-transform:uppercase}
.academy-uvod{max-width:42ch;margin:22px 0 26px;color:#565656;font-size:14px;line-height:1.65}
.academy-vyhody{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;margin:0;padding:18px 0;border-top:1px solid #e4e4e6;border-bottom:1px solid #e4e4e6}
.academy-vyhody li{display:block;padding:0}
.academy-vyhody b,.academy-vyhody span{display:block}.academy-vyhody b{font-size:13px}.academy-vyhody span{margin-top:3px;color:#5f5f5f;font-size:12px;line-height:1.35}
.academy-akce{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:26px}
.academy-akce a{display:inline-flex;min-height:46px;align-items:center;justify-content:center;font-size:12px;font-weight:800;text-decoration:none;transition:color .18s,background .18s,transform .18s}
.academy-primarni{gap:22px;padding:0 20px;background:#111;color:#fff}.academy-primarni:hover{background:var(--red);transform:translateY(-1px)}
.academy-telefon{min-height:auto!important;color:#555;border-bottom:1px solid #aaa}.academy-telefon:hover{color:var(--red);border-color:var(--red)}
.academy-misto{margin:15px 0 0;color:#8b8b8b;font-size:12px}
body.na-produktu .academy,
@media(max-width:980px){.academy{padding:48px 0}.academy-vnitrek{grid-template-columns:1fr}.academy-obraz{min-height:420px}.academy-obsah{padding:42px 40px}.academy h2 br{display:none}}
@media(max-width:760px){.academy{padding:28px 0}.academy-vnitrek{width:calc(100% - 24px)}.academy-obraz{min-height:260px}.academy-obsah{padding:32px 24px}.academy h2{font-size:34px}.academy-uvod{margin:18px 0 22px}.academy-vyhody{grid-template-columns:1fr;gap:10px}.academy-vyhody li{display:grid;grid-template-columns:110px 1fr}.academy-akce{display:grid;gap:14px}.academy-akce a{width:100%}.academy-telefon{width:max-content!important;justify-self:start}}

/* ------------------------------------------------ Hlavní mega menu
   Na desktopu se nabídka řad otevře bez kliknutí. Je součástí položky menu,
   takže kurzor může plynule přejet z názvu do karet a panel nezmizí. */
.hlava-hlavni{position:relative}
.rozcestnik>.nav-polozka{display:flex;align-self:stretch;align-items:stretch}
.rozcestnik>.nav-polozka>.nav-hlavni{display:flex;align-items:center;position:relative;font-weight:700;white-space:nowrap}
.mega-menu{position:absolute;z-index:40;top:100%;left:0;width:100%;padding:0;background:#fff;border-top:1px solid #ddd;border-bottom:1px solid #bbb;box-shadow:0 8px 18px rgba(0,0,0,.10);opacity:0;visibility:hidden;transform:translateY(-7px);pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s}
.nav-polozka:hover>.mega-menu,.nav-polozka:focus-within>.mega-menu{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition-delay:0s}
/* Panel nesmí nic pustit ven: zvětšené planchy rostou od spodní hrany
   nahoru a vylévaly se přes lištu, kde svým bílým pozadím přemalovaly
   "Grily na uhlí" i kus "Plynu". Panel je nad lištou, takže vyhrál obrázek. */
.mega-menu{overflow:hidden}
.mega-vnitrek{display:grid;grid-template-columns:225px minmax(0,1fr);gap:44px;min-height:285px;padding-top:28px;padding-bottom:30px}
/* Tam, kde jsou fotky zvětšené, si panel nahoře udělá místo, aby se
   nemusely ořezávat. */
.mega-uvod{display:flex;flex-direction:column;align-items:flex-start;padding:9px 30px 4px 0;border-right:1px solid #ddd}
.mega-uvod>span{color:var(--red);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.mega-uvod>strong{margin-top:14px;font-size:24px;line-height:1.12;letter-spacing:-.03em}
.rozcestnik .mega-uvod>a{display:inline-block;margin-top:auto;padding:0 0 5px!important;border-bottom:2px solid var(--red);color:#111!important;background:none!important;font-size:12px!important;font-weight:800;text-decoration:none;white-space:normal}
.rozcestnik .mega-uvod>a:hover{color:var(--red)!important;margin-inline:0!important}
/* Roman 11. 9. 2026: „musí tam být v nabídce všechno." Menu s šesti nebo
   sedmi skupinami potřebuje užší sloupce, jinak by se karty zalomily. */
/* Roman 13. 9. 2026: „všechny sekce musí mít stejnou mezeru mezi texty
   a stejnou mezeru mezi grily, symetrie přes celý Weber." Každá sekce
   proto stojí na stejné mřížce sedmi sloupců — sekce s méně grily je jen
   kratší, sloupec i mezera jsou všude stejné. */
.mega-karty.mega-sest,.mega-karty.mega-sedm,.mega-karty.mega-tri,.mega-karty.mega-dve{grid-template-columns:repeat(7,minmax(0,1fr))}
.mega-karty b{font-size:13px}
.mega-karty span{font-size:11px}
@media(max-width:1100px){.mega-karty.mega-sest,.mega-karty.mega-sedm,.mega-karty.mega-tri,.mega-karty.mega-dve{grid-template-columns:repeat(4,minmax(0,1fr))}}
.mega-karty{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start}
/* Pelety mají v nabídce dva grily. Roman 23. 8. 2026: „do sekce pelety
   nepatří ten poslední obrázek" — byly to brikety a zapalovací komín,
   tedy uhlí, ne pelety. */

.rozcestnik .mega-karty>a{display:block!important;min-width:0;padding:0!important;margin:0!important;color:#111!important;background:none!important;text-align:center;text-decoration:none}
.mega-karty img{width:100%;height:170px;padding:8px;object-fit:contain;object-position:center bottom;transition:transform .2s ease}
.mega-karty a:hover img,.mega-karty a:focus img{transform:scale(1.045)}
/* Planchy v nabídce. Roman 24. 8. 2026: větší planchy mají být vidět větší
   (GPD 76 na 155 %, GP 71 na 142 % — hlídá test). Roman 13. 9. 2026: stejné
   mezery jako ve všech sekcích. Obojí platí zároveň: fotka roste od spodku
   spodku fotky (8 px nad spodkem rámu, kde končí odsazení), takže mezera
   k názvu i řádek názvů zůstávají stejné, a výchozí šířka je menší, aby
   zvětšená fotka zůstala ve svém sloupci a nezasáhla do sousedního. Poměry
   šířek jsou stejné jako na stránce planch (#plancha-mrizka). */
.mega-karty .plancha-gpd76 img{transform:scale(1.55);transform-origin:center calc(100% - 8px);width:64%}
.mega-karty .plancha-gpd76:hover img,.mega-karty .plancha-gpd76:focus img{transform:scale(1.60)}
.mega-karty .plancha-gp71 img{transform:scale(1.42);transform-origin:center calc(100% - 8px);width:66%}
.mega-karty .plancha-gp71:hover img,.mega-karty .plancha-gp71:focus img{transform:scale(1.47)}
.mega-karty a[href*="typ=plancha"]:not(.plancha-gpd76):not(.plancha-gp71) img{width:57%}
.mega-karty b,.mega-karty span{display:block}
/* Delší názvy (Plancha Slate GPD 76 cm) se ve stejně širokém sloupci zalomí,
   místo aby přejely do sousední karty. */
.rozcestnik .mega-karty b,.rozcestnik .mega-karty span{white-space:normal;overflow-wrap:break-word}.mega-karty b{margin-top:6px;font-size:14px}.mega-karty span{margin-top:3px;color:#5f5f5f;font-size:12px}
.rozcestnik .mega-karty>a:after{content:"";display:block;width:0;height:2px;margin:9px auto 0;background:var(--red);transition:width .2s ease}
.rozcestnik .mega-karty>a:hover:after,.rozcestnik .mega-karty>a:focus:after{width:34px}
@media(max-width:1100px) and (min-width:761px){.mega-vnitrek{grid-template-columns:190px 1fr;gap:24px}.mega-karty{gap:12px}.mega-karty img{height:140px}.mega-uvod>strong{font-size:20px}}
@media(max-width:760px){.rozcestnik>.nav-polozka{display:none}.mega-menu{display:none}}

/* ------------------------------------------------ Vlastní průvodce výběrem
   Princip postupných otázek je známý z Grillfinderu, obsah i vizuální řešení
   jsou naše a výsledky vedou jen do skutečných kategorií našeho katalogu. */
.grillfinder{padding:88px 0;background:#111;color:#fff;scroll-margin-top:84px}
body.na-produktu .grillfinder,
.finder-obal{display:grid;grid-template-columns:minmax(250px,.34fr) minmax(0,.66fr);gap:78px;max-width:1180px}
.finder-uvod{align-self:start;position:sticky;top:25px;padding-top:8px}
.finder-uvod .sekce-kicker{color:#ff4248}.finder-uvod h2{margin:12px 0 22px;font-size:clamp(36px,4vw,56px);line-height:.96;letter-spacing:-.05em;text-transform:uppercase}.finder-uvod>p:not(.sekce-kicker){max-width:34ch;color:#aaa;line-height:1.65}
.finder-prubeh{display:grid;grid-template-columns:28px 1fr 20px;align-items:center;gap:12px;margin-top:45px;font-size:12px;font-weight:800}.finder-prubeh i{height:2px;overflow:hidden;background:#3b3b3b}.finder-prubeh b{display:block;width:25%;height:100%;background:var(--red);transition:width .3s ease}.finder-prubeh small{color:#5f5f5f}
.finder-panel{min-height:430px}.finder-otazka{margin:0 0 26px;font-size:clamp(24px,2.5vw,35px);font-weight:800;letter-spacing:-.025em}.finder-volby{display:grid;gap:10px}.finder-volby button{display:grid;grid-template-columns:42px minmax(160px,.48fr) minmax(190px,1fr) 30px;align-items:center;gap:18px;min-height:92px;padding:16px 20px;border:1px solid #3b3b3b;background:#181818;color:#fff;text-align:left;transition:border-color .18s,background .18s,transform .18s}.finder-volby button:hover,.finder-volby button:focus-visible{border-color:var(--red);background:#202020;transform:translateX(4px)}.finder-volby button>span{color:#4a4a4a;font-size:12px;font-weight:800}.finder-volby button>b{font-size:16px}.finder-volby button>small{color:#999;font-size:12px}.finder-volby button>i{color:var(--red);font-size:22px;font-style:normal}
.finder-vysledek>h3{margin:10px 0 28px;font-size:34px;text-transform:uppercase}.finder-karty{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.finder-karty>a{position:relative;min-width:0;padding:18px;background:#fff;color:#111;text-decoration:none}.finder-karty em{position:absolute;top:14px;left:14px;z-index:1;padding:5px 7px;background:#111;color:#fff;font-size:12px;font-style:normal;font-weight:800;text-transform:uppercase}.finder-karty>a:first-child em{background:var(--red)}.finder-karty img{width:100%;height:155px;object-fit:contain}.finder-karty span,.finder-karty b,.finder-karty strong{display:block}.finder-karty span{color:#5f5f5f;font-size:12px;text-transform:uppercase}.finder-karty b{margin-top:3px;font-size:21px}.finder-karty p{min-height:78px;margin:12px 0;color:#4a4a4a;font-size:12px;line-height:1.5}.finder-karty strong{padding-top:11px;border-top:1px solid #ddd;color:var(--red);font-size:12px}.finder-znovu{margin-top:20px;padding:0 0 5px;border-bottom:1px solid #5f5f5f;background:transparent;color:#bbb;font-size:12px;font-weight:800}
@media(max-width:900px){.finder-obal{grid-template-columns:1fr;gap:42px}.finder-uvod{position:static}.finder-uvod h2 br{display:none}.finder-prubeh{margin-top:28px}}
@media(max-width:760px){.grillfinder{padding:55px 0}.finder-obal{width:calc(100% - 28px)}.finder-uvod h2{font-size:36px}.finder-volby button{grid-template-columns:28px 1fr 22px;min-height:82px;padding:14px 12px}.finder-volby button>small{grid-column:2}.finder-volby button>i{grid-column:3;grid-row:1/3}.finder-karty{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.finder-karty>a{flex:0 0 82%;scroll-snap-align:start}.finder-karty p{min-height:0}}

/* Hlavni kategorie patri do jedine kompaktni linky. Pri uzsim okne se
   nezalomi pod sebe, ale zustanou vedle sebe a cela linka se posouva. */
.rozcesti-sekce{padding:40px 0 48px}
.rozcesti-sekce h2{margin:0 0 24px;font-size:24px}
.rozcesti-sekce .rozcesti{display:flex;grid-template-columns:none;flex-wrap:nowrap;gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin}
.rozcesti-sekce .dlazdice{flex:0 0 calc((100% - 84px)/8);min-width:118px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start}
.rozcesti-sekce .dlazdice-obraz{height:205px;padding:2px}

.rozcesti-sekce .dlazdice b{margin:9px 0 3px;font-size:14px;line-height:1.2}
.rozcesti-sekce .dlazdice>span:not(.dlazdice-obraz){font-size:12px}
@media(max-width:760px){.rozcesti-sekce{padding:34px 0 40px}.rozcesti-sekce h2{font-size:20px}.rozcesti-sekce .rozcesti{gap:10px}.rozcesti-sekce .dlazdice{flex:0 0 150px;min-width:150px}.rozcesti-sekce .dlazdice-obraz{height:170px;padding:2px}}

/* Logo v banneru je jen decentni podpis fotografie, ne dalsi nadpis. */
.hero-logo-odkaz{position:absolute;z-index:2;right:22px;bottom:16px;width:138px}
.hero-logo{width:100%;height:auto;margin:0;filter:drop-shadow(0 2px 9px rgba(0,0,0,.8))}
@media(max-width:760px){.hero-logo-odkaz{right:12px;bottom:10px;width:96px}.hero-logo{width:100%;margin:0}}

.weber-film{padding:0 0 62px;background:#111;color:#fff}/* Roman 10. 9. 2026: „video má být od kraje ke kraji." Vnitřek nosí třídu
   .obal, která ho drží na šířce obsahu — tady se z ní roztahuje na celé
   okno. Pravidlo musí stát mimo media query, jinak platí jen na mobilu. */
.weber-film .weber-film-vnitrek{padding:0;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)}/* Popis videa ve žlutém pruhu se špičkou dolů — Roman 10. 9. 2026:
   „velké video zakomponované do žluté šipky, ve které byl popis videa."
   Špička je stejná jako u pruhu s rezervací kurzů, jen míří na video. *//* Roman 10. 9. 2026: „nápis Weber Forever 2026 musí být z červené z loga
   na bílé." Pruh je proto bílý a nápis nese červenou ze značky. */
/* Nižší pruh — Roman 10. 9. 2026: „trochu ten žlutý pruh zúž, aby nebyl
   tak vysoký." */
/* Roman 10. 9. 2026: „bílý pruh musí být žlutý." Pruh i špička pod ním jsou teď jedna žlutá plocha; nápis zůstává červený ze značky, na žluté drží. */.weber-film-pruh{position:relative;padding:16px 0 18px;background:#ffd200;color:#111;text-align:center}/* Roman 10. 9. 2026: „šipka má být žlutá." Pruh zůstává bílý kvůli
   červenému nápisu, špička pod ním je žlutá jako u rezervace kurzů. */
.weber-film-pruh:after{content:"";position:absolute;left:50%;bottom:-26px;width:84px;height:28px;transform:translateX(-50%);background:#ffd200;clip-path:polygon(50% 100%,100% 0,0 0);z-index:1}.weber-film-pruh .sekce-kicker{margin:0 0 4px;color:var(--red,#e4002b);opacity:1}.weber-film-pruh h2{margin:0;color:#111;font-size:clamp(23px,2.9vw,38px);text-transform:uppercase;letter-spacing:-.01em}.weber-film-popis{max-width:640px;margin:6px auto 0;color:#3a3a3e;font-size:14px;line-height:1.45}.weber-film-vnitrek{padding-top:0}
.weber-film[hidden]{display:none}
/* Hlavička se přestěhovala do žlutého pruhu nad videem, takže tady už
   není co stavět vedle sebe — video dostane celou šířku obsahu. */
.weber-film-vnitrek{display:block}
.weber-film-hlavicka{align-self:center}.weber-film .sekce-kicker{color:#ff3038}.weber-film h2{margin:8px 0 0;font-size:30px;line-height:1.05;text-transform:uppercase}
/* Roman 10. 9. 2026: „video musí být součást webu." Kontejner drží poměr
   16:9 a snímek ho vyplní, takže kolem nezůstávají černé pruhy. */
.weber-film video{display:block;width:100%;aspect-ratio:16/9;max-height:82vh;object-fit:cover;background:#000}
/* Video patri jen na titulku a ke kategorii, kde ho Roman chce; jinde by
   prekazelo. Selektor musi byt uplny — utrzeny konec by shodil i
   nasledujici media query. */
body.na-produktu .weber-film,.stranka-uhli .weber-film,.stranka-elektrina .weber-film,.stranka-plancha .weber-film,.stranka-pelety .weber-film,.stranka-prislusenstvi .weber-film,.stranka-chytre .weber-film,.stranka-works .weber-film{display:none}
@media(max-width:760px){.weber-film{padding:36px 0 42px}.weber-film .weber-film-vnitrek{padding-top:0}.weber-film h2{font-size:24px}}

/* Promo karty navazuji tesneji na predchozi obsah. */
.weber-promos{padding:22px 0 16px}
@media(max-width:760px){.weber-promos{padding:18px 0 14px}}

/* Produktove karty maji vzdy shodne osy: obrazek, nazev, kod, dostupnost,
   cena a tlacitko. Delka nazvu uz nesmi posouvat spodni cast karty. */
.karta{display:grid;grid-template-rows:285px 1fr;height:100%}
.karta .obrazek{overflow:hidden}
/* Roman 9. 9. 2026: „obrázky jsou moc velké, je potřeba je upravit, aby
   byly na velikost okna." Vysoké fotky (dózy koření, mlýnky) přetékaly
   z rámečku a ořezávaly se — snímek 370x829 se vykresloval 297x665
   v okně vysokém 285. Na vině je `min-height:auto`, které mřížka dává
   svým položkám: max-height je pak nemá čím zmenšit. */
.karta .obrazek img{width:auto;height:auto;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.karta .telo{display:grid;grid-template-rows:66px 20px 20px 44px 56px;padding-top:13px}
.karta h3{display:-webkit-box;height:66px;min-height:0;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.karta .cislo,.karta .dostupnost{margin:0;align-self:start}
.karta .cena-radek{min-height:0;align-self:center}
.karta .koupit{height:48px;margin:8px 0 0;align-self:start}
@media(max-width:760px){.karta{grid-template-rows:185px 1fr}.karta .telo{grid-template-rows:58px 16px 18px 34px 52px}.karta h3{height:58px;min-height:0}.karta .koupit{height:44px}}

/* Kazda odbocka ma stejny, vzdy viditelny navrat na hlavni plochu katalogu. */
/* Odkaz zpět. Roman 23. 8. 2026: „ošklivé, uprav ten čudlík zpět, všude
   stejný." Byl to text s červenou šipkou v šedém kroužku a na každé
   stránce trochu jinak — na katalogu jeden, na kurzu druhý, v průvodci
   třetí. Kroužek je pryč; zůstala šipka a text ve stejné typografii, jakou
   mají ostatní odkazy na webu (verzálky, tučné, červená při najetí). */
.navrat-hlavni{display:flex;align-items:center;gap:8px;width:min(calc(100% - 40px),var(--max));margin:16px auto 0;color:#222;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;transition:color .16s}
.navrat-hlavni:hover{color:var(--red)}
.navrat-hlavni[hidden]{display:none}
.navrat-hlavni span{color:var(--red);font-size:17px;line-height:1}
.navrat-hlavni:hover span,.navrat-hlavni:focus-visible span{border-color:var(--red);background:var(--red);color:#fff}
@media(max-width:760px){.navrat-hlavni{width:calc(100% - 24px);margin-top:10px;font-size:12px}.navrat-hlavni span{font-size:15px}}

/* Grill Academy: skutecne kurzy jako zazitek, ne anonymni produktovy vypis. */
/* Spicka zluteho pruhu konci presne tam, kde stavala bila linka pod
   kurzy -- 28 px pod kartami. Roman 8. 9. 2026: "posun to tou sipkou k te
   bile tenke lince a pak tu linku dej pryc," a po prvnim pokusu: "je moc
   nahore, rekl jsem k bile care, co tam byla."

   Odsazeni je proto 56 px: 28 px na misto, kde linka byla, a dalsich 28 px
   je vyska spicky, ktera nad pruh vystupuje. Kdo zmeni vysku spicky
   (.rezervace:before), musi upravit i tohle cislo. */
.academy{padding:34px 0 56px;background:#171717;color:#fff}
.academy-hlavicka{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:30px}
.academy-hlavicka .sekce-kicker{margin:0 0 14px;color:#ff3038;font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.academy-hlavicka h2{margin:0;color:#fff;font-size:clamp(38px,4vw,58px);line-height:.92;letter-spacing:-.045em;text-transform:uppercase}
.academy-hlavicka>div:last-child>p{max-width:56ch;margin:0 0 15px;color:#c7c7c7;font-size:14px;line-height:1.65}
.academy-hlavicka ul{display:flex;flex-wrap:wrap;gap:7px 18px;margin:0;padding:0;list-style:none;color:#929292;font-size:12px}
.academy-hlavicka li:before{content:'✓';margin-right:7px;color:#ff3038;font-weight:900}
.academy-kurzy{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.academy-kurz{display:grid;grid-template-rows:220px 1fr;min-width:0;background:#fff;color:#111;overflow:hidden}
.academy-kurz-obraz{display:block;overflow:hidden;background:#292929}
.academy-kurz-obraz img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.academy-kurz:hover .academy-kurz-obraz img{transform:scale(1.035);filter:contrast(1.04)}
.academy-kurz-telo{display:grid;grid-template-rows:18px 40px 1fr 36px;min-height:210px;padding:19px 20px 17px;border-top:2px solid var(--red)}
.academy-kurz-telo>span{color:#5f5f5f;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.academy-kurz h3{margin:2px 0 0;font-size:25px;line-height:1;letter-spacing:-.03em}
.academy-kurz p{margin:9px 0 14px;color:#5d5d5d;font-size:12px;line-height:1.55}
.academy-kurz-telo>div{display:flex;align-items:end;justify-content:space-between;gap:10px;border-top:1px solid #e2e2e2;padding-top:11px}
.academy-kurz strong{font-size:16px;white-space:nowrap}.academy-kurz-telo a{color:var(--red);font-size:12px;font-weight:900;text-decoration:none;text-transform:uppercase;white-space:nowrap}
.academy-pata{display:flex;justify-content:space-between;align-items:center;margin-top:28px;padding-top:22px;border-top:1px solid #343434}
/* Linka pod kurzy zustala i po presunu textu do zluteho pruhu -- delila
   nabidku od zbytku sekce a bez ni by karty koncily naprazdno. */

/* ------------------------------------------------------ zluty pruh

   Rezervace kurzu byla dris drobnym radkem pod kartami a splyvala s
   tmavou sekci. Ted je z ni pruh pres celou sirku okna, ktery zaroven
   oddeli kurzy od tmave sceny Searwoodu. */
/* Cely pruh je jedna zluta, vcetne spicky nad nim -- prechod delal ze
   spicky jiny odstin nez z pruhu a bylo videt, kde jedno konci a druhe
   zacina. Roman 8. 9. 2026: "sjednot sipku a barvu, ať je to celé žluté." */
/* Roman 11. 9. 2026: „ten žlutý rámeček všude posunout níž, aby od grilu,
   co je nad ním, byl trochu prostor." Nad pruhem bylo 57 px, teď je jich 100. */
.rezervace{position:relative;margin-top:44px;padding:clamp(18px,2.4vh,30px) 0;background:#ffd200;color:#111;text-align:center}
/* Mezera pod akademií navazuje černou na kurzy, i kolem žluté špičky. */
body:not(.stranka-plyn,.stranka-uhli,.stranka-elektrina,.stranka-plancha,.stranka-pelety,.stranka-prislusenstvi,.stranka-chytre,.stranka-works) .academy + .rezervace{box-shadow:0 -44px 0 #171717}
/* Spicka na horni hrane pruhu. Konci kousek pod linkou, ktera uzavira
   nabidku kurzu -- ukazuje z ni dolu na cislo, kam volat. */
.rezervace:before{content:"";position:absolute;left:50%;top:-28px;width:84px;height:30px;
  transform:translateX(-50%);background:#ffd200;clip-path:polygon(50% 0,100% 100%,0 100%)}
.rezervace-vnitrek{position:relative;z-index:1;display:grid;justify-items:center;gap:8px}
.rezervace-popis{margin:0;color:#4a3f1c;font-size:12px;line-height:1.45}
.rezervace-vyzva{margin:0;font-size:clamp(24px,2.9vw,38px);font-weight:900;line-height:1;letter-spacing:-.025em;text-transform:uppercase}
.rezervace-odkaz{display:inline-flex;min-height:46px;align-items:center;margin-top:6px;padding:0 28px;background:#111;color:#fff;font-size:13px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;transition:background .18s,transform .18s}
.rezervace-odkaz:hover{background:var(--red);transform:translateY(-1px)}
@media(max-width:760px){
  .rezervace{padding:18px 0}
  /* Na uzkem okne by prase lezlo pod text, tak zustane jen pruh. */
    .rezervace:before{width:64px;height:24px;top:-22px}
  .rezervace-vyzva{font-size:24px}
  .rezervace-odkaz{width:min(320px,100%);justify-content:center}
}
.academy-pata p{margin:0;color:#999;font-size:12px}.academy-pata a{display:inline-flex;min-height:42px;align-items:center;padding:0 17px;border:1px solid #555;color:#fff;font-size:12px;font-weight:900;text-decoration:none}.academy-pata a:hover{border-color:var(--red);background:var(--red)}
/* Nabidka ma ted jen BASIC, BBQ, TOP a HIGHLIFE. Ostatni karty zustavaji
   zachovane pro pripadne pozdejsi vraceni, ale zakaznik je nevidi. */
.academy-kurz:nth-child(4),.academy-kurz:nth-child(5),.academy-kurz:nth-child(6),.academy-kurz:nth-child(8){display:none}
@media(max-width:1050px){.academy-kurzy{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-kurz{grid-template-rows:260px 1fr}}
@media(max-width:760px){.academy{padding:48px 0}.academy-hlavicka{grid-template-columns:1fr;gap:22px;width:calc(100% - 24px);margin-bottom:28px}.academy-hlavicka h2{font-size:38px}.academy-hlavicka h2 br{display:none}.academy-hlavicka ul{display:grid}.academy-kurzy{display:flex;width:100%;padding:0 12px;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory}.academy-kurz{flex:0 0 82%;grid-template-rows:230px 1fr;scroll-snap-align:center}.academy-kurz-telo{min-height:205px}.academy-pata{width:calc(100% - 24px);align-items:flex-start;gap:14px;flex-direction:column}.academy-pata a{width:100%;justify-content:center}}

/* Stránka jednoho druhu zboží schová domovské bloky.

   Roman 23. 8. 2026: „když rozklikneš příslušenství, je tam pod ním
   vlastně home stránka; má tam být sekce s příslušenstvím jako u grilů."
   Pravidlo bylo vypsané ručně pro každou stránku krát každý blok — přes
   devět set znaků v jednom selektoru — a na příslušenství se v něm
   zapomnělo. Takhle je to jeden zápis: přibude-li další druh zboží,
   dopíše se jeho třída na jedno místo. */
body:is(.stranka-plyn,.stranka-uhli,.stranka-elektrina,.stranka-plancha,.stranka-pelety,.stranka-prislusenstvi,.stranka-chytre,.stranka-works)
 :is(.hero,.rozcesti-sekce,.weber-promos,.pas,.proc,.duvera,.rady-sekce,.academy,.grillfinder,.weber-film){display:none}

/* Historie značky nad patičkou. Stejný blok jako na stránce venkovních
   kuchyní, proto i stejné třídy — ať vypadá na obou místech stejně. */
.vk-kicker{margin:0 0 10px;color:var(--red);text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.12em}
.vk-historie{padding:60px 0 66px;background:#fff;border-top:1px solid #e3e0dc}
.vk-historie-vnitrek{display:grid;grid-template-columns:.7fr 1.3fr;gap:56px}
.vk-historie h2{margin:0;font-size:30px}
.vk-historie-text{columns:2;column-gap:42px}
.vk-historie-text p{margin:0 0 14px;color:#555;font-size:15px;line-height:1.65;break-inside:avoid}
.vk-historie-text p:last-child{margin-bottom:0}
@media(max-width:900px){.vk-historie-vnitrek{grid-template-columns:1fr;gap:30px}.vk-historie-text{columns:1}}
@media(max-width:760px){.vk-historie{padding:38px 0 42px}}

/* Logo v rohu pasu misto nadpisku uprostred, kde se ztracelo ve fotce. */

@media(max-width:760px){}

/* ---------------------------------------- grily ve skutečném poměru velikostí

   Roman 17. 8. 2026: „srovnáš správně všechny velikosti grilů — už jsme
   to měli, zase se to ztratilo."

   Neztratilo se to celé: skript i tabulka ROZMERY_SKUPIN ve zbozi.js
   posílají skutečné rozměry grilu v centimetrech (--rada-sirka a
   --rada-vyska, na rozcestnících --gril-sirka a --gril-vyska), jenže
   je nikdo nečetl. Obrázek proto vyplnil celý rámeček a kotel se
   57 cm přerostl Summit se 190 cm.

   Měřítko je jedno pro celý web: nejširší gril v nabídce (Summit FS38X,
   190 cm) zabere celou šířku dlaždice, ostatní poměrnou část. Výšku
   nedopočítáváme z obrázku, ale ze skutečné výšky grilu — jinak by
   měřítko platilo jen na šířku a vysoký úzký kotel by zase vyrostl. */

.dlazdice-obraz.je-meritko,
.plyn-obraz{ align-items:end }

.dlazdice-obraz.je-meritko img{
  /* Podíl posílá skript (podilRady ve zbozi.js) — zploštěné měřítko, aby
     se kotle v dlaždici neztrácely. Bez něj se spočítá postaru. */
  width:calc(var(--rada-podil, calc(var(--rada-sirka) / 190 * 100)) * 1%);
  height:auto; max-height:100%;
  aspect-ratio:var(--rada-sirka) / var(--rada-vyska);
  object-fit:contain;
}

.plyn-obraz[style*="--gril-sirka"]{ height:auto; min-height:var(--vyska-obrazu,165px) }
.plyn-obraz[style*="--gril-sirka"] img{
  width:calc(var(--gril-sirka) / 190 * 100%);
  height:auto; max-height:none;
  aspect-ratio:var(--gril-sirka) / var(--gril-vyska);
  object-fit:contain;
}

/* Pojistka pro skupinu, u které rozměr neznáme. Bez ní vyplní obrázek
   celý rámeček a vyjde jako největší kus v nabídce — přesně to dělalo
   „Ostatní grily", kde je jediná položka: ohniště za 6 499 Kč. Rozměr
   se nevymýšlí, jen se drží pod velikostí nejširšího grilu. */
.dlazdice-obraz:not(.je-meritko) img{ max-width:58%; max-height:58% }

/* Elektřina měla dlaždice zvětšené na 84 %. Platilo to, dokud se grily
   kreslily „přes celou dlaždici"; se skutečným měřítkem by to přebíjelo
   rozměry, tak se to pro ně vypíná. */
/* Elektrické řady mají na rozcestníku stejně vysoké fotografie jako
   v horní nabídce. Rozměry výrobku nesmějí zmenšovat Q a Pulse.
   Omezení na tento rozcestník ponechává kolo na titulce beze změny. */
#elektrina-mrizka .plyn-obraz{
  height:var(--vyska-obrazu,180px);min-height:0;
}
#elektrina-mrizka .plyn-obraz img,
#elektrina-mrizka .plyn-obraz[style*="--gril-sirka"] img{
  width:100%;height:100%;max-width:100%;max-height:100%;
  aspect-ratio:auto;object-fit:contain;object-position:center bottom;
}

/* Skupina bez známého rozměru (elektrický Q 1400 — Weber ho už nemá na
   webu; venkovní kuchyně, která ani není jeden model). Rozměr se
   nevymýšlí, jen se hlídá, aby taková dlaždice nepřerostla nejvyšší gril
   v nabídce. Šířka zůstává podle snímku, protože kuchyně opravdu široká
   je. */
.plyn-obraz:not([style*="--gril-sirka"]) img{
  height:auto; width:auto; max-width:100%; max-height:var(--vyska-obrazu,165px);
}

/* Stridani dvou banneru v pasu. Roman 24. 8. 2026 poslal novy banner
   Spirit: "aby se ty dva banery stridaly". Genesis je vychozi, Spirit se
   pres nej prolne a zase ustoupi. Obe fotky maji stejny ram, takze se
   nepohne ani ramecek, ani logo. */
.pas:before,.pas:after{content:"";position:absolute;z-index:0;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat}
.pas:before{background-image:url('/assets/weber/vecer-genesis-logo.jpg')}
.pas:after{background-image:url('/assets/weber/spirit-banner.jpg');opacity:0;animation:pas-stridani 18s ease-in-out infinite}
.pas>*{position:relative;z-index:1}
@keyframes pas-stridani{0%,6%{opacity:0}17%,44%{opacity:1}55%,100%{opacity:0}}
/* Kdo ma v systemu vypnute animace, uvidi jen prvni banner. */
@media(prefers-reduced-motion:reduce){.pas:after{animation:none;opacity:0}}

@keyframes pas-napis{0%,6%{opacity:1}17%,44%{opacity:0}55%,100%{opacity:1}}
@media(prefers-reduced-motion:reduce){.pas-vnitrek{animation:none;opacity:1}}
/* Nad grilem neni cerny podklad, cteni proto drzi stin. */
.pas h2,.pas p{text-shadow:0 2px 14px rgba(0,0,0,.85),0 1px 3px rgba(0,0,0,.7)}
@media(max-width:760px){.pas-vnitrek{margin:8px;padding:5% 18px 0}}

/* Uzsi a mensi nadpis: vejde se mezi logo a gril a stoji presne uprostred
   sirky, mimo levy roh, kde je logo. */
.pas h2{max-width:620px;margin-inline:auto;font-size:clamp(24px,2.6vw,34px)}
.pas p{max-width:520px;margin-inline:auto;font-size:clamp(13px,1.15vw,16px)}
@media(max-width:760px){.pas h2{font-size:22px}.pas p{font-size:13px}}

/* ------------------------------------------------ Lišta na užším okně
   Názvy v liště se nesmí zmáčknout pod svou šířku (proto flex:none výše) —
   jinak přes ně přeteče podbarvení sousední položky a "Elektřina" zmizí
   pod červenou "Planchou". Aby se do okna vešly i tak, ubírají se nejdřív
   mezery a nakonec věci, které nejsou na rozcestník potřeba. */
@media(max-width:1360px){
  .hlava-vnitrek{gap:26px}
  .rozcestnik{gap:22px}
 
}
@media(max-width:1180px){
  .hlava-vnitrek{gap:18px}
  .rozcestnik{gap:14px}
  .rozcestnik a{font-size:12px}
  .rozcestnik a.je-aktivni,.rozcestnik a:hover{padding-inline:8px;margin-inline:-8px}
  .meny{display:none}
}

/* Zbozi v pasu kategorii smi byt vetsi nez v dlazdicich rad. Pojistka
   nize drzi obrazek na 58 %, aby gril bez znameho rozmeru nevysel jako
   nejvetsi kus v nabidce — v pasu kategorii ale zadne mereni neni a
   58 % nechavalo kolem produktu zbytecne moc prazdna. */
.rozcesti-sekce .dlazdice-obraz:not(.je-meritko) img{max-width:calc(80% * var(--doladeni,1));max-height:calc(80% * var(--doladeni,1))}

/* Strom kategorii jede s obsahem. Bez toho zustal nahore u prvni skupiny
   a po par obrazovkach byl vlevo jen prazdny sloupec pres cely katalog —
   zakaznik nemel cim prepnout kategorii, aniz by se vratil uplne nahoru
   (Roman 8. 9. 2026: „chybi levej strom, kde je?"). */
@media(min-width:761px){
  .katalog>.obal>.ovladani{
    position:sticky;
    top:12px;
    align-self:start;
    max-height:calc(100vh - 24px);
    overflow-y:auto;
    overscroll-behavior:contain;
    /* Posuvnik sloupce se neukazuje. Chrome na Windows kresli i „tenky"
       posuvnik jako sedy pruh a mezi filtry a zbozim tak vznikla svisla
       cara pres celou vysku katalogu -- objevila se pokazde, kdyz obsah
       narostl natolik, ze sloupec zacal rolovat (Roman 8. 9. 2026: „cerna
       cara mezi sloupcem vlevo a obrazkama dat pryc, je tam po refreshi").
       Rolovani kolecka i klavesnice zustava. */
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .katalog>.obal>.ovladani::-webkit-scrollbar{width:0;height:0;display:none}
}

/* ---------------------------------------------------------- Searwood

   Misto stridajicich se banneru Genesis/Spirit stoji na katalogu novy
   peletovy gril. Roman 8. 9. 2026 ukazal, jak to ma vypadat na
   traeger.com: sekce si vezme celou obrazovku, nejdriv je videt jen
   text a jak clovek roluje, gril vyjede zespoda pres text az doprostred.

   Delaji to dva dily. Jeviste je vyssi nez okno a dava rolovani prostor;
   ramec uvnitr se v nem prilepi (`sticky`) a drzi celou obrazovku, takze
   se scena nehne, dokud gril nedojede. Jak daleko je, meri zbozi.js a
   zapisuje sem --postup od 0 do 1.

   Vychozi hodnota je 1: bez JavaScriptu se scena ukaze rovnou hotova. */
.searwood{--postup:1;position:relative;background:linear-gradient(180deg,#232323,#2f2f2f 60%,#282828);color:#fff}
/* Jeviste bylo 230vh: gril dojel a pak zustalo pul obrazovky cerne, nez se
   scena pustila dal. Roman 8. 9. 2026: "je tam moc velka prodleva a cerne
   mrtve misto." 150vh staci na celou cestu grilu a prazdno je pryc. */
/* 124vh: o 8 vh (asi 2 cm na běžném monitoru) níž než dřív. Roman
   8. 9. 2026: „posuň o 2 cm palety nahoru a všechno, co je pod nima."
   Scéna je kratší, takže nabídka pelet i zbytek stránky vyjede výš. */
/* Roman 9. 9. 2026: „není tam ten efekt postupného vylézání, je to nic
   a najednou hup a je tam gril." Scéna byla po zkrácení tak krátká, že
   na celý pohyb zbývalo jen 108 px rolování — proto ten skok. Delší
   jeviště dává grilu dráhu, po které je vidět, jak stoupá. */
.searwood-jeviste{position:relative;height:190vh}
.searwood-ramec{position:sticky;top:0;height:100vh;display:grid;justify-items:center;align-content:start;overflow:hidden;padding-top:clamp(6px,1.4vh,20px)}
/* Roman 9. 9. 2026: "prostě to posuň výš." Text drželo dole vnitřní
   odsazení 99 px, které si nese obecná trida .obal. Prepsat ho jde jen
   silnejsim vyberem — samotna .searwood-uvod ma stejnou vahu jako .obal
   a v poradi prohrava. */
/* Roman 9. 9. 2026: "to je moc, trošku dolů, někde mezi tím, jak to
   bylo a jak to je teď." Původně 99 px z .obal, po prvním posunu 10 —
   54 je střed mezi tím. */
/* Roman 9. 9. 2026: „jde text, pak text leze nahoru, ale gril jde úplně
   zespoda, kde není vůbec vidět, rychleji nahoru než jde ten text pod ním,
   tím pádem vznikne efekt, že ten gril přišel zespoda nad ten text."

   Text proto stoupá taky, ale jen o pětinu obrazovky, zatímco gril urazí
   celou její výšku — pětkrát rychleji. Do té doby stojí gril pod spodní
   hranou okna a není po něm ani stopy. */
.searwood .searwood-uvod{padding-top:54px;
  /* Text stojí, dokud gril nevyjede zpod hrany okna, a teprve pak se dá
     do pohybu — jinak by odjel nahoru dřív, než by bylo co předjíždět. */
  transform:translateY(min(0px, calc((var(--postup) - 0.45)*-26vh)))}

/* Text stoji uprostred obrazovky a gril mu vyjizdi pres nej. Aby zustal
   citelny, dokud je sam, ztraci se az s prijizdejicim grilem. */
/* Zhava stopa kurzoru. Lezi pod textem i grilem, aby zustaly citelne,
   a `screen` ji nechá svítit do tmavého podkladu jako uhlíky. */
.searwood-stopa{position:absolute;inset:0;z-index:0;pointer-events:none;mix-blend-mode:screen}

/* Text stoji v horni tretine, ne uprostred -- gril mu pak vyjizdi pres
   nej a nezakryje ho hned prvnim pohybem. */
.searwood-uvod{position:relative;z-index:1;max-width:900px;padding-top:clamp(48px,11vh,120px);text-align:center;
  opacity:calc(1 - var(--postup)*.72);transition:opacity .1s linear}
/* Cervena je jedna jedina, firemni (--red). Kicker mel vlastni svetlejsi
   odstin a vedle loga i podtrzeni pusobil vybledle. */
.searwood-kicker{margin:0 0 10px;color:var(--red);text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:900}
.searwood h2{margin:0;font-size:clamp(30px,5vw,68px);line-height:1;text-transform:uppercase;letter-spacing:-.025em}
.searwood h2:after{content:"";display:block;width:300px;max-width:56%;height:6px;margin:18px auto;background:var(--red);transform:skewX(-28deg)}
.searwood-odkaz{display:inline-block;margin-top:22px;padding:13px 22px;border:1px solid #8d8d8d;color:#fff;text-decoration:none;text-transform:uppercase;font-size:13px;font-weight:900;letter-spacing:.04em}
.searwood-odkaz:hover{background:var(--red);border-color:var(--red)}

/* Gril. Na zacatku stoji pod spodni hranou obrazovky, na konci uprostred.
   Meri se na vysku okna, aby se na sirokem monitoru neroztahl pres celou
   scenu a na uzkem neprisel o strechu. */
.searwood-gril{position:absolute;left:50%;top:38%;z-index:2;height:min(62vh,560px);width:auto;max-width:92%;
  transform:translate(-50%,calc(-50% + (1 - var(--postup-gril,var(--postup)))*76vh));
  filter:drop-shadow(0 30px 50px rgba(0,0,0,.6))}

/* Pelety. Kazda ma v HTML svoje misto (--x, --y), smer rozletu (--dx,
   --dy), otoceni a velikost. Rozsypou se, az kdyz gril dojede. */
/* Pelety jedou nahoru spolecne s grilem -- vysypou se zpod nej, tak jak
   to ma predloha. Rozlet do stran je jejich vlastni. */
.searwood-pelety{position:absolute;inset:0;z-index:3;pointer-events:none;
  transform:translateY(calc((1 - var(--postup))*58vh))}
.searwood-pelety i{position:absolute;left:var(--x);top:var(--y);width:calc(16px*var(--m));height:calc(8px*var(--m));border-radius:4px;
  background:linear-gradient(160deg,#a5794a,#6c4726 62%,#4e3119);box-shadow:0 2px 4px rgba(0,0,0,.45);
  opacity:calc(var(--postup)*2 - .55);
  transform:translate(calc(var(--postup)*var(--dx)),calc(var(--postup)*var(--dy))) rotate(var(--r))}

/* Logo Weber v levem HORNIM rohu -- Roman 8. 9. 2026: "logo ma byt nahore,
   ne dole." Objevi se az v druhe polovine cesty, kdyz uz gril vyjizdi. Logo je vyriznute z firemniho
   banneru a cerne pozadi z nej je odmaskovane, takze v tmave scene
   zustane jen ramecek a znak. */
.searwood-logo{position:absolute;z-index:4;left:clamp(14px,4vw,54px);top:clamp(14px,4vh,42px);
  width:min(186px,24vw);height:auto;
  /* Roman 9. 9. 2026: "potřebuji, aby to logo vylézalo dřív a bylo vidět
     dřív." Dřív naskakovalo až v polovině scény (postup 0,5); teď je
     vidět od pětiny a plné od poloviny. */
  opacity:calc(var(--postup-gril,var(--postup))*4.2 - 0.32);
  transform:translateY(calc((1 - var(--postup-gril,var(--postup)))*64px))}

/* Nabidka pelet lezi tesne pod scenou -- mezi grilem a kartami nema byt
   pruh tmy. Roman 8. 9. 2026: "ramecek s peletami posun vys." */
/* Roman 9. 9. 2026: "text Dřevěné pelety a všechno co je pod ním posuň
   výš ke grilu, mezera stejně velká jako je mezi textem a bannerem."
   Pod grilem zbývala spodní část přilepeného rámce jako prázdná plocha;
   nabídka se proto do ní vtahuje záporným odsazením. */
.searwood-nabidka{margin-top:-29vh;position:relative;z-index:3;padding:6px 0 56px}
/* Jen nadpis sekce, ne nazvy zbozi v kartach. Dokud tu stalo prosté h3,
   bralo si to i `.karta h3`: nazvy pelet se psaly verzalkami a na dva radky
   se uz nevesly, takze koncily useknute uprostred slova. */
.searwood-nabidka > .obal > h3{margin:0;font-size:26px;text-transform:uppercase}
.searwood-nabidka-uvod{margin:8px 0 24px;color:#cfcfcf;font-size:14px}
/* Karty zbozi jsou stavene na bilou stranku, tady stoji na tmavem
   podkladu -- proto dostanou vlastni svetlou desku. Deska obklopuje celou
   kartu vcetne tlacitka a ma stejny ramecek jako karty v katalogu dole,
   aby to byla tataz karta, jen na tmavem pozadi. */
.searwood-nabidka .karta{padding:14px 14px 16px;border:1px solid #ddd;background:#fff;color:var(--ink)}
.searwood-nabidka .karta .obrazek{height:250px;border:0}
.searwood-nabidka .karta h3{min-height:40px;font-size:14px}
/* Pelet muze byt v katalogu tri i pet -- karty se rozlozi podle toho,
   kolik jich prijde, at v rade nezustane prazdne misto. */
.searwood-nabidka .mrizka{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}

@media(max-width:760px){
  .searwood-jeviste{height:165vh}
  .searwood h2{font-size:30px}
    .searwood-gril{height:auto;width:96%;transform:translate(-50%,calc(-50% + (1 - var(--postup-gril,var(--postup)))*96vh))}
  .searwood-pelety{transform:translateY(calc((1 - var(--postup-gril,var(--postup)))*96vh))}
  .searwood-logo{width:120px}
  .searwood-nabidka{padding:4px 0 40px}
  .searwood-nabidka h3{font-size:21px}
}

/* Kdo ma v systemu vypnute animace, nema se na co divat pri rolovani:
   jeviste se slozi do bezne sekce, text zustane citelny a gril stoji
   pod nim. */
@media(prefers-reduced-motion:reduce){
  .searwood-jeviste{height:auto}
  .searwood-ramec{position:static;height:auto;display:block;padding:56px 0 0}
  .searwood-uvod{opacity:1;margin-inline:auto}
  .searwood-pelety{display:none}
  .searwood-logo{position:static;margin:24px auto 0;display:block;opacity:1;transform:none}
  .searwood-gril{position:static;transform:none;height:auto;width:min(620px,86%);margin:28px auto 0;display:block}
}

/* Vsechny grily pod prehledem rad. Mensi dlazdice nez u rad — jde o vypis,
   ne o rozcestnik, a ma se ho vejit hodne. */
/* Kolo grilů přes celou obrazovku. Roman 9. 9. 2026: „kolo patří místo
   všech grilů, které vedeme, a to kolo musí být přes celou obrazovku."
   Stavba je stejná jako úvod /grily, odkud si ho vybral. */
/* Sekce sedí uvnitř obalu se šířkou obsahu, ale kolo má být přes celou
   obrazovku — proto se roztáhne na šířku okna. */
.vsechny-grily{position:relative;height:900px;min-height:900px;width:100vw;margin:0 0 0 calc(50% - 50vw);display:grid;place-items:center;overflow:hidden;background:#f3f3f4}.vsechny-grily-kolo{position:absolute;inset:0;z-index:0;animation:vsechny-kolo 250s linear infinite}@keyframes vsechny-kolo{from{rotate:0deg}to{rotate:360deg}}/* Stejná strana jako mají grily v mřížce na /grily — Roman 10. 9. 2026:
   „když je v kole na začátku a po rozkliknutí, má být stejná."
   Vzorec drží web/grily.js: 12 % šířky okna, nejméně 110 a nejvíc 190 px. */
.vsechny-gril{position:absolute;left:50%;top:50%;width:calc(clamp(110px,12vw,190px) * var(--gf-mira-rada,1));height:calc(clamp(110px,12vw,190px) * var(--gf-mira-rada,1));padding:0;border:0;background:transparent;cursor:pointer;transform:translate(-50%,-50%) rotate(var(--uhel)) translate(var(--polomer)) rotate(-95deg)}/* Bez vnitřního okraje. Roman 10. 9. 2026: „nemůžou mít stejnou, koukni
   se na ten rozdíl." Rámeček měl v obou místech 180 px, jenže tady se
   z něj devět procent ukrajovalo na okraj, takže gril vycházel o pětinu
   menší než v mřížce na /grily. */
.vsechny-gril img{width:100%;height:100%;object-fit:contain;transition:transform .2s}.vsechny-gril:hover img{transform:scale(1.08)}/* Střed drží nadpis; závoj pod ním nechává grily kolem plné. */.vsechny-grily-stred{position:relative;z-index:1;max-width:430px;padding:24px 34px;text-align:center;background:none}.vsechny-grily-stred h3,.vsechny-grily-stred p{text-shadow:0 0 7px #f3f3f4,0 0 14px #f3f3f4,0 0 22px #f3f3f4}.vsechny-grily-znak{display:block;width:clamp(104px,10vw,146px);height:auto;margin:0 auto 16px}.vsechny-grily-stred h3{margin:0 0 7px;font-size:clamp(19px,2.1vw,28px);font-weight:400;letter-spacing:-.015em}.vsechny-grily-stred p{margin:0 0 16px;color:#5f5f5f;font-size:13px}/* Roman 10. 9. 2026: „Start nemůže furt svítit.“ Uprostřed kola má být klid — tlačítko jen naznačí obrys a rozsvítí se, až na něj člověk najede. */.vsechny-grily-odkaz{display:inline-flex;align-items:center;justify-content:center;min-width:clamp(87px,8.4vw,123px);padding:10px 20px;border:1px solid rgba(22,22,26,.3);border-radius:7px;background:transparent;color:#16161a;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;transition:background .15s,border-color .15s}.vsechny-grily-odkaz:hover,.vsechny-grily-odkaz:focus,.vsechny-grily-odkaz:active{border-color:var(--red);background:var(--red);color:#fff}@media(prefers-reduced-motion:reduce){.vsechny-grily-kolo{animation:none}}@media(max-width:760px){.vsechny-grily{height:82vh;min-height:460px}.vsechny-gril{width:clamp(72px,20vw,110px);height:clamp(72px,20vw,110px)}}
.vsechny-gril:hover b{color:var(--red)}
@media(max-width:760px){
  .vsechny-grily{margin-top:0;padding-top:0}
  .vsechny-grily-mrizka{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:18px 10px}
  .vsechny-gril img{height:84px}
}

/* Poptavka u zbozi, ktere neni skladem. Misto tlacitka Koupit, ktere by
   u vyprodaneho kusu jen matlo. Roman 8. 9. 2026 chtel omluvu a moznost
   napsat si o nej — a lepe graficky, nez to mel na ukazce. */
.poptavka{margin-top:20px;border:1px solid #e2ddd7;border-radius:12px;background:var(--warm);overflow:hidden}
.poptavka-hlava{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:16px 18px;border-bottom:1px solid #e6e1db;background:#fff}
.poptavka-znak{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:var(--red);color:#fff;font-size:15px;font-weight:900;line-height:1}
.poptavka-hlava b{display:block;font-size:15px}
.poptavka-hlava p{margin:5px 0 0;color:#5f5f5f;font-size:13px;line-height:1.5}
.poptavka-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 18px 18px}
.poptavka-form label{display:block;min-width:0}
.poptavka-form label span{display:block;margin-bottom:5px;color:#4a4a4a;font-size:12px;font-weight:700}
.poptavka-form label i{color:#8a8a8a;font-style:normal;font-weight:400}
.poptavka-form input{width:100%;height:44px;padding:0 12px;border:1px solid #ccc;border-radius:8px;background:#fff;font:inherit;font-size:14px}
.poptavka-form input:focus{border-color:var(--red);outline:2px solid rgba(224,24,32,.16);outline-offset:1px}
.poptavka-vzkaz{grid-column:1 / -1}
.poptavka-odeslat{grid-column:1 / -1;min-height:48px;border:0;border-radius:8px;background:var(--red);color:#fff;font-size:14px;font-weight:800;cursor:pointer;transition:background .18s}
.poptavka-odeslat:hover:not(:disabled){background:#c90008}
.poptavka-odeslat:disabled{opacity:.6;cursor:default}
.poptavka-stav{grid-column:1 / -1;margin:0;min-height:18px;font-size:13px;font-weight:700}
.poptavka-stav.je-hotovo{color:#287a3b}
.poptavka-stav.je-chyba{color:var(--red)}
@media(max-width:600px){
  .poptavka-form{grid-template-columns:1fr}
}

/* Tichá videa patří dovnitř příslušné kategorie, nikdy na titulní plochu. */
.kategorie-video{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:clamp(30px,6vw,76px);align-items:center;margin-top:44px;padding-top:38px;border-top:1px solid var(--line)}
.kategorie-video>*{min-width:0}
.kategorie-video video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#111;border-radius:14px;box-shadow:0 20px 44px rgba(0,0,0,.16)}
.kategorie-video h2{margin:0 0 14px;font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.035em}
.kategorie-video p{max-width:48ch;margin:0;color:#4b4b4b;font-size:16px;line-height:1.65}
.kategorie-video:is(.kategorie-video-postup,.kategorie-video-funkce,.kategorie-video-searwood,.kategorie-video-plancha,.kategorie-video-chytre,.kategorie-video-works,.kategorie-video-elektrina,.kategorie-video-prislusenstvi){display:block;width:100vw;margin:44px 0 0 calc(50% - 50vw);padding-top:0;border-top:1px solid var(--line)}
.kategorie-video:is(.kategorie-video-postup,.kategorie-video-funkce,.kategorie-video-searwood,.kategorie-video-plancha,.kategorie-video-chytre,.kategorie-video-works,.kategorie-video-elektrina,.kategorie-video-prislusenstvi) .kategorie-video-obraz{position:relative;overflow:hidden;background:#111}
.kategorie-video:is(.kategorie-video-postup,.kategorie-video-funkce,.kategorie-video-searwood,.kategorie-video-plancha,.kategorie-video-chytre,.kategorie-video-works,.kategorie-video-elektrina,.kategorie-video-prislusenstvi) .kategorie-video-obraz:after{content:"";position:absolute;inset:0;pointer-events:none;background:rgba(242,239,233,.13)}
.kategorie-video:is(.kategorie-video-postup,.kategorie-video-funkce,.kategorie-video-searwood,.kategorie-video-plancha,.kategorie-video-chytre,.kategorie-video-works,.kategorie-video-elektrina,.kategorie-video-prislusenstvi) video{aspect-ratio:16/7;border-radius:0;box-shadow:none;filter:brightness(1.05) contrast(.94) saturate(.92)}
body.stranka-plyn #plyn-rozcestnik,body.stranka-uhli #uhli-rozcestnik,body.stranka-elektrina #elektrina-rozcestnik,body.stranka-plancha #plancha-rozcestnik,body.stranka-pelety #pelety-rozcestnik,body.stranka-prislusenstvi #prislusenstvi-rozcestnik,body.stranka-chytre #chytre-uvod,body.stranka-works #works-kolekce{padding-bottom:0}
.rezervace-puvodni{display:grid;justify-items:center;gap:8px}
.rezervace-video-text,.rezervace-searwood-text,.rezervace-uhli-text,.rezervace-plancha-text,.rezervace-chytre-text,.rezervace-works-text,.rezervace-elektrina-text,.rezervace-prislusenstvi-text{display:none}
/* Roman 11. 9. 2026: „vem info z weber.com ke každé sekci a to důležité dej
   do žlutého rámečku pod každou sekci." Text o Spiritu se přestěhoval na
   stránku řady; tady stojí to podstatné o plynu jako palivu. */
body.stranka-plyn .rezervace-puvodni{display:none}
body.stranka-plyn .rezervace-video-text{display:block}
body.stranka-uhli .rezervace-puvodni{display:none}
body.stranka-uhli .rezervace-uhli-text{display:block}
body.stranka-pelety .rezervace-puvodni{display:none}
body.stranka-pelety .rezervace-searwood-text{display:block}
body:is(.stranka-plancha,.stranka-chytre,.stranka-works,.stranka-elektrina,.stranka-prislusenstvi) .rezervace-puvodni{display:none}
body.stranka-plancha .rezervace-plancha-text,body.stranka-chytre .rezervace-chytre-text,body.stranka-works .rezervace-works-text,body.stranka-elektrina .rezervace-elektrina-text,body.stranka-prislusenstvi .rezervace-prislusenstvi-text{display:block}
body:is(.stranka-plyn,.stranka-uhli,.stranka-elektrina,.stranka-plancha,.stranka-pelety,.stranka-prislusenstvi,.stranka-chytre,.stranka-works) .rezervace-vnitrek h2{margin:0 0 8px;font-size:clamp(27px,3vw,40px);line-height:1.05;letter-spacing:-.035em}
/* Roman 11. 9. 2026: „ten žlutý rámeček všude posunout níž, aby od grilu, co je
   nad ním, byl trochu prostor." Pruh dřív navázal těsně na předchozí sekci. */
/* Pod každou kategorií zůstává stejná velká bílá plocha před žlutým pásem. */
body:is(.stranka-plyn,.stranka-uhli,.stranka-elektrina,.stranka-plancha,.stranka-pelety,.stranka-prislusenstvi,.stranka-chytre,.stranka-works) .rezervace{margin-top:clamp(180px,18vw,260px)}

/* Na užších obrazovkách řada pokračuje vodorovně, grily se nezmenšují
   na nečitelné miniatury a kuchyně nespadne pod ně. */
.plyn-mrizka .plyn-dlazdice b{display:block;min-height:2.8em;line-height:1.4}
@media(max-width:1100px){
  .plyn-mrizka{display:flex;align-items:flex-end;gap:24px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px}
  .plyn-mrizka .plyn-dlazdice{flex:0 0 190px;min-width:0;scroll-snap-align:start}
}
body:is(.stranka-plyn,.stranka-uhli,.stranka-elektrina,.stranka-plancha,.stranka-pelety,.stranka-prislusenstvi,.stranka-chytre,.stranka-works) .rezervace:before{top:-29px;height:30px}
/* Roman 11. 9. 2026: „rámeček nesmíš zvětšit, takže text uprav; může být
   dlouhý jako rámeček od loga po eura." Na jeden řádek se text vejde nad
   1400 px; pod tím by za rámeček vylezl a stránka by šla posunout do
   strany, proto se tam radši zalomí. */
body:is(.stranka-plyn,.stranka-uhli,.stranka-elektrina,.stranka-plancha,.stranka-pelety,.stranka-prislusenstvi,.stranka-chytre,.stranka-works) .rezervace-vnitrek>div>p{max-width:none;margin:0 auto;color:#4a3f1c;font-size:16px;line-height:1.55;white-space:normal;text-wrap:balance}
@media(min-width:1400px){body:is(.stranka-plyn,.stranka-uhli,.stranka-elektrina,.stranka-plancha,.stranka-pelety,.stranka-prislusenstvi,.stranka-chytre,.stranka-works) .rezervace-vnitrek>div>p{white-space:nowrap}}
@media(max-width:760px){
  .kategorie-video{grid-template-columns:1fr;gap:24px;margin-top:30px;padding-top:28px}
  .kategorie-video:is(.kategorie-video-postup,.kategorie-video-funkce,.kategorie-video-searwood,.kategorie-video-plancha,.kategorie-video-chytre,.kategorie-video-works,.kategorie-video-elektrina,.kategorie-video-prislusenstvi){margin-top:30px;padding-top:0}
  .kategorie-video:is(.kategorie-video-postup,.kategorie-video-funkce,.kategorie-video-searwood,.kategorie-video-plancha,.kategorie-video-chytre,.kategorie-video-works,.kategorie-video-elektrina,.kategorie-video-prislusenstvi) video{aspect-ratio:16/9}
  body:is(.stranka-plyn,.stranka-uhli,.stranka-elektrina,.stranka-plancha,.stranka-pelety,.stranka-prislusenstvi,.stranka-chytre,.stranka-works) .rezervace-vnitrek>div>p{white-space:normal}
}
/* Roman 13. 9. 2026 u stránky planch: „kde je ta stejná mezera mezi grilem
   a nadpisem, jak je to u uhlí." U uhlí, plynu i elektřiny začíná nejvyšší
   fotka 44 px pod čárou nadpisu. Větší planchy se ale zvětšují od spodku
   (155 % a 142 %, hlídá test) a zvětšení místo nezabírá — GPD 76 začínala
   8 px pod čárou. Rám fotky proto dostane nahoře přesně tolik místa, kolik
   zvětšení vezme; v procentech šířky dlaždice, aby to sedělo na každé šířce. */
@media(min-width:761px){#plancha-mrizka .plancha-gpd76 .plyn-obraz{padding-top:19.5%}#plancha-mrizka .plancha-gp71 .plyn-obraz{padding-top:16.5%}}
@media(max-width:760px){#plancha-mrizka .plancha-gpd76 .plyn-obraz{padding-top:13.2%}#plancha-mrizka .plancha-gp71 .plyn-obraz{padding-top:10.5%}}
