.single-post.fs-article-layout .page-top,
.single-post.fs-article-layout .page-header,
.single-post.fs-article-layout aside.sidebar,
.single-post.fs-article-layout .sidebar,
.single-post.fs-article-layout .related-posts,
.single-post.fs-article-layout .porto-related-posts,
.single-post.fs-article-layout .post-share,
.single-post.fs-article-layout .share-links,
.single-post.fs-article-layout .author-name,
.single-post.fs-article-layout .post-meta,
.single-post.fs-article-layout #comments,
.single-post.fs-article-layout .comment-respond,
.single-post.fs-article-layout .entry-title {
  display: none !important;
}

.single-post.fs-article-layout #main {
  background: #fff;
  overflow: visible;
}

.single-post.fs-article-layout .main-content-wrap {
  display: block !important;
}

.single-post.fs-article-layout .main-content-wrap > [class*="col-"],
.single-post.fs-article-layout #content,
.single-post.fs-article-layout .porto-single-page {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.single-post.fs-article-layout #main > .container,
.single-post.fs-article-layout #main > .container-fluid {
  max-width: 1180px;
  padding-left: 24px;
  padding-right: 24px;
  overflow: visible;
}

@media (min-width: 992px) {
  .single-post.fs-article-layout #main {
    padding-top: 56px;
  }
}

.fs-crumb,
.fs-article,
.fs-banner {
  --fs-red: #e10600;
  --fs-ink: #222529;
  --fs-body: #4a453f;
  --fs-muted: #7a736c;
  --fs-line: #ece7e1;
  --fs-soft: #f7f4f0;
  --fs-card: #f3eee7;
  --fs-dark: #1d2127;
  font-family: Poppins, "Segoe UI", sans-serif;
}

.fs-crumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0 0 28px;
  color: var(--fs-muted);
  font-size: 12px;
  letter-spacing: 0.02em;
}

.fs-crumb a {
  color: var(--fs-muted);
  text-decoration: none;
}

.fs-crumb a:hover {
  color: var(--fs-red);
}

.fs-article {
  color: var(--fs-body);
  padding: 0 0 8px;
}

.fs-hero {
  max-width: 820px;
  margin: 0 0 32px;
}

.fs-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  color: var(--fs-red);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.fs-kicker::before {
  content: "";
  width: 28px;
  height: 2px;
  background: var(--fs-red);
}

.fs-title {
  margin: 0 0 16px;
  color: var(--fs-ink);
  font-family: Poppins, "Segoe UI", sans-serif;
  font-size: clamp(30px, 4.2vw, 46px);
  font-weight: 700;
  line-height: 1.18;
  letter-spacing: -0.03em;
}

.fs-dek {
  margin: 0 0 22px;
  max-width: 720px;
  color: #5c564f;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.55;
}

.fs-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--fs-line);
  list-style: none;
  color: var(--fs-muted);
  font-size: 13px;
}

.fs-meta li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.fs-meta svg {
  width: 15px;
  height: 15px;
  color: var(--fs-red);
}

.fs-meta a {
  color: var(--fs-ink);
  text-decoration: none;
}

.fs-meta a:hover {
  color: var(--fs-red);
}

.fs-lead {
  margin: 0 0 42px;
}

.fs-lead-img {
  margin: 0;
  overflow: hidden;
  background: #ddd;
}

.fs-lead-img img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 460px;
  object-fit: cover;
}

.fs-lead-img figcaption {
  margin-top: 8px;
  color: var(--fs-muted);
  font-size: 12px;
}

.fs-lead--split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  align-items: end;
}

.fs-lead--split .fs-lead-img {
  grid-column: 1 / 2;
  grid-row: 1;
}

.fs-lead--split .fs-quote {
  grid-column: 2 / 3;
  grid-row: 1;
  z-index: 2;
  width: calc(100% + 48px);
  margin: 0 0 28px -48px;
}

.fs-quote {
  margin: 0 0 22px;
  padding: 28px 24px 22px;
  background: var(--fs-card);
  border: 0;
}

.fs-quote::before {
  content: "“";
  display: block;
  margin-bottom: 4px;
  color: var(--fs-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 42px;
  line-height: 0.7;
}

.fs-quote p {
  margin: 0 0 16px;
  color: var(--fs-ink);
  font-size: 16px;
  font-style: italic;
  line-height: 1.5;
}

.fs-quote cite {
  display: block;
  color: var(--fs-red);
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.fs-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 48px 56px;
  align-items: start;
}

.fs-content {
  font-size: 16.5px;
  line-height: 1.85;
}

.fs-content > p:first-of-type {
  font-size: 18px;
  line-height: 1.75;
  color: #3f3a35;
}

.fs-content p,
.fs-content li {
  color: var(--fs-body);
}

.fs-content p {
  margin: 0 0 1.15em;
}

.fs-content a {
  color: var(--fs-red);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.fs-content ul,
.fs-content ol {
  margin: 0 0 1.4em;
  padding-left: 1.25em;
}

.fs-content ul {
  list-style: disc;
}

.fs-content ol {
  list-style: decimal;
}

.fs-content li {
  margin: 0 0 0.45em;
}

.fs-content strong {
  color: var(--fs-ink);
  font-weight: 600;
}

.fs-section-title {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 34px 0 12px;
  color: var(--fs-ink);
  font-family: Poppins, "Segoe UI", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
  scroll-margin-top: 120px;
}

.fs-num {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  margin-top: 1px;
  border-radius: 50%;
  background: var(--fs-red);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 28px;
  text-align: center;
}

.fs-section-text {
  padding-top: 3px;
}

.fs-statgrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 8px 0 28px !important;
  padding: 0 !important;
  list-style: none !important;
}

.fs-statgrid li {
  margin: 0 !important;
  padding: 16px 14px !important;
  background: #fff;
  border: 1px solid var(--fs-line);
  color: var(--fs-ink) !important;
  font-size: 14px !important;
  font-weight: 600;
  line-height: 1.45 !important;
}

.fs-disclaimer {
  margin-top: 28px !important;
  color: var(--fs-muted) !important;
  font-size: 14px !important;
  font-style: italic;
  line-height: 1.65 !important;
}

.fs-takeaways {
  margin: 12px 0 36px;
  padding: 28px 30px;
  background: var(--fs-soft);
}

.fs-takeaways h2 {
  margin: 0 0 16px;
  color: var(--fs-ink);
  font-size: 22px;
  font-weight: 700;
}

.fs-takeaways ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.fs-takeaways li {
  display: flex;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--fs-line);
  color: var(--fs-ink);
  font-size: 15px;
  line-height: 1.5;
}

