*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  border: 2px solid #000000; }

th {
  border: 2px solid #000000; }

td {
  border: 1px solid #000000; }

html {
  scroll-behavior: smooth;
  position: relative;
  min-height: 100%;
  font-size: 16px; }

body {
  font-family: "Open Sans", sans-serif;
  margin: 0;
  margin-bottom: 300px;
  text-align: justify; }

h1, h2, h3, h4 {
  font-weight: 600;
  color: #262626;
  font-family: "Open Sans", sans-serif;
  line-height: 1.5; }

h1.title {
  text-align: center;
  text-transform: uppercase; }

a, a:hover {
  color: #0095AF; }

a {
  text-decoration: none; }

a:hover {
  text-decoration: underline; }

/**** CODE BLOCK ****/
pre code {
  color: black;
  background-color: #f0f0f0;
  display: block;
  padding: 20px;
  overflow-x: scroll; }

p code {
  color: black;
  background-color: #f0f0f0;
  padding: 3px 6px; }

/**** NAVBAR ****/
.navbar {
  text-align: right; }
  .navbar .navbar-brand {
    padding: 0 !important; }

ul.navbar-nav li.dropdown:hover > div.dropdown-menu {
  display: block; }

/**** BUTTONS ****/
.btn-outline-primary {
  border-color: #0095AF;
  color: #0095AF;
  border-width: 2px;
  border-radius: 5px; }

.btn-outline-primary:hover,
.btn-outline-primary:active,
.btn-outline-primary:visited,
.btn-outline-primary:focus {
  background-color: #0095AF;
  border-color: #0095AF;
  cursor: pointer; }

.btn-primary {
  color: white !important;
  background-color: #0095AF;
  border: none;
  transition: 0.5s; }

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
  background-color: #006a7c;
  border-color: #006a7c; }

/**** SIDEBAR ****/
.sidenav-top {
  width: 250px;
  height: 130px;
  background-color: #f0f0f0;
  position: fixed;
  top: 0px;
  text-align: center; }
  .sidenav-top div.search {
    margin-top: 20px; }
    .sidenav-top div.search input {
      width: 88%;
      padding: 3px;
      padding-right: 25px; }
    .sidenav-top div.search button {
      color: #0095AF;
      background-color: transparent;
      border: none;
      cursor: pointer;
      padding: 0px;
      position: absolute;
      right: 10px;
      margin: 3px 10px; }
  .sidenav-top div.sidenav-brand {
    height: 71px;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-left: 16px;
    text-align: left; }

.sidenav {
  height: calc(100vh - 150px);
  top: 130px;
  width: 250px;
  z-index: 2;
  position: fixed;
  left: 0;
  background-color: #f0f0f0;
  overflow-x: hidden;
  text-align: left; }
  .sidenav a {
    text-decoration: none;
    color: #0095AF;
    display: block; }
  .sidenav a.item {
    padding: 10px 8px 5px 15px;
    font-size: large;
    font-weight: 600; }
  .sidenav a.subitem {
    padding: 4px 8px 5px 30px;
    font-size: normal; }
  .sidenav a.active {
    font-weight: 600; }

div#doc-container {
  margin-left: 250px;
  padding: 30px 35px;
  max-width: 1100px;
  width: auto; }
  div#doc-container div.edit {
    text-align: right; }
  div#doc-container img {
    width: 80%; }

div.navbuttons {
  text-align: center; }
  div.navbuttons button {
    margin: 10px; }

.container {
  max-width: 1050px; }

/**** HEADER ****/
header {
  background-color: #f0f0f0;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2);
  margin-left: 10px;
  margin-right: 10px;
  padding: 12px;
  text-align: center; }
  header p {
    font-size: large;
    margin: auto;
    max-width: 950px;
    text-align: justify; }

/**** TABLE OF CONTENTS ****/
ul#markdown-toc {
  position: absolute;
  right: 20px;
  border: 2px grey solid;
  border-radius: 15px;
  width: 280px;
  padding: 5px 12px;
  line-height: 30px;
  list-style-type: none; }
  ul#markdown-toc li {
    list-style-type: none;
    border-bottom: 1px grey solid; }
    ul#markdown-toc li ul {
      padding-left: 25px !important; }
      ul#markdown-toc li ul li {
        border: none; }

@media (max-width: 800px) {
  ul#markdown-toc {
    position: static; }

  div.toc {
    margin-right: 0px; } }
/**** SCROLL TO TOP BUTTON ****/
button#myBtn {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 30px;
  z-index: 99;
  font-size: 20px;
  border: none;
  outline: none;
  background-color: lightgrey;
  color: white;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 5px;
  transition: 1s; }

