.flexItems {
	display: flex;
  	flex-direction: row;
}

.flexItems .flexGroup {
  	display: flex;
  	flex-flow: row wrap;
}


.flexItems .flexGroup .flexItem {
  	flex-direction: column;
  	align-content: flex-start;

  	display: flex;
	flex-direction: column;
}


.flexItems .flexGroup .flexItem > div {
	flex: 1 0 content;
}

.flexItems .flexGroup .flexItem2 {
  	flex-direction: column;
  	align-content: baseline;

  	justify-content: space-between;
  	display: flex;
	flex-direction: column;
}

.flexItems .flexGroup .flexItem2 > div {
	flex: 1 0 auto;
}

.flexItems .flexGroup .flexItem .flexImg {
	flex-grow: 0;
	flex-basis: auto;
}

.heightName {
	/*min-height: 2.5em;*/
	font-size: 1.5rem !important;
}


.short-header {
	position:fixed;
	z-index: 600;
	top:0px;
}

#page-header , #featured-post-slider
{
	margin-top:78px; /* DEPENDS ON THE HEIGHT OF THE HEADER */
}

.minimumY-researchArea {
	min-height: 250px !important;
}



.minimumY-team {
	min-height: 148px;
}

.toBottomParent {
	position: relative;
}

.toBottom {
	position:absolute;
	bottom: 5px;
	left: 50%;
	transform: translateX(-50%);
}


table.news-table
{
	width:auto;
	margin-top: -10px; /* Please dont break */
	/*border: 0;
	border-collapse: collapse;*/
}
table.news-table th
{
	font-family: "roboto-regular", sans-serif;
    font-size: 1.7rem;
    line-height: 3rem;
    color: #3C332A;
	font-weight: normal;
    text-rendering: optimizeLegibility;
	padding-bottom: 10px;
	padding-top: 10px;
	/*border: 0;
	border-collapse: collapse;*/
}
table.news-table th a
{
	color: #456ced;
}
table.news-table .news-date
{
	color: #888888;
	white-space: nowrap;
	vertical-align:top;
}

table.news-table p
{
	margin-bottom: 0px;
}


.brick_research_areas {
	width: 20% !important;
}

@media only screen and (max-width:1280px) {
	.brick_research_areas {
		width: 33.33333% !important;
	}
}

@media only screen and (max-width:960px) {
	.brick_research_areas {
		width: 50% !important;
	}
}

@media only screen and (max-width:600px) {
	.brick_research_areas {
		width: 100% !important;
	}
}
@media only screen and (max-width:400px) {
	.brick_research_areas{
		width: 100% !important;
	}

}

.publicationBlockIndex
{
	display:block;
	background-color:white;
	margin-bottom:30px;
	overflow: hidden;
	padding: 10px 10px 10px 20px;
	box-shadow: 0px 0px 5px #888888;
	font-size: 1.9rem;
    line-height: 1.4;
	color: #555555;
}

.publicationBlock
{
	display:block;
	background-color:white;
	margin-bottom:30px;
	overflow: hidden;
	padding: 20px 20px 5px 20px;
	box-shadow: 0px 0px 5px #888888;
}
.publicationBlockMainInfo
{
	display:flex;
	padding:5px 10px 5px 10px;
	background-color:#DDDDDD;
	white-space:nowrap;
	margin-bottom:20px;
	box-shadow: 0px 0px 5px #888888;
}
.publicationBlockTitleHandler
{
	display:inline-block;
	width:100%; /*|victor was 80 with img*/
	align-items: stretch;
	white-space:normal;
}
.publicationBlockTitleHandler > h1
{
	padding-top: 0px;
	margin-bottom: 0px;
	font-size: 1.7rem;
    line-height: 2.5rem;
    font-style: normal;
    font-weight: normal;
	font-family: 'roboto-bold', sans-serif;
	letter-spacing: 0rem !important; 
}
.publicationBlockTitleHandler > h2
{
	font-size: 1.7rem;
    margin-bottom:0px !important;
	line-height: 2.5rem;
    font-style: normal;
    font-weight: normal;
	color:#555555;
	font-family: 'roboto-regular', sans-serif;
	letter-spacing: 0rem !important; 
}
.publicationBlockTitleHandler > h3
{
    margin-bottom:0px !important;
	color:#555555;
	font-size: 1.7rem;
    line-height: 2.5rem;
    font-style: normal;
    font-weight: normal;
	font-family: 'roboto-italic', sans-serif;
		letter-spacing: 0rem !important; 
}
.publicationBlockImageHandler
{
	display:inline-block;
	align-items: stretch;
	padding-top: 0px;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;

	/*width:20%;*/
}
.publicationBlockImageHandler > img
{
	width:100%;
	padding-right:19%;
	padding-left:19%;
	margin: 0 0 0 0 !important;
	vertical-align:middle;
	
}

