@charset "UTF-8";
/* CSS Document */
* {margin:0; padding:0;}
body {
	font-family: "Open Sans", "Avenir Next", Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color: #818181;
}

/*logo栏的高低，宽度属性*/
header {
   /*position:relative;*/
   left: 0;
   top: 0;
   width: 100%;
   height: 130px;
   background-color: #F8F8F4; /*left: 0; top: 0; width: 100%; height: 140px; background-color: #F8F8F4;*/
}
/*logo栏的高低，宽度属性*/
  .view1, .view2{
	width: 1000px;
	height: 130px;
	margin:0 auto;
  } /*width: 1000px; height: 130px; margin:0 auto;*/

a {text-decoration: none;}

/*logo和文字之间竖线的属性*/
.view1 a {width:260px; float: left; border-right: #BBB7B7 2px solid; line-height: inherit; margin-top: 20px;} /*width:280px; float: left; border-right: #BBB7B7 2px solid; line-height: inherit; margin-top: 20px;*/

/*文字的属性*/
.view1 #labname {float: left; margin: 10px; margin-top: 30px; width: 450px;} /*float: left; margin: 20px; margin-top: 50px; width: 600px;*/
#labname {font-family: "Haettenschweiler", "Franklin Gothic Bold", "Open Sans", "Arial Black", "sans-serif", Impact; font-size: 32px; color: #BBB7B7;}
/*font-family: "open sans", "Franklin Gothic Bold", Haettenschweiler, "Arial Black", "sans-serif", Impact; font-size: 32px; color: #BBB7B7; font-size: 30px; color: #BBB7B7; margin: 10px 0; margin-bottom: 20px;*/

/*logo的属性*/
  #logo {
	 width: 100px;
	 height: 100px;
	padding-top: 00px;  /* width:247px; height:80px; padding-top: 20px;*/
	
  }
  

/* 1. 外层导航栏：铺满全屏，强制清除浮动干扰 */
nav {
  background-color:#A2CFC9; /* 你的绿色背景 */
  width: 100%;
  display: block;
  clear: both; /* 【关键】防止被上方 header 里的浮动元素（Logo等）挤偏 */
  margin: 0;
  padding: 0;
}

/* 2. 内层包裹区域：绝对居中 */
.navitems {
  display: flex;
  justify-content: center !important; /* 【关键】强制水平居中 */
  align-items: center;
  flex-wrap: nowrap;
  margin: 0 auto;
  width: 100%; 
  max-width: 1200px; /* 大屏限制最大宽度，防止字分得太散 */
  padding: 0;
  box-sizing: border-box;
}

/* 3. 导航按钮：彻底废除旧的浮动布局 */
.navitems > a, 
.navitems .dropdown {
  float: none !important; /* 【核心修复点】如果旧代码里有 float: left，这句话能强行把它废掉 */
  display: inline-block;
  padding: 14px 20px;
  text-decoration: none;
  text-align: center;
  /* color: white; 请保留你原本的字体颜色 */
}

.content {
	width:1000px; 
	margin:0 auto;
	height:auto;
}

/*home/index page*/
#container {width: 800px; height: 350px; margin: 30px 0; }

@keyframes slider {
  0%{
    left: 0;
  }
  20%{
    left: 0;
  }
  25%{
    left: -100%;
  }
  45%{
    left: -100%;
  }
  50%{
    left: -200%;
  }
  70%{
    left: -200%;
  }
  75%{
    left: -300%;
  }
  85%{
    left: -300%;
  }
  90%{
    left: -400%;
  }
  100%{
    left: -400%;
  }
}

#slider{
  overflow: hidden;
}

#slider figure img{
  width: 20%;
  float: left;
}

