html, body {
  margin: 0;
  padding: 0;
  background-color: #372e28;
  background-size: cover;
  color: #dcdcdc;
  scroll-behavior: smooth;
  overflow-x: hidden;
  font-family: 'Arial', sans-serif;
}

span {
  user-select: none;
}

.hide {
  display: none;
  pointer-events: none;
  width: 0 !important;
}

.sticky {
  position: fixed;
  top: 0;
}

.previewpic {
  margin-left: 46px !important;
}

.left {
  float: left;
  margin: 0 15px 0 -42px;
}

p.textcontent {
  width: 312px;
}

.commentarypreview {
  margin-left: 106px;
}

#bg {
  position: absolute;
  right: 7.5vw;
  top: 15vh;
}

#englishmode.unavailable {
  filter: opacity(.3);
  pointer-events: none;
}

#frenchmode.unavailable {
  filter: opacity(.3);
  pointer-events: none;
}

#comparemode.unavailable {
  filter: opacity(.3);
  pointer-events: none;
}

#toolbar.sticky {
  width: 95vw;
  height: 70px;
  z-index: 1;
}

#toolsbtn.sticky {
  z-index: 4;
}

#toolsbtntitle.sticky {
  z-index: 4;
}

#scrollarrows.sticky {
  position: fixed;
  margin-top: 42.25vh;
}

.unslid {
  width: 0 !important;
  filter: opacity(0) !important;
  opacity: 0 !important;
}

.unslid span {
  filter: opacity(0);
  opacity: 0 !important;
}

.slidable {
  transition: filter .1s, width .5s;
}

.delay span {
  transition-delay: .5s
}

#header {
  width: 100vw;
  height: 8em;
  background-image: url("20180111_165900.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  filter: brightness(75%);
}

#title {
  position: absolute;
  font-family: 'Cormorant Garamond', serif;
  font-weight: 700;
  font-size: 45px;
  margin: 1.2em 0 0 2.75em;
  text-shadow: 3px 3px 20px black;
  z-index: 2;
}

#title a {
  color: #fff;
  text-decoration: none;
}

#title2 {
  position: absolute;
  font-family: 'Cormorant Garamond', serif;
  font-weight: 700;
  font-size: 40px;
  left: 7.5vw;
  top: 16vh;
  z-index: 1;
}

#aboutcontent {
  font-family: 'Muli', sans-serif;
  position: absolute;
  width: 45vw;
  top: 25vh;
  left: 7.5vw;
  color: #dcdcdc;
  font-size: 16px;
  line-height: 1.5em;
}

#aboutcontent a {
  color: #dcdcdc;
  text-decoration: none;
  border-bottom: 1px #dcdcdc dotted;
}

#aboutcontent a:hover {
  border-bottom: none;
}

#nav {
  background-color: #181818;
  width: 100vw;
  position: relative;
  z-index: 2;
}

#nav a {
  text-decoration: none;
  color: #dcdcdc;
}

#nav ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: block;
}

#nav ul li a {
  text-decoration: none;
}

#nav ul li ul {
  margin: 0 -1em 0 -1em;
  display: none;
}

#nav ul li ul li {
  background-color: #181818;
}

#nav ul li ul li a {
  text-decoration: none;
  color: #dcdcdc;
}

#nav>ul>li:hover>ul {
  display: block;
}

#nav>ul>li:hover {
  background-color: #000;
}

#nav>ul>li>ul>li:hover {
  background-color: #000;
}

#nav>ul {
  height: 60px;
  font-family: 'Arial', sans-serif;
  margin-left: 7.3em;
  margin-bottom: 0;
  padding-bottom: 0;
}

#nav>ul>li {
  float: left;
  line-height: 59px;
  text-align: center;
  color: #dcdcdc;
  padding: 0 1em 0 1em;
  margin-bottom: 0;
}

.navbaractive {
  background-color: #080808;
}

.navbaraside {
  float: right !important;
  margin-right: 6em;
  background-color: #101010;
  width: 12em;
}

.navbaraside a {
  text-decoration: none;
  color: #dcdcdc;
}

.smol {
  font-size: 13px;
}

/*application styles*/
#sourceexplorer {
  display: grid;
  position: absolute;
  width: 95vw;
  margin: 2vh 2.5vw 2.5vh 2.5vw;
  background-color: #808080;
  color: #000;
  grid-template-rows: 60px 70px auto;
}

#analysisexplorer {
  display: grid;
  position: absolute;
  width: 95vw;
  margin: 2vh 2.5vw 2.5vh 2.5vw;
  background-color: #808080;
  color: #000;
  grid-template-rows: 60px 70px auto;
}

