/* jewelchanda.com v2 - "five lives, one sky" (network colour family: night sky; firm seal navy + oxblood thread) */
@font-face{font-family:Marcellus;src:url(/assets/fonts/marcellus-400.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(/assets/fonts/source-serif-4-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(/assets/fonts/source-serif-4-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(/assets/fonts/source-serif-4-400-italic.woff2) format("woff2");font-style:italic;font-display:swap}
@font-face{font-family:"Tiro Bangla";src:url(/assets/fonts/tiro-bangla-400.woff2) format("woff2");font-display:swap;unicode-range:U+0964-0965,U+0980-09FF,U+200C-200D,U+25CC}
@font-face{font-family:"Noto Serif Bengali";src:url(/assets/fonts/noto-serif-bengali-400.woff2) format("woff2");font-display:swap;unicode-range:U+0964-0965,U+0980-09FF,U+200C-200D,U+25CC}

:root{
  --midnight:#0B1A33; --midnight-2:#13284D; --gold:#B8892E; --gold-lt:#E2BC63; --starlight:#F3EBD8;
  --ivory:#FBF8F2; --paper:#F4EEE2; --ink:#1E2230; --seal:#0A2C53; --oxblood:#832F25; --muted:#5B6170; --hair:#E3DCCD;
  --crimson:#8E2B2B; --teal:#1F5E63;
  --serif:"Source Serif 4","Noto Serif Bengali",Georgia,Cambria,serif;
  --display:Marcellus,"Tiro Bangla",Georgia,serif;
  --bn:"Tiro Bangla","Noto Serif Bengali",serif;
  --measure:68ch;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 1.0625rem/1.7 var(--serif);text-rendering:optimizeLegibility}
img,svg{max-width:100%;height:auto}
a{color:var(--seal);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--oxblood)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
[lang="bn"]{font-family:var(--bn);line-height:1.85}
.wrap{width:min(100% - 32px, 1180px);margin-inline:auto}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:12px;z-index:10;background:var(--ivory);padding:.4em .8em}
h1,h2,h3{font-family:var(--display);font-weight:400;color:var(--seal);line-height:1.2;letter-spacing:.01em}
h2{font-size:clamp(1.6rem,2.8vw,2.2rem);margin:2.4em 0 .7em}
h2::after{content:"";display:block;width:44px;height:2px;background:var(--oxblood);margin-top:.45em}
h3{font-size:1.25rem;margin:0 0 .3em}

/* masthead floats on the sky */
.masthead{position:absolute;inset:0 0 auto;z-index:5}
.masthead-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:18px 0}
.wordmark{font-family:var(--display);font-size:1.3rem;letter-spacing:.06em;color:var(--starlight);text-decoration:none}
.wordmark:hover{color:var(--gold-lt)}
.masthead ul{display:flex;flex-wrap:wrap;gap:.2rem 1.25rem;list-style:none;margin:0;padding:0}
.masthead nav a{color:var(--starlight);opacity:.85;text-decoration:none;font-size:.98rem}
.masthead nav a:hover,.masthead nav a[aria-current]{opacity:1;color:var(--gold-lt)}
.masthead nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--gold)}
.menu-btn{display:none;background:none;border:1px solid rgba(226,188,99,.6);color:var(--starlight);font:inherit;font-size:.95rem;padding:.3em .8em;border-radius:999px;cursor:pointer}

