
:root{--g:#0d5b4d;--gd:#063c33;--gold:#d7aa50;--ink:#17231f;--muted:#70817a;--soft:#f3f7f5;--line:#dfeae6}*{box-sizing:border-box}body{font-family:system-ui,-apple-system,"Segoe UI","Noto Sans Bengali",sans-serif;color:var(--ink);background:#fff}a{text-decoration:none}.top{background:#072f28;color:#e8f4f0;font-size:14px}.navbar{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.logo{width:54px;height:54px;object-fit:contain}.brand{font-size:15px;line-height:1.2;font-weight:850;color:#17322b}.nav-link{font-size:14px;font-weight:650;color:#34453f!important;border-radius:9px;padding:.65rem .7rem!important}.nav-link:hover,.nav-link.active{background:#eaf5f1;color:var(--g)!important}
.hero{min-height:420px;display:flex;align-items:center;color:white;background:linear-gradient(90deg,rgba(3,42,35,.96),rgba(6,73,59,.66)),url("../images/photo-954f575fc925.jpg") center/cover}.hero .caption{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:850;letter-spacing:1.2px;text-transform:uppercase}.hero .caption:before{content:"";width:34px;height:2px;background:var(--gold)}.hero h1{font-size:clamp(40px,5vw,64px);font-weight:900;margin:12px 0}.hero p{max-width:790px;font-size:18px;line-height:1.75;color:#dcebe6}.crumb{font-size:13px;color:#c7dbd5;margin-top:24px}
.section{padding:78px 0}.eyebrow{color:var(--g);font-size:12px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase}.title{font-size:clamp(30px,4vw,44px);font-weight:900}.muted{color:var(--muted)}
.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:#fff;color:#5b6e67;padding:9px 15px;border-radius:999px;font-size:12px;font-weight:800}.filter.active,.filter:hover{background:var(--g);color:#fff;border-color:var(--g)}
.album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.album{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;cursor:pointer;transition:.28s}.album:hover{transform:translateY(-7px);box-shadow:0 22px 50px rgba(7,66,54,.13)}.cover{height:285px;background-size:cover;background-position:center;position:relative;overflow:hidden}.cover:after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.08);opacity:0;transition:.25s}.album:hover .cover:after{opacity:1}.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,31,26,.05) 35%,rgba(3,43,35,.84))}.tag,.photo-count,.view-album{position:absolute;z-index:2}.tag{top:17px;left:17px;background:rgba(255,255,255,.94);color:var(--g);padding:7px 10px;border-radius:999px;font-size:10px;font-weight:900}.photo-count{right:17px;top:17px;color:#fff;background:rgba(4,49,40,.68);padding:7px 10px;border-radius:999px;font-size:10px;font-weight:850}.view-album{left:19px;bottom:18px;color:#fff;font-size:12px;font-weight:850}.view-album b{font-size:17px;margin-left:5px}.album-body{padding:20px 21px 22px}.album-body .date{font-size:11px;color:var(--g);font-weight:800}.album-body h3{font-size:19px;font-weight:900;margin:6px 0 8px}.album-body p{font-size:13px;color:var(--muted);margin:0;line-height:1.6}
.share{min-height:355px;border-radius:29px;padding:44px;display:flex;align-items:end;color:#fff;background:linear-gradient(180deg,rgba(3,43,35,.1),rgba(3,46,38,.94)),url("../images/photo-2767e38bd04a.jpg") center/cover}.share h2{font-weight:900}.share p{max-width:790px;color:#d8e8e3;line-height:1.75}.white-pill{display:inline-block;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.13);padding:7px 11px;border-radius:999px;font-size:11px;font-weight:850}
.viewer{position:fixed;inset:0;z-index:3000;background:#f4f8f6;display:none;overflow:auto}.viewer.open{display:block}.viewer-hero{min-height:330px;display:flex;align-items:end;color:#fff;background-size:cover;background-position:center;position:relative}.viewer-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,27,23,.18),rgba(3,45,37,.93))}.viewer-hero .container{position:relative;padding-bottom:38px}.back{position:absolute;top:25px;left:calc((100% - 1140px)/2 + 12px);z-index:3;border:1px solid rgba(255,255,255,.28);background:rgba(4,45,37,.72);color:#fff;border-radius:999px;padding:10px 16px;font-weight:800}.viewer-kicker{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#c9ddd7;font-weight:850}.viewer-hero h2{font-size:clamp(30px,4vw,48px);font-weight:900;margin:7px 0}.viewer-meta{color:#d5e5e0;font-size:13px}.album-intro{padding:30px 0 12px}.album-intro h3{font-weight:900}.folder-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:280px;gap:16px;padding:15px 0 70px}.folder-photo{border:0;border-radius:18px;background-size:cover;background-position:center;position:relative;overflow:hidden;transition:.25s}.folder-photo:first-child{grid-column:span 2;grid-row:span 2}.folder-photo:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(8,58,49,.15)}.folder-photo:after{content:"View Photo ↗";position:absolute;right:14px;bottom:14px;background:rgba(4,48,40,.82);color:#fff;padding:7px 10px;border-radius:9px;font-size:10px;font-weight:850}
.lightbox{position:fixed;inset:0;z-index:4000;background:rgba(2,17,14,.96);display:none;align-items:center;justify-content:center;padding:28px}.lightbox.open{display:flex}.lbimg{max-width:90vw;max-height:82vh;object-fit:contain;border-radius:14px;box-shadow:0 25px 70px rgba(0,0,0,.35)}.navbtn,.xbtn{position:absolute;border:0;background:rgba(255,255,255,.94);color:#17322b;width:48px;height:48px;border-radius:50%;font-size:24px;font-weight:900}.prev{left:26px}.next{right:26px}.xbtn{right:26px;top:25px;font-size:19px}
footer{background:#072c26;color:#afc3bd;padding-top:56px}.ft{color:#fff;font-weight:850}.fl{display:block;color:#b9cbc6;margin:.5rem 0}.fl:hover{color:#fff}.bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:34px;padding:21px 0;font-size:13px}
@media(max-width:1199px){.back{left:20px}}@media(max-width:991px){.album-grid,.folder-grid{grid-template-columns:repeat(2,1fr)}.folder-photo:first-child{grid-column:span 2}}@media(max-width:575px){.section{padding:58px 0}.album-grid,.folder-grid{grid-template-columns:1fr}.folder-photo:first-child{grid-column:span 1;grid-row:span 1}.cover,.folder-photo{height:255px}.share{padding:28px}.viewer-hero{min-height:300px}.prev{left:8px}.next{right:8px}}