.fs-takeaways li:last-child {
  border-bottom: 0;
}

.fs-takeaways li span {
  flex: 0 0 auto;
  color: var(--fs-red);
  font-size: 12px;
  font-weight: 700;
}

.fs-footer-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px;
  margin: 8px 0 40px;
  padding-top: 20px;
  border-top: 1px solid var(--fs-line);
}

.fs-tags,
.fs-share {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.fs-tags > span,
.fs-share > span {
  margin-right: 4px;
  color: var(--fs-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.fs-tags a {
  padding: 5px 10px;
  border: 1px solid var(--fs-line);
  color: var(--fs-ink);
  font-size: 12px;
  text-decoration: none;
}

.fs-tags a:hover {
  border-color: var(--fs-red);
  color: var(--fs-red);
}

.fs-share a,
.fs-share button {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--fs-line);
  border-radius: 50%;
  background: #fff;
  color: var(--fs-ink);
  cursor: pointer;
  text-decoration: none;
}

.fs-share svg {
  width: 14px;
  height: 14px;
}

.fs-share a:hover,
.fs-share button:hover,
.fs-share button.is-copied {
  border-color: var(--fs-red);
  color: var(--fs-red);
}

.fs-related {
  margin: 0 0 24px;
}

.fs-related h2 {
  margin: 0 0 18px;
  color: var(--fs-ink);
  font-size: 22px;
  font-weight: 700;
}

.fs-related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.fs-related-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--fs-line);
  color: inherit;
  text-decoration: none;
  background: #fff;
}

.fs-related-img {
  display: block;
  height: 128px;
  overflow: hidden;
  background: #eee;
}

.fs-related-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.fs-related-copy {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px;
}

.fs-related-date {
  color: var(--fs-muted);
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.fs-related-title {
  color: var(--fs-ink);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
}

.fs-related-card:hover .fs-related-title {
  color: var(--fs-red);
}

.fs-sidebar {
  min-width: 0;
}

.fs-sticky {
  position: sticky;
  top: 112px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.fs-toc {
  padding: 22px 20px 16px;
  background: #fff;
  border: 1px solid var(--fs-line);
}

.fs-toc h2,
.fs-cta h2 {
  margin: 0 0 14px;
  color: var(--fs-ink);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
}

.fs-toc h2 {
  display: flex;
  align-items: center;
  gap: 10px;
}

.fs-toc h2::before {
  content: "";
  width: 18px;
  height: 2px;
  background: var(--fs-red);
}

.fs-toc ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.fs-toc a {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 8px;
  padding: 8px 0;
  border-bottom: 1px solid #f1ebe4;
  color: var(--fs-muted);
  font-size: 13px;
  line-height: 1.4;
  text-decoration: none;
}

.fs-toc li:last-child a {
  border-bottom: 0;
}

.fs-toc .n {
  color: var(--fs-red);
  font-size: 11px;
  font-weight: 700;
}

.fs-toc a:hover,
.fs-toc a.is-active {
  color: var(--fs-ink);
}

.fs-toc a.is-active {
  font-weight: 600;
}

.fs-cta {
  padding: 24px 22px 22px;
  background: var(--fs-dark);
  color: #d9d3cc;
}

.fs-cta h2 {
  color: #fff;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
}

.fs-cta p {
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.55;
}

.fs-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 20px;
  background: var(--fs-red);
  color: #fff !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-decoration: none !important;
  text-transform: uppercase;
}

.fs-btn:hover {
  background: #b70500;
  color: #fff !important;
}

.fs-banner {
  width: 100vw;
  max-width: 100vw;
  margin: 48px 0 0 calc(50% - 50vw);
  padding: 56px 24px;
  background: var(--fs-dark);
  color: #d7d1ca;
}

.fs-banner-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 22px 32px;
  max-width: 1180px;
  margin: 0 auto;
}

.fs-banner h2 {
  margin: 0 0 8px;
  color: #fff;
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 600;
  line-height: 1.2;
}

.fs-banner p {
  margin: 0;
  max-width: 640px;
  font-size: 15px;
  line-height: 1.55;
}

.fs-btn-light {
  flex: 0 0 auto;
  background: var(--fs-red);
}

@media (max-width: 991px) {
  .fs-lead--split {
    display: block;
  }

  .fs-lead--split .fs-quote {
    width: auto;
    margin: 18px 0 0;
  }

  .fs-lead-img img {
    max-height: 240px;
  }

  .fs-body {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .fs-sticky {
    position: static;
  }

  .fs-related-grid {
    grid-template-columns: 1fr;
  }

  .fs-title {
    font-size: 30px;
  }
}

@media (max-width: 575px) {
  .fs-statgrid {
    grid-template-columns: 1fr;
  }

  .fs-btn {
    width: 100%;
  }

  .fs-banner-inner .fs-btn {
    width: 100%;
  }
}