#myBtn:hover {
  background-color: #0095AF; }

/**** SEARCH PAGE ****/
div.search {
  text-align: center; }
  div.search label {
    font-size: 24px;
    color: #0095AF; }
  div.search input#search-box {
    border: none;
    border-bottom: 1px solid lightgrey;
    outline: none;
    margin-left: 8px;
    padding: 3px;
    padding-left: 10px;
    font-size: large;
    width: 300px; }
  div.search button {
    padding: 4px 8px;
    margin-left: 10px;
    font-size: normal; }

ul#search-results {
  list-style-type: none; }
  ul#search-results a {
    text-decoration-color: black; }

/**** BLOG FORMATTING ****/
div.post img {
  width: 80%; }
div.post iframe {
  width: 100%; }

div.blog img {
  display: none; }

div#contribute {
  position: fixed;
  right: 30px;
  width: 180px; }
  div#contribute h5 {
    font-weight: 400; }
  div#contribute hr {
    margin-top: 8px; }

@media (max-width: 800px) {
  div#contribute {
    position: static; }

  div.toc {
    margin-right: 0px; } }
/**** FOOTER ****/
footer {
  min-height: 250px;
  width: 100%;
  padding-top: 40px;
  position: absolute;
  z-index: 1;
  bottom: 0;
  background-color: #f0f0f0;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
  color: grey; }
  footer p {
    line-height: 15px; }

@media (max-width: 576px) {
  body {
    margin-bottom: 575px; } }
/* ------- MAIN STYLES ---------- */
.btn-main-link {
  align-items: center;
  background: #fff;
  border: none;
  border-radius: 6px;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2);
  color: #008eb0;
  cursor: pointer;
  margin: 5px 15px;
  padding: 5px 15px; }

.btn-main-link:hover {
  scale: 1.07;
  text-decoration: underline; }

.btn-main-link:active {
  border: none; }

.page-subtitle {
  font-size: 1.7rem;
  font-weight: 600;
  margin-bottom: 10px;
  text-align: center;
  text-transform: uppercase; }

.hr-shorter {
  margin: auto;
  margin-top: 20px;
  margin-bottom: 20px;
  max-width: 980px; }

/* ------ TESTING STATUS -------- */
.testing-status {
  font-weight: bold;
  margin: auto;
  max-width: 950px; }

/* --------- CARD --------------- */
.card {
  border-radius: 5px;
  height: 435px;
  margin: auto;
  margin-top: 3rem;
  padding: 0px 5px;
  text-align: center;
  width: 18rem; }

.card-title {
  background-color: #f0f0f0;
  border-radius: 20px;
  border: 1px solid lightgrey;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.2);
  color: black;
  font-weight: 600;
  font-size: 1.3rem;
  margin: -1rem auto 5px auto;
  padding: 10px 20px;
  text-align: center;
  text-transform: uppercase; }

.card-title-highlighted {
  background-color: #008eb0;
  color: white; }

.card p {
  text-align: justify; }

.card-connect-with-us {
  height: fit-content;
  max-width: 80%;
  width: 650px; }
  .card-connect-with-us .btn-main-link {
    height: 55px;
    width: auto; }

/* --------- NAVBAR ------------- */
.dropdown:hover .dropdown-menu {
  display: block; }

.dropdown-item:hover {
  text-decoration: none; }

/* --------- SPONSORS ----------- */
.sponsor-container {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  height: 150vh;
  justify-content: space-around; }

.sponsor-item {
  flex: 1;
  flex-grow: 1;
  margin-right: 30px;
  text-align: center;
  padding: 10px; }

.sponsor-item a {
  text-decoration: none; }

.sponsor-item img {
  margin-bottom: 10px;
  max-height: 105px;
  /* Adjust the maximum height of the logos */
  max-width: 135px;
  /* Adjust the maximum width of the logos */ }

/* ----- BOOTCAMP 2024 ---------- */
.bootcamp .nav-link {
  color: black; }

.bootcamp .nav-link.active {
  color: #0095AF;
  font-weight: bold; }

/**
 * Syntax highlighting styles
 */
