/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
/* stylelint-disable */
/* Keep reset CSS to one minified line */
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}
/* stylelint-enable */

/* Custom Site Styles */

/*
  Use the text-size-adjust property
  to prevent automatically inflating
  text on orientation changes
  (portrait to landscape on a phone,
  for example):
*/

html {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ie-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* HTML5 Elements as Blocks; Cribbed from HTML5 Boilerplate */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/* ========== Base Styles ========== */

/*
  Using 19px/1.333 modular scale
  http://www.modularscale.com/?19&px&1.333&web&text
*/

html {
  font-family: "Depot New W00", Helvetica, Arial, sans-serif;
  padding: 0.75em 9.2308%; /* 12px @ 16px/em; 60px / 650px*/
  padding-top: 0;
  background-color: #E6ECD2;
  color: #59453C;
}
body {
  font-size: 1.1875em;         /* ~ 19px base font size */
  line-height: 1.2631578947em; /* ~ 24px base line height */
}
b,
strong {
  font-weight: bold;
}
cite,
em,
i {
  font-style: italic;
}
ins {
  text-decoration: none;
}
/* Links */
a {
  text-decoration: none;
  color: #567448;
  border-bottom: 0.05263157895em dotted;
}
.preview a {
  color: #FFCE0B;
}
p {
  padding-bottom: 1.2631578947em;
}
li {
  padding-bottom: 0.6315789474em; /* ~ 12px @ 19px/em */
}
ol,
ul {
  padding-bottom: 1.2631578947em;
}
ul > li {
  list-style-type: square;
}
ol > li {
  list-style-type: decimal;
  margin-left: 1em;
}
li ul,
li ol {
  padding-top: 0.6315789474em;
  margin-left: 1.2631578947em;
}
/* Avoid over-padding nested lists */
li ol,
li ul,
li:last-child {
  padding-bottom: 0;
}
h1 {
  font-size: 1.7768947368em; /* ~ 33.761px @ 19px/em */
  line-height: 1.0663191256em; /* ~ 36px @ 33.761px/em */
  padding-bottom: 0.3554397085em; /* ~ 12px @ 33.761px/em */
}
h2 {
  font-size: 1.3440526316em; /* ~ 25.537px @ 19px/em */
  line-height: 0.9398128206em; /* ~ 24px @ 25.537px/em */
  padding-bottom: 0.9398128206em;
}

h3 {
  text-transform: uppercase;
  font-weight: bold;
  background-color: #93A341;
  padding: 0.5em 0 0.5em 0.3em;
  margin-bottom: 0.2em;
}

h4 {
  text-transform: uppercase;
  font-weight: bold;
  padding-bottom: 1.2631578947em;
}
h4 {
  text-transform: none;
  padding-bottom: 0.6315789474em;
}

/* ========== Layout ========== */

html {
  /* Border for the nav to sit on */
  border-top: 2.6875em solid #93A341; /* ~ 43px @ 16px/em | 43 = 12 + 19 + 12 from nav */
}
nav {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}
#links,
#instructor {
  margin-top: 2.5263157895em;
}

/* ========== Modules ========== */

/* Header & Footer */
header {
  padding-top: 2.5263157895em; /* ~ 48px @ 19px/em */
  padding-bottom: 1.2631578947em;
}
footer {
  padding-top: 3.7894736842em; /* ~ 72px @ 19px/em */
}
small,
.tagline,
.fineprint,
.button {
  font-weight: 200;
  color: #777;
  display: block;
}
.preview small {
  color: #555;
}
.assigned small {
  color: #555;
}
.label .button {
  font-size: 0.744018483em; /* ~ 19px @ 25.537px/em */
  text-transform: uppercase;
}
/* Navigation */
nav {
  font-weight: 200;
}
.nav {
  margin-left: 0;
  padding-bottom: 0;
}
.nav li {
  float: left;
  width: 25%;
  list-style-type: none;
  padding-bottom: 0;
}
.nav a {
  display: block;
  text-align: center;
  line-height: 1;
  padding: 0.6315789474em 0.3157894737em; /* ~ 12px 6px @ 19px/em */
  color: #333;
  background-color: #93A341;
  border-bottom: 0;
}

#calendar #nav-cal a,
#projects #nav-pro a,
#policies #nav-pol a,
#due_date #nav-dat a,
#link #nav-lnk a {
  background-color: #FFCE0B;
}

/* Calendar */
.calendar-weeks {
  margin-left: 0;
  padding-bottom: 0;
}
.week {
  margin-left: 0;
}
.week,
.meeting,
.assigned > ul > li {
  list-style-type: none;
}

.meeting {
  padding-left: 1.2631578947em;
  padding-bottom: 1.2631578947em;
}
.meeting ol {
  padding-top: 0;
}
.week h4 {
  padding-right: 0.6315789474em;
}
.agenda .meeting {
  padding-left: 0;
}
.agenda ol {
  margin-left: 0;
  padding-left: 0;
  padding-bottom: 1.2631578947em;
}
.assigned ol,
.assigned ul {
  padding-bottom: 0.6315789474em;
  margin-left: 0;
}
.agenda > ol:first-child {
  padding-top: 0;
  padding-bottom: 1.2631578947em;
}

