/* TERMOLAB, spol. s r.o.: styly webu
   Paleta vychází z loga firmy: #ED1C22 (červená), #009ED3 (modrá ikon); doplňkové odstíny jsou v :root. */
/* Písma jsou uložená lokálně, žádný dotaz na servery třetí strany. */
/* Inter 400 latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonty/inter-latin-ext-cf3eb50f.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Inter 400 latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonty/inter-latin-f11d729b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Inter 600 latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonty/inter-latin-ext-cf3eb50f.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Inter 600 latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonty/inter-latin-f11d729b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Inter 700 latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonty/inter-latin-ext-cf3eb50f.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Inter 700 latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonty/inter-latin-f11d729b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Poppins 600 latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonty/poppins-latin-ext-cdc90db0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Poppins 600 latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonty/poppins-latin-179f97ec.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Poppins 700 latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonty/poppins-latin-ext-57566ddf.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Poppins 700 latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonty/poppins-latin-cb726212.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Poppins 800 latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonty/poppins-latin-ext-fa6536a6.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Poppins 800 latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonty/poppins-latin-6d11d743.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{
  --red:#ED1C22; --red-d:#C4121B; --red-l:#FDECEC;
  --ink:#15181D; --ink-2:#1E232A; --ink-3:#2B323B;
  --txt:#31383F; --mut:#616B75; --line:#E1E5EA; --bg:#fff; --bg-2:#F5F7F9;
  --blue:#0089C4;
  --rad:6px; --sh:0 2px 10px rgba(21,24,29,.07); --sh-2:0 10px 34px rgba(21,24,29,.13);
  --wrap:1180px; --hd:78px;
}
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:hidden;scroll-behavior:smooth;scroll-padding-top:116px;-webkit-text-size-adjust:100%}
body{margin:0;font:400 17px/1.65 Inter,"Segoe UI",Arial,sans-serif;color:var(--txt);background:var(--bg);
  -webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--red);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{font-family:Poppins,Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);line-height:1.18;margin:0 0 .5em;font-weight:700}
h1{font-size:clamp(30px,4.6vw,50px);letter-spacing:-.02em}
h2{font-size:clamp(25px,3.1vw,35px);letter-spacing:-.015em}
h3{font-size:19px;letter-spacing:-.005em}
p{margin:0 0 1em}
ul{margin:0 0 1em;padding-left:1.15em}
li{margin:.3em 0}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- hlavička ---------- */
.hd{position:sticky;top:0;z-index:900;background:#fff;border-bottom:1px solid var(--line)}
.hd-in{max-width:var(--wrap);margin:0 auto;padding:0 24px;height:var(--hd);display:flex;align-items:center;gap:22px}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{width:auto;height:42px}
.nav{margin-left:auto;display:flex;align-items:center;gap:2px}
.nav a{color:var(--ink-2);font-size:15px;font-weight:600;padding:9px 11px;border-radius:var(--rad);white-space:nowrap}
.nav a:hover{background:var(--bg-2);text-decoration:none}
.nav a.on{color:var(--red);background:var(--red-l)}
.hd-cta{display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#fff!important;
  padding:11px 17px;border-radius:var(--rad);font-weight:700;font-size:15px;white-space:nowrap}
.hd-cta:hover{background:var(--red-d);text-decoration:none}
.hd-cta svg{width:17px;height:17px;fill:currentColor}
.burger{display:none;margin-left:auto;width:46px;height:44px;border:1px solid var(--line);background:#fff;
  border-radius:var(--rad);cursor:pointer;padding:0;align-items:center;justify-content:center}
.burger span{display:block;width:22px;height:2px;background:var(--ink);position:relative}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:22px;height:2px;background:var(--ink)}
.burger span::before{top:-7px}.burger span::after{top:7px}
.scrim{display:none}

/* ---------- tlačítka ---------- */
.btn{display:inline-flex;align-items:center;gap:9px;background:var(--red);color:#fff;font-weight:700;
  font-size:16px;padding:15px 26px;border-radius:var(--rad);border:2px solid var(--red);cursor:pointer;
  transition:background .15s,border-color .15s}
