
/* CSS reset
===================================== */

html, body, div, span
{
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
}




/* Loading Proxima Nova fonts
===================================== */

@font-face
{
  font-family: "ProximaNova-Thin";
  font-style: normal;
  font-weight: normal;
  src: url("//math.uchicago.edu/site/fonts/PN-thin.eot?#iefix") format("embedded-opentype"),
       url("//math.uchicago.edu/site/fonts/PN-thin.woff") format("woff"),
       url("//math.uchicago.edu/site/fonts/PN-thin.ttf") format("truetype"),
       url("//math.uchicago.edu/site/fonts/PN-thin.svg#wf") format("svg");
}

@font-face
{
  font-family: "ProximaNova-Regular";
  font-style: normal;
  font-weight: normal;
  src: url("//math.uchicago.edu/site/fonts/PN-regular.eot?#iefix") format("embedded-opentype"),
       url("//math.uchicago.edu/site/fonts/PN-regular.woff") format("woff"),
       url("//math.uchicago.edu/site/fonts/PN-regular.ttf") format("truetype"),
       url("//math.uchicago.edu/site/fonts/PN-regular.svg#wf") format("svg");
}

@font-face
{
  font-family: "ProximaNova-Semibold";
  font-style: normal;
  font-weight: normal;
  src: url("//math.uchicago.edu/site/fonts/PN-semibold.eot?#iefix") format("embedded-opentype"),
       url("//math.uchicago.edu/site/fonts/PN-semibold.woff") format("woff"),
       url("//math.uchicago.edu/site/fonts/PN-semibold.ttf") format("truetype"),
       url("//math.uchicago.edu/site/fonts/PN-semibold.svg#wf") format("svg");
}

@font-face
{
  font-family: "ProximaNova-Light";
  font-style: normal;
  font-weight: normal;
  src: url("//math.uchicago.edu/site/fonts/PN-light.eot?#iefix") format("embedded-opentype"),
       url("//math.uchicago.edu/site/fonts/PN-light.woff") format("woff"),
       url("//math.uchicago.edu/site/fonts/PN-light.ttf") format("truetype"),
       url("//math.uchicago.edu/site/fonts/PN-light.svg#wf") format("svg");
}

@font-face
{
  font-family: "ProximaNova-Bold";
  font-style: normal;
  font-weight: normal;
  src: url("//math.uchicago.edu/site/fonts/PN-bold.eot?#iefix") format("embedded-opentype"),
       url("//math.uchicago.edu/site/fonts/PN-bold.woff") format("woff"),
       url("//math.uchicago.edu/site/fonts/PN-bold.ttf") format("truetype"),
       url("//math.uchicago.edu/site/fonts/PN-bold.svg#wf") format("svg");
}




/* General stuff
===================================== */

/*  Causes the vertical scrollbar to always be present. */
html
{
  overflow-y: scroll;
}


body
{
  font-family: "ProximaNova-Regular", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  color: #565656;
  line-height: 1.6;
}

h1, h2
{
  font-family: "ProximaNova-Light";
  font-weight: 300;
  line-height: 1.2;
}

h2
{
  color: #896137;
}

/*  Makes all links maroon, and displayed without an underline.  */
a
{
  color: #670a0a;
  text-decoration: none;
}

/*  When links are hovered over, change shade of maroon, and add an underline.  */
a:hover
{
  color: #633835;
  text-decoration: underline;
}

blockquote
{
  font-style: italic;
}



/* Title Bar
===================================== */

h1
{
  margin: 0;
  background-color: #333333;
}

