 :root {
  --dark: black;
  --green: #00E54E;
  --font-family: 'Arial', sans-serif;
  --titles: 'Aladin', cursive;
  --font-size: 100%;
  --font-height: 18px;
  --font-weight: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;
  --font-spacing: 0em;
  --font-scale-xs: 0.75rem;
  --font-scale-s: 0.88em;
  --font-scale-m: 1.1em;
  --font-scale-l: 1.8em;
  --font-scale-xl: 3.5em;
  --font-scale-xxl: 5.5em;
  --mob-padding: 15px;
  --spacing-xs: .95em;
  --spacing-s: 20px;
  --spacing-m: 40px;
  --spacing-l: 60px;
  --center-width: 47vw;
  font-size: var(--font-size);
  font-family: var(--font-family);
  font-weight: var(--font-weight);
  letter-spacing: var(--font-spacing);
  color: var(--dark);
  cursor: var(--cursor);
}
  
  @media screen and (max-width: 600px) {
  :root {
  --font-scale-xs: 0.62em;
  --font-scale-s: 0.75em;
  --font-scale-m: 1.1em;
  --font-scale-l: 1.2em;
  --font-scale-xl: 2.0em;
  --font-scale-xxl: 3.0em;
  --spacing-xs: 10px;
  --spacing-s: 14px;
  --spacing-m: 20px;
  --spacing-l: 40px;
  --spacing-xl: 60px;
  --spacing-xxl: 90px;
  }
}

/* CSS RESET */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

input, textarea, select {
border: 1px solid var(--dark);
-moz-border-radius: 0px;
-webkit-border-radius: 0px;
border-radius: 0px;  
}

input:focus, textarea:focus, select:focus {
border: 1px solid var(--dark);
-moz-border-radius: 0px;
-webkit-border-radius: 0px;
border-radius: 0px;
outline-color: inherit;
outline: 1px solid var(--dark);
outline-radius: 0px;
}

/* WEBSITE SPECIFIC (GLOBAL) */

body.gradient-bg {
  background: linear-gradient(180deg, #FFFFFF 94%, #97FFEC 100%);
}

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

h1, h2, h3, h4, h5, h6 {
	font-family: var(--titles);
}

h1 {
	font-size: var(--font-scale-l);
}

nav, h1, h2, h3, h4 {
	text-transform: uppercase;
}

nav {
  font-size: var(--font-scale-xs)
}

h2 {
	font-size: var(--font-scale-xl);
  margin: 2rem 0 1.5rem 0;
}

h3 {
	font-size: var(--font-scale-l);
  margin: 1.5rem 0 1rem 0;
}

h4 {
  font-size: var(--font-scale-l);
  margin: 3rem 0 -1.5rem 0;
}

blockquote {
  padding-left: 2rem;
}

em {
  font-style: italic;
}

strong {
  font-weight: bold
}

.page {
  display: grid;
  grid-template-columns: 325px auto;
}
.sidebar {
  position: fixed;
  width: 285px;
  padding: 20px;
}
main {
  grid-column-start: 2;
}

.sidenote, figcaption, cite, form.login div, .alert, footer {
  font-size: var(--font-scale-xs);
  text-transform: uppercase;
  line-height: 1;
}

.index {
  margin: 1rem 0;
}

.logout:hover {
  font-weight: 700;
  cursor: pointer;
}

/* LOGIN FORM */

form.login div, .alert {
  margin: 1rem 0;
}

/* INTRO */

.intro-container {
  max-width: calc(var(--center-width) + 100px);
  margin: 3.5rem 0;
}

.intro-container .block-type-markdown, .intro-container .block-type-image figure, .intro-container .block-type-text p, .intro-container .block-type-heading {
  max-width: 100%;
}

.intro-container h2 {
  font: var(--font-family);
  font-weight: bold;
  text-transform: initial
}

.intro {
  width: 100%;
  border: 1px solid var(--dark);
  padding: 1rem;
}

.separator {
  margin-top: 3.5rem
}

.separator img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* BLOCKS */
.block-type-columnTable, .block-type-video figure, .block-type-markdown, .block-type-image figure, .block-type-text p, .block-type-audio, .block-type-list {
  max-width: var(--center-width);
}

.block-type-quote p {
  max-width: calc(var(--center-width) - 1.75rem);
}

.block-type-accordion {
	line-height: 1.35;
	margin: 1.5rem 0;
}
.block-type-accordion details {
	margin: 1rem 0;
	padding-left: 1.5rem;
}
.block-type-accordion summary:hover {
}
.block-type-accordion summary:focus { 
	outline: thin dotted;
}

.block-type-text, .block-type-quote, .block-type-image, .block-type-heading, .block-type-audio, .block-type-video, .block-type-list {
	width: 100%;
	line-height: 1.35;
	margin: 1.5rem 0;
}
.block-type-text p {
	margin: 1rem 0;
}

.block-type-image figure img {
	width: 100%;
}

.video-container {
	width: 100%;
}
.video-wrapper {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
}
.video-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}

table {
  width: 100%;
  line-height: 1.35
}
tbody tr:first-of-type {
  font-weight: 700
}

audio {
  width: 100%;
}

figcaption, cite {
  text-align: center;
  margin: .5rem 0;
  display: block;
}

footer {
  margin: .5rem 0;
}

#fd9c3d6e-ca5b-488d-9f31-856a661dfaaf a {
  word-break: break-all;
}

@media screen and (max-width: 1200px) {
  .sidebar {
  position: relative;
  width: initial;
  padding: 20px;
}
  .intro {
  width: initial;
}
  .page {
  display: block;
  padding: 20px;
}
/*.block-type-video figure, .block-type-image figure, .block-type-audio {
  max-width: 100%;
}*/
.block-type-columnTable, .block-type-text p, .block-type-markdown, .block-type-image figure, .block-type-heading, .block-type-audio, .block-type-video, .block-type-list {
  max-width: 65%;
}
.block-type-quote p {
  max-width: calc(65% - 1.75rem);
}
.delete-on-mobile {
  display: none
}
.delete-on-desktop {
  display: block
}
}

@media screen and (max-width: 800px) {
    nav {
    font-size: var(--font-scale-s);
  }
    .intro-container {
  margin: 1.5rem 0;
  max-width: initial;
  }
  .separator { 
    margin-top: 1.5rem;
  }
  .block-type-columnTable, .block-type-text p, .block-type-markdown, .block-type-image figure, .block-type-heading, .block-type-audio, .block-type-video, .block-type-list {
    max-width: 100%;
  }
  .block-type-quote p {
    max-width: calc(100% - 2rem);
  }
}

@media screen and (max-width: 500px) {
  h1 {
  font-size: 9vw;
  }
  ol {
    margin-inline-start: 1rem;
  }
}