@media only screen and (max-width:750px) {
	.publicationBlockImageHandler > img
	{
		padding-right:8%;
		padding-left:8%;
	}
}
@media only screen and (max-width:450px) {
	.publicationBlockImageHandler > img
	{
		padding-right:0%;
		padding-left:0%;
	}

	.headerMobile {
		margin-bottom: 10px;
	}

	span {
		padding-top: 5px;
	}

	.Press {
		margin-bottom: 10px;
	}
}

.publicationBlockAbstract
{
	margin-bottom:10px !important;
	text-align: justify;
	line-height: 2.5rem !important;
}

.publicationBlockAbstractTitle
{
	margin-bottom:0.5em !important;
	font-weight:bold;
}

.mainSliderText
{
	background-color:rgba(0,0,0,0.6);
	padding:10px 15px 10px 15px;
	display:inline-block;
}
.mainSliderText li
{
	display:block !important;
}
.mainSliderText > li > h1
{
	margin-bottom: 0rem;
}

/* no more loading thingies, by popular request */
.pace
{
	display:none !important; 
}

/* Formato de publications de Diego */

.table_publications p{	
	width: auto;
	max-width: none;
	margin: 0 auto;
}

.table_publications tr{	
	valign: center;
}

.table_publications h3{	
	width: auto;
	max-width: none;
	margin: 0 auto;
}

.table_publications th{	
   padding-top: 40px;
}

.table_publications td{	
	padding-right: 0px;
	padding-left: 20px;		
	border: 0;
	padding-top: 15px;
	padding-bottom: 0px;
	line-height:2rem !important;
}

.table_publications em,i,strong,b{	

	line-height:2rem !important;
}

.imagestyle img{
	width : 150px;
	height : 77px;
	padding-right: 0px;
	padding-left: 0px;	
    margin-top: 15px;
	margin-right: 0px;
}

.imagestylePress {
	width: 50px;
	height: 50px;
	padding-left: 0px !important;	
	padding-top: 0px !important;
	vertical-align: middle !important;
}

@media only screen and (max-width:500px) {
	.imagestylePress {
		width: 100%;
		height: 60px;
		text-align: center;
	}

	.imagestylePress img{
		width: 50px;
		height: 50px;
		text-align: center;
	}
}

.imagestylePress img {
	max-width : 100%;
	height : auto;
	padding-right: 0px;
	padding-left: 0px !important;	
    margin-top: 0px;
	vertical-align: middle;
	border-radius: 15px;
}

.imagestylePressIcon {
	max-width : 50% !important;
	height : auto;
	padding-right: 0px;
	padding-left: 0px;	
    margin-top: 10px;
	margin-right: 25px;
	vertical-align: middle;
}

.table_publications td.publicationsPress
{
	padding-top:0px;
	margin-left:0px;
	margin-right:0px;
	vertical-align: middle !important;
}

.table_publications tr.Press > td {
	padding-bottom: 20px;
}

.table_publications td.publicationsPress .PressTitle {
	padding-bottom: 10px;
}

.table_publications td.publicationsPress .publicationsPress {
	margin-bottom: 10px;
	padding-top: 0px;
}

.table_publications td.publicationsPress .PressArticle {
}

.table_publications td.publicationsPress span
{
  	padding-left: 5px;
  	padding-right: 10px;
  	border-style: solid;
	border-color: gray;
  	border-width: 1px 0px 0px 0px;
  	display: inline-block;
}

@media only screen and (max-width:500px) {
	.table_publications td.publicationsPress span
	{
		display: block;
	}
}


.table_publications td.publications
	{
	padding-top:23px;
	margin-left:100px;
	margin-right:200px;
	}

