
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article, aside, details, figcaption, figure, footer, header, main, menu,
nav, section, summary {
    display: block
}

audio, canvas, progress, video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

progress {
    vertical-align: baseline
}

template, [hidden] {
    display: none
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:active, a:hover {
    outline-width: 0
}

b, strong {
    font-weight: inherit
}

b, strong {
    font-weight: bolder
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: 0.67em 0
}

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

code, kbd, pre, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

button, input, select, textarea {
    font: inherit;
    margin: 0
}

optgroup {
    font-weight: bold
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

button, html [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

textarea {
    overflow: auto
}

[type="checkbox"], [type="radio"] {
    box-sizing: border-box;
    padding: 0
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: 0.54
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}


*,
*::before,
*::after {
  box-sizing: inherit;
  margin: 0;
  padding: 0;
}

::selection {
  background-color: #7c7c7c;
}

::-moz-selection {
  background-color: #7c7c7c;
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
  font: 400 16px/1.5 'Open Sans', 'Helvetica', 'Arial', sans-serif;
  margin: 0 auto;
  max-width: 1250px;
  padding: 0 1em;
}

svg {
  fill: currentColor;
  stroke: currentColor;
}

form {
    border: 1px solid #ececec;
    padding: 0.5em
}

label {
    display: block
}

button, input[type='submit'], input[type='reset'] {
    background: transparent;
    border: 1px solid #2d2d2d;
    cursor: pointer;
    padding: 0.5em
}

button:hover, input[type='submit']:hover, input[type='reset']:hover {
    background: #ececec
}

button, input, textarea {
    color: inherit;
    font: inherit
}

input[type='text'], textarea {
    border: 1px solid #ececec;
    margin: 0.5em 0;
    width: 100%
}

textarea {
    max-width: 100%;
    padding: 0.5em
}

/*Text*/

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.25;
  font-weight: 300;
  margin: 1em 0 0.5em;
}

h1 {
  font-size: 2.5em;
}

h2 {
  font-size: 1.85em;
  letter-spacing: -1.25px;
}

h3 {
  font-size: 1.65em;
  letter-spacing: -1px;
}

h4 {
  font-size: 1.35em;
  letter-spacing: -1px;
}

a {
    color: #9c27b0;
    cursor: pointer;
    text-decoration: none
}

a:hover {
    color: #2d2d2d;
    text-decoration: underline
}


p + p,
li + li {
  margin-top: 1.25em;
}

dl::before, dl::after {
    display: table;
    content: '';
    clear: both
}

dl dt {
    display: block;
    float: left;
    font-weight: 700;
    text-align: left;
    width: 10%
}

dl dd {
    display: block;
    float: left;
    margin-bottom: 0.5rem;
    padding-left: 1rem;
    width: 90%
}


/* Tables*/

table {
    border-collapse: collapse;
    display: table;
    max-width: 100%;
    overflow-x: auto;
    width: 100%
}

@media screen and (max-width: 600px) {
    table {
        display: block
    }
}

th,
td {
  padding: 0.5em;
}

th {
    border-bottom: 2px solid #242424;
    text-align: left;
    vertical-align: bottom
}

td {
    border-bottom: 1px solid #d7d7d7;
    border-top: 1px solid #d7d7d7;
    text-align: left
}

table.lectures a {
    display: inline-block;
    padding: 1px 5px;
    background: rgba(0, 67, 255, 0.05);
    border-radius: 5px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

/*"Responsive" iframe*/

.responsive-iframe iframe {
  width: 100%;
}

.accessibility-aid {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    left: 0;
    margin: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 1px
}

.accessibility-aid:focus {
    background: #ececec;
    clip: auto;
    font-weight: 600;
    height: auto;
    padding: 0.5em 1em;
    width: auto;
    z-index: 100
}



html, body {
    height: 100%;
    width: 100%
}

html {
    background: #ececec;
    box-sizing: border-box;
    color: #2d2d2d
}

body {
    font: 400 16px / 1.5 'Open Sans', 'Helvetica', 'Arial', sans-serif;
    margin: 0 auto;
    max-width: 1250px;
    padding: 0 1em
}



div.content {
  clear: both;
  position: absolute;
  float: left;
  margin-left: 200px;
  max-width: 1000px;
/*  font-family: Verdana, Geneva, Lucida, Helvetica, Arial, sans-serif;
*/}


img {/* border style for all images */
  border: 0;
}

img.b4 {/* scalable em size class 468px/60px banners */
  width: 16.83em; /* replaces 468px width */
  height: 9.06em; /* replaces 60px height */
}

a:link {
  color: #037;
}

a:visited {
  color: #037;
}

div.title {
  padding-right: 1em;
  text-align: right;
  font-size: 75%;
  border: solid 3px #666666;
  /* border: solid 3px #336699; */
  /*background-image: url("http://www.cdf.toronto.edu/~csc108h/winter/images/hbg70.jpg");*/
  margin-bottom: 2.5ex;
  background-color: #666666;
  /*  background-color: #336699; */
  border-radius: 10px;
  color: white;
}

.clear {
  clear: both;
  font-size: 1px;
}

.footer {
  clear: none;
  margin-left: 20%;
  margin-top: 1px;
  text-align: right;
  border-top: solid 3px white;
}

.footer .left {
  margin-top: 1px;
  float: left;
  text-align: left;
  width: 60%;
}

.footer .right {
  margin-top: 1px;
  float: right;
  text-align: right;
  width: 40%;
}

.spacer {
  clear: both;
}


div.navigation {
  clear: both;
  position: absolute;
  float: left;
  padding: 15px 5px 15px 5px;
  /*width: 12%;*/
  /*font-family: Verdana, Geneva, Lucida, Helvetica, Arial, sans-serif;*/
  background-color: #666666;
  border-radius: 10px;
  color: white;
}

.navigation .links {
  text-align: right;
}

div.navigation p {
  /*font-family: Verdana, Geneva, Lucida, Helvetica, Arial, sans-serif;*/
  color: white;
}

div.navigation p:first-child {
  border-top: none;
}

div.navigation a, div.navigation em {
  display: block;
  margin: 0 0.5em;
}

div.navigation a, div.navigation em {
  /*border-top: 2px solid white;*/
}

div.navigation a:first-child {
  border-top: none;
}

div.navigation a:link {
  text-decoration: none;
  color: white;
}

div.navigation a:visited {
  text-decoration: none;
  color: white;
}

div.navigation a:hover {
  background: white;
  color: #666666;
}

div.navigation a.validate:hover {
  background: #666666;
  color: white;
}

.contact {
    border: 1px solid #ececec;
    display: table;
    padding: 0.5em 0 0.5em 0;
}

.links > b {
    margin: 0.25em 0 0.25em 0;
    display: inline-block;
}

.contact img, .contact dl {
    display: table-cell;
    vertical-align: top;
    margin-right: 0.5em
}

@media screen and (max-width: 600px) {
    .contact img, .contact dl {
        display: block
    }
}

@media screen and (max-width: 600px) {
    .contact dl {
        margin-top: 1em
    }
}


