/* GarageTV – katalog firem ve stylech šablony Shop Garage / Royal Enfield Garage (GTV2-04-018, 12. 10. 2026).
   Trasy: /seznam, /mapa, profil firmy /<slug>, /firmy/<město>, /vsechny-znacky a /vsechny-znacky/<značka>.
   Načítá se jen při gtv_sablona = re (titulka/gtv/re_katalog.php). Stávající třídy katalogu přemapovává na tokeny šablony
   z /assets/re/gtv-re.css (--night, --paper, --white, --red, --ink, --line, --muted, --gutter, --nav, --fzd, --fzh).
   Žádná nová barva ani písmo: mimo tokeny jsou tu jen hodnoty, které šablona sama používá
   (#ad211c najetí na červené tlačítko, #aaa69f a #e8e4dc obrysové tlačítko, #e5e1da a #9e9a92 okraj karty, #282827 podklad fotky,
   #b9b6af a #bbb3a7 tlumený text na tmavém, #e9e3d8 světlý nadřádek, #ffffff30 linka na tmavém, #0002 a #0003 stín nabídky).
   Všechna pravidla platí jen uvnitř obalu .gtvre-kat (nebo pro prvky katalogu vkládané přímo do <body>); specificita nejvýš 0,4,0.
   Návrat: gtv_sablona jiná než re, nebo odebrat bloky GTV2-04-018 ze šablon – soubor pak nikdo nenačte. */

