/* ===================================
   GLOBAL RESET & BASE STYLES
   =================================== */
html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  perspective: 600px;
  overflow: hidden;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* ===================================
   BACKGROUND GRADIENT
   =================================== */
.gradient-background {
  position: fixed;
  top: 0;
  left: 0;
  min-height: 100%;
  min-width: 100%;
  opacity: 1;
  z-index: 100;
}

/* ===================================
   MAIN WRAPPER CONTAINER
   =================================== */
#wrapper {
  min-height: 100%;
}

.wrapper {
  width: 48.61vw; /* 700px at 1440px viewport */
  margin: 4% auto 0;
  text-align: left;
}

/* ===================================
   NAVIGATION TABS
   =================================== */
.navigationTabs {
  height: 1.6vw;
  line-height: 1.6vw;
}

.navigationTabs li {
  float: left;
  height: 1.6vw;
  line-height: 1.6vw;
  padding-right: 0.21vw;
  opacity: 0.7;
}

.navigationTabs li a {
  float: left;
  display: block;
  height: 1.6vw;
  line-height: 1.6vw;
  padding: 0 0.69vw;
  position: relative;
  text-decoration: none;
  /* Color animation handled by JavaScript */
}

.navigationTabs li a.active {
  border-bottom: 0px solid;
}

/* ===================================
   TAB CONTENT SECTIONS
   =================================== */
.tabsContent {
  width: 48.47vw; /* 698px at 1440px viewport */
}

.tab {
  padding: 1.11vw;
  display: none; /* Hidden by default, shown via JavaScript */
}

.tab ul {
  margin-top: 1.11vw;
  list-style: disc;
}

.tab li {
  margin: 0.69vw 0 0 2.43vw;
}

.tab pre {
  font-size: 0.76vw;
  margin-top: 1.39vw;
  width: 46.39vw;
  clear: both;
}

.tab table td {
  padding: 0.42vw 0.69vw 0.42vw 0;
  vertical-align: top;
}

.tab dt {
  margin-top: 1.11vw;
}

/* ===================================
   SPACEGALLERY CAROUSEL
   =================================== */
#myGallery {
  position: relative;
  margin: 0 auto;
  /* Size dynamically controlled by JavaScript */
}

.spacegallery {
  position: relative;
  width: 100%;
  height: 100%;
}

.spacegallery a {
  position: absolute;
  z-index: 1000;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Individual carousel slide elements */
.gradient-wrapper {
  position: absolute;
  left: 50%;
  width: 24.31vw; /* Base width - scaled by JavaScript */
  aspect-ratio: 350 / 375; /* Maintains proportions */
  /* Background colors animated by JavaScript */
}
