/* Article and author surfaces; shared listing geometry remains in blog.css. */
.fp-blog-icon { display:inline-block; width:16px; height:16px; flex:none; vertical-align:middle; }
.fp-blog-article-content { padding-bottom:70px; border-bottom:1px solid var(--blog-border); }
.fp-blog-article-header > h1 { margin-bottom:5px; }
.fp-blog-article-meta { display:flex; flex-wrap:wrap; align-items:center; gap:10px 32px; padding:5px 0 18px; color:var(--blog-heading); }
.fp-blog-article-meta > * { display:inline-flex; align-items:center; gap:10px; margin:0; position:relative; }
.fp-blog-article-meta > *:not(:last-child)::after { content:""; height:19px; width:1px; background:var(--blog-border); position:absolute; right:-17px; }
.fp-blog-article-meta .fp-blog-icon { color:var(--blog-accent); }
.fp-blog-cover { margin:50px 0 65px; }
.fp-blog-cover img { width:100%; border-radius:var(--blog-card-radius); }
.fp-blog-toc-button { display:inline-block; font:700 15px/23px var(--font-sans,Arial,Helvetica,sans-serif); background:var(--blog-control); color:#fff; border:0; padding:5px 10px; border-radius:var(--blog-control-radius); margin:10px 0; cursor:pointer; }
.fp-blog-toc { border-radius:var(--blog-card-radius); background:#fbfdff; padding:10px; border:1px solid var(--blog-border); margin-bottom:10px; }
.fp-blog-toc ul { columns:2; column-gap:60px; list-style:none; padding:0; margin:0; }
.fp-blog-toc li { display:flex; align-items:flex-start; break-inside:avoid-column; margin:10px 0; padding-bottom:5px; color:var(--blog-heading); }
.fp-blog-toc li img { width:15px; height:15px; flex:none; margin:4px 8px 0 0; }
.fp-blog-toc li a { min-width:0; overflow-wrap:anywhere; }
.fp-blog-toc li a:hover { text-decoration:underline; color:var(--blog-heading); }
.fp-blog-toc .fp-blog-toc-level-4 { margin-left:20px; }
.fp-blog-toc #blog-toc-more { margin:10px 0 0; border-radius:var(--blog-control-radius); }
.fp-blog-rich { overflow-wrap:anywhere; }
.fp-blog-rich :is(h2,h3,h4)[id] { scroll-margin-top:100px; }
.fp-blog-rich h2 { font-size:36px; line-height:1.39; }
.fp-blog-rich h3 { font-size:28px; line-height:1.43; }
.fp-blog-rich h4 { font-size:20px; line-height:1.4; }
.fp-blog-rich p { margin:0 0 26px; }
.fp-blog-rich a { color:var(--blog-link); text-decoration:underline; }
.fp-blog-rich strong { font-weight:700; }
.fp-blog-rich ul,.fp-blog-rich ol { padding-left:20px; margin:0 0 30px; }
.fp-blog-rich ul { list-style:disc; }
.fp-blog-rich ol { list-style:decimal; }
.fp-blog-rich li { color:var(--blog-heading); margin:12px 0; }
.fp-blog-rich img { max-width:100%!important; height:auto!important; }
.fp-blog-rich :is(iframe,video,embed,object) { max-width:100%; }
.fp-blog-rich iframe { border:0; }
.fp-blog-rich table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; margin:20px 0; }
.fp-blog-rich :is(td,th) { border:1px solid var(--blog-border); padding:10px; min-width:100px; }
.fp-blog-rich th { color:var(--blog-heading); background:var(--pdf-soft,#f3f6f9); text-align:left; }
.fp-blog-rich pre { overflow-x:auto; max-width:100%; padding:15px; background:var(--pdf-soft,#f3f6f9); }
.fp-blog-rich blockquote { position:relative; padding:35px 40px 35px 120px; margin:65px 0 70px; border-radius:var(--blog-card-radius); box-shadow:inset 0 0 0 1px var(--blog-border),var(--blog-card-shadow); background:#fbfeff; }
.fp-blog-rich blockquote::before { content:"“"; position:absolute; top:20px; left:40px; font-size:70px; color:var(--blog-accent); }
.fp-blog-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; margin:65px 0; }
.fp-blog-gallery figure { margin:0; min-width:0; }
.fp-blog-gallery img { width:100%; border-radius:var(--blog-card-radius); }
.fp-blog-gallery figcaption { margin-top:12px; }
.fp-blog-gallery figcaption p:last-child { margin-bottom:0; }
.fp-blog-article-discovery { margin:0; }
.fp-blog-article-discovery .fp-blog-archive { padding:35px 40px; }
.fp-blog-article-discovery .fp-blog-archive h2 { padding-top:30px; margin-bottom:35px; }
.fp-blog-article-discovery .fp-blog-archive form { padding-bottom:100px; border-bottom-width:2px; }
.fp-blog-article-discovery .fp-blog-archive select { height:50px; padding:7.5px 10px; font-size:11.25px; line-height:1.5; appearance:none; background-image:url("../images/arrow-icon.5bb7ec9b6325.png"); background-repeat:no-repeat; background-position:88% 50%; }
.fp-blog-latest { padding:35px 40px; }
.fp-blog-latest > h2 { margin-bottom:35px; }
.fp-blog-latest-post { display:flex; flex-direction:column; gap:10px; border-bottom:1px solid var(--blog-border); padding-bottom:20px; margin-bottom:20px; }
.fp-blog-latest-post:last-child { border-bottom:0; padding-bottom:0; margin-bottom:0; }
.fp-blog-latest-image { display:block; margin-right:20px; }
.fp-blog-latest-image img { width:auto; max-width:100%; max-height:95px; object-fit:cover; border-radius:var(--blog-card-radius); }
.fp-blog-latest-post h3 { font-size:16px; line-height:1.62; font-weight:600; margin:0; }
.fp-blog-latest-post h3 a { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.fp-blog-latest-post .fp-blog-date { margin:-5px 0 0; }
.fp-blog-share-area { display:flex; flex-wrap:wrap; align-items:center; margin-top:65px; gap:20px 0; }
.fp-blog-category-tags { width:58.333333%; display:flex; align-items:center; gap:12px; }
.fp-blog-share-area h3 { font-size:16px; line-height:1.62; font-weight:600; margin:0; flex:none; }
.fp-blog-category-tags ul { display:flex; flex-wrap:wrap; gap:5px; padding:0; margin:0; list-style:none; }
.fp-blog-category-tags a { display:inline-block; border:1px solid var(--blog-border); border-radius:var(--blog-control-radius); padding:5px 12px; }
.fp-blog-category-tags a:hover { background:var(--blog-control); color:#fff; border-color:var(--blog-control); }
.fp-blog-share { width:41.666667%; display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:12px 25px; }
.fp-blog-social-links { display:flex; align-items:center; gap:24px; }
.fp-blog-social-links :is(a,button) { display:inline-flex; align-items:center; justify-content:center; padding:0; border:0; background:transparent; color:#64748b; cursor:pointer; min-height:24px; }
.fp-blog-social-links :is(a,button):hover { color:var(--blog-link); }
.fp-blog-copy-link { font:inherit; border:0; padding:0; cursor:pointer; text-decoration:underline; background:transparent; }
.fp-blog .fp-blog-share-status { width:100%; margin:0; font-size:13px; }
.fp-blog .fp-blog-copy-fallback { width:100%; height:40px; padding:0 10px; border-radius:var(--blog-control-radius); }
.fp-blog-section-heading { text-align:center; margin-bottom:44px; }
.fp-blog-section-heading h2 { margin-bottom:4px; }
.fp-blog-article-grid-section { padding:40px 0; background:var(--pdf-soft,#f3f6f9); }
.fp-blog-three-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.fp-blog-three-grid .fp-blog-card h3 { font-size:18px; line-height:1.45; }
.fp-blog-authors,.fp-blog-profile { padding:40px 0; }
.fp-blog-directory-description { width:50%; margin:15px auto 24px; }
.fp-blog-author-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.fp-blog-author-card { padding:0 30px 36px; position:relative; z-index:0; text-align:center; min-width:0; }
.fp-blog-author-card::before { content:""; position:absolute; bottom:0; left:0; width:100%; height:75%; border-radius:var(--blog-card-radius); box-shadow:inset 0 0 0 1px #f7cade,var(--blog-card-shadow); background:#fffafd; z-index:-1; }
.fp-blog-author-photo { display:block; width:100%; aspect-ratio:1; overflow:hidden; margin-bottom:25px; border-radius:var(--blog-card-radius); }
.fp-blog .fp-blog-author-photo > img { width:100%; height:100%; object-fit:cover; object-position:50% 30%; border-radius:inherit; }
.fp-blog-author-fallback { display:grid; place-items:center; background:#f1f5f9; color:#121c35; font-size:clamp(3rem,8vw,5rem); font-weight:600; line-height:1; }
.fp-blog-author-card h3 { font-size:18px; line-height:1.45; margin-bottom:4px; }
.fp-blog-author-card .fp-blog-author-designation { margin-bottom:15px; }
.fp-blog-author-card .fp-blog-author-biography { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; margin-bottom:0; }
.fp-blog-author-card-no-photo { padding-top:0; }
.fp-blog-author-card-no-photo::before { height:100%; }
.fp-blog-profile-photo { width:33.333333%; padding:0 15px; }
.fp-blog-profile-copy { width:66.666667%; padding:0 15px; min-width:0; }
.fp-blog-profile-copy-full { width:100%; }
.fp-blog-profile-portrait { width:100%; border-radius:var(--blog-card-radius); margin-bottom:30px; }
.fp-blog-profile-social { display:flex; flex-wrap:wrap; justify-content:center; gap:20px; padding:0 0 10px; }
.fp-blog-profile-social a { display:flex; width:46px; height:46px; align-items:center; justify-content:center; border:1px solid var(--blog-border); border-radius:var(--blog-card-radius); }
.fp-blog-profile-social a:hover { color:#fff; background:var(--blog-control); border-color:var(--blog-control); }
.fp-blog-profile-main { margin-bottom:30px; }
.fp-blog-profile-main .fp-blog-profile-role { color:var(--blog-link); font-weight:500; margin-bottom:6px; }
.fp-blog-profile-main h2 { font-size:28px; line-height:1.43; margin:0; }
.fp-blog-profile-main .fp-blog-profile-designation { margin:0; }
.fp-blog-profile-stats { display:flex; flex-wrap:wrap; align-items:center; padding-top:10px; gap:12px 40px; margin-top:10px; color:var(--blog-heading); }
.fp-blog-profile-stats > span { display:flex; align-items:center; gap:7px; position:relative; }
.fp-blog-profile-stats > span:not(:last-child)::after { content:""; width:1px; height:19px; position:absolute; right:-22px; background:var(--blog-border); }
.fp-blog-profile-stats .fp-blog-icon { color:#64748b; }
.fp-blog-rating { display:inline-flex; }
.fp-blog-rating .fp-blog-icon { color:#f59e0b; }
.fp-blog-profile-copy h3 { font-size:20px; line-height:1.4; }
.fp-blog-profile-biography { margin-bottom:30px; }
.fp-blog-profile-contact { margin-top:40px; }
.fp-blog-profile-contact dl { margin:0; padding:0; }
.fp-blog-profile-contact dl > div { display:flex; gap:0; margin:10px 0; }
.fp-blog-profile-contact dt { min-width:100px; font-family:var(--font-sans,Arial,Helvetica,sans-serif); font-weight:600; color:var(--blog-heading); }
.fp-blog-profile-contact dd { margin:0; overflow-wrap:anywhere; min-width:0; }
@media (max-width:991px) { .fp-blog-gallery { grid-template-columns:minmax(0,1fr); } .fp-blog-three-grid,.fp-blog-author-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .fp-blog-profile-photo,.fp-blog-profile-copy { width:100%; text-align:center; } .fp-blog-profile-photo { margin-bottom:50px; } .fp-blog-profile-portrait { max-width:370px; margin-inline:auto; } .fp-blog-profile-stats { justify-content:center; } .fp-blog-profile-contact dl > div { justify-content:center; } }
@media (max-width:767px) { .fp-blog-rich h2 { font-size:26px; } .fp-blog-rich h3 { font-size:22px; } .fp-blog-cover { margin:20px 0 30px; } .fp-blog-gallery { grid-template-columns:minmax(0,1fr); margin:40px 0; } .fp-blog-rich blockquote { margin:40px 0 30px; padding:25px 20px 25px 65px; } .fp-blog-rich blockquote::before { left:15px; font-size:50px; } .fp-blog-three-grid,.fp-blog-author-grid { grid-template-columns:minmax(0,1fr); } .fp-blog-category-tags,.fp-blog-share { width:100%; } .fp-blog-share { justify-content:flex-start; margin-top:10px; } .fp-blog-latest-image { margin-right:10px; } .fp-blog-profile-photo { margin-bottom:40px; } .fp-blog-profile-main h2 { font-size:22px; } }
@media (max-width:700px) { .fp-blog-article-grid-section,.fp-blog-authors,.fp-blog-profile { padding:20px 0; } }
@media (max-width:575px) { .fp-blog-profile-photo,.fp-blog-profile-copy { padding:0; } .fp-blog-profile-contact dl > div { flex-wrap:wrap; gap:4px 10px; } .fp-blog-profile-contact dt { min-width:auto; } .fp-blog-profile-stats { gap:12px 24px; } .fp-blog-profile-stats > span:not(:last-child)::after { right:-13px; } }

@media (prefers-reduced-motion:reduce) { html:has(.fp-blog) { scroll-behavior:auto; } }

/* A missing photo uses the same desktop frame; single-column cards stay compact. */
@media (max-width:767px) {
    .fp-blog-author-card-no-photo { padding-top:24px; }
    .fp-blog-author-fallback { width:6rem; margin-inline:auto; font-size:3rem; }
}