/* ---------- 0. Tokeny ---------- */
/* seznam.php a mapa.php ve vloženém stylu přepisují na :root tokeny šablony --ink a --muted vlastními barvami (platilo by i pro hlavičku a patičku) */
html:root{--ink:#191a1c;--muted:#625f59}
.gtvre-kat{
  --gtvk-pismo:Manrope,'Inter',Arial,sans-serif;
  /* lišta filtrů a karty (seznam.php, mapa.php) */
  --toolbar-bg:var(--white);--toolbar-bd:var(--line);--accent:var(--red);--accent-600:#ad211c;--pill:transparent;--text:var(--ink);--shadow:none;--warn:var(--red);
  /* profil firmy (detail.php) */
  --primary-color:var(--red);--secondary-color:var(--night);--dark-color:var(--night);--light-gray-color:var(--paper);--text-color:var(--ink);--light-text-color:var(--white);--border-radius:4px;
  /* tlačítko Porovnat (js/gtv-porovnani.js čte tyto proměnné) */
  --gtv-border:#aaa69f;--gtv-surface:transparent;--gtv-text:var(--ink);
  /* stránky značek (css/gtv-design.css, css/gtv-znacky.css) */
  --gtv-ink:var(--night);--gtv-asphalt:var(--night);--gtv-steel:#282827;--gtv-line-dark:#ffffff30;--gtv-bone:var(--paper);--gtv-paper:var(--white);--gtv-line-light:var(--line);
  --gtv-signal:var(--red);--gtv-signal-deep:var(--red);--gtv-accent:var(--red);--gtv-text-dark:var(--ink);--gtv-text-dark-muted:var(--muted);--gtv-text-light:var(--paper);--gtv-text-light-muted:#b9b6af;
  --gtv-font:var(--gtvk-pismo);--gtv-gutter:var(--gutter);--gtv-radius:3px;--gtv-zn-spara:#282827;
}

/* ---------- 1. Úvod stránky (re-page-intro re-dark) ---------- */
.re-site.gtvre-kat .gtvre-kat-drobky{padding-top:0;margin-bottom:26px;color:#b9b6af}
.re-site.gtvre-kat .gtvre-kat-stitky{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
/* mapa: nižší úvod, aby lišta filtrů a mapa byly vidět hned */
.re-site.gtvre-kat--mapa .gtvre-kat-uvod{padding-block:42px 34px}
.re-site.gtvre-kat--mapa .gtvre-kat-uvod h1{font-size:clamp(38px,3.334vw,64px)}
.re-site.gtvre-kat--mapa .gtvre-kat-uvod .re-lead{margin-top:18px;font-size:calc(16px + 16*var(--fzd));max-width:820px}
.re-site.gtvre-kat--mapa .gtvre-kat-stitky{margin-top:22px}

/* ---------- 2. Lišta filtrů (/seznam, /mapa) ---------- */
.gtvre-kat .list-wrap{min-height:0}
/* kontrola po nasazení N1: hlavička šablony drží jen první výšku okna a lišta filtrů pak visela 80 px pod okrajem – hlavička na stránkách s lištou filtrů odjede (jako dřív, N9) a lišta se drží úplně nahoře */
html:has(.gtvre-kat .toolbar) body .re-site .re-site-header{position:relative}
.gtvre-kat .toolbar{top:0;background:var(--white);border-bottom:1px solid var(--line);box-shadow:none}
.gtvre-kat .toolbar-inner,.gtvre-kat .advanced-inner{width:100%;max-width:none;padding-inline:var(--gutter)}
.gtvre-kat .toolbar-inner{padding-block:14px}
.gtvre-kat .toolbar svg,.gtvre-kat .list-inner svg{stroke:none}
.gtvre-kat .input,.gtvre-kat .select{height:44px;border:1px solid var(--line);border-radius:3px;background-color:var(--white);color:var(--ink);font-size:calc(13px + 13*var(--fzd))}
.gtvre-kat .button{height:44px;min-width:0;padding:10px 18px;border:1px solid transparent;border-radius:4px;font-size:calc(13px + 13*var(--fzd));font-weight:800;line-height:1.3;transition:background .18s}
.gtvre-kat .button.primary{background:var(--red);border-color:var(--red);color:var(--white)}
.gtvre-kat .button.primary:hover{background:#ad211c;border-color:#ad211c}
.gtvre-kat .button.ghost{background:transparent;border-color:#aaa69f;color:var(--ink)}
.gtvre-kat .button.ghost:hover{background:#e8e4dc}
.gtvre-kat .chip{height:44px;padding:0 16px;border:1px solid var(--line);border-radius:3px;background:transparent;font-size:calc(12px + 12*var(--fzd));font-weight:700;cursor:pointer}
.gtvre-kat .chip:hover{border-color:var(--ink)}
.gtvre-kat .chip input,.gtvre-kat .brand-grid input,.gtvre-kat .checkbox-list input,.gtvre-kat .group input[type="checkbox"]{accent-color:var(--red)}
.gtvre-kat .counter{font-size:calc(12px + 12*var(--fzd));font-weight:700;color:var(--muted)}
.gtvre-kat .badge{height:28px;padding:0 10px;border-radius:3px;background:var(--night);color:var(--white);font-weight:800}
.gtvre-kat .sorter-label{font-size:calc(12px + 12*var(--fzd));font-weight:700;color:var(--muted)}
.gtvre-kat .sort-btn{border:1px solid var(--line);border-radius:3px;background:transparent;color:var(--ink);font-size:calc(12px + 12*var(--fzd));font-weight:700}
.gtvre-kat .sort-btn:hover{border-color:var(--ink)}
.gtvre-kat .sort-btn[aria-pressed="true"]{background:var(--night);border-color:var(--night);color:var(--white)}
.gtvre-kat .sort-btn .dir,.gtvre-kat .sort-btn[aria-pressed="true"] .dir{color:inherit;opacity:.75}
.gtvre-kat .sort-btn svg{width:16px;height:16px}
.gtvre-kat .sort-btn svg path,.gtvre-kat .quick-trigger svg path{fill:currentColor}
.gtvre-kat .quick-trigger svg{width:18px;height:18px}
.gtvre-kat .quick-menu{border:1px solid var(--line);border-radius:3px;box-shadow:0 20px 40px #0002}
.gtvre-kat .brand-grid label,.gtvre-kat .checkbox-list label{color:var(--ink);font-size:calc(13px + 13*var(--fzd))}
/* rozšířené filtry */
.gtvre-kat .advanced{background:var(--white);border-bottom:1px solid var(--line);box-shadow:none}
.gtvre-kat .advanced-inner{padding-block:22px 26px}
.gtvre-kat .tab{min-height:42px;padding:10px 20px;border:1px solid var(--line);border-radius:3px;background:transparent;color:var(--ink);font-size:calc(12px + 12*var(--fzd));font-weight:700}
.gtvre-kat .tab:hover{border-color:var(--ink)}
.gtvre-kat .tab.active{background:var(--night);border-color:var(--night);color:var(--white)}
.gtvre-kat .group{border:1px solid var(--line);border-radius:6px;background:var(--white);padding:18px}
.gtvre-kat .group h4{font-size:calc(13px + 13*var(--fzd));font-weight:800;letter-spacing:0;line-height:1.3;color:var(--ink)}
.gtvre-kat .row input[type="text"],.gtvre-kat .row input[type="number"],.gtvre-kat .row select,.gtvre-kat input.row,.gtvre-kat select.row{min-height:44px;border:1px solid var(--line);border-radius:3px;background-color:var(--white);color:var(--ink);font-size:calc(13px + 13*var(--fzd))}
.gtvre-kat .toolbar :focus-visible:not(input[type="text"]),.gtvre-kat .advanced :focus-visible:not(input[type="text"]){outline:3px solid #e26438;outline-offset:2px}

/* ---------- 3. Karty firem (/seznam) ---------- */
.gtvre-kat .list-inner{padding:6px var(--gutter) 90px}
.gtvre-kat .section-block{margin:0;padding-top:54px}
.gtvre-kat .section-heading-wrapper{gap:12px;margin:0 0 34px}
.gtvre-kat .section-heading{font-size:clamp(38px,3.334vw,64px);color:var(--ink)}
.gtvre-kat .section-subheading{font-size:calc(16px + 16*var(--fzd));color:var(--muted)}
.gtvre-kat .section-subheading:empty{display:none}
.gtvre-kat .cards-grid{gap:24px}
.gtvre-kat .firm-card{background:var(--white);border:1px solid #e5e1da;border-radius:6px;box-shadow:none;transition:border-color .18s}
.gtvre-kat .firm-card:hover{transform:none;box-shadow:none;border-color:#9e9a92}
.gtvre-kat .firm-card.top-highlight{border:2px solid var(--red)}
.gtvre-kat .card-photo{background:#282827}
.gtvre-kat .firm-card:hover .card-photo img{transform:scale(1.025)}
.gtvre-kat .card-content{gap:14px;padding:22px}
.gtvre-kat .card-header{border-bottom:1px solid var(--line);padding-bottom:14px}
.gtvre-kat .card-title{font-size:calc(20px + 20*var(--fzh));line-height:1.2;letter-spacing:-.035em;color:var(--ink);overflow-wrap:anywhere;min-width:0}
.gtvre-kat .card-body{gap:10px;color:var(--muted);font-size:calc(13px + 13*var(--fzd));line-height:1.5}
.gtvre-kat .address,.gtvre-kat .card-category{align-items:flex-start;gap:8px;color:var(--muted)}
.gtvre-kat .address svg,.gtvre-kat .card-category svg{width:16px;height:16px;margin-top:2px}
.gtvre-kat .address svg path{fill:var(--muted)}
.gtvre-kat .card-category{font-size:max(12px,calc(11px + 11*var(--fzd)));font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--red)}
.gtvre-kat .card-category svg path{fill:var(--red)}
.gtvre-kat .brand-list{font-size:calc(12px + 12*var(--fzd));color:var(--muted)}
.gtvre-kat .brand-list strong{color:var(--ink)}
.gtvre-kat .brand-list a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.gtvre-kat .brand-list a:hover{color:var(--red)}
.gtvre-kat .card-footer{padding-top:6px;align-items:center;gap:10px}
.gtvre-kat .detail-icon-btn{background:var(--red);border-radius:4px;color:var(--white);transition:background .18s}
.gtvre-kat .detail-icon-btn:hover{background:#ad211c;transform:none;box-shadow:none}
.gtvre-kat .detail-icon-btn svg{fill:currentColor;stroke:none}
.gtvre-kat .no-results{padding:42px;background:var(--white);border:1px solid var(--line);border-radius:6px;box-shadow:none;color:var(--muted);font-size:calc(16px + 16*var(--fzd))}
.gtvre-kat .no-results strong{display:block;margin-bottom:8px;color:var(--ink);font-size:calc(20px + 20*var(--fzh));letter-spacing:-.035em}
.gtvre-kat .flip-ghost{border-radius:6px;box-shadow:none}

/* tlačítko Porovnat u karty a v bublině mapy (styl vkládá js/gtv-porovnani.js; tady jen tvar a barvy šablony) */
.gtvre-kat .gtv-cmp-btn{--gtv-accent:var(--night);border-radius:4px;font-size:calc(12px + 12*var(--fzd));font-weight:800}
/* lišta výběru k porovnání je vložená do <body>: podoba re-compare-dock (poloha a výpočet odstupu od chatu beze změny) */
body .gtv-cmp-bar{--gtv-accent:var(--red);--gtv-bar-bg:var(--night);font-family:Manrope,'Inter',Arial,sans-serif;border:1px solid #ffffff30;border-radius:6px;box-shadow:0 8px 40px #0003}
body .gtv-cmp-bar__go{border-radius:4px;font-weight:800}
body .gtv-cmp-bar__msg{color:#e9e3d8}

/* ---------- 4. Seznam firem a měst ze serveru (.gtv-kat: /firmy/<město>, stránka značky, výchozí obsah /seznam) ---------- */
.gtvre-kat .gtv-kat{max-width:none;margin:0;padding:0;font-family:inherit;color:inherit}
.gtvre-kat .gtv-kat h2{margin:0 0 34px;font-size:clamp(38px,3.334vw,64px);line-height:1.08;letter-spacing:-.047em;color:inherit}
.gtvre-kat .gtv-kat-list+h2{margin-top:70px}
.gtvre-kat .gtv-kat p{margin:0 0 14px;color:var(--muted)}
.gtvre-kat .gtv-kat-list{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:16px}
.gtvre-kat .gtv-kat-list li{position:relative;gap:8px;padding:22px;background:var(--white);border:1px solid #e5e1da;border-radius:6px;transition:border-color .18s}
.gtvre-kat .gtv-kat-list li:hover{border-color:#9e9a92}
.gtvre-kat .gtv-kat-list a{color:var(--ink);font-size:calc(19px + 19*var(--fzh));font-weight:700;line-height:1.25;letter-spacing:-.03em}
.gtvre-kat .gtv-kat-list a::after{content:'';position:absolute;inset:0}                    /* celá karta je odkaz */
.gtvre-kat .gtv-kat-list a:hover,.gtvre-kat .gtv-kat-list a:focus-visible{text-decoration:underline;text-underline-offset:4px}
.gtvre-kat .gtv-kat-cat{order:-1;font-size:max(12px,calc(11px + 11*var(--fzd)));font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--red)}
.gtvre-kat .gtv-kat-adr{font-size:calc(13px + 13*var(--fzd));line-height:1.5;color:var(--muted)}
.gtvre-kat .gtv-kat-cities{gap:8px}
.gtvre-kat .gtv-kat-cities li{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:10px 16px;border:1px solid var(--line);border-radius:3px;font-size:calc(12px + 12*var(--fzd));font-weight:700;line-height:1.3}
.gtvre-kat .gtv-kat-cities li:hover{border-color:var(--ink)}
.gtvre-kat .gtv-kat-cities a{color:var(--ink);text-decoration:none}
.gtvre-kat .gtv-kat-cities a::after{content:'';position:absolute;inset:0}
.gtvre-kat .gtv-kat-cities span{font-size:inherit;font-weight:500;color:var(--muted)}
.gtvre-kat .gtv-kat .gtv-kat-nav{margin:40px 0 0;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;color:var(--muted)}
.gtvre-kat .gtv-kat-nav a{color:var(--ink);font-size:calc(13px + 13*var(--fzd));font-weight:800;padding-block:8px;border-bottom:1px solid currentColor;text-decoration:none}
.gtvre-kat .gtv-kat-nav a:hover{color:var(--red)}
.gtvre-kat .list-inner .gtv-kat{padding-top:54px}

/* stránky „nenalezeno“ a „nejde načíst“ (firmy-mesto.php, vsechny-znacky.php) nemají obal šablony: podoba re-error-page */
main.gtv-kat{max-width:none;min-height:70vh;margin:0;padding:90px var(--gutter);text-align:center;font-family:Manrope,'Inter',Arial,sans-serif;line-height:1.65;color:var(--ink);background:var(--paper)}
main.gtv-kat h1{margin:0 0 24px;font-size:clamp(46px,5vw,96px);font-weight:700;line-height:1.08;letter-spacing:-.047em}
main.gtv-kat p{margin:0 0 14px;font-size:calc(16px + 16*var(--fzd));color:var(--muted)}
main.gtv-kat .gtv-kat-nav{margin-top:30px}
main.gtv-kat .gtv-kat-nav a{display:inline-block;margin:0 8px;padding-block:8px;color:var(--ink);font-size:calc(13px + 13*var(--fzd));font-weight:800;border-bottom:1px solid currentColor;text-decoration:none}
main.gtv-kat .gtv-kat-nav a:hover{color:var(--red)}
.gtvre-kat main.gtv-kat{min-height:0;padding:75px var(--gutter);text-align:left}

/* ---------- 5. Mapa (/mapa) ---------- */
.gtvre-kat #map{background:#e8e4dc;isolation:isolate} /* ovladače mapy nesmí vyčnívat přes přilepenou lištu filtrů */
.gtvre-kat .svg-marker svg{width:100%;height:100%;stroke:none}                               /* značky mapy mají vlastní výplně a obrys v SVG */
.gtvre-kat .svg-marker svg path[fill="#0078FF"]{fill:var(--red)}                               /* značka základního zápisu: modrá mimo paletu šablony -> červená; zlatá a stříbrná úroveň beze změny */
.gtvre-kat .leaflet-container{font-family:var(--gtvk-pismo)}
.gtvre-kat .leaflet-bar a{font-family:var(--gtvk-pismo)}
.gtvre-kat .leaflet-popup-content-wrapper{border-radius:6px;box-shadow:0 20px 40px #0002;color:var(--ink)}
.gtvre-kat .leaflet-popup-content svg{stroke:none}
.gtvre-kat .grouped-popup-container{font-family:var(--gtvk-pismo)}
.gtvre-kat .firm-item{border-bottom-color:var(--line)}
.gtvre-kat .firm-item-title{font-size:calc(16px + 16*var(--fzd));font-weight:700;letter-spacing:-.02em;line-height:1.25;color:var(--ink)}
.gtvre-kat .firm-item-img{border-radius:3px;background:#282827}
.gtvre-kat .firm-item-info>div{color:var(--muted)!important}                                  /* kategorie má barvu ve vloženém atributu style */
.gtvre-kat .popup-detail-btn{width:44px;height:44px;background:var(--red);border-radius:4px}
.gtvre-kat .popup-detail-btn:hover{background:#ad211c;transform:none}
.gtvre-kat .leaflet-container a.sn-btn{border-radius:4px;font-weight:800}
.gtvre-kat .map-banner{max-width:none;margin:0;padding:14px var(--gutter);border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--white);color:var(--ink);box-shadow:none;font-size:calc(13px + 13*var(--fzd))}
.gtvre-kat .map-banner b{color:var(--ink)}
.gtvre-kat .leaflet-control-layers{border-radius:3px;font-size:calc(12px + 12*var(--fzd));color:var(--ink)}

/* ---------- 6. Profil firmy (detail.php) ---------- */
.gtvre-kat--detail{background:var(--white)}
.gtvre-kat .left-column-container{background:var(--paper)}
.gtvre-kat .left-column-photo{background:#282827}
.gtvre-kat .banner-wrapper{background:var(--paper);border-top:1px solid var(--line)}
.gtvre-kat .banner-wrapper h3,.gtvre-kat .banner-nad-diskusi h3{font-size:max(12px,calc(11px + 11*var(--fzd)));font-style:normal!important;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.gtvre-kat .right-column-content{padding:65px var(--gutter) 75px clamp(30px,3.4vw,65px);background:var(--white)}
.gtvre-kat .right-column-content>h1{margin-bottom:44px;font-size:clamp(38px,3.334vw,64px);line-height:1.08;letter-spacing:-.047em;overflow-wrap:anywhere}
.gtvre-kat .firm-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 26px;font-size:max(12px,calc(11px + 11*var(--fzd)));color:var(--muted)}
.gtvre-kat .firm-breadcrumb__link{color:var(--muted);font-weight:500;text-decoration:underline;text-underline-offset:3px}
.gtvre-kat .firm-breadcrumb__link:hover{color:var(--red)}
.gtvre-kat .firm-breadcrumb__sep{margin:0;color:var(--muted)}
.gtvre-kat .content-block h2{margin-bottom:26px;padding-bottom:14px;font-size:calc(27px + 27*var(--fzh));font-weight:700;line-height:1.2;letter-spacing:-.035em}
.gtvre-kat .content-block h2::after{bottom:0;width:22px;height:2px;background:var(--red)}
.gtvre-kat .contact-block li{margin-bottom:16px;font-size:calc(14px + 14*var(--fzd));line-height:1.55}
.gtvre-kat .contact-block .icon{color:var(--red);font-size:17px;margin-right:16px;width:22px;padding-top:2px}
.gtvre-kat .contact-block a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.gtvre-kat .contact-block a:hover{color:var(--red)}
.gtvre-kat .short-description,.gtvre-kat .extended-description,.gtvre-kat .about-column .content-block>p{font-size:calc(16px + 16*var(--fzd));color:var(--muted)}
.gtvre-kat .social-links a{color:var(--ink);font-size:20px}
.gtvre-kat .social-links a:hover{color:var(--red);transform:none}
.gtvre-kat .meta-section{margin-top:34px;padding-top:26px;border-top:1px solid var(--line)}
.gtvre-kat .meta-section h3{margin-bottom:12px;font-size:max(12px,calc(11px + 11*var(--fzd)));font-weight:800;letter-spacing:.18em;text-transform:uppercase;line-height:1.4;color:var(--ink)}
.gtvre-kat .meta-section>p{color:var(--muted)!important}                                       /* poznámka o značkách má barvu ve vloženém atributu style */
.gtvre-kat .pill-list a,.gtvre-kat .pill{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 20px;border:1px solid var(--line);border-radius:3px;background:transparent;color:var(--ink);font-size:calc(12px + 12*var(--fzd));font-weight:700;line-height:1.3}
.gtvre-kat .pill-list a{text-decoration:underline;text-underline-offset:3px}
.gtvre-kat .pill-list a:hover{background:transparent;border-color:var(--ink)}
.gtvre-kat .logo-scroller{border-top:1px solid var(--line)}
.gtvre-kat [class^="dmz-"]{--radius:4px;--shadow:none;--shadow-hover:none}
.gtvre-kat [class^="dmz-"] .dmz-item{background:#282827}
.gtvre-kat [class^="dmz-"] .lightbox__close{color:var(--white)}
.gtvre-kat [class^="dmz-"] .lb-btn,.gtvre-kat [class^="dmz-"] .lb-select{background:var(--night);border-color:#ffffff30;border-radius:3px}
.gtvre-kat .social-share-section{border-top:1px solid var(--line)}
.gtvre-kat .social-share-section h3{font-size:calc(20px + 20*var(--fzh));letter-spacing:-.035em}
.gtvre-kat .social-share-buttons{gap:10px;flex-wrap:wrap}
.gtvre-kat .social-share-button{width:44px;height:44px;border:1px solid var(--line);background:var(--white);color:var(--ink);font-size:16px;box-shadow:none}
.gtvre-kat .social-share-button:hover{transform:none;background:var(--paper)}
.gtvre-kat .social-feedback{color:var(--muted)}
.gtvre-kat .odstavec-pod-diskusi{font-size:calc(15px + 15*var(--fzd));color:var(--muted)}
.gtvre-kat .odstavec-pod-diskusi strong{color:var(--ink)}
.gtvre-kat .odstavec-pod-diskusi hr{border-top-color:var(--line)!important}
.gtvre-kat .rn-head__title{font-size:calc(27px + 27*var(--fzh));font-weight:700;letter-spacing:-.035em;color:var(--ink)}
.gtvre-kat .rn-head__desc{color:var(--muted)}
.gtvre-kat .rn-card{border:1px solid #e5e1da;border-radius:6px;box-shadow:none;color:var(--ink)}
.gtvre-kat .rn-card:hover{border-color:#9e9a92}
.gtvre-kat .rn-card__img{background:#282827}
.gtvre-kat .rn-card__title{letter-spacing:-.02em}
.gtvre-kat .registration-promo{font-size:calc(14px + 14*var(--fzd));color:var(--ink)}
.gtvre-kat .registration-promo-button{display:inline-flex;align-items:center;min-height:44px;margin-left:8px;padding:10px 18px;border-radius:4px;background:var(--red);color:var(--white);font-size:calc(13px + 13*var(--fzd));font-weight:800;line-height:1.3}
.gtvre-kat .registration-promo-button:hover{background:#ad211c;transform:none}
.gtvre-kat--detail>.container{padding:90px var(--gutter)!important;min-height:60vh}

/* ---------- 7. Značky (/vsechny-znacky, /vsechny-znacky/<značka>) ---------- */
.gtvre-kat .gtv-scope{font-size:calc(16px + 16*var(--fzd));line-height:1.65}
/* úvod přehledu = re-page-intro re-dark */
.gtvre-kat .gtv-zn-hlava{padding:75px var(--gutter) 55px;gap:0;background:var(--night);color:var(--paper)}
.gtvre-kat .gtv-zn-hlava .gtv-eyebrow{gap:12px;margin-bottom:20px;font-size:max(12px,calc(11px + 11*var(--fzd)));font-weight:800;letter-spacing:.18em;color:#e9e3d8}
.gtvre-kat .gtv-eyebrow::before{width:22px}
.gtvre-kat .gtv-zn-hlava h1,.gtvre-kat .gtv-zn-znacka-uvod h1{font-size:clamp(46px,5vw,96px);font-weight:700;line-height:1.08;letter-spacing:-.047em;max-width:1100px;overflow-wrap:anywhere}
.gtvre-kat .gtv-zn-hlava p{margin-top:30px;max-width:650px;font-size:calc(20px + 20*var(--fzd));line-height:1.6;color:#bbb3a7}
.gtvre-kat .gtv-zn-hledani{margin-top:34px;min-height:47px;padding:11px 15px;font-size:max(16px,calc(13px + 13*var(--fzd)))}
.gtvre-kat .gtv-zn-hledani:focus-visible{outline:3px solid #e26438}
.gtvre-kat .gtv-zn-nadpis{padding:26px var(--gutter) 16px;font-size:max(12px,calc(11px + 11*var(--fzd)));font-weight:800;letter-spacing:.18em}
.gtvre-kat .gtv-zn-nic{font-size:calc(16px + 16*var(--fzd))}
/* stránka jedné značky */
.gtvre-kat .gtv-zn-znacka-uvod{padding:60px var(--gutter) 55px clamp(30px,3.4vw,65px);gap:18px}
.gtvre-kat .gtv-zn-znacka-uvod h1{font-size:clamp(38px,3.334vw,64px)}
.gtvre-kat .gtv-zn-znacka-uvod p{max-width:650px;font-size:calc(16px + 16*var(--fzd));line-height:1.6;color:#bbb3a7}
.gtvre-kat .gtv-zn-zpet{font-size:max(12px,calc(11px + 11*var(--fzd)));font-weight:500}
.gtvre-kat .gtv-scope.gtv-dark nav.gtv-kat-nav{display:flex;flex-wrap:wrap;gap:8px;padding:26px var(--gutter);font-size:0}     /* filtr Všechny · Prodej · Servis jako štítky; oddělovače skryté */
.gtvre-kat .gtv-scope.gtv-dark nav.gtv-kat-nav a,.gtvre-kat .gtv-scope.gtv-dark nav.gtv-kat-nav strong{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 20px;border:1px solid #ffffff30;border-radius:3px;font-size:calc(12px + 12*var(--fzd));font-weight:700;color:var(--paper);text-decoration:none}
.gtvre-kat .gtv-scope.gtv-dark nav.gtv-kat-nav a:hover{border-color:var(--paper);color:var(--paper)}
.gtvre-kat .gtv-scope.gtv-dark nav.gtv-kat-nav strong{background:var(--paper);border-color:var(--paper);color:var(--night)}
.gtvre-kat .gtv-scope.gtv-dark .gtv-kat.gtv-zn-firmy{padding:75px var(--gutter);color:var(--ink)}
.gtvre-kat .gtv-scope.gtv-dark .gtv-kat.gtv-zn-firmy>p{color:var(--muted)}
.gtvre-kat .gtv-scope.gtv-dark p.gtv-kat-nav{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0!important;padding:34px var(--gutter) 60px;color:#b9b6af}
.gtvre-kat .gtv-scope.gtv-dark p.gtv-kat-nav a{color:var(--paper);text-decoration:none}
.gtvre-kat .gtv-scope.gtv-dark p.gtv-kat-nav a:hover{color:var(--white)}
.gtvre-kat .gtv-zn-zvuk{right:auto;left:14px;bottom:14px;z-index:60;border-radius:4px;font-family:var(--gtvk-pismo);font-weight:800}    /* vlevo dole: vpravo ho překrývá chat a šipka nahoru */

/* ---------- 8. Šířky ---------- */
@media (min-width:768px){
  /* lišta filtrů drží pod hlavičkou šablony; na mobilu se neposouvá (je vyšší než polovina displeje) */
  .gtvre-kat .list-wrap .toolbar{position:sticky}
}
@media (max-width:1023px){
  .gtvre-kat .gtv-zn-hlava{padding:60px var(--gutter) 45px}
  .gtvre-kat .right-column-content{padding:50px var(--gutter) 60px}
}
@media (max-width:768px){
  .gtvre-kat .toolbar-inner,.gtvre-kat .list-inner,.gtvre-kat .advanced-inner{padding-left:var(--gutter);padding-right:var(--gutter)}
  .gtvre-kat .sorter{margin-left:0;flex-wrap:wrap;max-width:100%}
  .gtvre-kat .right-column-content>h1{margin:30px 0 26px;padding:0 var(--gutter);text-align:left;font-size:calc(37px + 37*var(--fzh))}
  .gtvre-kat .info-wrapper,.gtvre-kat .content-block{padding:0 var(--gutter)}
  .gtvre-kat .gallery-section,.gtvre-kat .diskuse-section{padding:0}
  .gtvre-kat .gallery-section h2,.gtvre-kat .diskuse-section h2,.gtvre-kat .odstavec-pod-diskusi,.gtvre-kat .banner-nad-diskusi h3{padding-inline:var(--gutter)}
  .gtvre-kat .firm-breadcrumb{padding:26px var(--gutter) 0;margin:0}
  .gtvre-kat .social-share-section{order:7;padding:34px var(--gutter)}      /* bez pořadí stálo sdílení na mobilu nad názvem firmy */
  .gtvre-kat .registration-promo{padding-inline:var(--gutter)}
}
@media (max-width:767px){
  .gtvre-kat .list-wrap .toolbar{position:static}
  .re-site.gtvre-kat .gtvre-kat-stitky{margin-top:26px;gap:8px}
  .gtvre-kat .list-inner{padding-bottom:58px}
  .gtvre-kat .section-block{padding-top:40px}
  .gtvre-kat .section-heading,.gtvre-kat .gtv-kat h2{font-size:calc(37px + 37*var(--fzh));line-height:1.09;letter-spacing:-.045em;margin-bottom:26px}
  .gtvre-kat .gtv-kat-list+h2{margin-top:52px}
  .gtvre-kat .cards-grid{gap:22px}
  .gtvre-kat .gtv-zn-hlava{padding:48px 20px 35px}
  .gtvre-kat .gtv-zn-hlava h1{font-size:calc(50px + 50*var(--fzh))}
  .gtvre-kat .gtv-zn-hlava p{margin-top:24px;font-size:calc(16px + 16*var(--fzd))}
  .gtvre-kat .gtv-zn-hlava .gtv-eyebrow,.gtvre-kat .gtv-zn-nadpis{font-size:max(12px,calc(11px + 11*var(--fzd)));letter-spacing:.14em}
  .gtvre-kat .gtv-zn-znacka-uvod{padding:40px 20px}
  .gtvre-kat .gtv-scope.gtv-dark .gtv-kat.gtv-zn-firmy{padding:58px 20px}
  .gtvre-kat .gtv-zn-zvuk{bottom:14px}
  main.gtv-kat{padding:58px 20px}
  main.gtv-kat h1{font-size:calc(40px + 40*var(--fzh))}
}
@media (prefers-reduced-motion:reduce){
  .gtvre-kat .firm-card,.gtvre-kat .gtv-kat-list li,.gtvre-kat .button,.gtvre-kat .detail-icon-btn{transition:none}
}
@media (max-width:1023px){
  /* K9 (Roman 12. 10.: pás zkrátit): na telefonu a tabletu na výšku jen nadpis a odkaz na seznam v jednom řádku, mapa má být vidět hned */
  .re-site.gtvre-kat--mapa .gtvre-kat-uvod{padding-block:14px 12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px}
  .re-site.gtvre-kat--mapa .gtvre-kat-uvod h1{font-size:clamp(26px,3.6vw,34px);line-height:1.15;margin:0}
  .re-site.gtvre-kat--mapa .gtvre-kat-uvod .re-eyebrow,.re-site.gtvre-kat--mapa .gtvre-kat-uvod .re-lead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .re-site.gtvre-kat--mapa .gtvre-kat-stitky{margin-top:0}
  .re-site.gtvre-kat--mapa .gtvre-kat-stitky .re-pill{min-height:44px;display:inline-flex;align-items:center}
}
@media (max-width:767px){
  /* kontrola po nasazení N3: zbylé texty katalogu na telefonu nejméně 12 px */
  .gtvre-kat .sort-btn .dir,.gtvre-kat .gtv-zn-jmeno,.gtvre-kat .gtv-zn-pocet{font-size:12px}
}
