html {
  --honeydew: #f2fff0ff;
  --ivory: #fffdf1ff;
  --mikado-yellow: #fec20eff;
  --princeton-orange: #ff9100ff;
  --moonstone: #03b4ccff;
  --rufous: #992201ff;
  --cal-poly-green: #2f3e12ff;
  --dark-purple: #2d1335ff;
  --penn-blue: #091540ff;
  --smoky-black: #150a01ff;
  --black: var(--smoky-black);
  --white1: var(--honeydew);
  --white2: var(--ivory);
  --accent1: var(--mikado-yellow);
  --accent2: var(--princeton-orange);
  --accent3: var(--moonstone);
  --accent4: var(--rufous);
  --dark1: var(--cal-poly-green);
  --dark2: var(--dark-purple);
  --dark3: var(--penn-blue);
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

body#wholepagebody {
  font-family: "Gantari";
  font-weight: 400;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-image: url("/website/images/backgrounds/body-background.png");
  background-repeat: repeat;
}

body#framebody {
  display: flex;
  margin: 0px;
  font-family: "Gantari";
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

header {
  display: flex;
  justify-content: center;
  color: var(--accent1);
  border: 2px dashed var(--accent3);
  background-image: url("/website/images/backgrounds/header-background.png");
  background-repeat: repeat;
  z-index: 1;
  width: 1000px;
}

h1,
h2,
h3,
h4,
h5 {
  font-family: "Federo";
  letter-spacing: 0.2rem;
}

header h1 {
  font-family: "Barrio";
  letter-spacing: normal;
}

h1:not(header h1) {
  text-shadow: 0px 0px 10px var(--h1-color);
  font-size: 30px;
  color: var(--accent2);
}

h2 {
  color: var(--accent1);
  padding-bottom: 15px;
  margin-bottom: -10px;
}

h2:hover {
  transition: 40s linear;
  background-position: 1000px 100%, 1010px calc(100% - 8px);
}

h1 {
  color: var(--h1-color);
}

h3 {
  color: var(--h3-color);
}

h4 {
  color: var(--h4-color);
}

h5 {
  font-size: 16px;
  text-decoration: underline;
}

a {
  color: var(--accent1);
}

a:hover {
  color: var(--accent2);
}

#leftsidebar a,
#smallnav a {
  color: var(--accent4);
  font-weight: 700;
}

button {
  cursor: pointer;
  padding: 5px;
}

img.star {
  width: 20px;
  height: 20px;
}

details {
  max-width: 99%;
  display: block;
}

details img {
  height: auto;
  display: block;
}

#skiplink {
  display: none;
}

#skiplink:focus {
  display: block;
}

#wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  color: var(--white2);
}

#mainframe {
  width: 800px;
  display: flex;
}

#rightsidebar,
#maincontent,
#leftsidebar {
  padding: 20px;
}

#leftsidebar {
  width: 200px;
  height: 700px;
  background-image: url("/website/images/backgrounds/leftsidebar-background.png");
  color: var(--black);
  border: 2px solid var(--dark1);
}

#leftsidebar h2 {
  color: var(--dark1);
}

#rightsidebar {
  background-image: url("/website/images/backgrounds/sidebar-background.png");
  background-repeat: repeat;
  color: var(--white1);
  width: 200px;
  min-width: 200px;
  border: 2px dashed var(--accent2);
}

#rightsidebar img {
  border: 2px dotted var(--sidebar-img-border);
}

#rightsidebar img.portrait {
  border: 0;
  width: 100%;
}

#rightsidebar ul {
  margin-left: -20px;
}

#maincontent {
  border: 3px solid var(--accent4);
  background-image: url("/website/images/backgrounds/maincontent-background.png");
  background-repeat: repeat;
  color: var(--white2);
}

#maincontent_header {
  display: flex;
  align-items: center;
  justify-content: space-around;
}

#smallnav {
  display: none;
  background: var(--accent1);
  color: var(--dark3);
  width: 800px;
}

#smallnav ul {
  display: flex;
  justify-content: center;
  padding-left: 0px;
}

#smallnav ul li {
  margin-left: 10px;
  margin-right: 10px;
  list-style: none;
}

#website-welcome:hover {
  cursor: zoom-in;
}

#orange-fruit {
  cursor: grab;
}

.widget {
  width: 150px;
}

#images {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.gallery img,
.gallery a img {
  width: 500px;
}