#slider figure{
  position: relative;
  width: 500%;
  margin: 0;
  left: 0;
  animation: 20s slider infinite;
}

  .banner {width: 100%; height: 385px; padding: 30px 0;}
  .bannerimage {width: 70%; height: 385px;}
  .imagedescription {float: right; width: 30%;box-sizing: border-box;background-color: #D8D8D8; height: 385px; padding: 60px     40px;}
  .imagedescription h4 {font-size: 20px; line-height: 60px;}

 .about {
	width: 70%; height: auto; float: left; padding-bottom: 50px;
 }

  .about h3 {color: #A2CFC9; line-height: 50px;}
  .about p {
	font-size: 16px;
	margin: 0 60px 0 0;
	text-align: justify;
}

 .news {
	width: 30%; height: auto; float: right; padding-bottom: 50px;
  }
  .news h3 {color: #A2CFC9; line-height: 50px;}
  .news p {
	font-size: 16px;
	text-align: justify;
}

.clearfix {zoom: 1;}
.clearfix:after {content:"."; display:block; visibility: hidden; height:0; clear:both;}
/*end of home/index page*/


/*research page*/
.researchaside {
	width: 20%; float: left; margin: 40px 50px 0 0; box-sizing: border-box;
}

.navigation {
	border: #A2CFC9 double 2px; border-radius: 5px; 
	}

li {list-style: decimal; list-style-position: inside; line-height: 15px; border-bottom: #F8F8F4 solid 1px;}
.navigation a {display: inline-block; color: #BBB7B7; padding: 10px; width:99%; height: inherit;} 
.navigation li:hover {background-color: #A2CFC9;}
.navigation li a:hover {color: #FFFFFF;}
.navigation #curr {background-color: #A2CFC9;}
.navigation #curr a {color:#FFFFFF;}

.research-detail {margin-top: 40px; float: right; width: 75%; box-sizing: border-box; position: relative;}
.research-detail {margin-bottom: 40px;}
.research-detail h3 {padding-bottom: 10px;}
.research-detail h3 a {color: inherit;}
.research-detail img {width:100%; padding-top: 10px;}


.relatedpublication {margin: 40px 0;border-top: gray 2px solid;}
.relatedpublication h3 {padding-bottom: 20px;}
.relatedpublication li {line-height: normal; margin: 10px 0; font-size: 16px;}

/*end of research page*/


/*start of people page*/
.profileimg {width:200px; height:248px; display: block;}
.faculty {padding: 20px 0;}
.faculty h4 {line-height: 3em; font-size: 18px;}
.faculty img {float:left; margin-right: 40px;}
.faculty p {
	vertical-align: bottom;
	text-align: justify;
	margin-bottom: 20px;
	display: block;
}

.personfile {float:left; margin-right: 20px; padding: 10px;}

.students {padding-bottom:40px;}
.students h4 {line-height: 3em; font-size: 18px;}

/*end of people page*/

footer {
	width: 100%;
	height: 160px;
	background-color: #F8F8F4;
	border-top: #233D82 thick solid;
}
 
 .cunylogo {width:150px; margin-top: 40px;}
 .ncsulogo {width:150px; margin-top: 40px;}
 .ncsu_unclogo {width:500px; height: auto; margin-top: 40px;}

 .footright {
	width: 30%;
	float: right;
	margin-top: 40px;
 }

 .address {text-align: right; font-size: 12px; color: #233D82; padding: 10px 0;}
.social-media-logos {width: 123px; margin-left: auto; margin-right: 0;}
#a001githubsign {width: 21px;} 
#a002facebook {width: 21px;} 
#a003linkedin{width: 21px;}  
#a004youtube {width: 21px;} 
#a005twitter {width: 21px;} 

.wikibox {width: 71px; margin-left: auto; margin-right: 0;}
.wikibox p {text-algn: right; font-size: 12px; color: #233D82;}


  /*add dropdown box*/
 /* .dropbtn {
    background-color: #4CAF50;
    color: white;
    padding: 6px;
    font-size: 16px;
    border: none;
    cursor: pointer;
}*/

.dropdown {
  display: inline-block;
}

.dropdown-content {
  display: none;
  position: absolute;
  z-index: 10;
  background-color: #f9f9f9;
  min-width:160px; /*160*/
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  /*width: 5%*/
}
.dropdown-content a {
  color: black;
  padding: 12px 16px; /*12px 16px*/
  text-decoration: none;
  display: block;
}

.dropdown-content a:hover {background-color: #f1f1f1}

.dropdown:hover .dropdown-content {
  display: block;
}

/* Added by Junxi */
p.section-header {
  color:black; 
  font-family: 'Open Sans', sans-serif; 
  font-size: 30px;
}

a.section-header {
  color:black; 
  font-family: 'Open Sans', sans-serif; 
  font-size: 30px;
}

p.speaker-title {
  color:black; 
  font-family: 'Open Sans', sans-serif; 
  font-size: 20px; 
  line-height: 25px;
}

p.speaker-description {
  color:black; 
  font-family: 'Open Sans', sans-serif; 
  font-size: 15px; 
  line-height: 20px;
}

p.schedule-text {
  color:black;
  font-family: 'Open Sans', sans-serif; 
  font-size: 20px;
}

span.schedule-time {
  color:black;
  font-family: 'Open Sans', sans-serif; 
  font-size: 20px;
}

span.schedule-event {
  color:rgb(0, 174, 255);
  font-family: 'Open Sans', sans-serif; 
  font-size: 20px;
}

p.normal-text {
  color:black;
  font-family: 'Open Sans', sans-serif; 
  font-size: 20px;
}

p.normal-bold-text {
  color:black;
  font-family: 'Open Sans', sans-serif; 
  font-size: 20px;
  font-weight: bold;
}

div#aside{
  width:200px;
  height:200px;
  /*background-color:yellow;*/
  float:left;
  }

div#main1{
  /*background-color:aqua;*/
  margin-left:200px;
  height:auto;
}

img.speaker-photo {
  width: 135px;
  height: auto;
  vertical-align:middle
}

img.organizer-photo {
  width: 115px;
  height: 139px;
}

table.organizer {
  text-align: center;
  width: 100%
}

tr.blank_row {
    height: 10px !important; /* overwrites any other rules */
    background-color: #FFFFFF;
}

li.topics {
  color:black; 
  font-family: 'Open Sans', sans-serif; 
  font-size: 20px;
  line-height: normal;
}

td#test {
  text-align: center;
  color: red;
}

img.img-fluid {
  max-width: 100%;
  height: auto;
}

img.img-inline {
  max-height: 0.9em;
  width: auto;
  vertical-align:bottom;
  /* position: absolute; */
  /* object-fit: contain; */
  /* display: block; */
}

table {
  border-collapse: collapse;
  /* margin: auto; */
  border-top-width: 1px;
  border-bottom-width: 1px;
  border-left-width: 1px;
  border-right-width: 1px;
  border-spacing: 2px;
}

.text-center {
  text-align: center!important;
}

.product {margin-top: 40px; float: right; width: 75%; box-sizing: border-box; position: relative;}
.product {margin-bottom: 40px;}

@media (max-width: 1024px) {
  .view1, .view2, .content { max-width: calc(100% - 32px); }
  header { height: auto; }
  .view1 { display: flex; align-items: center; gap: 16px; height: auto; min-height: 110px; }
  .view1 a { float: none; flex: none; width: auto; margin: 0; padding-right: 16px; }
  .view1 #labname { float: none; width: auto; min-width: 0; margin: 0; font-size: clamp(20px, 3vw, 28px); line-height: 1.3; }
  #logo { width: 80px; height: 80px; padding: 0; }
  #container { max-width: 100%; }
  .content img, .content video, .content iframe, .content object, .content embed { max-width: 100%; }
}

@media (max-width: 720px) {
  html { overflow-x: hidden; }
  body { display: flex; flex-direction: column; min-width: 0; line-height: 1.6; overflow-wrap: break-word; }
  body > br { display: none; }
  body > header { order: 1; }
  body > nav { order: 2; }
  body > .content { order: 3; }
  body > iframe[style*="position:fixed"] {
    order: 4;
    position: static !important;
    display: block;
    width: calc(100% - 32px) !important;
    height: 320px !important;
    margin: 24px auto;
  }
  body > footer { order: 5; }

  header { height: auto; }
  .view1 { display: flex; align-items: center; gap: 12px; width: 100%; max-width: none; height: auto; min-height: 88px; padding: 10px 16px; margin: 0; box-sizing: border-box; }
  .view1 a { float: none; flex: none; width: auto; margin: 0; padding-right: 12px; border-right: 2px solid #BBB7B7; }
  .view1 #labname { float: none; width: auto; min-width: 0; margin: 0; }
  #logo { display: block; width: 64px; height: 64px; padding: 0; }
  #labname { font-size: clamp(16px, 4vw, 20px); line-height: 1.25; overflow-wrap: anywhere; }

  .navitems { flex-wrap: wrap; justify-content: center !important; max-width: 100%; }
  .navitems > a, .navitems .dropdown-content a {
    flex: 1 1 50%;
    min-width: 0;
    min-height: 44px;
    padding: 10px 6px;
    box-sizing: border-box;
    font-size: 13px;
    line-height: 1.3;
  }
  .navitems .dropdown, .navitems .dropdown-content { display: contents; }
  .navitems .dropdown > a { display: none; }
  .navitems .dropdown-content a { color: inherit; text-align: center; box-shadow: none; }

  .content { width: calc(100% - 32px); max-width: none; min-width: 0; margin: 0 auto; overflow-wrap: anywhere; }
  #container { width: 100%; height: clamp(160px, 45vw, 300px); margin: 16px 0 24px; }
  #slider, #slider figure { height: 100%; }
  #slider figure img { height: 100% !important; object-fit: cover; }
  .banner { height: auto; padding: 20px 0; }
  .bannerimage, .imagedescription { float: none; width: 100%; height: auto; }
  .imagedescription { padding: 20px; }
  .about, .news, .researchaside, .research-detail, .product, .publication-detail {
    float: none;
    width: 100%;
    height: auto;
    margin: 20px 0;
  }
  .about p { margin-right: 0; }
  .navigation a { width: 100%; box-sizing: border-box; }
  div#aside { float: none; width: 100%; height: auto; }
  div#main1 { margin-left: 0; }
  .content img:not(.profileimg) { height: auto; }
  .content iframe { width: 100%; height: auto; aspect-ratio: 16 / 9; }
  .content table { display: block; width: 100%; max-width: 100%; overflow-x: auto; }
  .content li { line-height: 1.6; }

  .faculty > div { display: flow-root; margin-bottom: 28px; }
  .faculty img { float: none; margin: 0 0 12px; }
  .faculty .profileimg { width: min(200px, 100%); height: auto; }
  .students, .student { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 12px; }
  .students h4, .student h4 { grid-column: 1 / -1; }
  .personfile { float: none; width: auto; min-width: 0; margin: 0; padding: 6px; }
  .personfile .profileimg { width: min(120px, 100%); height: 120px; object-fit: cover; margin: 0 auto 8px; }

  footer { height: auto; padding: 24px 16px; box-sizing: border-box; }
  .footright { float: none; width: 100%; margin: 0; }
  .address { text-align: left; }
  .ncsu_unclogo { max-width: 100%; height: auto; }
}

@media (max-width: 480px) {
  .students, .student { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 340px) {
  .view1 { gap: 8px; padding: 8px 12px; }
  .view1 a { padding-right: 8px; }
  #logo { width: 52px; height: 52px; }
  .view1 #labname { font-size: 16px; line-height: 1.2; }
}