@media only screen and (max-width:500px) {
	.table_publications td
	{
		padding-left: 0px !important;
	}
	.table_publications tr , .table_publications td
	{	
		display:block;
	}
	.table_publications td.publications {
		margin-left: 0px;
		margin-right: 0px;
		padding-top: 10px;
	}
	.table_publications thead td{
		display:none;
	}
	.table_publications thead th{
		padding-bottom:0px;
		text-align:center;
		display:block;
	}
	.table_publications thead:first-child th{
		padding-top:20px;
	}
	.table_publications tbody tr:first-child > td{
		padding-top:5px;
	}
	
	
}

.row-publicaciones
{
	max-width: 900px !important;
}

.funding {
	margin-bottom: 0px !important;
	text-align: left;
}

.funding img{
	height: 100px;
	margin-top: 20px !important;
	margin-bottom: 30px !important;
	margin-left: 0px !important;
	margin-right:10px !important; /*a few pxs doesnt hurt*/
	text-decoration: none;
	border-bottom: none;
}

.funding a{
	text-decoration: none;
	border-bottom: none;
}

/*No border bottom on footer images */
.footer-bottom img
{
	text-decoration: none;
	border-bottom: none;
}


/*Handled in jquery */
.dropdownDroppable
{
 
}
.hidden
{
	display:none;
}
.dropdownDropperContainer
{
	cursor: pointer;
}


/* Show more */
.showMoreContainer
{
	
}
.showMoreLink
{
	text-align:center;
	display:block;
	margin-top:1rem;
}
.showMoreLink a,.showMoreLink a:visited{
	 color: #1237B1;
}
.showMoreCover , .showMoreCoverInitial
{
	overflow:hidden;
	line-height: 2.5rem;
	position:relative;
}
.showMoreCoverInitial
{
	height:10rem;
}
.showMoreFader
{
	position:absolute;
	z-index:2;
	width:100%;
	height:2.5rem;
	right:0;
	bottom:0;
	background: linear-gradient(to bottom, rgba(255,255,255,.6) 30%,rgba(255,255,255,1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,.6)), color-stop(100%,rgba(255,255,255,1)));
    background: -webkit-linear-gradient(top, rgba(255,255,255,.6) 30%,rgba(255,255,255,1) 100%);

}

.phone
{
	display:none;
}
	
@media only screen and (max-width:500px) {
	.desktop
	{
		display:none;
	}
	.phone
	{
		display:block;
	}
}



.announce {
	border-radius: 10px;
	border: 1px solid grey;
	text-align: center;
	background: #e2e9e9;
	color: black;
	margin-top: 5px;
}

.announce p {
	margin-bottom: 5px;
	margin-top: 5px;
	margin-left: 5px;
	margin-right: 5px;
}

.announces {
	margin-bottom: 1em;
}

/* ==== Home slider as compact multi-item carousel ==== */
/* ==== Home slider as compact multi-item carousel ==== */

/* 1) make sure the entry-meta (where your title lives) is visible */
#featured-post-slider .entry-meta {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* 2) fix band height */
#slider {
  max-height: 260px;
  overflow: hidden;
}

#featured-post-slider .slides > li {
  height: 260px;
}

/* 3) slide container */
#featured-post-slider .featured-post-slide {
  position: relative;
  height: 100%;
  overflow: hidden;
  border-radius: 6px;
}

/* 4) background image fills the tile and is centered */
#featured-post-slider .post-background.desktop,
#featured-post-slider .post-background.phone {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: cover !important;
  background-position: center center !important;
}

/* 5) text overlay at bottom */
#featured-post-slider .post-content {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}

/* 6) one black strip with one line of text */
#featured-post-slider .mainSliderText {
  margin: 0;
  padding: 0.4rem 0.8rem;
  list-style: none;
  background: rgba(0, 0, 0, 0.55);
  display: inline-block;
}

/* hide second line (journal) */
#featured-post-slider .mainSliderText li:nth-child(2) {
  display: none !important;
}

/* title: bold white */
#featured-post-slider .mainSliderText h1.slide-title {
  margin: 0;
  font-size: 1.4rem;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.2;
}

#featured-post-slider .mainSliderText h1.slide-title a {
  color: #ffffff;
  text-decoration: none;
}

/* ==== Home slider as compact multi-item carousel ==== */
/* ==== Home slider as compact multi-item carousel ==== */



/* ==== Home main + aside layout ==== */
/* ==== Home main + aside layout ==== */

.row.home-main {
  margin-top: 2rem;
}

