@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+Bengali:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');:root{--navy:#071d31;--navy2:#123c55;--gold:#c7a35d;--paper:#fbfaf7;--ink:#15283b;--muted:#5f7181;--line:#dce3e8;--card:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans Bengali',sans-serif;line-height:1.75}h1,h2,h3,.brand{font-family:'Playfair Display','Noto Sans Bengali',serif;line-height:1.24}h1{font-size:clamp(2.5rem,5vw,4.8rem);margin:.35em 0}h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:0 0 1.1rem}h3{font-size:1.23rem;margin:.25rem 0 .7rem}p{margin:.6rem 0 1.2rem}a{color:#14618a}a:hover{color:#a27a35}.wrap{width:min(1160px,calc(100% - 42px));margin:auto}header{background:var(--navy);color:white;position:sticky;top:0;z-index:30;box-shadow:0 5px 22px #0515211c}.top{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}.brand{font-size:1.5rem;color:white;text-decoration:none;white-space:nowrap}.brand span{color:#e5c783}nav{display:flex;align-items:center;gap:20px}nav a{color:#eef3f5;text-decoration:none;font-size:.89rem}nav a[aria-current=page]{color:#e8c57b;border-bottom:2px solid var(--gold)}.menu-button{display:none;background:none;border:1px solid #8195a3;color:white;border-radius:8px;padding:7px 12px;font-size:1.2rem}.lang{border:1px solid #879ca9;border-radius:20px;padding:3px 10px}.hero{background:radial-gradient(circle at 72% 45%,#22516b 0%,#0c2b43 45%,#071d31 90%);color:white;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.25fr .8fr;gap:70px;align-items:center;min-height:560px;padding:70px 0}.hero h1{max-width:690px}.hero p{color:#d8e3e9;max-width:610px;font-size:1.09rem}.eyebrow{text-transform:uppercase;letter-spacing:.19em;color:var(--gold);font-size:.74rem;font-weight:700}.portrait{display:block;width:100%;max-height:475px;object-fit:contain;filter:drop-shadow(0 15px 24px #0005);border-radius:12px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-block;text-decoration:none;background:linear-gradient(120deg,#e8cf95,#c39c56);color:#122538;padding:11px 22px;border-radius:7px;font-weight:700}.btn.outline{background:transparent;color:white;border:1px solid #c7a35d}.section{padding:78px 0}.section.alt{background:#eef3f5}.lead{font-size:1.13rem;max-width:850px;color:#3d5264}.kicker{color:#98743d;text-transform:uppercase;font-size:.75rem;font-weight:700;letter-spacing:.15em;margin-bottom:10px}.cards,.research-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card,.pub,.timeline-item,.contact-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:25px;box-shadow:0 8px 28px #183b4a0a}.card{border-top:3px solid var(--gold)}.muted{color:var(--muted)}.tag{font-size:.73rem;color:#916c35;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.research-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pub{padding:0;overflow:hidden}.pub img{width:100%;height:205px;object-fit:cover;display:block}.pub-content{padding:24px}.pub h3{font-size:1.24rem}.pub p{font-size:.91rem}.timeline{display:grid;grid-template-columns:1fr 1fr;gap:18px}.timeline-item{border-left:4px solid var(--gold)}.timeline-item strong{color:#9b783c}.pill{display:inline-block;border:1px solid #d8bd83;border-radius:20px;padding:4px 12px;color:#8e6930;font-size:.8rem}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.contact-card a{overflow-wrap:anywhere}.orcid{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:700}.orcid-dot{background:#a6ce39;color:white;border-radius:50%;height:36px;width:36px;display:inline-grid;place-items:center}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}.notice{padding:20px 25px;border-left:3px solid var(--gold);background:#f2f0e9;border-radius:8px}footer{background:var(--navy);color:#c5d3dc;padding:32px 0;font-size:.83rem}footer a{color:#e7ca8e}.footer-links{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:12px}.footer-links a{text-decoration:none}.subhero{background:linear-gradient(120deg,#0b2941,#17465d);color:white;padding:75px 0}.subhero h1{font-size:clamp(2.2rem,4vw,3.8rem)}.subhero p{color:#d6e1e8}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;z-index:100;padding:8px}@media(max-width:800px){.top{min-height:66px}.menu-button{display:block}nav{display:none;position:absolute;top:66px;left:0;right:0;background:var(--navy);padding:18px 22px 24px;flex-direction:column;align-items:stretch;gap:13px}nav.open{display:flex}.hero-inner{grid-template-columns:1fr;gap:25px;padding:52px 0}.hero-inner>div:last-child{order:-1}.portrait{max-height:340px}.cards,.research-grid,.timeline,.contact-grid{grid-template-columns:1fr}.section{padding:52px 0}.pub img{height:190px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Compact, accessible icon-only contact links (v4). */
.social-icons{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:18px;padding:12px 0 18px}
.social-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;border:1px solid #dce3e8;background:#fff;color:#123c55;text-decoration:none;box-shadow:0 5px 18px #183b4a12;transition:transform .18s ease,background .18s ease,color .18s ease}
.social-icon:hover,.social-icon:focus-visible{transform:translateY(-3px);background:#123c55;color:#fff;outline-offset:4px}
.social-icon svg{width:27px;height:27px}
@media(max-width:480px){.social-icons{gap:14px}.social-icon{width:58px;height:58px}}
@media(prefers-reduced-motion:reduce){.social-icon{transition:none}.social-icon:hover,.social-icon:focus-visible{transform:none}}

/* v5: mobile-first layout refinements for Safari/iPhone and desktop */
html{font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:90px}
body{min-width:320px;overflow-x:hidden;overflow-wrap:break-word}
img,svg{max-width:100%} .wrap{width:min(1120px,calc(100% - 48px))}
.top{position:relative}.brand{letter-spacing:.055em;font-family:'DM Sans','Noto Sans Bengali',sans-serif;font-weight:700}
nav{flex-wrap:wrap;justify-content:flex-end;row-gap:10px}nav a{white-space:nowrap}
.hero-inner{grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr)}
.hero-inner>*{min-width:0}.hero h1{overflow-wrap:normal;word-break:normal}
.card,.pub,.timeline-item,.contact-card{min-width:0}
.footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-bottom:18px}
.footer-links a{display:inline-block;line-height:1.5;white-space:nowrap}
footer .wrap{max-width:1120px}footer{line-height:1.75}
.contact-grid>*{min-width:0}.social-icons{gap:16px}
:focus-visible{outline:3px solid #c7a35d;outline-offset:3px}
@media(min-width:801px){.menu-button{display:none!important}nav{display:flex!important;position:static!important}}
@media(max-width:800px){
 .wrap{width:calc(100% - 36px)}header{position:sticky;top:0}
 .top{min-height:68px;gap:12px}.brand{font-size:1.27rem}
 .menu-button{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin-left:auto;cursor:pointer}
 nav{display:none!important;position:absolute;top:100%;left:-18px;right:-18px;background:#071d31;padding:12px 18px 20px;box-shadow:0 12px 18px #0003;z-index:50;flex-direction:column;align-items:stretch;gap:0}
 nav.open{display:flex!important}nav a{display:block;padding:11px 10px;border-bottom:1px solid #ffffff22;font-size:1rem}
 nav .lang{align-self:flex-start;margin-top:10px;border:1px solid #879ca9}
 .hero-inner{grid-template-columns:minmax(0,1fr);gap:28px;padding:44px 0 54px;min-height:0}
 .hero-inner>div:last-child{order:0}.hero h1{font-size:clamp(2.1rem,8vw,3.3rem)}
 .portrait{max-width:380px;max-height:410px;margin:0 auto;object-fit:contain}
 .section{padding:48px 0}.subhero{padding:48px 0}.subhero h1{font-size:clamp(2rem,8vw,3rem)}
 .cards,.research-grid,.timeline,.contact-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 .card,.timeline-item,.contact-card{padding:20px}.pub-content{padding:20px}
 h2{font-size:clamp(1.65rem,6vw,2.2rem)}.lead{font-size:1.02rem}
 .footer-links{gap:12px 18px}footer{padding:28px 0}
}
@media(max-width:380px){.wrap{width:calc(100% - 30px)}nav{left:-15px;right:-15px}.hero h1{font-size:2.08rem}.social-icon{width:54px;height:54px}}

/* v6: article reading typography and responsive layout */
.article-shell{padding:clamp(32px,6vw,88px) 0 100px;background:#fff}.reader-container{width:min(100% - 40px,760px);margin-inline:auto}.reader-article{color:#243447}.article-heading{border-bottom:1px solid #dfe5e8;padding-bottom:30px;margin-bottom:34px}.article-heading h1{font-size:clamp(2.05rem,5vw,3.45rem);line-height:1.18;letter-spacing:-.025em;margin:16px 0 22px;overflow-wrap:anywhere}.article-deck{font-size:clamp(1.12rem,2.2vw,1.35rem);line-height:1.65;color:#506273;margin:0 0 24px}.article-byline{font-size:.93rem;color:#657787;display:flex;gap:10px;flex-wrap:wrap}.article-byline time{display:none}.article-body{font-family:Georgia,'Noto Sans Bengali',serif;font-size:clamp(1.05rem,1.7vw,1.19rem);line-height:1.9;letter-spacing:.003em}.article-body p{margin:0 0 1.55em;text-align:left;hyphens:auto;overflow-wrap:break-word}.article-body p:last-child{margin-bottom:0}.author-note{border-top:1px solid #dfe5e8;margin-top:42px;padding-top:20px;color:#617283;font-size:.94rem;line-height:1.75}.article-list-card{max-width:800px;background:#fff;border:1px solid #dfe5e8;border-radius:18px;padding:clamp(22px,4vw,42px);box-shadow:0 10px 36px #081b2b0a}.article-list-card h2{font-size:clamp(1.5rem,3vw,2.15rem);margin:12px 0}.article-list-card h2 a{text-decoration:none;color:var(--navy)}.article-list-card p{line-height:1.75}.article-meta{font-size:.82rem;letter-spacing:.09em;text-transform:uppercase;color:#8e703f;font-weight:700}.article-read{display:inline-block;margin-top:10px;font-weight:700;text-decoration:none}@media(max-width:600px){.reader-container{width:calc(100% - 36px)}.article-shell{padding:28px 0 64px}.article-body{font-size:1.08rem;line-height:1.85}.article-body p{margin-bottom:1.45em}.article-heading h1{font-size:2.05rem}.article-list-card{border-radius:12px}}@media print{header nav,.menu-button,footer{display:none!important}.article-shell{padding:0}.reader-container{width:100%}.article-body{font-size:12pt;line-height:1.6}}

/* v7 article preview: consistent scholarly reading rhythm */
.article-list-card > p:not(.article-excerpt-note){line-height:1.85;margin:0 0 1.25rem;text-align:left;overflow-wrap:break-word;}
.article-list-card .article-excerpt-note{font-size:.82rem;letter-spacing:.02em;opacity:.7;margin:1.4rem 0 .7rem;}
.article-list-card .article-read{display:inline-flex;align-items:center;min-height:44px;margin-top:.25rem;}
@media(max-width:640px){.article-list-card{overflow-wrap:anywhere}.article-list-card > p:not(.article-excerpt-note){line-height:1.8;margin-bottom:1.1rem}}

/* v8: consistently justified article text on phones, tablets, desktop and print. */
.article-list-card > p:not(.article-excerpt-note),
.article-body p {
 text-align:justify !important; text-align-last:left;
 -webkit-hyphens:auto; hyphens:auto;
 overflow-wrap:break-word; word-break:normal;
}
.article-list-card > p:not(.article-excerpt-note){margin-block:0 1.3em;line-height:1.85}
.article-body p{margin-block:0 1.55em;line-height:1.9}
@media(max-width:640px){
 .article-list-card > p:not(.article-excerpt-note){line-height:1.8;margin-bottom:1.2em}
 .article-body p{line-height:1.85;margin-bottom:1.45em}
}
@media print{.article-list-card > p:not(.article-excerpt-note),.article-body p{text-align:justify!important}}

/* v9: real Wikimedia Commons photograph with readable credit */
.smr-photo{margin:1.35rem 0 1.8rem;max-width:100%;}
.smr-photo img{display:block;width:100%;height:auto;aspect-ratio:1752/878;object-fit:cover;border-radius:12px;background:#e9edf0;}
.smr-photo figcaption{font-size:.82rem;line-height:1.55;color:#5c6875;margin:.65rem .2rem 0;text-align:left!important;}
.smr-photo figcaption a{color:inherit;text-decoration:underline;text-underline-offset:2px;}
@media(max-width:640px){.smr-photo{margin:1.15rem 0 1.5rem}.smr-photo img{border-radius:8px}.smr-photo figcaption{font-size:.76rem}}
