/* ── DEVVISTA BLOG POST CSS ── */

/* ── READING PROGRESS ── */
#read-progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);width:0%;z-index:2000;transition:width 0.1s linear;}

/* ── BREADCRUMB BAR ── */
.breadcrumb-bar{background:var(--dark-2);border-bottom:1px solid var(--border);padding:0.65rem 0;}
.breadcrumb-bar .breadcrumb{margin:0;font-size:0.77rem;}
.breadcrumb-bar .breadcrumb-item a{color:var(--muted);text-decoration:none;transition:color 0.2s;}
.breadcrumb-bar .breadcrumb-item a:hover{color:var(--cream);}
.breadcrumb-bar .breadcrumb-item.active{color:var(--accent);}
.breadcrumb-bar .breadcrumb-item+.breadcrumb-item::before{color:var(--muted);}

/* ── ARTICLE HERO ── */
.article-hero{background:var(--dark-2);padding:4.5rem 0 3.5rem;border-bottom:1px solid var(--border);}
.article-cat{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.62rem;font-weight:800;letter-spacing:0.2em;text-transform:uppercase;color:var(--accent);background:rgba(232,58,26,0.08);border:1px solid rgba(232,58,26,0.18);padding:0.35rem 0.85rem;border-radius:4px;margin-bottom:1.5rem;}
.article-hero h1{font-size:clamp(1.9rem,3.8vw,3rem);font-weight:900;line-height:1.18;letter-spacing:-0.03em;color:var(--white,#fff);margin-bottom:1.25rem;max-width:800px;}
.article-lead{font-size:1.0625rem;font-weight:400;color:rgba(245,230,211,0.72);line-height:1.75;max-width:680px;margin-bottom:2rem;}
.article-meta{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;}
.a-author{display:flex;align-items:center;gap:0.75rem;}
.a-author-av{width:38px;height:38px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:900;color:#fff;flex-shrink:0;}
.a-author-name{font-size:0.78rem;font-weight:700;color:var(--cream);}
.a-author-role{font-size:0.68rem;color:var(--muted,#787b78);}
.a-divider{width:1px;height:28px;background:var(--border);}
.a-stat{display:flex;align-items:center;gap:0.4rem;font-size:0.72rem;font-weight:600;color:var(--muted,#787b78);}
.a-stat i{font-size:0.78rem;color:var(--accent);}
.article-tags{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap;margin-top:1.75rem;padding-top:1.75rem;border-top:1px solid var(--border);}
.article-tags span:first-child{font-size:0.65rem;font-weight:700;color:var(--muted,#787b78);letter-spacing:0.1em;text-transform:uppercase;margin-right:0.25rem;}
.a-tag{font-size:0.65rem;font-weight:700;color:rgba(245,230,211,0.5);background:rgba(245,230,211,0.05);border:1px solid var(--border);padding:0.25rem 0.7rem;border-radius:3px;letter-spacing:0.04em;}

/* ── POST TAGS ── */
.post-tags{display:flex;align-items:center;flex-wrap:wrap;gap:0.5rem;margin-top:1.75rem;padding-top:1.75rem;border-top:1px solid var(--border);}
.post-tags-label{font-size:0.62rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-right:0.25rem;flex-shrink:0;}
.post-tag{display:inline-flex;align-items:center;gap:0.3rem;font-size:0.68rem;font-weight:700;color:rgba(245,230,211,0.65);background:rgba(245,230,211,0.05);border:1px solid var(--border);padding:0.28rem 0.75rem;border-radius:20px;text-decoration:none;transition:all 0.2s;letter-spacing:0.03em;}
.post-tag:hover{color:#fff;background:rgba(232,58,26,0.12);border-color:rgba(232,58,26,0.35);}
.post-tag i{font-size:0.65rem;color:var(--accent);}

/* ── FEATURED IMAGE ── */
.article-featured-img{width:100%;max-height:480px;object-fit:cover;border-radius:10px;margin-bottom:2.5rem;border:1px solid var(--border);}

/* ── MAIN LAYOUT ── */
.article-wrapper{padding:4rem 0 5rem;}
.article-content{max-width:700px;}

/* ── ARTICLE TYPOGRAPHY ── */
.article-content p{font-size:1rem;font-weight:400;color:rgba(245,230,211,0.82);line-height:1.9;margin-bottom:1.5rem;}
.article-content h2:not(.accordion-header){font-size:clamp(1.25rem,2.2vw,1.6rem);font-weight:800;color:#fff;letter-spacing:-0.02em;margin:3rem 0 1.1rem;padding-bottom:0.75rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:0.75rem;}
.article-content h2:not(.accordion-header) .h2-num{font-size:0.6rem;font-weight:900;color:var(--accent);background:rgba(232,58,26,0.09);border:1px solid rgba(232,58,26,0.2);padding:0.2rem 0.5rem;border-radius:3px;letter-spacing:0.1em;flex-shrink:0;}
.article-content h3{font-size:1rem;font-weight:800;color:var(--cream);letter-spacing:-0.01em;margin:2rem 0 0.65rem;position:relative;padding-left:1rem;}
.article-content h3::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:14px;background:var(--accent);border-radius:2px;}
.article-content ul,.article-content ol{color:rgba(245,230,211,0.8);font-size:1rem;line-height:1.85;padding-left:0;list-style:none;margin-bottom:1.5rem;}
.article-content ul li,.article-content ol li{padding:0.3rem 0 0.3rem 1.5rem;position:relative;}
.article-content ul li::before{content:'';position:absolute;left:0;top:0.72rem;width:5px;height:5px;border-radius:50%;background:var(--accent);}
.article-content ol{counter-reset:ol-count;}
.article-content ol li{counter-increment:ol-count;}
.article-content ol li::before{content:counter(ol-count);position:absolute;left:0;top:0.25rem;font-size:0.62rem;font-weight:900;color:var(--accent);background:rgba(232,58,26,0.08);border:1px solid rgba(232,58,26,0.18);width:18px;height:18px;border-radius:3px;display:flex;align-items:center;justify-content:center;}
.article-content a:not(.btn-accent):not(.btn-outline){color:var(--accent);text-decoration:underline;text-underline-offset:3px;font-weight:600;transition:color 0.2s;}
.article-content a:not(.btn-accent):not(.btn-outline):hover{color:var(--accent-h);}
.article-content .btn-accent{color:#fff;text-decoration:none;}
.article-content .btn-accent:hover{color:#fff;}
.article-content strong{color:#fff;font-weight:700;}

/* ── CALLOUT BOXES ── */
.callout{border-left:3px solid var(--accent);background:rgba(232,58,26,0.05);padding:1.25rem 1.5rem;margin:2rem 0;border-radius:0 6px 6px 0;}
.callout-label{font-size:0.6rem;font-weight:900;letter-spacing:0.18em;text-transform:uppercase;color:var(--accent);margin-bottom:0.55rem;}
.callout p{margin-bottom:0;font-size:0.94rem;}
.callout-green{border-color:#1db954;background:rgba(29,185,84,0.05);}
.callout-green .callout-label{color:#1db954;}

/* Red flag box */
.redflags-box{background:var(--dark-3);border:1px solid rgba(232,58,26,0.2);border-radius:8px;padding:1.75rem;margin:2rem 0;}
.rf-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--border);}
.rf-header i{font-size:1.1rem;color:var(--accent);}
.rf-header span{font-size:0.72rem;font-weight:900;letter-spacing:0.15em;text-transform:uppercase;color:var(--accent);}
.rf-item{display:flex;align-items:flex-start;gap:0.9rem;padding:0.7rem 0;border-bottom:1px solid var(--border);}
.rf-item:last-child{border-bottom:none;padding-bottom:0;}
.rf-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:0.45rem;}
.rf-item p{margin-bottom:0;font-size:0.9rem;color:rgba(245,230,211,0.78);}

/* Questions box */
.questions-box{background:var(--dark-2);border:1px solid var(--border);border-radius:8px;overflow:hidden;margin:2rem 0;}
.qb-item{display:flex;align-items:flex-start;gap:1.25rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);}
.qb-item:last-child{border-bottom:none;}
.qb-q{font-size:0.58rem;font-weight:900;letter-spacing:0.1em;color:var(--accent);background:rgba(232,58,26,0.08);border:1px solid rgba(232,58,26,0.18);padding:0.2rem 0.5rem;border-radius:3px;flex-shrink:0;margin-top:0.1rem;}
.qb-text{font-size:0.92rem;color:rgba(245,230,211,0.8);line-height:1.75;}

/* Pull quote */
.pull-quote{margin:2.5rem 0;padding:2rem 2rem 2rem 2.25rem;background:var(--dark-3);border-left:4px solid var(--accent);position:relative;}
.pull-quote::before{content:'\201C';position:absolute;top:-0.5rem;left:1.5rem;font-size:5rem;color:var(--accent);opacity:0.15;font-family:Georgia,serif;line-height:1;}
.pull-quote p{font-size:clamp(1.05rem,1.8vw,1.25rem);font-weight:700;color:#fff;line-height:1.6;margin-bottom:0;font-style:italic;}
.pull-quote cite{display:block;font-size:0.7rem;font-weight:600;color:var(--muted,#787b78);margin-top:0.75rem;font-style:normal;letter-spacing:0.05em;}

/* Inline CTA */
.inline-cta{background:linear-gradient(135deg,var(--dark-3) 0%,rgba(232,58,26,0.07) 100%);border:1px solid rgba(232,58,26,0.2);border-radius:8px;padding:1.75rem 2rem;margin:3rem 0;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;}
.inline-cta-text{font-size:0.95rem;font-weight:700;color:#fff;max-width:360px;line-height:1.5;flex:1;}
.inline-cta-text span{color:var(--accent);}
.inline-cta .btn-accent{flex-shrink:0;white-space:nowrap;}

/* Summary box */
.summary-box{background:var(--dark-2);border:1px solid var(--border);border-radius:8px;padding:2rem;margin:2rem 0;}
.summary-box h4{font-size:0.65rem;font-weight:900;letter-spacing:0.18em;text-transform:uppercase;color:var(--accent);margin-bottom:1.25rem;padding-bottom:0.75rem;border-bottom:1px solid var(--border);}
.summary-item{display:flex;align-items:flex-start;gap:1rem;padding:0.65rem 0;border-bottom:1px solid var(--border);}
.summary-item:last-child{border-bottom:none;padding-bottom:0;}
.summary-icon{font-size:0.9rem;color:#1db954;flex-shrink:0;margin-top:0.1rem;}
.summary-item p{margin-bottom:0;font-size:0.9rem;color:rgba(245,230,211,0.78);}

/* Blog FAQ */
.blog-faq{margin:2rem 0;}
.blog-faq .accordion-item{background:var(--dark-3);border:1px solid var(--border);border-radius:6px!important;margin-bottom:0.65rem;overflow:hidden;}
.blog-faq .accordion-button{background:var(--dark-3);color:var(--cream);font-size:0.92rem;font-weight:700;padding:1.1rem 1.4rem;box-shadow:none!important;}
.blog-faq .accordion-button:not(.collapsed){background:rgba(232,58,26,0.07);color:#fff;}
.blog-faq .accordion-button::after{filter:invert(1);}
.blog-faq .accordion-body{background:var(--dark-2);padding:1.25rem 1.4rem;font-size:0.92rem;color:rgba(245,230,211,0.75);line-height:1.8;border-top:1px solid var(--border);}

/* ── SIDEBAR ── */
.article-sidebar{
  position: sticky;
  top: 88px;
  max-height: calc(100vh - 100px);
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  scrollbar-color: rgba(232,58,26,0.3) transparent;
}
.article-sidebar::-webkit-scrollbar{width:3px;}
.article-sidebar::-webkit-scrollbar-track{background:transparent;}
.article-sidebar::-webkit-scrollbar-thumb{background:rgba(232,58,26,0.3);border-radius:3px;}
.article-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(232,58,26,0.6);}
.toc-card{background:var(--dark-3);border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:1.5rem;}
.toc-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:0.6rem;}
.toc-header i{font-size:0.82rem;color:var(--accent);}
.toc-header span{font-size:0.65rem;font-weight:900;letter-spacing:0.15em;text-transform:uppercase;color:var(--cream);}
.toc-list{padding:0.75rem 0;}
.toc-link{display:flex;align-items:center;gap:0.75rem;padding:0.55rem 1.25rem;font-size:0.78rem;font-weight:600;color:rgba(245,230,211,0.5);text-decoration:none;transition:all 0.2s;border-left:2px solid transparent;cursor:pointer;}
.toc-link:hover{color:var(--cream);background:rgba(245,230,211,0.03);}
.toc-link.active{color:var(--cream);border-left-color:var(--accent);background:rgba(232,58,26,0.06);}
.toc-link .tl-num{font-size:0.58rem;font-weight:900;color:var(--accent);width:16px;text-align:right;flex-shrink:0;}
.share-card{background:var(--dark-3);border:1px solid var(--border);border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;}
.share-label{font-size:0.62rem;font-weight:900;letter-spacing:0.15em;text-transform:uppercase;color:var(--muted,#787b78);margin-bottom:0.85rem;}
.share-btns{display:flex;gap:0.6rem;}
.share-btn{width:38px;height:38px;border-radius:6px;background:rgba(245,230,211,0.05);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted,#787b78);font-size:0.88rem;text-decoration:none;transition:all 0.2s;cursor:pointer;padding:0;font-family:inherit;line-height:1;}
.share-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff;}
.sidebar-cta{background:linear-gradient(160deg,var(--dark-3) 0%,rgba(232,58,26,0.1) 100%);border:1px solid rgba(232,58,26,0.2);border-radius:8px;padding:1.75rem;text-align:center;}
.scta-label{font-size:0.6rem;font-weight:900;letter-spacing:0.18em;text-transform:uppercase;color:var(--accent);margin-bottom:0.75rem;}
.scta-title{font-size:1rem;font-weight:800;color:#fff;line-height:1.4;margin-bottom:0.75rem;}
.scta-text{font-size:0.8rem;color:rgba(245,230,211,0.55);line-height:1.65;margin-bottom:1.25rem;}
.scta-btn{display:block;background:var(--accent);color:#fff;font-weight:800;font-size:0.78rem;padding:0.8rem 1.25rem;border-radius:6px;text-decoration:none;transition:all 0.22s;text-align:center;}
.scta-btn:hover{background:var(--accent-h);color:#fff;transform:translateY(-2px);}

/* ── RELATED POSTS ── */
.related-section{background:var(--dark-2);padding:5rem 0;border-top:1px solid var(--border);}
.rel-card{background:var(--dark-3);border:1px solid var(--border);border-radius:8px;overflow:hidden;height:100%;transition:border-color 0.2s,transform 0.2s;text-decoration:none;display:block;}
.rel-card:hover{border-color:rgba(232,58,26,0.3);transform:translateY(-3px);}
.rel-card-img{height:160px;background:var(--dark-2);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border);position:relative;overflow:hidden;}
.rel-card-img img{width:100%;height:100%;object-fit:cover;}
.rel-card-img-bg{position:absolute;inset:0;background:linear-gradient(135deg,rgba(232,58,26,0.08) 0%,transparent 60%);}
.rel-card-img i{font-size:2.25rem;color:rgba(232,58,26,0.25);position:relative;z-index:1;}
.rel-card-body{padding:1.5rem;}
.rel-cat{font-size:0.6rem;font-weight:800;letter-spacing:0.15em;text-transform:uppercase;color:var(--accent);margin-bottom:0.6rem;}
.rel-title{font-size:0.92rem;font-weight:800;color:var(--cream);line-height:1.45;margin-bottom:0.75rem;}
.rel-meta{font-size:0.7rem;color:var(--muted,#787b78);display:flex;align-items:center;gap:0.5rem;}

/* ── ARTICLE CTA BANNER ── */
.article-cta{background:var(--dark-3);border-top:1px solid var(--border);padding:5rem 0;}
.article-cta .ghost-word{position:absolute;font-size:clamp(5rem,12vw,10rem);font-weight:900;color:transparent;-webkit-text-stroke:1px rgba(245,230,211,0.04);white-space:nowrap;user-select:none;letter-spacing:-0.04em;top:50%;left:50%;transform:translate(-50%,-50%);}
.article-cta-inner{position:relative;text-align:center;}
.article-cta h2{font-size:clamp(1.75rem,3.5vw,2.6rem);font-weight:900;color:#fff;letter-spacing:-0.03em;max-width:580px;margin:0 auto 1rem;line-height:1.2;}
.article-cta p{font-size:1rem;color:rgba(245,230,211,0.55);max-width:420px;margin:0 auto 2.5rem;}
.article-cta .cta-btns{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;}

/* ── RESPONSIVE ── */
@media(max-width:991px){
  .article-sidebar{position:static;margin-top:3rem;}
  .toc-card{display:none;}
  .inline-cta{flex-direction:column;}
}
@media(max-width:767px){
  .article-hero{padding:3rem 0 2.5rem;}
  .article-meta{gap:1rem;}
  .a-divider{display:none;}
  .article-wrapper{padding:2.5rem 0 3.5rem;}
  .pull-quote{padding:1.5rem 1.25rem 1.5rem 1.5rem;}
}
