/* ==========================================================================
   style.css — হালকা (light) থিম, v4
   রঙ বদলাতে চাইলে শুধু নিচের :root এর রঙগুলো বদলান।
   ========================================================================== */
:root{
  --bg:#F7F8F5; --bg2:#EEF3EF; --card:#fff; --ink:#1F2933; --mute:#5C6B73; --line:#E1E7E3;
  --teal:#145C59; --teal2:#1E7A75; --teal-50:#E5F1EF; --teal-100:#CFE6E2;
  --gold:#B58B55; --gold-50:#F8F0E4; --sky-50:#E8F1F6; --sand-50:#F6F1E7; --rose-50:#F9EBE6;
  --r:20px; --sh:0 1px 2px rgba(31,41,51,.04),0 10px 30px -12px rgba(20,92,89,.16);
  --sh2:0 2px 4px rgba(31,41,51,.05),0 26px 50px -18px rgba(20,92,89,.32);
  --serif:'Fraunces',Georgia,'Noto Serif Bengali',serif; --sans:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px;-webkit-text-size-adjust:100%}
#nav{position:sticky;top:0;z-index:60}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.65;font-size:16.5px;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none}
ul{list-style:none}
::selection{background:var(--teal-100)}
.wrap{max-width:1240px;margin:0 auto;padding:0 28px;position:relative;z-index:1}
section{padding:88px 0;position:relative;overflow:hidden}
.ic{width:1.15em;height:1.15em;flex:none;vertical-align:-.2em}
.tb{display:inline-grid;place-items:center;font:800 .62em/1 var(--sans);letter-spacing:.02em}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:8px}

/* ---------- ছোট গ্রাফিক্স: কনটুর, ডট, ব্লব, ঢেউ ---------- */
.cont{position:absolute;pointer-events:none;color:var(--teal);opacity:.11;z-index:0;inset:0}
.cont.gold{color:var(--gold);opacity:.16}
.cont svg{width:100%;height:100%}
.dots{position:absolute;background-image:radial-gradient(var(--gold) 1.7px,transparent 1.9px);background-size:18px 18px;opacity:.38;pointer-events:none}
.blob{position:absolute;border-radius:50%;pointer-events:none;z-index:0}
.blob.b1{width:640px;height:640px;background:radial-gradient(closest-side,rgba(20,92,89,.20),rgba(20,92,89,.09) 55%,rgba(20,92,89,0));left:-220px;top:-80px}
.blob.b2{width:560px;height:560px;background:radial-gradient(closest-side,rgba(181,139,85,.26),rgba(181,139,85,.11) 55%,rgba(181,139,85,0));right:-180px;bottom:-160px}
.wave{position:absolute;left:0;bottom:-1px;width:100%;height:54px;fill:var(--bg);display:block;z-index:2}