h1 a
{
  display: block;
  padding: 30px 20px;
  border-top: 1px solid #9e2121;
  border-bottom: 1px solid #4a0404;
  text-align: center;

  /* These are all various ways of setting the background color, */
  /* designed so that at least one will work on any browser */
  background-color: #7d0101;
  background: -moz-linear-gradient(top, #7d0101 0%, #651110 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #7d0101), color-stop(100%, #651110));
  background: -webkit-linear-gradient(top, #7d0101 0%, #651110 100%);
  background: -o-linear-gradient(top, #7d0101 0%, #651110 100%);
  background: -ms-linear-gradient(top, #7d0101 0%, #651110 100%);
  background: linear-gradient(top, #7d0101 0%, #651110 100%);

}

h1 a, h1 a:hover
{
  color: #ffffff;
  text-decoration: none;
}

#title-left
{
  padding: 11px 0;
}

#title-right img
{
  height: auto; 
  width: auto;
  vertical-align: middle;
}




/* Navigation Bar
===================================== */

/* Make all text in navigation bar unselectable. */
#navul
{
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#navul, #navul ul
{
  margin: 0;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-top-width: 0;
  background-color: #f7f7f7;
  list-style: none;
}

#navul li
{
  border-top: 1px solid #d9d9d9;
}

#navul a
{
  display: block;
  padding: 5px 10px;
  color: #3e769a;
  cursor: pointer;
}

/* Hovered Main Menu Elements 
------------------------------------- */
#navul li.open, #navul li.closed:hover
{
  background-color: #3e769a;
}

#navul li.open a, #navul li.closed:hover a
{
  color: #ffffff;
  text-decoration: none;
}

/* Sub Menu Elements
------------------------------------- */
#navul li.closed ul
{
  display: none;
}

#navul li.open ul
{
  display: block;
  padding-left: 15px;
  font-size: 13px;
  background-color: #f7f7f7;
}

#navul li.open ul, #navul li.open ul li
{
  border: 0;
}

#navul li.open ul a
{
  color: #6c6d6d;
}

#navul li.open ul a:hover
{
  text-decoration: underline;
}


/* Search Bar
===================================== */

#searchbox
{
  margin-top: 30px;
}

#searchbox .gsc-control-cse-en
{
  padding: 0;
}

#searchbox input.gsc-search-button-v2
{
  padding: 6px 20px;
  margin-top: 4px;
}

#searchbox .gsc-search-box tr
{
  display: block;
  width: 100%;
  float: left;
}

#searchbox td.gsc-input, #searchbox td.gsc-search-button
{
  display: block;
}

#searchbox .gsc-input
{
  padding-right: 0;
}


/*#searchbox .gsc-search-button
{
  float: right;
}*/


/* Social Stuff
===================================== */

#nav-fb, #nav-rss, #nav-twt, #nav-yt, #social a
{
  display: inline-block;
  width: 32px;
  height: 32px;
}

#nav-fb
{
  background: url('//math.uchicago.edu/site/img/social/fb-gray.png') no-repeat;
  opacity: 0.7;
}

#nav-rss
{
  background: url('//math.uchicago.edu/site/img/social/rss-gray.png') no-repeat;
  opacity: 0.7;
}

#nav-twt
{
  background: url('//math.uchicago.edu/site/img/social/twt-gray.png') no-repeat;
  opacity: 0.7;
}

#nav-yt
{
  background: url('//math.uchicago.edu/site/img/social/yt-gray.png') no-repeat;
  opacity: 0.7;
}

#nav-fb:hover, #nav-rss:hover, #nav-twt:hover, #nav-yt:hover
{
  opacity: 1;
}





/* Footer
===================================== */

footer
{
  background-color: #403f3f;
}

footer a
{
  color: #d3d1d1;
}

footer a:hover
{
  color: #ffffff;
}

#footer-wrapper
{
  padding: 20px 40px 80px;
  color: #d3d1d1;
}

#footer-fb, #footer-rss
{
  display: inline-block;
  width: 32px;
  height: 32px;
  display: none;
}

#footer-fb
{
  background: url('//math.uchicago.edu/site/img/social/myfacebook.png') no-repeat;
  opacity: 0.7;
}

#footer-rss
{
  background: url('//math.uchicago.edu/site/img/social/myrss.png') no-repeat;
  opacity: 0.7;
}

#footer-fb:hover
{
  /*background-position: -32px 0;*/
  opacity: 1;
}

#footer-rss:hover
{
  /*background-position: -32px 0;*/
  opacity: 1;
}




/* Main Positioning
===================================== */

main
{
  padding: 0 30px 50px;
  min-height: 850px;
}




/* Responsive Design
===================================== */

nav, main, #footer-left, #footer-right, #title-left, #title-right
{
  width: 100%;
  float: left;
  box-sizing: border-box;
}

h1
{
  font-size: 24px;
}

#title-left, #title-right img
{
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

#footer-left, #footer-right, #title-left, #title-right
{
  text-align: center;
}

@media (max-width: 550px)
{
  #searchbox, #social
  {
    padding: 0 30px;
  }
  
  #social
  {
    text-align: center;
  }
  
  #social h2
  {
    text-align: left;
  }
}


@media (min-width: 550px)
{

  h1
  {
    font-size: 32px;
  }

  main
  {
    padding-right: 0;
  }

  #wrapper, #footer-wrapper, #title-wrapper
  {
    margin: 0 auto;
    display: block;
    max-width: 900px;
  }
  
  #wrapper
  {
    padding: 10px 25px 0;
  }

  nav
  {
    margin-top: 20px;
  }

  nav.normal
  {
    width: 25%;
  }
  
  main.normal
  {
    width: 75%;
  }

  nav.expanded
  {
    display: none;
  }
  
  main.expanded
  {
    width: 100%;
  }

  #footer-left, #footer-right, #title-left, #title-right
  {
    width: 50%;
    float: left;
  }

  #footer-left, #title-left
  {
    text-align: left;
  }

  #footer-right, #title-right
  {
    text-align: right;
  }
}

/* "Clears" after floats so that the appropriate amount of space is taken up */
#wrapper:after, #footer-wrapper:after, #title-wrapper:after
{
  content: "";
  display: table;
  clear: both;
}


/* Small desktop */
@media only screen and (max-width: 979px)
{
  #title-right img
  {
    width: 228px;
    height: 46px;
  }
  
  #title-left
  {
    font-size: 24px;
  }

  #wrapper, #footer-wrapper, #title-wrapper
  {
    margin: 0 auto;
    display: block;
    max-width: 700px;
  }
}

/* Medium desktop */
@media only screen and (min-width: 980px)
{
  #title-right img
  {
    width: 300px;
    height: 60px;
  }

  #title-left
  {
    font-size: 32px;
  }

  #wrapper, #footer-wrapper, #title-wrapper
  {
    width: 900px;
  }
}

/* Large desktop */
@media only screen and (min-width: 1250px)
{
  
}


/* Spacing Between Sections
===================================== */

h2, h3
{
  margin-top: 30px;
}

h2:first-of-type, h3:first-of-type
{
  margin-top: 20px;
}

h4
{
  margin-top: 20px;
}

h4:first-of-type
{
  margin-top: 15px;
}

main li
{
  margin: 10px auto;
}



/* Printing the news RSS feed
===================================== */

.news-list, .event-list
{
  list-style: none;
  padding: 0;
}

.news-list p, .event-list p
{
  padding-left: 20px;
}

.talk-title
{
  font-style: italic;
}

.news-item small
{
  font-weight: normal;
}


/* Page-Specific
===================================== */

/* Taken from https://codepen.io/taniarascia/pen/jBvKVL */

#front-photo
{
  display: block;
  margin: 20px auto 40px;
  width: 100%;
  height: 323px;
  position: relative;
}

#front-photo img
{
  position: absolute;
}

#eckhart-picture, #conference-picture
{
  width: 100%;
}

#eckhart-picture {
	animation-name: fade;
	animation-timing-function: ease-in-out;
	animation-iteration-count: infinite;
	animation-duration: 8s;
	animation-direction: alternate;
}

@keyframes fade {
	0% {
		opacity: 1;
	}
	25% {
		opacity: 1;
	}
	75% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

table
{
  border-collapse: collapse;
}

.contact-table th, .contact-table td,
.undergrad-contact th, .undergrad-contact td
{
  vertical-align: top;
  text-align: left;
  padding: 10px 15px;
}

.people-table
{
  width: 100%;
  margin-bottom: 60px;
}

.people-table th, .people-table td
{
  font-size: 12px;
  text-align: left;
  padding: 2px 10px 2px 5px;
}



.people-table th, .seminar-table th
{
  border-bottom: 2px solid #cccccc;
}

.people-table td, .seminar-table td
{
  border-bottom: 1px solid #cccccc;
}

.people-table img
{
  width: 100px;
  padding-top: 5px;
}

.people-table tr
{
  min-height: 75px;
}

.seminar-table th, .seminar-table td
{
  font-size: 12px;
  padding: 2px 5px;
  width: 25%;
}

.people-table .phone, .people-table .email, .seminar-table .time
{
  white-space: nowrap;
}

#visitor-request
{
  width: 500px;
}

#visitor-request label
{
  font-weight: bold;
  margin: 5px 0;
}

#visitor-request input, #visitor-request select, #visitor-request textarea, #visitor-request p
{
  display: block;
  margin-bottom: 30px;
}


#visitor-request input, #visitor-request select, #visitor-request textarea
{
  font-family: monospace;
}

#visitor-request section
{
  display: block;
  padding: 0 15px;
  margin: 30px 0;
  border: 2px solid #999;
  border-radius: 10px;
}



#visitor-request label span
{
  color: red;
  display: inline-block;
  margin-left: 5px;
  /* float: right;
  right: 0;
  font-weight: normal;*/
}

#visitor-request-submit
{
  margin: 0 auto;
  padding: 0 15px;
  border-width: 2px;
  border-style: solid;
  border-radius: 10px;
  list-style-type: none;
}

#visitor-request-submit.success
{
  border-color: #093;
  background-color: #cfc;
}

#visitor-request-submit.failure
{
  border-color: #f30;
  background-color: #f99;
}

#visitor-request-submit h4
{
  margin-bottom: 0;
}





#graduate-course-schedule
{
  font-size: 8pt;
  display: block;
  overflow-x: auto;
}
#graduate-course-schedule td
{
  vertical-align: top;
  border-top: 1px solid #ccc;
}
#graduate-course-schedule td.title
{
  font-style: italic;
  font-weight: bold;
}
#graduate-course-schedule td.room, #graduate-course-schedule td.time, #graduate-course-schedule td.course
{
  white-space: nowrap;
}

h3.graduate-course-description
{
  font-size: 1em;
}

