/*
Theme Name: forensee
Theme URI: https://www.forensee.cz
Description: Šablona webu forensee.cz — designový směr A „Tmavá laboratoř“. Bloková šablona bez page builderu: Poppins, oranžová #F26522, černá.
Author: forensee s.r.o.
Version: 0.6.8
Requires at least: 6.4
Requires PHP: 7.4
License: Proprietary
Text Domain: forensee
*/

/* ===== Lokální fonty (Poppins, latin + latin-ext pro češtinu) — doplněno skriptem, viz assets/fonts ===== */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('assets/fonts/poppins-latin-ext-400-normal.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;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('assets/fonts/poppins-latin-400-normal.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;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('assets/fonts/poppins-latin-ext-500-normal.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;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('assets/fonts/poppins-latin-500-normal.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;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('assets/fonts/poppins-latin-ext-600-normal.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;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('assets/fonts/poppins-latin-600-normal.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;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('assets/fonts/poppins-latin-ext-700-normal.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;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('assets/fonts/poppins-latin-700-normal.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;
}

/* ===== Tokeny ===== */
:root {
  --fx-black: #0A0A0A;
  --fx-paper: #FAFAFA;
  --fx-white: #FFFFFF;
  --fx-orange: #F26522;
  --fx-orange-dark: #C4511A;
  --fx-orange-tint: #FDEBE0;
  --fx-graphite: #151515;
  --fx-smoke: #6B6B6B;
  --fx-grey: #8A8A8A;
  --fx-grey-light: #C8C8C8;
  --fx-line: #E5E5E5;
  --fx-line-dark: #2A2A2A;
  --fx-radius: 12px;
  --fx-wrap: 1160px;
}

/* ===== Základ ===== */
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--fx-paper);
  color: var(--fx-black);
  font-family: "Poppins", "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.7;
}
img { max-width: 100%; height: auto; }
a { color: var(--fx-orange-dark); text-decoration: none; }
a:hover { color: var(--fx-orange); }
a:focus-visible, button:focus-visible { outline: 2px solid var(--fx-orange); outline-offset: 2px; border-radius: 2px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { animation: none !important; transition: none !important; } }

/* ===== Neutralizace výchozího layoutu WordPressu =====
   WP jinak omezuje šířku obsahu (contentSize) a vkládá mezery mezi bloky.
   Vzhled řídí výhradně naše fx-* třídy níže. */
.wp-site-blocks { padding: 0; }
.wp-site-blocks > * { margin-block-start: 0 !important; margin-block-end: 0 !important; }
main.fx-main > * { margin-block-start: 0; margin-block-end: 0; }
.wp-site-blocks .wp-block-buttons { gap: 14px; }
.fx-trust-row p, .fx-steps p, .fx-cards p { margin: 0; }
.entry-content > * + *, .fx-content > * + * { margin-block-start: 1.1em; }

/* ===== Obálka ===== */
.fx-wrap { max-width: var(--fx-wrap); margin-left: auto; margin-right: auto; padding-left: 40px; padding-right: 40px; box-sizing: border-box; }
@media (max-width: 640px) { .fx-wrap { padding-left: 20px; padding-right: 20px; } }

/* ===== Typografie prvků ===== */
.fx-eyebrow {
  font-size: 12px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--fx-orange-dark); margin: 0 0 10px;
}
.fx-dark .fx-eyebrow, .fx-on-dark .fx-eyebrow { color: var(--fx-orange); }
h1, h2, h3, h4 { margin: 0 0 0.5em; text-wrap: balance; }
.fx-h2 { font-size: 40px; font-weight: 700; line-height: 1.15; letter-spacing: -0.01em; margin: 0; }
@media (max-width: 782px) { .fx-h2 { font-size: 30px; } }

