:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

:root {
  --theme-color: #3C3C3B;
  --primary-color: #EF8103;
  --secondary-color: #FFD450;
  --tertiary-color: #A8C767;
  --footer-color: #A8C767;
  --footer-link-color: #504D61;
  --nav-link-color: #504D61;
  --nav-bg-color: #43AAE0;
  --topbar-bg-color: #504D61;
  --background-color: #FFFFFF;
  --theme-heading-color: var(--theme-color);
  --theme-hero-bg: #ffffff;
  --theme-hero-color: #ffffff;
  --file-background-color: #EF8200;
  --file-text-color: #504D61;
  --link-text-color: #504D61;
  --quote-ff: Indie Flower;
  --theme-border-radius: 16px;
}

html,
body {
  height: 100%;
}

body {
  margin: 0;
  font-family: "Raleway", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  font-size: var(--font-base-size);
  font-weight: 400;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--theme-heading-color);
  font-size: 2rem;
}

/* Nav */

nav {
  height: 80px;
  background-color: var(--nav-bg-color);
  position: sticky;
}

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  box-sizing: border-box;
  flex-direction: row;
  justify-content: space-between;
}

@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

@media (min-width: 992px) {
  .logo-expandable.logo-expanded {
    transform: scale(1.5);
  }
}

@media (min-width: 1200px) {
  .logo-expandable.logo-expanded {
    transform: scale(1);
  }
}



.logo-expandable .school-logo {
  height: 100%;
  max-width: 150px;
  background-color: #ffffff;
  object-fit: contain;
}

.logo-expandable {
  height: 80px;
  background: #fff;
  padding: 10px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
  transform-origin: top left;
  transition: transform 0.2s ease;
  box-sizing: border-box;
  width: fit-content;
}

.nav-link-container {
  display: flex;
  align-items: center;
}

.nav-link {
  color: var(--nav-link-color);
  margin-left: 5px;
  margin-right: 5px;
  padding: 15px;
  font-weight: bold;
  text-transform: uppercase;
  border-radius: 8px;
  text-decoration: none;
}

.nav-link-active {
  background-color: #FFF;
}

.nav-toggle {
  display: none;
  padding: 9px 10px;
  border-radius: 5px;
  border: none;
  background-color: #FFF;
  height: fit-content;
  margin-block: auto;
}

.nav-toggle-icon {
  height: 30px;
  width: 30px;
  display: block;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")
}

.nav-toggle:hover {
  cursor: pointer;
}

.nav-dropdown {
  background-color: var(--nav-bg-color);
  transition: max-height 0.3s;
  max-height: 0;
  overflow: hidden;
  box-sizing: border-box;
}

@media (max-width: 999px) {
  .nav-toggle {
    display: block;
  }

  .nav-link-container {
    display: none;
  }

  #nav-toggle-checkbox:checked+.nav-dropdown {
    max-height: 150px;
  }
}

#nav-toggle-checkbox {
  display: none;
}





.nav-dropdown-links {
  margin-block: 1rem;
  display: flex;
  flex-direction: column;
}


/* Main*/

main {
  min-height: 600px;
  flex: 1 0 auto;
}




/* Footer */

footer {
  background-color: var(--footer-color);
}

footer .container {
  padding: 24px 20px 24px 20px;
  display: flex;
  justify-content: flex-start;
}


@media (max-width: 768px) {
  footer .container {
    flex-direction: column;
  }
}

@media (max-width: 768px) {
  footer .container .column {
    width: 100% !important;
  }
}


footer .container .column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.contact-title {
  margin: 20px 0 8px 0;
  padding-bottom: 5px;
  color: #ffffff;
  font-size: 2rem;
}

footer .container div p {
  color: #ffffff;
}

.footer-span {
  margin-bottom: 5px;
  display: inline-block;
}

.footer-link {
  color: var(--theme-color);
  text-decoration: none;
  margin-bottom: 5px;
}

.footer-link:hover {
  text-decoration: underline;
}


footer img {
  max-width: 300px;
}