.highlight {
  background: #fff; }
  .highlight .c {
    color: #998;
    font-style: italic; }
  .highlight .err {
    color: #a61717;
    background-color: #e3d2d2; }
  .highlight .k {
    font-weight: bold; }
  .highlight .o {
    font-weight: bold; }
  .highlight .cm {
    color: #998;
    font-style: italic; }
  .highlight .cp {
    color: #999;
    font-weight: bold; }
  .highlight .c1 {
    color: #998;
    font-style: italic; }
  .highlight .cs {
    color: #999;
    font-weight: bold;
    font-style: italic; }
  .highlight .gd {
    color: #000;
    background-color: #fdd; }
  .highlight .gd .x {
    color: #000;
    background-color: #faa; }
  .highlight .ge {
    font-style: italic; }
  .highlight .gr {
    color: #a00; }
  .highlight .gh {
    color: #999; }
  .highlight .gi {
    color: #000;
    background-color: #dfd; }
  .highlight .gi .x {
    color: #000;
    background-color: #afa; }
  .highlight .go {
    color: #888; }
  .highlight .gp {
    color: #555; }
  .highlight .gs {
    font-weight: bold; }
  .highlight .gu {
    color: #aaa; }
  .highlight .gt {
    color: #a00; }
  .highlight .kc {
    font-weight: bold; }
  .highlight .kd {
    font-weight: bold; }
  .highlight .kp {
    font-weight: bold; }
  .highlight .kr {
    font-weight: bold; }
  .highlight .kt {
    color: #458;
    font-weight: bold; }
  .highlight .m {
    color: #099; }
  .highlight .s {
    color: #d14; }
  .highlight .na {
    color: #008080; }
  .highlight .nb {
    color: #0086B3; }
  .highlight .nc {
    color: #458;
    font-weight: bold; }
  .highlight .no {
    color: #008080; }
  .highlight .ni {
    color: #800080; }
  .highlight .ne {
    color: #900;
    font-weight: bold; }
  .highlight .nf {
    color: #900;
    font-weight: bold; }
  .highlight .nn {
    color: #555; }
  .highlight .nt {
    color: #000080; }
  .highlight .nv {
    color: #008080; }
  .highlight .ow {
    font-weight: bold; }
  .highlight .w {
    color: #bbb; }
  .highlight .mf {
    color: #099; }
  .highlight .mh {
    color: #099; }
  .highlight .mi {
    color: #099; }
  .highlight .mo {
    color: #099; }
  .highlight .sb {
    color: #d14; }
  .highlight .sc {
    color: #d14; }
  .highlight .sd {
    color: #d14; }
  .highlight .s2 {
    color: #d14; }
  .highlight .se {
    color: #d14; }
  .highlight .sh {
    color: #d14; }
  .highlight .si {
    color: #d14; }
  .highlight .sx {
    color: #d14; }
  .highlight .sr {
    color: #009926; }
  .highlight .s1 {
    color: #d14; }
  .highlight .ss {
    color: #990073; }
  .highlight .bp {
    color: #999; }
  .highlight .vc {
    color: #008080; }
  .highlight .vg {
    color: #008080; }
  .highlight .vi {
    color: #008080; }
  .highlight .il {
    color: #099; }

/*
 * The MIT License (MIT)
 *
 * Copyright (c) 2013-2020 Michael Rose and contributors
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 *
 * Code adopted from the Minimal Mistakes codebase at:
 * https://github.com/mmistakes/minimal-mistakes/blob/master/_sass/minimal-mistakes/_notices.scss
 */
/* Outdated notice */
.outdated-notice {
  margin: 2em 0 !important;
  /* override*/
  padding: 1em;
  color: #262626;
  font-family: "Open Sans", sans-serif;
  font-size: 1.12em;
  text-indent: initial;
  /* override*/
  background-color: #e6f4f7;
  border-radius: 0;
  box-shadow: 0 1px 1px rgba(0, 149, 175, 0.25); }
  .outdated-notice h4 {
    margin-top: 0 !important;
    /* override*/
    margin-bottom: 0.75em; }
  .page__content .outdated-notice h4 {
    /* using at-root to override .page-content h4 font size*/
    margin-bottom: 0;
    font-size: 1em; }
  .outdated-notice p:last-child {
    margin-bottom: 0 !important;
    /* override*/ }
  .outdated-notice h4 + p {
    /* remove space above paragraphs that appear directly after notice headline*/
    margin-top: 0;
    padding-top: 0; }
  .outdated-notice a {
    color: #0095AF; }
    .outdated-notice a:hover {
      color: #005969; }
  .outdated-notice code {
    background-color: #f2fafb; }
  .outdated-notice ul:last-child {
    margin-bottom: 0;
    /* override*/ }

/* Insert a base outdated warning message to any inclusion of .outdated-notice. */
.outdated-notice:before {
  content: 'Note: This page is outdated. ';
  font-weight: bold; }
