@font-face {
  font-family: "Libre Franklin";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Libre_Franklin-400-normal-3.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: "Libre Franklin";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Libre_Franklin-400-normal-4.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: "Libre Franklin";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/Libre_Franklin-600-normal-8.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: "Libre Franklin";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/Libre_Franklin-600-normal-9.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: "Libre Franklin";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/Libre_Franklin-700-normal-13.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: "Libre Franklin";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/Libre_Franklin-800-normal-17.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: "Libre Franklin";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/Libre_Franklin-800-normal-18.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: "Libre Franklin";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../fonts/Libre_Franklin-900-normal-22.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: "Libre Franklin";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../fonts/Libre_Franklin-900-normal-23.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: "Lora";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Lora-400-italic-29.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: "Lora";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Lora-400-italic-30.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: "Lora";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Lora-400-normal-36.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: "Lora";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Lora-400-normal-37.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;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
body {
  font-family: "Libre Franklin", sans-serif;
  color: #1a1a1a;
  background: #fff;
  line-height: 1.6;
  font-size: 16px;
  padding-bottom: 90px;
}

/* === SEZNAM ZPRÁVY CHROME === */
.sz-topbar {
  background: #cc0000;
  height: 4px;
}
.sz-nav {
  border-bottom: 1px solid #e0e0e0;
  padding: 10px 0;
  background: #fafafa;
}
.sz-nav-inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
  font-size: 13px;
  font-weight: 600;
  color: #333;
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
}
.sz-nav-inner .active {
  color: #cc0000;
}

/* === ARTICLE === */
article {
  max-width: 720px;
  margin: 32px auto;
  padding: 0 20px;
}
.breadcrumb {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.5px;
  color: #cc0000;
  margin-bottom: 14px;
  text-transform: uppercase;
}
.breadcrumb .urgent {
  color: #cc0000;
  background: #fff0f0;
  padding: 2px 8px;
  border-radius: 2px;
  margin-left: 10px;
  font-size: 10px;
}
h1.headline {
  font-weight: 900;
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: -0.5px;
  margin-bottom: 16px;
}
.subheadline {
  font-family: "Lora", serif;
  font-size: 18px;
  line-height: 1.55;
  color: #444;
  font-style: italic;
  margin-bottom: 24px;
}

.author-block {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e0e0e0;
}
.author-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: linear-gradient(135deg, #cc0000, #8b0000);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
}
.author-name {
  font-weight: 700;
  font-size: 14px;
}
.author-meta {
  font-size: 12px;
  color: #888;
}

article p {
  margin-bottom: 18px;
  font-size: 17px;
  line-height: 1.75;
}
article h2 {
  font-size: 26px;
  font-weight: 800;
  margin: 34px 0 16px;
  letter-spacing: -0.3px;
}
.lp-img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border-radius: 4px;
  margin: 24px 0;
}
.photo-caption {
  font-family: "Lora", serif;
  font-style: italic;
  font-size: 13px;
  color: #888;
  margin-top: -8px;
  margin-bottom: 20px;
  padding: 8px 0;
  border-bottom: 1px solid #e0e0e0;
}

/* === LINKS & DECLARATIONS === */
a.platform-link,
a.platform-link:link,
a.platform-link:visited {
  color: #cc0000 !important;
  text-decoration: underline;
  font-weight: 600;
}
.declaration {
  font-family: "Lora", serif;
  font-size: 20px;
  line-height: 1.55;
  font-style: italic;
  color: #1a1a1a;
  border-left: 4px solid #cc0000;
  padding: 8px 0 8px 20px;
  margin: 22px 0;
}

/* === INTERVIEW Q&A === */
.interview-meta {
  background: #fff5f5;
  border-left: 4px solid #cc0000;
  padding: 14px 18px;
  font-size: 15px;
  margin-bottom: 8px;
}
.qa {
  margin: 20px 0;
}
.qa .q {
  margin: 16px 0 6px;
  color: #1a1a1a;
}
.qa .a {
  margin-bottom: 10px;
  color: #1a1a1a;
}
.qa .speaker-name {
  color: #cc0000;
  font-weight: 800;
}

/* === DIARY === */
.diary-block {
  background: #f8f9fa;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 20px;
  margin: 26px 0;
}
.diary-title {
  font-size: 15px;
  font-weight: 800;
  color: #cc0000;
  margin-bottom: 16px;
}
.diary-entry {
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}
.diary-entry:last-child {
  border-bottom: none;
}
.diary-entry .date {
  color: #cc0000;
  font-weight: 700;
}

/* === CALCULATOR === */
.calculator-block {
  background: #fff5f5;
  border: 2px solid #cc0000;
  border-radius: 6px;
  padding: 24px;
  margin: 28px 0;
}
.calculator-block h4 {
  font-family: "Lora", serif;
  font-size: 21px;
  font-weight: 700;
  margin-bottom: 18px;
}
.calc-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 12px;
}
.calc-label {
  font-size: 14px;
  color: #666;
}
.calc-amount {
  font-size: 26px;
  font-weight: 700;
}
#calcSlider {
  width: 100%;
  height: 6px;
  -webkit-appearance: none;
  appearance: none;
  background: #e8d0d0;
  border-radius: 3px;
  outline: none;
  margin: 8px 0 6px;
}
#calcSlider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 22px;
  height: 22px;
  background: #cc0000;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
#calcSlider::-moz-range-thumb {
  width: 22px;
  height: 22px;
  background: #cc0000;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid #fff;
}
.calc-range-labels {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: #999;
  margin-bottom: 18px;
}
.calc-result {
  background: #fff;
  border-left: 4px solid #cc0000;
  padding: 14px 16px;
  margin-bottom: 18px;
}
.calc-result-label {
  font-size: 13px;
  color: #666;
  margin-bottom: 4px;
}
.calc-result-value {
  font-size: 24px;
  font-weight: 800;
  color: #cc0000;
  line-height: 1.2;
  margin-bottom: 8px;
}
.calc-disclaimer {
  font-size: 11px;
  color: #999;
  font-style: italic;
}
.cta-button.cta-calc {
  margin-top: 0;
  padding: 16px;
  font-size: 16px;
  background: #cc0000;
}

