:root {
  --bg-hex: #00050f;
  --primary-hex: #75bcea;
  --profile-bg: 210 100% 5%;
  --profile-primary: 204 74% 69%;
  --profile-picture-max-height: 200px;
  --hero-items-height: calc((100vh - var(--header-height) - var(--header-gap) * 3) / 2);
}

.hero_palette {
  --bg-dark: 222 100% 3%;
  --bg: var(--profile-bg);
  --bg-light: 204 100% 8%;
  --text: 205 100% 95%;
  --text-muted: 204 74% 69%;
  --highlight: 202 66% 36%;
  --border: 199 100% 20%;
  --border-muted: 201 100% 13%;
  --primary: var(--profile-primary);
  --secondary: 27 65% 66%;
  --danger: 9 53% 66%;
  --warning: 51 35% 50%;
  --success: 149 34% 54%;
  --info: 217 59% 67%;
}

.content_section:has(#hero) {
  height: fit-content;
  box-sizing: content-box;
}

#hero {
  display: flex;
  flex-direction: column;
  gap: calc(var(--gap-content-item) / 2);
  height: var(--hero-items-height);
  width: 100%;
  box-sizing: content-box;
  position: relative;
}

/* =========== Profile =========== */
#map {
  width: 100%;
  height: 100%;
  opacity: 0;
  border-radius: var(--radius);
  box-shadow: 0px 0px 5px 5px hsl(var(--highlight)/40%);
  animation: map_fade_in 2s ease-in 1s 1 normal forwards;
}
#map .maplibregl-ctrl-bottom-right {
  bottom: auto;
  top: 0;
}
#map .maplibregl-ctrl-bottom-right a {
  display: inline;
}

@keyframes map_fade_in {
  100% {
    opacity: 1;
  }
}
.profile_container {
  display: flex;
  flex-direction: column;
  gap: var(--header-gap);
}
.profile_container_content {
  border-radius: var(--radius);
  width: 100%;
  height: calc(100% - 44px);
  padding: 0 1rem 1rem 1rem;
  box-sizing: border-box;
  position: absolute;
  bottom: 0;
  z-index: 1;
  background-image: linear-gradient(180deg, transparent 0%, hsl(var(--bg-light)) 90%);
  align-items: end;
  justify-content: space-between;
}
.profile_container_content_text {
  width: 60%;
  text-shadow: 1px 1px 2px black;
}
.profile_container_content_text h1,
.profile_container_content_text h2 {
  margin: 0;
}
.profile_container_content_text *:last-child {
  margin-bottom: 0;
}
.profile_container_content_picture {
  height: 100%;
  max-height: var(--profile-picture-max-height);
  width: fit-content;
  overflow: hidden;
  border: none;
}
.profile_container_content_picture img {
  aspect-ratio: 1;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background-image: linear-gradient(200deg, hsl(var(--primary)) 0%, hsl(var(--bg)) 70%);
  margin: 0;
}
.profile_container_content_picture-icon {
  background-image: linear-gradient(200deg, hsl(var(--primary)) 0%, hsl(var(--bg)) 70%);
  display: none;
}

/* =========== Experiences =========== */
.experiences_container {
  max-height: var(--hero-items-height);
  height: var(--hero-items-height);
  width: 100%;
  display: flex;
  align-items: center;
}

.experiences {
  max-height: 100%;
  width: 100%;
  border-radius: var(--radius);
  display: flex;
  flex-direction: column;
  backdrop-filter: blur(var(--blur-light));
  position: relative;
}
.experiences__tab {
  box-sizing: border-box;
  align-self: center;
}
.experiences__tab:has(#education:checked) ~ #education-content {
  display: block;
}
.experiences__tab:has(#experience:checked) ~ #experience-content {
  display: block;
}
.experiences__content {
  align-self: center;
  box-sizing: border-box;
  width: 100%;
  padding: 0.5em 1.5em;
  overflow: auto;
}
.experiences__content hr {
  border-style: dashed;
}
.experiences__content h3 {
  margin: 0;
}
.experiences__content h3 + small {
  color: hsl(var(--text-muted));
}
.experiences__content__item {
  margin: 0.8rem 0;
}
.experiences__content__item__subsection {
  margin: 0.3rem 0;
}
.experiences #education-content {
  display: none;
}
.experiences #experience-content {
  display: none;
}

@media screen and (width < 480px) {
  :root {
    --hero-items-height: calc(100vh - var(--header-height) - var(--header-gap) * 2);
  }
  .profile_container_content_text {
    width: 100%;
  }
  .profile_container_content_picture {
    display: none;
  }
  .inline-icon.profile_container_content_picture-icon {
    display: inline-block;
  }
}
@media screen and (width < 768px) {
  :root {
    --profile-picture-max-height: 100px;
  }
}

/*# sourceMappingURL=hero.css.map */
