/* Growtix web 2.0 - nastroje: kalkulacky, pravni stranky, 404, webinar.
   Vlastni tridy s prefixem .gn-. Kalkulacky (calc-*), pravni cislovani (legal-*) a webinar (wb-*)
   pouzivaji beze zmeny tridy z css/growtix.min.css - stejne barevne tokeny jako gx2.css
   (mint-400 = g-mint, ink-900 = g-ink-2, cream-50 = g-cream), tady jen doladeni rytmu a kontrastu. */

/* ---------- kontrast na kremove: mint-400 na textu nahradit tmavsim mint-700 ---------- */
.g-page .legal-cl__n { color: var(--g-m700); }
.g-page .legal-sub--alpha > li::marker { color: var(--g-m700); }
.g-prose table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
/* obchodni-podminky pouziva puvodni cislovane paragrafy (.legal-cl/.legal-sub jsou v growtix.min.css
   scoped pod .legal-prose) - pridavame .legal-prose vedle .g-prose jen kvuli teto strukture,
   barvy/sirku necha vyhrat .g-prose (nacita se pozdeji), jen zrusime jeji auto-centrovani */
.g-prose.legal-prose { margin: 0; }

/* ---------- box na obsah (TOC) uvnitr g-prose - tmava dlazdice na kremove strane ---------- */
.gn-toc { margin: 0 0 2rem; padding: 1.3rem 1.5rem; border-radius: 14px; background: var(--g-ink-2); }
.gn-toc .g-label { color: var(--g-mint); display: block; margin-bottom: 0.8rem; }
.gn-toc ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.5rem; }
.gn-toc a { color: var(--g-on-dark-2); font-size: 0.9rem; text-decoration: none; }
.gn-toc a:hover { color: var(--g-mint); }

/* ---------- 404: znovupouzite .notfound* z growtix.min.css (uz na spravnych tokenech) ---------- */
.gn-404 { padding: clamp(1.5rem, 5vw, 3rem) 0 0; }
.gn-404 > .g-label { display: block; text-align: center; }
.gn-404__actions { margin-top: 2.2rem; }

/* ---------- kalkulacky: rozcestnik (3 volby) ---------- */
.gn-picks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; margin-top: clamp(2.5rem, 4vw, 3.5rem); }
.gn-pick { display: flex; flex-direction: column; align-items: flex-start; gap: 0; padding: 1.8rem 1.7rem 1.6rem; border-radius: 20px; background: var(--g-tile); border: 1px solid rgba(10, 31, 42, 0.08); box-shadow: 0 18px 36px -26px rgba(8, 31, 46, 0.5); transition: transform 220ms var(--g-ease), box-shadow 220ms var(--g-ease); }
.gn-pick:hover { transform: translateY(-4px); box-shadow: 0 26px 48px -26px rgba(8, 31, 46, 0.4); }
.gn-pick__n { font-family: var(--g-mono); font-size: 0.68rem; letter-spacing: 0.18em; color: var(--g-m700); }
.gn-pick__for { display: block; margin-top: 0.8rem; font-family: var(--g-mono); font-size: 0.64rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--g-on-cream-2); }
.gn-pick h3 { font-size: 1.35rem; font-weight: 600; letter-spacing: -0.02em; line-height: 1.2; margin-top: 0.5rem; }
.gn-pick p { font-size: 0.94rem; line-height: 1.6; color: var(--g-on-cream-2); margin-top: 0.7rem; }
.gn-pick .g-chips { margin-top: 1.1rem; }
.gn-pick .g-link { margin-top: 1.4rem; padding-top: 1.2rem; border-top: 1px solid rgba(10, 31, 42, 0.08); width: 100%; }
.gn-picks-note { margin-top: 1.6rem; font-size: 0.88rem; color: var(--g-on-cream-2); max-width: 42rem; }

/* ---------- pas s pripadovymi studiemi (kalkulacky) ---------- */
.gn-proof { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.1rem; margin-top: clamp(2.5rem, 4vw, 3.5rem); }
.gn-proof .g-tile { min-height: 100%; }