/* ===== Tlačítka ===== */
.fx-btn .wp-block-button__link, .fx-btn-link {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--fx-orange); color: var(--fx-black);
  font-weight: 600; font-size: 15px; padding: 14px 26px; border-radius: 8px; border: none;
}
.fx-btn .wp-block-button__link:hover, .fx-btn-link:hover { background: var(--fx-orange-dark); color: var(--fx-black); }
.fx-btn-ghost .wp-block-button__link {
  background: transparent; color: var(--fx-white); font-weight: 500; font-size: 15px;
  padding: 14px 26px; border-radius: 8px; border: 1px solid #3A3A3A;
}
.fx-btn-ghost .wp-block-button__link:hover { border-color: var(--fx-grey); color: var(--fx-white); background: transparent; }
.fx-btn-dark .wp-block-button__link {
  background: var(--fx-black); color: var(--fx-white); font-weight: 500; font-size: 14px;
  padding: 12px 20px; border-radius: 8px;
}
.fx-btn-dark .wp-block-button__link:hover { background: #1F1F1F; color: var(--fx-white); }

/* ===== Hlavička ===== */
.fx-header { background: var(--fx-black); color: var(--fx-white); }
.fx-header-row {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  min-height: 84px; flex-wrap: wrap; padding-top: 10px; padding-bottom: 10px;
}
.fx-logo img { height: 26px; width: auto; display: block; transform: translateY(2px); } /* optické vystředění: ouško lupy táhne rámeček dolů, tělo písma je jinak 2 px nad osou menu */
.fx-nav { display: flex; align-items: center; gap: 28px; flex-wrap: wrap; }
.fx-nav a { color: var(--fx-grey-light); font-size: 14px; font-weight: 500; }
.fx-nav a:hover, .fx-nav a[aria-current="page"] { color: var(--fx-white); }

/* Rozbalovací menu Služby — čisté CSS (hover + focus-within), bez JavaScriptu */
.fx-subnav { position: relative; display: inline-flex; }
.fx-subnav-t { display: inline-flex; align-items: center; gap: 7px; color: var(--fx-grey-light); font-size: 14px; font-weight: 500; cursor: pointer; }
.fx-subnav-t svg { transition: transform .18s ease; margin-top: 1px; }
.fx-subnav:hover .fx-subnav-t, .fx-subnav:focus-within .fx-subnav-t { color: var(--fx-white); }
.fx-subnav:hover .fx-subnav-t svg, .fx-subnav:focus-within .fx-subnav-t svg { transform: rotate(180deg); }
.fx-sub { position: absolute; top: 100%; left: -18px; padding-top: 14px; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(6px); transition: opacity .16s ease, transform .16s ease, visibility .16s; z-index: 70; }
.fx-subnav:hover .fx-sub, .fx-subnav:focus-within .fx-sub { opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
.fx-sub a { display: block; white-space: nowrap; padding: 10px 16px; border-radius: 7px; font-size: 14px; }
.fx-sub a:first-child { margin-top: 0; }
.fx-sub a:hover { background: #1E1E1E; }
.fx-subin { background: var(--fx-black); border: 1px solid var(--fx-line-dark); border-radius: 12px; padding: 8px; box-shadow: 0 18px 36px rgba(0,0,0,.5); }
.fx-nav a.fx-nav-cta {
  background: transparent; color: var(--fx-white); font-weight: 600;
  padding: 10px 18px; border-radius: 8px; border: 1px solid #3A3A3A;
}
.fx-nav a.fx-nav-cta:hover { border-color: var(--fx-grey); color: var(--fx-white); }

/* Přepínač jazyků v hlavičce (CZ ↔ EN) — vpravo za tlačítkem, glóbus + kód jazyka */
.fx-nav a.fx-lang { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 600; letter-spacing: .08em; margin-left: -6px; }
.fx-nav a.fx-lang svg { opacity: .75; }
.fx-nav a.fx-lang:hover svg { opacity: 1; }

/* Mobilní menu (bez JavaScriptu – <details>) */
.fx-mnav { display: none; }
@media (max-width: 980px) {
  .fx-header { position: relative; }
  .fx-header-row { min-height: 64px; }
  .fx-nav { display: none; }
  .fx-mnav { display: block; }
  .fx-mnav summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-right: -9px; border-radius: 8px; }
  .fx-mnav summary::-webkit-details-marker { display: none; }
  .fx-mnav .fx-mnav-close { display: none; }
  .fx-mnav[open] .fx-mnav-open { display: none; }
  .fx-mnav[open] .fx-mnav-close { display: block; }
  .fx-mnav-panel { position: absolute; left: 0; right: 0; top: 100%; z-index: 60; background: var(--fx-black); border-top: 1px solid var(--fx-line-dark); border-bottom: 1px solid var(--fx-line-dark); padding: 6px 20px 18px; display: flex; flex-direction: column; box-shadow: 0 18px 30px rgba(0,0,0,.45); }
  .fx-mnav-panel a { color: var(--fx-grey-light); font-size: 16px; font-weight: 500; padding: 13px 2px; border-bottom: 1px solid #1E1E1E; }
  .fx-mnav-panel a:last-of-type { border-bottom: none; }
  .fx-mnav-panel a:hover { color: var(--fx-white); }
  .fx-mnav-panel a.fx-mnav-cta { margin-top: 12px; background: var(--fx-orange); color: var(--fx-white); font-weight: 600; text-align: center; padding: 12px 16px; border-radius: 8px; border-bottom: none; }
  .fx-mnav-panel a.fx-mnav-tel { text-align: center; font-weight: 700; color: var(--fx-white); font-variant-numeric: tabular-nums; border-bottom: none; padding-top: 14px; }
  .fx-mnav-panel .fx-mnav-label { color: var(--fx-orange); font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; margin: 14px 0 2px; }
  .fx-mnav-panel a.fx-mnav-sub { font-size: 15px; padding-left: 12px; }
}

/* ===== Hero (úvodní stránka) ===== */
.fx-hero { background: var(--fx-black); color: var(--fx-white); }
.fx-hero-inner { display: flex; align-items: center; gap: 60px; padding-top: 76px; padding-bottom: 64px; }
.fx-hero-copy { flex: 1.25; display: flex; flex-direction: column; gap: 26px; }
.fx-hero-copy h1 { font-size: 62px; font-weight: 700; line-height: 1.08; letter-spacing: -0.02em; margin: 0; color: var(--fx-white); }
.fx-hero-copy .fx-hero-sub { font-size: 18px; line-height: 1.65; color: var(--fx-grey-light); max-width: 560px; margin: 0; }
.fx-hero-art { flex: 0.75; display: flex; justify-content: center; }
.fx-hero .wp-block-buttons { display: flex; gap: 14px; margin-top: 6px; }
@media (max-width: 1024px) { .fx-hero-copy h1 { font-size: 48px; } }
@media (max-width: 860px) {
  .fx-hero-inner { flex-direction: column; align-items: flex-start; gap: 36px; padding-top: 56px; padding-bottom: 48px; }
  .fx-hero-art { display: none; }
  .fx-hero-copy h1 { font-size: 40px; }
}

/* Pás důvěry */
.fx-trust { border-top: 1px solid var(--fx-line-dark); background: var(--fx-black); color: var(--fx-white); }
.fx-trust-row { display: flex; justify-content: space-between; gap: 20px; padding-top: 26px; padding-bottom: 26px; } /* rovnoměrné mezery mezi položkami */
.fx-trust-item { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; font-weight: 500; color: var(--fx-grey-light); }
.fx-trust-item::before { content: ""; width: 7px; height: 7px; margin-top: 8px; background: var(--fx-orange); flex: none; } /* čtvereček vždy na prvním řádku textu */
@media (max-width: 1079px) { .fx-trust-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); } } /* delší položky — dřívější přechod na 2×2, ať se nic nezalamuje */

/* ===== Incidentový pruh ===== */
.fx-band { background: var(--fx-graphite); color: var(--fx-white); }
.fx-band-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 24px; padding-bottom: 24px; flex-wrap: wrap; }
.fx-band-left { display: flex; align-items: center; gap: 16px; }
.fx-band-title { font-size: 20px; font-weight: 600; margin: 0; color: var(--fx-white); }
.fx-band-sub { font-size: 13px; font-weight: 500; margin: 0; color: var(--fx-grey-light); }
.fx-band-right { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.fx-band-phone { font-size: 24px; font-weight: 700; color: var(--fx-orange); font-variant-numeric: tabular-nums; white-space: nowrap; }
.fx-band-phone:hover { color: var(--fx-orange); text-decoration: underline; }
.fx-band svg [stroke] { stroke: var(--fx-orange); }
.fx-band svg [fill="#0A0A0A"] { fill: var(--fx-orange); }
.fx-band .fx-btn-ghost-link { display: inline-flex; align-items: center; color: var(--fx-white); font-size: 14px; font-weight: 500; padding: 12px 20px; border-radius: 8px; border: 1px solid #3A3A3A; }
.fx-band .fx-btn-ghost-link:hover { border-color: var(--fx-grey); color: var(--fx-white); }

/* ===== Sekce ===== */
.fx-section { padding-top: 72px; padding-bottom: 72px; }
.fx-sec-tight { padding-top: 44px; padding-bottom: 44px; } /* O nás: kratší bloky za sebou → těsnější rytmus */
.fx-section > h2:not(.fx-h2), .fx-ncol > h2 { font-size: 28px; letter-spacing: -.01em; } /* nadpisy sekcí sjednocené s podstránkami služeb */
.fx-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; flex-wrap: wrap; }
.fx-section-lead { font-size: 15px; color: var(--fx-smoke); max-width: 380px; line-height: 1.6; margin: 0; }
@media (max-width: 782px) { .fx-section { padding-top: 44px; padding-bottom: 44px; } .fx-sec-tight { padding-top: 32px; padding-bottom: 32px; } }

/* ===== Karty služeb ===== */
.fx-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 36px; }
.fx-cards > * { margin: 0 !important; }
.fx-card {
  background: var(--fx-white); border: 1px solid var(--fx-line); border-radius: var(--fx-radius);
  padding: 28px; display: flex; flex-direction: column; gap: 14px;
  box-shadow: 0 1px 2px rgba(10,10,10,.04);
}
.fx-card h3 { font-size: 19px; font-weight: 600; margin: 0; }
.fx-card p { font-size: 14px; line-height: 1.65; color: var(--fx-smoke); margin: 0; }
.fx-card .fx-card-link { font-size: 14px; font-weight: 600; margin-top: auto; color: var(--fx-orange-dark); }
.fx-card .fx-card-link:hover { color: var(--fx-orange); }
.fx-chip {
  width: 44px; height: 44px; border-radius: 10px; background: var(--fx-orange-tint);
  display: flex; align-items: center; justify-content: center; flex: none;
}
.fx-chip svg [stroke="#FFFFFF"] { stroke: var(--fx-orange-dark); }
.fx-chip svg [fill="#FFFFFF"] { fill: var(--fx-orange-dark); }
.fx-chip-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.fx-tag { font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--fx-orange-dark); background: var(--fx-orange-tint); padding: 4px 10px; border-radius: 99px; white-space: nowrap; }
.fx-card-urgent .fx-chip { background: var(--fx-orange); }
.fx-card-urgent .fx-chip svg [stroke="#FFFFFF"] { stroke: #FFFFFF; }
.fx-card-urgent .fx-chip svg [fill="#FFFFFF"] { fill: #FFFFFF; }
.fx-chip svg { display: block; }
.fx-card-dark { background: var(--fx-black); border-color: var(--fx-black); }
.fx-card-dark h3 { color: var(--fx-white); }
.fx-card-dark p { color: var(--fx-grey); }
.fx-card-dark .fx-card-link { color: var(--fx-orange); }
@media (max-width: 1024px) { .fx-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .fx-cards { grid-template-columns: 1fr; } }

/* ===== Postup (4 kroky) ===== */
.fx-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; margin-top: 52px; }
.fx-steps > * { margin: 0 !important; }
.fx-step { display: flex; flex-direction: column; gap: 10px; }
.fx-step p.fx-step-num { font-size: 52px; font-weight: 700; color: var(--fx-orange-dark); line-height: 1; }
.fx-step h3 { font-size: 18px; font-weight: 600; margin: 0; }
.fx-step p { font-size: 14px; line-height: 1.6; color: var(--fx-smoke); margin: 0; }
@media (max-width: 900px) { .fx-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .fx-steps { grid-template-columns: 1fr; } }
.fx-white-section { background: var(--fx-white); border-top: 1px solid var(--fx-line); border-bottom: 1px solid var(--fx-line); }

/* ===== Citát ===== */
.fx-quote { background: var(--fx-black); color: var(--fx-white); }
.fx-quote-inner { display: flex; gap: 48px; align-items: flex-start; padding-top: 68px; padding-bottom: 68px; }
.fx-quote-mark { font-size: 120px; font-weight: 800; color: var(--fx-orange); line-height: 0.6; margin-top: 18px; flex: none; }
.fx-quote-text { font-size: 30px; font-weight: 500; line-height: 1.45; max-width: 880px; margin: 0; color: var(--fx-white); }
.fx-quote-author { font-size: 14px; color: var(--fx-grey); margin: 22px 0 0; }
@media (max-width: 782px) {
  .fx-quote-inner { gap: 24px; padding-top: 56px; padding-bottom: 56px; }
  .fx-quote-mark { font-size: 72px; }
  .fx-quote-text { font-size: 22px; }
}

/* ===== Blog — výpis nejnovějších na homepage ===== */
.fx-latest ul.wp-block-latest-posts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 36px 0 0; padding: 0; list-style: none; }
.fx-latest ul.wp-block-latest-posts > li {
  background: var(--fx-white); border: 1px solid var(--fx-line); border-radius: var(--fx-radius);
  padding: 26px; margin: 0; display: flex; flex-direction: column; gap: 10px;
}
.fx-latest .wp-block-latest-posts__post-title { font-size: 18px; font-weight: 600; line-height: 1.4; color: var(--fx-black); }
.fx-latest .wp-block-latest-posts__post-title:hover { color: var(--fx-orange-dark); }
.fx-latest .wp-block-latest-posts__post-date { display: block; font-size: 12.5px; color: var(--fx-grey); margin: 4px 0 8px; }
.fx-latest .wp-block-latest-posts__post-excerpt { font-size: 14px; line-height: 1.6; color: var(--fx-smoke); margin: 0; }
@media (max-width: 900px) { .fx-latest ul.wp-block-latest-posts { grid-template-columns: 1fr; } }

