body {
  counter-reset: h1counter
}

.level1 .header-section-number {
  display: none;
}

.level2 .header-section-number {
  display: none;
}

h1 {
  counter-reset: h2;
  background-color: rgba(207, 0, 15, 0.2);
  border-top: solid;
  border-right:solid;
  border-bottom: solid;
  border-color: rgba(207, 0, 15, 1);
  border-radius: 0 30px 30px 0;
  padding-left: 5px;
  display: table-caption;
  width: 325%;
}

h2 {
  counter-reset: theorem question exercise;
  font-size: 1.4em !important
}
h2::before {
    counter-increment: h2;
    content: counter(h2) "   ";
    color: rgba(207, 0, 15, 1);
    padding-right: 10px;
}

.def {
  background-color: rgba(207, 0, 15, 0.2);
  background-size: contain;
  margin-left: 20px;
  margin-right: 20px;
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 5px;
}
.def:before {
  display: block;
  content: "Definition " counter(h2) "." counter(theorem) "  ";
  counter-increment: theorem; 
  font-weight: bold;
}

.ex {
  border-left: solid;
  border-color: rgba(207, 0, 15, 1);
  padding-left: 10px;
  margin-bottom: 30px;
}
.ex:before {
  display:block;
  content: "Example " counter(h2) "." counter(theorem) "  ";
  counter-increment: theorem;
  font-weight: bold;
}
.ex p {
  padding-left: 5px;
}

.exsup {
  border-left: solid;
  border-color: rgba(207, 0, 15, 1);
  padding-left: 10px;
  margin-bottom: 30px;
}
.exsup p {
  padding-left: 5px;
}

.lem:before {
  content: "Lemma " counter(h2) "." counter(theorem) ":";
  counter-increment: theorem; 
  font-weight: bold;
  display: inline-block;
  width: -webkit-fill-available;
}
.lem {
  display: block;
  border: solid rgba(207, 0, 15, 1);
  border-radius: 10px;
  background-color: rgba(232, 232, 232, 1);
  margin-left: 40px;
  margin-right: 40px;
  margin-top: 20px;
  margin-bottom: 30px;
  padding: 15px 15px 15px 15px;
}

.prop:before {
  content: "Proposition " counter(h2) "." counter(theorem) ":";
  counter-increment: theorem; 
  font-weight: bold;
  display: inline-block;
  width: -webkit-fill-available;
}
.prop {
  display: block;
  border: solid rgba(207, 0, 15, 1);
  border-radius: 10px;
  background-color: rgba(232, 232, 232, 1);
  margin-left: 40px;
  margin-right: 40px;
  margin-top: 20px;
  margin-bottom: 30px;
  padding: 15px 15px 15px 15px;
}

.cor:before {
  content: "Corollary " counter(h2) "." counter(theorem) ":";
  counter-increment: theorem; 
  font-weight: bold;
  display: inline-block;
  width: -webkit-fill-available;
}
.cor {
  display: block;
  border: solid rgba(207, 0, 15, 1);
  border-radius: 10px;
  background-color: rgba(232, 232, 232, 1);
  margin-left: 40px;
  margin-right: 40px;
  margin-top: 20px;
  margin-bottom: 30px;
  padding: 15px 15px 15px 15px;
}

.thm:before {
  content: "Theorem " counter(h2) "." counter(theorem);
  counter-increment: theorem; 
  font-weight: bold;
  display: inline-block;
  width: -webkit-fill-available;
}
.thm {
  display: block;
  border: solid rgba(207, 0, 15, 1);
  border-radius: 10px;
  background-color: rgba(232, 232, 232, 1);
  margin-left: 40px;
  margin-right: 40px;
  margin-top: 20px;
  margin-bottom: 30px;
  padding: 15px 15px 15px 15px;
}

.prf:before {
  content: "Proof: ";
  color: rgba(207, 0, 15, 1);
  font-weight: bold;
  display: inline-block;
  width: -webkit-fill-available;
}
.prf {
  margin-top: 20px;
  margin-bottom: 80px;
}
.prf p {
  padding-left: 5px;
  display: inline-block;
  width: -webkit-fill-available;
}
.prf:after {
  content: '\220E';
  color: rgba(207, 0, 15, 1);
  font-size: 2em;
  float: right;
}

.exer:before {
  content: "Exercise " counter(exercise) " ";
  counter-increment: exercise; 
  color: rgba(207, 0, 15, 1);
  font-weight: bold;
  display: inline-block;
  width: -webkit-fill-available;
  padding-left: 80px;
}
.exer {
  background: #f5f5f5 5px center/3em no-repeat;
  background-image: url("./Images/exercise.png");
  background-size: 50px 50px;
  background-position: top left;
  margin-bottom: 30px;
}
.exer p {
  padding-left: 80px;
  padding-bottom: 10px;
}

.ques:before {
  content: "Question " counter(question) " ";
  counter-increment: question; 
  color: rgba(207, 0, 15, 1);
  font-weight: bold;
  display: inline-block;
  width: -webkit-fill-available;
  padding-left: 80px;
}
.ques {
  background: #f5f5f5 5px center/3em no-repeat;
  background-image: url("./Images/question.png");
  background-size: 50px 50px;
  background-position: top left;
  margin-bottom: 30px;
}
.ques p {
  padding-left: 80px;
  padding-bottom: 10px;
}