body {
	padding-top: 15px;
	padding-bottom: 0px;
}


/* Custom container */

.container {
	margin: 0 auto;
	max-width: 1000px;
}

.container>hr {
	margin: 20px 0
}


/* Customize the navbar links to be fill the entire space of the .navbar */

.navbar .navbar-inner {
	padding: 0
}

.navbar .nav {
	margin: 0;
	display: table;
	width: 100%;
}

.navbar .nav li {
	display: table-cell;
	width: 1%;
	float: none;
}

.navbar .nav li a {
	font-weight: bold;
	text-align: center;
	border-left: 1px solid rgba(255, 255, 255, .75);
	border-right: 1px solid rgba(0, 0, 0, .1);
}

.navbar .nav li:first-child a {
	border-left: 0;
	border-radius: 3px 0 0 3px;
}

.navbar .nav li:last-child a {
	border-right: 0;
	border-radius: 0 3px 3px 0;
}

body>.navbar {
	font-size: 13px
}


/* Change the docs' brand */

body>.navbar .brand {
	padding-right: 0;
	padding-left: 0;
	margin-left: 20px;
	float: right;
	font-weight: bold;
	color: #000;
	text-shadow: 0 1px 0 rgba(255, 255, 255, .1), 0 0 30px rgba(255, 255, 255, .125);
	-webkit-transition: all .2s linear;
	-moz-transition: all .2s linear;
	transition: all .2s linear;
}

body>.navbar .brand:hover {
	text-decoration: none;
	text-shadow: 0 1px 0 rgba(255, 255, 255, .1), 0 0 30px rgba(255, 255, 255, .4);
}


/* Sidenav for Docs
         -------------------------------------------------- */

@media screen and (max-width: 768px) {
	.bs-docs-sidenav {
		display: none !important;
	}
}

.bs-docs-sidenav {
	width: 228px;
	margin: 30px 0 0;
	padding: 0;
	background-color: #fff;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, .065);
	-moz-box-shadow: 0 1px 4px rgba(0, 0, 0, .065);
	box-shadow: 0 1px 4px rgba(0, 0, 0, .065);
}

.bs-docs-sidenav>li>a {
	display: block;
	width: 200px;
	margin: 0 0 -1px;
	padding: 8px 14px;
	border: 1px solid #e5e5e5;
}

.bs-docs-sidenav>li>a.subhead {
	display: block;
	width: 168px;
	margin: 0 0 -1px;
	padding: 8px 30px;
	border: 1px solid #e5e5e5;
	font-size: 12px;
}

.bs-docs-sidenav>li:first-child>a {
	-webkit-border-radius: 6px 6px 0 0;
	-moz-border-radius: 6px 6px 0 0;
	border-radius: 6px 6px 0 0;
}

.bs-docs-sidenav>li:last-child>a {
	-webkit-border-radius: 0 0 6px 6px;
	-moz-border-radius: 0 0 6px 6px;
	border-radius: 0 0 6px 6px;
}

.bs-docs-sidenav>.active>a {
	position: relative;
	z-index: 2;
	padding: 9px 15px;
	border: 0;
	text-shadow: 0 1px 0 rgba(0, 0, 0, .15);
	-webkit-box-shadow: inset 1px 0 0 rgba(0, 0, 0, .1), inset -1px 0 0 rgba(0, 0, 0, .1);
	-moz-box-shadow: inset 1px 0 0 rgba(0, 0, 0, .1), inset -1px 0 0 rgba(0, 0, 0, .1);
	box-shadow: inset 1px 0 0 rgba(0, 0, 0, .1), inset -1px 0 0 rgba(0, 0, 0, .1);
}

.bs-docs-sidenav>li>a:hover {
	background-color: #f5f5f5
}

.bs-docs-sidenav a:hover .icon-chevron-right {
	opacity: .5
}

.bs-docs-sidenav.affix {
	top: 10px
}

.bs-docs-sidenav.affix-bottom {
	position: absolute;
	top: auto;
	bottom: 270px;
}


/* Responsive
         -------------------------------------------------- */

.affix {
	top: 0px
}

#media {
	margin-top: 70px
}

#media .header {
	margin-left: 0;
	margin-bottom: 56px;
	margin-top: 30px;
}

#media .post_row {
	margin-left: 0;
	margin-bottom: 40px;
}

#media .lastpost_row {
	margin-bottom: 0
}

#media .post_row .post {
	background: #fff;
	/*margin-left: 0;;
    margin-right: 20px;*/
	border-radius: 4px;
	box-shadow: 1px 1px 2px 0px #E0E0E0;
	width: 487px;
	height: 616px;
}

#media .post_row .last {
	margin-right: 0
}

#media .post_row .post .img {
	position: relative;
	text-align: center;
}

#media .post_row .post .img .date {
	background: #E8554E;
	position: absolute;
	padding: 2px 5px;
	top: 0;
	left: 11px;
}