#analysis {
  grid-row: 3;
  background-color: #fff;
  margin: 0 .5vw 0 .5vw;
  padding: 4vw 20vw 2vw 20vw;
  width: 54vw;
  font-size: 20px;
  line-height: 1.5em;
  font-family: 'Cormorant Garamond', serif;
  font-weight: 400;
  transition: .5s;
}

#analysis p {
  margin-bottom: 40px;
}

#returntotop {
  position: fixed;
  cursor: pointer;
  width: 10vw;
  height: 4vh;
  padding-top: 1.5vh;
  background: #2d2a2a;
  color: #dcdcdc;
  border-radius: 15px;
  font-size: 16px;
  font-family: 'Muli', sans-serif;
  text-align: center;
  top: 90vh;
  right: 5vw;
  float: right;
}

.mainuibutton {
  width: 180px;
  height: 50px;
  background-color: #2d2a2a;
  color: #dcdcdc;
  float: right;
  margin: 10px 15px 0 0;
  font-size: 16px;
  border: none;
}

.mainuibutton i {
  font-size: 1.1em;
}

.searchbutton {
  height: 39px;
  width: 39px;
  margin: 0px -28px 0px -115px;
  float: right;
}

#searchbutton.searchbutton {
  height: 39px;
  width: 39px;
  margin: 15px 15px 0px -10px;
  float: right;
}

#analysissearchbar.searchbar {
  width: 300px;
}

#detailedtools.expanded {
  width: 250px;
}

#detailedtools {
  position: relative;
  grid-column: 1;
  grid-row-start: 2;
  grid-row-end: 4;
  width: 0px;
  transition: .5s;
  background-color: #181818;
  border-top: 1px dotted #fff;
}

#searchtitle {
  margin: 76px 0 5px 10px !important;
}

#detailedtools p {
  white-space: nowrap;
  color: #dcdcdc;
  margin: 10px 0 5px 10px;
}

#documentsearch, #documentgoto {
  grid-column: 1;
  width: 200px;
  margin: 5px 10px 0 10px;
  colour: #fff;
  font-size: 16px;
}

.searchbar {
  grid-column: 1;
  width: 180px;
  height: 23px;
  padding: 6px 0 6px 6px;
  font-size: 16px;
}

#searchbar.searchbar {
  width: 250px;
}

ul.dropdown {
  display: block;
  list-style-type: none;
  margin: 0 0 0 15px;
  padding-inline-start: 0;
  width: 250px
}

#viewoptionsbtn, #sortoptionsbtn, #accessibilitybtn {
  grid-column: 1;
  width: 230px;
  height: 27px;
  margin: 10px 10px 0 10px;
  padding: 10px 0 0;
  background-color: grey;
  color: #fff;
  font-size: 16px;
  text-align: center;
}

.optionscollapsible i {
  transform: rotateZ(-90deg);
}

#viewoptionsbtn {
  margin-top: 20px !important;
}

.submenubtn {
  background: #808080;
  color: #fff;
  border: none;
  margin: 15px 1px 0 0;
  width: 70px;
  height: 30px;
}

.colourbtn {
  border: none;
  margin: 15px 1px 0 5px;
  width: 35px;
  height: 35px;
}

#whiteandblack {
  background: #fff !important;
  border-right: 17.5px solid #000;
}

#blackandyellow {
  background: #000 !important;
  border-right: 17.5px solid #ffff00cf;
}

#blueandyellow {
  background: blue !important;
  border-right: 17.5px solid #ffff00cf;
}

#blackandwhite {
  background: #000 !important;
  border-right: 17.5px solid #fff;
}

#yellowandblue {
  background: #ffff00cf !important;
  border-right: 17.5px solid blue;
}

#fontsizeup.submenubtn, #fontsizeneutral.submenubtn, #fontsizedown.submenubtn {
  height: 35px;
  width: 45px;
}

#fontsizeup {
  margin-left: 35px;
}

p.title {
  margin: 10px 0 -10px 0 !important;
  color: #fff;
}

#toolswrapper {
  margin-top: 80px;
}

#namebar {
  grid-row: 1;
  grid-column-start: 1;
  grid-column-end: 4;
  background-color: #181818;
  color: #dcdcdc;
  text-align: center;
  padding-top: 1.30em;
  font-size: 15px;
}

#toolbar {
  grid-column-start: 1;
  grid-column-end: 3;
  grid-row: 2;
  background-color: #808080;
}

#toolsbtn, #indexbtn {
  position: absolute;
  margin-top: 74px;
  margin-left: 25px;
  width: 50px;
  cursor: pointer;
  float: left;
  z-index: 4;
}

#toolsbtn.sticky {
  position: fixed;
  margin-top: 14px;
}

#toolsbtntitle, #indexbtntitle {
  position: absolute;
  margin-top: 84px;
  margin-left: 75px;
  color: #2d2a2a;
  font-size: 20px;
  z-index: 4;
}