/* ===== CTA sekce ===== */
.fx-cta { background: var(--fx-black); color: var(--fx-white); }
.fx-cta-row { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding-top: 68px; padding-bottom: 56px; flex-wrap: wrap; }
.fx-cta h2 { font-size: 36px; font-weight: 700; letter-spacing: -0.01em; margin: 0 0 10px; color: var(--fx-white); }
.fx-cta p { font-size: 16px; color: var(--fx-grey-light); margin: 0; }
.fx-cta-actions { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.fx-cta-phone { font-size: 22px; font-weight: 700; color: var(--fx-white); font-variant-numeric: tabular-nums; white-space: nowrap; }
.fx-cta-phone:hover { color: var(--fx-white); text-decoration: underline; }
@media (max-width: 782px) { .fx-cta h2 { font-size: 28px; } .fx-cta-row { padding-top: 56px; padding-bottom: 48px; } }

/* ===== Patička ===== */
.fx-footer { background: var(--fx-black); color: var(--fx-white); }
.fx-footer a { color: var(--fx-grey-light); }
.fx-footer a:hover { color: var(--fx-white); }
.fx-footer-grid {
  display: grid; grid-template-columns: 1.4fr minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 40px; padding-top: 44px; padding-bottom: 44px; border-top: 1px solid var(--fx-line-dark);
  font-size: 13px;
}
.fx-footer-grid h4 { font-size: 12px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--fx-grey); margin: 0 0 12px; }
.fx-footer-grid ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; }
.fx-footer-tagline { font-size: 13px; line-height: 1.7; color: var(--fx-grey); margin: 14px 0 0; }
.fx-footer-logo img { height: 22px; width: auto; }
.fx-footer-bottom { padding-bottom: 28px; font-size: 12px; color: var(--fx-grey); }
.fx-footer-orange a { color: var(--fx-orange); }
.fx-footer-orange a:hover { color: var(--fx-orange-dark); }
@media (max-width: 860px) { .fx-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .fx-footer-grid { grid-template-columns: 1fr; } }

