:root {
    --brand-red: #b80d12;
    --brand-red-dark: #8f0a0e;
    --brand-gold: #d9b16f;
    --brand-ink: #182230;
    --brand-muted: #6b7280;
    --brand-bg: #f6f8fb;
    --brand-card: #ffffff;
    --brand-border: #e6e9ef;
    --brand-shadow: 0 10px 30px rgba(13,25,44,.08);
    --brand-radius: 18px
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth
}

body {
    font-family: Inter,"Segoe UI",Roboto,Arial,sans-serif;
    color: var(--brand-ink);
    background: #fff
}

a {
    transition: .2s ease
}

.topbar {
    background: linear-gradient(90deg,var(--brand-red),var(--brand-red));
    color: #fff;
    font-size: .92rem
}

.topbar a {
    color: #fff;
    text-decoration: none;
    opacity: .95
}

.topbar a:hover {
    opacity: 1;
    text-decoration: underline
}

.header-main {
    background: #fff;
    box-shadow: 0 2px 18px rgba(0,0,0,.06);
    position: sticky;
    top: 0;
    z-index: 1035
}
.leader-box {
  max-width: 100px;
}

.leader-img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  border: 2px solid #fff;
  box-shadow: 0 4px 7px rgb(0 0 0 / 86%);
}

.leader-name {
  font-size: 9px;
  font-weight: bold;
  margin-top: 5px;
  color: #a7070c;
  text-shadow: 0 0 5px #ffffff59, 0 0 10px #ffffff75, 0 0 15px #000000;
  -webkit-transition: all .2s ease;
}

.leader-title {
  font-size: 9px;
  color: #181817;
  text-shadow: 0 0 5px #ffc107, 0 0 10px #ffc107, 0 0 15px #000000fc;
  font-weight: bold;
}

.brand-mark {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(145deg,#fff 0%,#f4f5f7 100%);
    border: 1px solid #eceff3;
    box-shadow: 0 4px 16px rgba(0,0,0,.08);
    font-size: 1.25rem;
    color: var(--brand-red);
    font-weight: 900;
    letter-spacing: .08em;
    position: relative;
    overflow: hidden
}

.brand-mark::before {
    content: "";
    position: absolute;
    inset: 8px;
    border-radius: 50%;
    border: 2px solid rgba(184,13,18,.14)
}

.brand-mark span {
    position: relative;
    z-index: 1
}

.brand-title {
    font-weight: 800;
    letter-spacing: .01em;
    line-height: 1.08;
    font-size: 1rem;
}

.brand-subtitle {
    font-size: .82rem;
    color: var(--brand-muted)
}

.mini-address {
    font-size: .88rem;
    color: #4b5563
}

.navbar-main .nav-link {
   color: #000000;
    font-weight: 500;
    padding: 0rem .85rem !important;
    font-family: arial;
    font-size: 15px;
}

.navbar-main .nav-link:hover,.navbar-main .nav-link:focus {
    color: var(--brand-red)
}

.mega-dropdown {
    min-width: 1020px;
    border: none;
    border-radius: 0 0 18px 18px;
    box-shadow: 0 20px 60px rgba(0,0,0,.14);
    padding: 1.25rem;
    margin-top: 0
}

.mega-col h6 {
    color: var(--brand-red);
    font-weight: 800;
    margin-bottom: .7rem;
    text-transform: uppercase;
    font-size: .8rem;
    letter-spacing: .05em
}

.mega-col a {
    display: block;
    color: #1f2937;
    text-decoration: none;
    padding: .22rem 0;
    font-size: .95rem;
    border-bottom: 1px solid #cccccc78;
}

.mega-col a:hover {
    color: var(--brand-red)
}

@media (min-width: 992px) {
    .navbar .dropdown:hover .dropdown-menu {
        display:block
    }
}

@media (max-width: 1199.98px) {
    .mega-dropdown {
        min-width:760px
    }
}

@media (max-width: 991.98px) {
    .mega-dropdown {
        min-width:100%;
        box-shadow: none;
        border: 1px solid var(--brand-border)
    }
}

.hero {
    background: #f8fafc
}

.hero .carousel-item {
    height: 70vh;
    min-height: 560px;
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
}

.hero .carousel-item::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg,rgba(9,12,17,.76) 0%,rgba(9,12,17,.40) 44%,rgba(9,12,17,.18) 100%);
}

