
:root{--brand:#b1005d;--brand-d:#8a0047;--gold:#f5a623;--navy:#2b1442;--ink:#3a3340;--soft:#fdf2f8;--line:#f0d4e3}
*{scroll-behavior:smooth}
body{font-family:'Poppins','Noto Sans Devanagari',sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}
.mr{font-family:'Noto Sans Devanagari','Poppins',sans-serif}
h1,h2,h3,.serif{font-family:'Playfair Display','Noto Sans Devanagari',serif}
a{color:var(--brand-d)}
.utility{background:var(--navy);color:#e5dcf0;font-size:.82rem}
.utility a{color:#fff;text-decoration:none}.utility a:hover{color:var(--gold)}.utility i{color:var(--gold)}
.brandbar{background:#fff;border-bottom:1px solid var(--line)}
.brandbar .logo{height:84px;width:auto}
.brand-txt{line-height:1.3}
.brand-txt small{display:block;color:var(--brand-d);font-size:.9rem;font-weight:500}
.brand-txt b{display:block;color:var(--brand);font-size:clamp(1.05rem,2.4vw,1.6rem);font-weight:700}
.brand-txt .ph{color:var(--ink);font-size:.85rem;margin-top:.15rem}
.site-nav{background:linear-gradient(90deg,var(--brand-d),var(--brand));box-shadow:0 6px 18px rgba(43,20,66,.18);position:sticky;top:0;z-index:1030}
.site-nav .nav-link{color:#fff;font-weight:500;font-size:.92rem;padding:.85rem .85rem!important;position:relative;white-space:nowrap}
.site-nav .nav-link:after{content:"";position:absolute;left:.85rem;right:.85rem;bottom:6px;height:3px;border-radius:3px;background:var(--gold);transform:scaleX(0);transition:.25s}
.site-nav .nav-link:hover:after,.site-nav .nav-link.active:after{transform:scaleX(1)}
.site-nav .nav-link.active,.site-nav .nav-link:hover{color:#fff}
.navbar-toggler:focus{box-shadow:none}
.dropdown-menu{border:0;border-radius:14px;box-shadow:0 14px 34px rgba(43,20,66,.18)}
.dropdown-item:hover{background:var(--soft);color:var(--brand-d)}
.btn-brand{background:linear-gradient(135deg,var(--brand),#e0368a);color:#fff!important;border:0;border-radius:50px;padding:.55rem 1.4rem;font-weight:600;box-shadow:0 8px 20px rgba(177,0,93,.3);transition:.25s}
.btn-brand:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(177,0,93,.4)}
.btn-ghost{border:2px solid #fff;color:#fff;border-radius:50px;padding:.55rem 1.4rem;font-weight:600;background:transparent}
.btn-ghost:hover{background:#fff;color:var(--navy)}
.btn-outline-brand{border:2px solid var(--brand);color:var(--brand-d);border-radius:50px;padding:.5rem 1.3rem;font-weight:600}
.btn-outline-brand:hover{background:var(--brand);color:#fff}
.hero{position:relative;background:radial-gradient(1100px 480px at 85% -10%,rgba(245,166,35,.28),transparent),linear-gradient(135deg,#2b1442 0%,#51205f 55%,#8a0047 100%);color:#fff;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Ccircle cx='30' cy='30' r='1.6' fill='white' fill-opacity='.08'/%3E%3C/svg%3E")}
.hero .container{position:relative}
.eyebrow{display:inline-block;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);padding:.35rem 1rem;border-radius:50px;font-size:.82rem}
.hero h1{font-size:clamp(1.7rem,3.6vw,2.7rem);font-weight:700;line-height:1.35}
.hero h1 span{color:var(--gold)}
.frame{border-radius:26px;overflow:hidden;box-shadow:0 25px 60px rgba(0,0,0,.45);border:6px solid rgba(255,255,255,.92);background:#111}
.frame .carousel-item{height:clamp(240px,38vw,400px);position:relative;overflow:hidden;background:#111}
.frame .carousel-item img{position:absolute;left:0;top:0;width:100%;height:100%}
.frame img.bgb{object-fit:cover;filter:blur(20px) brightness(.6);transform:scale(1.15)}
.frame img.fg{object-fit:contain}
.wave{display:block;width:100%;height:60px;margin-top:-1px}
.kicker{color:var(--brand-d);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}
.sec-title{font-weight:700;color:var(--navy);margin-bottom:1rem}
.sec-title.line:after{content:"";display:block;width:64px;height:4px;border-radius:3px;background:linear-gradient(90deg,var(--brand),var(--gold));margin-top:.7rem}
.sec-title.line.center:after{margin-left:auto;margin-right:auto}
.bg-soft{background:var(--soft)}
.qcard{display:block;text-decoration:none;color:var(--ink);background:#fff;border-radius:20px;padding:1.6rem 1.2rem;box-shadow:0 10px 30px rgba(43,20,66,.1);height:100%;text-align:center;transition:.3s;border-bottom:4px solid transparent}
.qcard:hover{transform:translateY(-7px);border-bottom-color:var(--brand);box-shadow:0 18px 40px rgba(43,20,66,.18);color:var(--ink)}
.qcard .ic{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--gold));color:#fff;font-size:1.6rem;display:flex;align-items:center;justify-content:center;margin:0 auto .9rem}
.qcard h3{font-size:1.1rem;color:var(--navy);margin:0}
.vision{position:relative;background:#fff;border-radius:24px;box-shadow:0 14px 40px rgba(43,20,66,.12);padding:2rem 2rem 1.4rem;border-left:6px solid var(--brand)}
.vision p{text-align:justify}
.phead{background:linear-gradient(135deg,rgba(43,20,66,.97),rgba(138,0,71,.93));color:#fff;padding:3rem 0 3.4rem;position:relative;overflow:hidden}
.phead:after{content:"";position:absolute;right:-60px;bottom:-90px;width:260px;height:260px;border-radius:50%;background:rgba(245,166,35,.2)}
.phead h1{font-weight:700;font-size:clamp(1.8rem,4vw,2.6rem)}
.phead .breadcrumb{--bs-breadcrumb-divider-color:#ffd9a0;--bs-breadcrumb-item-active-color:#ffd9a0;margin:0}
.phead .breadcrumb a{color:#fff;text-decoration:none}
.docimg{display:block;max-width:880px;margin:0 auto;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 18px 48px rgba(43,20,66,.2);border:1px solid var(--line);position:relative}
.docimg img{width:100%;height:auto;display:block}
.docimg:after{content:"\F52A";font-family:bootstrap-icons;position:absolute;right:14px;top:14px;width:42px;height:42px;border-radius:50%;background:rgba(43,20,66,.8);color:#fff;display:flex;align-items:center;justify-content:center}
.masonry{column-count:3;column-gap:16px}
@media(max-width:991px){.masonry{column-count:2}}@media(max-width:520px){.masonry{column-count:1}}
.masonry a{display:block;margin-bottom:16px;border-radius:14px;overflow:hidden;position:relative;box-shadow:0 5px 18px rgba(43,20,66,.15);break-inside:avoid}
.masonry img{width:100%;display:block;transition:.4s}
.masonry a:after{content:"\F52A";font-family:bootstrap-icons;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;background:linear-gradient(180deg,rgba(43,20,66,.05),rgba(43,20,66,.65));opacity:0;transition:.3s}
.masonry a:hover:after{opacity:1}.masonry a:hover img{transform:scale(1.06)}
.about-card{background:#fff;border-radius:24px;box-shadow:0 14px 40px rgba(43,20,66,.12);padding:2.2rem}
.about-card p{text-align:justify}
.fac-wrap{background:#fff;border-radius:20px;box-shadow:0 12px 34px rgba(43,20,66,.12);overflow:hidden}
.fac-wrap table{margin:0;font-size:.9rem}
.fac-wrap thead th{background:var(--navy);color:#fff;font-weight:600;white-space:nowrap;position:sticky;top:0}
.fac-wrap tbody tr:nth-child(even){background:var(--soft)}
.fac-wrap tbody tr:hover{background:#fbe0ee}
.tbl-scroll{max-height:75vh;overflow:auto}
.chip{display:inline-block;background:var(--soft);color:var(--brand-d);border-radius:50px;padding:.15rem .7rem;font-size:.78rem;font-weight:600}
footer{background:var(--navy);color:#d9cfe6}
footer h5{color:#fff;font-family:'Playfair Display',serif}
footer a{color:#d9cfe6;text-decoration:none}footer a:hover{color:var(--gold)}
footer ul{list-style:none;padding:0;margin:0}footer li{margin-bottom:.45rem}footer i{color:var(--gold)}
.to-top{position:fixed;right:18px;bottom:18px;width:46px;height:46px;border-radius:50%;background:var(--brand);color:#fff;border:0;display:none;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 8px 20px rgba(0,0,0,.3);z-index:1040}
@media(max-width:991px){.site-nav .nav-link:after{display:none}.site-nav .nav-link{padding:.6rem .5rem!important}.brandbar .logo{height:64px}}