/* ---------- kalkulacka jako aplikace (#gxCalc) - jen doladeni rytmu, bez zmeny markupu ---------- */
#gxCalc.calc-band { padding-top: clamp(1.75rem, 3vw, 2.75rem); }
/* vlastni sticky lista kalkulacky (#calcBar) uz resi mobilni CTA - sdilenou listu skryjeme, aby se nepraly */
body:has(#calcBar):not(.calc-bar-scoped) .g-sticky, body.calc-in-view .g-sticky { display: none; }

/* ---------- webinar: znovupouzite wb-* tridy, jen navrat puvodni mezery po kombinaci s g-sec ---------- */
.g-sec.wb-about { padding: clamp(3.5rem, 7vw, 6rem) 0 clamp(2.5rem, 5vw, 4rem); }
.g-sec.wb-program { padding: clamp(2.5rem, 5vw, 4rem) 0; }
.g-sec.wb-flowsec { padding: clamp(2.5rem, 5vw, 4rem) 0; }
.g-sec.wb-speakers { padding: clamp(2.5rem, 5vw, 4rem) 0 clamp(3.5rem, 7vw, 6rem); }
.g-sec.wb-final { padding: clamp(3.5rem, 7vw, 6rem) 0; }
/* zadne dekorativni hairliny: puvodni .wb-facts mela mini mint carku pred prvni polozkou */
.wb-facts li:first-child::before { display: none; }

@media (max-width: 900px) {
  .gn-picks { grid-template-columns: 1fr; }
  .gn-proof { grid-template-columns: 1fr; }
}
/* mobil: mřížka pod kalkulačkou se nesmí roztáhnout podle nezalomitelného textu (dřív 434 px na 390 px displeji) */
@media (max-width: 980px) { .calc-below { grid-template-columns: minmax(0, 1fr); } }
.calc-platform, .calc-belowside { min-width: 0; }
.calc-platform b { white-space: normal; }

/* anti-slop: popisky normálním písmem místo mono VERZÁLEK s prostrkáním */
.gx2 .gn-pick__for { font-family: var(--g-ff); text-transform: none; letter-spacing: 0; font-weight: 500; font-size: 0.84rem; }

/* hub kalkulaček: náhled výsledku v úvodu */
.gk-calc-wrap { display: flex !important; justify-content: flex-end; }
.gk-calc { display: grid; gap: 0.8rem; width: 100%; max-width: 460px; padding: 1.3rem; border-radius: 22px; background: var(--g-tile); color: var(--g-on-cream); box-shadow: 0 50px 90px -40px rgba(0, 0, 0, 0.9); rotate: 1.5deg; }
.gk-calc__top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; font-size: 0.95rem; font-weight: 600; }
.gk-calc__top em { font-style: normal; font-size: 0.74rem; font-weight: 600; padding: 0.3rem 0.65rem; border-radius: 999px; background: rgba(10, 31, 42, 0.07); color: var(--g-on-cream-2); }
.gk-calc__in { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; }
.gk-calc__in div { padding: 0.7rem 0.75rem; border-radius: 12px; background: #fff; box-shadow: inset 0 0 0 1px rgba(10, 31, 42, 0.08); }
.gk-calc__in small, .gk-calc__kpi small, .gk-calc__out small { display: block; font-size: 0.74rem; line-height: 1.3; color: var(--g-on-cream-2); }
.gk-calc__in b { display: block; margin-top: 0.2rem; font-size: 1.02rem; font-weight: 600; white-space: nowrap; }
.gk-calc__out { padding: 1.1rem 1.2rem; border-radius: 16px; background: var(--g-ink-2); color: var(--g-on-dark); }
.gk-calc__out small { color: var(--g-on-dark-2); font-size: 0.85rem; }
.gk-calc__out p { display: flex; align-items: baseline; gap: 0.3rem; margin-top: 0.3rem; font-size: 3.2rem; font-weight: 400; letter-spacing: -0.05em; line-height: 1; color: var(--g-mint); }
.gk-calc__out i { font-style: normal; font-size: 0.35em; font-weight: 600; letter-spacing: 0; color: var(--g-on-dark); }
.gk-calc__kpi { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; }
.gk-calc__kpi div { padding: 0.7rem 0.75rem; border-radius: 12px; background: rgba(18, 168, 91, 0.1); }
.gk-calc__kpi b { display: block; font-size: 1.1rem; font-weight: 600; color: var(--g-m700); white-space: nowrap; }
@media (max-width: 1100px) { .gk-calc-wrap { justify-content: flex-start; } .gk-calc { rotate: none; } }
@media (max-width: 420px) { .gk-calc { padding: 1rem; } .gk-calc__in div, .gk-calc__kpi div { padding: 0.6rem 0.55rem; } .gk-calc__in b { font-size: 0.92rem; } .gk-calc__kpi b { font-size: 0.98rem; } .gk-calc__in small, .gk-calc__kpi small { font-size: 0.7rem; } }

/* ===================================================================
   Kalkulačka rozpočtu pro e-shop (rozpocet-eshop) - UX/UI úpravy 24. 9.
   Vše scoped: .calc-band--eshop (#gxCalc), .calc-modal--eshop, .calc-bar--eshop,
   .g-phero--tool. B2B/B2C kalkulačky sdílí nastroje.css a stejná id - nesmí se jich to dotknout.
   =================================================================== */

/* ---------- S1 úvod: krátký nástrojový úvod, kalkulačka nad ohybem ---------- */
.gx2 .g-phero--tool { padding: clamp(1.25rem, 2.5vw, 2rem) 0 clamp(1.5rem, 2.6vw, 2.25rem); }
.gx2 .g-phero--tool .g-crumbs { margin-bottom: 0.9rem; }
.gx2 .g-phero--tool .g-h1--page { font-size: clamp(2.2rem, 1.6rem + 2vw, 3.25rem); }
.gx2 .g-phero--tool .g-lead { margin-top: 0.8rem; max-width: 46rem; font-size: clamp(1rem, 0.95rem + 0.25vw, 1.15rem); }
.gx2 .g-phero--tool .g-lead + .g-check { display: flex; flex-wrap: wrap; gap: 0.45rem 1.5rem; margin-top: 1rem; }
.gx2 .g-phero--tool .g-check li { grid-template-columns: 20px auto; gap: 0.5rem; font-size: 0.92rem; }
.gx2 .g-phero--tool .g-check li::before { width: 20px; height: 20px; margin-top: 1px; background-size: 11px; }
.gx2 #gxCalc.calc-band--eshop { padding-top: clamp(1.25rem, 2.5vw, 2rem); color-scheme: light; }

/* ---------- S2 lead formuláře: světlá pole s popisky, 16 px, bez skla ---------- */
.gx2 .calc-modal--eshop { color-scheme: light; }
.gx2 .calc-modal--eshop .calc-modal__backdrop { background: rgba(8, 31, 46, 0.82); -webkit-backdrop-filter: none; backdrop-filter: none; }
.gx2 .calc-modal--eshop .calc-modal__card { border-radius: 22px; padding: 1.9rem 1.8rem 1.7rem; }
.gx2 .calc-modal--eshop .calc-modal__title { font-size: 1.5rem; font-weight: 600; letter-spacing: -0.02em; line-height: 1.2; }
.gx2 .calc-modal--eshop .calc-modal__sub { font-size: 0.92rem; }
.gx2 .calc-modal--eshop .calc-modal__x { width: 44px; height: 44px; top: 0.7rem; right: 0.7rem; }
.gx2 :is(.calc-modal--eshop, .calc-band--eshop) .calc-form { gap: 0.9rem; }
.gx2 :is(.calc-modal--eshop, .calc-band--eshop) .calc-form__f { display: grid; gap: 0.35rem; }
.gx2 :is(.calc-modal--eshop, .calc-band--eshop) .calc-form__lbl { font-size: 0.88rem; font-weight: 600; color: var(--g-on-cream); }
.gx2 :is(.calc-modal--eshop, .calc-band--eshop) .calc-form__lbl span { font-weight: 500; color: var(--g-on-cream-2); }
.gx2 :is(.calc-modal--eshop, .calc-band--eshop) .calc-form :is(input[type="email"], input[type="tel"]) { min-height: 48px; padding: 0.75rem 0.95rem; border: 1px solid rgba(10, 31, 42, 0.22); border-radius: 12px; background: #fff; color: var(--g-on-cream); font-size: 16px; font-weight: 500; }
.gx2 :is(.calc-modal--eshop, .calc-band--eshop) .calc-form input::placeholder { color: rgba(10, 31, 42, 0.45); }
.gx2 :is(.calc-modal--eshop, .calc-band--eshop) .calc-consent input { flex: none; width: 18px; height: 18px; margin-top: 0.1rem; accent-color: var(--g-ink-2); color-scheme: light; }
.gx2 :is(.calc-modal--eshop, .calc-band--eshop) .calc-consent label { font-size: 0.82rem; }
.gx2 .calc-band--eshop .calc-wlead .calc-form__lbl { color: var(--g-on-dark); }
.gx2 .calc-band--eshop .calc-wlead .calc-form__lbl span { color: var(--g-on-dark-2); }

/* ---------- S3 výsledky: jedna karta odpovědi, lepí po celé délce vstupů, lead pod ní ---------- */
.gx2 .calc-band--eshop .calc-grid { row-gap: 2rem; }
.gx2 .calc-band--eshop .calc-side { align-self: stretch; min-width: 0; }
.gx2 .calc-band--eshop .calc-results { top: 92px; gap: 0.75rem; }
.gx2 .calc-band--eshop .calc-main { border-radius: 22px; padding: 1.6rem 1.6rem 1.4rem; }
.gx2 .calc-band--eshop .calc-main__lbl { color: var(--g-on-dark); font-size: 1rem; font-weight: 500; }
.gx2 .calc-band--eshop .calc-main__num { margin-top: 0.45rem; font-size: clamp(3rem, 2.2rem + 2.4vw, 4.25rem); font-weight: 500; letter-spacing: -0.045em; line-height: 1; text-shadow: none; }
.gx2 .calc-band--eshop .calc-main__sub { font-size: 0.9rem; margin-top: 0.55rem; }
.gx2 .calc-band--eshop .calc-main__drop { margin: 0.45rem 0 0; padding-top: 0; border-top: 0; font-family: var(--g-ff); font-size: 0.86rem; letter-spacing: 0; color: var(--g-on-dark-2); }
.gx2 .calc-band--eshop .calc-main__kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.5rem; margin: 1.1rem 0 0; }
.gx2 .calc-band--eshop .calc-main__kpis > div { display: flex; flex-direction: column; justify-content: space-between; gap: 0.25rem; padding: 0.7rem 0.8rem; border-radius: 12px; background: rgba(244, 239, 229, 0.07); }
.gx2 .calc-band--eshop .calc-main__kpis dt { font-size: 0.8rem; line-height: 1.3; color: var(--g-on-dark-2); }
.gx2 .calc-band--eshop .calc-main__kpis dd { margin: 0; font-size: 1.15rem; font-weight: 600; letter-spacing: -0.01em; color: var(--g-on-dark); font-variant-numeric: tabular-nums; white-space: nowrap; }
/* 2. řádek mřížky: vlevo "Co z toho plyne", vpravo lead karta (lepící panel končí nad ní) */
.gx2 .calc-band--eshop .calc-next { min-width: 0; max-width: 46rem; }
.gx2 .calc-band--eshop .calc-next:has(#outInterp:empty) { display: none; }
.gx2 .calc-band--eshop .calc-next__h { margin: 0 0 0.6rem; font-size: 1.15rem; font-weight: 600; letter-spacing: -0.01em; color: var(--g-on-cream); }
.gx2 .calc-band--eshop .calc-interp p { margin: 0 0 0.45rem; padding: 0.75rem 0.95rem; border: 0; border-radius: 12px; background: rgba(10, 31, 42, 0.05); font-size: 0.92rem; line-height: 1.55; color: var(--g-on-cream-2); }
.gx2 .calc-band--eshop .calc-interp p:last-child { margin-bottom: 0; }
.gx2 .calc-band--eshop .calc-exits { margin-top: 0; min-width: 0; }
@media (min-width: 981px) {
  .gx2 .calc-band--eshop .calc-next { grid-column: 1; }
  .gx2 .calc-band--eshop .calc-exits { grid-column: 2; }
}
/* lead karta: klidná světlá dlaždice, tmavá jen když kampaň nevychází */
.gx2 .calc-band--eshop #edLead { background: var(--g-tile); color: var(--g-on-cream); box-shadow: inset 0 0 0 1px rgba(10, 31, 42, 0.1); }
.gx2 .calc-band--eshop #edLead h3 { color: var(--g-on-cream); font-size: 1.25rem; font-weight: 600; letter-spacing: -0.02em; }
.gx2 .calc-band--eshop #edLead p { color: var(--g-on-cream-2); }
.gx2 .calc-band--eshop #edLead .btn { background: var(--g-ink-2); color: var(--g-on-dark); }
.gx2 .calc-band--eshop #edLead .btn:hover { background: var(--g-band); }
.gx2 .calc-band--eshop:has(#outMainCard.is-off, #outB:not([hidden]) > #outVerdict.calc-verdict--not) #edLead { background: linear-gradient(160deg, rgba(42, 232, 137, 0.12), rgba(42, 232, 137, 0.02) 55%), var(--g-band); color: var(--g-on-dark); box-shadow: none; }
.gx2 .calc-band--eshop:has(#outMainCard.is-off, #outB:not([hidden]) > #outVerdict.calc-verdict--not) #edLead h3 { color: #fff; }
.gx2 .calc-band--eshop:has(#outMainCard.is-off, #outB:not([hidden]) > #outVerdict.calc-verdict--not) #edLead p { color: var(--g-on-dark-2); }
.gx2 .calc-band--eshop:has(#outMainCard.is-off, #outB:not([hidden]) > #outVerdict.calc-verdict--not) #edLead .btn { background: var(--g-mint); color: var(--g-ink-2); }
@media (max-height: 700px) and (min-width: 981px) { .gx2 .calc-band--eshop .calc-results { position: static; } }

/* ---------- S4 chybový stav: karta zůstává plná, důvod přímo v ní ---------- */
.gx2 .calc-band--eshop .calc-main.is-off { opacity: 1; }
.gx2 .calc-band--eshop .calc-main.is-off .calc-main__num { display: none; }
.gx2 .calc-band--eshop .calc-main .calc-warn { margin: 0.8rem 0 0; padding: 0.75rem 0.95rem; border: 0; border-radius: 12px; background: rgba(232, 168, 76, 0.16); color: #f4d3a1; font-size: 0.92rem; font-weight: 600; line-height: 1.5; }
.gx2 .calc-band--eshop .calc-warn { border-left: 1px solid #e6c493; border-radius: 12px; }
.gx2 .calc-band--eshop:has(#outMainCard.is-off) #outB { display: none; }

/* ---------- S5 karty, pole a posuvníky: v2 povrchy, 48px pole, 44px cíle ---------- */
.gx2 .calc-band--eshop :is(.calc-card, .calc-wstep:not(.calc-wstep--reveal), .calc-wplat, .calc-wface__col) { background: var(--g-tile); border: 1px solid rgba(10, 31, 42, 0.08); border-radius: 20px; box-shadow: 0 18px 36px -26px rgba(8, 31, 46, 0.45); }
.gx2 .calc-band--eshop .calc-card__title { font-size: 1.4rem; font-weight: 600; letter-spacing: -0.02em; }
.gx2 .calc-band--eshop .calc-card__step { font-family: var(--g-ff); font-size: 0.8rem; font-weight: 700; }
.gx2 .calc-band--eshop .calc-card__lead { margin: 0.35rem 0 0.1rem; max-width: 36rem; font-size: 0.92rem; line-height: 1.5; color: var(--g-on-cream-2); }
.gx2 .calc-band--eshop .calc-inwrap { background: #fff; }
.gx2 .calc-band--eshop .calc-inwrap :is(input, select) { min-height: 48px; box-sizing: border-box; }
.gx2 .calc-band--eshop .calc-inwrap:not(.calc-inwrap--big) :is(input, select), .gx2 .calc-band--eshop .calc-est select { font-size: 16px; }
.gx2 .calc-band--eshop .calc-unit { font-family: var(--g-ff); font-size: 0.88rem; font-weight: 500; letter-spacing: 0; }
.gx2 .calc-band--eshop input[type="range"] { height: 44px; margin: 0; background: transparent; }
.gx2 .calc-band--eshop input[type="range"]::-webkit-slider-runnable-track { height: 8px; border-radius: 99px; background: rgba(10, 31, 42, 0.14); }
.gx2 .calc-band--eshop input[type="range"]::-moz-range-track { height: 8px; border-radius: 99px; background: rgba(10, 31, 42, 0.14); }
.gx2 .calc-band--eshop input[type="range"]::-webkit-slider-thumb { box-sizing: border-box; width: 28px; height: 28px; margin-top: -10px; }
.gx2 .calc-band--eshop input[type="range"]::-moz-range-thumb { box-sizing: border-box; width: 28px; height: 28px; }
.gx2 :is(.calc-band--eshop, .calc-modal--eshop) .btn { min-height: 52px; padding: 0.7rem 1.4rem; font-size: 1rem; font-weight: 600; line-height: 1.25; white-space: normal; text-wrap: balance; text-align: center; }
.gx2 :is(.calc-band--eshop, .calc-modal--eshop) .btn svg { flex: none; }
.gx2 .calc-band--eshop .calc-mode__btn { min-height: 44px; }
@media (max-width: 760px) {
  .gx2 .calc-band--eshop :is(.calc-link, .calc-copy, .calc-wiz__back) { display: inline-flex; align-items: center; min-height: 44px; }
  .gx2 .calc-band--eshop .calc-switch { min-height: 44px; }
}

/* ---------- S6 blok B: čitelná výzva, obor napřed, přepínač u rozpočtu ---------- */
.gx2 .calc-band--eshop .calc-card__hint { font-size: 0.9rem; max-width: 30rem; }
.gx2 .calc-band--eshop #blockBOpenPill { display: inline-flex; align-items: center; gap: 0.45rem; min-height: 40px; padding: 0 0.9rem 0 1.05rem; border: 0; border-radius: 999px; background: var(--g-ink-2); color: var(--g-mint); font-size: 0.86rem; font-weight: 600; white-space: nowrap; }
.gx2 .calc-band--eshop #blockBOpenPill::after { content: ""; width: 14px; height: 14px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform 200ms var(--g-ease); }
.gx2 .calc-band--eshop #blockBToggle[aria-expanded="true"] #blockBOpenPill { background: transparent; color: var(--g-ink-2); box-shadow: inset 0 0 0 1px rgba(10, 31, 42, 0.22); }
.gx2 .calc-band--eshop #blockBToggle[aria-expanded="true"] #blockBOpenPill::after { transform: rotate(180deg); }
.gx2 .calc-band--eshop #blockB:not(.is-open) { border-color: rgba(10, 31, 42, 0.16); box-shadow: 0 22px 44px -24px rgba(8, 31, 46, 0.55); }
.gx2 .calc-band--eshop #blockBToggle > span:first-child { min-width: 0; }
@media (max-width: 560px) {
  .gx2 .calc-band--eshop #blockBToggle { flex-direction: column; align-items: flex-start; gap: 0.9rem; }
}
.gx2 .calc-band--eshop .calc-est { margin: 1.1rem 0 0; padding: 0.9rem 1rem 1rem; border-radius: 14px; background: rgba(10, 31, 42, 0.05); }
.gx2 .calc-band--eshop .calc-est label { font-size: 0.88rem; }
.gx2 .calc-band--eshop .calc-est select { min-height: 48px; padding: 0.6rem 0.8rem; border-radius: 12px; font-weight: 600; }
.gx2 .calc-band--eshop .calc-est__note { font-size: 0.84rem; }
.gx2 .calc-band--eshop .calc-helper { border: 0; background: rgba(10, 31, 42, 0.05); }
.gx2 .calc-band--eshop .is-estimate .calc-inwrap { border-style: solid; border-color: rgba(10, 122, 67, 0.55); background: #f2faf5; }
.gx2 .calc-band--eshop .calc-est-badge { color: var(--g-m700); }

/* ---------- S7 verdikt a objem: řádky bez odrážek, zisk/ztráta první ---------- */
.gx2 .calc-band--eshop .calc-verdict { padding: 1rem 1.1rem; border-radius: 16px; }
.gx2 .calc-band--eshop .calc-verdict__alt ul { list-style: none; margin: 0.5rem 0 0; padding: 0; display: grid; gap: 0.4rem; }
.gx2 .calc-band--eshop .calc-verdict__alt li { margin: 0; padding: 0.55rem 0.8rem; border-radius: 10px; background: rgba(255, 255, 255, 0.7); }
.gx2 .calc-band--eshop .calc-vol { grid-template-columns: minmax(0, 1fr); gap: 0.3rem; margin-top: 0.55rem; }
.gx2 .calc-band--eshop .calc-vol__item { display: flex; flex-direction: row-reverse; justify-content: space-between; align-items: baseline; gap: 1rem; padding: 0.5rem 0.95rem; text-align: left; background: var(--g-tile); border: 1px solid rgba(10, 31, 42, 0.08); border-radius: 12px; }
.gx2 .calc-band--eshop .calc-vol__item span { margin-top: 0; }
.gx2 .calc-band--eshop .calc-vol__item b { font-size: 1.02rem; white-space: nowrap; }
.gx2 .calc-band--eshop .calc-vol__item:is(.is-neg, .is-pos) { order: -1; padding: 0.75rem 0.95rem; }
.gx2 .calc-band--eshop .calc-vol__item:is(.is-neg, .is-pos) span { font-size: 0.92rem; font-weight: 600; color: var(--g-on-cream); }
.gx2 .calc-band--eshop .calc-vol__item:is(.is-neg, .is-pos) b { font-size: 1.4rem; }

/* ---------- S8 čísla pro Google Ads a Meta: jedna karta přes celou šířku ---------- */
.gx2 .calc-band--eshop .calc-below { grid-template-columns: minmax(0, 1fr); margin-top: 2rem; }
.gx2 .calc-band--eshop .calc-platform { padding: clamp(1.3rem, 2.5vw, 1.9rem); background: var(--g-tile); border: 1px solid rgba(10, 31, 42, 0.08); border-radius: 20px; box-shadow: 0 18px 36px -26px rgba(8, 31, 46, 0.45); }
.gx2 .calc-band--eshop .calc-platform__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.4rem 1.5rem; }
.gx2 .calc-band--eshop .calc-platform__head h3 { margin: 0; font-size: 1.4rem; font-weight: 600; letter-spacing: -0.02em; }
.gx2 .calc-band--eshop .calc-platform .calc-switch { margin: 0; font-size: 0.9rem; font-weight: 600; color: var(--g-on-cream); }
.gx2 .calc-band--eshop .calc-platform__note { margin: 0.35rem 0 0; padding: 0; border: 0; max-width: 52rem; font-size: 0.86rem; }
.gx2 .calc-band--eshop .calc-below .calc-platform__rows { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.6rem; margin-top: 1.2rem; }
.gx2 .calc-band--eshop .calc-below .calc-platform__row { display: flex; flex-direction: column-reverse; justify-content: flex-end; align-items: flex-start; gap: 0.35rem; padding: 0.95rem 1rem; border: 0; border-radius: 14px; background: #fff; box-shadow: inset 0 0 0 1px rgba(10, 31, 42, 0.08); font-size: 0.86rem; line-height: 1.35; }
.gx2 .calc-band--eshop .calc-below .calc-platform__row b { font-size: 1.45rem; font-weight: 600; }
.gx2 .calc-band--eshop .calc-platform__sub { margin: 1.4rem 0 0; font-size: 0.95rem; font-weight: 600; color: var(--g-on-cream); }
.gx2 .calc-band--eshop .calc-below .calc-platform__rows--sec { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 0.6rem; }
.gx2 .calc-band--eshop .calc-below .calc-platform__rows--sec .calc-platform__row { background: transparent; }
.gx2 .calc-band--eshop .calc-below .calc-platform__rows--sec .calc-platform__row b { font-size: 1.15rem; }
.gx2 .calc-band--eshop .calc-disclaimer { margin-top: 1.4rem; }
.gx2 .calc-band--eshop:has(#calcWiz:not([hidden])) .calc-below { display: none; }
@media (max-width: 1100px) { .gx2 .calc-band--eshop .calc-below .calc-platform__rows:not(.calc-platform__rows--sec) { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 760px) {
  .gx2 .calc-band--eshop .calc-below .calc-platform__rows, .gx2 .calc-band--eshop .calc-below .calc-platform__rows:not(.calc-platform__rows--sec) { grid-template-columns: minmax(0, 1fr); gap: 0.4rem; }
  .gx2 .calc-band--eshop .calc-below .calc-platform__row { flex-direction: row; justify-content: space-between; align-items: baseline; gap: 1rem; padding: 0.75rem 0.9rem; }
  .gx2 .calc-band--eshop .calc-below .calc-platform__row b { font-size: 1.15rem; }
}

/* ---------- S9 zbytky v1: žádné mono verzálky, pruhy ani čárkované linky ---------- */
.gx2 .calc-band--eshop :is(.calc-tipbtn, .calc-wiz__badge, .calc-wiz__progress, .calc-wstep__promise, .calc-wplat__bonus, .calc-wface__col span, .calc-wlines span) { font-family: var(--g-ff); text-transform: none; letter-spacing: 0; }
.gx2 .calc-band--eshop :is(.calc-wiz__badge, .calc-wiz__progress, .calc-wstep__promise, .calc-wface__col span, .calc-wlines span) { font-size: 0.86rem; font-weight: 500; }
.gx2 .calc-band--eshop .calc-tipbtn { font-size: 0.72rem; font-weight: 700; }
.gx2 .calc-band--eshop .calc-wplat__bonus { font-size: 0.9rem; font-weight: 500; color: var(--g-m700); }
.gx2 .calc-band--eshop .calc-wplat summary::after { content: "Rozbalit"; font-family: var(--g-ff); font-size: 0.84rem; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--g-m700); }
.gx2 .calc-band--eshop .calc-wplat[open] summary::after { content: "Sbalit"; }
.gx2 .calc-band--eshop .calc-wplat :is(.calc-platform__row, .calc-platform__note) { border-top: 0; }
.gx2 .calc-band--eshop .calc-wplat .calc-platform__row { padding: 0.6rem 0.75rem; border-radius: 10px; }
.gx2 .calc-band--eshop .calc-wplat .calc-platform__row:nth-child(odd) { background: rgba(10, 31, 42, 0.04); }

/* ---------- S10 mobilní lišta: jen u kalkulačky, se stavem verdiktu ---------- */
.gx2 .calc-bar--eshop .calc-bar__num::after { display: none; margin-left: 0.55rem; padding: 0.22rem 0.6rem; border-radius: 999px; font-family: var(--g-ff); font-size: 0.78rem; font-weight: 600; letter-spacing: 0; vertical-align: 0.3em; }
.gx2:has(.calc-band--eshop #outB:not([hidden]) > #outVerdict.calc-verdict--not) .calc-bar--eshop .calc-bar__num::after { content: "Nevejdete se"; display: inline-block; color: #ffb3a9; background: rgba(255, 120, 110, 0.16); }
.gx2:has(.calc-band--eshop #outB:not([hidden]) > #outVerdict.calc-verdict--fits) .calc-bar--eshop .calc-bar__num::after { content: "Vejdete se"; display: inline-block; color: var(--g-mint); background: rgba(42, 232, 137, 0.14); }
@supports (animation-timeline: view()) and (timeline-scope: --a) {
  @media (max-width: 980px) {
    .gx2:has(.calc-band--eshop) { timeline-scope: --gx-eshop; }
    .gx2 .calc-band--eshop { view-timeline: --gx-eshop block; }
    .gx2 .calc-bar--eshop { animation: gx-eshop-bar linear both; animation-timeline: --gx-eshop; }
  }
}
@keyframes gx-eshop-bar {
  entry 0% { translate: 0 110%; visibility: hidden; }
  entry 25% { translate: 0 0; visibility: visible; }
  exit 5% { translate: 0 0; visibility: visible; }
  exit 35% { translate: 0 110%; visibility: hidden; }
  exit 100% { translate: 0 110%; visibility: hidden; }
}

/* ===================================================================
   Kalkulačky poptávek B2B + B2C (poptavky-b2b, poptavky-b2c) - UX/UI úpravy 24. 9.
   Vše scoped: .calc-band--b2b/--b2c (#gxCalc), .calc-modal--b2b/--b2c, .calc-bar--b2b/--b2c,
   .g-phero--b2b/--b2c, .gn-proof--lead a B2B-only id (#offlineCard). E-shop kalkulačky se to nedotkne.
   =================================================================== */

/* B2B kalkulacka 1: uvod jako vstup do nastroje */
.gx2 :is(.g-phero--b2b, .g-phero--b2c) { padding: clamp(1.5rem, 3vw, 2.25rem) 0 clamp(1.75rem, 3vw, 2.5rem); }
.gx2 :is(.g-phero--b2b, .g-phero--b2c) .g-crumbs { margin-bottom: 1rem; }
.gx2 :is(.g-phero--b2b, .g-phero--b2c) .g-h1--page { font-size: clamp(2.1rem, 1.5rem + 1.9vw, 3.3rem); }
.gx2 :is(.g-phero--b2b, .g-phero--b2c) .g-lead { margin-top: 0.9rem; max-width: 44rem; }
.gx2 :is(.g-phero--b2b, .g-phero--b2c) .g-lead + .g-check { display: flex; flex-wrap: wrap; gap: 0.5rem 1.4rem; margin-top: 1rem; }
.gx2 :is(.g-phero--b2b, .g-phero--b2c) .g-check li { grid-template-columns: 20px 1fr; gap: 0.5rem; font-size: 0.92rem; }
.gx2 :is(.g-phero--b2b, .g-phero--b2c) .g-check li::before { width: 20px; height: 20px; margin-top: 1px; background-size: 11px; }
.gx2 #gxCalc:is(.calc-band--b2b, .calc-band--b2c) { padding-top: clamp(1.25rem, 2.5vw, 2rem); }
@media (max-width: 760px) { .gx2 :is(.g-phero--b2b, .g-phero--b2c) .g-check li:nth-child(3) { display: none; } }

/* B2B kalkulacka 2: svetle nativni prvky + pole ve formulari (html ma color-scheme: dark z growtix.css) */
.gx2 #gxCalc:is(.calc-band--b2b, .calc-band--b2c), .gx2 :is(.calc-modal--b2b, .calc-modal--b2c) { color-scheme: light; }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-form input[type="email"], .gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-form input[type="tel"] { width: 100%; min-height: 48px; padding: 0.7rem 0.9rem; border: 1px solid rgba(10, 31, 42, 0.22); border-radius: 12px; background: #fff; color: var(--g-on-cream); font: inherit; font-size: 1rem; }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-form input:focus-visible { border-color: var(--g-ink-2); }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-form input::placeholder { color: rgba(10, 31, 42, 0.5); opacity: 1; }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-consent input { flex: none; width: 20px; height: 20px; margin: 0.05rem 0 0; accent-color: var(--g-m700); }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-consent label { font-size: 0.8rem; }
@media (max-width: 760px) { .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-inwrap:not(.calc-inwrap--big) :is(input, select) { font-size: 16px; } }

/* B2B kalkulacka 3: sticky sloupec jen s zivym vystupem, CTA pas pod nastrojem, tichy odkaz na audit v kroku 1 */
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-results { gap: 0.75rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-main { padding: 1.4rem 1.5rem 1.35rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .funnel { margin-top: 0.7rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .funnel__row { height: 2.6rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .funnel__joint { height: 1.6rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict { padding: 0.95rem 1.1rem; font-size: 0.9rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0.45rem; margin-top: 0; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item { grid-column: span 2; display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: 0.2rem; padding: 0.6rem 0.5rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item:nth-child(4), .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item:nth-child(5) { grid-column: span 3; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item span { margin-top: 0; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item:last-child { grid-column: 1 / -1; flex-direction: row-reverse; justify-content: space-between; align-items: baseline; padding: 0.8rem 1rem; text-align: left; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item:last-child span { font-size: 0.92rem; font-weight: 600; color: var(--g-on-cream); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item:last-child b { font-size: 1.5rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item.is-pos b { color: var(--g-m700); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item.is-neg b { color: #b3261e; }
@media (max-width: 560px) {
  .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item { grid-column: span 3; }
  .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vol__item:nth-child(5) { grid-column: 1 / -1; flex-direction: row-reverse; justify-content: space-between; align-items: baseline; padding: 0.7rem 1rem; text-align: left; }
}
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-exits { align-items: flex-start; gap: 0.4rem; margin-top: 1.4rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-wlead { align-self: stretch; }
@media (min-width: 981px) {
  .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-wlead:not([hidden]) { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 2.5rem; align-items: center; padding: 1.7rem 2rem; }
  .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-wlead h3, .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-wlead p { grid-column: 1; }
  .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-wlead p { max-width: 46rem; margin-bottom: 0; }
  .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-wlead .btn { grid-column: 2; grid-row: 1 / span 2; width: auto; }
}
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-softexit { margin: 0; text-align: center; font-size: 0.9rem; color: var(--g-on-cream-2); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-softexit a { display: inline-block; padding: 0.4rem 0; font-weight: 600; color: var(--g-m700); text-decoration: underline; text-underline-offset: 3px; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) #step2Btn[hidden] + .calc-softexit { display: none; }

/* B2B kalkulacka 4: verdikt a upozorneni v barvach znacky, bez bocniho pruhu a zare; prepinac hodnoty jako tlacitko */
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict { border: 0; border-radius: 14px; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict--fits { background: rgba(42, 232, 137, 0.16); color: var(--g-ink-2); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict--fits .calc-verdict__icon { background: var(--g-m700); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict--not { background: #fbeae7; color: #4a1410; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict--not .calc-verdict__icon { background: #b3261e; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict--warn { background: #f6eedd; color: #5a3a0a; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict--warn .calc-verdict__icon { background: #a04a00; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict__alt:not(:empty) { margin-top: 0.5rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-warn { display: flex; align-items: flex-start; gap: 0.7rem; padding: 0.9rem 1rem; border: 0; border-radius: 14px; background: #f6eedd; color: #5a3a0a; font-size: 0.86rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-warn::before { content: "!"; flex: none; display: grid; place-items: center; width: 1.4rem; height: 1.4rem; border-radius: 50%; background: #a04a00; color: #fff; font-size: 0.8rem; font-weight: 700; line-height: 1; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-main__num { text-shadow: none; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .funnel__bar--payoff { box-shadow: none; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vs__num.is-pos { color: var(--g-m700); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vs__num.is-neg { color: #b3261e; }
/* JS kresli do #outVerdictAlt: 'Zkuste <button id=verdictSwitch>prepnout na ...</button> - u ... obvykle obrati cely vysledek.' Button nejde zalomit do vety,
   proto okolni text schovame (ctecky ho dal prectou), tlacitko ukazeme jako pill a vysvetleni doplnime pod nej. Text drzet v souladu s app-b2b.js / app-b2c.js. */
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict__alt:has(#verdictSwitch) { margin-top: 0.7rem; font-size: 0; line-height: 0; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) #verdictSwitch { display: inline-block; padding: 0.65rem 1rem; border: 1px solid rgba(74, 20, 16, 0.3); border-radius: 1.4rem; background: #fff; font-size: 0.86rem; line-height: 1.3; text-align: left; text-decoration: none; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) #verdictSwitch::first-letter { text-transform: uppercase; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) #verdictSwitch:hover { border-color: currentColor; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-verdict__alt:has(#verdictSwitch)::after { display: block; margin-top: 0.5rem; font-size: 0.84rem; line-height: 1.5; }
.gx2 .calc-band--b2b .calc-verdict__alt:has(#verdictSwitch)::after { content: "U předplatného a servisních smluv to obvykle obrátí celý výsledek."; content: "U předplatného a servisních smluv to obvykle obrátí celý výsledek." / ""; }

/* B2B kalkulacka 5: predani do auditu (popisky poli, kontakt na cloveka, overlay bez rozmazani) */
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-form__lbl { margin-bottom: -0.35rem; font-size: 0.86rem; font-weight: 600; color: var(--g-on-cream); }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-form__lbl span { font-weight: 500; color: var(--g-on-cream-2); }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-modal__direct { max-width: none; margin-top: 1.2rem; padding: 0.75rem 1rem 0.75rem 0.75rem; gap: 0.85rem; border-radius: 16px; background: var(--g-tile); }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-modal__direct img { width: 44px; height: 44px; }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-modal__direct p { font-size: 0.86rem; color: var(--g-on-cream-2); }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-modal__direct a { font-size: 1.02rem; color: var(--g-on-cream); }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-modal__direct a:hover { color: var(--g-m700); }
.gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .calc-modal__backdrop { background: rgba(8, 31, 46, 0.8); -webkit-backdrop-filter: none; backdrop-filter: none; }
.gx2 #gxCalc:is(.calc-band--b2b, .calc-band--b2c) .btn--primary, .gx2 :is(.calc-modal--b2b, .calc-modal--b2c) .btn--primary { min-height: 52px; font-weight: 600; }

/* B2B kalkulacka 6: zadne mono v realnem UI, klidne stitky, dopoctene pole jako vysledek */
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-card__step { font-family: var(--g-ff); font-size: 0.82rem; font-weight: 700; letter-spacing: 0; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-unit { font-family: var(--g-ff); font-size: 0.9rem; font-weight: 500; letter-spacing: 0; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-tipbtn { font-family: var(--g-ff); font-size: 0.72rem; font-weight: 700; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-opt { padding: 0; border: 0; border-radius: 0; font-size: 0.8rem; font-weight: 500; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-vs__badge { border: 0; background: rgba(10, 31, 42, 0.06); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-derived { border: 0; border-radius: 12px; background: var(--g-tile); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-derived b { font-size: 1.3rem; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) #estFootnote { margin: 0.1rem 0 0.2rem; font-size: 0.86rem; }

/* B2B kalkulacka 7: mobil - vysledek hned pod krokem 1 (sbalena karta 2 zdvojovala mint tlacitko) */
@media (max-width: 980px) { .gx2 :is(.calc-band--b2b, .calc-band--b2c) #blockB:has(#blockBToggle[aria-expanded="false"]) { display: none; } }

/* B2B kalkulacka 8: mobilni lista jako plovouci pill (v2), zobrazuje ji inline skript jen v kalkulacce */
@media (max-width: 980px) {
  .gx2 :is(.calc-bar--b2b, .calc-bar--b2c) { left: 0.75rem; right: 0.75rem; bottom: calc(0.75rem + env(safe-area-inset-bottom, 0px)); padding: 0.45rem 0.45rem 0.45rem 1.2rem; border: 0; border-radius: 999px; background: var(--g-ink-2); box-shadow: 0 12px 36px -8px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(244, 239, 229, 0.1); transition: transform 260ms var(--g-ease); }
  .gx2 :is(.calc-bar--b2b, .calc-bar--b2c) .btn { min-height: 48px; padding: 0 1.3rem; }
  .gx2 :is(.calc-bar--b2b, .calc-bar--b2c).is-off { transform: translateY(160%); }
}

/* B2B kalkulacka 9: cile pro prst (posuvniky 44 px, mala pole, napoveda, textova tlacitka) */
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-field input[type="range"] { height: 44px; background: transparent; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-field input[type="range"]::-webkit-slider-runnable-track { height: 8px; border-radius: 99px; background: rgba(10, 31, 42, 0.12); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-field input[type="range"]::-webkit-slider-thumb { width: 26px; height: 26px; margin-top: -9px; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-field input[type="range"]::-moz-range-track { height: 8px; border-radius: 99px; background: rgba(10, 31, 42, 0.12); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-field input[type="range"]::-moz-range-thumb { width: 20px; height: 20px; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-inwrap--sm input { min-height: 44px; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-tipbtn { position: relative; width: 22px; height: 22px; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-tipbtn::after { content: ""; position: absolute; inset: -10px; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-copy { min-height: 44px; }

/* B2B kalkulacka 10: offline konverze - radky jako dlazdice misto carkovanych car, tlacitko kopirovani, most do auditu */
.gx2 #offlineCard .calc-blk-label { display: block; margin: 1.2rem 0 0.5rem; font-size: 0.92rem; font-weight: 600; color: var(--g-on-cream); }
.gx2 #offlineBody > .calc-blk-label:first-child { margin-top: 0.5rem; }
.gx2 #offlineCard .calc-platform__rows { display: grid; gap: 4px; }
.gx2 #offlineCard .calc-platform__row { padding: 0.65rem 0.9rem; border-top: 0; border-radius: 10px; background: var(--g-tile); }
.gx2 #offlineCard .calc-platform__note { margin-top: 0.9rem; padding-top: 0; border-top: 0; }
.gx2 #copyOffline { display: inline-flex; align-items: center; min-height: 44px; margin-top: 0.9rem; padding: 0 1.1rem; border: 1px solid rgba(10, 31, 42, 0.25); border-radius: 999px; color: var(--g-on-cream); font-weight: 600; text-decoration: none; }
.gx2 #copyOffline:hover { border-color: var(--g-ink-2); }
.gx2 .calc-band--b2b .calc-platform__cta { margin-top: 1rem; font-size: 0.95rem; color: var(--g-m700); }
.gx2 #offlineCard.is-locked { opacity: 1; background: var(--g-tile); }

/* B2B kalkulacka 11: B2B pripadovka jako hlavni dukaz */
.gx2 .gn-proof--lead { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr); }
.gx2 .gn-proof--lead > .g-tile:first-child .g-tile__v { font-size: clamp(2.6rem, 2rem + 1.5vw, 3.4rem); }
@media (max-width: 900px) { .gx2 .gn-proof--lead { grid-template-columns: minmax(0, 1fr); } }

/* B2B kalkulacka 12: karta 2 jako pozvanka, nadpis mimo tlacitko */
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-card__head { margin: 0; font: inherit; letter-spacing: normal; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-card__open { display: inline-flex; align-items: center; gap: 0.5rem; min-height: 36px; padding: 0 0.95rem; border: 0; border-radius: 999px; background: var(--g-ink-2); color: var(--g-on-dark); font-size: 0.84rem; font-weight: 600; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-card__open::after { content: ""; width: 0.42rem; height: 0.42rem; border: solid currentColor; border-width: 0 2px 2px 0; rotate: 45deg; translate: 0 -2px; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) [aria-expanded="true"] > .calc-card__open { background: transparent; color: var(--g-on-cream); box-shadow: inset 0 0 0 1px rgba(10, 31, 42, 0.2); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) [aria-expanded="true"] > .calc-card__open::after { rotate: 225deg; translate: 0 2px; }
@media (max-width: 560px) { .gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-card__toggle { flex-wrap: wrap; row-gap: 0.8rem; } }

/* B2B kalkulacka 13: vyklad pod nastrojem jako obsah, ne poznamka pod carou */
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-belowside__title { margin: 0; font-size: 1.18rem; font-weight: 600; letter-spacing: -0.02em; color: var(--g-on-cream); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-interp p { padding: 0.85rem 1rem; border-radius: 14px; background: var(--g-tile); font-size: 0.92rem; color: rgba(10, 31, 42, 0.78); }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-method summary { display: flex; align-items: center; gap: 0.5rem; min-height: 44px; list-style: none; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-method summary::-webkit-details-marker { display: none; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-method summary::after { content: ""; width: 0.42rem; height: 0.42rem; border: solid currentColor; border-width: 0 2px 2px 0; rotate: 45deg; translate: 0 -2px; }
.gx2 :is(.calc-band--b2b, .calc-band--b2c) .calc-method[open] summary::after { rotate: 225deg; translate: 0 2px; }

/* B2C kalkulacka: stejne upravy jako B2B (selektory vyse maji i .calc-band--b2c), tady jen rozdily */
/* text pod prepinacem ve ztratovem verdiktu - drzet v souladu s app-b2c.js renderVerdict() */
.gx2 .calc-band--b2c .calc-verdict__alt:has(#verdictSwitch)::after { content: "U opakovaných služeb to obvykle obrátí celý výsledek."; content: "U opakovaných služeb to obvykle obrátí celý výsledek." / ""; }
/* "Kde vzít vlastní čísla": řádky jako dlaždice místo linek (obdoba B2B kroku 10) */
.gx2 .calc-band--b2c .calc-platform__rows { display: grid; gap: 4px; }
.gx2 .calc-band--b2c .calc-platform__row { padding: 0.65rem 0.9rem; border-top: 0; border-radius: 10px; background: var(--g-tile); }
.gx2 .calc-band--b2c .calc-platform__note { margin-top: 0.9rem; padding-top: 0; border-top: 0; }

/* ===== Audit 24. 9., část A: webinář ===== */
/* odstavec bez bočního mint pruhu, odděluje jen mezera */
.gx2 .wb-about__body { border-left: 0; padding-left: 0; }
/* hierarchie písma: H1 > H2 sekcí > nadpisy programu > úvodní odstavec; zvýraznění v H1 jako jinde na webu */
.gx2 .wb-hero__h1 { font-size: clamp(2.2rem, 1.5rem + 2.2vw, 3.5rem); line-height: 1.04; letter-spacing: -0.035em; }
.gx2 .wb-hero__h1 em { font-style: italic; color: var(--g-mint); }
.gx2 .wb-h2 { font-size: clamp(1.8rem, 1.3rem + 1.4vw, 2.6rem); line-height: 1.1; letter-spacing: -0.03em; }
.gx2 .wb-agenda__title { font-size: clamp(1.3rem, 1.1rem + 0.6vw, 1.7rem); line-height: 1.2; }
.gx2 .wb-about__lead { font-size: clamp(1.1rem, 1rem + 0.35vw, 1.3rem); font-weight: 500; line-height: 1.55; }

/* případovky pod kalkulačkami (24. 9.): světlé karty s fotkou, logem klienta, číslem s popiskem, dvěma údaji a odkazem.
   Všechny stejně světlé na tmavém pásu, stejná výška, odkaz dole na jedné lince. Mobil = vodorovný pás s dojezdem. */
.gx2 .gn-cases { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; margin-top: clamp(2.5rem, 4vw, 3.5rem); }
.gx2 .gn-case { display: flex; flex-direction: column; overflow: hidden; border-radius: 20px; background: var(--g-tile); color: var(--g-on-cream); text-decoration: none; box-shadow: 0 24px 48px -32px rgba(0, 0, 0, 0.7); transition: translate 220ms var(--g-ease), box-shadow 220ms var(--g-ease); }
.gx2 .gn-case:hover { translate: 0 -4px; box-shadow: 0 32px 60px -30px rgba(0, 0, 0, 0.8); }
.gx2 .gn-case:focus-visible { outline: 3px solid var(--g-mint); outline-offset: 3px; }
.gx2 .gn-case__img { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--g-band); }
.gx2 .gn-case__img picture, .gx2 .gn-case__img > picture img { display: block; width: 100%; height: 100%; object-fit: cover; transition: scale 400ms var(--g-ease); }
.gx2 .gn-case:hover .gn-case__img > picture img { scale: 1.03; }
.gx2 .gn-case__img .g-logo-chip { position: absolute; left: 1rem; bottom: 1rem; height: 36px; padding: 0 0.95rem; box-shadow: 0 8px 20px -8px rgba(0, 0, 0, 0.45); }
.gx2 .gn-case__img .g-logo-chip img { height: 18px; width: auto; }
.gx2 .gn-case__img .g-logo-chip--ink img { height: 22px; }
.gx2 .gn-case__b { display: flex; flex-direction: column; flex: 1; padding: 1.35rem 1.5rem 1.4rem; }
.gx2 .gn-case__seg { font-size: 0.9rem; font-weight: 500; color: var(--g-on-cream-2); }
.gx2 .gn-case__num { margin-top: 0.9rem; font-size: clamp(2.7rem, 1.9rem + 1.6vw, 3.4rem); font-weight: 400; line-height: 0.95; letter-spacing: -0.05em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gx2 .gn-case__num small { margin-left: 0.18em; font-size: 0.4em; font-weight: 600; letter-spacing: -0.01em; color: var(--g-m700); }
.gx2 .gn-case__lab { margin-top: 0.45rem; font-size: 1rem; font-weight: 600; line-height: 1.35; }
.gx2 .gn-case__stats { display: grid; grid-template-columns: 1fr 1fr; gap: 0.6rem; margin-top: 1.2rem; }
.gx2 .gn-case__stats > span { display: grid; gap: 0.2rem; padding: 0.75rem 0.85rem; border-radius: 12px; background: rgba(10, 31, 42, 0.05); font-size: 0.82rem; line-height: 1.3; color: var(--g-on-cream-2); }
.gx2 .gn-case__stats b { font-size: 1.12rem; font-weight: 600; letter-spacing: -0.02em; color: var(--g-on-cream); white-space: nowrap; }
.gx2 .gn-case__go { display: inline-flex; align-items: center; gap: 0.45rem; margin-top: auto; padding-top: 1.25rem; font-size: 0.95rem; font-weight: 600; color: var(--g-m700); }
.gx2 .gn-case__go svg { width: 16px; height: 16px; transition: translate 180ms var(--g-ease); }
.gx2 .gn-case:hover .gn-case__go svg { translate: 3px 0; }
@media (max-width: 1000px) and (min-width: 761px) { .gx2 .gn-case__stats { grid-template-columns: 1fr; } }
@media (max-width: 760px) {
  .gx2 .gn-cases { display: flex; gap: 0.9rem; margin-inline: calc(-1 * var(--g-gut)); padding: 0 var(--g-gut) 0.5rem; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--g-gut); scrollbar-width: none; }
  .gx2 .gn-cases::-webkit-scrollbar { display: none; }
  .gx2 .gn-case { flex: 0 0 84%; scroll-snap-align: start; }
}
@media (prefers-reduced-motion: reduce) { .gx2 .gn-case, .gx2 .gn-case__img > picture img, .gx2 .gn-case__go svg { transition: none; } }
@media (min-width: 761px) and (max-width: 1180px) { .gx2 .gn-case__seg { min-height: 2.7em; line-height: 1.35; } }

/* ===== Audit 24. 9., část B: kalkulačky a právní stránky ===== */
/* kalkulačky na mobilu: sloupec nesmí být širší než displej (1fr = min. šířka nejdelší volby v selectu / velkého pole) */
@media (max-width: 980px) {
  .gx2 .calc-grid { grid-template-columns: minmax(0, 1fr); }
  .gx2 .calc-grid > * { min-width: 0; }
}
.gx2 .calc-inwrap select { min-width: 0; max-width: 100%; text-overflow: ellipsis; }
/* štítky u polí min. 12 px (náš odhad, volitelné, modelový příklad, vzorec pod dopočtem) */
.gx2 .calc-est-badge, .gx2 .calc-band--eshop .calc-opt, .gx2 .calc-vs__badge { font-size: 0.78rem; }
.gx2 .calc-derived span { font-size: 0.8rem; }
/* textová tlačítka a odkazy v odstavci: neviditelně větší plocha pro prst */
.gx2 .calc-vlink, .gx2 .calc-softexit a { position: relative; }
.gx2 .calc-vlink::before, .gx2 .calc-softexit a::before { content: ""; position: absolute; inset: -10px -4px; }
/* rozcestník: bez pořadového čísla nad štítkem a bez linky nad odkazem, odkaz dole na jedné lince */
.gx2 .gn-pick__for { margin-top: 0; }
.gx2 .gn-pick .g-link { margin-top: auto; padding-top: 1.4rem; border-top: 0; }
.gx2 .gn-pick .g-chips { margin-bottom: 0.2rem; }
/* e-shop: výklad "Co z toho plyne" na stejných dlaždicích jako B2B/B2C */
.gx2 .calc-band--eshop .calc-interp p { padding: 0.85rem 1rem; border-radius: 14px; background: var(--g-tile); color: rgba(10, 31, 42, 0.78); }
/* e-shop: mobilní lišta jako plovoucí pilulka (stejně jako B2B/B2C), schová se, když je vidět karta výsledku (inline skript ve fragmentu) */
@media (max-width: 980px) {
  .gx2 .calc-bar--eshop { left: 0.75rem; right: 0.75rem; bottom: calc(0.75rem + env(safe-area-inset-bottom, 0px)); padding: 0.45rem 0.45rem 0.45rem 1.2rem; border: 0; border-radius: 999px; background: var(--g-ink-2); box-shadow: 0 12px 36px -8px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(244, 239, 229, 0.1); transition: transform 260ms var(--g-ease); }
  .gx2 .calc-bar--eshop .btn { min-height: 48px; padding: 0 1.3rem; }
  .gx2 .calc-bar--eshop.is-off { transform: translateY(160%); }
  .gx2.calc-bar-scoped .calc-bar--eshop { animation: none; }
}
@media (max-width: 980px) and (prefers-reduced-motion: reduce) { .gx2 .calc-bar--eshop { transition: none; } }

/* právní stránky: obsah jako lepicí boční panel i u ochrany údajů (dřív velký tmavý blok v textu), zarovnaný k pravé hraně mřížky */
@media (min-width: 1101px) {
  .gx2 .g-page .g-prose:has(> .gn-toc) { display: grid; grid-template-columns: minmax(0, 44rem) minmax(15rem, 1fr); column-gap: clamp(2.5rem, 5vw, 5rem); max-width: none; margin: 0; }
  .gx2 .g-page .g-prose:has(> .gn-toc) > * { grid-column: 1; }
  .gx2 .g-page .g-prose:has(> .gn-toc) > .gn-toc { grid-column: 2; grid-row: 1 / span 400; justify-self: end; align-self: start; position: sticky; top: 100px; width: 100%; max-width: 20rem; max-height: calc(100vh - 124px); overflow-y: auto; overscroll-behavior: contain; margin: 0; scrollbar-width: thin; }
  .gx2 .g-page .gn-toc ul { gap: 0.15rem; }
  .gx2 .g-page .gn-toc a { display: block; padding: 0.3rem 0; font-size: 0.88rem; line-height: 1.4; }
}
/* právní stránky do 1100 px: obsah sbalený do jednoho řádku "Obsah" (13 odkazů zabíralo přes celou obrazovku) */
.gn-toc-m { display: none; }
@media (max-width: 1100px) {
  .gx2 .g-page .g-prose > nav.gn-toc { display: none; }
  .gx2 .gn-toc-m { display: block; margin: 1.6rem 0; border-radius: 14px; background: var(--g-ink-2); color: var(--g-on-dark); }
  .gx2 .gn-toc-m summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 52px; padding: 0 1.2rem; font-weight: 600; list-style: none; cursor: pointer; }
  .gx2 .gn-toc-m summary::-webkit-details-marker { display: none; }
  .gx2 .gn-toc-m summary:focus-visible { outline: 2px solid var(--g-mint); outline-offset: 2px; border-radius: 14px; }
  .gx2 .gn-toc-m summary svg { width: 18px; height: 18px; flex: none; color: var(--g-mint); transition: transform 200ms var(--g-ease); }
  .gx2 .gn-toc-m[open] summary svg { transform: rotate(180deg); }
  .gx2 .g-prose .gn-toc-m ul { display: grid; gap: 0; margin: 0; padding: 0 1.2rem 0.7rem; list-style: none; }
  .gx2 .g-prose .gn-toc-m li { margin: 0; padding: 0; }
  .gx2 .g-prose .gn-toc-m a { display: flex; align-items: center; min-height: 44px; font-size: 0.95rem; color: var(--g-on-dark-2); text-decoration: none; }
  .gx2 .g-prose .gn-toc-m a:hover { color: var(--g-mint); }
}
/* právní stránky: datum aktualizace / účinnosti jako popisek, ne jako první odstavec */
.gx2 .g-prose .gn-legal-date { display: inline-flex; align-items: center; margin: 0 0 1.4rem; padding: 0.4rem 0.85rem; border-radius: 999px; background: rgba(10, 31, 42, 0.06); font-size: 0.86rem; font-weight: 600; line-height: 1.3; color: var(--g-on-cream-2); }
.gx2 .g-page .g-prose:has(> .gn-toc) > .gn-legal-date { justify-self: start; }
/* písmenné body (a. b. c.) v obchodních podmínkách jen Plus Jakarta, ne 12 px mono */
.gx2 .g-page .legal-sub--alpha > li::marker { font-family: var(--g-ff); font-size: 0.95em; font-weight: 600; }
/* právní stránky: závěrečný krok (dřív konec textu rovnou do patičky bez tlačítka) */
.gx2 .gn-legal-end { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 1.2rem 2rem; max-width: 44rem; margin-top: clamp(2.5rem, 5vw, 3.5rem); padding: clamp(1.4rem, 3vw, 1.9rem) clamp(1.4rem, 3vw, 2rem); border-radius: 20px; background: var(--g-ink-2); color: var(--g-on-dark-2); }
.gx2 .gn-legal-end p.gn-legal-end__t { margin: 0 0 0.35rem; font-size: 1.3rem; font-weight: 600; letter-spacing: -0.02em; line-height: 1.2; color: var(--g-on-dark); text-wrap: balance; }
.gx2 .gn-legal-end p { margin: 0; font-size: 0.95rem; line-height: 1.55; text-wrap: pretty; }
@media (max-width: 760px) { .gx2 .gn-legal-end { grid-template-columns: minmax(0, 1fr); } .gx2 .gn-legal-end .g-btn { width: 100%; } }