/* Make sure the columns use the available width nicely */
.home-main .col-eight {
  padding-right: 2rem;
  border-right: 1px solid #eee;
}

.home-main .col-four {
  padding-left: 2rem;
}

.home-aside .recent-papers {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* each item is a row */
.home-aside .recent-paper {
  display: flex;
  align-items: flex-start;
  margin-bottom: 0.7rem;
}

/* make the whole row clickable but keep flex layout */
.home-aside .recent-paper > a {
  display: flex;
  align-items: flex-start;
  text-decoration: none;
}

/* left column: fixed-size thumbnail */
.home-aside .recent-paper-thumb {
  flex: 0 0 70px;      /* width of thumb column */
  height: 70px;
  margin-right: 0.8rem;
  overflow: hidden;
  border-radius: 4px;
}

.home-aside .recent-paper-thumb img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;   /* crop nicely into 70x70 */
}

/* right column: text fills remaining space */
.home-aside .recent-paper-title {
  flex: 1 1 auto;
  font-family: "roboto-regular", sans-serif;
  font-size: 1.7rem;   /* same as news table */
  line-height: 2.2rem;
  color: #1237B1;      /* link-ish blue */
}

/* keep link blue even if theme overrides */
.home-aside .recent-paper a {
  color: inherit;
}

.home-aside .recent-paper a:hover .recent-paper-title {
  text-decoration: underline;
}

/* On small screens stack them again */
@media (max-width: 768px) {
  .home-main .col-eight,
  .home-main .col-four {
    border: none;
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 1.5rem;
  }
}

/* ==== Home main + aside layout ==== */
/* ==== Home main + aside layout ==== */

/* === Widen main page content === */

/* === Home news + recent papers columns === */

.row.home-main {
  margin-top: 2rem;
}

/* first child = news, second child = papers */
.row.home-main > div:first-child {
  padding-right: 2.5rem;
  border-right: 1px solid #eee;
}

.row.home-main > div:last-child {
  padding-left: 2.5rem;
}

/* same heading font */
.home-aside h4,
.home-main h4 {
  font-size: 2rem;
  font-family: "roboto-bold", sans-serif;
}

/* recent papers titles: match news font size */
.home-aside .recent-paper-title {
  font-family: "roboto-regular", sans-serif;
  font-size: 1.7rem;
  line-height: 3rem;
}

/* list layout */
.home-aside .recent-papers {
  list-style: none;
  margin: 0;
  padding: 0;
}

.home-aside .recent-paper {
  display: flex;
  align-items: center;
  margin-bottom: 0.5rem;
}

/* thumbnail box */
.home-aside .recent-paper-thumb {
  flex: 0 0 60px;
  height: 60px;
  margin-right: 0.8rem;
  overflow: hidden;
  border-radius: 4px;
}

.home-aside .recent-paper-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* stack on mobile */
@media (max-width: 768px) {
  .row.home-main > div:first-child,
  .row.home-main > div:last-child {
    border: none;
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 1.5rem;
  }
}

/* === Widen intro text block === */
#content-wrap.site-page .row {
  max-width: 1550px;   /* use more of the window */
}

#content-wrap .primary-content {
  max-width: none;
  width: auto;
}





/* === FINAL HARD FIX: slider caption === */

/* ensure caption wrapper is visible */
#featured-post-slider .entry-meta {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* move caption container to top-right */
#featured-post-slider .post-content {
  position: absolute !important;
  top: 10px;          /* distance from top */
  right: 10px;        /* distance from right */
  left: auto !important;
  bottom: auto !important;
  z-index: 20 !important;   /* above everything */
  pointer-events: none;     /* keeps slider arrows clickable */
}

/* caption box */
#featured-post-slider .mainSliderText {
  background: rgba(0, 0, 0, 0.55);
  padding: 0.35rem 0.6rem;
  list-style: none;
  margin: 0;
  display: inline-block;
  border-radius: 4px;
  pointer-events: auto;
}

/* keep only first line */
#featured-post-slider .mainSliderText li:nth-child(2) {
  display: none !important;
}

/* title styling */
#featured-post-slider .mainSliderText h1.slide-title {
  margin: 0;
  padding: 0;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
  color: #fff !important;
}

#featured-post-slider .mainSliderText h1.slide-title a {
  color: #fff !important;
  text-decoration: none;
}