/* === INCOME TABLE === */
.income-cta-block {
  background: #fff5f5;
  border: 1px solid #e8d0d0;
  border-top: 4px solid #cc0000;
  padding: 26px 24px;
  margin: 32px 0;
  border-radius: 4px;
}
.income-cta-block h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 14px;
  color: #cc0000;
}
table.income {
  width: 100%;
  border-collapse: collapse;
  margin: 18px 0;
  font-size: 15px;
}
table.income th {
  background: #cc0000;
  color: #fff;
  padding: 10px 8px;
  text-align: left;
  font-size: 13px;
}
table.income td {
  padding: 11px 8px;
  border-bottom: 1px solid #e0e0e0;
}
table.income .capital {
  font-weight: 800;
}
table.income .income-base {
  color: #2e7d32;
  font-weight: 700;
}
table.income .income-growth {
  color: #cc0000;
  font-weight: 800;
}

/* === PLATFORM CARD (v číslech) === */
.platform-card {
  margin: 30px 0;
  padding: 28px;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-top: 4px solid #cc0000;
  font-family: "Lora", Georgia, serif;
  color: #222;
}
.platform-card h3 {
  font-family: "Lora", serif;
  font-size: 24px;
  margin-bottom: 18px;
  font-weight: 700;
}
.platform-card .grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 30px;
  margin-top: 18px;
  font-size: 16px;
  line-height: 1.5;
}
.platform-card .grid .item {
  border-top: 1px solid #e0e0e0;
  padding-top: 12px;
}
.platform-card .grid .item b {
  display: block;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #cc0000;
  margin-bottom: 4px;
  font-family: "Libre Franklin", sans-serif;
}
@media (max-width: 600px) {
  .platform-card .grid {
    grid-template-columns: 1fr;
  }
}

/* === REGISTRATION === */
.registration-block {
  background: #fff5f5;
  border: 2px solid #cc0000;
  padding: 26px 24px;
  margin: 34px 0;
  border-radius: 6px;
}
.registration-block h2 {
  font-size: 22px;
  margin-bottom: 18px;
}
.reg-step {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 14px;
}
.reg-step-num {
  background: #cc0000;
  color: #fff;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  flex-shrink: 0;
  font-size: 14px;
}
.reg-step-text {
  font-size: 15px;
  padding-top: 2px;
}
.deadline-line {
  margin: 18px 0;
  font-size: 16px;
}
.warning-block {
  background: #fdecec;
  border: 1px solid #f5b5b5;
  padding: 14px 16px;
  border-radius: 4px;
  font-size: 14px;
  margin: 16px 0;
}
.cta-button {
  display: block;
  background: #cc0000;
  color: #fff;
  text-align: center;
  padding: 18px;
  font-size: 18px;
  font-weight: 800;
  text-decoration: none;
  border-radius: 6px;
  margin-top: 18px;
  letter-spacing: 0.5px;
}

/* === FB COMMENTS === */
.fb-section {
  max-width: 720px;
  margin: 0 auto;
  padding: 28px 20px 60px;
  border-top: 8px solid #f0f2f5;
}
.fb-header {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 18px;
}
.fb-input-area {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 24px;
}
.fb-input-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #ddd;
  flex-shrink: 0;
}
.fb-input-field {
  flex: 1;
  background: #f0f2f5;
  border-radius: 18px;
  padding: 10px 16px;
  color: #65676b;
  font-size: 14px;
}
.fb-comment {
  display: flex;
  gap: 10px;
  margin-bottom: 16px;
}
.fb-comment.reply {
  margin-left: 44px;
}
.fb-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: 15px;
}
.av-pink {
  background: #e57373;
}
.av-blue {
  background: #64b5f6;
}
.av-orange {
  background: #ffb74d;
}
.av-green {
  background: #81c784;
}
.av-purple {
  background: #ba68c8;
}
.av-teal {
  background: #4db6ac;
}
.av-indigo {
  background: #7986cb;
}
.av-red {
  background: #e53935;
}
.av-cyan {
  background: #26c6da;
}
.av-brown {
  background: #a1887f;
}
.av-gray {
  background: #90a4ae;
}
.av-amber {
  background: #c89c00;
}
.av-grey {
  background: #757575;
}
.fb-comment-body {
  flex: 1;
}
.fb-comment-bubble {
  background: #f0f2f5;
  border-radius: 16px;
  padding: 10px 14px;
}
.fb-comment-author {
  font-weight: 700;
  font-size: 14px;
}
.fb-comment-text {
  font-size: 14px;
  margin-top: 2px;
}
.fb-screenshot img {
  display: block;
  width: 100%;
  max-width: 240px;
  height: auto;
  aspect-ratio: auto;
  margin: 8px 0 0;
  border-radius: 8px;
  border: 1px solid #ddd;
}
.fb-comment-meta {
  font-size: 12px;
  color: #65676b;
  margin: 4px 0 0 14px;
  display: flex;
  gap: 12px;
}
.fb-comment-meta .like {
  font-weight: 700;
}

/* === STICKY CTA === */
.sticky-cta {
  position: fixed;
  bottom: calc(14px + env(safe-area-inset-bottom));
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 32px);
  max-width: 420px;
  background: #cc0000;
  color: #fff;
  text-align: center;
  padding: 16px 20px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.6px;
  z-index: 9999;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.28);
  border-radius: 10px;
}

/* === RESPONSIVE === */
@media (max-width: 768px) {
  h1.headline {
    font-size: 28px;
  }
  .subheadline {
    font-size: 16px;
  }
  .sz-nav-inner {
    font-size: 12px;
    gap: 10px;
  }
  article {
    margin: 24px auto;
    padding: 0 14px;
  }
  article h2 {
    font-size: 22px;
  }
  article p {
    font-size: 16px;
  }
  .income-cta-block,
  .registration-block,
  .calculator-block,
  .platform-card {
    padding: 20px 16px;
  }
  table.income {
    font-size: 13px;
  }
  table.income th,
  table.income td {
    padding: 8px 6px;
  }
  .fb-comment.reply {
    margin-left: 20px;
  }
  .lp-img {
    width: calc(100% + 28px) !important;
    max-width: none !important;
    margin: 24px -14px !important;
    border-radius: 0 !important;
  }
}
@media (max-width: 420px) {
  h1.headline {
    font-size: 24px;
  }
  .subheadline {
    font-size: 14px;
  }
  .sz-nav {
    display: none;
  }
  .calc-amount {
    font-size: 22px;
  }
  .calc-result-value {
    font-size: 19px;
  }
}