#indexbtn {
  margin-top: 13px;
}

#indexbtntitle {
  margin-top: 23px;
}

#toolsbtntitle.sticky {
  position: fixed;
  margin-top: 23px;
}

#detailedtools.sticky {
  z-index: 3;
}

.open {
  color: #dcdcdc !important;
}

.bar1, .bar2, .bar3 {
  width: 35px;
  height: 5px;
  color: #fff;
  background-color: #181818;
  margin: 6px 0;
  transition: 0.4s;
}

.open .bar1 {
  -webkit-transform: rotate(-45deg) translate(-9px, 6px);
  transform: rotate(-45deg) translate(-9px, 6px);
  background-color: #fff;
}

.open .bar2 {
  opacity: 0;
}

.open .bar3 {
  -webkit-transform: rotate(45deg) translate(-8px, -8px);
  transform: rotate(45deg) translate(-8px, -8px);
  background-color: #fff;
}

#index {
  position: absolute;
  background-color: #2d2a2a;
  color: #dcdcdc;
  height: 615px;
  width: 400px;
  margin: 7px 0 0 15px;
  z-index: 1;
}

#indexwrapper {
  margin-top: 70px;
}

.index, .display {
  color: #dcdcdc;
  list-style: none;
}

.index {
  margin-top: 80px;
}

.indexli {
  margin-top: 15px;
  margin-left: 10px;
}

.indexli a {
  text-decoration: none;
  color: #dcdcdc;
}

.indexactive {
  color: #dcdcdc !important;
}

.toolbaractive a, .indexactive a {
  text-decoration: none;
  color: #dcdcdc;
  border-bottom: dotted 1px #dcdcdc;
}

/*content styles*/
#content {
  grid-column: 2;
  grid-row: 3;
  display: grid;
  margin: 0 .5vw 0 .5vw;
  background-color: #fff;
}

#content.blackandyellow, #analysis.blackandyellow {
  background: #000;
  color: #ffff00cf;
}

#content.blueandyellow, #analysis.blueandyellow {
  background: blue;
  color: #ffff00cf;
}

#content.yellowandblue, #analysis.yellowandblue {
  background: #ffff00cf;
  color: blue;
}

#content.blackandwhite, #analysis.blackandwhite {
  background: #000;
  color: #dcdcdc;
}

#scroller {
  grid-column: 5;
  background: #fff;
  width: 4.25vw;
}

#scrollarrows {
  position: absolute;
  margin-left: 1.15%;
  margin-top: 27vh;
  width: 50px;
  line-height: 4em;
}

#up {
  margin-bottom: 1.5vh;
}

#down {
  margin-top: 1.5vh;
}

#scrollarrows i {
  cursor: pointer;
  z-index: 4 !important;
  font-size: 1.75em;
}

#main, #middlefrench, #margin {
  display: grid;
  grid-auto-rows: 87.5vh;
  justify-content: center;
}

#main, #middlefrench {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 500;
  font-size: 19px;
}

#middlefrench {
  width: 0;
  grid-column: 2;
  transition: .5s;
}

#main {
  width: 73.75vw;
  grid-column: 3;
  transition: .5s;
  border-right: #808080 dotted 1px;
}

#margin {
  width: 15vw;
  grid-column: 4;
  font-size: 12px;
  transition: .5s;
  cursor: pointer;
  border-right: 1px dotted #2d2a2a;
  font-family: 'Muli', sans-serif;
}

.m, .mf, .a {
  align-self: center;
  transition: .5s;
}

.mf {
  width: 25vw;
  text-align: center;
}

.m {
  width: 35vw;
  margin: 0 1vw 0 1vw;
  text-align: center;
}

.a {
  margin: 50px;
  width: 20vw;
}

.textpreview {
  filter: opacity(0.7);
  margin-left: 7vw;
  width: 8vw;
}

.textpreview2 {
  filter: opacity(0.7);
  margin-left: 6vw;
  width: 10vw;
}

.textpreview i {
  margin-left: 2vw;
}

.textpreview2 i {
  margin-left: 3vw;
}

.important {
  font-size: 18px;
}

.first {
  margin-top: -18vh;
}

.a.first {
  margin-top: -6em;
}

.uncalled {
  filter: opacity(0);
}

#main.tools {
  width: calc(73.75vw - 250px);
}

#main.toolscomparison {
  width: calc(36.875vw - 125px);
}

#middlefrench.toolscomparison {
  width: calc(36.875vw - 125px);
  border-right: 1px dotted #808080;
}

#main.toolscontext {
  width: calc(58.75vw - 250px);
}

#margin.toolscontext {
  width: 30vw;
}

#main.toolscomparisoncontext {
  width: calc(29.375vw - 125px);
}

#middlefrench.toolscomparisoncontext {
  width: calc(29.375vw - 125px);
  border-right: 1px dotted #808080;
}

