:root{--primary:#C1121F;--grad:linear-gradient(135deg,#FF6B7A,#C1121F);--paper:#FDF9F6;--card:#fff;--ink:#2B1A1D;--muted:#7A6468;--line:#EBDCD8;--soft:#FFF3F0;--ok:#1B7A4A;--err:#D32F2F;--wine:#3D0912;--r:18px;--sh:0 4px 18px rgba(61,9,18,.06);--sh-lg:0 18px 44px rgba(193,18,31,.15)}
@media(prefers-color-scheme:dark){:root{--paper:#0F0809;--card:#1A1115;--ink:#F4E9E7;--muted:#BA9EA1;--line:#3E2A2E;--soft:#2E181C;--wine:#2A060D;--sh:0 4px 18px rgba(0,0,0,.35)}}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Hind Siliguri',sans-serif;background:var(--paper);color:var(--ink);line-height:1.65}
a{color:var(--primary)}
header{position:sticky;top:0;z-index:50;background:var(--wine);padding:.7rem 1.1rem;box-shadow:0 2px 12px rgba(0,0,0,.2)}
.nav{max-width:1200px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:.6rem}
.brand{display:flex;align-items:center;gap:.4rem;text-decoration:none}
.logo-mark{width:36px;height:36px;filter:drop-shadow(0 3px 8px rgba(255,107,122,.45))}
.logo-txt{display:flex;flex-direction:column;line-height:1}
.logo-txt b{font-family:'Tiro Bangla',serif;font-size:1.35rem;color:#fff}
.logo-txt small{font-size:.55rem;font-weight:700;letter-spacing:.22em;color:#FF97A0;margin-top:.2rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:none;cursor:pointer;font-weight:700;padding:.6rem 1.2rem;border-radius:99px;text-decoration:none;font-size:.92rem;font-family:inherit;transition:.2s}
.btn-primary{background:var(--grad);color:#fff;box-shadow:0 6px 18px rgba(225,29,72,.3)}
.btn-ghost{background:transparent;color:var(--primary);border:2px solid var(--primary)}
.btn-wa{background:#25D366;color:#fff}.btn-fb{background:#1877F2;color:#fff}
.btn-outline{color:#fff;border:2px solid #fff;padding:.45rem 1rem}
.hero{background:radial-gradient(800px 400px at 85% -10%,rgba(255,107,122,.22),transparent),linear-gradient(135deg,#3D0912,#5A0E1B 60%,#2A0609);color:#fff;padding:2.4rem 1.2rem 2.6rem}
.hero-in{max-width:1200px;margin:auto}
.crumb{font-size:.85rem;opacity:.85;margin-bottom:.9rem}.crumb a{color:#FFD3D8;text-decoration:none}
.hero h1{font-family:'Tiro Bangla',serif;font-size:clamp(1.8rem,5vw,2.8rem);line-height:1.25;margin-bottom:.6rem}
.hero h1 em{font-style:normal;color:#FF97A0}
.hero p{max-width:720px;opacity:.93}
.stats{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.4rem}
.stats div{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:.55rem 1.1rem;display:flex;flex-direction:column}
.stats b{font-family:'Tiro Bangla',serif;font-size:1.35rem;line-height:1.2}.stats span{font-size:.78rem;opacity:.85}
section{max-width:1200px;margin:auto;padding:2.4rem 1.2rem}
h2{font-family:'Tiro Bangla',serif;font-size:1.6rem;margin-bottom:.4rem}
.sub{color:var(--muted);font-size:.93rem;margin-bottom:1.2rem;display:block}
.filters{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:1.2rem}
.chip{border:1.5px solid var(--line);background:var(--card);color:var(--ink);border-radius:99px;padding:.35rem .85rem;font-weight:800;cursor:pointer;font-family:inherit;font-size:.9rem}
.chip.active{background:var(--grad);color:#fff;border-color:transparent}
select{padding:.55rem .9rem;border:1.5px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);font-family:inherit;font-size:.95rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.1rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1.2rem;box-shadow:var(--sh);display:flex;flex-direction:column;gap:.7rem}
.top{display:flex;gap:.8rem;align-items:flex-start}
.badge{min-width:48px;height:48px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--grad);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0}
.badge span{transform:rotate(45deg);font-size:.85rem}
.card h3{font-size:1.05rem}.meta{font-size:.85rem;color:var(--muted)}
.avail{font-size:.78rem;font-weight:700;padding:.2rem .75rem;border-radius:99px;width:fit-content}
.avail.yes{background:rgba(5,150,105,.12);color:var(--ok)}.avail.no{background:rgba(220,38,38,.12);color:var(--err)}
.acts{display:flex;gap:.45rem;flex-wrap:wrap}.acts .btn{flex:1 1 45%;font-size:.83rem;padding:.45rem .4rem}
.empty{grid-column:1/-1;text-align:center;color:var(--muted);padding:2rem;border:2px dashed var(--line);border-radius:var(--r);background:var(--card)}
.req{border-left:5px solid var(--primary)}
.pills a,.pills span{display:inline-block;margin:.25rem .3rem 0 0;padding:.2rem .75rem;border-radius:99px;background:var(--soft);color:var(--primary);font-weight:700;font-size:.86rem;text-decoration:none;cursor:pointer}
.pills a:hover,.pills span:hover{background:var(--primary);color:#fff}
.faq{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:.85rem 1.1rem;margin-bottom:.6rem}
.faq summary{cursor:pointer;font-weight:700}.faq p{margin-top:.5rem;color:var(--muted);font-size:.93rem}
.cta{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1.4rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:center;justify-content:space-between;box-shadow:var(--sh)}
footer{background:var(--wine);color:#F4E9E7;margin-top:2rem;border-top:4px solid var(--primary);padding:1.6rem 1.2rem;text-align:center;font-size:.9rem}
footer a{color:#FFD3D8}
@media(max-width:520px){.logo-txt small{display:none}.btn-outline{font-size:.8rem;padding:.4rem .7rem}}