/* ---------- আইকন ব্যাজ ---------- */
.ib{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--teal-50);color:var(--teal);flex:none;font-size:26px;box-shadow:inset 0 0 0 1px rgba(20,92,89,.08)}
.ib .ic{width:1em;height:1em}
.ib.gold{background:var(--gold-50);color:#94693A}
.ib.sky{background:var(--sky-50);color:#2C6A8A}
.ib.rose{background:var(--rose-50);color:#B05A3B}
.ib.sand{background:var(--sand-50);color:#8A7340}
.ib.lg{width:66px;height:66px;border-radius:21px;font-size:33px}
.ib.xl{width:84px;height:84px;border-radius:26px;font-size:42px}

/* ---------- বাটন, চিপ, ট্যাগ ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:14px;font-weight:700;font-size:.96rem;border:1.5px solid var(--teal-100);background:#fff;color:var(--teal);transition:.22s;cursor:pointer}
.btn:hover{border-color:var(--teal);transform:translateY(-2px);box-shadow:0 12px 24px -14px rgba(20,92,89,.5)}
.btn.pri{background:linear-gradient(135deg,var(--teal),var(--teal2));color:#fff;border-color:transparent;box-shadow:0 12px 26px -12px rgba(20,92,89,.65)}
.btn.sm{padding:9px 16px;font-size:.88rem;border-radius:12px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:99px;background:var(--teal-50);color:var(--teal);font-weight:700;font-size:.8rem;line-height:1.4;border:1px solid rgba(20,92,89,.1)}
.chip .ic{font-size:.95em}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tag{display:inline-flex;align-items:center;gap:5px;padding:3px 11px;border-radius:99px;background:#fff;border:1px solid var(--line);font-size:.78rem;font-weight:600;color:var(--mute)}
.chip.st-published{background:#E3F2EA;color:#1D6A45}
.chip.st-review{background:var(--gold-50);color:#8A6232}
.chip.st-prep{background:var(--sky-50);color:#2C6A8A}
.ribbon{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:99px;background:var(--gold-50);color:#8A6232;font-weight:700;font-size:.78rem;border:1px solid rgba(181,139,85,.3)}
.ribbon.cur{background:var(--teal);color:#fff;border-color:transparent}
.ribbon .ic{font-size:.95em}

/* ---------- নেভিগেশন ---------- */
.nav{position:relative;z-index:60;background:#F7F8F5;border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:74px;gap:18px}
.logo{position:relative;display:block;width:52px;height:52px;flex:none}
.logo .av{display:block;width:100%;height:100%;border-radius:50%;overflow:hidden;border:3px solid #fff;box-shadow:0 0 0 2px var(--teal-100),0 8px 18px -8px rgba(20,92,89,.5);transition:.3s}
.logo:hover .av{box-shadow:0 0 0 2px var(--teal),0 10px 22px -8px rgba(20,92,89,.6)}
.logo .av img{width:100%;height:100%;object-fit:cover}
.logo .lm{position:absolute;right:-6px;bottom:-4px;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--teal2));color:#fff;display:grid;place-items:center;font-size:13px;border:2px solid var(--bg)}
.nl{display:flex;align-items:center;gap:2px}
.nl>a,.ddb{display:flex;align-items:center;gap:7px;padding:9px 13px;border-radius:12px;font-weight:600;font-size:.92rem;color:var(--mute);transition:.2s;white-space:nowrap}
.nl>a .ic,.ddb .ic{font-size:1.02rem;opacity:.85}
.nl>a:hover,.ddb:hover,.dd.open .ddb{color:var(--teal);background:var(--teal-50)}
.nl>a.on,.dd.on .ddb{color:var(--teal);background:var(--teal-50)}
.nl>a.cv{background:var(--teal);color:#fff;margin-left:6px}
.nl>a.cv:hover{background:var(--teal2)}
.ddb .ic.cv{font-size:.85rem;transition:transform .2s}
.dd.open .ddb .ic.cv{transform:rotate(180deg)}
.dd{position:relative}
.dd::after{content:"";position:absolute;left:0;right:0;top:100%;height:10px}
.ddm{position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-50%) translateY(6px);min-width:290px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--sh2);padding:8px;opacity:0;visibility:hidden;transition:.2s;z-index:70}
.dd.open .ddm{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
@media(hover:hover){.dd:hover .ddm{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}}
.ddm a{display:flex;align-items:center;gap:13px;padding:10px 12px;border-radius:14px;transition:.18s}
.ddm a:hover,.ddm a.on{background:var(--teal-50)}
.ddm a .ib{width:42px;height:42px;font-size:21px;border-radius:13px}
.ddm a span:not(.ib){display:flex;flex-direction:column;line-height:1.3}
.ddm a b{font-size:.95rem}
.ddm a small{color:var(--mute);font-size:.78rem}
.burger{display:none;width:46px;height:46px;border-radius:13px;border:1.5px solid var(--line);background:#fff;place-items:center;font-size:22px;color:var(--teal)}

/* ---------- ফুটার ---------- */
.foot{position:relative;background:linear-gradient(180deg,#E4EFEB 0%,#D8E8E3 100%);padding:100px 0 26px;overflow:hidden;margin-top:40px}
.foot::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(760px 420px at 6% 8%,rgba(150,205,196,.55),transparent 70%),radial-gradient(640px 400px at 100% 100%,rgba(238,212,170,.65),transparent 70%),radial-gradient(420px 300px at 62% 30%,rgba(190,215,235,.45),transparent 70%)}
.foot .wave{top:-1px;bottom:auto;transform:scaleY(-1);height:50px}
.foot .cont{width:520px;height:520px;right:-120px;top:auto;bottom:-200px;left:auto;inset:auto auto -220px auto;right:-140px}
.foot .g{display:grid;grid-template-columns:1.5fr .8fr 1fr 1.4fr;gap:44px;position:relative;z-index:1}
.foot .who{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.foot .av{display:block;width:58px;height:58px;border-radius:50%;overflow:hidden;border:3px solid #fff;box-shadow:0 0 0 2px var(--teal-100);flex:none}
.foot .av img{width:100%;height:100%;object-fit:cover}
.foot .who b{display:block;font-family:var(--serif);font-size:1.2rem;line-height:1.25}
.foot .who small{color:var(--mute);font-size:.84rem}
.foot .brand p{color:var(--mute);font-size:.94rem;max-width:380px}
.foot h5{font-size:.74rem;text-transform:uppercase;letter-spacing:.16em;color:#94693A;margin-bottom:16px}
.foot li{margin-bottom:9px}
.foot li a,.foot li .plain{display:flex;align-items:center;gap:9px;color:#33434C;font-size:.94rem;transition:.2s}
.foot li a:hover{color:var(--teal);transform:translateX(3px)}
.foot li .ic{color:var(--teal);opacity:.8}
.foot .plain{color:var(--mute)}
.soc{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.soc a{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#fff;border:1px solid var(--line);color:var(--teal);font-size:19px;transition:.22s}
.soc a:hover{background:var(--teal);color:#fff;transform:translateY(-3px)}
.foot .bar{margin-top:46px;padding-top:22px;border-top:1px solid rgba(20,92,89,.16);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;position:relative;z-index:1}
.foot .cr{font-size:.9rem;color:#33434C}
.foot .cr b{color:var(--teal);font-family:var(--serif);font-weight:600;letter-spacing:.02em}
.foot .top{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:99px;background:#fff;border:1px solid var(--line);font-weight:700;font-size:.85rem;color:var(--teal);transition:.2s}
.foot .top:hover{background:var(--teal);color:#fff}

/* ---------- সেকশন হেডিং ---------- */
.sh{text-align:center;max-width:760px;margin:0 auto 46px}
.sh .eb{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:14px}
.sh .eb span{font-size:.76rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#94693A}
.sh .eb i{display:block;height:2px;width:46px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--gold))}
.sh .eb i:last-child{background:linear-gradient(270deg,transparent,var(--gold))}
.sh h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.9rem,3.6vw,2.8rem);line-height:1.15;letter-spacing:-.01em}
.sh h2 em{font-style:italic;color:var(--teal);font-weight:500}
.sh .ul{color:var(--gold);width:130px;margin:12px auto 0}
.sh .ul svg{width:100%;height:14px;display:block}
.sh .lead{color:var(--mute);margin-top:16px;font-size:1.05rem}
.bh{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:var(--teal);margin:24px 0 12px;display:flex;align-items:center;gap:12px}
.bh::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--teal-100),transparent)}
.subh{display:flex;align-items:center;gap:18px;margin:62px 0 28px;font-family:var(--serif);font-weight:500;font-size:1.35rem;color:var(--teal);justify-content:center;text-align:center}
.subh i{flex:1;max-width:160px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.subh i:last-child{background:linear-gradient(270deg,transparent,var(--gold))}
.ctr{text-align:center}

/* ---------- পেজ হেডার ---------- */
.ph{padding:78px 0 108px;background:linear-gradient(160deg,#E3F0ED 0%,#F1F6F2 55%,#F7F2E8 100%)}
.ph::after{content:"";position:absolute;left:-150px;bottom:-190px;width:520px;height:520px;border-radius:50%;background:radial-gradient(closest-side,rgba(181,139,85,.2),rgba(181,139,85,0))}
.ph .cont{inset:auto;right:-8%;top:-70%;width:720px;height:720px;opacity:.13}
.ph .wrap{display:grid;grid-template-columns:1fr 330px;gap:40px;align-items:center}
.ph .pt{position:relative;z-index:2}
.crumb{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:.88rem;color:var(--teal);margin-bottom:12px}
.crumb:hover{text-decoration:underline}
.eb2{display:inline-flex;align-items:center;gap:10px;font-size:.78rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#94693A;margin-bottom:14px}
.eb2 i{display:block;width:34px;height:2px;border-radius:2px;background:var(--gold)}
.ph h1{font-family:var(--serif);font-weight:600;font-size:clamp(2.1rem,4.4vw,3.5rem);line-height:1.1;letter-spacing:-.015em;max-width:15em}
.ph h1 em{font-style:italic;color:var(--teal);font-weight:500}
.ph .s{color:#44555E;font-size:1.1rem;max-width:640px;margin-top:18px}
.pg{position:relative;width:310px;height:290px;justify-self:center;z-index:1}
.pg .ring{position:absolute;left:50%;top:50%;width:230px;height:230px;margin:-115px 0 0 -115px;border-radius:50%;border:2px dashed rgba(20,92,89,.3);animation:spin 40s linear infinite}
.pg .ring.r2{width:300px;height:300px;margin:-150px 0 0 -150px;border-color:rgba(181,139,85,.45);animation-direction:reverse;animation-duration:60s}
.pg .core{position:absolute;left:50%;top:50%;width:112px;height:112px;margin:-56px 0 0 -56px;border-radius:34px;background:linear-gradient(135deg,var(--teal),var(--teal2));color:#fff;display:grid;place-items:center;font-size:54px;box-shadow:0 26px 44px -18px rgba(20,92,89,.7);transform:rotate(-6deg)}
.pg .orb{position:absolute;width:58px;height:58px;border-radius:50%;background:#fff;color:var(--teal);display:grid;place-items:center;font-size:27px;box-shadow:var(--sh2);animation:bob 5s ease-in-out infinite}
.pg .orb.o1{right:6px;top:30px;color:#94693A}
.pg .orb.o2{left:6px;bottom:28px;animation-delay:-2s}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes bob{50%{transform:translateY(-10px)}}
.rstats,.pmeta,.jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.rstats span,.pmeta span,.jump a{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:99px;background:#fff;border:1px solid var(--line);font-size:.9rem;color:#33434C;box-shadow:0 6px 16px -10px rgba(20,92,89,.3)}
.rstats span b{color:var(--teal);font-size:1.05rem}
.rstats .ic,.pmeta .ic,.jump .ic{color:var(--teal)}
.jump a{font-weight:700;color:var(--teal);transition:.2s}
.jump a:hover{background:var(--teal);color:#fff;transform:translateY(-2px)}
.jump a:hover .ic{color:#fff}
.lensnav{display:flex;width:fit-content;align-items:center;gap:4px;padding:5px;border-radius:99px;background:#fff;border:1px solid var(--line);margin-bottom:16px;box-shadow:0 6px 16px -10px rgba(20,92,89,.3)}
.lensnav a{display:inline-flex;align-items:center;gap:7px;padding:7px 15px;border-radius:99px;font-weight:700;font-size:.88rem;color:var(--mute);transition:.2s}
.lensnav a:hover{color:var(--teal);background:var(--teal-50)}
.lensnav a.on{background:var(--teal);color:#fff}
.lang{display:inline-flex;padding:4px;border-radius:99px;background:#fff;border:1px solid var(--line)}
.lang button{padding:7px 18px;border-radius:99px;font-weight:700;font-size:.88rem;color:var(--mute)}
.lang button.on{background:var(--teal);color:#fff}

/* ---------- হিরো (হোম) ---------- */
.hero{padding:62px 0 128px;background:linear-gradient(165deg,#E6F1EE 0%,#F5F8F4 48%,#F8F2E7 100%)}
.hero .wrap{display:grid;grid-template-columns:1.12fr .88fr;gap:50px;align-items:center}
.hero .cont.c1{inset:auto;left:-14%;top:-35%;width:780px;height:780px;opacity:.1}
.hero .cont.c2{inset:auto;right:-10%;bottom:-50%;width:700px;height:700px}
.hl{position:relative;z-index:2}
.hello{margin-bottom:16px}
.hello .hi{display:block;font-family:var(--serif);font-style:italic;font-size:1.3rem;color:#94693A}
.hello b{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(2.2rem,4.6vw,3.7rem);line-height:1.08;letter-spacing:-.02em;color:var(--teal)}
.hello>svg{width:190px;height:14px;color:var(--gold);margin-top:8px}
.kicker{display:inline-flex;align-items:center;gap:9px;padding:7px 16px;border-radius:99px;background:#fff;border:1px solid var(--line);font-weight:700;font-size:.84rem;color:var(--teal);margin:6px 0 18px;box-shadow:0 6px 16px -10px rgba(20,92,89,.3)}
.hl h1{font-family:var(--serif);font-weight:500;font-size:clamp(1.55rem,2.7vw,2.25rem);line-height:1.28;letter-spacing:-.01em;max-width:21em;color:var(--ink)}
.hl h1 em{font-style:italic;color:var(--teal);position:relative;white-space:nowrap}
.hl h1 em svg{position:absolute;left:0;bottom:-.34em;width:100%;height:.34em;color:var(--gold)}
.hl .sub{color:#44555E;margin-top:20px;max-width:34em;font-size:1.04rem}
.hl .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.hl .chips .chip{background:#fff;border-color:var(--line)}
.hl .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hl .soc{margin-top:22px}
.pf{position:relative;width:100%;max-width:430px;margin:0 auto;aspect-ratio:4/5.15}
.pf .cont{inset:-14%;opacity:.16}
.pf .ring{position:absolute;inset:-5% -8%;border-radius:50%;border:2px dashed rgba(20,92,89,.28);animation:spin 70s linear infinite}
.pf .ring.r2{inset:4% -16%;border-color:rgba(181,139,85,.4);animation-direction:reverse}
.pf .lay{position:absolute;inset:0;border-radius:28px}
.pf .lay.l1{background:linear-gradient(150deg,var(--teal2),var(--teal));transform:translate(16px,16px);box-shadow:0 30px 50px -26px rgba(20,92,89,.6)}
.pf .lay.l2{border:2px solid var(--gold);transform:translate(-12px,-12px)}
.pf .arch{position:absolute;inset:0;border-radius:28px;overflow:hidden;border:6px solid #fff;box-shadow:0 14px 30px -14px rgba(20,92,89,.35);background:var(--teal-50)}
.pf .arch img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.float{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;padding:7px 18px 7px 8px;border-radius:99px;background:rgba(255,255,255,.96);box-shadow:var(--sh2);font-weight:700;font-size:.86rem;white-space:nowrap;animation:bob 6s ease-in-out infinite}
.float .ib{width:36px;height:36px;font-size:18px;border-radius:50%}
.float.f1{top:7%;left:-12%}
.float.f2{top:15%;right:-14%;animation-delay:-1.5s}
.float.f3{bottom:15%;left:-14%;animation-delay:-3s}
.float.f4{bottom:5%;right:-10%;animation-delay:-4.5s}

/* ---------- পরিসংখ্যান ---------- */
section.stats{padding:0 0 24px;margin-top:-56px;overflow:visible;z-index:3}
.stats .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.stat{display:flex;align-items:center;gap:16px;padding:20px 22px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.stat b{display:block;font-family:var(--serif);font-size:2.2rem;line-height:1;color:var(--teal);font-weight:600}
.stat .l{display:block;color:var(--mute);font-size:.86rem;margin-top:5px;line-height:1.35}

/* ---------- কার্ড ---------- */
.cards{display:grid;gap:24px}
.cards.c2{grid-template-columns:repeat(2,1fr)}
.cards.c3{grid-template-columns:repeat(3,1fr)}
.cards.c4{grid-template-columns:repeat(4,1fr)}
.cards.c5{grid-template-columns:repeat(6,1fr)}
.cards.c5>*{grid-column:span 2}
.cards.c5>:nth-child(4){grid-column:2/4}
.cards.c5>:nth-child(5){grid-column:4/6}
@media(min-width:961px){.cards.c3>:last-child:nth-child(3n+1){grid-column:2}}
.card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s}
.lift:hover{transform:translateY(-6px);box-shadow:var(--sh2);border-color:var(--teal-100)}
.btnlike,[role=button]{cursor:pointer}
.cb{display:flex;flex-direction:column;gap:8px;padding:20px 22px 22px;flex:1}
.cb h3{font-family:var(--serif);font-weight:600;font-size:1.2rem;line-height:1.3}
.cb p{color:var(--mute);font-size:.94rem}
.clamp{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.more{margin-top:auto;padding-top:6px;display:inline-flex;align-items:center;gap:7px;font-weight:800;font-size:.88rem;color:var(--teal)}
.more .ic{transition:transform .25s}
.lift:hover .more .ic{transform:translateX(5px)}
.when{font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#94693A}
.meta{font-size:.82rem;color:var(--mute);font-weight:600}
div.org{color:var(--mute);font-weight:600;font-size:.92rem}
.aw{position:relative;aspect-ratio:16/10;overflow:hidden}
.aw .arttile{position:absolute;inset:0}
.ifc.sm .aw{aspect-ratio:16/9}
.ifc.sm .cb h3{font-size:1.08rem}
.ifc.sm .cb p{font-size:.88rem}
.card .aw .ribbon,.tw>.ribbon{position:absolute;top:14px;left:14px;z-index:3}
.tw{position:relative}
.tw>.chip{position:absolute;left:14px;top:14px;z-index:3;background:rgba(255,255,255,.95)}
.tw>.q{position:absolute;right:14px;top:14px;z-index:3;padding:3px 11px;border-radius:99px;background:rgba(255,255,255,.95);font-weight:800;font-size:.76rem;color:#8A6232;border:1px solid rgba(181,139,85,.35)}
.tcard .tw>.chip,.pub .tw>.chip{top:auto;bottom:12px}
.thumb{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--teal-50)}
.thumb>img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.lift:hover .thumb>img{transform:scale(1.05)}
.thumb .arttile{position:absolute;inset:0}
.thumb.fit::before{content:"";position:absolute;inset:-20px;background:var(--bgi) center/cover;filter:blur(22px) saturate(1.1);opacity:.55}
.thumb.fit>img{position:relative;object-fit:contain;padding:8px}
.thumb.big{aspect-ratio:16/9}
.pub .cb{padding-top:18px}
.pub .cm{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.8rem;color:var(--mute);font-weight:600;padding-top:6px}
.pub .cm span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pcard .chip.st{background:rgba(255,255,255,.96)}

/* ---------- ছবি-আঁকা (illustration) টাইল ---------- */
:where(.arttile,.mh.art,.zart,.phdart,.fplane,.medal,.tart){--tb1:#E3F0ED;--tb2:#F6FAF8;--tf:rgba(20,92,89,.13);--tl:#145C59;--ta:#B58B55}
.sky{--tb1:#E1EDF5;--tb2:#F5FAFD;--tf:rgba(44,106,138,.14);--tl:#2C6A8A;--ta:#B58B55}
.gold{--tb1:#F7ECD9;--tb2:#FEFBF4;--tf:rgba(181,139,85,.2);--tl:#94693A;--ta:#145C59}
.rose{--tb1:#F8E6DE;--tb2:#FEFAF8;--tf:rgba(176,90,59,.15);--tl:#B05A3B;--ta:#145C59}
.sand{--tb1:#F3ECDA;--tb2:#FCFAF3;--tf:rgba(138,115,64,.17);--tl:#8A7340;--ta:#145C59}
.arttile{position:relative;overflow:hidden;display:grid;place-items:center;width:100%;height:100%;min-height:100px;background:linear-gradient(145deg,var(--tb1),var(--tb2));color:var(--tl)}
.arttile .cont{color:var(--tl);opacity:.15;inset:-40% -10%;display:none}
.arttile.sp .cont{display:block}
.arttile .il{position:relative;z-index:1;width:76%;height:82%;transition:transform .5s}
.lift:hover .arttile .il{transform:scale(1.07) rotate(-1.5deg)}
.il{display:block}
.il .s{fill:none;stroke:var(--tl,#145C59);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.il .f{fill:var(--tf,rgba(20,92,89,.13));stroke:none}
.il .f.s{stroke:var(--tl,#145C59)}
.il .g{fill:none;stroke:var(--ta,#B58B55);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.il .fg{fill:var(--ta,#B58B55);stroke:none;opacity:.9}
.il .nd{fill:var(--tl,#145C59);stroke:none}
.il .fg2{fill:var(--ta,#B58B55);stroke:none}

/* ---------- Hero, Home অন্যান্য ---------- */
.foi{background:linear-gradient(180deg,var(--bg) 0%,#F1F6F2 100%)}
.mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:16px}
.mosaic a,.mosaic .mi{position:relative;display:block;padding:0;border:0;cursor:zoom-in;font:inherit;text-align:left;border-radius:20px;overflow:hidden;box-shadow:var(--sh);background:var(--teal-50)}
.mosaic>:nth-child(1){grid-column:span 2;grid-row:span 2}.mosaic>:nth-child(6){grid-column:span 2}
.mosaic img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.mosaic a:hover img,.mosaic .mi:hover img{transform:scale(1.07)}
.mosaic a span,.mosaic .mi span{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;gap:7px;padding:8px 12px;border-radius:12px;background:rgba(255,255,255,.94);font-size:.8rem;font-weight:700;color:var(--teal);opacity:0;transform:translateY(8px);transition:.3s}
.mosaic a:hover span,.mosaic .mi:hover span,.mosaic .mi:focus-visible span{opacity:1;transform:none}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tile{display:flex;align-items:center;gap:15px;padding:18px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh);transition:.3s}
.tile span:not(.ib){flex:1;display:flex;flex-direction:column;line-height:1.3}
.tile b{font-family:var(--serif);font-size:1.12rem}
.tile small{color:var(--mute);font-size:.8rem;margin-top:3px}
.tile>.ic{color:var(--teal);transition:transform .25s}
.tile:hover>.ic{transform:translateX(5px)}
.phd{position:relative;overflow:hidden;border-radius:30px;padding:46px;background:linear-gradient(135deg,#E3F0ED,#FBF7EE);border:1px solid var(--teal-100);box-shadow:var(--sh)}
.phd .cont{inset:auto;right:-100px;top:-180px;width:520px;height:520px}
.phd .in{position:relative;display:flex;align-items:center;gap:38px;z-index:1}
.phdart{flex:none;width:190px;height:190px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:var(--sh2);padding:24px}
.phdart .il{width:100%;height:100%}
.phd h3{font-family:var(--serif);font-weight:600;font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.2;margin-bottom:10px}
.phd p{color:#44555E;max-width:640px;margin-bottom:16px}
.phd .tags{margin-bottom:22px}
.band{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;padding:44px 48px;border-radius:30px;background:linear-gradient(135deg,#E3F0ED,#F8F1E4);border:1px solid var(--teal-100);box-shadow:var(--sh)}
.band .cont{inset:auto;left:-100px;top:-190px;width:520px;height:520px}
.band>*:not(.cont){position:relative;z-index:1}
.band h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.2}
.band p{color:#44555E;margin-top:8px;max-width:560px}

/* ---------- রিভিল অ্যানিমেশন ---------- */
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease,box-shadow .3s,border-color .3s}
.rv.in{opacity:1;transform:none}
.rv.in.lift:hover{transform:translateY(-6px)}
.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}

/* ---------- About ---------- */
.about{display:grid;grid-template-columns:.86fr 1.14fr;grid-template-areas:"al ar" "af ar";grid-template-rows:auto 1fr;column-gap:72px;row-gap:34px;align-items:start}
.about .al{grid-area:al}.about .af{grid-area:af}.about .ar{grid-area:ar}
.about .af .facts{grid-template-columns:1fr;gap:12px}
.vf{position:relative;max-width:440px;margin:10px auto 0;padding:18px}
.vf .cont{inset:-18%;opacity:.15}
.vf .plate{position:absolute;border-radius:30px;z-index:0}
.vf .plate.p1{inset:0 34px 34px 0;background:var(--teal-50);transform:rotate(-4deg)}
.vf .plate.p2{inset:34px 0 0 34px;background:var(--gold-50);transform:rotate(3deg)}
.vfimg{position:relative;z-index:1;aspect-ratio:4/5;border-radius:26px;overflow:hidden;border:9px solid #fff;box-shadow:0 34px 56px -24px rgba(20,92,89,.55);background:var(--teal-50)}
.vfimg.land{aspect-ratio:4/3}
.vfimg img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.vf .c{position:absolute;width:42px;height:42px;z-index:2;border:3px solid var(--gold);pointer-events:none}
.vf .c.tl{left:2px;top:2px;border-right:0;border-bottom:0;border-radius:14px 0 0 0}
.vf .c.tr{right:2px;top:2px;border-left:0;border-bottom:0;border-radius:0 14px 0 0}
.vf .c.bl{left:2px;bottom:2px;border-right:0;border-top:0;border-radius:0 0 0 14px}
.vf .c.br{right:2px;bottom:2px;border-left:0;border-top:0;border-radius:0 0 14px 0}
.vf .dotsq{position:absolute;right:-26px;bottom:-26px;width:110px;height:110px;background-image:radial-gradient(var(--gold) 1.8px,transparent 2px);background-size:16px 16px;opacity:.45;z-index:0}
.prose p{margin-bottom:16px;color:#33434C;font-size:1.04rem}
.prose .lede{font-family:var(--serif);font-size:1.4rem;line-height:1.5;color:var(--ink)}
.lines{display:grid;gap:12px;margin:26px 0}
.line{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.line .ib{width:42px;height:42px;font-size:21px;border-radius:13px}
.line span:not(.ib){font-weight:600;color:#33434C;font-size:.96rem}
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.fact{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:18px;background:linear-gradient(135deg,#fff,var(--bg2));border:1px solid var(--line)}
.fact .ib{width:44px;height:44px;font-size:22px;border-radius:14px}
.fact small{display:block;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#94693A}
.fact .v{display:block;font-weight:700;font-size:.93rem;line-height:1.35}
.edu .cb,.wk .cb,.org .cb{gap:7px}
.edu .aw,.org .aw{aspect-ratio:16/6}
.wk .aw{aspect-ratio:16/8}

/* ---------- Journey (zigzag) ---------- */
.zz{position:relative;display:grid;grid-template-columns:1fr 1fr;column-gap:64px;align-items:start}
.zz::before{content:"";position:absolute;left:50%;top:10px;bottom:10px;width:0;border-left:3px dashed rgba(181,139,85,.55);transform:translateX(-50%)}
.zz>.cont{inset:auto;left:50%;top:50%;width:700px;height:700px;margin:-350px 0 0 -350px;opacity:.08}
.zl,.zr{display:flex;flex-direction:column;gap:34px;position:relative;z-index:1}
.zr{margin-top:78px}
.zc{overflow:visible;padding:20px 20px 18px;cursor:pointer}
.zc .yr{position:absolute;top:-13px;left:20px;padding:3px 13px;border-radius:99px;background:linear-gradient(135deg,var(--gold),#C9A06B);color:#fff;font-weight:800;font-size:.8rem;letter-spacing:.04em;box-shadow:0 8px 16px -8px rgba(148,105,58,.7)}
.zc::after{content:"";position:absolute;top:34px;width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--gold);box-shadow:0 0 0 5px rgba(181,139,85,.18)}
.zc::before{content:"";position:absolute;top:42px;width:32px;height:2px;background:var(--gold);opacity:.7}
.zc.l::after{right:-42px}.zc.l::before{right:-32px}
.zc.r::after{left:-42px}.zc.r::before{left:-32px}
.zc.now{border-color:var(--teal);box-shadow:0 0 0 4px rgba(20,92,89,.1),var(--sh)}
.zc.now::after{border-color:var(--teal);box-shadow:0 0 0 5px rgba(20,92,89,.2)}
.zc.now .yr{background:linear-gradient(135deg,var(--teal),var(--teal2))}
.zb{display:flex;gap:16px;align-items:flex-start;margin-top:6px}
.zart{flex:none;width:92px;height:92px;border-radius:20px;background:linear-gradient(145deg,var(--tb1),var(--tb2));display:grid;place-items:center;padding:8px}
.zart .il{width:100%;height:100%}
.zb h4{font-family:var(--serif);font-size:1.12rem;line-height:1.3;margin-bottom:5px}
.zb p{color:var(--mute);font-size:.9rem;line-height:1.55}
.zb .more{margin-top:8px}

/* ---------- Experience ---------- */
.aw2{flex-direction:row;align-items:center;gap:22px;padding:24px 26px}
.aw2 h3{font-family:var(--serif);font-size:1.15rem;line-height:1.3;margin:4px 0}
.aw2 p{color:var(--mute);font-size:.92rem}
.medal{position:relative;overflow:hidden;flex:none;width:112px;height:112px;border-radius:50%;background:#fff;box-shadow:0 0 0 6px var(--gold-50),var(--sh);--tl:#94693A;--ta:#145C59}
.medal .il{position:absolute;left:50%;top:50%;width:220%;height:auto;aspect-ratio:200/120;transform:translate(-50%,-50%)}
.mem{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:30px}
.mem .chip{background:#fff;border-color:var(--line);padding:7px 15px;font-size:.84rem}
.exp{flex-direction:row;align-items:center;gap:20px;padding:22px 26px}
.exp h3{font-family:var(--serif);font-size:1.12rem}
.exp p{color:var(--mute);font-size:.9rem}

/* ---------- Skills ---------- */
.skill .it{display:flex;flex-wrap:wrap;gap:6px}
.skill .it span{padding:3px 11px;border-radius:99px;background:var(--teal-50);color:var(--teal);font-size:.78rem;font-weight:700}
.lvl{display:inline-flex;gap:4px;margin-left:8px;vertical-align:middle}
.lvl i{width:9px;height:9px;border-radius:50%;background:var(--line)}
.lvl i.on{background:var(--gold)}

/* ---------- Research ---------- */
.area2 .cb h3{font-size:1.15rem}
.thesis{flex-direction:row;gap:34px;padding:30px;align-items:stretch}
.tart{flex:none;width:260px;border-radius:22px;overflow:hidden}
.tart .arttile{min-height:220px}
.thesis h3{font-family:var(--serif);font-size:1.4rem;line-height:1.3;margin:12px 0 16px}
.thesis dl{display:grid;grid-template-columns:130px 1fr;gap:10px 18px}
.thesis dt{font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#94693A;padding-top:3px}
.thesis dd{color:#33434C;font-size:.95rem}
.tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:34px}
.tabs button{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:99px;background:#fff;border:1.5px solid var(--line);font-weight:700;font-size:.9rem;color:var(--mute);transition:.2s}
.tabs button small{padding:1px 8px;border-radius:99px;background:var(--bg2);font-size:.74rem}
.tabs button:hover{border-color:var(--teal-100);color:var(--teal)}
.tabs button.on{background:var(--teal);border-color:var(--teal);color:#fff}
.tabs button.on small{background:rgba(255,255,255,.22);color:#fff}
.conf{padding:22px 24px;gap:10px}
.conf .top{display:flex;justify-content:space-between;align-items:center}
.conf .yr{font-family:var(--serif);font-size:1.6rem;font-weight:600;color:var(--gold);line-height:1}
.conf h3{font-family:var(--serif);font-size:1.05rem;line-height:1.4;font-weight:600}
.conf .ven{display:flex;gap:8px;color:var(--mute);font-size:.86rem}
.conf .ven .ic{color:var(--teal);margin-top:3px}
.conf .more{margin-top:auto}

/* ---------- Projects ---------- */
.pd{display:grid;grid-template-columns:1fr 330px;gap:44px;align-items:start}
.figure{border-radius:24px;overflow:hidden;background:var(--teal-50);box-shadow:var(--sh);margin-bottom:30px;border:6px solid #fff}
.figure img{width:100%;max-height:520px;object-fit:contain;background:#fff}
.figure .arttile{min-height:300px}
.ps{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}
.ps h3{font-family:var(--serif);font-size:1.2rem;margin-bottom:6px}
.ps p{color:#33434C}
.mats{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.mats a{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:12px;background:#fff;border:1.5px solid var(--teal-100);color:var(--teal);font-weight:700;font-size:.9rem;transition:.2s}
.mats a:hover{background:var(--teal);color:#fff}
.soon{display:flex;gap:10px;align-items:center;padding:16px 20px;border-radius:16px;border:1.5px dashed rgba(181,139,85,.6);background:var(--gold-50);color:#7A5A30;font-weight:600}
.side{position:sticky;top:96px;display:grid;gap:4px;padding:16px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.side>div{display:flex;align-items:center;gap:14px;padding:12px}
.side>div+div{border-top:1px solid var(--line)}
.side .ib{width:44px;height:44px;font-size:22px;border-radius:14px}
.side small{display:block;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#94693A}
.side span{font-weight:600;font-size:.94rem;line-height:1.4}

/* ---------- Popup ---------- */
.mo{position:fixed;inset:0;z-index:100;background:rgba(31,41,51,.5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:none;overflow-y:auto;padding:40px 16px}
.mo.on{display:flex;justify-content:center;align-items:flex-start}
.box{position:relative;width:100%;max-width:780px;margin:auto;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 40px 80px -20px rgba(15,40,40,.5);animation:pop .35s cubic-bezier(.2,.9,.3,1.2)}
@keyframes pop{from{opacity:0;transform:translateY(24px) scale(.97)}}
.box .x{position:absolute;top:14px;right:14px;z-index:6;width:42px;height:42px;border-radius:50%;background:#fff;color:var(--ink);display:grid;place-items:center;font-size:20px;box-shadow:0 8px 20px -6px rgba(0,0,0,.3);transition:.2s}
.box .x:hover{background:var(--teal);color:#fff;transform:rotate(90deg)}
.mh{position:relative;height:280px;background:var(--teal-50);overflow:hidden}
.mh>img{width:100%;height:100%;object-fit:cover}
.mh.art{height:230px;display:grid;place-items:center;background:linear-gradient(145deg,var(--tb1),var(--tb2));color:var(--tl)}
.mh.art .cont{color:var(--tl);opacity:.16;inset:-60% -10%}
.mh.art .il{position:relative;z-index:1;height:190px;width:auto}
.mh.fitmh{height:320px}
.mh.fitmh::before{content:"";position:absolute;inset:-30px;background:var(--bgi) center/cover;filter:blur(26px);opacity:.55}
.mh.fitmh>img{position:relative;object-fit:contain;padding:14px}
.mh.fitmh .arttile{position:absolute;inset:0}
.mh .arttile{position:absolute;inset:0}
.mb{padding:28px 34px 34px}
.mb .tags{margin-bottom:12px}
.mb h2{font-family:var(--serif);font-weight:600;font-size:1.75rem;line-height:1.25;margin-bottom:8px}
.mb .au{color:var(--mute);font-size:.94rem;margin-bottom:14px}
.mb>p{color:#33434C;margin-bottom:12px}
.mb .info{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}
.mb .info>div{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:12px;background:var(--bg2);font-size:.88rem;font-weight:600;color:#33434C}
.mb .info .ic{color:var(--teal)}
.chk{display:grid;gap:9px}
.chk li{position:relative;padding-left:30px;color:#33434C;font-size:.96rem}
.chk li::before{content:"";position:absolute;left:0;top:.28em;width:19px;height:19px;border-radius:50%;background:var(--teal-50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23145C59' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
.roles{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.role{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:var(--bg2);border:1px solid var(--line);font-size:.92rem;font-weight:700;flex-wrap:wrap}
.role small{color:#94693A;font-weight:700;margin-left:auto;font-size:.78rem}
.role .ic{color:var(--teal)}
.role span b{display:block;line-height:1.3}
.role span em{display:block;font-style:normal;color:var(--mute);font-weight:600;font-size:.84rem}
.roles.big{grid-template-columns:1fr}
.defs{display:grid;gap:10px;margin:6px 0}
.defs>div{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:11px 14px;border-radius:14px;background:var(--bg2)}
.defs dt{font-weight:800;font-size:.86rem;color:var(--teal);display:flex;align-items:flex-start;gap:7px}
.defs dd{color:#33434C;font-size:.92rem}
.rels{display:grid;gap:10px}
.rel{display:flex;align-items:center;gap:13px;text-align:left;padding:12px 16px;border-radius:16px;background:#fff;border:1.5px solid var(--line);transition:.2s;width:100%}
.rel:hover{border-color:var(--teal);background:var(--teal-50)}
.rel>.ic:first-child{color:var(--teal);font-size:1.3rem}
.rel span{flex:1;font-weight:700;font-size:.92rem;line-height:1.4}
.rel small{display:block;color:var(--mute);font-weight:600;font-size:.8rem}
.imgs{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px}
.imgs div{border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:var(--teal-50)}
.imgs img{width:100%;height:100%;object-fit:cover}
.imgs.shots{grid-template-columns:1fr;margin:0 0 26px}
.imgs.shots div{aspect-ratio:auto;border:6px solid #fff;box-shadow:var(--sh);border-radius:20px}
.imgs.shots img{height:auto;object-fit:contain}
.note{display:flex;gap:10px;align-items:flex-start;padding:14px 18px;border-radius:16px;border:1.5px dashed rgba(181,139,85,.6);background:var(--gold-50);color:#7A5A30;font-weight:600;font-size:.92rem;margin:16px 0}
.row{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}

/* ---------- Photography ---------- */
.masonry{columns:3;column-gap:18px}
.gi{position:relative;display:block;width:100%;margin:0 0 18px;border-radius:18px;overflow:hidden;break-inside:avoid;background:var(--teal-50);box-shadow:var(--sh);cursor:pointer}
.gi img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.gi:hover img{transform:scale(1.05)}
.gi .arttile{aspect-ratio:3/2}
.gi .cap{position:absolute;left:10px;right:10px;bottom:10px;padding:9px 13px;border-radius:13px;background:rgba(255,255,255,.95);text-align:left;opacity:0;transform:translateY(8px);transition:.3s;display:flex;flex-direction:column;line-height:1.3}
.gi .cap b{font-size:.86rem;color:var(--ink)}
.gi .cap small{font-size:.74rem;color:var(--mute);font-weight:600}
.gi:hover .cap,.gi:focus-visible .cap{opacity:1;transform:none}
.behind{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.gears{display:grid;gap:14px}
.gearm{display:flex;align-items:center;gap:18px;padding:18px 20px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.gearm h4{font-family:var(--serif);font-size:1.15rem}
.gearm p{color:var(--mute);font-size:.9rem}
.lb{position:fixed;inset:0;z-index:120;background:rgba(240,245,242,.97);display:none;align-items:center;justify-content:center;flex-direction:column;padding:24px}
.lb.on{display:flex}
.lb .stage{max-width:94vw;max-height:76vh;display:grid;place-items:center}
.lb .stage img{max-width:94vw;max-height:76vh;object-fit:contain;border-radius:14px;border:7px solid #fff;box-shadow:0 30px 60px -24px rgba(20,60,60,.55)}
.lb .lc{margin-top:16px;text-align:center;color:var(--mute);font-size:.9rem}
.lb .lc b{display:block;color:var(--ink);font-family:var(--serif);font-size:1.15rem}
.lb .x,.lb .pv,.lb .nx{position:absolute;width:48px;height:48px;border-radius:50%;background:#fff;color:var(--teal);display:grid;place-items:center;font-size:22px;box-shadow:var(--sh2);transition:.2s}
.lb .x:hover,.lb .pv:hover,.lb .nx:hover{background:var(--teal);color:#fff}
.lb .x{top:20px;right:20px}
.lb .pv{left:20px;top:50%;margin-top:-24px}
.lb .nx{right:20px;top:50%;margin-top:-24px}

/* ---------- Travel blog ---------- */
.tcard .cb h3{font-size:1.25rem}
.tcard.soon .thumb{filter:saturate(.8)}
.feat{display:grid;grid-template-columns:1.15fr 1fr;flex-direction:row;min-height:380px}
.feat .tw{min-height:100%}
.feat .thumb{aspect-ratio:auto;position:absolute;inset:0}
.feat .cb{padding:36px 38px;justify-content:center;gap:12px}
.feat .cb .chip{align-self:flex-start;position:static}
.feat .cb h3{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.25}
.feat .cb p{font-size:1.02rem}
.feat .btn{align-self:flex-start;margin-top:8px}
.places{justify-content:center;gap:12px}
.places .chip{background:#fff;border-color:var(--line);padding:9px 18px;font-size:.9rem;box-shadow:var(--sh)}
.bn,.bn *{font-family:'Noto Serif Bengali',var(--serif);letter-spacing:0}
.bn-on .ph .pt h1,.bn-on .ph .pt .s,.bn-on .ph .eb2,.bn-on .ph .pmeta,.bn-on .feat .cb,.bn-on .sh h2,.bn-on .sh .lead,.bn-on .sh .eb span{font-family:'Noto Serif Bengali',var(--serif);letter-spacing:0;text-transform:none}
.bn-on .ph h1 em{font-style:normal}
.bn-on .ph h1{line-height:1.3}
.post{max-width:780px;margin:0 auto}
.post .figure{border-radius:26px;margin-bottom:38px}
.post .figure img{max-height:520px;object-fit:cover;width:100%}
.post h2{font-family:var(--serif);font-weight:600;font-size:1.7rem;line-height:1.25;margin:40px 0 14px;color:var(--teal)}
.post p{font-size:1.12rem;line-height:1.95;color:#2A3942;margin-bottom:18px}
.post blockquote{position:relative;margin:30px 0;padding:24px 28px 24px 70px;border-radius:22px;background:var(--gold-50);border-left:5px solid var(--gold)}
.post blockquote .ic{position:absolute;left:24px;top:24px;font-size:28px;color:var(--gold)}
.post blockquote p{margin:0;font-family:var(--serif);font-style:italic;font-size:1.25rem;color:#5A4326}
.pfig{margin:30px 0}
.pfig img{width:100%;border-radius:20px;box-shadow:var(--sh)}
.pfig figcaption{text-align:center;color:var(--mute);font-size:.88rem;margin-top:10px}
.pgal{columns:2;margin-top:36px}
.pns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:50px}
.pn{display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh);transition:.25s;font-weight:700;font-family:var(--serif)}
.pn:hover{border-color:var(--teal);transform:translateY(-3px)}
.pn.n{justify-content:flex-end;text-align:right}
.pn small{display:block;font-family:var(--sans);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#94693A;font-weight:800}
.pn .ic{color:var(--teal);font-size:1.3rem}

/* ---------- Contact ---------- */
.csec{background:linear-gradient(180deg,var(--bg),#EEF4F0)}
.ct{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.ccard{position:relative;overflow:hidden;padding:30px;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.ccard .cont{inset:auto;right:-120px;top:-130px;width:360px;height:360px}
.ccard h3{font-family:var(--serif);font-size:1.5rem;margin-bottom:18px;position:relative}
.crow{display:flex;align-items:center;gap:15px;padding:12px 0;position:relative}
.crow+.crow{border-top:1px solid var(--line)}
.crow .ib{width:46px;height:46px;font-size:22px;border-radius:14px}
.crow small{display:block;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#94693A}
.crow>span{font-weight:600;line-height:1.4;word-break:break-word}
.crow .cm{display:flex;align-items:center;gap:15px;flex:1;min-width:0}
.crow .cm span{font-weight:700;color:var(--teal);word-break:break-all;line-height:1.4}
.cp{width:42px;height:42px;border-radius:12px;background:var(--teal-50);color:var(--teal);display:grid;place-items:center;font-size:19px;transition:.2s;flex:none}
.cp:hover{background:var(--teal);color:#fff}
.cp.ok{background:#E3F2EA;color:#1D6A45}
.topics{display:grid;gap:10px}
.tp{display:flex;align-items:center;gap:14px;text-align:left;padding:12px 16px;border-radius:18px;background:#fff;border:1.5px solid var(--line);transition:.22s;width:100%}
.tp .ib{width:42px;height:42px;font-size:21px;border-radius:13px}
.tp span:not(.ib){display:flex;flex-direction:column;line-height:1.35}
.tp b{font-size:.96rem}
.tp small{color:var(--mute);font-size:.82rem}
.tp:hover{border-color:var(--teal-100)}
.tp.on{border-color:var(--teal);background:var(--teal-50);box-shadow:0 10px 22px -14px rgba(20,92,89,.6)}
.sl{display:flex;flex-wrap:wrap;gap:10px}
.sl a{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:99px;background:#fff;border:1px solid var(--line);font-weight:700;font-size:.88rem;color:var(--teal);transition:.2s}
.sl a:hover{background:var(--teal);color:#fff;transform:translateY(-2px)}
form.f{position:relative;overflow:hidden;padding:36px;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh2);display:grid;gap:18px}
form.f::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,var(--teal),var(--gold))}
form.f h3{font-family:var(--serif);font-size:1.6rem;position:relative}
form.f .fs{color:var(--mute);font-size:.94rem;margin-top:-8px;position:relative;max-width:78%}
.fplane{position:absolute;right:16px;top:22px;width:130px;height:80px;opacity:.9;pointer-events:none}
.fplane .il{width:100%;height:100%}
form.f label{display:grid;gap:7px;font-weight:700;font-size:.86rem;color:#33434C;position:relative}
.fi{display:flex;align-items:center;gap:11px;padding:0 15px;border-radius:14px;border:1.5px solid var(--line);background:var(--bg);transition:.2s}
.fi:focus-within{border-color:var(--teal);background:#fff;box-shadow:0 0 0 4px rgba(20,92,89,.1)}
.fi .ic{color:var(--teal);font-size:1.15rem}
.fi input,.fi select,.fi textarea{flex:1;min-width:0;border:0;background:none;outline:0;padding:14px 0;font-weight:500;color:var(--ink)}
.fi.ta{align-items:flex-start}
.fi.ta .ic{margin-top:15px}
.fi textarea{min-height:140px;resize:vertical}
form.f .btn{justify-self:start;padding:13px 28px}
.fm{font-weight:700;font-size:.92rem;min-height:1.2em}
.fm.ok{color:#1D6A45}
.fm.er{color:#B05A3B}

/* ---------- রেসপনসিভ ---------- */
@media(min-width:1101px) and (max-width:1320px){.nl>a .ic,.ddb>.ic:not(.cv){display:none}.nl>a,.ddb{padding:9px 11px}}
@media(max-width:1100px){
  .burger{display:grid}
  .nl{display:none;position:absolute;left:0;right:0;top:100%;height:calc(100vh - 74px);height:calc(100dvh - 74px);flex-direction:column;align-items:stretch;gap:4px;padding:18px 20px 40px;background:var(--bg);overflow-y:auto;z-index:55}
  .nl.open{display:flex}
  .nl>a,.ddb{padding:14px 16px;font-size:1.02rem;border-radius:14px}
  .nl>a.cv{margin:8px 0 0;justify-content:center}
  .dd::after{display:none}
  .ddb{pointer-events:none;color:#94693A;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;padding-bottom:4px}
  .ddb .ic.cv{display:none}
  .ddm{position:static;transform:none!important;opacity:1;visibility:visible;box-shadow:none;border:0;min-width:0;padding:0 0 0 6px;background:none}
  .cards.c4{grid-template-columns:repeat(2,1fr)}
  .stats .grid{grid-template-columns:repeat(2,1fr)}
  .tiles{grid-template-columns:repeat(2,1fr)}
  .foot .g{grid-template-columns:1fr 1fr}
  .masonry{columns:2}
  .about,.behind{gap:44px}
}
@media(max-width:960px){
  .ph .wrap{grid-template-columns:1fr}
  .pg{display:none}
  .hero .wrap{grid-template-columns:1fr;gap:56px}
  .pf{max-width:360px}
  .float.f1{left:-4%}.float.f2{right:-4%}.float.f3{left:-4%}.float.f4{right:-2%}
  .cards.c3,.cards.c5{grid-template-columns:repeat(2,1fr)}
  .cards.c5>*,.cards.c5>:nth-child(4),.cards.c5>:nth-child(5){grid-column:auto}
  .about,.behind,.ct,.pd,.feat{grid-template-columns:1fr}
  .about{grid-template-areas:"al" "ar" "af";grid-template-rows:auto}
  .feat .tw{min-height:260px}
  .feat .thumb{position:absolute}
  .side{position:static}
  .thesis{flex-direction:column}
  .tart{width:100%}
  .phd .in{flex-direction:column;text-align:center}
  .phd .tags{justify-content:center}
  .zz{display:grid;grid-template-columns:1fr;column-gap:0;row-gap:30px;padding-left:34px}
  .zz::before{left:10px;transform:none}
  .zl,.zr{display:contents}
  .zc{order:var(--o,0)}
  .zr{margin-top:0}
  .zc.l::after,.zc.r::after{left:-33px;right:auto}
  .zc.l::before,.zc.r::before{left:-24px;right:auto;width:24px}
}
@media(max-width:700px){
  body{font-size:16px}
  section{padding:62px 0}
  .wrap{padding:0 20px}
  .cards.c2,.cards.c3,.cards.c4,.cards.c5{grid-template-columns:1fr}
  .cards.c4.sm-2{grid-template-columns:repeat(2,1fr);gap:12px}
  .sm-2 .cb{padding:13px 14px 15px}
  .sm-2 .cb h3{font-size:.98rem}
  .sm-2 .cb p{font-size:.8rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
  .sm-2 .more{font-size:.8rem}
  .stats .grid{grid-template-columns:1fr 1fr;gap:12px}
  .stat{padding:14px;gap:10px}
  .stat .ib.lg{width:48px;height:48px;font-size:24px;border-radius:15px}
  .stat b{font-size:1.6rem}
  .tiles{grid-template-columns:1fr}
  .mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px;gap:10px}
  .foot .g{grid-template-columns:1fr;gap:30px}
  .foot .bar{justify-content:center;text-align:center}
  .facts{grid-template-columns:1fr}
  .ph{padding:54px 0 90px}
  .hero{padding:44px 0 108px}
  .band{padding:30px 24px}
  .phd{padding:30px 22px}
  .phdart{width:150px;height:150px}
  .mb{padding:24px 22px 28px}
  .mh{height:210px}.mh.fitmh{height:240px}.mh.art{height:190px}.mh.art .il{height:150px}
  .roles,.imgs{grid-template-columns:1fr}
  .defs>div{grid-template-columns:1fr;gap:4px}
  .thesis dl{grid-template-columns:1fr;gap:2px}
  .thesis dd{margin-bottom:10px}
  .masonry{columns:1}
  .pgal{columns:1}
  .pns{grid-template-columns:1fr}
  .aw2,.exp{flex-direction:column;text-align:center}
  form.f{padding:26px 20px}
  form.f .fs{max-width:100%}
  .fplane{display:none}
  .feat .cb{padding:26px 22px}
  .float{font-size:.76rem;padding:5px 12px 5px 6px}
  .float .ib{width:30px;height:30px;font-size:15px}
  .float.f1{top:5%;left:-2%}.float.f2{top:13%;right:-2%}.float.f3{bottom:14%;left:-2%}.float.f4{bottom:4%;right:-2%}
  .subh{font-size:1.1rem}
  .lb .pv{left:8px}.lb .nx{right:8px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}html{scroll-behavior:auto}}

/* page-header badge illustration (replaces text kicker) */
.hbadge{position:relative;width:148px;height:104px;border-radius:24px;overflow:hidden;border:5px solid #fff;box-shadow:var(--sh);margin-bottom:18px;background:#fff}
.hbadge .arttile{position:absolute;inset:0;min-height:0}




/* camera-in-hand: gear art thumbnails + coloured society badges */
.gthumb{position:relative;flex:none;width:108px;height:80px;border-radius:18px;overflow:hidden;border:4px solid #fff;box-shadow:var(--sh)}
.gthumb .arttile{position:absolute;inset:0;min-height:0}
.roles.big .role{position:relative;padding:12px 16px 12px 12px;background:#fff;border-left:5px solid var(--rc,var(--teal));box-shadow:0 8px 20px -14px rgba(20,92,89,.4)}
.roles.big .role.t0{--rc:var(--teal)}.roles.big .role.t1{--rc:var(--gold)}.roles.big .role.t2{--rc:#3F7FA6}
.role .rb{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:12px;background:color-mix(in srgb,var(--rc,var(--teal)) 14%,#fff);color:var(--rc,var(--teal))}
.role .rb .ic{color:inherit}
@supports not (background:color-mix(in srgb,red 10%,#fff)){.role .rb{background:var(--teal-50)}}

/* justified paragraphs (headings, centred leads, captions and button labels stay as they are) */
p,.modal li,.blk li{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}
.sh .lead,.ctr,.fs,.fm,.lc div,.ph .pt .s.c,.stat .l,.cap small,.float,.arttile p{text-align:inherit;hyphens:manual;-webkit-hyphens:manual}
.sh .lead,p.ctr{text-align:center}
.fm{text-align:left}
@media (max-width:520px){p{hyphens:auto;-webkit-hyphens:auto;word-spacing:-.02em}}


/* iOS Safari safety: no blurred pseudo-elements (they can render as black boxes there) */
@supports (-webkit-touch-callout:none){
  .thumb.fit::before,.mh.fitmh::before{filter:none;background:linear-gradient(145deg,var(--teal-50),var(--gold-50));opacity:1}
  .mo{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(31,41,51,.62)}
}

/* small phones: stats cards must not push the page wider */
.stat{min-width:0}.stat>div{min-width:0}.stat .l{overflow-wrap:anywhere}
@media (max-width:420px){.stat{flex-direction:column;align-items:flex-start;gap:8px}}

/* phones: keep paragraphs justified (hyphenation keeps word gaps small) */
@media (max-width:600px){
  p,.modal li,.blk li{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;word-spacing:-.02em}
  .sh .lead,p.ctr{text-align:center}
  .pf{max-width:318px}
  .pf .lay.l1{transform:translate(10px,10px)}
  .pf .lay.l2{transform:translate(-8px,-8px)}
}

.hbadge .arttile .il{width:84%;height:88%}
.hbadge{box-shadow:0 18px 30px -16px rgba(20,92,89,.45)}

/* BG-START (generated by tools/gen_bg.py) */
:root{
  --g-c1:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%221000%22 height=%221000%22 viewBox=%220 0 1000 1000%22%3E%3Cpath d=%22M587,480 L589,484 L589,488 L586,492 L582,495 L577,497 L573,499 L570,501 L566,503 L563,505 L559,506 L555,507 L551,507 L547,508 L544,508 L540,509 L536,509 L532,509 L528,509 L524,508 L521,507 L516,506 L511,505 L506,505 L500,503 L496,500 L494,496 L495,492 L498,487 L503,483 L507,480 L510,477 L511,475 L510,472 L509,469 L508,465 L508,462 L510,459 L513,456 L516,453 L519,451 L523,449 L526,447 L531,445 L535,444 L540,445 L545,446 L549,447 L553,448 L557,449 L561,451 L563,454 L565,458 L565,462 L565,465 L565,468 L567,470 L571,472 L576,474 L582,476 L587,480Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M627,480 L631,488 L630,495 L625,502 L617,507 L609,512 L601,516 L595,520 L589,523 L582,527 L575,529 L568,530 L561,531 L554,531 L547,532 L540,533 L533,534 L526,534 L518,533 L511,532 L504,530 L496,528 L487,527 L477,525 L467,522 L459,517 L455,510 L456,502 L462,493 L471,486 L479,480 L484,475 L485,471 L484,465 L482,459 L481,453 L482,446 L485,440 L490,435 L495,431 L501,426 L508,422 L515,418 L523,415 L531,414 L540,415 L548,416 L556,418 L564,421 L571,423 L578,427 L583,432 L586,439 L587,446 L587,453 L587,458 L590,462 L597,465 L607,469 L618,473 L627,480Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M667,480 L673,491 L672,502 L664,512 L652,520 L640,526 L630,532 L620,538 L611,543 L602,548 L592,551 L581,553 L570,554 L560,555 L550,556 L540,558 L530,559 L519,559 L508,558 L498,555 L488,552 L476,550 L463,548 L448,546 L433,542 L422,535 L416,524 L418,512 L427,499 L439,488 L451,480 L458,473 L460,466 L458,459 L455,450 L453,440 L455,430 L460,422 L467,415 L475,408 L484,402 L493,395 L503,390 L515,386 L527,384 L540,385 L552,387 L564,390 L575,394 L586,397 L596,403 L603,410 L608,420 L609,431 L608,440 L609,448 L613,454 L623,458 L638,463 L654,470 L667,480Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M707,480 L715,495 L713,509 L703,522 L688,533 L672,541 L658,548 L645,556 L634,563 L621,569 L608,574 L594,576 L580,577 L566,578 L553,580 L540,582 L526,584 L512,584 L498,582 L485,579 L471,575 L456,572 L439,570 L419,567 L400,562 L384,552 L377,538 L380,522 L391,505 L407,491 L423,480 L433,471 L435,462 L433,452 L428,440 L426,427 L428,415 L434,404 L444,394 L454,386 L466,377 L478,369 L492,361 L507,356 L523,354 L540,355 L556,358 L571,362 L586,366 L600,371 L613,378 L623,388 L629,401 L630,415 L629,428 L630,438 L636,446 L650,451 L669,458 L690,467 L707,480Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M747,480 L757,498 L755,516 L742,532 L723,545 L704,556 L686,565 L670,574 L656,583 L641,591 L624,596 L606,599 L589,601 L572,602 L556,604 L540,606 L523,609 L506,609 L488,607 L472,603 L455,598 L436,594 L415,591 L390,588 L366,581 L347,569 L338,552 L341,532 L356,511 L376,494 L395,480 L407,469 L410,458 L407,445 L402,431 L399,415 L401,399 L409,386 L420,374 L434,363 L448,353 L463,342 L480,333 L499,326 L519,324 L540,325 L560,329 L579,334 L597,339 L615,345 L631,354 L643,366 L650,382 L652,399 L651,416 L652,428 L659,437 L676,445 L700,453 L726,464 L747,480Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M786,480 L799,502 L796,524 L781,543 L759,558 L735,570 L714,581 L696,592 L678,603 L660,612 L640,619 L619,622 L598,624 L579,625 L559,627 L540,631 L520,634 L499,634 L479,631 L459,626 L438,621 L416,616 L390,613 L361,609 L333,601 L310,586 L299,566 L303,542 L320,517 L344,496 L366,480 L381,467 L385,454 L381,439 L375,421 L371,402 L374,384 L384,367 L397,353 L413,340 L430,328 L448,315 L469,304 L491,296 L515,293 L540,295 L564,299 L586,305 L608,312 L629,319 L648,330 L663,345 L671,363 L673,384 L672,403 L674,418 L683,429 L702,438 L731,448 L762,461 L786,480Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M826,480 L841,505 L838,531 L820,553 L794,570 L767,585 L742,598 L721,610 L701,623 L680,634 L656,641 L632,645 L608,647 L585,649 L563,651 L540,655 L517,658 L492,659 L469,656 L445,650 L422,644 L396,638 L366,635 L332,630 L299,620 L272,604 L260,580 L264,552 L284,523 L312,499 L338,480 L355,464 L360,449 L356,432 L348,412 L344,390 L347,368 L358,349 L374,333 L393,318 L412,303 L434,289 L457,276 L483,267 L511,263 L540,265 L568,270 L594,277 L619,285 L644,293 L666,306 L683,323 L693,344 L695,368 L694,391 L695,408 L706,421 L729,431 L762,442 L797,458 L826,480Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M866,480 L883,509 L879,538 L859,563 L829,583 L798,599 L770,614 L746,628 L723,643 L699,655 L673,664 L645,669 L617,670 L591,672 L566,675 L540,680 L513,683 L486,684 L459,680 L432,674 L405,666 L376,661 L342,656 L303,650 L265,640 L235,621 L221,594 L226,562 L249,530 L280,502 L310,480 L330,462 L335,445 L330,425 L321,402 L317,377 L321,353 L333,331 L351,312 L372,295 L395,279 L419,262 L446,247 L475,237 L508,233 L540,235 L571,241 L601,249 L630,257 L658,267 L683,281 L703,301 L714,325 L717,353 L715,378 L717,398 L729,413 L755,424 L793,437 L833,455 L866,480Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M261,800 L259,802 L259,805 L257,807 L256,809 L254,811 L252,813 L249,814 L247,815 L245,816 L243,817 L240,819 L238,819 L235,820 L233,820 L230,820 L227,821 L224,823 L220,824 L216,825 L212,825 L209,823 L207,820 L207,817 L208,813 L209,810 L209,807 L209,805 L208,804 L206,802 L205,800 L204,798 L204,796 L204,793 L205,791 L205,789 L206,786 L207,784 L209,782 L212,780 L215,779 L218,778 L221,777 L224,776 L227,776 L230,776 L233,777 L236,779 L237,782 L239,784 L240,786 L242,787 L245,787 L249,787 L253,786 L257,787 L261,789 L262,792 L262,795 L262,797 L261,800Z%22 fill=%22none%22 stroke=%22%23B58B55%22 stroke-opacity=%220.26%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M291,800 L289,805 L287,810 L285,814 L282,818 L278,822 L273,825 L268,828 L264,830 L259,832 L255,835 L251,837 L246,839 L241,840 L235,840 L230,841 L224,843 L218,846 L210,848 L202,850 L194,850 L188,846 L184,840 L184,833 L186,826 L188,819 L189,815 L188,811 L185,808 L182,804 L179,800 L178,796 L178,791 L178,787 L180,782 L181,777 L182,772 L185,768 L189,763 L194,760 L199,757 L205,755 L211,754 L217,752 L224,751 L230,751 L236,754 L241,758 L245,763 L248,768 L250,772 L254,774 L259,774 L267,773 L276,773 L285,775 L291,778 L294,783 L295,789 L293,795 L291,800Z%22 fill=%22none%22 stroke=%22%23B58B55%22 stroke-opacity=%220.26%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M322,800 L318,807 L316,815 L312,821 L308,828 L302,833 L295,838 L287,841 L280,845 L274,848 L268,852 L261,856 L254,858 L246,859 L238,860 L230,861 L222,864 L212,868 L200,873 L188,875 L176,875 L167,870 L162,861 L161,850 L164,838 L167,829 L168,822 L167,816 L163,811 L158,806 L154,800 L151,793 L151,787 L153,780 L154,773 L156,766 L159,759 L162,751 L168,745 L175,740 L184,736 L193,733 L202,730 L211,728 L220,727 L230,727 L239,730 L247,737 L252,745 L256,753 L260,758 L265,761 L274,761 L286,760 L300,759 L312,762 L322,767 L327,775 L327,784 L325,792 L322,800Z%22 fill=%22none%22 stroke=%22%23B58B55%22 stroke-opacity=%220.26%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M352,800 L348,810 L344,819 L340,829 L334,837 L326,844 L316,850 L306,855 L297,860 L289,865 L280,870 L271,874 L261,877 L251,879 L241,880 L230,882 L219,886 L206,891 L191,897 L174,901 L158,900 L146,893 L139,881 L138,866 L142,851 L146,839 L148,829 L146,822 L140,815 L134,808 L128,800 L125,791 L125,782 L127,773 L129,764 L132,755 L135,745 L140,735 L147,727 L157,720 L168,715 L180,711 L192,707 L204,704 L217,702 L230,703 L242,707 L252,716 L260,726 L265,737 L270,745 L277,748 L289,748 L305,746 L323,746 L340,749 L352,756 L359,767 L359,778 L356,789 L352,800Z%22 fill=%22none%22 stroke=%22%23B58B55%22 stroke-opacity=%220.26%22 stroke-width=%221.3%22/%3E%3C/svg%3E");
  --g-c3:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%221000%22 height=%221000%22 viewBox=%220 0 1000 1000%22%3E%3Cpath d=%22M514,500 L512,504 L510,507 L509,510 L507,513 L505,516 L502,519 L499,521 L495,522 L492,524 L489,527 L487,530 L484,535 L481,540 L476,544 L470,546 L464,545 L459,541 L455,536 L453,531 L450,527 L448,524 L445,522 L442,520 L438,518 L435,516 L433,513 L432,510 L430,507 L428,504 L426,500 L425,496 L424,492 L425,488 L426,484 L428,481 L431,477 L433,474 L436,470 L440,467 L445,466 L451,466 L457,468 L462,471 L467,474 L470,475 L473,475 L477,472 L482,469 L488,467 L494,466 L500,467 L504,470 L507,473 L509,477 L512,481 L514,484 L515,488 L516,492 L516,496 L514,500Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M548,500 L545,506 L541,512 L538,518 L535,523 L532,528 L527,533 L521,537 L514,540 L509,543 L504,547 L500,554 L495,562 L489,571 L480,578 L470,581 L460,579 L451,573 L444,564 L439,555 L435,548 L431,543 L426,539 L420,536 L414,533 L409,528 L405,523 L402,518 L399,512 L396,506 L392,500 L390,493 L389,486 L390,479 L393,472 L396,466 L401,460 L405,453 L410,447 L417,442 L426,439 L436,440 L447,443 L456,449 L464,454 L470,456 L476,455 L483,451 L492,446 L503,441 L513,440 L523,442 L530,446 L536,453 L540,459 L544,466 L547,472 L550,479 L551,486 L551,493 L548,500Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M583,500 L578,509 L573,517 L568,525 L564,533 L558,541 L551,547 L543,553 L534,557 L526,561 L519,568 L513,577 L506,589 L497,602 L485,612 L470,616 L455,614 L442,605 L433,592 L426,579 L420,569 L414,561 L407,556 L398,552 L389,547 L382,541 L376,533 L372,525 L368,517 L363,509 L359,500 L355,490 L354,480 L355,470 L359,460 L364,451 L370,442 L376,433 L384,424 L394,416 L407,412 L422,413 L437,419 L451,427 L461,434 L470,437 L478,436 L489,430 L502,422 L517,416 L532,414 L546,416 L557,423 L564,432 L570,442 L576,451 L581,460 L585,470 L587,480 L586,490 L583,500Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M617,500 L610,512 L604,523 L598,533 L592,543 L585,553 L576,562 L565,568 L553,574 L543,580 L534,588 L526,601 L517,616 L505,633 L489,646 L470,652 L451,648 L434,637 L421,620 L412,604 L405,590 L397,580 L387,573 L376,568 L365,561 L355,553 L348,543 L342,533 L337,523 L331,512 L325,500 L320,487 L318,474 L320,461 L325,448 L332,436 L340,424 L348,412 L358,400 L371,391 L388,386 L407,387 L427,394 L445,404 L459,414 L470,418 L481,416 L494,408 L511,398 L531,390 L551,387 L569,391 L583,400 L593,411 L601,424 L608,436 L615,448 L620,461 L623,474 L621,487 L617,500Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M651,500 L643,515 L635,528 L628,541 L620,554 L612,566 L601,576 L587,584 L573,591 L559,598 L548,609 L539,624 L528,643 L514,664 L494,680 L470,687 L446,683 L425,668 L410,648 L399,628 L390,611 L380,599 L368,590 L354,583 L340,575 L328,565 L319,554 L313,541 L306,528 L299,514 L291,500 L285,484 L283,468 L285,452 L292,436 L300,422 L310,407 L320,392 L332,377 L348,365 L368,359 L393,361 L417,369 L439,382 L456,394 L470,399 L484,396 L500,387 L521,374 L545,365 L570,361 L592,366 L609,376 L622,391 L631,406 L640,421 L648,436 L655,452 L658,468 L657,484 L651,500Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M685,500 L676,517 L666,533 L657,549 L649,564 L639,578 L626,590 L609,600 L592,608 L576,617 L563,629 L552,647 L539,670 L522,695 L498,714 L470,722 L441,717 L417,700 L398,676 L386,652 L375,631 L364,617 L349,607 L332,599 L316,590 L302,578 L291,564 L283,549 L275,533 L266,517 L257,500 L250,482 L247,462 L250,443 L258,424 L268,407 L279,389 L291,371 L306,354 L325,340 L349,333 L378,335 L407,345 L433,360 L453,373 L470,380 L486,377 L506,365 L531,351 L560,339 L589,335 L615,340 L635,353 L650,370 L662,388 L672,407 L682,424 L690,443 L694,462 L692,481 L685,500Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M719,500 L708,520 L697,539 L687,556 L677,574 L666,590 L650,605 L631,616 L611,626 L593,636 L578,650 L565,671 L550,698 L530,726 L503,748 L470,758 L437,752 L408,732 L387,704 L372,676 L360,652 L347,636 L330,625 L310,615 L291,604 L275,590 L263,574 L253,556 L244,538 L234,520 L223,500 L215,479 L212,456 L215,434 L224,412 L236,392 L249,372 L263,351 L280,331 L302,315 L330,306 L363,308 L397,320 L427,338 L451,353 L470,361 L489,357 L511,344 L540,327 L574,313 L608,309 L638,315 L662,330 L679,349 L692,371 L704,392 L716,412 L725,434 L729,456 L727,478 L719,500Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M754,500 L741,523 L728,544 L717,564 L706,584 L692,603 L675,619 L654,632 L631,643 L610,654 L593,670 L578,694 L561,725 L538,757 L507,782 L470,793 L432,786 L400,764 L376,732 L359,700 L345,673 L330,654 L311,642 L289,631 L267,618 L248,603 L234,584 L223,564 L213,544 L201,523 L190,500 L180,476 L177,450 L180,425 L190,400 L204,377 L219,354 L234,330 L253,308 L279,289 L311,280 L349,282 L387,296 L421,315 L448,333 L470,342 L491,338 L517,323 L550,303 L588,288 L627,282 L661,289 L688,306 L708,329 L723,353 L737,377 L749,400 L760,425 L765,450 L762,475 L754,500Z%22 fill=%22none%22 stroke=%22%23145C59%22 stroke-opacity=%220.2%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M832,220 L834,223 L834,226 L833,228 L830,231 L827,232 L824,234 L821,235 L818,236 L816,238 L813,239 L811,239 L808,239 L805,239 L803,240 L800,240 L797,240 L795,240 L792,240 L789,240 L786,239 L784,238 L781,237 L777,237 L773,236 L770,234 L768,232 L768,228 L769,225 L773,222 L776,220 L778,218 L780,217 L779,215 L779,212 L778,210 L778,207 L779,205 L781,203 L783,201 L785,200 L788,198 L791,197 L794,196 L797,195 L800,195 L803,196 L806,197 L809,198 L812,199 L814,200 L817,202 L818,204 L818,207 L818,209 L818,212 L819,213 L821,215 L824,216 L828,218 L832,220Z%22 fill=%22none%22 stroke=%22%23B58B55%22 stroke-opacity=%220.26%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M864,220 L868,226 L869,232 L865,237 L860,241 L853,245 L847,247 L842,250 L837,253 L832,255 L827,257 L821,258 L816,259 L810,259 L805,259 L800,260 L795,261 L789,261 L784,260 L778,259 L773,257 L767,256 L761,255 L754,253 L746,251 L739,248 L735,243 L735,237 L739,230 L745,225 L752,220 L757,216 L759,213 L759,209 L757,205 L756,200 L756,195 L758,190 L762,186 L766,183 L771,180 L776,176 L781,174 L787,171 L793,170 L800,170 L806,171 L812,173 L818,175 L824,177 L829,180 L833,183 L836,188 L837,193 L837,199 L836,203 L838,207 L842,209 L848,212 L856,215 L864,220Z%22 fill=%22none%22 stroke=%22%23B58B55%22 stroke-opacity=%220.26%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M896,220 L902,229 L903,238 L898,245 L890,252 L880,257 L871,261 L863,265 L855,269 L848,273 L840,276 L832,278 L824,278 L815,278 L808,279 L800,280 L792,281 L784,281 L775,281 L767,279 L759,276 L751,274 L742,272 L730,270 L719,267 L709,262 L703,255 L703,245 L708,236 L718,227 L728,220 L735,215 L739,210 L738,204 L736,197 L734,190 L735,182 L738,175 L743,169 L749,164 L756,159 L764,155 L772,150 L781,147 L790,145 L800,145 L810,147 L819,150 L827,153 L836,156 L843,160 L850,165 L854,172 L855,180 L855,188 L854,195 L856,200 L862,204 L873,208 L885,213 L896,220Z%22 fill=%22none%22 stroke=%22%23B58B55%22 stroke-opacity=%220.26%22 stroke-width=%221.3%22/%3E%3Cpath d=%22M927,220 L936,231 L937,243 L931,254 L919,263 L906,269 L894,275 L883,280 L874,286 L864,291 L854,295 L843,297 L831,297 L821,298 L810,298 L800,300 L789,301 L778,302 L767,301 L756,298 L746,295 L735,292 L722,289 L707,287 L692,283 L679,276 L671,266 L670,254 L678,241 L690,229 L703,220 L713,213 L718,206 L718,199 L715,190 L712,180 L713,169 L717,160 L724,152 L733,146 L742,139 L752,133 L762,127 L774,122 L787,120 L800,121 L813,123 L825,126 L836,130 L848,134 L858,140 L866,147 L872,156 L874,167 L873,178 L873,187 L875,193 L883,198 L897,204 L913,211 L927,220Z%22 fill=%22none%22 stroke=%22%23B58B55%22 stroke-opacity=%220.26%22 stroke-width=%221.3%22/%3E%3C/svg%3E");
  --gt:rgba(150,205,196,.50); --gg:rgba(238,212,170,.55); --gs:rgba(190,215,235,.45); --tintc:rgba(207,229,223,.60);
  --smask:linear-gradient(180deg,transparent 0,#000 26%,#000 74%,transparent 100%);
}
body[data-page="research"]{--gt:rgba(140,200,191,.62);--gg:rgba(238,212,170,.40)}
body[data-page="photography"]{--gg:rgba(238,206,155,.70);--gt:rgba(150,205,196,.38)}
body[data-page="travel"]{--gs:rgba(176,208,232,.65);--gg:rgba(238,212,170,.45)}
body[data-page="contact"],body[data-page="experience"]{--gt:rgba(150,205,196,.45)}
section:not(.ph):not(.hero):not(.stats)::before{
  content:"";display:block;position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(900px 540px at 6% 16%,var(--gt),transparent 70%),radial-gradient(800px 480px at 94% 84%,var(--gg),transparent 70%),radial-gradient(520px 360px at 98% 42%,var(--gs),transparent 70%);
  -webkit-mask-image:var(--smask);mask-image:var(--smask)}
section:not(.ph):not(.hero):not(.stats):nth-of-type(even)::before{
  background:radial-gradient(900px 540px at 94% 16%,var(--gt),transparent 70%),radial-gradient(800px 480px at 6% 84%,var(--gg),transparent 70%),radial-gradient(520px 360px at 2% 42%,var(--gs),transparent 70%)}
section.tint::before{
  background:linear-gradient(var(--tintc),var(--tintc)),radial-gradient(900px 540px at 94% 16%,var(--gt),transparent 70%),radial-gradient(800px 480px at 6% 84%,var(--gg),transparent 70%)}
/* a few light contour lines, only here */
.foi::after,body[data-page="research"] section:nth-of-type(2)::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  -webkit-mask-image:var(--smask);mask-image:var(--smask)}
.foi::after{background:var(--g-c1) right -190px top 20px/880px no-repeat}
body[data-page="research"] section:nth-of-type(2)::after{background:var(--g-c3) left -230px top 10px/880px no-repeat}
/* no dotted patches */
.dots,.vf .dotsq{display:none}
@media (max-width:760px){
  section:not(.ph):not(.hero):not(.stats)::before{background:radial-gradient(460px 320px at 4% 14%,var(--gt),transparent 70%),radial-gradient(420px 300px at 96% 86%,var(--gg),transparent 70%)}
  section:not(.ph):not(.hero):not(.stats):nth-of-type(even)::before{background:radial-gradient(460px 320px at 96% 14%,var(--gt),transparent 70%),radial-gradient(420px 300px at 4% 86%,var(--gg),transparent 70%)}
  section.tint::before{background:linear-gradient(var(--tintc),var(--tintc)),radial-gradient(460px 320px at 96% 14%,var(--gt),transparent 70%)}
  .foi::after,body[data-page="research"] section:nth-of-type(2)::after{background-size:520px;opacity:.7}
}
/* BG-END */

/* footer design */
.foot .fq{display:flex;gap:10px;margin:18px 0 0;padding:14px 16px;max-width:400px;border-radius:16px;background:rgba(255,255,255,.7);border-left:4px solid var(--gold);color:#33434C;font-family:var(--serif);font-style:italic;font-size:.95rem;line-height:1.5;box-shadow:0 10px 24px -18px rgba(20,92,89,.5)}
.foot .fq .ic{flex:none;color:var(--gold);margin-top:3px}
.foot h5{display:block;font-size:.78rem;margin-bottom:20px}
.foot h5::after{content:"";display:block;width:38px;height:3px;border-radius:3px;margin-top:10px;background:linear-gradient(90deg,var(--gold),rgba(181,139,85,0))}
.foot li{margin-bottom:11px}
.foot li a,.foot li .plain{gap:11px}
.foot li .ic{box-sizing:content-box;width:16px;height:16px;padding:7px;border-radius:11px;background:#fff;color:var(--teal);opacity:1;box-shadow:0 6px 12px -8px rgba(20,92,89,.55);transition:.2s}
.foot li a:hover .ic{background:var(--teal);color:#fff}
.foot li a[href^="mailto"]{width:fit-content;padding:4px 16px 4px 4px;border-radius:99px;background:rgba(255,255,255,.75);border:1px solid rgba(181,139,85,.4)}
.foot .bar{border-top:0;position:relative;padding-top:24px}
.foot .bar::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,rgba(20,92,89,0),rgba(20,92,89,.28),rgba(181,139,85,.4),rgba(20,92,89,0))}
.foot .top{background:var(--teal);color:#fff;border-color:var(--teal)}
.foot .top:hover{background:#fff;color:var(--teal)}
@media (max-width:760px){.foot .fq{max-width:none}}

/* page change: soft fade */
@keyframes pgin{from{opacity:0}to{opacity:1}}
body{animation:pgin .5s ease both}
body.pg-out{opacity:0;transition:opacity .2s ease}
@media (prefers-reduced-motion:reduce){body{animation:none}body.pg-out{opacity:1;transition:none}}
.csec,.foi{background:none}

/* ---------- মোবাইল footer: লম্বা এক কলাম ভেঙে কম্প্যাক্ট (v8) ---------- */
@media (max-width:760px){
  .foot{padding:76px 0 22px}
  .foot .g{grid-template-columns:1fr 1fr;gap:26px 14px}
  .foot .g>div:first-child{grid-column:1/-1}
  .foot .g>div:last-child{grid-column:1/-1}
  .foot .g>div:nth-child(2) li a,.foot .g>div:nth-child(3) li a{font-size:.95rem;gap:9px;min-width:0}
  .foot .g>div:nth-child(2) li,.foot .g>div:nth-child(3) li{margin-bottom:10px}
  .foot h5{margin-bottom:16px}
  .foot .g>div:last-child ul{display:flex;flex-wrap:wrap;gap:10px 8px;align-items:center}
  .foot .g>div:last-child li a,.foot .g>div:last-child li .plain{gap:8px;font-size:.9rem}
  .foot .g>div:last-child li{margin:0;max-width:100%}
  .foot .g>div:last-child li a[href^="mailto"]{max-width:100%;overflow-wrap:anywhere}
  .foot .bar{margin-top:32px}
}
@media (max-width:360px){.foot .g{gap:24px 10px}.foot li .ic{padding:6px}.foot li a,.foot li .plain{font-size:.9rem}}

/* v9: ultra-wide screens */
@media (min-width:1500px){.wrap{max-width:1480px;padding:0 48px}.hero .wrap{gap:70px}}

/* v9: popup gallery + badges */
.mgal{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:6px 0 4px}
.mg{position:relative;display:block;padding:0;border:0;background:var(--teal-50);border-radius:16px;overflow:hidden;aspect-ratio:1/1;cursor:zoom-in;box-shadow:0 10px 22px -16px rgba(20,92,89,.55);transition:transform .25s,box-shadow .25s}
.mg img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block;transition:transform .5s}
.mg:hover{transform:translateY(-2px);box-shadow:0 16px 28px -16px rgba(20,92,89,.6)}
.mg:hover img{transform:scale(1.05)}
.bdgs{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 6px}
.bdg{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;font-size:.84rem;font-weight:700;line-height:1.2;background:var(--teal-50);color:var(--teal);border:1px solid var(--teal-100)}
.bdg .ic{font-size:1rem}
.bdg.gold{background:#FBF3E6;color:#8A6535;border-color:#EBD9BA}
.bdg.sky{background:#E8F1F7;color:#2F6A8F;border-color:#CCE0EC}
.bdg.rose{background:#FBEDEC;color:#A24B49;border-color:#F0D3D1}
@media (max-width:760px){.mgal{grid-template-columns:repeat(2,1fr)}}

/* v9: PhD block */
.phd2{position:relative;overflow:hidden;border-radius:30px;padding:44px;background:linear-gradient(135deg,#E3F0ED,#FBF7EE);border:1px solid var(--teal-100);box-shadow:var(--sh)}
.phd2 .cont{position:absolute;inset:auto;right:-230px;top:-250px;width:540px;height:540px;opacity:.28;z-index:0}
.phd2>:not(.cont){position:relative;z-index:1}
.p2t{display:flex;align-items:center;gap:34px;margin-bottom:30px}
.p2pic{flex:none;width:176px;height:176px;border-radius:50%;overflow:hidden;background:#fff;border:6px solid #fff;box-shadow:var(--sh2);display:grid;place-items:center}
.p2pic img{width:100%;height:100%;object-fit:cover;object-position:50% 12%}
.p2pic .arttile{width:100%;height:100%;border-radius:50%}
.p2h h3{font-family:var(--serif);font-weight:600;font-size:clamp(1.55rem,2.8vw,2.2rem);line-height:1.18;margin:8px 0 10px}
.p2h p{color:#44555E;max-width:660px;margin-bottom:18px}
.p2b{display:flex;gap:10px;flex-wrap:wrap}
.p2a{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.p2a .p2c{grid-column:span 2}.p2a .p2c:nth-child(n+4){grid-column:span 3}
.p2c{display:flex;gap:13px;align-items:flex-start;background:rgba(255,255,255,.82);border:1px solid var(--teal-100);border-radius:20px;padding:16px;box-shadow:0 10px 24px -20px rgba(20,92,89,.5)}
.p2c .ib{width:44px;height:44px;font-size:22px;border-radius:14px}
.p2c b{display:block;font-size:.97rem;line-height:1.3;margin-bottom:4px}
.p2c p{margin:0;font-size:.86rem;color:#5B6B73;line-height:1.5;max-width:none}
.p2f{display:flex;align-items:center;gap:30px;margin-top:22px;padding-top:22px;border-top:1px dashed rgba(20,92,89,.25)}
.p2n{display:flex;gap:26px;flex:none}
.p2s b{display:block;font-family:var(--serif);font-size:2rem;line-height:1;color:var(--teal)}
.p2s span{font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#94693A}
.p2k small{display:block;font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#94693A;margin-bottom:8px}
.p2k .tags{gap:7px}
@media (max-width:1000px){.p2a{grid-template-columns:repeat(2,1fr)}.p2a .p2c,.p2a .p2c:nth-child(n+4){grid-column:auto}.p2a .p2c:last-child{grid-column:1/-1}}
@media (max-width:760px){
  .phd2{padding:28px 20px}
  .p2t{flex-direction:column;text-align:center;gap:20px}
  .p2b{justify-content:center}
  .p2a{grid-template-columns:1fr}.p2a .p2c:last-child{grid-column:auto}
  .p2f{flex-direction:column;align-items:flex-start;gap:20px}
  .p2n{gap:22px}
  .p2pic{width:150px;height:150px}
}
.tags.tp{justify-content:center;margin:-6px 0 30px}

/* v9: travel map */
.bdm{display:grid;grid-template-columns:minmax(0,420px) 1fr;gap:44px;align-items:center;justify-content:center;max-width:960px;margin:6px auto 0}
.bdmap{background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:28px;padding:18px;box-shadow:var(--sh)}
.bdmap svg{display:block;width:100%;height:auto}
.bd{fill:#E4EBE7;stroke:#fff;stroke-width:1.4;stroke-linejoin:round}
.bd.on{stroke:#fff;stroke-width:1.6;transition:filter .2s}
.bd.on.gold{fill:#C9A06A}.bd.on.sky{fill:#5C97BC}.bd.on.teal{fill:#2C7F79}.bd.on.soon{fill:#E9DCC3}.bd.on.rose{fill:#CB8C8A}.bd.on.sage{fill:#8DAE80}.bd.on.lav{fill:#9B8FC4}
a.bg{cursor:pointer}
a.bg:hover .bd.on{filter:brightness(.9)}
.bl{font:700 34px var(--sans);fill:#1F2933;paint-order:stroke;stroke:#fff;stroke-width:8px;stroke-linejoin:round;pointer-events:none}
.bdl p{color:var(--mute);margin:0 0 18px}
.bi{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:18px;background:#fff;border:1px solid var(--line);margin-bottom:10px;box-shadow:0 10px 22px -18px rgba(20,92,89,.5);color:inherit}
.bi>span:nth-child(2){flex:1;display:flex;flex-direction:column;line-height:1.3}
.bi b{font-size:1rem}.bi small{color:var(--mute);font-size:.82rem}
.bi .ic{color:var(--teal);font-size:1.2rem}
.bi em{font-style:normal;font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#94693A}
.bi.soon{opacity:.8;box-shadow:none}
.sw{flex:none;width:18px;height:18px;border-radius:6px;background:#2C7F79}
.sw.gold{background:#C9A06A}.sw.sky{background:#5C97BC}.sw.soon{background:#E9DCC3}.sw.teal{background:#2C7F79}.sw.rose{background:#CB8C8A}.sw.sage{background:#8DAE80}.sw.lav{background:#9B8FC4}
.bdl .src{display:block;margin-top:14px;color:var(--mute);font-size:.74rem}
.bdnote{margin-top:26px;color:var(--mute);font-size:.9rem}
.bdnote a{color:var(--teal);font-weight:700}
@media (max-width:860px){.bdm{grid-template-columns:1fr;gap:26px;max-width:480px}.bdmap{padding:12px}}

/* conference group cards */
.conf.cg h3{font-size:1.18rem}
.conf.cg .cmeta{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--mute);font-size:.84rem;font-weight:600}
.conf.cg .cmeta span{display:inline-flex;align-items:center;gap:6px}
.conf.cg .cmeta .ic{color:var(--gold)}
.conf .ribbon{position:static;font-size:.72rem}
@media (min-width:761px){.cards.c2>.org:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 12px);justify-self:center}}
