:root{
  --fsh-navy:#19243A;
  --fsh-dark:#111A2D;
  --fsh-purple:#4F329A;
  --fsh-purple2:#6D50C7;
  --fsh-pink:#E72D76;
  --fsh-bg:#F8F7FA;
  --fsh-border:#E7E5EE;
  --fsh-muted:#747490;
  --fsh-text:#334155;
}

.fsh-article-page{
  background:var(--fsh-bg);
  color:var(--fsh-text);
}

.fsh-article-container{
  max-width:1040px;
}

/* =========================
   COMPACT ARTICLE HERO
========================= */
.fsh-article-hero{
  position:relative;
  overflow:hidden;
  padding:14px 0 20px;
  background:
    radial-gradient(circle at 92% 0,rgba(231,45,118,.13),transparent 260px),
    radial-gradient(circle at 8% 10%,rgba(109,80,199,.15),transparent 280px),
    linear-gradient(135deg,#121A2D 0%,#20203E 62%,#4F329A 100%);
}

.fsh-article-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px;
  margin:0 0 12px;
  color:rgba(255,255,255,.48);
  font-size:14px;
  font-weight:800;
}

.fsh-article-breadcrumb a{
  color:rgba(255,255,255,.82);
  text-decoration:none;
}

.fsh-article-breadcrumb a:hover{color:#fff}
.fsh-article-breadcrumb i{font-size:10px}

.fsh-article-hero-grid{
  display:block;
  max-width:900px;
}

.fsh-article-copy{
  max-width:900px;
}

.fsh-article-kicker{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 12px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  font-weight:800;
  color:#E8E2F4;
  font-size:11px;
  letter-spacing:.09em;
}

.fsh-article-copy h1{
  max-width:880px;
  margin:12px 0 9px;
  color:#fff;
  font-size:clamp(30px,4vw,48px);
  line-height:1.07;
  letter-spacing:-1.35px;
  font-weight:950;
}

.fsh-article-copy>p{
  max-width:800px;
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:20px;
  line-height:1.65;
}

.fsh-article-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:15px;
}

.fsh-article-meta span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:7px;
  background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.66);
  font-size:13px;
  font-weight:800;
}

/* Old decorative aside is intentionally hidden if cached markup remains. */
.fsh-article-side{display:none!important}

/* =========================
   ARTICLE BODY
========================= */
.fsh-article-body-section{
  padding:24px 0 48px;
}

.fsh-article-cover{
  max-width:900px;
  margin:0 auto 16px;
  overflow:hidden;
  border:1px solid var(--fsh-border);
  border-radius:17px;
  background:#fff;
  box-shadow:0 10px 28px rgba(25,36,58,.06);
}

.fsh-article-cover img{
  display:block;
  width:100%;
  aspect-ratio:16/7;
  max-height:395px;
  object-fit:cover;
}

/* Article and image now share the same width. */
.fsh-article-layout{
  max-width:900px;
  margin:0 auto;
  padding:30px 38px 34px;
  border:1px solid var(--fsh-border);
  border-radius:17px;
  background:#fff;
  box-shadow:0 8px 24px rgba(25,36,58,.045);
}

.fsh-article-content{
  max-width:780px;
  margin:0 auto;
}

/* =========================
   DYNAMIC BLOG TYPOGRAPHY
========================= */
.blog-dynamic-content{
  color:#334155;
  font-size:18px;
  line-height:1.82;
  word-break:break-word;
}

.blog-dynamic-content h1{
  margin:0 0 16px!important;
  color:var(--fsh-navy)!important;
  font-size:32px!important;
  line-height:1.28!important;
  font-weight:900!important;
  letter-spacing:-.35px!important;
}

.blog-dynamic-content h2{
  margin:28px 0 10px!important;
  color:var(--fsh-navy)!important;
  font-size:26px!important;
  line-height:1.35!important;
  font-weight:900!important;
}

.blog-dynamic-content h3{
  margin:22px 0 8px!important;
  color:#222C43!important;
  font-size:22px!important;
  line-height:1.4!important;
  font-weight:850!important;
}

.blog-dynamic-content h4{
  margin:19px 0 7px!important;
  color:#222C43!important;
  font-size:20px!important;
  font-weight:800!important;
}

.blog-dynamic-content h5,
.blog-dynamic-content h6{
  color:#334155!important;
  font-size:18px!important;
  font-weight:800!important;
}

.blog-dynamic-content p{
  margin:0 0 16px!important;
  color:#45546C!important;
  font-size:18px!important;
  line-height:1.82!important;
}

.blog-dynamic-content ul,
.blog-dynamic-content ol{
  margin:10px 0 18px!important;
  padding-left:22px!important;
}

.blog-dynamic-content li{
}

.blog-dynamic-content a{
  color:var(--fsh-purple);
  text-decoration:underline;
  text-underline-offset:2px;
}