.hero-slide-1 {
    background-image: radial-gradient(circle at 80% 20%, rgba(255, 255, 255, .14), transparent 26%), linear-gradient(135deg, #661014 0%, #9f1218 48%, #d35a5f 100%);
    background-image: url(../assets/img/niper-building.png);
}

.hero-slide-2 {
   
    background-image: radial-gradient(circle at 82% 22%, rgba(255,255,255,.16), transparent 20%),linear-gradient(135deg,#2f3b52 0%,#344a7d 46%,#7f97c8 100%);
  background-image: url(https://clientdemo.rdisl.com/img/slider/slider-2.png);

}


.hero-slide-3 {
    background-image: radial-gradient(circle at 80% 18%, rgba(255,255,255,.18), transparent 24%),linear-gradient(135deg,#3b2312 0%,#8e4c1f 48%,#d4935b 100%);
     background-image: url(https://clientdemo.rdisl.com/img/slider/slider-4.png);
}

.hero-slide-4 {
     
    background-image: radial-gradient(circle at 78% 22%, rgba(255,255,255,.14), transparent 22%),linear-gradient(135deg,#073045 0%,#0d5476 48%,#4fb4d8 100%);
    background-image: url(https://clientdemo.rdisl.com/img/slider/slider-3.png);
}



.hero-caption {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    z-index: 2
}

.hero-kicker {
    display: inline-block;
    padding: .45rem .8rem;
    border-radius: 999px;
    background: rgba(255,255,255,.15);
    border: 1px solid rgba(255,255,255,.22);
    backdrop-filter: blur(8px);
    color: #fff;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-size: .75rem;
    margin-bottom: 1rem
}

.hero h3 {
    color: #fff;
    font-size: clamp(2.25rem,5vw,2.2rem);
    line-height: 1.02;
    font-weight: 900;
    margin-bottom: 1rem;
    max-width: 820px;
    text-shadow: 0 4px 24px rgba(0,0,0,.25)
}

.hero p {
    color: rgba(255,255,255,.92);
    max-width: 680px;
    font-size: 1.07rem;
    margin-bottom: 1.45rem
}

.quick-cards {
    margin-top: -58px;
    position: relative;
    z-index: 5
}

.quick-card {
    background: #fff;
    border: 1px solid var(--brand-border);
    border-radius: var(--brand-radius);
    box-shadow: var(--brand-shadow);
    height: 100%;
    transition: .25s ease
}

.quick-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 34px rgba(13,25,44,.12)
}

.quick-card .icon-wrap {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background: rgba(184,13,18,.08);
    color: var(--brand-red);
    font-size: 1.3rem
}

.section {
    padding: 2.75rem 0
}

.section-soft {
    background: var(--brand-bg)
}

.section-title {
    font-weight: 900;
    font-size: 2rem;
    letter-spacing: -.02em;
    margin-bottom: .55rem
}

.section-note {
    color: var(--brand-muted);
    max-width: 760px;
    margin-bottom: 2rem
}

.section-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 1rem;
    margin-bottom: 1.6rem
}

.double-line-bottom-theme-colored-2 {
    margin-bottom: 20px;
    margin-top: 8px;
    padding-bottom: 5px;
    position: relative;
}

.double-line-bottom-theme-colored-2:before {
    border-radius: 8px;
    bottom: -1px;
    content: "";
    height: 6px;
    left: 10px;
    position: absolute;
    width: 24px;
    background: #C21717;
}

.double-line-bottom-theme-colored-2:after {
    border-radius: 8px;
    bottom: 1px;
    content: "";
    height: 2px;
    left: 0;
    position: absolute;
    width: 64px;
    background: #C21717;
}


.pill-link {
    text-decoration: none;
    color: var(--brand-red);
    font-weight: 700
}

.card-soft {
    border: 1px solid var(--brand-border);
    border-radius: var(--brand-radius);
    background: #fff;
    box-shadow: var(--brand-shadow)
}

.notice-list li {
    padding: 1rem 0;
   border-bottom: 1px dashed #c5c6c9;
}

.notice-list li:last-child {
    border-bottom: none
}

.notice-list a {
    text-decoration: none;
    color: #111827;
    font-weight: 600
}

.notice-list a:hover {
    color: var(--brand-red)
}

.label-date {
    font-size: .8rem;
    color: var(--brand-red);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em
}

.about-copy {
    color: #374151;
    font-size: 1.02rem;
    line-height: 1.8
}

.director-portrait {
       width: 100%;
    max-width: 170px;
    border-radius: 50%;
    background: linear-gradient(135deg, #cbd1d9, #95a0ad);
    border: 4px solid #fff;
    box-shadow: 0 10px 26px rgb(0 0 0 / 26%);
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 2.2rem;
    font-weight: 900;
}

.unit-card,.story-card,.news-card,.research-card,.seminar-card,.gallery-tile,.link-card {
    border: 1px solid var(--brand-border);
    border-radius: var(--brand-radius);
    overflow: hidden;
    background: #fff;
    box-shadow: var(--brand-shadow);
    height: 100%;
    transition: .2s ease;
    box-shadow: 0 12px 20px 1px rgb(64 64 64 / 28%) !important;
}

.unit-card:hover,.story-card:hover,.news-card:hover,.research-card:hover,.seminar-card:hover,.gallery-tile:hover,.link-card:hover {
    transform: translateY(-4px)
}

.unit-card .big-icon,.link-card .big-icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: rgba(184,13,18,.08);
    color: var(--brand-red);
    font-size: 1.6rem
}

.thumb {
    width: 100%;
    aspect-ratio: 16/10;
    object-fit: cover;
    display: block;
    background: linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,0)),linear-gradient(135deg,#661014 0%,#b80d12 52%,#d35a5f 100%)
}

.thumb.alt-1 {
    background: linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,0)),linear-gradient(135deg,#073045 0%,#0d5476 52%,#4fb4d8 100%);
}

.thumb.alt-2 {
    background: linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,0)),linear-gradient(135deg,#3b2312 0%,#8e4c1f 52%,#d4935b 100%)
}

.thumb.alt-3 {
    background: linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,0)),linear-gradient(135deg,#183620 0%,#20683b 52%,#6ebf82 100%)
}

.story-card h5,.news-card h5,.research-card h5 {
    font-weight: 800;
    line-height: 1.35
}

.event-list .event-item {
    display: flex;
    gap: 1rem;
    align-items: start;
    padding: 1rem 0;
    border-bottom: 1px dashed #e5e7eb
}

.event-list .event-item:last-child {
    border-bottom: none
}

.event-date {
    min-width: 88px;
    background: #fff5f5;
    color: var(--brand-red);
    border: 1px solid #ffd9db;
    border-radius: 16px;
    padding: .8rem .5rem;
    text-align: center;
    font-weight: 900;
    line-height: 1.1
}

.event-date small {
    display: block;
    color: #7f1d1d;
    font-weight: 700
}

.seminar-meta {
    color: var(--brand-muted);
    font-size: .95rem
}

.stats-strip {
    background: linear-gradient(135deg,#7f0f13,#b80d12 52%,#d35a5f 100%);
    color: #fff;
    border-radius: 26px;
    box-shadow: 0 22px 60px rgba(156, 15, 20, .28)
}

.stat-box {
    padding: 2rem 1rem;
    text-align: center
}

.stat-num {
    font-size: 2.35rem;
    font-weight: 900;
    line-height: 1
}

.accordion-button:not(.collapsed) {
    background: #fff7f7;
    color: var(--brand-red-dark);
    box-shadow: none
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 1rem
}



.gallery-item {
  cursor: pointer;
  transition: transform 0.3s;
  height: 100%;
  box-shadow: 0 12px 20px 1px rgb(64 64 64 / 28%) !important;
}
.gallery-item p{
    font-size: 12px;
    font-weight: bold;
}

.gallery-item:hover {
  transform: scale(1.05);
  border: 1px solid #8f0a0e;
}

.card-img, .card-img-bottom, .card-img-top {
    width: 100%;
    height: 100px;
}

.gallery-tile .gallery-shot {
    width: 100%;
    aspect-ratio: 4/3;
    display: flex;
    align-items: end;
    padding: 1rem;
    color: #fff;
    font-weight: 700;
    background: linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.58)),linear-gradient(135deg,#2f3b52 0%,#344a7d 46%,#7f97c8 100%)
}

.gallery-tile:nth-child(2) .gallery-shot {
    background: linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.58)),linear-gradient(135deg,#073045 0%,#0d5476 46%,#4fb4d8 100%)
}