#media .post_row .post .img .date p {
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	font-style: italic;
	margin: 0;
}

#media .post_row .post .img img {
	height: 275px;
	width: 410px;
}

#media .post_row .post .text {
	margin: 18px auto 0;
	width: 83%;
}

#media .post_row .post .text h5 {
	margin: 0 0 8px 0;
	font-size: 20px;
	line-height: 23px;
}

#media .post_row .post .text h5 a {
	color: #333
}

#media .post_row .post .text span.date {
	color: #9F9F9F;
	display: block;
	margin-bottom: 12px;
	font-style: italic;
	font-size: 13px;
}

#media .post_row .post .text p {
	margin: 0;
	line-height: 21px;
	font-size: 14px;
}

#media .post_row .post .author_box {
	margin: 12px auto 20px;
	border-top: 1px solid #EDEDED;
	overflow: hidden;
	text-align: left;
	width: 85%;
	padding-top: 12px;
}

#media .post_row .post .author_box h6 {
	margin: 0 0 3px 0;
	font-size: 13px;
	line-height: 15px;
	font-style: italic;
	font-weight: normal;
	color: #B2B2B2;
}

#media .post_row .post .author_box p {
	color: #B2B2B2;
	font-style: italic;
	font-size: 13px;
	line-height: 14px;
	margin: 0;
}

#media .post_row .post .author_box img {
	float: right
}

#media .post_row .post a.plus_wrapper {
	width: 99%;
	text-align: center;
	background: #fff;
	display: none;
	border-radius: 0px 0px 4px 4px;
	padding: 6px 0px 2px;
	margin: 0 auto 1px;
}

#media .post_row .post a.plus_wrapper span {
	color: #1189D9;
	font-size: 30px;
	font-weight: bold;
}

#media .post_row .post:hover a.plus_wrapper {
	display: block
}

#media .post_row .post:hover {
	box-shadow: 0px 1px 5px 1px rgb(216, 216, 216)
}

#media .post_row .post:hover .text h5 a {
	color: #1189D9
}

.map .box_wrapp {
	position: absolute;
	margin: 15px auto;
	box-shadow: 0 0 7px 0 rgba(26, 26, 26, 0.4);
	padding: 30px 0 30px;
	background: white;
	border-radius: 4px;
	margin-top: 25px;
}

.map .box_wrapp .box_cont {
	margin: 30px auto;
	width: 76%;
}

.section-header {
	text-align: center;
	margin-bottom: 35px;
}

.section-header h1,
.title-text {
	font-weight: bold;
	font-size: 30px;
	margin: 12.5px 0;
	font-weight: 100;
	margin-bottom: 25px;
	line-height: 55px;
}

.feature-item:hover {
	box-shadow: 0px 1px 5px 1px rgb(216, 216, 216)
}

.feature-item img {
	margin-left: 15px;
	margin-right: 15px;
	max-width: 90%;
	height: 200px;
}

.feature-item h5 {
	margin-left: 15px;
	margin-right: 15px;
	margin-top: 20px;
	margin-bottom: 20px;
}

.feature-item p {
	margin-left: 15px;
	margin-right: 15px;
}

.feature-heading {
	margin-top: 20px;
	margin-bottom: 20px;
	margin-left: 15px;
	margin-right: 15px;
}

.feature-heading a:hover {
	text-decoration: none;
}

.feature-button {
	font-size: 16px;
	background-image: none;
	box-shadow: none;
	margin-bottom: 10px;
}

.centered {
	text-align: center;
}

.subhead {
	text-align: left;
	border-bottom: 1px solid #ddd;
}

.jumbotron {
	position: relative;
	padding: 45px 0px 35px 0px;
	color: #fff;
	text-align: center;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .4), 0 0 30px rgba(0, 0, 0, .075);

	/* Virginia Tech Maroon gradient */
	background: #861F41;
	background: -moz-linear-gradient(45deg, #861F41 0%, #5E1025 100%);
	background: -webkit-linear-gradient(45deg, #861F41 0%, #5E1025 100%);
	background: linear-gradient(45deg, #861F41 0%, #5E1025 100%) repeat;

	box-shadow: inset 0 3px 7px rgba(0, 0, 0, .2), inset 0 -3px 7px rgba(0, 0, 0, .2);
}


.jumbotron:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: .4;
}

.lead {
	margin-bottom: 0px;
	font-size: 21px;
	font-weight: 200;
	line-height: 15px;
}

img.float-left {
	float: left;
	margin-top: 9px;
	margin-left: 0px;
	margin-right: 30px;
	margin-bottom: 12px;
}

img.float-right {
	float: right;
	margin-top: 9px;
	margin-right: 0px;
	margin-bottom: 12px;
	margin-left: 30px;
}

img.publications-thumb {
	width: 142px;
	height: 188px;
}

.caption {
	margin: 10px;
}

.responsive-video {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 60px;
	overflow: hidden;
}

.responsive-video iframe,
.responsive-video object,
.responsive-video embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 93.5%;
	height: 93.5%;
}