/* ===== Vnitřní stránky ===== */
.fx-page-hero { background: var(--fx-black); color: var(--fx-white); }
.fx-page-hero-inner { padding-top: 64px; padding-bottom: 56px; }
.fx-page-hero h1 { font-size: 46px; font-weight: 700; letter-spacing: -0.01em; margin: 0; color: var(--fx-white); }
@media (max-width: 782px) { .fx-page-hero h1 { font-size: 32px; } }
.fx-content { max-width: 760px; padding-top: 56px; padding-bottom: 64px; }
.fx-content h2 { font-size: 28px; margin-top: 1.6em; }
.fx-content h3 { font-size: 20px; margin-top: 1.4em; }
.fx-content img { border-radius: var(--fx-radius); }

/* ===== Blog — archiv ===== */
.fx-blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 44px 0 0; list-style: none; }
.fx-blog-grid > li { margin: 0; }
.fx-post-card {
  background: var(--fx-white); border: 1px solid var(--fx-line); border-radius: var(--fx-radius);
  padding: 26px; display: flex; flex-direction: column; gap: 10px; height: 100%; box-sizing: border-box;
}
.fx-post-card .fx-post-cat a { font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--fx-orange-dark); }
.fx-post-card h3 { font-size: 18px; font-weight: 600; line-height: 1.4; margin: 0; }
.fx-post-card h3 a { color: var(--fx-black); }
.fx-post-card h3 a:hover { color: var(--fx-orange-dark); }
.fx-post-card .wp-block-post-excerpt { font-size: 14px; color: var(--fx-smoke); }
.fx-post-card .wp-block-post-excerpt__more-link { font-weight: 600; color: var(--fx-orange-dark); }
.fx-post-card .wp-block-post-date { font-size: 12px; color: var(--fx-grey); margin-top: auto; }
@media (max-width: 900px) { .fx-blog-grid { grid-template-columns: 1fr; } }
.fx-pagination { padding: 40px 0 80px; }
.fx-pagination .wp-block-query-pagination { display: flex; gap: 16px; align-items: center; font-weight: 600; }

/* ===== Článek ===== */
.fx-article { max-width: 760px; padding-top: 64px; padding-bottom: 40px; }
.fx-article-title { font-size: 38px; font-weight: 700; line-height: 1.2; letter-spacing: -0.01em; }
.fx-article-meta { font-size: 13px; color: var(--fx-grey); margin-bottom: 32px; }
.fx-article .entry-content p { font-size: 17px; line-height: 1.75; }
.fx-article .entry-content .fx-srcnote, .fx-article .entry-content .fx-byline { text-align: left; }
.fx-article .entry-content .fx-takeaway { border-left: 3px solid var(--fx-orange); padding: 4px 0 4px 20px; }
.fx-article .entry-content h2 { font-size: 26px; margin: 1.7em 0 0.5em; letter-spacing: -.01em; }
.fx-article .entry-content ul { list-style: none; margin: 0; padding: 0; }
.fx-article .entry-content li { position: relative; padding-left: 24px; font-size: 16.5px; line-height: 1.7; }
.fx-article .entry-content li + li { margin-top: 10px; }
.fx-article .entry-content li::before { content: ""; position: absolute; left: 2px; top: 10px; width: 9px; height: 9px; background: var(--fx-orange); }
.fx-article .entry-content a { color: var(--fx-orange-dark); font-weight: 600; }
.fx-article .entry-content .fx-srcnote { font-size: 14.5px; color: var(--fx-grey); }
.fx-article .entry-content .fx-byline { border-top: 1px solid var(--fx-line); padding-top: 16px; margin-top: 2.4em; font-size: 14.5px; color: var(--fx-grey); }
@media (max-width: 782px) { .fx-article-title { font-size: 28px; } }

/* ===== Drobnosti ===== */
.fx-skip-link { position: absolute; left: -9999px; }
.fx-skip-link:focus { position: fixed; left: 12px; top: 12px; background: var(--fx-white); color: var(--fx-black); padding: 10px 16px; border-radius: 8px; z-index: 999; }

/* ===== Doplňky ===== */
.fx-card .fx-card-more { margin-top: auto; margin-bottom: 0; }
.fx-card .fx-card-more a, .fx-card-link { font-size: 14px; font-weight: 600; color: var(--fx-orange-dark); }
.fx-card-dark .fx-card-more a { color: var(--fx-orange); }
.fx-hero .wp-block-buttons { gap: 14px; }
.fx-post-card .fx-post-cat { font-size: 11px; }

