
/* LIME-LAB modern research redesign — layered over the original template */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#142b3b;--ink-2:#243f50;--teal:#25a995;--teal-bright:#48cbb5;--paper:#f6f7f4;--muted:#60717b;--line:#e1e8e7;--white:#fff;--shadow:0 18px 50px rgba(19,45,60,.09)}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:'DM Sans',sans-serif!important;color:#273b46!important;background:#fff!important;font-size:16px;line-height:1.75}
h1,h2,h3,h4,h5,h6{font-family:'Manrope',sans-serif!important;letter-spacing:-.035em;color:var(--ink)}
a{color:var(--teal);transition:all .22s ease}
a:hover{color:#167e71}
#header{height:84px;background:rgba(255,255,255,.96)!important;box-shadow:0 4px 24px rgba(16,43,57,.07);backdrop-filter:blur(16px);transition:all .3s ease}
#header .container{max-width:1240px}
#header .logo h1{font-family:'Manrope',sans-serif!important;font-size:25px!important;font-weight:800;letter-spacing:-.06em;margin:0}
#header .logo h1 a{color:var(--ink)!important}
#header .logo h1 span{color:var(--ink)!important;position:relative}
#header .logo h1 span:after{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--teal);margin-left:5px;vertical-align:baseline}
.navbar ul{gap:2px}
.navbar a,.navbar a:focus{font-family:'DM Sans',sans-serif!important;font-size:13px!important;font-weight:700!important;letter-spacing:.01em;color:#40545f!important;padding:11px 12px!important;border-radius:8px}
.navbar a:hover,.navbar .active,.navbar li:hover>a{color:var(--teal)!important;background:#eaf7f4}
.navbar .mobile-nav-toggle{color:var(--ink)!important;font-size:28px}
#hero{min-height:590px!important;height:auto!important;padding:150px 0 125px!important;justify-content:center!important;align-items:stretch!important;overflow:hidden;background:linear-gradient(115deg,rgba(9,29,44,.93),rgba(17,56,70,.79)),url('../img/hero-bg111.jpg') center/cover no-repeat!important;position:relative}
#hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 78% 20%,rgba(54,199,174,.22),transparent 38%)}
#hero .container{position:relative;z-index:2}
#hero .carousel-container{position:static!important;text-align:left!important;max-width:880px;margin:0 auto;padding:0!important}
#hero h2{font-size:clamp(38px,5.4vw,70px)!important;line-height:1.08!important;font-weight:800!important;max-width:850px;margin:0 0 22px!important;color:#fff!important}
#hero h2:before{content:"LASER–PLASMA SCIENCE  /  IITH";display:block;font:700 12px 'DM Sans',sans-serif;letter-spacing:.18em;color:var(--teal-bright);margin-bottom:25px}
#hero h4{font-size:clamp(17px,2vw,22px)!important;line-height:1.6;color:#d9e5e9!important;font-weight:500!important;margin:0;max-width:680px}
#hero .hero-waves{display:none}
#hero .carousel-fade .carousel-item{background:transparent!important}
#main{min-height:40vh}
section{scroll-margin-top:88px}
section:not(#hero){padding:76px 0!important}
.section-title{padding-bottom:34px!important}
.section-title h2,main h2{font-size:clamp(29px,3vw,42px)!important;font-weight:800!important;color:var(--ink)!important;margin-bottom:18px}
.section-title h2:after{content:"";display:block;width:52px;height:4px;background:var(--teal);border-radius:5px;margin-top:18px}
.section-title p,main p{line-height:1.85}
.breadcrumbs{background:var(--paper)!important;margin-top:84px!important;padding:25px 0!important;border-bottom:1px solid var(--line)}
.breadcrumbs h2{font-size:29px!important;font-weight:800!important}
.breadcrumbs ol{font-size:13px!important}
.breadcrumbs ol a{color:var(--teal)!important}
#main .container{max-width:1160px}
#main .resume .container>div{background:#fff!important;border:1px solid var(--line);border-radius:20px;padding:32px!important;box-shadow:var(--shadow)!important}
#main .resume p{color:#415761!important;font-size:17px!important;text-align:center;max-width:780px;margin:0 auto}
#main .resume a{color:var(--teal)!important;font-weight:800}
#footer{background:#102b3b!important;color:#d0dfe3!important;padding:58px 0 28px!important;margin-top:30px}
#footer h3,#footer h4,#footer h5{color:#fff!important;font-weight:800}
#footer a{color:#8ce0d0!important}
#footer .copyright,#footer .credits{color:#b4c7cd!important}
#footer .footer-top{background:transparent!important;border:0!important}
#footer .social-links a{border-color:rgba(255,255,255,.22)!important;color:#fff!important}
#footer .social-links a:hover{background:var(--teal)!important}
#main .icon-box,.services .icon-box,.portfolio .portfolio-item,.team .member,.member,.p_box,.research-item,.contact .info-box{border-radius:16px;overflow:hidden}
#main .icon-box,.services .icon-box,.contact .info-box{background:#fff;border:1px solid var(--line);box-shadow:0 8px 30px rgba(19,45,60,.05);padding:28px;transition:transform .25s,box-shadow .25s}
#main .icon-box:hover,.services .icon-box:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
#main .icon-box h4,#main .icon-box h3{font-weight:800}
#main img{max-width:100%;height:auto}
#main .img-fluid{border-radius:14px}
#main .team .member,.team .member{background:#fff!important;border:1px solid var(--line);box-shadow:0 10px 35px rgba(19,45,60,.06);border-radius:18px!important}
#main .team .member .member-info,.team .member .member-info{padding:22px!important}
#main .team .member h4,.team .member h4{font-size:18px!important;font-weight:800!important}
#main .team .member span,.team .member span{color:var(--teal)!important}
#main .portfolio .portfolio-item{border-radius:16px;box-shadow:0 10px 30px rgba(19,45,60,.08)}
#main .portfolio .portfolio-info{background:rgba(16,43,59,.94)!important}
#main .p_box{padding:22px 24px!important;border-bottom:1px solid var(--line)!important;margin-bottom:12px;background:#fff;border-radius:12px}
#main .p_box:hover{background:#f7fbfa}
#main .p_box h4,#main .p_box h3{font-size:17px;font-weight:800}
#main .p_box p{font-size:14px;color:var(--muted)}
#main .filter-active{background:var(--teal)!important;color:white!important;border-radius:7px}
#main .portfolio-flters li{padding:9px 13px!important;margin:3px!important;border-radius:8px!important;font-weight:700}
#main .contact .info-box i{color:var(--teal)!important}
#main .php-email-form{border-radius:16px;padding:28px;box-shadow:var(--shadow);border:1px solid var(--line)}
#main input,#main textarea,#main select{border-radius:9px!important;border:1px solid #d8e2e3!important;padding:12px 14px!important}
#main button[type=submit],.btn-get-started{border:0!important;background:var(--teal)!important;color:white!important;border-radius:999px!important;padding:13px 24px!important;font-weight:800!important;letter-spacing:.01em;box-shadow:0 8px 20px rgba(37,169,149,.2)}
#main button[type=submit]:hover,.btn-get-started:hover{background:var(--ink)!important;transform:translateY(-1px)}
#main .content h3{font-size:27px;font-weight:800}
#main .content ul{padding-left:22px}
#main .content ul li{margin:9px 0}
#main .content ul li i{color:var(--teal)}
#main .section-bg{background:var(--paper)!important}
#main .resume{background:transparent!important}
#main .resume .container>div p{padding:4px 0}
#main .resume .container>div p:before{content:none!important;display:none!important}
#main .resume .container>div p br{display:block;margin-bottom:5px}
#main .resume .container>div p a{display:inline-block;background:var(--teal);color:white!important;padding:7px 16px;border-radius:999px;margin-top:8px}
#main .resume .container>div p a:hover{background:var(--ink)!important}
#main .breadcrumbs+section{padding-top:55px!important}
body>main{padding-top:0}
@media(max-width:991px){
 #header{height:72px}
 #header .container{padding:0 20px}
 #header .logo h1{font-size:23px!important}
 .navbar ul{background:#fff!important;box-shadow:var(--shadow);border-radius:14px;padding:14px!important;top:65px!important;left:16px!important;right:16px!important}
 .navbar a,.navbar a:focus{padding:11px 13px!important}
 #hero{min-height:510px!important;padding:135px 0 95px!important}
 #hero h2{font-size:clamp(36px,8vw,56px)!important}
 section:not(#hero){padding:55px 0!important}
}
@media(max-width:575px){
 #hero{min-height:480px!important;padding:120px 0 75px!important}
 #hero h2:before{font-size:10px;letter-spacing:.12em}
 #main .resume .container>div{padding:23px!important}
 .breadcrumbs h2{font-size:24px!important}
 #footer{padding-top:42px!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}


/* Principal Investigator career timeline refresh */
#main .resume .resume-title{font-size:clamp(25px,2.5vw,32px)!important;font-weight:800!important;letter-spacing:-.04em!important;margin:0 0 28px!important;padding-bottom:14px;border-bottom:1px solid var(--line);position:relative}
#main .resume .resume-title:after{content:"";position:absolute;left:0;bottom:-2px;width:54px;height:4px;background:var(--teal);border-radius:4px}
#main .resume .resume-item{position:relative;padding:0 0 28px 27px!important;margin:0 0 8px 8px!important;border-left:2px solid #cfe9e4!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
#main .resume .resume-item:before{content:"";position:absolute;left:-9px;top:5px;width:16px;height:16px;border:3px solid var(--teal);background:#fff;border-radius:50%;box-shadow:0 0 0 4px #eef8f5}
#main .resume .resume-item h4{font-size:19px!important;font-weight:800!important;line-height:1.4;margin:0 0 8px!important;color:var(--ink)!important}
#main .resume .resume-item h5{display:inline-block;font-family:'DM Sans',sans-serif!important;font-size:13px!important;font-weight:800!important;letter-spacing:.015em;color:#137f72!important;background:#eaf7f4;padding:6px 11px;border-radius:6px;margin:0 0 12px!important}
#main .resume .resume-item p{max-width:none!important;text-align:left!important;font-size:14px!important;line-height:1.75!important;color:var(--muted)!important;margin:0 0 5px!important;padding:0!important}
#main .resume .resume-item p em{font-style:normal;color:#526872}
#main .resume .resume-item p:before{content:none!important;display:none!important}
#main .resume .resume-item p a{background:transparent!important;padding:0!important;margin:0!important;color:var(--teal)!important}
#main .resume .row{align-items:flex-start}
#main .resume .row>.col-lg-6{padding:0 24px}
#main .resume .row>.col-lg-6:first-child{border-right:1px solid var(--line)}
@media(max-width:991px){#main .resume .row>.col-lg-6{padding:0 12px}#main .resume .row>.col-lg-6:first-child{border-right:0;border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:30px}}
@media(max-width:575px){#main .resume .resume-item{padding-left:22px!important;margin-left:5px!important}#main .resume .resume-item h4{font-size:17px!important}#main .resume .resume-item p{font-size:13px!important}}

/* Mobile navigation visibility and stacking fix */
@media (max-width: 991px) {
  #navbar.navbar-mobile {
    position: fixed !important;
    inset: 0 !important;
    z-index: 10000 !important;
    display: block !important;
    overflow: visible !important;
    background: rgba(20, 43, 59, .42) !important;
  }
  #navbar.navbar-mobile .mobile-nav-toggle {
    position: fixed !important;
    top: 17px !important;
    right: 20px !important;
    z-index: 10002 !important;
    display: block !important;
    color: var(--ink) !important;
  }
  #navbar.navbar-mobile > ul {
    display: block !important;
    position: fixed !important;
    top: 72px !important;
    left: 16px !important;
    right: 16px !important;
    bottom: auto !important;
    max-height: calc(100vh - 92px) !important;
    overflow-y: auto !important;
    z-index: 10001 !important;
    margin: 0 !important;
    padding: 14px !important;
    background: #fff !important;
    border: 1px solid var(--line) !important;
    border-radius: 14px !important;
    box-shadow: 0 18px 50px rgba(19,45,60,.18) !important;
  }
  #navbar.navbar-mobile > ul li { display: block !important; }
  #navbar.navbar-mobile > ul a,
  #navbar.navbar-mobile > ul a:focus {
    display: flex !important;
    align-items: center;
    width: 100%;
    color: var(--ink) !important;
    background: transparent !important;
    padding: 12px 14px !important;
  }
  #navbar.navbar-mobile > ul a:hover,
  #navbar.navbar-mobile > ul a.active { color: var(--teal) !important; background: #eaf7f4 !important; }
}