.gallery-tile:nth-child(3) .gallery-shot {
    background: linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.58)),linear-gradient(135deg,#183620 0%,#20683b 46%,#6ebf82 100%)
}

.gallery-tile:nth-child(4) .gallery-shot {
    background: linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.58)),linear-gradient(135deg,#3b2312 0%,#8e4c1f 46%,#d4935b 100%)
}

.gallery-tile:nth-child(5) .gallery-shot {
    background: linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.58)),linear-gradient(135deg,#661014 0%,#b80d12 46%,#d35a5f 100%)
}

.gallery-tile:nth-child(6) .gallery-shot {
    background: linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.58)),linear-gradient(135deg,#2e2251 0%,#5e46a7 46%,#ad93e4 100%)
}

.gallery-tile:nth-child(7) .gallery-shot {
    background: linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.58)),linear-gradient(135deg,#51420f 0%,#947519 46%,#d2bb67 100%)
}

.gallery-tile:nth-child(8) .gallery-shot {
    background: linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.58)),linear-gradient(135deg,#183620 0%,#20683b 46%,#6ebf82 100%)
}

@media (max-width: 991.98px) {
    .gallery-grid {
        grid-template-columns:repeat(2,1fr)
    }
}

@media (max-width: 575.98px) {
    .gallery-grid {
        grid-template-columns:1fr
    }
}

 .footer-banner{
      position:relative;
      color:#fff;
      background:url('../assets/img/building.jpg') center/cover no-repeat;
    }
    .footer-banner::before{
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, #00000075, rgb(116 45 47 / 99%));
    }
    .footer-banner .container{
      position:relative;
      z-index:2;
    }
    .footer-title{
      font-weight:900;
      margin-bottom:1rem;
    }
    .footer-link{
      color:#e5e7eb;
      text-decoration:none;
      display:block;
      margin:.35rem 0;
    }
    .footer-link:hover{color:#fff;}
    .footer-bottom{
      border-top:1px solid rgba(255,255,255,.14);
      color:#cbd5e1;
      font-size:.92rem;
    }


.search-modal .modal-content {
    border: none;
    border-radius: 22px;
    overflow: hidden
}

.timeline-badge {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    border: 1px solid var(--brand-border);
    background: #fff;
    border-radius: 999px;
    padding: .45rem .75rem;
    font-size: .92rem;
    color: #374151;
    margin: .2rem .35rem .2rem 0;
    box-shadow: 0 4px 12px rgba(13,25,44,.05)
}

body.dark-mode {
    background: #0b1220;
    color: #e5e7eb
}

body.dark-mode .header-main,body.dark-mode .quick-card,body.dark-mode .card-soft,body.dark-mode .unit-card,body.dark-mode .story-card,body.dark-mode .news-card,body.dark-mode .research-card,body.dark-mode .seminar-card,body.dark-mode .gallery-tile,body.dark-mode .link-card {
    background: #111827;
    color: #e5e7eb;
    border-color: #1f2937;
    box-shadow: none
}

body.dark-mode .navbar-main .nav-link,body.dark-mode .notice-list a,body.dark-mode .pill-link,body.dark-mode .story-card h5,body.dark-mode .news-card h5,body.dark-mode .research-card h5,body.dark-mode .section-title,body.dark-mode .brand-title,body.dark-mode .accordion-button {
    color: #f8fafc !important
}

body.dark-mode .brand-subtitle,body.dark-mode .mini-address,body.dark-mode .section-note,body.dark-mode .about-copy,body.dark-mode .seminar-meta {
    color: #cbd5e1 !important
}

body.dark-mode .section-soft {
    background: #0f172a
}


 /* Feature cards */
.feature-section {
   margin-top: 15px;
   
}
.feature-card {
    padding:40px 20px;
    text-align:center;
}
.feature-red {
    background:#c8102e;
    color:#fff;
}
.feature-light {
    background:#eaeaea;
}
.feature-card i {
    font-size:40px;
}



.brd-design{   background: #fff;
    border-radius: 8px;
    padding: 10px 14px!important;
    box-shadow: 0 3px 10px rgb(0 0 0 / 6%);
    transition: 0.3s ease;
    border-left: 5px solid #B80F0A;
    margin-top: 7px;
    } 

.scroll-text {
  position: relative;
  white-space: nowrap;
}

.scroll-content {
  display: inline-block;
  padding-left: 100%;
  animation: scroll-left 40s linear infinite;
}
.scroll-content a{
	text-decoration:none;
}

.scroll-text:hover .scroll-content {
  animation-play-state: paused;
}

@keyframes scroll-left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}
.section-first {
border-bottom: 1px dotted black;}