/* ---- Blog: redakční výpis (články pod sebou) ---- */
.fx-blogwrap { padding-top: 56px; } /* stejný odstup od tmavého záhlaví jako na ostatních stránkách (.fx-cols) */
.fx-blog-list { max-width: 820px; margin: 0 auto; }
.fx-post-row { padding: 44px 0 28px; border-bottom: 1px solid var(--fx-line); } /* čára patří k dočtenému článku: pod ní víc místa než nad ní */
.fx-blog-list .fx-post-row:first-child { padding-top: 0; }
.fx-post-row .wp-block-post-title { font-size: 24px; font-weight: 600; line-height: 1.35; margin: 0; }
.fx-post-row .wp-block-post-title a { color: var(--fx-black); text-decoration: none; }
.fx-post-row .wp-block-post-title a:hover { color: var(--fx-orange-dark); }
.fx-row-meta { margin: 8px 0 12px; }
.fx-row-meta .wp-block-post-date { display: block; font-size: 12.5px; color: var(--fx-grey); }
.fx-post-row .wp-block-post-excerpt__excerpt { font-size: 15px; line-height: 1.75; color: #3A3A3A; margin: 0; }
.fx-post-row .wp-block-post-excerpt__more-text { margin: 12px 0 0; font-size: 14px; font-weight: 600; }
.fx-post-row .wp-block-post-excerpt__more-link, .fx-post-row .wp-block-post-excerpt__excerpt a { color: var(--fx-orange-dark); text-decoration: none; }
.fx-query .fx-pagination { max-width: 820px; margin-left: auto; margin-right: auto; }
@media (max-width: 640px) {
  .fx-post-row { padding: 32px 0 22px; }
  .fx-post-row .wp-block-post-title { font-size: 20px; }
}

/* ===== Podstránky (v0.4) ===== */
.fx-phero { background: var(--fx-black); color: var(--fx-white); }
.fx-phero-in { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; padding-top: 64px; padding-bottom: 56px; flex-wrap: wrap; }
.fx-phero h1 { font-size: 46px; font-weight: 700; letter-spacing: -.01em; line-height: 1.12; margin: 0; color: var(--fx-white); }
.fx-phero .fx-phero-sub { font-size: 16px; line-height: 1.65; color: var(--fx-grey-light); max-width: 580px; margin: 14px 0 0; }
.fx-phero-side { display: flex; align-items: center; gap: 18px; flex: none; padding-bottom: 6px; flex-wrap: wrap; }
.fx-phero-side .fx-tel { font-size: 20px; font-weight: 700; color: var(--fx-white); font-variant-numeric: tabular-nums; }
.fx-bigtel { font-size: 52px; font-weight: 700; color: var(--fx-orange); font-variant-numeric: tabular-nums; margin: 0; }
.fx-bigtel a { color: var(--fx-orange); }
@media (max-width: 782px) { .fx-phero h1 { font-size: 32px; } .fx-bigtel { font-size: 34px; } }

.fx-cols { display: flex; gap: 56px; align-items: flex-start; padding-top: 56px; padding-bottom: 64px; }
.fx-maincol { flex: 1; min-width: 0; }
.fx-rail { width: 320px; flex: none; display: flex; flex-direction: column; gap: 20px; }
.fx-rail-wide { width: 380px; }
.fx-maincol h2 { font-size: 28px; font-weight: 700; letter-spacing: -.01em; margin: 36px 0 14px; }
.fx-maincol > h2:first-child, .fx-maincol > *:first-child h2 { margin-top: 0; }
.fx-maincol p { color: #3A3A3A; }
.fx-lead-p { font-size: 17px; color: var(--fx-black) !important; }
.fx-lead-p + .fx-lead-p { margin-top: 14px; }
@media (max-width: 1024px) { .fx-cols { flex-direction: column; } .fx-rail, .fx-rail-wide { width: 100%; } }

.fx-checks { list-style: none; margin: 16px 0 6px; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 28px; }
.fx-checks li { padding-left: 26px; position: relative; font-size: 15px; margin: 0; }
.fx-checks li::before { content: ""; position: absolute; left: 0; top: 9px; width: 10px; height: 10px; background: var(--fx-orange); }
@media (max-width: 1100px) { .fx-checks { grid-template-columns: 1fr; } } /* bez pravého sloupce jsou sloupce seznamu moc široké – body pak mají 1 vs 2 řádky */

.fx-mini { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; margin: 16px 0 6px; }
.fx-mini > * { margin: 0 !important; }
.fx-mini-card { background: var(--fx-white); border: 1px solid var(--fx-line); border-radius: 10px; padding: 18px; font-size: 14px; line-height: 1.55; }
.fx-mini-card h3 { font-size: 15px; font-weight: 600; margin: 0 0 6px; line-height: 1.45; }
.fx-mini-card p { margin: 0; color: var(--fx-smoke); }
.fx-mini-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
@media (max-width: 782px) { .fx-mini { grid-template-columns: 1fr; } }

.fx-case { background: var(--fx-black); color: var(--fx-white); border-radius: 14px; padding: 30px 32px; margin: 26px 0 8px; }
.fx-case .fx-eyebrow { color: var(--fx-orange); }
.fx-case p { color: var(--fx-grey-light); margin: 0; font-size: 15px; }
.fx-case strong { color: var(--fx-white); }

.fx-faq details { border-bottom: 1px solid var(--fx-line); padding: 5px 0; }
.fx-faq details:first-of-type { border-top: 1px solid var(--fx-line); }
.fx-faq summary { font-size: 16px; font-weight: 600; cursor: pointer; list-style: none; position: relative; padding: 9px 28px 9px 0; } /* svislý padding = dotyková plocha ≥ 44 px, vzhled beze změny */
.fx-faq summary::-webkit-details-marker { display: none; }
.fx-faq summary::after { content: "˅"; position: absolute; right: 4px; color: var(--fx-grey); font-weight: 400; }
.fx-faq details[open] summary::after { content: "˄"; }
.fx-faq details p { margin: 10px 0 0; font-size: 14px; color: #555; }

.fx-rcard { background: var(--fx-white); border: 1px solid var(--fx-line); border-radius: 14px; padding: 24px; box-shadow: 0 1px 2px rgba(10,10,10,.04); }
.fx-rcard h3 { font-size: 17px; font-weight: 600; margin: 0; }
.fx-rcard .fx-role { font-size: 13px; color: var(--fx-grey); margin: 2px 0 12px; }
.fx-rcard .fx-rtel { font-size: 18px; font-weight: 700; display: block; color: var(--fx-black); font-variant-numeric: tabular-nums; margin: 0; }
.fx-rcard .fx-rtel a { color: var(--fx-black); }
.fx-rcard .fx-rmail { font-size: 14px; margin: 4px 0 16px; }
.fx-rcard .fx-rmail a { color: var(--fx-orange-dark); font-weight: 600; }
.fx-rcard .wp-block-button, .fx-rcard .wp-block-button__link { width: 100%; box-sizing: border-box; justify-content: center; }
.fx-rcard .fx-rnote { font-size: 12.5px; color: var(--fx-grey); margin: 10px 0 0; }
.fx-rlinks { background: var(--fx-paper); border: 1px solid var(--fx-line); border-radius: 14px; padding: 20px 24px; font-size: 14px; }
.fx-rlinks h3 { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--fx-grey); margin: 0 0 10px; font-weight: 600; }
.fx-rlinks p { margin: 0; }
.fx-rlinks a { display: block; color: var(--fx-orange-dark); font-weight: 600; padding: 5px 0; }

.fx-steps-sm { margin-top: 16px; }
@media (min-width: 901px) { .fx-steps-sm h3 { min-height: 52px; } } /* nadpisy kroků na 1 i 2 řádky: texty začínají ve stejné výšce */
.fx-steps-sm .fx-step p.fx-step-num { font-size: 30px; }
.fx-steps-sm .fx-step h3 { font-size: 15px; }
.fx-steps-sm .fx-step p { font-size: 13.5px; }

.fx-dd { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 26px 0 8px; }
.fx-dd > * { margin: 0 !important; }
.fx-dd-col { border-radius: 14px; padding: 26px 28px; }
.fx-dd-do { background: var(--fx-white); border: 1px solid var(--fx-line); }
.fx-dd-dont { background: var(--fx-black); color: var(--fx-white); }
.fx-dd h3 { margin: 0 0 14px; font-size: 18px; font-weight: 600; }
.fx-dd ul { list-style: none; margin: 0; padding: 0; }
.fx-dd li { padding: 7px 0 7px 30px; position: relative; font-size: 15px; margin: 0; }
.fx-dd-do li::before { content: "✓"; position: absolute; left: 0; color: var(--fx-orange-dark); font-weight: 700; }
.fx-dd-dont li { color: var(--fx-grey-light); }
.fx-dd-dont li::before { content: "✕"; position: absolute; left: 0; color: var(--fx-orange); font-weight: 700; }
@media (max-width: 860px) { .fx-dd { grid-template-columns: 1fr; } }

.fx-ret { background: var(--fx-black); color: var(--fx-white); border-radius: 16px; padding: 40px 44px; margin: 40px 0 8px; }
.fx-ret h2 { color: var(--fx-white); margin: 0 0 8px; font-size: 26px; }
.fx-ret > p { color: var(--fx-grey-light); margin: 0 0 20px; }
.fx-ret3 { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; margin: 0 0 24px; }
.fx-ret3 > * { margin: 0 !important; }
.fx-ret3 > div { background: #151515; border: 1px solid var(--fx-line-dark); border-radius: 10px; padding: 16px 18px; font-size: 14px; }
.fx-ret3 h3 { color: var(--fx-white); font-size: 15px; font-weight: 600; margin: 0 0 4px; }
.fx-ret3 p { color: var(--fx-grey-light); margin: 0; }
@media (max-width: 860px) { .fx-ret3 { grid-template-columns: 1fr; } .fx-ret { padding: 28px; } }

/* ===== O nás (v0.5.33) ===== */
.fx-phero h1.fx-h1-sm { font-size: 40px; } /* delší nadpis — o stupeň menší */
@media (max-width: 782px) { .fx-phero h1.fx-h1-sm { font-size: 29px; } }
.fx-ncol { max-width: 980px; } /* jednotný sloupec obsahu — text i mřížky končí na stejné hraně */
.fx-ncol > h2 { margin: 36px 0 14px; }
.fx-ncol > h2:first-child { margin-top: 0; }
.fx-ncol > p { font-size: 15px; line-height: 1.7; }
.fx-ncol > p.fx-lead-p { font-size: 16px; }
.fx-ncol > p + p { margin-top: 14px; }

.fx-prj { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 36px 48px; margin-top: 36px; }
.fx-prjitem { position: relative; display: flex; flex-direction: column; align-items: flex-start; border-top: 1px solid var(--fx-line); padding-top: 20px; text-decoration: none; color: inherit; }
.fx-prjitem::before { content: ""; position: absolute; top: -1px; left: 0; width: 56px; height: 3px; background: var(--fx-orange); transition: width .25s ease; }
.fx-prjitem:hover::before { width: 100%; }
.fx-prj-logo { display: flex; align-items: center; min-height: 34px; font-size: 20px; font-weight: 700; letter-spacing: -.01em; color: var(--fx-black); }
.fx-prj-logo img { max-height: 34px; width: auto; display: block; }
.fx-wm-a { font-weight: 700; }
.fx-wm-b { font-weight: 300; letter-spacing: .05em; }
.fx-prj-desc { font-size: 14.5px; line-height: 1.65; color: var(--fx-smoke); margin: 8px 0 14px; }
.fx-prj-link { margin-top: auto; font-weight: 600; font-size: 14px; color: var(--fx-orange-dark); }
@media (max-width: 782px) { .fx-prj { grid-template-columns: 1fr; gap: 28px; } }

.fx-avals { background: var(--fx-black); color: var(--fx-white); }
.fx-avals h2 { color: var(--fx-white); }
.fx-vgrid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 32px 48px; margin-top: 36px; }
.fx-v { border-top: 1px solid var(--fx-line-dark); padding-top: 18px; position: relative; }
.fx-v::before { content: ""; position: absolute; top: -1px; left: 0; width: 56px; height: 3px; background: var(--fx-orange); }
.fx-v h3 { font-size: 17px; font-weight: 600; margin: 0 0 8px; color: var(--fx-white); }
.fx-v p { font-size: 14px; line-height: 1.65; color: var(--fx-grey-light); margin: 0; }
@media (max-width: 782px) { .fx-vgrid { grid-template-columns: 1fr; gap: 28px; } }

.fx-people { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 32px 40px; margin-top: 36px; }
.fx-person { border-top: 1px solid var(--fx-line); padding-top: 18px; position: relative; display: flex; flex-direction: column; }
.fx-person .fx-pmail { margin-top: auto; padding-top: 14px; align-self: flex-start; font-weight: 600; font-size: 13.5px; color: var(--fx-orange-dark); }
.fx-person::before { content: ""; position: absolute; top: -1px; left: 0; width: 56px; height: 3px; background: var(--fx-orange); }
.fx-person h3 { font-size: 17px; font-weight: 600; margin: 0; }
.fx-person .fx-prole { font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--fx-orange-dark); margin: 5px 0 10px; }
.fx-person p { font-size: 14px; line-height: 1.65; color: var(--fx-smoke); margin: 0; }
@media (max-width: 900px) { .fx-people { grid-template-columns: 1fr; gap: 28px; } }

.fx-morelink { margin-top: 20px; }
.fx-morelink a { font-weight: 600; font-size: 15px; color: var(--fx-orange-dark); }

.fx-form { background: var(--fx-white); border: 1px solid var(--fx-line); border-radius: 14px; padding: 30px; }
.fx-form h2 { margin: 0 0 18px; font-size: 22px; }
.fx-frow { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
.fx-frow > * { margin: 0 !important; }
.fx-cform, .fx-cform *, .fx-nlform, .fx-nlform * { box-sizing: border-box; } /* šířka polí včetně rámečku — pole se nepřekrývají */
.fx-fl { position: relative; display: block; min-width: 0; }
.fx-fl-wide { grid-column: 1 / -1; }
.fx-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.fx-in { display: block; width: 100%; border: 1px solid #D9D9D9; border-radius: 8px; padding: 12px 14px; font: inherit; font-size: 14px; color: var(--fx-black); background: var(--fx-paper); }
@media (max-width: 640px) { .fx-in { font-size: 16px; } } /* pod 16 px iOS při fokusu přibližuje stránku */
.fx-in::placeholder { color: var(--fx-grey); }
.fx-in:focus { outline: 2px solid var(--fx-orange); outline-offset: -1px; border-color: var(--fx-orange); }
.fx-in-area { min-height: 130px; resize: vertical; }
.fx-fnote { font-size: 12px; color: var(--fx-grey); margin: 12px 0 16px; }
.fx-fbtn { display: inline-block; border: none; cursor: pointer; background: var(--fx-orange); color: var(--fx-white); font: inherit; font-size: 15px; font-weight: 600; padding: 13px 26px; border-radius: 8px; }
.fx-fbtn:hover { background: var(--fx-orange-dark); }
.fx-hp { position: absolute !important; left: -9999px !important; top: auto !important; width: 1px; height: 1px; overflow: hidden; margin: 0; } /* honeypot — skryté pole proti robotům */
.fx-notice { border-radius: 8px; padding: 13px 16px; font-size: 14px; margin: 0 0 16px; }
.fx-notice-ok { background: #F0F7F1; border: 1px solid #BFDCC4; color: #1E5B2A; }
.fx-notice-err { background: #FCF1EC; border: 1px solid #F0C4B0; color: #8A3010; }
.fx-notice a { font-weight: 600; color: inherit; text-decoration: underline; }

/* ---- Newsletter pruh (blog a pod články) ---- */
.fx-nlband { background: var(--fx-black); color: var(--fx-white); margin-top: 72px; border-bottom: 1px solid #242424; }
.fx-nlin { display: flex; align-items: center; justify-content: space-between; gap: 48px; padding-top: 52px; padding-bottom: 56px; }
.fx-nlhead { max-width: 520px; }
.fx-nlband h2 { color: var(--fx-white); font-size: 26px; margin: 6px 0 10px; letter-spacing: -.01em; }
.fx-nlsub { color: var(--fx-grey-light); font-size: 15px; margin: 0; }
.fx-nlcol { flex: 0 1 460px; min-width: 0; }
.fx-nlform { display: flex; gap: 12px; }
.fx-nlform .fx-fl { flex: 1; }
.fx-nlform .fx-fbtn { flex: none; }
.fx-nlform .fx-in, .fx-nlform .fx-fbtn { height: 50px; padding-top: 0; padding-bottom: 0; } /* stejná výška pole i tlačítka */
.fx-nlcol .fx-notice { margin: 0 0 12px; }
.fx-nlnote { color: var(--fx-grey); font-size: 12.5px; margin: 12px 0 0; }
.fx-nlnote a { color: var(--fx-grey-light); }
@media (max-width: 900px) {
  .fx-nlin { flex-direction: column; align-items: stretch; gap: 24px; padding-top: 44px; padding-bottom: 46px; }
  .fx-nlhead { max-width: none; }
  .fx-nlcol { flex: none; }
}
@media (max-width: 640px) { .fx-nlband { margin-top: 52px; } .fx-nlform { flex-direction: column; gap: 10px; } }
@media (max-width: 640px) { .fx-frow { grid-template-columns: 1fr; } }
.fx-kbox { background: var(--fx-white); border: 1px solid var(--fx-line); border-radius: 14px; padding: 22px 24px; }
.fx-kbox h3 { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--fx-grey); margin: 0 0 8px; font-weight: 600; }
.fx-kbox .fx-kbig { font-size: 22px; font-weight: 700; font-variant-numeric: tabular-nums; margin: 0; }
.fx-kbox .fx-kbig a { color: var(--fx-black); }
.fx-kbox .fx-kmail a { font-size: 16px; font-weight: 600; color: var(--fx-orange-dark); }
.fx-kbox p { margin: 4px 0 0; font-size: 14px; color: #555; }
.fx-phero-head { flex: 1 1 420px; min-width: 280px; }
.fx-phero-in { row-gap: 20px; }
.fx-phero-in > .wp-block-buttons { flex: none; padding-bottom: 6px; }
.fx-stat b { color: var(--fx-black); }
.fx-section > .fx-wrap > .fx-cards:first-child { margin-top: 0; }

/* ===== Proč forensee (v0.5) ===== */
.fx-why { background: var(--fx-black); color: var(--fx-white); }
.fx-why-inner { padding-top: 68px; padding-bottom: 68px; }
.fx-why h2 { color: var(--fx-white); }
.fx-why .fx-why-lead { font-size: 18px; color: var(--fx-grey-light); max-width: 720px; margin: 10px 0 0; }
.fx-why-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 28px; margin-top: 36px; }
.fx-why-grid > * { margin: 0 !important; border-top: 1px solid var(--fx-line-dark); padding-top: 18px; }
.fx-why-grid h3 { font-size: 16px; font-weight: 600; color: var(--fx-white); margin: 0 0 6px; }
.fx-why-grid p { font-size: 14px; line-height: 1.6; color: var(--fx-grey); margin: 0; }
@media (max-width: 999px) { .fx-why-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } } /* 4 sloupce jen tam, kde nadpisy vychází na jeden řádek */
@media (max-width: 640px) { .fx-why-grid { grid-template-columns: 1fr; } }
.fx-band-holder { background: var(--fx-paper); padding-bottom: 56px; }
.fx-wrap.fx-section > h2 { margin: 36px 0 14px; }
.fx-wrap.fx-section > h2:first-child { margin-top: 0; }

/* ===== Hero podstránek s grafikou (v0.5.1) ===== */
.fx-phero-in { align-items: center; }
.fx-phero-actions { display: flex; align-items: center; gap: 22px; margin-top: 26px; flex-wrap: wrap; }
.fx-phero-actions .fx-tel { font-size: 20px; font-weight: 700; color: var(--fx-white); font-variant-numeric: tabular-nums; }
.fx-phero-actions .fx-bigtel { margin: 0; }
.fx-phero-hint { color: var(--fx-grey-light); font-size: 14px; }
.fx-phero-art { flex: 0 0 auto; display: flex; justify-content: center; padding: 8px 20px 8px 0; }
.fx-phero-art svg { width: 250px; height: 250px; display: block; }
@media (max-width: 900px) { .fx-phero-art { display: none; } }

/* ===== Z praxe – dvouodstavcová kauza (v0.5.3) ===== */
.fx-case p + p { margin-top: 12px; }

/* ===== Postranní box „Z našeho blogu" – stejný vzhled jako Souvisí (v0.5.13) ===== */
.fx-rblog ul.wp-block-latest-posts { list-style: none; margin: 0; padding: 0; }
.fx-rblog ul.wp-block-latest-posts > li { margin: 0; }
.fx-rblog .wp-block-latest-posts__post-title::after { content: " →"; }

/* Obecný kontaktní box: e-mail jako hlavní kontakt hned za popiskem */
.fx-rcard .fx-role + .fx-rmail { font-size: 16px; margin: 14px 0 18px; }

/* ===== Obecný odstavec do bloku (v0.5.14) ===== */

/* ===== Pohotovostní telefon v hero incidentů (v0.5.18) ===== */
.fx-callbox { display: inline-flex; flex-direction: column; align-items: center; gap: 8px; }
.fx-callbox .fx-bigtel { font-size: 44px; }
.fx-callbox .fx-phero-hint { color: var(--fx-white); font-weight: 600; }
@media (max-width: 782px) { .fx-callbox .fx-bigtel { font-size: 32px; } }

/* ===== Lhůty při incidentu (v0.5.20) ===== */
.fx-deadlines { background: var(--fx-orange-tint); border-radius: 14px; padding: 26px 30px; margin: 36px 0 8px; }
.fx-deadlines h3 { font-size: 18px; font-weight: 600; margin: 0 0 8px; }
.fx-deadlines > p { font-size: 15px; line-height: 1.6; color: #3A3A3A; margin: 0 0 16px; }
.fx-dl-row { display: grid; grid-template-columns: 1fr; gap: 10px; }
.fx-dl { background: var(--fx-white); border-radius: 10px; padding: 13px 16px; font-size: 14.5px; line-height: 1.5; color: #3A3A3A; }
.fx-dl b { color: var(--fx-orange-dark); margin-right: 2px; }
.fx-dl strong { white-space: nowrap; }
.fx-deadlines .fx-dl-note { font-size: 12.5px; color: var(--fx-smoke); margin: 12px 0 0; }
@media (max-width: 782px) { .fx-deadlines { padding: 22px 20px; } }

/* ===== Stránka Školení + strip na úvodu (v0.5.26) ===== */
.fx-mini-card ul { list-style: none; margin: 12px 0 0; padding: 0; }
.fx-mini-card ul li { position: relative; padding-left: 17px; margin: 0 0 7px; font-size: 13.5px; line-height: 1.5; color: var(--fx-smoke); }
.fx-mini-card ul li:last-child { margin-bottom: 0; }
.fx-mini-card ul li::before { content: ""; position: absolute; left: 0; top: 7px; width: 8px; height: 8px; background: var(--fx-orange); }

/* ===== Situace na úvodní stránce (v0.5.28) ===== */
.fx-sits { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 36px 48px; margin-top: 36px; }
.fx-sit { border-top: 1px solid var(--fx-line); padding-top: 20px; position: relative; display: flex; flex-direction: column; }
.fx-sit::before { content: ""; position: absolute; top: -1px; left: 0; width: 56px; height: 3px; background: var(--fx-orange); }
.fx-sit h3 { font-size: 19px; font-weight: 600; margin: 0 0 8px; }
.fx-sit p { font-size: 14.5px; line-height: 1.65; color: var(--fx-smoke); margin: 0 0 12px; }
.fx-sit a { font-weight: 600; font-size: 14px; color: var(--fx-orange-dark); margin-top: auto; align-self: flex-start; }
@media (max-width: 782px) { .fx-sits { grid-template-columns: 1fr; gap: 28px; } }