/* ---------- COVER (home): warm ivory, his portrait in an arched window of night sky */
.home .masthead .wordmark{color:var(--seal)}
.home .masthead nav a{color:var(--seal);opacity:.85}
.home .masthead nav a:hover,.home .masthead nav a[aria-current]{color:var(--oxblood);opacity:1}
.home .menu-btn{color:var(--seal);border-color:var(--gold)}
.sky{position:absolute;inset:0;width:100%;height:100%}
.front{position:relative;background:radial-gradient(70% 90% at 85% 40%,#F1E6CF 0%,var(--ivory) 60%);overflow:hidden;border-bottom:1px solid var(--hair)}
.cover-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:3rem;align-items:center;padding:120px 0 64px;min-height:min(92vh,820px)}
.front h1{font-size:clamp(3.2rem,8.4vw,7.4rem);line-height:.95;margin:0;letter-spacing:.02em;color:var(--seal)}
.front h1::after{content:"";display:block;width:84px;height:3px;background:var(--oxblood);margin-top:.35em}
.cover-bn{font-size:clamp(1.5rem,3vw,2.2rem);color:var(--crimson);margin:.5em 0 .6em}
.cover-lede{font-family:var(--display);font-size:clamp(1.25rem,2.1vw,1.65rem);line-height:1.45;color:var(--ink);max-width:30ch;margin:0 0 1.6rem}
.cover-roles{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem .55rem}
.cover-roles a{display:inline-flex;align-items:center;gap:.55em;padding:.45em 1.05em .45em .85em;border:1px solid var(--hair);border-radius:999px;background:#fff;
  color:var(--seal);text-decoration:none;font-family:var(--display);font-size:1.05rem;letter-spacing:.03em}
.cover-roles a:hover{border-color:var(--gold);color:var(--oxblood)}
.dot{width:9px;height:9px;border-radius:50%;background:var(--c);flex:none}
.cover-figure{position:relative;margin:0;justify-self:center;width:min(100%,420px);aspect-ratio:100/130}
.arch-sky{position:absolute;inset:-4% -6% 6% 8%;border-radius:999px 999px 0 0;background:radial-gradient(80% 70% at 50% 25%,var(--midnight-2),var(--midnight));overflow:hidden;transform:translate(6%,-3%)}
.arch{position:absolute;inset:0;border-radius:999px 999px 0 0;overflow:hidden;border:3px solid var(--ivory);box-shadow:0 30px 60px -30px rgba(11,26,51,.6)}
.arch-img{width:100%;height:100%;object-fit:cover}
.arch-stars{position:absolute;inset:-3%;width:106%;height:106%;overflow:visible}

/* ---------- four lives: photo on top, words below */
.lives{padding-top:1rem}
.lives-row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem}
.life a{display:grid;gap:.2rem;text-decoration:none;color:inherit}
.life-frame{display:block;aspect-ratio:4/5;overflow:hidden;border-radius:999px 999px 6px 6px;background:var(--paper);margin-bottom:.8rem;border:1px solid var(--hair)}
.life-img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.life a:hover .life-img{transform:scale(1.04)}
.life-name{font-family:var(--display);font-size:1.4rem;color:var(--seal)}
.life a:hover .life-name{color:var(--oxblood)}
.life-bn{color:var(--crimson);line-height:1.4}
.life-line{font-size:.97rem;color:#3A3F4D}

/* ---------- night band: the short bio under the stars */
.night-band{position:relative;background:radial-gradient(120% 90% at 70% 20%,var(--midnight-2),var(--midnight) 60%);color:var(--starlight);margin-top:4.5rem;padding:4rem 0;border-top:3px solid var(--oxblood);overflow:hidden}
.night-grid{position:relative;z-index:1;max-width:820px}
.night-band h2{color:var(--starlight);margin-top:0}
.night-bio{font-size:1.18rem;line-height:1.7;opacity:.95}
.night-bio[lang="bn"]{color:var(--gold-lt);font-size:1.1rem}
.go{font-weight:700;text-decoration:none;border-bottom:1px solid var(--gold);color:var(--seal)}
.go:hover{color:var(--oxblood);border-color:var(--oxblood)}
.go.light{color:var(--gold-lt)}.go.light:hover{color:var(--starlight)}

/* ---------- bookshelf */
.shelf{display:flex;align-items:flex-end;gap:10px;padding:0 18px;min-height:240px;border-bottom:14px solid #5A3B22;box-shadow:0 10px 0 -4px #3E2816;margin:1rem 0 1.6rem;overflow-x:auto}
.spine{writing-mode:vertical-rl;display:flex;align-items:center;justify-content:center;width:62px;height:220px;border-radius:3px 3px 0 0;text-decoration:none;
  font-family:var(--bn);font-size:1.05rem;padding:14px 0;flex:none}
.spine.cosmic{background:linear-gradient(90deg,#0B1A33,#1D3A6B 50%,#0B1A33);color:var(--gold-lt);box-shadow:inset -4px 0 0 rgba(0,0,0,.3)}
.spine.cosmic:hover{transform:translateY(-8px)}
.spine{transition:transform .25s}
.spine.empty{border:1.5px dashed #B9AE97;color:var(--muted);height:190px;font-family:var(--display);font-size:.9rem}
.spine.empty.short{height:150px}

/* ---------- lists */
.sec{padding:8px 0 24px}
.entries{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair)}
.entries.two{display:grid;grid-template-columns:1fr 1fr;column-gap:3rem;border-top:0}
.entries.two .entry{border-top:1px solid var(--hair)}
.entry{border-bottom:1px solid var(--hair)}
.entries.two .entry{border-bottom:0}
.entry a{display:grid;gap:.15rem;padding:1rem 0 1.1rem;text-decoration:none;color:inherit}
.entry a:hover .entry-title{color:var(--oxblood)}
.entry-src{font-size:.86rem;color:var(--muted);display:flex;align-items:center;gap:.5em}
.entry-src .dot{box-shadow:none}
.entry-title{font-family:var(--display);font-size:1.22rem;color:var(--seal);line-height:1.35}
.entry-title[lang="bn"]{font-family:var(--bn);font-size:1.25rem}
.entry-hook{color:#3A3F4D;font-style:italic}
.entry-hook[lang="bn"]{font-style:normal}
.entry-date{font-size:.85rem;color:var(--muted)}

/* ---------- photo strip */
.strip{list-style:none;margin:0;padding:0 max(16px,calc((100vw - 1180px)/2));display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
.strip li{flex:none;width:min(70vw,320px);aspect-ratio:4/5;scroll-snap-align:start;border-radius:4px;overflow:hidden;background:var(--paper)}
.strip-img{width:100%;height:100%;object-fit:cover}
.strip-sec .go{display:inline-block;margin-top:1rem}

/* ---------- press band */
.press-band{background:var(--paper);border-top:1px solid var(--hair);margin-top:3.5rem;padding:2.6rem 0}
.press-grid{display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:center}
.press-grid h2{margin:0}.press-grid p{margin:0}
.press-band .go.light{color:var(--seal)}

/* ---------- inner page band */
.band{position:relative;background:radial-gradient(120% 90% at 70% 20%,var(--midnight-2) 0%,var(--midnight) 60%);color:var(--starlight);overflow:hidden;border-bottom:3px solid var(--oxblood)}
.band-inner{position:relative;z-index:1;padding:116px 0 44px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem}
.band h1{color:var(--starlight);font-size:clamp(2.2rem,5vw,3.6rem);margin:0}
.band-sub{color:var(--gold-lt);font-size:1.3rem;margin:.25em 0 0;max-width:60ch}
.band-kicker{margin:0 0 .4em}.band-kicker a{color:var(--gold-lt)}
.byline{margin:.6em 0 0;opacity:.85}
.band.with-photo .band-inner{padding-bottom:0}
.band-photo{width:clamp(160px,24vw,300px);aspect-ratio:4/5;align-self:end;margin-bottom:-3px;overflow:hidden;border-radius:6px 6px 0 0;border:2px solid var(--gold);border-bottom:0}
.band-photo img{width:100%;height:100%;object-fit:cover}
.band.with-photo .band-text{padding-bottom:44px}

.page{max-width:var(--measure);padding:24px 0 72px}
.page.wide{max-width:1180px}
.page .narrow{max-width:var(--measure)}
.first{margin-top:1.4em}
.lede{font-size:1.2rem;line-height:1.65}
.note{color:var(--muted);font-size:.95rem;border-left:2px solid var(--hair);padding-left:1em}

/* life (about) */
.page.about{max-width:900px}
.about-intro{display:grid;grid-template-columns:170px minmax(0,1fr);gap:2.6rem;align-items:start;margin-top:2.2rem}
.about-intro .lede{max-width:62ch}
.portrait-lg{width:170px;height:170px;border-radius:50%;object-fit:cover;border:2px solid var(--gold);padding:4px}
.bio-bn{color:#3A3F4D}
.timeline{list-style:none;padding:0;margin:1.5rem 0 2rem;border-left:1px solid var(--gold);margin-left:6px}
.timeline li{position:relative;padding:0 0 1.8rem 2rem}
.tl-star{position:absolute;left:-7px;top:.45em;width:13px;height:13px;border-radius:50%;background:var(--ivory);border:2px solid var(--gold)}
.timeline li.next .tl-star{border-style:dashed}
.timeline li.next h3,.timeline li.next p{color:var(--muted)}
.tl-year{display:block;font-size:.9rem;color:var(--oxblood)}
.timeline p{margin:0}

/* software */
.features{list-style:none;padding:0;margin:2rem 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:0;border-top:1px solid var(--hair)}
.features li{padding:1.4rem 1.4rem 1.4rem 0;border-bottom:1px solid var(--hair)}
.features h3{font-size:1.2rem}.features p{margin:0;color:#3A3F4D}

/* books */
.books{list-style:none;padding:0;margin:2rem 0;display:grid;gap:2.6rem}
.book-card{display:grid;grid-template-columns:180px minmax(0,1fr);gap:2.2rem;align-items:start}
.book-card h2{margin-top:0;font-family:var(--bn)}
.cover{aspect-ratio:2/3;border-radius:3px 8px 8px 3px;padding:18px 14px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 6px 0 0 rgba(0,0,0,.25),10px 12px 0 -4px rgba(11,26,51,.12)}
.cover.cosmic{background:radial-gradient(80% 60% at 50% 30%,#1D3A6B,var(--midnight));color:var(--starlight)}
.cover.plain{background:var(--seal);color:var(--starlight)}
.cover.empty{border:1.5px dashed #B9AE97;box-shadow:none;color:var(--muted);justify-content:center;align-items:center;font-family:var(--display)}
.cover-title{font-family:var(--bn);font-size:1.35rem;line-height:1.3;color:inherit}
.cover.cosmic .cover-title{color:var(--gold-lt)}
.cover-author{font-family:var(--bn);font-size:.9rem;opacity:.8;border-top:1px solid var(--gold);padding-top:.5em}
.book-en{margin-top:-.6em;color:var(--muted)}
.book-kind{color:var(--teal);font-size:.95rem}
.ways{display:flex;flex-wrap:wrap;gap:.6rem}
.way{display:inline-block;padding:.5em 1.1em;border-radius:999px;text-decoration:none;font-weight:700;font-size:.95rem}
.way.read{background:var(--crimson);color:#fff}.way.free{background:var(--teal);color:#fff}.way.buy{background:var(--gold);color:var(--midnight)}
.way:hover{filter:brightness(1.1);color:#fff}
.book-card.coming h2{font-family:var(--display);color:var(--muted)}

/* gallery + press */
.gallery{list-style:none;padding:0;margin:2rem 0;columns:3 260px;column-gap:12px}
.gallery li{break-inside:avoid;margin-bottom:12px;border-radius:4px;overflow:hidden}
.gal-img{width:100%;display:block}
.copy-box{position:relative;background:#fff;border:1px solid var(--hair);border-radius:6px;padding:1rem 1.1rem 2.6rem}
.copy-box p{margin:0}
.copy{position:absolute;right:10px;bottom:10px;font:inherit;font-size:.85rem;background:var(--seal);color:#fff;border:0;border-radius:999px;padding:.3em .9em;cursor:pointer}
.press-photos{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.press-photos li{display:grid;gap:.3rem}.pp-img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:4px}

/* journal */
.sections{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.6rem 0}
.sections a{padding:.35em .9em;border:1px solid var(--hair);border-radius:999px;text-decoration:none;color:var(--seal);background:#fff;font-size:.95rem}
.sections a[aria-current]{background:var(--seal);color:#fff;border-color:var(--seal)}
.sections a span{color:var(--crimson);margin-left:.2em}.sections a[aria-current] span{color:var(--gold-lt)}
.posts{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}
.post-card a{display:grid;gap:.3rem;text-decoration:none;color:inherit}
.post-card.lead{grid-column:1/-1}
.post-card.lead a{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:2rem;align-items:center}
.post-card.lead .post-img{grid-row:span 5}
.post-img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:4px}
.post-sec{font-size:.85rem;color:var(--oxblood)}
.post-title{font-family:var(--display);font-size:1.4rem;color:var(--seal);line-height:1.3}
.post-card.lead .post-title{font-size:2rem}
.post-desc{color:#3A3F4D}
.empty-state{max-width:var(--measure)}
.article{max-width:760px}
.post-hero{margin:2rem 0}.post-hero img{width:100%;border-radius:4px}
.prose{font-size:1.15rem;line-height:1.8}
.prose h2{font-size:1.6rem}
.prose blockquote{margin:1.6em 0;padding-left:1.2em;border-left:3px solid var(--gold);font-style:italic;color:#3A3F4D}
.prose img{border-radius:4px}
.post-foot{margin-top:3rem;border-top:1px solid var(--hair);padding-top:1.6rem}
.author-box{display:grid;grid-template-columns:72px 1fr;gap:1rem;align-items:start}
.author-img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:1.5px solid var(--gold)}
.author-box p{margin:0;font-size:.98rem}
.post-nav{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2rem}

/* constellations (background pages) + misc kept from v1 */
.const-grid{list-style:none;padding:0;margin:1.2rem 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.4rem}
.const-grid a{display:grid;gap:.15rem;padding:1.2rem;background:var(--midnight);color:var(--starlight);text-decoration:none;border-radius:6px}
.const-name{font-family:var(--display);font-size:1.2rem}.const-bn{color:var(--gold-lt)}.const-count{font-size:.86rem;opacity:.75}
.forms{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.6rem;margin:1.4rem 0 0}
.forms li{border:1px solid var(--hair);border-radius:999px;padding:.25em .9em;font-size:.95rem;background:#fff}
.forms li span{color:var(--crimson);margin-right:.3em}
.book-inline h2{font-family:var(--bn)}
.facts{padding-left:1.1em;margin:1.4rem 0}.facts li{margin:.3em 0}
.plain-list{padding-left:1.1em}.plain-list li{margin:.45em 0}
.cred{list-style:none;padding:0;margin:2rem 0;border-top:1px solid var(--hair)}
.cred li{display:grid;grid-template-columns:1fr auto;column-gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--hair)}
.cred-title{font-family:var(--display);font-size:1.12rem;color:var(--seal)}.cred-title[lang="bn"]{font-family:var(--bn)}
.cred-detail{grid-column:1;color:var(--muted);font-size:.95rem}.cred-year{grid-column:2;grid-row:1;color:var(--oxblood)}
.research-topic{margin-top:1.6em}.research-meta{color:var(--teal);margin-top:-.4em}
.thesis{margin-top:2.4rem;padding:1.4rem 1.6rem;border:1.5px dashed var(--teal);border-radius:8px;background:#fff}
.thesis h2{margin-top:0}

/* footer */
.foot{background:var(--midnight);color:var(--starlight);border-top:3px solid var(--oxblood);margin-top:3rem;font-size:.95rem}
.foot a{color:var(--starlight);opacity:.85;text-decoration:none}
.foot a:hover{opacity:1;color:var(--gold-lt)}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.4fr;gap:2rem;padding:2.6rem 0 1.4rem}
.foot ul{list-style:none;margin:0;padding:0}.foot li{margin:.35em 0}
.foot-name{font-family:var(--display);font-size:1.5rem;letter-spacing:.05em;margin:0}
.foot-bn{color:var(--gold-lt);margin:0}.foot-line{opacity:.75;margin:.3em 0 0}
.foot-h{font-family:var(--serif);font-weight:700;font-size:.95rem;color:var(--gold-lt);margin:0 0 .6em}
.foot-h::after{display:none}
.foot-base{border-top:1px solid rgba(243,235,216,.14);padding:1rem 0 1.6rem;opacity:.7;font-size:.86rem}
.foot-base p{margin:0}

/* small screens */
@media (max-width:1000px){
  .masthead ul{gap:.2rem .9rem}.masthead nav a{font-size:.92rem}
}
@media (max-width:860px){
  .menu-btn{display:inline-block}
  .masthead nav{display:none;position:absolute;left:16px;right:16px;top:64px;background:var(--midnight);border:1px solid rgba(226,188,99,.35);border-radius:8px;padding:.8rem 1rem}
  .masthead nav.open{display:block}
  .home .masthead nav a{color:var(--starlight)}
  .masthead nav ul{flex-direction:column;gap:.4rem}
  .cover-grid{grid-template-columns:1fr;padding:100px 0 48px;min-height:0;gap:2.4rem}
  .cover-figure{width:min(78vw,360px)}
  .lives-row{grid-template-columns:1fr 1fr}
  .entries.two{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .foot-grid>div:first-child{grid-column:1/-1}
  .post-card.lead a{grid-template-columns:1fr}
  .post-card.lead .post-img{grid-row:auto}
}
@media (max-width:560px){
  body{font-size:1rem}
  .lives-row{gap:1rem}
  .life-name{font-size:1.15rem}
  .band-inner{grid-template-columns:1fr;padding-top:96px}
  .band-photo{width:150px;justify-self:end;margin-top:-1rem}
  .band.with-photo .band-text{padding-bottom:0}
  .about-intro,.book-card{grid-template-columns:1fr;gap:1.4rem}
  .cover{width:150px}
  .foot-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important}
}
