:root {
	--text: red;
	--line: grey;
	--accent: red;
	--fill: red;
}

body { 
	font-family: Fira; 
  background-color: gray;
  font-size: 0.9em;
}

@font-face {
  font-family: "Fira";
  src: url("FiraSans/FiraSans-Regular.ttf") format("truetype");
}

@font-face {
  font-family: "Fira";
  src: url("FiraSans/FiraSans-Medium.ttf") format("truetype");
  font-weight: bold;
}

* { 
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	scrollbar-color: var(--text) var(--line) }

*::-webkit-scrollbar { width: 20px; }
*::-webkit-scrollbar-track { background: var(--line); }
*::-webkit-scrollbar-thumb { background-color: var(--text); border: transparent; }

img { max-width: 100% }

nav {
	position: relative;
	width: 100%;
	height: 100px;	
  padding: 20px;
  background-image: url("bg/image_6.png");
}

nav button {
  color: white;
  float: right;
  padding: 20px;
}

.button { 
	display: block;
}

.button:hover {
  cursor: pointer;
  color: grey;
}

.button1 { 
  background-color: red;
  width: 170px;
	margin: 5px;
	padding: 5px;
}

.button2 { 
  background-color: white;
	padding: 5px;
  border: 2px solid black;	
}

.button3 { 
  background-color: grey;
  width: 170px;
	margin: 5px;
	padding: 5px;
  border: 2px solid black;	
}

main {
	z-index: 0;
	overflow-y: scroll;
	width: 60%;
  overflow: auto;
  margin: auto;
}

.logo { 
  z-index: 10;
  width: 400px; 
  position: absolute;
  top: -60px;
}

.free { 
  float: left; 
  margin: 0 20px 0 0;
}

/* CUSTOM BOXES */

.full {
  float: left;
  width: 60%;
  margin-left: 30vh;
}

.rightcolumn {
  float: left;
  width: 33%;
}

.leftcolumn {
  float: left;
  width: 70%;
}

.navcolumn {
  float: right;
  width: 70%;
}

.sidebar {
  float: right;
  width: 30%;
}

.topui {
  margin-left: 25px;
}

.bt {
  float: left;
}

@media screen and (max-width: 600px) {
  .rightcolumn, .leftcolumn, .navcolumn, .sidebar, .full, .button2 {
    
    width: 100%;
    padding: 0;
    margin: 0;
  }
}

/* CUSTOM BOXES */

.main {
  background-color: white;
  padding: 20px;
  margin: 0 0 25px 25px;
  border: 2px solid black;
  height: 50vh;
  overflow-y: scroll;
}

.aside-1 {
  background-image: url("bg/image_10.png");
  padding: 10px;
  margin: 0 0 25px 25px;
  border: 2px solid black;
  height: 50vh;
}

.aside-2 {
  background-color: white;
  padding: 10px;
  margin: 10px;
  border: 4px solid green;
  border-radius: 15px;
  height: 200px;
}

.aside-3 {
  background-color: Lavender;
  margin-top: 10px;
  padding: 20px;
  min-height: 170px;
}

.aside-4 {
  margin: 25px 0 0 0;
}

.aside-5 {
  text-align: center;
}

/* CUSTOM BOXES */

hr {
	border: none;
	border-top: 1px solid black;
}

header {
	font-size: 2em;
	margin-bottom: 2rem;
	color:var(--fill);
	filter: drop-shadow(1px 1px 0 var(--text))
			drop-shadow(-1px 1px 0 var(--text))
			drop-shadow(0 -1px 0 var(--text))
			drop-shadow(1px 0 var(--text));
}

h2, h3, h4, h5, h6, p, table, details, cite, blockquote {
	margin: 1rem 0;
}

ul, ol, dl {
	margin: 1rem 0 1rem 2rem;
}

ul ul, ol ol { 
	margin: 0 0 0 2rem;
}

a { 
	color: var(--accent); 
	text-decoration: none;
}

a:hover { 
	color: var(--fill);
	background-color: var(--accent);
}

h6 { font-size: 1em; }
h5 { font-size: 1.25em; }
h4 { font-size: 1.5em; }
h3 { font-size: 1.75em; }
h2 { font-size: 2em;
	text-align: center;
	background-color: var(--accent);
	padding: 5px;
}

@media screen and (max-width: 800px){

  nav, main {
		float: none;
		width: 100%;
		height: fit-content;
	}
	
	nav img {
		display: none;
	}
	
	.button1, .button3 {
	  display: block;
	  width: 100%;
    padding: 0;
    margin: 0 0 1em 0;
	}

	*::-webkit-scrollbar { width: 10px; }	
}