#margin.toolscomparisoncontext {
  width: 30vw;
}

#main.context {
  width: 58.75vw;
}

#margin.context {
  width: 30vw;
}

#main.comparisoncontext {
  width: 29.375vw;
}

#middlefrench.comparisoncontext {
  width: 29.375vw;
  border-right: 1px dotted #808080;
}

#margin.comparisoncontext {
  width: 30vw;
}

#main.comparison {
  width: 36.875vw;
}

#middlefrench.comparison {
  width: 36.875vw;
  border-right: 1px dotted #808080;
}

#main.toolsfrench {
  width: 0;
  border-right: none;
}

#middlefrench.toolsfrench {
  width: calc(73.75vw - 250px);
  border-right: 1px dotted #808080;
}

#main.toolsfrenchcontext {
  width: 0;
  border-right: none;
}

#margin.toolsfrenchcontext {
  width: 30vw;
}

#middlefrench.toolsfrenchcontext {
  width: calc(58.75vw - 250px);
  border-right: 1px dotted #808080;
}

#main.frenchcontext {
  width: 0;
  border-right: none;
}

#margin.frenchcontext {
  width: 30vw;
}

#middlefrench.frenchcontext {
  width: 58.75vw;
  border-right: 1px dotted #808080;
}

#main.french {
  width: 0;
  border-right: none;
}

#middlefrench.french {
  width: 73.75vw;
  border-right: 1px dotted #808080;
}

.squished {
  width: 20vw;
}

.extrasquished {
  width: 15vw;
}

#fortune {
  height: 199.25px;
  width: 181.75px;
}

.display {
  margin-top: 45px;
}

@media only screen and (min-width : 1650px) {
  #main, #middlefrench {
    font-size: 26px;
  }

  #detailedtools.expanded {
    width: 350px;
  }

  #main.tools {
    width: calc(73.75vw - 350px);
  }

  #main.toolscomparison {
    width: calc(36.875vw - 175px);
  }

  #middlefrench.toolscomparison {
    width: calc(36.875vw - 175px);
    border-right: 1px dotted #808080;
  }

  #main.toolscontext {
    width: calc(58.75vw - 350px);
  }

  #main.toolscomparisoncontext {
    width: calc(29.375vw - 175px);
  }

  #middlefrench.toolscomparisoncontext {
    width: calc(29.375vw - 175px);
    border-right: 1px dotted #808080;
  }

  #middlefrench.toolsfrenchcontext {
    width: calc(58.75vw - 350px);
  }

  #middlefrench.toolsfrench {
    width: calc(73.75vw - 350px)
  }

  #sourceexplorer {
    grid-template-rows: 74px 80px auto;
  }

  #analysisexplorer {
    grid-template-rows: 74px 80px auto;
  }

  #namebar {
    padding-top: 1.45em;
    font-size: 18px;
  }

  #margin {
    font-size: 17px;
  }

  #toolbar.sticky {
    width: calc(95vw - 2px);
    height: 74px;
  }

  #toolsbtn {
    margin-top: 88px;
  }

  #toolsbtntitle {
    margin-top: 98px;
  }

  #documentsearch, #documentgoto {
    width: 240px;
    margin: 5px 10px 0 10px;
  }

  .searchbar {
    grid-column: 1;
    width: 260px;
  }

  #viewoptionsbtn, #sortoptionsbtn, #accessibilitybtn {
    width: 300px;
  }

  .searchbutton {
    margin: -39px -68px 0px -115px;
  }

  #index {
    margin: 7px 0 0 15px;
    height: 650px;
    width: 500px;
  }

  #indexbtn {
    margin-top: 14px;
  }

  #indexbtntitle {
    margin-top: 23px;
  }

  .previewpic {
    margin-left: 102px !important;
  }

  .left {
    float: left;
    margin: 0 15px 0 -72px;
  }

  .commentarypreview {
    margin-left: 154px;
  }

  .textpreview i {
    margin-left: 1vw;
  }

  .textpreview {
    margin-left: 7.5vw;
  }

  .textpreview2 {
    margin-left: 7.2vw;
  }

  .textpreview2 i {
    margin-left: 2.2vw;
  }

  p.textcontent {
    width: 423px;
  }

  #analysis {
    font-size: 24px;
  }

  #toolswrapper {
    margin-left: 10px;
    margin-top: 80px;
  }

  #aboutcontent {
    font-size: 19px;
    top: 27.5vh;
    width: 50vw;
    left: 10vw;
  }

  #bg {
    position: absolute;
    right: 10vw;
    top: 20vh;
  }

  #title2 {
    font-size: 45px;
    left: 10vw;
    top: 20vh;
  }

  #returntotop {
    font-size: 18px;
    padding-top: 2vh;
  }
}