.preview {
  background-color: #93A341;
  color: #222;
  padding-top: 1.2631578947em;
  margin-right: -11.3208%; /* 60px / 530px (650-120) */
  padding-right: 11.3208%;
  margin-left: -11.3208%;
  padding-left: 11.3208%;
  margin-bottom: 1.2631578947em;
}
.assigned {
  background-color: rgba(180,168,119,.75);
  color: #333;
  padding: 1.2631578947em 11.3208% 0.6315789474em 11.3208%;
  margin-bottom: 1.8947368421em; /* ~ 36px @ 19px/em */
  margin-right: -11.3208%; /* 60px / 530px (650-120) */
  margin-left: -11.3208%;
}
.preview .assigned {
  background-color: #59453C;
  color: #EEE;
}
.preview .assigned small {
  color: #AAA;
}
.assigned h3 {
  padding-bottom: 0.6315789474em;
}
.assigned h4 {
  padding-bottom: 0;
}

#current-week:last-child {
  padding-bottom: 0.6315789474em;
}

#calendar .preview {
  margin-bottom: 0;
}
#calendar .is-next {
  margin-bottom: 1.2631578947em;
}


/* Table */
table {
	table-layout: fixed;
	width: 100%;
  margin-bottom: 1em;
}
table, th, td {
	border: 1px solid #59453C;
	padding: 0px 10px;
}
.tablehead {
	background-color: #93A341;
	text-align: center;
  font-weight: 700;
}

#protable {
  margin-bottom: 0;
}
tr .firstrow {
	border-right: none;
	width: 80px;
  padding-bottom: 15px;
  padding-top: 15px;
}
tr .secondrow {
	border-right: none;
	width: 80px;
  padding-bottom: 15px;
  padding-top: 15px;
}
td a {
	font-weight: 700;
	text-align: center;
}
td {
	text-align: center;
}
.nobullet {
  list-style: none;
}
.alignleft {
	text-align: left;
  padding-top: 5px;
}
.short {
  width: 120px;
}
.redfont {
	color: white;
  background-color: red;
}
.darkredfont {
  color: #d70000;
}
#tablep {
	width: 80%
}

}
#h3wide {
  width: 750px;
}

.topic {
  font-weight: bold;
  text-align: center;
  font-size: 25px;
}

/* Policies */ 

.indent {
  margin-left: 2em;
}

#location > p {
  padding-bottom: 0.5em;
  text-align: center;
}

#grading > p {
  padding-bottom: 0.5em;
}

/* Projects */

#center {
  display: block;
  margin: 0 auto;
  width: 70%;
}

/* Button*/
.accordion {
  background-color: #777;
  color: #333;
  cursor: pointer;
  padding: 0.6315789474em;
  width: 100%;
  text-align: center;
  border: 1px solid #594e51;
  font-weight: bold;
  transition: 0.2s;
}
.accordion h3{
  font-size: 1.3em; /* ~ 19px @ 25.537px/em */
}

.active, .accordion:hover {
  background-color: #9D6D72;
}
.panel{
  padding: 18px 0;
  display: none;
  overflow: hidden;
}

/* ========== State ========== */

.hasjs .extended {
  display: none;
}
.is-visible .extended {
  display: block;
}

/* Media Queries */

/* @345px */

@media screen and (min-width: 21.5625em) {
  /* Let the nav breathe a bit more */
  nav {
    font-weight: normal;
  }
  .nav a {
    padding: 0.6315789474em;
  }
}

/* @560px */

@media screen and (min-width: 560px) {
  .flexbox .agenda > ol {
    display: flex;
    justify-content: space-between;
  }
  .flexbox .agenda > ol > li {
    flex: 0 1 43.5484%;
    padding: 0;
  }
  .assigned {
    padding: 1.2631578947em 1.8947368421em 0.6315789474em 1.8947368421em;
    margin-left: -1.8947368421em;
    margin-right: -1.8947368421em;
  }
  .flexbox .link-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .flexbox #course-resources {
    flex: 0 1 100%;
  }
  .flexbox #essential-tools,
  .flexbox #essential-references {
    flex: 0 1 43.5484%;
  }
}

/* @650px */

@media screen and (min-width: 40.625em) {
  html {
    padding: 0;
  }
  header,
  footer,
  .primary,
  #instructor,
  #links {
    padding-left: 15%;
    padding-right: 15%;
  }
  .tagline,
  .fineprint {
  }
  nav {
    width: 57.14285714%;
    left: 14.28571429%;
  }
  .preview {
    margin-left: -25%; /* 93/372 */
    padding-left: 25%;
    margin-right: -50%; /* 186/372 */
    padding-right: 50%;
  }
  .agenda > ol {
    display: block;
  }
  .link-group {
    position: relative;
  }
  #essential-tools, #course-resources {
    padding-left: 1em;
    width: 42.5%;
    margin-right: 0;
  }
  
  #essential-references {
    position: absolute;
    top: 0px;
    width: 42.5%;
    margin-left: 55%;
  }

}

@media screen and (min-width: 804px) {
  .flexbox .agenda > ol {
    display: flex; /* My life for element/container queries...*/
  }
}
