body {
	font-family: 'Arial', sans-serif;
	font-size: 14px;
}

.post {
	font-family: 'Arial', sans-serif;
	font-size: 18px;
}

a, a:hover {
	color: #3355BB;
}

/*---------------------------------------------------------------*/

#mainnav {
	background-color: #FFFFFF;
}

.navbar-brand {
	font-size: 3em;
	line-height: 0.6em;
	font-variant: small-caps;
}

.navbar-brand a {
	color: #FFFFFF;
}

.navbar-brand a:hover {
	color: #FFFFFF;
    text-decoration: none;
}

/*---------------------------------------------------------------*/

.sidebaritem {
    font-size: 14px;
    margin-top: 5px;
}

.sidebarheader {
    font-weight: bold;
    font-variant: small-caps;
    font-size: 17px;
    margin-bottom: 5px;
}

.sidebarname {
    font-weight: bold;
    font-variant: small-caps;
    font-size: 24px;
    margin-bottom: 10px;
}

.misc-link {
  font-size: 0.85em;
  color: #777;
}
.misc-link:hover {
  color: #444;
}

/*---------------------------------------------------------------*/

#officehours {
	margin-top: 8px;
	margin-bottom: 8px;
}

#prospectives {
	margin-top: 8px;
	margin-bottom: 8px;
}

/*---------------------------------------------------------------*/

.teachingitem {
	margin-bottom: 6px;
}

.teachingterm {
	font-weight: bold;
}

.teachinglink {
	font-weight: bold;
}

/*---------------------------------------------------------------*/

.travelitem {
	margin-bottom: 6px;
}

.oldtravelitem {
	color: #FFFFFF;
}

.traveldate {
	font-weight: bold;
}

.travelloc {
	/*font-weight: bold;*/
}

.travelevent {
	/*font-style: italic;*/
}

/*---------------------------------------------------------------*/

.resourcelink {
	font-weight: bold;
}

/*---------------------------------------------------------------*/

.mainitem {
	margin-bottom: 1.25em;
}

.mainheader {
	font-weight: bold;
	font-variant: small-caps;
	font-size: 25px;
	margin-bottom: 6px;
}

/*---------------------------------------------------------------*/

.newsitem {
	margin-bottom: 8px;
}

.newsdate {
	font-weight: bold;
}

/*---------------------------------------------------------------*/

.pub {
    padding-bottom: 8px;
    margin-top: 16px;
}

.pubimagesection {
    vertical-align: middle;
}

.pubtextsection {
	padding-left: 0px;
}

.pubtitle {
	font-weight: bold;
}

.pubvenue {
	font-style: italic;
}

.pubblurb {
    margin-top: 24px;
    margin-bottom: 24px;
}

.pubaward {
	display: inline-block;
	margin-top: 5px;
	background-color: #112266;
	font-size: 13px;
}

/*---------------------------------------------------------------*/

/* Masonry layout for travel page */
.travel-gallery {
  column-count: 3;
  column-gap: 1rem;
}

.travel-photo {
  width: 100%;
  margin-bottom: 1rem;
  display: block;
  break-inside: avoid;
}

/* Tablet */
@media (max-width: 992px) {
  .travel-gallery {
    column-count: 2;
  }
}

/* Mobile */
@media (max-width: 600px) {
  .travel-gallery {
    column-count: 1;
  }
}

.lightbox-overlay {
  position: fixed;
  inset: 0; /* shorthand for top/right/bottom/left: 0 */
  background: rgba(0, 0, 0, 0.85);
  display: none;               /* hidden by default */
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

.lightbox-overlay.visible {
  display: flex;
}

.lightbox-overlay img {
  max-width: 90vw;
  max-height: 90vh;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.7);
  border-radius: 4px;
  cursor: zoom-out;
}

.sidebar-home-btn {
  font-size: 0.85em;
  padding: 4px 10px;
  border-radius: 999px; /* pill-shaped */
}

#home-link {
  margin-top: 10px;
}
