/* Events Pro — additive styles, only used by events.html + event-*.html */
.ep-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:0 0 1.2rem}
.ep-stat{background:linear-gradient(135deg,var(--blush),#fff);border:1px solid #f1d5e0;border-radius:14px;padding:.7rem 1rem;text-align:center}
.ep-stat b{display:block;font:700 1.5rem "Playfair Display",serif;color:var(--pink);line-height:1.1}
.ep-stat span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--deep)}
.ep-feature{position:relative;display:block;border-radius:18px;overflow:hidden;min-height:300px;margin-bottom:1.2rem;color:#fff;text-decoration:none;box-shadow:0 14px 34px rgba(122,15,69,.22)}
.ep-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.ep-feature:hover img{transform:scale(1.04)}
.ep-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(122,15,69,.92),rgba(122,15,69,.35) 60%,transparent)}
.ep-feature .ep-fb{position:relative;z-index:2;padding:2rem;max-width:560px;display:flex;flex-direction:column;justify-content:flex-end;min-height:300px}
.ep-feature .ep-fb h2{font-size:1.7rem;margin:.4rem 0}.ep-feature .ep-fb p{font-size:.92rem;opacity:.92;margin-bottom:.8rem}
.ep-tag{display:inline-block;background:var(--gold);color:#3a1b2b;border-radius:50px;padding:.1rem .7rem;font-size:.72rem;font-weight:600;width:max-content}
.ep-bar{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-bottom:1rem}
.ep-bar select{width:auto;border-radius:50px;font-size:.82rem}
.ep-view{margin-left:auto;display:flex;gap:.3rem}
.ep-view button{border:1px solid #f1d5e0;background:#fff;border-radius:8px;width:34px;height:34px;color:var(--deep)}
.ep-view button.on{background:var(--pink);color:#fff;border-color:var(--pink)}
.ep-count{font-size:.85rem;color:var(--deep);margin-bottom:.8rem}
#evgrid.feed{gap:1.1rem}
#evgrid .post{transition:transform .25s,box-shadow .25s}
#evgrid .post:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(122,15,69,.18)}
.post .ep-quick{border:0;background:var(--blush);color:var(--deep);border-radius:50px;padding:.25rem .8rem;font-size:.8rem}
.post .ep-quick:hover{background:var(--pink);color:#fff}
#evgrid.ep-list{display:flex;flex-direction:column}
#evgrid.ep-list .post{display:grid;grid-template-columns:220px 1fr;align-items:stretch}
#evgrid.ep-list .post-h{display:none}
#evgrid.ep-list .post-img{grid-row:1/3}#evgrid.ep-list .post-img img{height:100%;max-height:none}
#evgrid.ep-list .post-f{grid-column:2}
.ep-modal .modal-content{border-radius:18px;overflow:hidden;border:0}
.ep-modal .ep-mh{padding:1.2rem 1.5rem;background:linear-gradient(135deg,var(--deep),var(--pink));color:#fff}
.ep-modal .ep-mh h5{font-family:"Noto Serif Telugu","Playfair Display",serif;margin:0 0 .2rem}
.ep-modal .ep-mb{padding:1.2rem 1.5rem;max-height:62vh;overflow:auto}
.ep-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-top:1rem}
.ep-gal img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;cursor:zoom-in}
/* detail pages */
.ep-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:.2rem 0 1.2rem}
.ep-facts span{background:var(--blush);border:1px solid #f1d5e0;border-radius:50px;padding:.25rem .85rem;font-size:.82rem;color:var(--deep)}
.ep-gh{display:flex;justify-content:space-between;align-items:baseline;margin:1.4rem 0 .6rem}
.ep-gh h4{margin:0;font-size:1.25rem}.ep-gh small{color:var(--deep)}
.ev-gallery{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;grid-auto-flow:dense}
.ev-gallery a.ep-wide{grid-column:span 2}
.ep-lb{position:fixed;inset:0;background:rgba(30,5,18,.94);z-index:2000;display:none;align-items:center;justify-content:center}
.ep-lb.on{display:flex}.ep-lb img{max-width:92vw;max-height:84vh;border-radius:8px}
.ep-lb button{position:absolute;border:0;background:rgba(255,255,255,.15);color:#fff;border-radius:50%;width:44px;height:44px;font-size:1.3rem}
.ep-lb .x{top:16px;right:16px}.ep-lb .p{left:16px;top:50%}.ep-lb .n{right:16px;top:50%}
.ep-lb small{position:absolute;bottom:18px;color:#fff;opacity:.8}
@media(max-width:767px){.ep-stats{grid-template-columns:repeat(2,1fr)}.ep-feature .ep-fb{padding:1.2rem}#evgrid.ep-list .post{grid-template-columns:1fr}.ep-view{margin-left:0}}
.ep-ctx{background:linear-gradient(135deg,#fff,var(--blush));border:1px solid #f1d5e0;border-left:4px solid var(--pink);border-radius:14px;padding:1rem 1.2rem;margin:1.2rem 0}
.ep-ctx h5{font-size:1.05rem;color:var(--deep);margin-bottom:.5rem}
.ep-ctx p{font-size:.92rem;line-height:1.65;margin-bottom:.5rem}
.ep-src{font-size:.78rem}.ep-src a{color:var(--pink)}

/* ===== v2: tight, uniform layout (no gaps) ===== */
/* listing */
.page-head{padding:6.5rem 0 1.4rem}
.page-head .display-4{font-size:clamp(1.8rem,4vw,2.5rem);margin-bottom:.2rem}
section.pt-5{padding-top:1.4rem!important}
.ep-stats{margin-bottom:.8rem;gap:.6rem}
.ep-feature,.ep-feature .ep-fb{min-height:240px}.ep-feature{margin-bottom:.8rem}
.toolbar{margin-bottom:.7rem}
.ep-bar{margin-bottom:.6rem}.ep-count{margin-bottom:.6rem}
#evgrid.feed{columns:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:0}
#evgrid .post{margin:0;display:flex;flex-direction:column;height:100%}
#evgrid .post-img{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:#fbeaf1}
#evgrid .post-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
#evgrid .post:hover .post-img img{transform:scale(1.05)}
#evgrid .post-b{flex:1;padding:.7rem 1rem .3rem}
#evgrid .post-b h3{font-size:1.05rem;margin:0 0 .3rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#evgrid .post-t{font-size:.85rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
#evgrid .post-t p{margin:0 0 .2rem}
#evgrid .post-h{padding:.55rem 1rem}
#evgrid .post-f{padding:.6rem 1rem .8rem;display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
#evgrid .post-f .post-share{margin-left:auto}
#evgrid.ep-list{display:flex;flex-direction:column;gap:12px}
#evgrid.ep-list .post{display:grid;grid-template-columns:240px 1fr;height:auto}
#evgrid.ep-list .post-img{aspect-ratio:auto;min-height:150px}
/* detail banner */
.dhero{padding:7.5rem 0 2.2rem;min-height:330px;display:flex;align-items:flex-end}
.dhero.has-banner::before{inset:0;filter:brightness(.8) saturate(1.1);transform:none}
.dhero.has-banner::after{background:linear-gradient(to top,rgba(60,5,35,.92),rgba(122,15,69,.25) 70%,rgba(0,0,0,.15))}
.dhero .container{width:100%}
.dhero h1{margin:.5rem 0 .6rem}
.ev-detail{padding-top:1.4rem!important;padding-bottom:1.2rem}
.ev-detail .row.g-5{--bs-gutter-y:1.2rem;--bs-gutter-x:1.5rem}
.ev-detail .ev-main{margin-bottom:.8rem!important}
.ev-detail .mt-5{margin-top:1.2rem!important}.ev-detail h4.mt-5{margin-top:1.2rem!important;margin-bottom:.6rem!important}
.ep-ctx{margin:.8rem 0}.ep-gh{margin:.9rem 0 .5rem}.ep-facts{margin-bottom:.8rem}
.ev-gallery.mt-4{margin-top:.6rem!important}
@media(max-width:767px){.dhero{min-height:260px;padding-top:6rem}#evgrid.feed{grid-template-columns:1fr}#evgrid.ep-list .post{grid-template-columns:1fr}}

/* ===== v3: shorter images, never cropped ===== */
#evgrid .post-img{aspect-ratio:auto;height:190px;display:flex;align-items:center;justify-content:center;background:#fbeaf1}
#evgrid .post-img img{width:100%;height:100%;object-fit:contain}
#evgrid.ep-list .post-img{height:160px;min-height:0}
.ep-feature,.ep-feature .ep-fb{min-height:200px}
.ev-main{max-height:380px}
.ev-gallery a{aspect-ratio:4/3;background:#fbeaf1}
.ev-gallery img{object-fit:contain}
.ev-gallery a.ep-wide{grid-column:auto}
.dhero{min-height:260px}
.ep-gal img{object-fit:contain;background:#fbeaf1}

/* ===== v4: veena banner on every event, veena placeholder where no photo ===== */
.dhero,.dhero.has-banner{background:linear-gradient(to right,rgba(92,11,56,.78),rgba(122,15,69,.45) 55%,rgba(122,15,69,.25)),url(../images/hero-veena.jpg) center/cover;min-height:0;padding:7.5rem 0 2rem;display:block}
.dhero::before,.dhero::after,.dhero.has-banner::before,.dhero.has-banner::after{display:none}
.dhero h1,.dhero .back,.dhero .meta{text-shadow:0 2px 14px rgba(60,5,35,.7)}
img.ep-ph{object-fit:cover!important;background:#7a0f45}
#evgrid .post-img img.ep-ph{object-fit:cover!important}
.ev-gallery a.ep-slot{cursor:default;background:#7a0f45}
.ev-gallery a.ep-slot img{object-fit:cover;opacity:.9}
.ev-gallery a.ep-slot:hover img{transform:none}