/* ensure background images fill correctly */
#featured-post-slider .post-background.desktop,
#featured-post-slider .post-background.phone {
  position: absolute !important;
  inset: 0 !important;
  background-size: cover !important;
  background-position: center center !important;
  z-index: 1;
}

/* === FADE BOTTOM OF SLIDER IMAGES INTO THE PAGE BACKGROUND === */

#featured-post-slider .post-background.desktop,
#featured-post-slider .post-background.phone {
  /* fade from fully opaque to transparent near the bottom */
  -webkit-mask-image: linear-gradient(
    to bottom,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 85%,   /* keep image fully visible almost all the way */
    rgba(0,0,0,0) 100%  /* fade only in last 15% */
  );
  mask-image: linear-gradient(
    to bottom,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 85%,
    rgba(0,0,0,0) 100%
  );
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  background-size: cover !important;
    background-position: center center !important;  /* or top center */
}

/* === REMOVE EXCESS GAP BELOW SLIDER === */

/* flexslider adds 60px margin-bottom by default — remove it */
#featured-post-slider.flexslider {
  margin-bottom: 10px !important;    /* was ~60px */
}

/* remove extra padding on the first section after the slider */
#content-wrap .primary-content {
  margin-top: 0 !important;
  padding-top: 10px !important;
}

/* tighten vertical spacing between slider and content */
#content-wrap.site-page {
  padding-top: 0 !important;
}

/* remove default top margin of the main title */
#content-wrap .primary-content h1 {
  margin-top: 10px !important;
}

/* Flexslider default bottom margin */
section#slider,
#featured-post-slider.flexslider {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Section that wraps the main text */
body section#content-wrap.site-page {
  padding-top: 5px !important;   /* try 0 if you want it super tight */
  margin-top: 0 !important;
}

/* First row inside content-wrap */
body section#content-wrap.site-page > .row:first-child {
  margin-top: 0 !important;
}

/* Inner section in the col-twelve (some themes add padding here) */
body section#content-wrap.site-page .col-twelve > section {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Main title: remove any extra top margin */
body section#content-wrap.site-page h1.entry-title {
  margin-top: 0 !important;
}

/* === GRADIENT FADE BELOW SLIDER === */


/* make sure slider parent can position pseudo-element correctly */
#slider {
  position: relative;
}

/* === BANNER HEIGHT CONTROL === */

/* parent container: allow it to be taller */
#slider {
  max-height: none !important;   /* remove 280px cap */
  overflow: visible;             /* don't clip children vertically */
}

/* set the actual banner height */
#featured-post-slider .slides > li {
  height: 300px !important;      /* <- pick what you want: 350, 400, 450... */
}

/* make the slide content fill that height */
#featured-post-slider .featured-post-slide {
  height: 100% !important;
}

/* Center the main title on the home page */
h1.entry-title.add-bottom {
  text-align: center !important;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}




/* horizontal line under "Recent papers" */
.aside-separator {
  border: 0;
  height: 1px;
  background: #cccccc;
  margin: 0.4rem 0 1rem 0;
}

/* layout for recent papers */
.home-aside .recent-papers {
  list-style: none;
  margin: 0;
  padding: 0;
}

.home-aside .recent-paper {
  display: flex;
  align-items: flex-start;
  margin-bottom: 0.7rem;
}

/* anchor contains thumb + info row */
.home-aside .recent-paper > a {
  display: flex;
  align-items: flex-start;
  text-decoration: none;
}

/* thumbnail column */
.home-aside .recent-paper-thumb {
  flex: 0 0 60px;
  height: 60px;
  margin-right: 0.8rem;
  overflow: hidden;
  border-radius: 4px;
}

.home-aside .recent-paper-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* text column */
.home-aside .recent-paper-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* title */
.home-aside .recent-paper-title {
  font-family: "roboto-regular", sans-serif;
  font-size: 1.6rem;
  line-height: 2rem;
  color: #8ca1e6;
}

/* authors line */
.home-aside .recent-paper-authors {
  font-family: "roboto-regular", sans-serif;
  font-size: 1.3rem;
  line-height: 1.7rem;
  color: #555555;
  opacity: 0.9;
}

/* hover effect */
.home-aside .recent-paper a:hover .recent-paper-title {
  text-decoration: underline;
}

