/* FYTECH58 - single-post typography polish
   Prepared 2026-06-23. Scope: WordPress/Divi blog posts only. */

.single-post .et-l--body .et_pb_section_1_tb_body.et_pb_section {
  padding-top: 42px !important;
  padding-bottom: 72px !important;
  background: #ffffff !important;
}

body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et-l--body .et_pb_row_1_tb_body.et_pb_row,
body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .et-l--body .et_pb_row_1_tb_body.et_pb_row,
.single-post .et-l--body .et_pb_row_1_tb_body.et_pb_row {
  width: min(92%, 1080px) !important;
  max-width: 1080px !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.single-post .et_pb_post_title_0_tb_body .et_pb_title_container h1.entry-title {
  max-width: 1080px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  font-size: clamp(34px, 4vw, 52px) !important;
  line-height: 1.12em !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.single-post .et_pb_post_title_0_tb_body .et_pb_title_container .et_pb_title_meta_container,
.single-post .et_pb_post_title_0_tb_body .et_pb_title_container .et_pb_title_meta_container a {
  font-size: 14px !important;
  line-height: 1.4em !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.single-post .et_pb_post_content_0_tb_body {
  color: #26364a !important;
  font-family: "IBM Plex Sans", Helvetica, Arial, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.76em !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  box-sizing: border-box !important;
}

.single-post .et_pb_post_content_0_tb_body p,
.single-post .et_pb_post_content_0_tb_body li {
  color: #26364a !important;
  font-size: 17px !important;
  line-height: 1.76em !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

.single-post .et_pb_post_content_0_tb_body > p:first-of-type:not(.fytech-breadcrumbs-article) {
  margin-bottom: 26px !important;
  color: #1d3147 !important;
  font-size: 18px !important;
  line-height: 1.72em !important;
  font-weight: 500 !important;
}

.single-post .et_pb_post_content_0_tb_body strong,
.single-post .et_pb_post_content_0_tb_body b {
  color: #102235 !important;
  font-weight: 700 !important;
}

.single-post .et_pb_post_content_0_tb_body h2 {
  margin: 42px 0 12px !important;
  padding: 0 !important;
  color: #0d2136 !important;
  font-family: "IBM Plex Sans Condensed", Helvetica, Arial, sans-serif !important;
  font-size: clamp(26px, 2.3vw, 34px) !important;
  line-height: 1.18em !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.single-post .et_pb_post_content_0_tb_body h2:first-of-type {
  margin-top: 28px !important;
}

.single-post .et_pb_post_content_0_tb_body h3 {
  margin: 34px 0 10px !important;
  padding: 0 !important;
  color: #0d2136 !important;
  font-family: "IBM Plex Sans Condensed", Helvetica, Arial, sans-serif !important;
  font-size: 24px !important;
  line-height: 1.25em !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.single-post .et_pb_post_content_0_tb_body ul,
.single-post .et_pb_post_content_0_tb_body ol {
  margin: 10px 0 24px !important;
  padding-left: 1.25rem !important;
}

.single-post .et_pb_post_content_0_tb_body li {
  margin-bottom: 6px !important;
}

.single-post .et_pb_post_content_0_tb_body a {
  color: #167fa3 !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

.single-post .fytech-breadcrumbs-article {
  margin-bottom: 22px !important;
  color: #587086 !important;
  font-size: 13px !important;
  line-height: 1.5em !important;
  font-weight: 500 !important;
}

.single-post .fytech-article-cta {
  max-width: 1040px !important;
  margin: 52px auto 28px !important;
  padding: 34px 36px !important;
  border: 1px solid #cfe0ee !important;
  border-radius: 8px !important;
  background: #f6f9fc !important;
  box-shadow: 0 22px 54px -40px rgba(13, 33, 54, 0.38) !important;
}

.single-post .fytech-article-cta .fytech-article-kicker {
  margin-bottom: 8px !important;
  color: #167fa3 !important;
  font-size: 12px !important;
  line-height: 1.4em !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.single-post .fytech-article-cta h2 {
  margin: 0 0 14px !important;
  font-size: clamp(24px, 2.1vw, 32px) !important;
  line-height: 1.16em !important;
}

.single-post .fytech-article-cta p {
  margin-bottom: 10px !important;
}

.single-post .fytech-article-cta-actions {
  gap: 14px !important;
  margin-top: 24px !important;
}

.single-post .fytech-article-button,
.single-post .fytech-article-button-secondary {
  min-height: 46px !important;
  padding: 11px 18px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  line-height: 1.25em !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease !important;
}

.single-post .et_pb_post_content_0_tb_body .fytech-article-button,
.single-post .et_pb_post_content_0_tb_body .fytech-article-button:visited {
  background: #ef2331 !important;
  border-color: #ef2331 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
}

.single-post .et_pb_post_content_0_tb_body .fytech-article-button:hover,
.single-post .et_pb_post_content_0_tb_body .fytech-article-button:focus {
  background: #c91522 !important;
  border-color: #c91522 !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

.single-post .et_pb_post_content_0_tb_body .fytech-article-button-secondary,
.single-post .et_pb_post_content_0_tb_body .fytech-article-button-secondary:visited {
  background: #ffffff !important;
  border-color: #9bc4df !important;
  color: #0b6f96 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
}

.single-post .et_pb_post_content_0_tb_body .fytech-article-button-secondary:hover,
.single-post .et_pb_post_content_0_tb_body .fytech-article-button-secondary:focus {
  background: #eaf5fb !important;
  border-color: #167fa3 !important;
  color: #084f6c !important;
}

.single-post .et_pb_post_nav_0_tb_body {
  max-width: 1080px !important;
  margin: 28px auto 0 !important;
  padding: 24px 0 8px !important;
  border-top: 1px solid #e2ebf2 !important;
}

.single-post .et_pb_post_nav_0_tb_body.nav-single {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 22px !important;
  align-items: start !important;
}

.single-post .et_pb_post_nav_0_tb_body .nav-previous,
.single-post .et_pb_post_nav_0_tb_body .nav-next {
  float: none !important;
  width: auto !important;
  max-width: 100% !important;
}

.single-post .et_pb_post_nav_0_tb_body .nav-next {
  text-align: right !important;
}

.single-post .et_pb_posts_nav.et_pb_post_nav_0_tb_body span a,
.single-post .et_pb_posts_nav.et_pb_post_nav_0_tb_body span a span {
  font-size: 15px !important;
  line-height: 1.35em !important;
  font-weight: 700 !important;
  color: #1685a8 !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
}

.single-post .et_pb_posts_nav.et_pb_post_nav_0_tb_body span a:hover,
.single-post .et_pb_posts_nav.et_pb_post_nav_0_tb_body span a:focus {
  color: #0d5f7f !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer,
.single-post .et-l--footer .et_pb_row_1_tb_footer,
.single-post .et-l--footer .et_pb_row_2_tb_footer {
  width: min(92%, 1120px) !important;
  max-width: 1120px !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: start !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer::after {
  display: none !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_column {
  float: none !important;
  width: auto !important;
  margin-right: 0 !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_blurb_content {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  max-width: none !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_main_blurb_image {
  flex: 0 0 38px !important;
  width: 38px !important;
  margin: 0 !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_image_wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer .et-pb-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  font-size: 32px !important;
  line-height: 1 !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_blurb_container {
  padding-left: 0 !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_module_header {
  margin: 0 0 6px !important;
  padding: 0 !important;
  font-size: 15px !important;
  line-height: 1.3em !important;
  font-weight: 700 !important;
}

.single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_blurb_description,
.single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_blurb_description a {
  font-size: 14px !important;
  line-height: 1.55em !important;
}

@media (max-width: 767px) {
  body.single-post,
  .single-post #page-container,
  .single-post #et-boc,
  .single-post .et-l,
  .single-post .et-l--body,
  .single-post .et_pb_section,
  .single-post .et_builder_inner_content {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  .single-post .et-l--body .et_pb_section_1_tb_body.et_pb_section {
    padding-top: 30px !important;
    padding-bottom: 54px !important;
  }

  body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et-l--body .et_pb_row_0_tb_body.et_pb_row,
  body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et-l--body .et_pb_row_1_tb_body.et_pb_row,
  body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_0_tb_body.et_pb_row,
  body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_1_tb_body.et_pb_row,
  .single-post .et-l--body .et_pb_row_1_tb_body.et_pb_row {
    box-sizing: border-box !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et-l--body .et_pb_row_0_tb_body.et_pb_row,
  .single-post .et-l--body .et_pb_row_0_tb_body.et_pb_row {
    box-sizing: border-box !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_post_title_0_tb_body,
  .single-post .et_pb_post_title_0_tb_body {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_post_title_0_tb_body .et_pb_title_container,
  .single-post .et_pb_post_title_0_tb_body .et_pb_title_container {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: calc(100vw - 32px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    overflow: hidden !important;
  }

  body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_post_title_0_tb_body .et_pb_title_container h1.entry-title,
  .single-post .et_pb_post_title_0_tb_body .et_pb_title_container h1.entry-title {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: 22px !important;
    line-height: 1.18em !important;
    white-space: normal !important;
    text-align: center !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: auto !important;
  }

  .single-post .et_pb_post_content_0_tb_body,
  .single-post .et_pb_post_content_0_tb_body p,
  .single-post .et_pb_post_content_0_tb_body li {
    max-width: 100% !important;
    font-size: 16px !important;
    line-height: 1.72em !important;
    overflow-wrap: break-word !important;
  }

  .single-post .et_pb_post_content_0_tb_body * {
    max-width: 100% !important;
  }

  .single-post .et_pb_post_content_0_tb_body > p:first-of-type:not(.fytech-breadcrumbs-article) {
    font-size: 16.5px !important;
    line-height: 1.7em !important;
  }

  .single-post .et_pb_post_content_0_tb_body h2 {
    margin-top: 32px !important;
    font-size: 24px !important;
    line-height: 1.2em !important;
  }

  .single-post .et_pb_post_content_0_tb_body h3 {
    font-size: 21px !important;
  }

  .single-post .fytech-article-cta {
    margin-top: 40px !important;
    margin-bottom: 24px !important;
    padding: 24px 20px !important;
  }

  .single-post .fytech-article-button,
  .single-post .fytech-article-button-secondary {
    width: 100% !important;
  }

  .single-post .et_pb_post_nav_0_tb_body.nav-single {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .single-post .et_pb_post_nav_0_tb_body .nav-next {
    text-align: left !important;
  }

  .single-post .et-l--footer .et_pb_row_0_tb_footer {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_blurb_content {
    gap: 12px !important;
  }

  .single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_main_blurb_image,
  .single-post .et-l--footer .et_pb_row_0_tb_footer .et_pb_image_wrap,
  .single-post .et-l--footer .et_pb_row_0_tb_footer .et-pb-icon {
    width: 34px !important;
    height: 34px !important;
  }

  .single-post .et-l--footer .et_pb_row_0_tb_footer .et-pb-icon {
    font-size: 28px !important;
  }
}