.blog-dynamic-content blockquote{
  margin:20px 0!important;
  padding:14px 16px!important;
  border:0!important;
  border-left:3px solid var(--fsh-purple)!important;
  border-radius:0 10px 10px 0!important;
  background:#F7F4FB!important;
  color:#56516A!important;
  font-style:normal!important;
}

.blog-dynamic-content img{
  display:block;
  max-width:100%!important;
  height:auto!important;
  margin:18px auto!important;
  border-radius:12px!important;
}

.blog-dynamic-content table{
  width:100%!important;
  margin:20px 0!important;
  border:1px solid #E4DFEA!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:11px!important;
  background:#fff!important;
  font-size:13px!important;
}

.blog-dynamic-content th{
  padding:10px 12px!important;
  border:0!important;
  border-bottom:1px solid #DDD6E7!important;
  background:#F4F1F8!important;
  color:var(--fsh-navy)!important;
  font-weight:850!important;
}

.blog-dynamic-content td{
  padding:10px 12px!important;
  border:0!important;
  border-bottom:1px solid #EEEAF2!important;
  color:#45546C!important;
  line-height:1.5!important;
}

.blog-dynamic-content tr:last-child td{
  border-bottom:0!important;
}

.blog-dynamic-content p:empty,
.blog-dynamic-content div:empty{
  display:none!important;
}

/* =========================
   SHARE + TAGS
========================= */
.fsh-article-footer{
  max-width:900px;
  margin:12px auto 0;
  padding:14px 18px;
  border:1px solid var(--fsh-border);
  border-radius:14px;
  background:#fff;
}

.fsh-article-footer .border-top{
  margin:0!important;
  padding-top:0!important;
  border-top:0!important;
}

.fsh-article-footer h6{
  color:var(--fsh-navy);
  font-size:10px;
  font-weight:900;
}

.fsh-article-footer .btn-sm{
  font-size:9px!important;
}

.fsh-article-footer .rounded-pill{
  padding:3px 9px!important;
  font-size:9px!important;
}
.fsh-article-footer>.d-lg-flex{display:flex!important;flex-direction:column;align-items:flex-start;gap:16px}.fsh-article-footer>.d-lg-flex>div{width:100%}.fsh-article-footer .fsh-tag-pill{font-size:15px!important}.fsh-article-footer .fsh-tag-pill i{font-size:12px!important}.fsh-article-footer .fsh-share-row{gap:10px}.fsh-article-footer .fsh-share-row h6,.fsh-article-footer>div>div>h6{font-size:15px!important}
.fsh-article-footer .fsh-share-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fsh-article-footer .fsh-share-row h6{margin:0 8px 0 0}.fsh-article-footer .fsh-share-btn{display:inline-flex!important;align-items:center;justify-content:center;width:38px;height:38px;padding:0!important;border:0;border-radius:12px!important;color:#fff!important;font-size:16px!important;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.fsh-article-footer .fsh-share-btn:hover{transform:translateY(-2px);box-shadow:0 7px 16px rgba(25,36,58,.18)}.fsh-share-facebook{background:#1877f2}.fsh-share-whatsapp{background:#20b858}.fsh-share-twitter{background:#111827}.fsh-share-linkedin{background:#0a66c2}.fsh-share-copy{background:var(--fsh-purple)}

/* =========================
   RESPONSIVE
========================= */
@media(max-width:991.98px){
  .fsh-article-container{max-width:900px}
}

@media(max-width:767.98px){
  .fsh-article-hero{
    padding:16px 0 24px;
  }

  .fsh-article-breadcrumb{
    margin-bottom:14px;
  }

  .fsh-article-copy h1{
    font-size:34px;
    letter-spacing:-1px;
  }

  .fsh-article-copy>p{
    font-size:18px;
  }

  .fsh-article-body-section{
    padding:16px 0 35px;
  }

  .fsh-article-cover{
    margin-bottom:10px;
    border-radius:14px;
  }

  .fsh-article-cover img{
    aspect-ratio:16/8;
  }

  .fsh-article-layout{
    padding:22px 18px 26px;
    border-radius:14px;
  }

  .fsh-article-content{
    max-width:none;
  }

  .blog-dynamic-content p,
  .blog-dynamic-content li{
    font-size:18px!important;
  }

  .blog-dynamic-content table{
    display:block!important;
    overflow-x:auto!important;
    white-space:nowrap;
  }

  .fsh-article-footer{
    padding:14px;
  }
}

@media(max-width:575px){
  }

  .blog-dynamic-content table{
    display:block!important;
    overflow-x:auto!important;
    white-space:nowrap;
  }

  .fsh-article-footer{
    padding:14px;
  }
}

@media(max-width:575px){
  .fsh-article-copy h1{
    font-size:29px;
    line-height:1.1;
  }

  .fsh-article-meta span{
    font-size:12px;
  }

  .fsh-article-cover img{
    aspect-ratio:16/9;
  }
}