.gallery-pic {
  margin: 40px;
  background: var(--accent2);
  padding: 10px;
  border-radius: 10px 5px 20px 15px/15px 20px 10px 5px;
  rotate: 1deg;
  width: max(200px, 500px);
}

.gallery-pic:nth-of-type(2n) {
  rotate: -1deg;
  border-radius: 1px 2px 20px 15px/15px 20px 15px 25px;
}

.gallery-pic:nth-of-type(3n) {
  rotate: 2deg;
  border-radius: 20px 2px 20px 15px/15px 2px 10px 20px;
}

.img-description {
  background: var(--dark3);
  padding: 10px;
  text-align: right;
}

.img-description a {
  color: var(--white1);
}

.artist {
  font-family: "VelodromaBasicWide";
}

.gallery-censor {
  background: var(--dark3);
}

.gallery-censor summary {
  padding: 10px;
}

.flex-section {
  display: flex;
}

.row {
  display: flex;
  flex-direction: row;
  margin-bottom: 30px;
}

.col {
  width: 33%;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 15px;
}

.flex {
  display: flex;
}

.section-divider {
  display: flex;
  width: 100%;
  justify-content: space-evenly;
}

button.definition {
  padding: 2px;
}

.homepage-link-imgs {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

[role="tooltip"] {
  display: block;
  background-color: var(--accent2);
  position: fixed;
  width: 500px;
  top: calc(50% - 150px);
  left: calc(50% - 250px);
  z-index: 9999;
  color: var(--black);
  padding: 20px;
  border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;
}

[role="tooltip"] .tooltip__body {
  padding: 10px;
}

.hidden {
  display: none;
}

@media only screen and (max-height: 800px) {
  html {
    align-items: flex-start;
  }
}

@media only screen and (max-width: 1200px) {
  html {
    display: block;
  }

  #wrapper {
    flex-direction: column;
    align-items: center;
  }

  header {
    width: 800px;
  }

  #leftsidebar {
    display: none;
  }

  #smallnav {
    display: initial;
  }

  .smallmaincontent {
    height: auto;
    min-width: 600px;
  }

  .smallmaincontent.norightsidebar {
    width: 800px;
    min-width: 800px;
  }

  .gallery-pic img {
    width: 100% !important;
  }
}

@media only screen and (max-width: 900px) {
  #mainframe {
    width: 80vw;
    margin: auto;
  }

  header {
    width: 80vw;
  }

  #smallnav {
    width: 80vw;
  }

  .smallmaincontent {
    min-width: 600px;
  }
}

@media only screen and (max-width: 765px) {
  #framebody {
    display: flex;
    flex-direction: column;
  }

  #rightsidebar {
    width: 100vw;
  }

  header {
    display: flex;
    justify-content: center;
  }

  header h1 {
    margin-left: 0px;
  }

  #maincontent {
    width: 100vw;
    max-width: 100vw;
    min-width: 0;
  }

  #maincontent li span {
    word-break: break-word;
    overflow-wrap: break-word;
  }
}

@media only screen and (max-width: 530px) {
  [role="tooltip"] {
    width: 80vw;
  }
}

@media only screen and (max-width: 500px) {
  #georgie-mail__wrapper {
    display: none !important;
  }

  header h1 {
    margin-left: 0px;
  }

  #maincontent {
    width: 100vw;
    max-width: 100vw;
    min-width: 0;
  }

  #maincontent li span {
    word-break: break-word;
    overflow-wrap: break-word;
  }
}

@media only screen and (max-width: 530px) {
  [role="tooltip"] {
    width: 80vw;
  }
}

@media only screen and (max-width: 500px) {
  #georgie-mail__wrapper {
    display: none !important;
  }
}

@font-face {
  font-family: "Gantari";
  src: url("/style/fonts/Gantari-Regular.ttf") format("truetype");
}

@font-face {
  font-family: "Yatra";
  src: url("/style/fonts/YatraOne-Regular.ttf") format("truetype");
}

@font-face {
  font-family: "Barrio";
  src: url("/style/fonts/Barrio-Regular.ttf") format("truetype");
}

@font-face {
  font-family: "Federo";
  src: url("/style/fonts/Federo-Regular.ttf") format("truetype");
}

@font-face {
  font-family: "VelodromaBasicWide";
  src: url("/shrines/ai_art/style/VelodromaBasicWide/font.woff2")
      format("woff2"),
    url("/shrines/ai_art/style/VelodromaBasicWide/font.woff") format("woff");
}