/* Match Recent Papers <hr> to Recent News <hr> */
.aside-separator {
  border: 0;
  height: 2px;             /* same thickness */
  background: #777777;     /* same color */
  margin: 1.2rem 0;        /* same spacing as news */
  width: 100%;             /* full width */
}


/* ============================
   Recent Papers – text styling
   ============================ */

/* Title (paper name) */
.recent-paper-title {
    font-size: 1.6rem;                 /* change to 1.8rem, 2.0rem, etc. */
    font-weight: 600;                  /* semi-bold */
    color: #3658c9;                    /* blue */
    line-height: 1.3;
    margin-bottom: 2px;
}

/* Authors */
.recent-paper-authors {
    font-size: 1.3rem;                 /* adjust here */
    font-weight: 400;
    color: #444;                       /* dark grey */
    opacity: 0.9;
    line-height: 1.25;
    margin-bottom: 2px;
}

/* Venue (journal, conference) */
.recent-paper-venue {
    font-size: 1.2rem;                 /* change to whatever you want */
    font-weight: 400;
    color: #747474;                       /* lighter grey */
    line-height: 1.2;
    opacity: 0.85;
}

/* Vertical grouping spacing */
.recent-paper-info {
    display: flex;
    flex-direction: column;
    gap: 2px;                          /* controls vertical spacing */
}

/* match NEWS spacing and separators for recent papers */
.recent-papers {
    margin: 0;
    padding: 0;
}

.recent-paper {
    display: flex;
    align-items: flex-start;
    padding: 0.8rem 0;                /* same vertical spacing as news */
    border-bottom: 1px solid #e5e5e5; /* same subtle light-gray line */
}

.recent-paper:last-child {
    border-bottom: none;              /* remove last line */
}

.recent-paper-title {
    font-size: 1.6rem;
    line-height: 1.4;   /* match news text height */
    margin-bottom: 2px;
}

.recent-paper-authors,
.recent-paper-venue {
    font-size: 1.3rem;
    line-height: 1.35;  /* smaller vertical spacing */
    margin: 0;
}

.recent-paper-thumb {
    flex: 0 0 55px;      /* similar size to news icons */
    height: 55px;
    margin-right: 1rem;
}










/* =============== */

/* =========================
   TEAM GRID: 8 per row
   ========================= */

.team-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  justify-content: center;
}

.team-grid .team-card {
  flex: 0 0 calc(12.5% - 18px);   /* 8 per row */
  max-width: calc(12.5% - 18px);
}

@media (max-width: 1400px) {
  .team-grid .team-card { flex-basis: calc(14.285% - 18px); max-width: calc(14.285% - 18px); } /* 7 */
}
@media (max-width: 1200px) {
  .team-grid .team-card { flex-basis: calc(16.666% - 18px); max-width: calc(16.666% - 18px); } /* 6 */
}
@media (max-width: 980px) {
  .team-grid .team-card { flex-basis: calc(25% - 18px); max-width: calc(25% - 18px); } /* 4 */
}
@media (max-width: 650px) {
  .team-grid .team-card { flex-basis: calc(50% - 18px); max-width: calc(50% - 18px); } /* 2 */
}
@media (max-width: 420px) {
  .team-grid .team-card { flex-basis: 100%; max-width: 100%; } /* 1 */
}

/* Make photos nicely cropped squares */
.team-grid .entry-thumb img {
  width: 100% !important;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
}

/* Make card text a bit smaller */
.team-grid .entry-title.heightName {
  font-size: 1.25rem !important;
  line-height: 1.2;
  margin-bottom: 0.4rem;
}
.team-grid .academic-title {
  font-size: 1.2rem;
  line-height: 1.4;
}
.team-grid .academic-mail {
  font-size: 1.1rem;
  line-height: 1.3;
  word-break: break-word;
}

/* =========================
   SINGLE TABLE for everyone below
   ========================= */

.people-table {
  width: 100%;
  max-width: 1150px;
  margin: 0 auto;
  border-collapse: collapse;
}

.people-table th,
.people-table td {
  padding: 10px 12px;
  border-bottom: 1px solid #e6e6e6;
  vertical-align: top;
}

.people-table th {
  font-weight: 700;
  text-align: left;
}

.people-table td:first-child {
  width: 40%;
}

.people-table a {
  text-decoration: none;
}
.people-table a:hover {
  text-decoration: underline;
}