body,
html {
  font-family: Arial, sans-serif;
  line-height: 1.5;
}
article,
body,
div,
footer,
header,
html,
img,
nav,
section,
span,
table,
tbody,
td,
thead,
tr {
  border: 0;
  margin: 0;
  padding: 0;
}
a,
b,
h1,
h2,
h3,
h4,
h6,
li,
p,
ul {
  border: 0;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}
article,
footer,
header,
nav,
section {
  display: block;
}
a img {
  border: 0;
}
:focus {
  outline: 0;
}

:root {
  --font-family-martel: Martel, Georgia, "Calisto MT", serif;
  --font-family-montserrat:
    Montserrat, Candara, "Century Gothic", Verdana, sans-serif;
}
@supports (font-variation-settings: normal) {
  :root {
    --font-family-martel: Martel, Georgia, "Calisto MT", serif;
    --font-family-montserrat:
      Montserrat, Candara, "Century Gothic", Verdana, sans-serif;
  }
}
html {
  overflow-y: scroll;
}
body {
  background-color: #fff5f5;
  color: #382c2c;
  font-family: var(--font-family-martel);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: none;
}
body a {
  color: #a05d5d;
  -webkit-text-decoration: none;
  text-decoration: none;
}
body a:focus,
body a:hover {
  color: #704141;
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
.d_E {
  font-family: var(--font-family-montserrat);
}
.e_aj {
  left: -312.5rem;
  position: absolute;
  top: -312.5rem;
}
.e_as {
  pointer-events: none;
}
.e_n {
  color: #a05d5d;
  cursor: pointer;
  -webkit-text-decoration: none;
  text-decoration: none;
}
.e_n:focus,
.e_n:hover {
  color: #704141;
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
@media (min-width: 541px) {
}
:has(+ .f_e1) {
  -webkit-mask-image: linear-gradient(180deg, #fff, transparent);
  mask-image: linear-gradient(180deg, #fff, transparent);
}
.f_ho {
  display: block;
}
.f_ho .e_as {
  display: inline-block;
  height: 100%;
}
.c_kR {
  align-items: center;
  display: flex;
  flex-flow: column;
  font-family: var(--font-family-montserrat);
  letter-spacing: 2px;
  margin-bottom: 1.5rem;
  position: relative;
  text-transform: uppercase;
  z-index: 3;
}
.c_kT .e_n {
  display: inline-block;
  font-size: 0.75rem;
  height: 100%;
  padding: 0 1rem;
  vertical-align: middle;
}
.c_kT .e_n:focus,
.c_kT .e_n:hover {
  color: #704141;
}
.c_kT:first-child .e_n {
  padding-left: 0;
}
.c_kT:last-child .e_n {
  padding-right: 0;
}
.c_kU .e_n {
  font-weight: 700;
}
.c_kW {
  display: flex;
  flex-grow: 1;
}
.c_kX {
  flex-wrap: wrap;
}
.c_kX,
.c_kX .c_kT {
  height: 100%;
}
.c_kX .c_kT .e_n {
  line-height: 3.875rem;
}
.c_kX .c_kU .c_kY,
.c_kX .e_n:focus .c_kY,
.c_kX .e_n:hover .c_kY {
  display: inline-block;
  height: 100%;
  position: relative;
}
.c_kX .c_kU .c_kY:after,
.c_kX .e_n:focus .c_kY:after,
.c_kX .e_n:hover .c_kY:after {
  background: #a05d5d;
  bottom: 0;
  content: "";
  display: block;
  height: 4px;
  position: absolute;
  width: 100%;
  z-index: 4;
}
.c_kX .e_n:focus .c_kY:after,
.c_kX .e_n:hover .c_kY:after {
  background: #704141;
}
.c_kZ {
  flex-grow: 0;
  position: absolute;
  right: 0;
}
.c_kZ .c_kT .e_n {
  line-height: 2.8125rem;
}
.c_k- {
  display: flex;
  flex-wrap: nowrap;
  max-width: 63.5rem;
  position: relative;
  width: 100%;
}
.c_k0 {
  border-top: 1px solid #f0c8c8;
  height: 4rem;
  overflow: hidden;
}
.c_k0:after {
  background: #f0c8c8;
  bottom: 1px;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  width: 100%;
}
.c_k1 {
  align-items: center;
  display: flex;
  flex-flow: column;
  height: 2.8125rem;
  padding-bottom: 2rem;
  padding-top: 3.25rem;
  position: relative;
  width: 100%;
}
.c_k2 {
  max-width: 18.9792rem;
  width: 34%;
}
.c_kR .e_cS {
  list-style: none;
}
.c_kR .c_k2 .e_as {
  width: 100%;
}
.c_lF {
  margin-top: 1rem;
}
.c_lG {
  margin-top: 0;
}
@media (max-width: 620px) {
  .c_lG {
    margin-top: 1rem;
  }
  .c_lG > * {
    display: none;
  }
}
.b_mm {
  position: relative;
}
@media (max-width: 540px) {
  .b_b {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0.25rem;
  }
}
.b_b {
  margin: 0 auto;
  max-width: 63.5rem;
  padding-left: 2.625rem;
  padding-right: 2.625rem;
}
@media (max-width: 540px) {
  .b_b {
    padding-left: 0;
    padding-right: 0;
  }
}
.szn-mobile-input-with-suggest-list--light {
  --color-input-background: #fff;
  --color-input-shadow: #ccc;
  --color-text: #111;
  --color-text-placeholder: #999;
  --color-box-background: #fff;
  --color-button-primary: #c00;
  --color-button-search: #f0f0f0;
  --color-button-roundedBackground: #eee;
  --color-button-close: #000;
  --color-button-clear: #999;
  --color-button-back: #111;
  --color-button-disabled: #999;
}
.szn-mobile-input-with-suggest-list--light {
  height: 100%;
}
.szn-mobile-input-with-suggest-list--light {
  --color-input-background: #fff;
  --color-input-shadow: #ccc;
  --color-text: #111;
  --color-text-placeholder: #999;
  --color-box-background: #fff;
  --color-button-primary: #c00;
  --color-button-search: #f0f0f0;
  --color-button-roundedBackground: #eee;
  --color-button-close: #000;
  --color-button-clear: #999;
  --color-button-back: #111;
  --color-button-disabled: #999;
}
.szn-mobile-input-with-suggest-list--light {
  height: 100%;
}
.ribbon-badge {
  display: flex;
  z-index: 9001;
  min-width: 50px;
  height: 42px;
  flex-shrink: 0;
  justify-content: flex-end;
  align-items: center;
}
@media all and (min-width: 600px) {
  .ribbon-badge {
    min-width: 192px;
  }
}
.ribbon-button {
  display: flex;
  position: relative;
  flex-shrink: 0;
  align-items: center;
  text-decoration: none;
}
.ribbon-button__button {
  display: flex;
  box-sizing: border-box;
  margin: 0;
  border: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  justify-content: center;
  align-items: center;
  font-family: inherit;
  font-size: 100%;
  line-height: 100%;
  text-align: center;
  color: inherit;
  text-transform: none;
  background: transparent;
  cursor: pointer;
  outline: none;
}
.ribbon-button__button .ribbon-icon {
  color: inherit;
}
.ribbon-control__label {
  margin-right: 16px;
  flex-shrink: 0;
  color: #c00;
  color: var(--ribbon-control-label-color, #cc0000);
}
.ribbon-menu {
  position: fixed;
  inset: 56px 0 0;
  z-index: 9000;
  box-sizing: border-box;
  width: 100%;
  height: calc(100% - 56px);
  height: calc(var(--ribbon-inner-height, 100%) - 56px);
  overflow: hidden;
  transition: opacity 0.4s ease;
}
.ribbon-menu--hidden {
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
}
.ribbon-menu__button {
  position: absolute;
  right: 0;
  top: 0;
  width: 44px;
  height: 44px;
  color: #a0a0a0;
  color: var(--ribbon-submenu-button-color, #a0a0a0);
}
.ribbon-menu__content {
  position: absolute;
  inset: 0;
  box-sizing: border-box;
  padding: 16px 12px;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  background: #fafafa;
  background: var(--ribbon-menu-background-color, #fafafa);
  transition: left 0.4s ease;
  -webkit-overflow-scrolling: touch;
}
.ribbon-menu__content:before {
  position: absolute;
  left: 0;
  top: -30px;
  width: 100%;
  height: 30px;
  content: "";
  box-shadow:
    0 0 2px #0000001a,
    0 8px 30px -12px #0000001f;
}
.ribbon-menu__content--hidden {
  left: -100%;
}
.ribbon-menu__item {
  display: block;
  position: relative;
  padding: 0 8px;
  min-height: 44px;
  font-size: 16px;
  font-weight: 400;
  line-height: 44px;
  color: #000;
  color: var(--ribbon-menu-item-color, #000000);
}
.ribbon-menu__link {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  text-decoration: none;
}
.ribbon-menu__link:visited {
  color: inherit;
}
.ribbon-menu__primary,
.ribbon-menu__secondary {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ribbon-menu__primary > .ribbon-menu__item {
  border-bottom: 1px solid #f0f0f0;
  border-bottom: 1px solid var(--ribbon-menu-separator-color, #f0f0f0);
}
.ribbon-menu__primary > .ribbon-menu__item:first-child {
  border-top: 1px solid #f0f0f0;
  border-top: 1px solid var(--ribbon-menu-separator-color, #f0f0f0);
  font-weight: 700;
}
.ribbon-menu__primary > .ribbon-menu__item:nth-child(n + 2) {
  color: #c00;
  color: var(--ribbon-menu-primary-color, #cc0000);
}
.ribbon-menu__secondary {
  max-height: 1056px;
  overflow: hidden;
  transition: max-height 0.8s ease;
}
.ribbon-menu__secondary--hidden {
  max-height: 0;
  transition-timing-function: cubic-bezier(0, 1, 0, 1);
}
@media all and (min-width: 600px) {
  .ribbon-menu {
    background: #00000080;
  }
  .ribbon-menu__button {
    display: none;
  }
  .ribbon-menu__content {
    padding: 18px 30px;
    width: 436px;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .ribbon-menu__content::-webkit-scrollbar {
    width: 0;
    height: 0;
  }
  .ribbon-menu__content--hidden {
    left: -436px;
  }
  .ribbon-menu__item {
    padding: 0;
    min-height: 24px;
    line-height: 24px;
  }
  .ribbon-menu__link:hover {
    text-decoration: underline;
  }
  .ribbon-menu__primary > .ribbon-menu__item {
    margin-bottom: 24px;
    border: 0;
    font-weight: 700;
  }
  .ribbon-menu__primary > .ribbon-menu__item:first-child {
    border: 0;
  }
  .ribbon-menu__secondary {
    margin-top: 8px;
    margin-bottom: 6px;
    columns: 2 180px;
  }
  .ribbon-menu__secondary--hidden {
    max-height: none;
  }
  .ribbon-menu__secondary > .ribbon-menu__item {
    margin-bottom: 4px;
    font-size: 15px;
  }
}
.ribbon-menu__button .ribbon-icon {
  height: 22px;
}
.ribbon-search {
  display: flex;
  position: relative;
  left: 8px;
  top: auto;
  z-index: 9002;
  padding-top: 8px;
  width: 100%;
  max-width: calc(100% - 98px);
  flex-direction: column;
  transition:
    opacity 0.4s ease-in-out,
    visibility 0.4s;
}
.ribbon-search__bar {
  display: flex;
  height: 40px;
}
@media all and (min-width: 600px) {
  .ribbon-search {
    position: relative;
    left: 0;
    padding-top: 0;
    max-width: 614px;
  }
}
.ribbon-search-desktop {
  display: flex;
  position: relative;
  max-width: calc(100% - 48px);
  flex: 1;
  flex-direction: column;
}
@media all and (min-width: 600px) {
  .ribbon-search-desktop {
    max-width: calc(100% - 64px);
  }
}
.ribbon-search-desktop__submit {
  border-radius: 0 4px 4px 0;
  width: 48px;
  height: 100%;
  flex-shrink: 0;
  color: #fff;
  color: var(--ribbon-search-button-icon-color, #ffffff);
  background: #c00;
  background: var(--ribbon-search-button-color, #cc0000);
  box-shadow: inset 0 0 0 1px
    var(--ribbon-search-button-border-color, transparent);
}
@media all and (min-width: 600px) {
  .ribbon-search-desktop__submit {
    width: 64px;
  }
}
.ribbon-search-desktop__submit:hover {
  color: #fff;
  color: var(
    --ribbon-search-button-icon-hover-color,
    var(--ribbon-search-button-icon-color, #ffffff)
  );
  background: #a00000;
  background: var(--ribbon-search-button-hover-color, #a00000);
  box-shadow: inset 0 0 0 1px
    var(--ribbon-search-button-border-hover-color, transparent);
}
.ribbon-search-desktop__icon-search {
  width: 20px;
  height: 20px;
}
.ribbon-search-desktop__clear {
  display: none;
  position: absolute;
  right: 0;
  top: 0;
  padding-right: 8px;
  width: 32px;
  height: 100%;
  color: #ccc;
  color: var(--ribbon-search-clear-icon-color, #cccccc);
}
.ribbon-search-desktop__clear:hover {
  color: #000;
  color: var(--ribbon-search-clear-icon-hover-color, #000000);
}
.ribbon-search-desktop__icon-cross {
  width: 16px;
  height: 16px;
}
.ribbon-search-desktop .szn-input-with-suggest-list {
  box-sizing: border-box;
  margin: 0;
  border-color: #ccc;
  border-color: var(--ribbon-search-border-color, #cccccc);
  border-radius: 4px 0 0 4px;
  border-style: solid;
  border-width: 1px;
  border-right: 0;
  padding: 0 40px 0 14px;
  min-height: 100%;
  flex-grow: 1;
  font-family:
    Trivia Seznam,
    Helvetica,
    Arial,
    sans-serif;
  font-size: 16px;
  line-height: normal;
  color: #222;
  color: var(--ribbon-search-font-color, #222222);
  background: #fff;
  background: var(--ribbon-search-background-color, #ffffff);
  -webkit-appearance: none;
  outline: none;
}
.ribbon-search-desktop .szn-input-with-suggest-list:hover {
  border-color: #666;
  border-color: var(--ribbon-search-border-hover-color, #666666);
}
.ribbon-search-desktop .szn-input-with-suggest-list::-ms-clear {
  display: none;
}
.szn-mobile-input-with-suggest-list--light {
  --color-button-primary: var(--ribbon-search-button-color, #cc0000);
}
.ribbon-mobile-search__input {
  display: none;
}
.ribbon-service {
  display: flex;
  height: 32px;
  flex-shrink: 1;
  align-items: center;
  font-size: 14px;
  color: #000;
  color: var(--ribbon-service-color, #000000);
  text-decoration: none;
}
.ribbon-service:hover {
  text-decoration: none;
}
.ribbon-service:hover,
.ribbon-service:visited {
  color: #000;
  color: var(--ribbon-service-color, #000000);
}
.ribbon-service__icon {
  display: none;
  margin-right: 8px;
  width: 32px;
  height: 32px;
}
.ribbon-service__icon-label {
  display: none;
  white-space: nowrap;
}
.ribbon-service__logo {
  width: auto;
  max-width: 100%;
  height: 24px;
  min-height: 24px;
  max-height: 32px;
}
@media all and (min-width: 600px) {
  .ribbon-service__icon,
  .ribbon-service__icon-label {
    display: block;
    font-size: 16px;
  }
  .ribbon-service__icon ~ .ribbon-service__logo {
    display: none;
  }
}
.ribbon-seznam {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  color: #c00;
  color: var(--ribbon-seznam-color, #cc0000);
}
.ribbon-seznam__link,
.ribbon-seznam__link:hover,
.ribbon-seznam__link:visited {
  color: #c00;
  color: var(--ribbon-seznam-color, #cc0000);
  text-decoration: none;
}
.ribbon {
  display: flex;
  position: relative;
  left: 0;
  top: auto;
  z-index: 9000;
  box-sizing: border-box;
  padding: 0 16px;
  width: 100%;
  height: 56px;
  background: #fff;
  background: var(--ribbon-background-color, #ffffff);
  box-shadow:
    0 0 2px #0000001a,
    0 8px 30px -12px #0000001f;
}
.ribbon--base {
  font-family:
    Trivia Seznam,
    Helvetica,
    Arial,
    sans-serif;
  font-size: 14px;
}
.ribbon--blind {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
}
.ribbon--show-search .ribbon-seznam {
  visibility: hidden;
}
@media all and (min-width: 600px) {
  .ribbon--show-search .ribbon-seznam {
    visibility: visible;
  }
}
.ribbon__menu-button {
  margin-right: 8px;
  margin-left: -8px;
  color: #909090;
  color: var(--ribbon-menu-button-color, #909090);
}
.ribbon__menu-button .ribbon-button__button {
  box-sizing: content-box;
  border-radius: 4px;
  padding: 8px;
  width: 16px;
  height: 16px;
}
.ribbon__menu-button .ribbon-button__button:focus-visible {
  outline: 2px solid black;
}
.ribbon__start,
.ribbon__center,
.ribbon__end {
  display: flex;
  align-items: center;
}
.ribbon__center {
  min-width: 0;
  flex-grow: 1;
}
.ribbon__end {
  margin-left: 16px;
  flex-shrink: 0;
}
.ribbon__end--reversed {
  display: flex;
  flex-shrink: 0;
}
@media all and (min-width: 600px) {
  .ribbon:not(.ribbon--unfixed) {
    padding-right: 31px;
    width: 100vw;
  }
  .ribbon__end {
    margin-left: 0;
  }
  .ribbon__end--reversed {
    flex-direction: row-reverse;
  }
  .ribbon__center {
    margin: 0 16px;
  }
}
.ribbon__end .ribbon-seznam {
  margin-right: 16px;
}
.ribbon__menu-button .ribbon-icon {
  height: 12px;
}
@media all and (min-width: 600px) {
  .ribbon .ribbon-seznam {
    margin-right: 0;
    margin-left: 16px;
  }
}
:host {
  display: inline-block;
  position: relative;
  font-size: 14px;
  line-height: 22px;
}
button {
  border: none;
  background: transparent;
  cursor: pointer;
}
button:focus-visible {
  outline: 2px solid #404040;
}
.ribbon-badge__icon {
  display: flex;
  align-items: center;
  margin-right: 16px;
  color: var(--ribbon-notifications-color, #c0c0c0);
}
.ribbon-badge__icon:hover {
  color: var(--ribbon-notifications-color-hover, #000000);
}
.ribbon-badge__login {
  margin-right: 16px;
  font-size: 14px;
  white-space: nowrap;
  text-decoration: none;
  color: var(--ribbon-control-label-color, #cc0000);
}
._62c69082e3d01407c9e2074d .c_kT .e_n {
  padding: 0 0.8rem;
}
._62c69082e3d01407c9e2074d .c_kT:first-child .e_n {
  padding-left: 0;
}
._62c69082e3d01407c9e2074d .c_kT:last-child .e_n {
  padding-right: 0;
}
@media (max-width: 1080px) {
  ._62c69082e3d01407c9e2074d .c_kZ .c_kT:nth-child(7) {
    display: none;
  }
}
@media (max-width: 940px) {
  ._62c69082e3d01407c9e2074d .c_kZ .c_kT:nth-child(6) {
    display: none;
  }
}
@media (max-width: 830px) {
  ._62c69082e3d01407c9e2074d .c_kZ .c_kT:nth-child(5) {
    display: none;
  }
}
@media (max-width: 680px) {
  ._62c69082e3d01407c9e2074d .c_kZ .c_kT:nth-child(4) {
    display: none;
  }
}

/* --- stub footer (librarian-generated) --- */

.land-footer-slim {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 28px 16px 32px;
  text-align: center;
}
.land-footer-slim img {
  display: block;
  height: auto;
  width: auto;
  max-height: 32px;
  max-width: 180px;
}
.land-footer-slim .land-footer-copy {
  margin: 0;
  font-size: 13px;
  line-height: 1.4;
}

/* Donor sticky-hat clone must not enter document flow (nested scrollbar + ghost height) */

/* Horizontal channel/nav strip only — never a vertical bar inside the hat.
   Outer wrap stays overflow hidden (or the page grows a 320 scrollbar).
   Inner nowrap list is the only overflow-x:auto. */

header,
footer.land-footer-slim {
  line-height: normal;
}

.ribbon-service {
  flex-shrink: 0;
}
.ribbon__center {
  min-width: 0;
}

@media all and (max-width: 599px) {
  .ribbon-search {
    display: none;
  }
  .ribbon__start {
    flex-shrink: 0;
  }
  .ribbon__end {
    margin-left: auto;
  }
  .ribbon-service__logo {
    width: 120px;
    height: auto;
    min-height: 0;
    max-height: 24px;
  }
  .ribbon-badge {
    min-width: 0;
  }

  .ribbon-badge__icon {
    display: none;
  }
  .ribbon-badge__login {
    margin-right: 0;
    font-size: 13px;
  }
  .ribbon__end .ribbon-seznam {
    margin-right: 12px;
    visibility: visible;
  }
  .ribbon-service__logo {
    width: 110px;
  }
}

.ribbon-menu {
  position: fixed;
}

@media all and (max-width: 1023px) {
  #hat-root .ogm-desktop-menu__list-container > ul,
  #hat-root nav > ul {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }
  #hat-root .ogm-desktop-menu__list-container > ul::-webkit-scrollbar,
  #hat-root nav > ul::-webkit-scrollbar {
    display: none;
  }
  #hat-root ul > li {
    flex: 0 0 auto;
  }
}

#hat-root,
.ogm-ribbon {
  line-height: 1.5;
}

@media all and (max-width: 359px) {
  .ribbon__end .ribbon-seznam {
    display: none;
  }
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
body {
  font-family: "Libre Franklin", sans-serif;
  color: #1a1a1a;
  background: #fff;
  line-height: 1.6;
  font-size: 16px;
  padding-bottom: 90px;
}

/* === SEZNAM ZPRÁVY CHROME === */
.sz-topbar {
  background: #cc0000;
  height: 4px;
}
.sz-nav {
  border-bottom: 1px solid #e0e0e0;
  padding: 10px 0;
  background: #fafafa;
}
.sz-nav-inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
  font-size: 13px;
  font-weight: 600;
  color: #333;
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
}
.sz-nav-inner .active {
  color: #cc0000;
}

/* === ARTICLE === */
article {
  max-width: 720px;
  margin: 32px auto;
  padding: 0 20px;
}
.breadcrumb {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.5px;
  color: #cc0000;
  margin-bottom: 14px;
  text-transform: uppercase;
}
.breadcrumb .urgent {
  color: #cc0000;
  background: #fff0f0;
  padding: 2px 8px;
  border-radius: 2px;
  margin-left: 10px;
  font-size: 10px;
}
h1.headline {
  font-weight: 900;
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: -0.5px;
  margin-bottom: 16px;
}
.subheadline {
  font-family: "Lora", serif;
  font-size: 18px;
  line-height: 1.55;
  color: #444;
  font-style: italic;
  margin-bottom: 24px;
}

.author-block {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e0e0e0;
}
.author-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: linear-gradient(135deg, #cc0000, #8b0000);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
}
.author-name {
  font-weight: 700;
  font-size: 14px;
}
.author-meta {
  font-size: 12px;
  color: #888;
}

article p {
  margin-bottom: 18px;
  font-size: 17px;
  line-height: 1.75;
}
article h2 {
  font-size: 26px;
  font-weight: 800;
  margin: 34px 0 16px;
  letter-spacing: -0.3px;
}
.lp-img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border-radius: 4px;
  margin: 24px 0;
}
.photo-caption {
  font-family: "Lora", serif;
  font-style: italic;
  font-size: 13px;
  color: #888;
  margin-top: -8px;
  margin-bottom: 20px;
  padding: 8px 0;
  border-bottom: 1px solid #e0e0e0;
}

/* === LINKS & DECLARATIONS === */
a.platform-link,
a.platform-link:link,
a.platform-link:visited {
  color: #cc0000 !important;
  text-decoration: underline;
  font-weight: 600;
}
.declaration {
  font-family: "Lora", serif;
  font-size: 20px;
  line-height: 1.55;
  font-style: italic;
  color: #1a1a1a;
  border-left: 4px solid #cc0000;
  padding: 8px 0 8px 20px;
  margin: 22px 0;
}

/* === INTERVIEW Q&A === */
.interview-meta {
  background: #fff5f5;
  border-left: 4px solid #cc0000;
  padding: 14px 18px;
  font-size: 15px;
  margin-bottom: 8px;
}
.qa {
  margin: 20px 0;
}
.qa .q {
  margin: 16px 0 6px;
  color: #1a1a1a;
}
.qa .a {
  margin-bottom: 10px;
  color: #1a1a1a;
}
.qa .speaker-name {
  color: #cc0000;
  font-weight: 800;
}

/* === DIARY === */
.diary-block {
  background: #f8f9fa;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 20px;
  margin: 26px 0;
}
.diary-title {
  font-size: 15px;
  font-weight: 800;
  color: #cc0000;
  margin-bottom: 16px;
}
.diary-entry {
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}
.diary-entry:last-child {
  border-bottom: none;
}
.diary-entry .date {
  color: #cc0000;
  font-weight: 700;
}

/* === CALCULATOR === */
.calculator-block {
  background: #fff5f5;
  border: 2px solid #cc0000;
  border-radius: 6px;
  padding: 24px;
  margin: 28px 0;
}
.calculator-block h4 {
  font-family: "Lora", serif;
  font-size: 21px;
  font-weight: 700;
  margin-bottom: 18px;
}
.calc-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 12px;
}
.calc-label {
  font-size: 14px;
  color: #666;
}
.calc-amount {
  font-size: 26px;
  font-weight: 700;
}
#calcSlider {
  width: 100%;
  height: 6px;
  -webkit-appearance: none;
  appearance: none;
  background: #e8d0d0;
  border-radius: 3px;
  outline: none;
  margin: 8px 0 6px;
}
#calcSlider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 22px;
  height: 22px;
  background: #cc0000;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
#calcSlider::-moz-range-thumb {
  width: 22px;
  height: 22px;
  background: #cc0000;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid #fff;
}
.calc-range-labels {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: #999;
  margin-bottom: 18px;
}
.calc-result {
  background: #fff;
  border-left: 4px solid #cc0000;
  padding: 14px 16px;
  margin-bottom: 18px;
}
.calc-result-label {
  font-size: 13px;
  color: #666;
  margin-bottom: 4px;
}
.calc-result-value {
  font-size: 24px;
  font-weight: 800;
  color: #cc0000;
  line-height: 1.2;
  margin-bottom: 8px;
}
.calc-disclaimer {
  font-size: 11px;
  color: #999;
  font-style: italic;
}
.cta-button.cta-calc {
  margin-top: 0;
  padding: 16px;
  font-size: 16px;
  background: #cc0000;
}

/* === INCOME TABLE === */
.income-cta-block {
  background: #fff5f5;
  border: 1px solid #e8d0d0;
  border-top: 4px solid #cc0000;
  padding: 26px 24px;
  margin: 32px 0;
  border-radius: 4px;
}
.income-cta-block h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 14px;
  color: #cc0000;
}
table.income {
  width: 100%;
  border-collapse: collapse;
  margin: 18px 0;
  font-size: 15px;
}
table.income th {
  background: #cc0000;
  color: #fff;
  padding: 10px 8px;
  text-align: left;
  font-size: 13px;
}
table.income td {
  padding: 11px 8px;
  border-bottom: 1px solid #e0e0e0;
}
table.income .capital {
  font-weight: 800;
}
table.income .income-base {
  color: #2e7d32;
  font-weight: 700;
}
table.income .income-growth {
  color: #cc0000;
  font-weight: 800;
}

/* === PLATFORM CARD (v číslech) === */
.platform-card {
  margin: 30px 0;
  padding: 28px;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-top: 4px solid #cc0000;
  font-family: "Lora", Georgia, serif;
  color: #222;
}
.platform-card h3 {
  font-family: "Lora", serif;
  font-size: 24px;
  margin-bottom: 18px;
  font-weight: 700;
}
.platform-card .grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 30px;
  margin-top: 18px;
  font-size: 16px;
  line-height: 1.5;
}
.platform-card .grid .item {
  border-top: 1px solid #e0e0e0;
  padding-top: 12px;
}
.platform-card .grid .item b {
  display: block;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #cc0000;
  margin-bottom: 4px;
  font-family: "Libre Franklin", sans-serif;
}
@media (max-width: 600px) {
  .platform-card .grid {
    grid-template-columns: 1fr;
  }
}

/* === REGISTRATION === */
.registration-block {
  background: #fff5f5;
  border: 2px solid #cc0000;
  padding: 26px 24px;
  margin: 34px 0;
  border-radius: 6px;
}
.registration-block h2 {
  font-size: 22px;
  margin-bottom: 18px;
}
.reg-step {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 14px;
}
.reg-step-num {
  background: #cc0000;
  color: #fff;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  flex-shrink: 0;
  font-size: 14px;
}
.reg-step-text {
  font-size: 15px;
  padding-top: 2px;
}
.deadline-line {
  margin: 18px 0;
  font-size: 16px;
}
.warning-block {
  background: #fdecec;
  border: 1px solid #f5b5b5;
  padding: 14px 16px;
  border-radius: 4px;
  font-size: 14px;
  margin: 16px 0;
}
.cta-button {
  display: block;
  background: #cc0000;
  color: #fff;
  text-align: center;
  padding: 18px;
  font-size: 18px;
  font-weight: 800;
  text-decoration: none;
  border-radius: 6px;
  margin-top: 18px;
  letter-spacing: 0.5px;
}

/* === FB COMMENTS === */
.fb-section {
  max-width: 720px;
  margin: 0 auto;
  padding: 28px 20px 60px;
  border-top: 8px solid #f0f2f5;
}
.fb-header {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 18px;
}
.fb-input-area {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 24px;
}
.fb-input-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #ddd;
  flex-shrink: 0;
}
.fb-input-field {
  flex: 1;
  background: #f0f2f5;
  border-radius: 18px;
  padding: 10px 16px;
  color: #65676b;
  font-size: 14px;
}
.fb-comment {
  display: flex;
  gap: 10px;
  margin-bottom: 16px;
}
.fb-comment.reply {
  margin-left: 44px;
}
.fb-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: 15px;
}
.av-pink {
  background: #e57373;
}
.av-blue {
  background: #64b5f6;
}
.av-orange {
  background: #ffb74d;
}
.av-green {
  background: #81c784;
}
.av-purple {
  background: #ba68c8;
}
.av-teal {
  background: #4db6ac;
}
.av-indigo {
  background: #7986cb;
}
.av-red {
  background: #e53935;
}
.av-cyan {
  background: #26c6da;
}
.av-brown {
  background: #a1887f;
}
.av-gray {
  background: #90a4ae;
}
.av-amber {
  background: #c89c00;
}
.av-grey {
  background: #757575;
}
.fb-comment-body {
  flex: 1;
}
.fb-comment-bubble {
  background: #f0f2f5;
  border-radius: 16px;
  padding: 10px 14px;
}
.fb-comment-author {
  font-weight: 700;
  font-size: 14px;
}
.fb-comment-text {
  font-size: 14px;
  margin-top: 2px;
}
.fb-screenshot img {
  display: block;
  width: 100%;
  max-width: 240px;
  height: auto;
  aspect-ratio: auto;
  margin: 8px 0 0;
  border-radius: 8px;
  border: 1px solid #ddd;
}
.fb-comment-meta {
  font-size: 12px;
  color: #65676b;
  margin: 4px 0 0 14px;
  display: flex;
  gap: 12px;
}
.fb-comment-meta .like {
  font-weight: 700;
}

/* === STICKY CTA === */
.sticky-cta {
  position: fixed;
  bottom: calc(14px + env(safe-area-inset-bottom));
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 32px);
  max-width: 420px;
  background: #cc0000;
  color: #fff;
  text-align: center;
  padding: 16px 20px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.6px;
  z-index: 9999;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.28);
  border-radius: 10px;
}

/* === RESPONSIVE === */
@media (max-width: 768px) {
  h1.headline {
    font-size: 28px;
  }
  .subheadline {
    font-size: 16px;
  }
  .sz-nav-inner {
    font-size: 12px;
    gap: 10px;
  }
  article {
    margin: 24px auto;
    padding: 0 14px;
  }
  article h2 {
    font-size: 22px;
  }
  article p {
    font-size: 16px;
  }
  .income-cta-block,
  .registration-block,
  .calculator-block,
  .platform-card {
    padding: 20px 16px;
  }
  table.income {
    font-size: 13px;
  }
  table.income th,
  table.income td {
    padding: 8px 6px;
  }
  .fb-comment.reply {
    margin-left: 20px;
  }
  .lp-img {
    width: calc(100% + 28px) !important;
    max-width: none !important;
    margin: 24px -14px !important;
    border-radius: 0 !important;
  }
}
@media (max-width: 420px) {
  h1.headline {
    font-size: 24px;
  }
  .subheadline {
    font-size: 14px;
  }
  .sz-nav {
    display: none;
  }
  .calc-amount {
    font-size: 22px;
  }
  .calc-result-value {
    font-size: 19px;
  }
}

/* Hat stays in the page flow. Never position:fixed/sticky on the portal hat/nav —
   a hanging bar distracts from the article. Bottom .sticky-cta is allowed.

   Do NOT set position on `#bbc-header > *` or every HeaderStyled child — that
   wrecks the BBC grid (logo/nav vanish, leftover blue sliver).
   Do NOT leave overflow-x:auto without overflow-y:hidden: CSS then computes
   overflow-y to auto and draws a nested vertical scrollbar in the hat. */
header {
  position: relative !important;
  top: auto !important;
}

/* Donor sticky-hat clone must not enter document flow (nested scrollbar + ghost height) */

/* Horizontal channel/nav strip only — never a vertical bar inside the hat.
   Outer wrap stays overflow hidden (or the page grows a 320 scrollbar).
   Inner nowrap list is the only overflow-x:auto. */

/* === chrome typography isolation: hat/footer must not inherit the article ===
   landing-style-zones.md locks font-family per zone but left line-height open.
   Every land template sets `body { line-height: 1.6 }` for the article, and that
   value inherits straight into the portal chrome. Packs are cut as resting-state
   snapshots of the donor's own markup, so a stray `<br>` / text node inside
   <header> (O Globo ships one) gets its anonymous line box inflated by the
   article's line-height — the logo row slides down and overflows the hat.

   Measured on O Globo: content row +8px lower than the library reference,
   overflowing the 97px hat by 29px instead of 21px. Nothing in the pack changed;
   the land's body typography leaked in.

   `normal` is not a taste call: the library preview.html has no body line-height,
   so this is exactly the value the frozen reference/*.png were rendered with.
   Chrome rules that DO set their own line-height keep winning on specificity. */
header,
footer.land-footer-slim {
  line-height: normal;
}

#hat-root .c_k1,
#hat-root .b_b {
  box-sizing: content-box;
}

body {
  padding-bottom: 0 !important;
}
footer {
  padding-bottom: 90px;
}

footer.land-footer-slim {
  padding-bottom: 90px;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(50% - 200px);
}

#form {
  max-width: 450px;
  width: 100%;
  margin: 20px auto;
}