.video-caption {
	margin: 10px;
}

.accordion {
	margin-bottom: 20px;
	margin-right: 40px;
}

.thumbnail>img.sponsor {
	width: 212px;
	height: 150px;
}

img.carousel-image {
	width: 100%;
}

li.publication {
	margin-bottom: 20px;
}

.page-header h3 a:hover {
	text-decoration: none;
}

iframe.map-frame {
	border: none;
	overflow: hidden;
	margin-top: 10px;
	margin-bottom: 10px;
	margin-left: 0px;
	margin-right: 0px;
	height: 550px;
	width: 100%;
}

ul.sponsors {
	margin-top: 40px;
	margin-bottom: 40px;
}

#footer {
	z-index: 10;
	margin-top: 50px;
	margin-bottom: 0px;
	padding-bottom: 25px;
	border-top-width: 8px;
	border-top-style: solid;
	border-top-color: #2F2F2F;
	background-color: #000000;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	text-align: center;
}

#footer h3 {
	font-size: 19px;
	text-transform: uppercase;
	font-family: BebasNeueRegular;
	color: #8DBECE;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #30393C;
	line-height: 35px;
	margin-bottom: 20px;
	margin-top: 25px;
	font-weight: normal;
}

#footer a img {
	margin-top: 40px;
}

#footer p,
#footer address {
	color: #8F8F8F;
	font-size: 11px;
}

.jumbotron.subhead {
	position: relative;
	padding: 45px 0px 35px 0px;
	color: #fff;
	text-align: center;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .4);

	/* Virginia Tech Maroon gradient */
	background: #861F41 !important;
	background: linear-gradient(45deg, #861F41 0%, #5E1025 100%) !important;

	box-shadow: inset 0 3px 7px rgba(0, 0, 0, .2), inset 0 -3px 7px rgba(0, 0, 0, .2);
}

header#overview .lead {
  font-size: 32px;   /* try 26–32px if you want */
  font-weight: 400;
  line-height: 1.2;
  margin-bottom: 10px;
}

.navbar .nav > li > a {
  color: #000000 !important;
}


#footer .row-fluid {
  display: flex;
  align-items: center;   /* vertical centering */
}

#footer .span2 {
  text-align: center;
}

#footer .span2 img {
  display: inline-block;
  max-width: 140px;   /* adjust if needed */
  height: auto;
}


/* Align research titles with paragraph top (Bootstrap 2 fix) */
.research-text h4 {
  margin-top: 0;
  padding-top: 0;
}

/* =========================
   Research page layout
   ========================= */

.research-block { padding: 25px 0; }
.research-block + .research-block { border-top: 1px solid #ddd; }

/* Title as its own full-width line */
.research-title{
  margin: 0 0 10px 0;
  padding: 0;
}

/* Two-column row under the title */
.research-media img{
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin-top: 0;
}

/* Make Recent News images uniform */
.feature-item img {
  width: 100%;
  height: 200px;          /* adjust: 180–240px works well */
  object-fit: cover;     /* modern browsers */
  display: block;
}


/* Prevent any float leaks */
.research-block { clear: both; overflow: hidden; }

/* --- Recent News: force equal image boxes --- */
.feature-item .news-img{
  width: 100%;
  height: 220px;          /* adjust if you want taller/shorter */
  overflow: hidden;
  display: flex;
  align-items: center;     /* vertical center */
  justify-content: center; /* horizontal center */
}

/* Make the image scale consistently inside the box */
.feature-item .news-img img{
  width: 100%;
  height: 100%;
  object-fit: contain;     /* show full logo, no cropping */
  display: block;

  /* override your earlier theme.css rule */
  max-width: none !important;
}


/* =========================
   Mobile fixes (Bootstrap 2)
   ========================= */
@media (max-width: 767px){

  /* Give container padding on small screens */
  .container{
    padding-left: 15px;
    padding-right: 15px;
  }

  /* 1) Navbar: stop forcing table layout */
  .navbar .nav{
    display: block !important;
    width: auto !important;
  }
  .navbar .nav li{
    display: block !important;
    width: auto !important;
    float: none !important;
  }
  .navbar .nav li a{
    text-align: left !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-radius: 0 !important;
  }

  /* 2) Bootstrap 2 grid: stack spans */
  .row-fluid [class*="span"]{
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin-left: 0 !important;
  }

  /* 3) Media/News cards: remove fixed widths/heights */
  #media .post_row .post{
    width: auto !important;
    height: auto !important;
  }
  #media .post_row .post .img img{
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
  }

  /* 4) Any image should never overflow */
  img{
    max-width: 100% !important;
    height: auto !important;
  }

  /* 5) Footer: don’t force flex on small screens */
  #footer .row-fluid{
    display: block !important;
  }
  #footer a img{
    margin-top: 15px !important;
  }
}