.btn:hover{background:var(--red-d);border-color:var(--red-d);color:#fff;text-decoration:none}
.btn svg{width:18px;height:18px;fill:currentColor;flex:0 0 auto}
.btn-o{background:transparent;color:var(--ink);border-color:#C9CFD6}
.btn-o:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.sec-dark .btn-o,.hero .btn-o{color:#fff;border-color:rgba(255,255,255,.5)}
.sec-dark .btn-o:hover,.hero .btn-o:hover{background:#fff;border-color:#fff;color:var(--ink)}
.btn-w{background:#fff;color:var(--red);border-color:#fff}
.btn-w:hover{background:#F3F4F6;border-color:#F3F4F6;color:var(--red-d)}
.btns{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- hero ---------- */
.hero{position:relative;min-height:min(72vh,600px);display:flex;align-items:center;background:var(--ink)}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% 50%;opacity:1}
/* Dvě vrstvy: vodorovná drží text na levé, prázdné části fotky; svislá odspodu drží čitelnost na mobilu,
   kde se fotka ořízne a text jde přes ni. Fotka je komponovaná s objektem vpravo, proto smí zůstat viditelná. */
.hero::after{content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(21,24,29,.92) 0%,rgba(21,24,29,.82) 34%,rgba(21,24,29,.38) 56%,rgba(21,24,29,.05) 78%,rgba(21,24,29,0) 100%),
    linear-gradient(0deg,rgba(21,24,29,.55) 0%,rgba(21,24,29,0) 40%)}
.hero-in{position:relative;z-index:2;max-width:var(--wrap);margin:0 auto;padding:64px 24px;width:100%}
.hero h1{color:#fff;max-width:16ch;margin-bottom:18px}
.hero p{color:#DCE1E7;font-size:clamp(17px,1.9vw,20px);max-width:52ch;margin-bottom:28px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:700;letter-spacing:.11em;
  text-transform:uppercase;color:var(--red);margin-bottom:16px}
.hero .eyebrow{color:#fff;background:var(--red);padding:7px 13px;border-radius:3px}

/* ---------- pruh s čísly ---------- */
.stats{background:var(--ink-2);color:#fff}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.stat{padding:26px 20px;text-align:center;border-left:1px solid rgba(255,255,255,.12)}
.stat:first-child{border-left:0}
.stat b{display:block;font-family:Poppins,sans-serif;font-size:clamp(21px,2.4vw,28px);color:#fff;line-height:1.15}
.stat span{display:block;font-size:13.5px;color:#A9B3BE;margin-top:6px;line-height:1.4}

/* ---------- sekce ---------- */
.sec{padding:74px 0}
.sec-alt{background:var(--bg-2)}
.sec-dark{background:var(--ink);color:#C6CDD5}
.sec-dark h2,.sec-dark h3{color:#fff}
.sec-tight{padding:52px 0}
.head{max-width:64ch;margin-bottom:38px}
.head p{color:var(--mut);font-size:18px;margin:0}
.sec-dark .head p{color:#A9B3BE}

/* ---------- karty ---------- */
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--rad);padding:26px 24px;box-shadow:var(--sh);
  display:flex;flex-direction:column}
.card h3{margin-bottom:8px}
.card p{margin:0;color:var(--mut);font-size:15.5px}
.card .ico{width:44px;height:44px;border-radius:var(--rad);background:var(--red-l);display:flex;
  align-items:center;justify-content:center;margin-bottom:15px}
.card .ico svg{width:24px;height:24px;fill:var(--red)}
.card>h3:not(:last-child),.card>p:not(:last-child){margin-bottom:14px}
.card .rng{align-self:flex-start;margin-top:auto;font-weight:700;font-size:14px;color:var(--ink);
  background:var(--bg-2);border:1px solid var(--line);border-radius:3px;padding:4px 10px}
.sec-dark .card{background:var(--ink-3);border-color:rgba(255,255,255,.1);box-shadow:none}
.sec-dark .card p{color:#A9B3BE}
.sec-dark .card .ico{background:rgba(237,28,34,.18)}
.sec-dark .card .ico svg{fill:#FF6B6F}

/* ---------- split text + foto ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.split>*,.grid>*{min-width:0}
.split.rev>.sp-img{order:2}
.sp-img img{border-radius:var(--rad);width:100%;box-shadow:var(--sh-2)}
.sp-txt h2{margin-bottom:16px}
.ticks{list-style:none;padding:0;margin:0 0 22px}
.ticks li{position:relative;padding-left:30px;margin:.55em 0}
.ticks li::before{content:"";position:absolute;left:0;top:.42em;width:16px;height:16px;border-radius:50%;
  background:var(--red);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='12' fill='black'/></svg>") center/contain no-repeat}
.ticks li::after{content:"";position:absolute;left:4px;top:.72em;width:8px;height:4px;border-left:2px solid #fff;
  border-bottom:2px solid #fff;transform:rotate(-45deg)}
.sec-dark .ticks li::before{background:var(--red)}

/* ---------- značky ---------- */
.brands{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:0;margin:0;list-style:none}
.brands li{background:#fff;border:1px solid var(--line);border-radius:var(--rad);padding:20px 14px;
  text-align:center;font-family:Poppins,sans-serif;font-weight:700;font-size:17px;color:var(--ink-2)}

/* ---------- osvědčení ---------- */
.cert{display:grid;grid-template-columns:290px 1fr;gap:40px;align-items:center}
.cert-img{border:1px solid var(--line);border-radius:var(--rad);overflow:hidden;background:#fff;box-shadow:var(--sh-2);
  cursor:zoom-in}
.sec-dark .cert-img{border-color:rgba(255,255,255,.15)}

/* ---------- CTA pruh ---------- */
.cta{background:var(--red);color:#fff;padding:52px 0}
.cta h2{color:#fff;margin-bottom:10px}
.cta p{color:#FFE1E2;margin:0 0 24px;font-size:18px}
.cta .wrap{display:flex;gap:32px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.cta .btns{flex:0 0 auto}

/* ---------- drobečky ---------- */
.crumbs{background:var(--bg-2);border-bottom:1px solid var(--line);font-size:14px;color:var(--mut)}
.crumbs .wrap{padding-top:12px;padding-bottom:12px}
.crumbs a{color:var(--mut)}
.crumbs span{color:var(--ink)}

/* ---------- podstránka: intro ---------- */
.ph{background:var(--ink);color:#C6CDD5;padding:56px 0}
.ph h1{color:#fff;margin-bottom:14px;max-width:20ch}
.ph p{max-width:60ch;font-size:18px;margin:0;color:#A9B3BE}

/* ---------- formulář ---------- */
.form{background:#fff;border:1px solid var(--line);border-radius:var(--rad);padding:30px;box-shadow:var(--sh)}
.fr{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fld{display:flex;flex-direction:column;margin-bottom:18px}
.fld label{font-weight:600;font-size:14.5px;margin-bottom:6px;color:var(--ink)}
.fld input,.fld textarea,.fld select{font:400 16px/1.5 Inter,Arial,sans-serif;padding:12px 14px;
  border:1px solid #C9CFD6;border-radius:var(--rad);background:#fff;color:var(--txt);width:100%}
.fld textarea{min-height:132px;resize:vertical}
.fld input:focus,.fld textarea:focus,.fld select:focus{outline:2px solid var(--red);outline-offset:1px;border-color:var(--red)}
.note{font-size:14px;color:var(--mut)}

/* ---------- kontaktní karty ---------- */
.ci{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}
.ci .ico{flex:0 0 auto;width:40px;height:40px;border-radius:var(--rad);background:var(--red-l);display:flex;
  align-items:center;justify-content:center}
.ci .ico svg{width:20px;height:20px;fill:var(--red)}
.ci b{display:block;color:var(--ink);font-size:15px}
.ci span,.ci a{font-size:16px}

/* ---------- mapa ---------- */
.map-ph{position:relative;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--rad);
  min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
  text-align:center;padding:30px}
.map-ph p{max-width:44ch;color:var(--mut);margin:0}
.map-w iframe{width:100%;height:380px;border:0;border-radius:var(--rad);display:block}

/* ---------- lightbox ---------- */
.lb{position:fixed;inset:0;background:rgba(10,12,15,.93);z-index:1200;display:none;align-items:center;
  justify-content:center;padding:24px}
.lb.on{display:flex}
.lb img{max-width:min(96vw,880px);max-height:92vh;width:auto;border-radius:4px}
.lb button{position:absolute;top:18px;right:18px;width:46px;height:46px;border-radius:50%;border:0;
  background:rgba(255,255,255,.15);color:#fff;font-size:26px;line-height:1;cursor:pointer}

/* ---------- patička ---------- */
.ft{background:var(--ink);color:#98A2AD;font-size:15px;padding:56px 0 26px}
.ft a{color:#D3D9E0}
.ft-g{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;margin-bottom:38px}
.ft h4{color:#fff;font-size:15px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}
.ft ul{list-style:none;padding:0;margin:0}
.ft li{margin:.42em 0}
.ft-logo{height:46px;width:auto;margin-bottom:18px}
.ft-b{border-top:1px solid rgba(255,255,255,.13);padding-top:22px;font-size:13.5px;color:#7C8794;
  display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap}
.ft-b a{color:#98A2AD}

/* ---------- cookie lišta ---------- */
.cbar{position:fixed;left:16px;right:16px;bottom:16px;z-index:1100;background:#fff;border:1px solid var(--line);
  border-radius:var(--rad);box-shadow:var(--sh-2);padding:20px 22px;display:none;gap:18px;align-items:center;
  max-width:760px;margin:0 auto;flex-wrap:wrap}
.cbar.on{display:flex}
.cbar p{margin:0;font-size:14.5px;flex:1 1 320px;color:var(--txt)}
.cbar .btns{flex:0 0 auto}
.cbar .btn{padding:11px 20px;font-size:15px}

/* ---------- zpět nahoru ---------- */
.up{position:fixed;right:18px;bottom:18px;z-index:800;width:48px;height:48px;border-radius:50%;border:0;
  background:var(--ink);color:#fff;cursor:pointer;display:none;align-items:center;justify-content:center;
  box-shadow:var(--sh-2)}
.up.on{display:flex}
.up svg{width:22px;height:22px;fill:#fff}

/* ---------- právní text ---------- */
.legal{max-width:78ch}
.legal h2{font-size:23px;margin-top:36px}
.legal table{width:100%;border-collapse:collapse;font-size:15px;margin:18px 0}
.legal th,.legal td{border:1px solid var(--line);padding:11px 13px;text-align:left;vertical-align:top}
.legal th{background:var(--bg-2)}

/* ---------- responzivita ---------- */
/* navigace se musí vejít do obsahového sloupce i nad 1340 px (jinak telefon
   vystupuje o 84 px vpravo mimo osu ostatního obsahu) */
@media(min-width:1101px){
  .nav a{padding:9px 7px;font-size:14px}
  .hd-cta{padding:9px 12px;font-size:14px}
}
@media(max-width:1180px){
  .nav a{padding:8px 6px;font-size:13.5px;letter-spacing:-.01em}
  .split{gap:34px}
}
@media(max-width:1024px){
  :root{--hd:70px}
  .g4{grid-template-columns:repeat(2,1fr)}
  .brands{grid-template-columns:repeat(3,1fr)}
  .sec{padding:60px 0}
  .cert{grid-template-columns:230px 1fr;gap:28px}
}
@media(max-width:1100px){
  .nav,.hd-cta{display:none}
  .burger{display:flex}
  .hd{z-index:1000}
  body.menu .scrim{display:block;position:fixed;inset:0;background:rgba(10,12,15,.5);z-index:990}
  /* Panel menu začíná pod hlavičkou a počítá s výškou pruhu UKÁZKA (--mwbar nastavuje
     pruh, na ostrém webu chybí, proto záloha 0px). Styl pruhu posouvá selektorem
     .nav{top:22px!important} i tenhle panel, proto má top přednost. */
  body.menu .nav{display:flex;position:fixed;top:calc(var(--hd) + var(--mwbar, 0px))!important;left:0;right:0;
    background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:10px 16px 20px;
    border-bottom:1px solid var(--line);z-index:1001;
    max-height:calc(100vh - var(--hd) - var(--mwbar, 0px));overflow-y:auto;box-shadow:var(--sh-2)}
  body.menu .nav a{padding:14px 10px;font-size:17px;border-bottom:1px solid var(--line)}
  body.menu .hd-cta{display:inline-flex;position:fixed;left:16px;right:16px;justify-content:center;
    z-index:1002;margin-top:0}
  body.menu .nav .hd-cta{position:static;margin-top:14px}
  .split,.split.rev>.sp-img{grid-template-columns:1fr;order:0}
  .split{gap:26px}
  .g3{grid-template-columns:repeat(2,1fr)}
  /* tři karty ve dvou sloupcích by nechaly sirotka, třetí se roztáhne přes oba */
  .g3>:nth-child(3):last-child{grid-column:1/-1}
  .ft-g{grid-template-columns:1fr 1fr;gap:30px}
}
@media(max-width:820px){
  .stats .wrap{grid-template-columns:1fr 1fr}
  .stat{border-top:1px solid rgba(255,255,255,.12)}
  .stat:nth-child(-n+2){border-top:0}
  .stat:nth-child(odd){border-left:0}
  .cta .wrap{flex-direction:column;align-items:flex-start}
  .fr{grid-template-columns:1fr}
}
@media(max-width:700px){
  body{font-size:16.5px}
  .sec{padding:48px 0}
  .cert{grid-template-columns:1fr}
  .cert-img{max-width:280px}
  .brands{grid-template-columns:repeat(2,1fr)}
  .head{margin-bottom:28px}
  .head p{font-size:16.5px}
}
@media(max-width:620px){
  .legal table,.legal tbody,.legal tr,.legal td{display:block;width:100%}
  .legal th{display:none}
  .legal tr{border-top:1px solid var(--line);padding:6px 0}
  .legal tr:first-child{border-top:0}
  .legal td{border:0;padding:7px 13px;white-space:normal}
  .legal tr:nth-child(even){background:#FAFBFC}
  .legal td[data-l]::before{content:attr(data-l);display:block;font-size:11.5px;
    text-transform:uppercase;letter-spacing:.07em;color:var(--mut);font-weight:700;margin-bottom:2px}
  .g2,.g3{grid-template-columns:1fr}
  .ft-g{grid-template-columns:1fr;gap:26px}
  .wrap,.hd-in{padding-left:18px;padding-right:18px}
  .form{padding:22px 18px}
  .btns{gap:10px}
  /* Dvojice tlačítek: buď se obě vejdou celá na jeden řádek, nebo jdou pod sebe
     přes celou šířku, aby se popisky nelámaly na víc řádků. */
  .btns .btn{flex:1 1 auto;min-width:min(100%,max-content);justify-content:center;
    padding-left:16px;padding-right:16px;font-size:15.5px;min-height:52px;text-align:center}
  .form .btn{flex:1 1 100%}
  .cbar{left:10px;right:10px;bottom:10px;padding:16px 16px}
}
@media(max-width:480px){
  .brand img{height:34px}
  .stat{padding:20px 12px}
  .stat span{font-size:12.5px}
}
@media(max-width:380px){
  .hero-in{padding:38px 16px}
  .btn{padding:13px 18px;font-size:15px}
  .brands{grid-template-columns:1fr}
}
@media(max-height:520px) and (orientation:landscape){
  .hero{min-height:auto}
  .hero-in{padding:34px 24px}
}
@media(hover:none){
  .card:hover,.btn:hover{transform:none}
  .nav a:hover{background:transparent}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media print{.hd,.cta,.ft,.cbar,.up{display:none}}

/* ==================================================================
   ROZSAH AKREDITACE
   Komponenty stránky Akreditovaná kalibrace. Data z osvědčení ČIA 425/2026.
   ================================================================== */

.sec-h{max-width:760px;margin:0 0 34px}
.sec-h h2{margin-bottom:.35em}
.lead{font-size:19px;color:var(--mut);margin:0}
.sec-h .lead{font-size:18px}
.odkaz{background:none;border:0;color:var(--red);font:inherit;cursor:pointer;text-decoration:underline;padding:0}

/* ---------- hlavička stránky ---------- */
/* Hlavička .ph je definovaná výš (tmavý pruh) a používají ji všechny podstránky.
   Nepřebarvuje se, jen se doplní dlaždice s fakty. Přepis pozadí by nechal
   zděděné bílé h1 na světlém podkladu, tedy neviditelný nadpis. */
.ph .eyebrow{color:#FF6B6F}
.ph .lead{max-width:64ch;font-size:18px}
.ph .btn-o{color:#fff;border-color:rgba(255,255,255,.45)}
.ph .btn-o:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.ph-fakta{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:30px 0 26px}
.ph-fakta div{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.13);
  border-radius:var(--rad);padding:15px 17px}
.ph-fakta b{display:block;font-family:Poppins,Inter,sans-serif;font-size:clamp(19px,2.1vw,24px);
  color:#fff;letter-spacing:-.02em;line-height:1.15}
.ph-fakta span{display:block;margin-top:5px;font-size:13.5px;color:#A9B3BE;line-height:1.4}

/* ---------- nástroj: zvládneme vaši kalibraci ---------- */
.nastroj-sec{padding-top:52px}
.nastroj{display:grid;grid-template-columns:200px 1.2fr 1fr auto;gap:16px;align-items:start;
  background:var(--ink);border-radius:10px;padding:24px;box-shadow:var(--sh-2)}
/* všechna pole stejná výška 47 px, popisky nad nimi ve stejné výšce, nápověda až pod celým řádkem */
.nastroj-pole-akce{padding-top:26px}
.nastroj-pole{display:flex;flex-direction:column;gap:7px;min-width:0}
.nastroj-pole label{font-size:13.5px;font-weight:700;color:#C7CED9;letter-spacing:.01em;line-height:19px}
.nastroj select,.nastroj input[type=text]{height:47px;font:inherit;font-size:16px;padding:12px 13px;border-radius:var(--rad);
  border:1px solid #3A424D;background:#fff;color:var(--ink);width:100%;min-width:0}
.nastroj select:focus-visible,.nastroj input:focus-visible{outline:3px solid var(--red);outline-offset:1px}
.nastroj .napoveda{grid-column:1/-1;margin:0;font-size:12.5px;color:#8B95A0;line-height:1.4}
.nastroj-pole-akce .btn{height:47px;display:inline-flex;align-items:center;white-space:nowrap}
.nastroj-pozn{margin:16px 0 0;font-size:14px;color:var(--mut)}

.vysledek{margin-top:20px;border-radius:10px;border:1px solid var(--line);overflow:hidden;box-shadow:var(--sh)}
.vysledek .vys-hl{display:flex;align-items:flex-start;gap:13px;padding:18px 22px;font-weight:700;
  font-family:Poppins,Inter,sans-serif;font-size:19px;line-height:1.3}
.vysledek .vys-hl svg{width:24px;height:24px;flex:0 0 auto;margin-top:1px;fill:currentColor}
.vys-ano .vys-hl{background:#E9F7EF;color:#116B3B}
.vys-cast .vys-hl{background:#FFF4E2;color:#8A5200}
.vys-ne .vys-hl{background:var(--red-l);color:var(--red-d)}
.vys-telo{padding:18px 22px;background:#fff}
.vys-body{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:9px}
.vys-body li{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;padding:11px 13px;border:1px solid var(--line);
  border-radius:var(--rad);background:var(--bg-2)}
.vys-body .vb-h{font-weight:700;font-size:17px;color:var(--ink);min-width:82px}
.vys-body .vb-u{font-weight:700;color:#116B3B}
.vys-body .vb-ne{font-weight:700;color:var(--red-d)}
.vys-body .vb-kde{color:var(--mut);font-size:14.5px}
.vys-telo .btns{margin-top:16px}
.vys-pozn{margin:12px 0 0;font-size:14px;color:var(--mut)}

/* ---------- tabulka rozsahu ---------- */
.tab-ovl{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin-bottom:18px}
.tab-hledat{flex:1 1 320px;min-width:0}
.tab-hledat input{font:inherit;font-size:16px;width:100%;padding:12px 14px;border:1px solid var(--line);
  border-radius:var(--rad);background:#fff}
.tab-hledat input:focus-visible{outline:3px solid var(--red);outline-offset:1px;border-color:var(--red)}
.tab-filtr{display:flex;flex-wrap:wrap;gap:8px}
.chip{font:inherit;font-size:14.5px;font-weight:600;padding:10px 15px;border-radius:99px;cursor:pointer;
  border:1px solid var(--line);background:#fff;color:var(--ink-2)}
.chip:hover{border-color:var(--mut)}
.chip.on{background:var(--ink);border-color:var(--ink);color:#fff}

.tab-obal{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--sh)}
.tab-akr,.tab-srov{width:100%;border-collapse:collapse;font-size:15px}
.tab-akr th,.tab-srov th{text-align:left;font-family:Poppins,Inter,sans-serif;font-size:13px;font-weight:700;
  text-transform:uppercase;letter-spacing:.05em;color:var(--mut);background:var(--bg-2);
  padding:13px 15px;border-bottom:1px solid var(--line);white-space:nowrap}
.tab-akr td,.tab-srov td{padding:13px 15px;border-bottom:1px solid var(--line);vertical-align:top}
.tab-akr tr:last-child td,.tab-srov tr:last-child td{border-bottom:0}
.tab-akr tbody tr:hover{background:#FAFBFC}
.tab-akr .num{white-space:nowrap}
.tab-akr code{font:600 13.5px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--mut);
  background:var(--bg-2);padding:4px 7px;border-radius:4px}
.tab-akr .pod{display:block;color:var(--mut);font-size:14px;margin-top:2px}
.tab-akr .param{display:block;color:var(--mut);font-size:13.5px;font-weight:400;margin-top:3px}
.tab-akr abbr{text-decoration:none;border-bottom:1px dotted var(--mut);cursor:help}
.obor-tag{display:inline-block;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;
  padding:3px 7px;border-radius:4px;margin-right:7px;vertical-align:1px}
.obor-teplota{background:var(--red-l);color:var(--red-d)}
.obor-vlhkost{background:#E4F2FA;color:#00668A}
.tab-prazdno{margin:0;padding:26px 18px;text-align:center;color:var(--mut)}

.pozn-blok{margin-top:22px;padding:20px 22px;background:var(--bg-2);border-radius:10px;border:1px solid var(--line)}
.pozn-blok p{margin:0 0 12px;font-size:14.5px;line-height:1.6;color:var(--mut)}
.pozn-blok p:last-child{margin:0}
.pozn-blok b{color:var(--ink-2)}
.pozn{font-size:14.5px;color:var(--mut);margin-top:18px}

.doklad{margin-top:26px;display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:space-between;
  padding:24px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--sh)}
.doklad-txt{flex:1 1 420px}
.doklad-txt h3{margin-bottom:.4em}
.doklad-txt p{margin:0 0 .7em;font-size:15.5px;color:var(--mut)}
.doklad-txt p:last-child{margin:0}
.doklad-mla{font-size:14.5px!important}

/* ---------- vysvětlivky a návaznost ---------- */
.vysv{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.vysv article{padding:24px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--sh)}
.vysv h3{margin-bottom:.45em}
.vysv p{margin:0;color:var(--mut);font-size:16px}
.navaz{margin-top:40px;padding:28px;border-radius:10px;background:var(--ink);color:#C7CED9}
.navaz h3{color:#fff;margin-bottom:.35em}
.navaz .lead{color:#8B95A0;font-size:16px;margin-bottom:22px}
.navaz-svg{width:100%;height:auto;display:block;color:#4A545F}
.navaz-svg line{stroke:#6B7683;stroke-width:2}
.nv-krok rect{fill:#232932;stroke:#39424D;stroke-width:1.5}
.nv-krok text{fill:#fff;font:700 17px/1 Poppins,Inter,sans-serif;text-anchor:middle}
.nv-krok .nv-pod{fill:#8B95A0;font:400 12.5px/1 Inter,sans-serif}
.nv-my rect{fill:#3A1416;stroke:var(--red)}
.nv-my text{fill:#FF8A8E}
.nv-vy rect{fill:#1B2A22;stroke:#2F7A50}
.nv-vy text{fill:#7FD3A2}
.nv-popis{fill:#9AA7B4;font:400 12.5px/1 Inter,sans-serif;text-anchor:middle}

/* ---------- srovnání akreditovaná a neakreditovaná ---------- */
.tab-srov th[scope=row]{background:#fff;text-transform:none;letter-spacing:0;font-size:15px;font-weight:600;
  color:var(--ink-2);white-space:normal;font-family:Inter,sans-serif;border-bottom:1px solid var(--line)}
.tab-srov td{text-align:center;width:150px}
.tab-srov thead th:not(:first-child){text-align:center}
.ano,.ne{display:inline-block;font-size:13.5px;font-weight:700;padding:5px 12px;border-radius:99px}
.ano{background:#E9F7EF;color:#116B3B}
.ne{background:var(--bg-2);color:var(--mut)}

/* ---------- karty rozsahů na úvodce ---------- */
.card-akr .rng{margin-top:4px}
.card-akr .akr-u{margin:9px 0 11px;font-size:14px;color:var(--mut)}
.card-akr .akr-u b{color:var(--ink-2)}

/* ---------- responzivita ---------- */
@media(max-width:1024px){
  .nastroj{grid-template-columns:1fr 1fr;gap:14px}
  .nastroj-pole-akce{grid-column:1/-1;padding-top:0}
  .nastroj-pole-akce .btn{width:100%;justify-content:center}
  .ph-fakta{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  .vysv{grid-template-columns:1fr}
  /* hustá tabulka se překlápí na karty, ne na vodorovné rolování */
  .tab-obal{overflow-x:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
  .tab-akr thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .tab-akr,.tab-akr tbody,.tab-akr tr,.tab-akr td{display:block;width:auto}
  .tab-akr tr{border:1px solid var(--line);border-radius:10px;background:#fff;margin-bottom:12px;
    padding:6px 0;box-shadow:var(--sh)}
  .tab-akr tbody tr:hover{background:#fff}
  .tab-akr td{border:0;padding:7px 16px;display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
  .tab-akr td::before{content:attr(data-p);flex:0 0 132px;font-size:12.5px;font-weight:700;
    text-transform:uppercase;letter-spacing:.04em;color:var(--mut)}
  .tab-akr td:first-child{display:block;padding-top:13px;padding-bottom:11px;border-bottom:1px solid var(--line);
    margin-bottom:5px;font-size:16.5px;font-weight:600;color:var(--ink)}
  .tab-akr td:first-child::before{display:none}
  .tab-akr td:last-child{padding-bottom:13px}
  .tab-akr .pod,.tab-akr .param{margin-top:4px}
  .tab-srov td{width:auto}
}
@media(max-width:700px){
  .nastroj{grid-template-columns:1fr;padding:20px}
  .ph-fakta{gap:10px;margin:24px 0 22px}
  .ph-fakta div{padding:13px 14px}
  .doklad{padding:20px}
  .doklad .btn{width:100%;justify-content:center;text-align:center}
  .navaz{padding:22px 18px}
  .vys-hl{font-size:17px!important;padding:16px 18px!important}
  .vys-telo{padding:16px 18px}
}
@media(max-width:620px){
  /* na úzké obrazovce se místo schématu návaznosti ukáže seznam .navaz-list */
  .navaz-svg{display:none}
  .navaz-list{list-style:none;margin:0;padding:0;display:grid;gap:9px;counter-reset:nv}
  .navaz-list li{position:relative;padding:13px 15px 13px 46px;border-radius:var(--rad);
    background:#232932;border:1px solid #39424D}
  .navaz-list li::before{counter-increment:nv;content:counter(nv);position:absolute;left:14px;top:13px;
    width:21px;height:21px;border-radius:99px;background:#39424D;color:#fff;font-size:12px;font-weight:700;
    display:flex;align-items:center;justify-content:center}
  .navaz-list b{display:block;color:#fff;font-size:16px}
  .navaz-list span{display:block;margin-top:2px;color:#8B95A0;font-size:14px}
  .navaz-list li.nv-l-my{background:#3A1416;border-color:var(--red)}
  .navaz-list li.nv-l-my b{color:#FF8A8E}
  .navaz-list li.nv-l-vy{background:#1B2A22;border-color:#2F7A50}
  .navaz-list li.nv-l-vy b{color:#7FD3A2}
  .tab-filtr{width:100%}
}
@media(max-width:480px){
  .ph-fakta{grid-template-columns:repeat(2,1fr)}
  .ph-fakta b{font-size:17px}
  .ph-fakta span{font-size:12.5px}
}
@media(max-width:380px){
  .ph-fakta{grid-template-columns:1fr}
  .tab-akr td{display:block}
  .tab-akr td::before{display:block;margin-bottom:2px}
}
@media(hover:none){
  .tab-akr tbody tr:hover{background:#fff}
  .chip:hover{border-color:var(--line)}
}
.navaz-list{display:none}
.navaz-pozn{margin:14px 0 0;font-size:14px;color:#8B95A0;display:none}
@media(max-width:620px){.navaz-pozn{display:block}}

/* Srovnávací tabulka se na mobilu nepřeklápí na karty (má jen tři sloupce),
   musí si proto ponechat vlastní vodorovné rolování a umět zalomit hlavičku,
   jinak přeteče šířku stránky. */
@media(max-width:820px){
  .tab-obal-srov{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--sh)}
  .tab-srov th{white-space:normal}
  .tab-srov th,.tab-srov td{padding:11px 10px}
  .tab-srov thead th:not(:first-child){width:23%;font-size:12px}
  .tab-srov th[scope=row]{font-size:14.5px}
  .ano,.ne{padding:4px 9px;font-size:12.5px}
}
@media(max-width:420px){
  .tab-srov th,.tab-srov td{padding:10px 7px}
  .tab-srov th[scope=row]{font-size:13.5px}
}

/* Zkrácení dlouhé tabulky. Bez JS jsou vidět všechny řádky,
   třídu tab-zkraceny přidává app.js až po načtení. */
.tab-vic{margin:14px 0 0;text-align:center}
.tab-vic button{font:inherit;font-size:15px;font-weight:600;padding:12px 22px;border-radius:var(--rad);
  border:1px solid var(--line);background:#fff;color:var(--ink-2);cursor:pointer;box-shadow:var(--sh)}
.tab-vic button:hover{border-color:var(--mut)}
.tab-akr.tab-zkraceny tbody tr.tr-skryty{display:none}
@media(max-width:820px){.tab-vic button{width:100%}}


/* ---------- formulář na serveru: hlášky a past na roboty ---------- */
.hlaska-ok,.hlaska-chyba{padding:14px 16px;border-radius:var(--rad);margin:0 0 18px;font-weight:600}
.hlaska-ok{background:#E9F7EF;color:#116B3B;border:1px solid #BFE5CD}
.hlaska-chyba{background:var(--red-l);color:var(--red-d);border:1px solid #F5B5B7}
.past{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- převody a tabulky ---------- */
.pv-zalozky{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.pv-z{appearance:none;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;
  padding:9px 18px;font:600 14.5px/1 Inter,sans-serif;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.pv-z:hover{border-color:var(--red)}
.pv-z.on{background:var(--red);border-color:var(--red);color:#fff}
.pv-panel{background:#fff;border:1px solid var(--line);border-radius:var(--rad);padding:26px}
.pv-nastaveni{display:flex;flex-wrap:wrap;gap:14px;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid var(--line)}
.pv-pole{display:flex;flex-direction:column;gap:6px;flex:1 1 150px;min-width:130px}
.pv-pole label,.pv-box label{font:600 13px/1.3 Inter,sans-serif;color:var(--mut);letter-spacing:.01em}
.pv-vstup{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 12px}
.pv-vstup:focus-within{border-color:var(--red);box-shadow:0 0 0 3px rgba(237,28,34,.12)}
.pv-vstup input{border:0;outline:0;background:none;width:100%;padding:11px 0;font:600 16px/1.2 Inter,sans-serif;color:var(--ink)}
.pv-vstup span{font:600 14px/1 Inter,sans-serif;color:var(--mut);white-space:nowrap}
.pv-vstup.velky input{font-size:22px;padding:14px 0}
.pv-pole select,#pv-cidlo{border:1px solid var(--line);border-radius:10px;padding:11px 12px;font:600 15px/1 Inter,sans-serif;background:#fff;color:var(--ink)}
.pv-dvojice{display:grid;gap:16px;grid-template-columns:1fr 1fr}
.pv-trojice{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}
.pv-box{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:10px}
.pv-vys{margin:0;font:800 26px/1.15 Poppins,Inter,sans-serif;color:var(--red);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.pv-tab{width:100%;border-collapse:collapse;margin-top:24px;font-size:14.5px}
.pv-tab th,.pv-tab td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line)}
.pv-tab th{font:600 12px/1.2 Inter,sans-serif;text-transform:uppercase;letter-spacing:.07em;color:var(--mut)}
.pv-tab td.num{font-variant-numeric:tabular-nums;white-space:nowrap}
.pv-b{display:inline-block;width:26px;height:14px;border-radius:3px;margin-right:9px;vertical-align:-2px;
  border:1px solid rgba(0,0,0,.28);flex:0 0 auto}
.pv-tab-barvy td{white-space:nowrap}
.pv-pozn{margin:18px 0 0;font-size:14px;color:var(--mut);line-height:1.6}
.pv-cta{margin:26px 0 0;font-size:16px}
.pozn-prazdno{margin:0;padding:18px 20px;background:#fff;border:1px dashed var(--line);border-radius:var(--rad);color:var(--mut)}
@media(max-width:820px){
  .pv-trojice{grid-template-columns:1fr}
  .pv-dvojice{grid-template-columns:1fr}
  .pv-panel{padding:18px 14px}
  .pv-pole{min-width:120px;flex:1 1 130px}
  .pv-vys{font-size:22px}
  .pv-zalozky{gap:6px}
  .pv-z{padding:8px 13px;font-size:13.5px}
  .pv-tab-barvy{min-width:720px}
}

/* ---------- mobilní úpravy: klikací plochy ----------
   Velikost tlačítek v hlavičce a v CTA pruhu a výška klikacích ploch
   (doporučení 44 px). */
@media(max-width:620px){
  /* lišta cookies je nízká, tam tlačítka vysoká 52 px nedávají smysl */
  .cbar .btns .btn{min-height:46px}
  /* záložky převodů a filtry tabulky: pohodlný dotyk */
  .pv-z{min-height:42px;padding:10px 15px;display:inline-flex;align-items:center}
  .chip{flex:1 1 auto;text-align:center;min-height:42px;display:inline-flex;align-items:center;justify-content:center}
  .tab-vic button{min-height:48px}
  /* odkazy v patičce blíž k 44 px, ať se do nich dá trefit */
  .ft-g ul li{margin-bottom:2px}
  .ft-g ul a{display:inline-block;padding:6px 0}
  /* nadpis hlavičky podstránek na úzkém displeji nemusí mít limit 20 znaků */
  .ph h1{max-width:none}
  .ph{padding:40px 0}
  .ph p,.ph .lead{font-size:16.5px}
}
@media(max-width:480px){
  /* karty rozsahu akreditace: popisek vždy nad hodnotou, ať to nedrží
     půl řádku prázdné u krátkých hodnot a nelámalo se u dlouhých */
  .tab-akr td{display:block}
  .tab-akr td::before{display:block;margin-bottom:2px;flex-basis:auto}
}

/* Otevřené menu má přednost, lišta cookies by přes něj na mobilu ležela. */
@media(max-width:1100px){
  body.menu .cbar.on{display:none}
}
/* Karta rozsahu na mobilu: štítek oboru na vlastním řádku, ať se název
   nelomí kolem něj a všechny karty začínají stejně. */
@media(max-width:620px){
  .tab-akr td:first-child .obor-tag{display:block;width:fit-content;margin-bottom:7px}
}

/* Tabulka barev termočlánků má devět sloupců. Pravidlo .tab-obal na mobilu
   ruší vodorovné rolování (kvůli tabulce akreditace, která se překlápí na
   karty), takže by tahle tabulka přetekla šířku stránky. Na mobilu se
   proto překlápí na karty stejně jako rozsah akreditace. */
@media(max-width:620px){
  .pv-panel .tab-obal{overflow-x:visible}
  .pv-tab-barvy{min-width:0;margin-top:16px}
  .pv-tab-barvy thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .pv-tab-barvy,.pv-tab-barvy tbody,.pv-tab-barvy tr,.pv-tab-barvy td{display:block;width:auto}
  .pv-tab-barvy tr{border:1px solid var(--line);border-radius:10px;background:#fff;
    margin-bottom:12px;padding:4px 0;box-shadow:var(--sh)}
  .pv-tab-barvy td{border:0;padding:7px 14px;display:flex;gap:10px;align-items:baseline;white-space:normal;font-size:15px}
  .pv-tab-barvy td::before{content:attr(data-p);flex:0 0 100px;font-size:11.5px;font-weight:700;
    text-transform:uppercase;letter-spacing:.04em;color:var(--mut)}
  .pv-tab-barvy td:first-child{display:block;padding:11px 14px 9px;border-bottom:1px solid var(--line);
    margin-bottom:4px;font-size:17px}
  .pv-tab-barvy td:first-child::before{display:none}
  .pv-tab-barvy td:nth-child(4){border-top:1px solid var(--line);padding-top:9px;margin-top:4px}
  .pv-tab-barvy td:nth-child(7){border-top:1px solid var(--line);padding-top:9px;margin-top:4px}
  .pv-tab-barvy td:last-child{padding-bottom:11px}
  .pv-tab-barvy td.num{white-space:normal}
}
/* Na tabletu (621 až 820 px) se tabulka barev na karty ještě nepřeklápí,
   ale .tab-obal už nemá rolování kvůli tabulce akreditace. Vrátíme ho. */
@media(min-width:621px) and (max-width:820px){
  .pv-panel .tab-obal{overflow-x:auto;border:1px solid var(--line);border-radius:10px;
    background:#fff;box-shadow:var(--sh)}
}
/* Na nejužších telefonech (320 px) se dlouhý popisek lámal na tři řádky. */
@media(max-width:380px){
  .btns .btn{font-size:14.5px;padding-left:12px;padding-right:12px;letter-spacing:-.005em}
}
/* Dlouhé názvy norem (CQI-9, DIN 17052-1) se na mobilu lámaly za spojovníkem.
   Menší nadpis je udrží pohromadě a řádky vyrovná balance. */
@media(max-width:620px){
  h1{font-size:clamp(25px,6.9vw,30px)}
  .ph h1,.hero h1{text-wrap:balance}
}

/* ---------- hero na mobilu: fotka nahoře, pod ní text a tlačítka ----------
   Na úzkém displeji se text přes fotku nedá číst a z fotky zbude proužek.
   Fotka je proto samostatný blok nahoře (ořez drží pec, notebook i technika)
   a obsah leží pod ní na tmavém podkladu, bez překryvných přechodů. */
@media(max-width:700px){
  .hero{display:block;min-height:auto;align-items:stretch}
  .hero>img{position:static;width:100%;height:auto;aspect-ratio:16/10;
    object-fit:cover;object-position:94% 50%;display:block}
  .hero::after{display:none}
  .hero-in{padding:26px 18px 34px}
  .hero h1{max-width:none;margin-bottom:14px}
  .hero p{font-size:17px;margin-bottom:24px}
  /* štítek s číslem laboratoře je jen doplněk, na mobilu smí být drobný */
  .hero .eyebrow{font-size:11px;letter-spacing:.07em;padding:5px 10px;margin-bottom:14px}
  .ph .eyebrow{font-size:11.5px;letter-spacing:.08em}
}
@media(max-width:620px){
  .hero .eyebrow{font-size:9.5px;letter-spacing:.06em;padding:4px 9px}
  .ph .eyebrow{font-size:10.5px;letter-spacing:.07em}
}
/* Barevné proužky v tabulce termočlánků na mobilu větší, aby se daly odečíst. */
@media(max-width:620px){
  .pv-tab-barvy .pv-b{width:38px;height:20px;border-radius:4px;margin-right:11px;vertical-align:-4px}
}

/* Karty regionálních kontaktů: oblast jako výrazný řádek, kontakt pod ní. */
.reg-obl{font-weight:700;color:var(--ink);margin:0 0 6px}
.reg-kont{margin:0;font-size:15px;line-height:1.6;color:var(--mut)}
.reg-kont a{font-weight:600}

/* souhrnná tabulka rozsahu akreditace: varianty (typy termočlánků, podmínky) pod sebou */
.tab-akr .akr-rng{white-space:normal}
.tab-akr .akr-var{display:block}
.tab-akr .akr-var + .akr-var{margin-top:5px}
.tab-akr .akr-var b{font-weight:600;white-space:nowrap}
.tab-akr .akr-var .pod,.tab-akr .akr-var .param{display:inline;margin-top:0;font-size:13.5px}

/* ---------- termočlánky: vlastní schéma vodičů a graf rozsahů ---------- */
.tc-nadpis{font-family:Poppins,Inter,sans-serif;font-size:19px;margin:34px 0 6px}
.tc-uvod{color:var(--mut);font-size:15px;margin:0 0 18px;max-width:72ch}
.tc-karty{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.tc-karta{border:1px solid var(--line);border-radius:var(--rad);background:#fff;padding:14px 14px 12px}
.tc-hlava{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}
.tc-typ{font-family:Poppins,Inter,sans-serif;font-weight:700;font-size:16px;color:var(--ink)}
.tc-mat-h{font-size:12.5px;color:var(--mut)}
.tc-rada{display:flex;align-items:center;gap:9px;margin-top:8px}
.tc-norma{flex:0 0 34px;font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--mut)}
.tc-svg{width:84px;height:36px;flex:0 0 auto}
.tc-svg .tc-zn{font:700 15px/1 Inter,sans-serif;fill:#5B6670}
.tc-slovy{font-size:12px;color:var(--mut);line-height:1.35}
.tc-graf-obal{overflow-x:auto;-webkit-overflow-scrolling:touch}
.tc-graf{width:100%;min-width:620px;height:auto;display:block}
.tc-graf .tc-typ-osa{font:700 13px/1 Poppins,Inter,sans-serif;fill:var(--ink)}
.tc-graf .tc-mat{font:400 11px/1 Inter,sans-serif;fill:var(--mut)}
.tc-graf .tc-hod{font:600 11.5px/1 Inter,sans-serif;fill:var(--mut)}
.tc-graf .tc-osa{font:400 11px/1 Inter,sans-serif;fill:var(--mut);text-anchor:middle}
.tc-graf .tc-akr{font:600 11px/1 Inter,sans-serif;fill:#C81A20;text-anchor:middle}
.tc-graf .tc-osa-nadpis{font:600 11px/1 Inter,sans-serif;fill:var(--mut)}
.tc-legenda{display:flex;flex-wrap:wrap;gap:18px;margin:10px 0 0;font-size:13px;color:var(--mut)}
.tc-l{display:inline-flex;align-items:center;gap:7px}
.tc-l i{width:14px;height:10px;border-radius:3px;display:inline-block}
@media(max-width:1100px){.tc-karty{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.tc-karty{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.tc-karty{grid-template-columns:1fr}.tc-nadpis{font-size:17px}}

/* upřesnění pod názvem položky akreditace na kartě úvodky */
.card-akr .akr-dopl{color:var(--mut);font-size:13.5px;margin:-6px 0 10px}

/* ---------- redakční rozvržení místo mřížky karet ---------- */
/* dvousloupcová hlavička sekce: nadpis vlevo, perex a akce vpravo */
.hlava-2{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:22px 56px;
  align-items:end;margin:0 0 34px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.hlava-2 h2{margin:0}
.hlava-2-vedle p{margin:0 0 16px;color:var(--mut)}
.hlava-2-vedle .btn{margin:0}

/* důvody: linka nahoře, žádná ikona, žádný rámeček */
.duvody{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 34px}
.duvod{border-top:2px solid var(--ink);padding-top:13px}
.duvod h3{font-family:Poppins,Inter,sans-serif;font-size:16.5px;line-height:1.3;margin:0 0 7px}
.duvod p{margin:0;color:var(--mut);font-size:15px;line-height:1.6}

/* obory jako výčet, ne dlaždice: text teče sloupci, aby pod krátkými položkami nezůstávaly díry */
.obory-vycet{display:block;columns:3;column-gap:46px}
.obor{padding:13px 0;border-top:1px solid var(--line);font-size:14.5px;line-height:1.55;color:var(--mut);
  break-inside:avoid;-webkit-column-break-inside:avoid}
.obor b{display:block;color:var(--ink);font-family:Poppins,Inter,sans-serif;font-weight:600;
  font-size:15.5px;line-height:1.35;margin-bottom:3px}
.obor-pozn{margin:28px 0 0;font-size:15px;color:var(--mut);max-width:80ch}
.obor-pozn b{color:var(--ink)}

@media(max-width:1024px){
  .duvody{grid-template-columns:repeat(2,1fr)}
  .obory-vycet{columns:2}
}
@media(max-width:700px){
  .hlava-2{grid-template-columns:1fr;align-items:start;gap:14px;margin-bottom:26px}
  .duvody{grid-template-columns:1fr;gap:18px}
  .obory-vycet{columns:1}
}

/* výzva na konci stránky: řádek, ne tmavá karta */
.vyzva{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.vyzva h2{margin:0 0 8px;font-size:clamp(22px,2.4vw,27px)}
.vyzva p{margin:0;color:var(--mut);max-width:70ch}
@media(max-width:700px){.vyzva{display:block}.vyzva .btn{margin-top:18px}}

/* časté dotazy jako sazba otázek a odpovědí, ne mřížka karet */
.dotazy-nadpis{margin:0 0 26px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.dotazy{display:grid;grid-template-columns:repeat(2,1fr);gap:26px 56px}
.dotaz h3{font-family:Poppins,Inter,sans-serif;font-size:16.5px;line-height:1.35;margin:0 0 6px}
.dotaz p{margin:0;color:var(--mut);font-size:15px;line-height:1.65}
@media(max-width:820px){.dotazy{grid-template-columns:1fr;gap:22px}}

/* hlavička sekce: zarovnání na spodní hranu dává smysl jen na širokém rozvržení */
@media(max-width:900px){.hlava-2{align-items:start}}
/* čtyři kroky postupu se na malém mobilu musí složit pod sebe */
@media(max-width:560px){.grid.g4{grid-template-columns:1fr}}

/* ---------- dokumenty a certifikáty: řada malých náhledů ---------- */
.dok-rada{display:flex;flex-wrap:wrap;gap:30px 34px;align-items:flex-start}
.dok{margin:0;flex:0 1 186px;display:flex;flex-direction:column;gap:11px}
.dok-nahled{position:relative;display:block;padding:0;max-width:200px;border:1px solid var(--line);border-radius:6px;
  background:#fff;cursor:zoom-in;overflow:hidden;line-height:0;width:100%;
  box-shadow:0 1px 3px rgba(21,24,29,.06);transition:box-shadow .15s,border-color .15s}
.dok-nahled:hover{border-color:#C9D0D8;box-shadow:0 4px 14px rgba(21,24,29,.12)}
.dok-nahled img{width:100%;height:auto;display:block;aspect-ratio:1/1.414;object-fit:contain;background:#fff}
/* lupa je vidět pořád, na dotykových zařízeních hover neexistuje */
.dok-lupa{position:absolute;right:7px;bottom:7px;width:28px;height:28px;border-radius:6px;
  background:rgba(20,24,28,.62);display:flex;align-items:center;justify-content:center;transition:background .15s}
.dok-nahled:hover .dok-lupa,.dok-nahled:focus-visible .dok-lupa{background:rgba(20,24,28,.92)}
.dok-lupa svg{width:17px;height:17px;fill:#fff}
.dok figcaption{display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.5}
.dok figcaption b{font-family:Poppins,Inter,sans-serif;font-size:14.5px;font-weight:600;color:var(--ink);line-height:1.35}
.dok figcaption span{color:var(--mut);font-size:13.5px}
.dok figcaption a{font-weight:600;font-size:13.5px}
@media(max-width:820px){.dok-rada{gap:24px 20px}.dok{flex:0 1 calc(33.333% - 14px)}}
@media(max-width:480px){.dok{flex:1 1 100%;flex-direction:row;gap:14px}
  .dok-nahled{flex:0 0 96px;width:96px}
  .dok figcaption{padding-top:2px}}

/* ---------- kontaktní řádek místo opakované výzvy ---------- */
.kr{padding:30px 0;border-top:1px solid var(--line);background:#fff}
.kr-in{display:flex;align-items:center;gap:18px 34px;flex-wrap:wrap}
.kr-veta{margin:0;flex:1 1 320px;font-size:16px;color:var(--ink);line-height:1.55}
.kr-os{display:flex;flex-direction:column;gap:2px;line-height:1.35}
.kr-os b{font-family:Poppins,Inter,sans-serif;font-size:15.5px;font-weight:600}
.kr-os span{font-size:13.5px;color:var(--mut)}
.kr-sp{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.kr-mail{font-weight:600;font-size:14.5px}
@media(max-width:700px){
  .kr{padding:24px 0}
  .kr-in{display:block}
  .kr-os{margin:14px 0 12px}
  .kr-sp{gap:12px}
  .kr-sp .btn{flex:1 1 auto;justify-content:center}
}

/* kontakt: údaje a lidé nahoře, formulář pod nimi */
.kontakty-blok .sp-txt{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 46px}
.kontakty-blok .sp-txt h2{grid-column:1 / -1;margin:0}
.poptavka-obal{max-width:720px;margin:0 auto}
@media(max-width:700px){.kontakty-blok .sp-txt{grid-template-columns:1fr;gap:18px}}
