/* === Desktop View === */
@media only screen and (min-width: 660px) {
  .mobile-view { display: none; }
}
/* === Desktop View === */


#slide-container {
  max-height: 100vh;
  overflow-y: auto;
  scroll-snap-type: y mandatory;
}

.slide {
  width: 100vw;
  height: 100vh;
  scroll-snap-align: start;
}

/* Style for all reflections */
.reflection {
  -moz-transform: scaleY(-1);
  -o-transform: scaleY(-1);
  -webkit-transform: scaleY(-1);
  transform: scaleY(-1);
  -webkit-mask-image: -webkit-gradient(
      linear,
      right top,
      right bottom,
      from(transparent),
      color-stop(55%, transparent),
      to(rgba(255, 255, 255, 0.3))
  );
  mask-image: linear-gradient(
      to top, 
      rgba(255, 255, 255, 0.3),
      rgba(255, 255, 255, 0),
      transparent
  );
}


/* === landing slide === */
.landing {
  position: relative;
  background-color: black;
  z-index: 1;
}

#header-stamp {
  margin: auto;
  position: absolute;
  top: 19px; left: 0; right: 0;
  width: 42px;
}

header { padding-top: 24px; }

header nav ul {
  margin: auto;
  width: 640px;
  letter-spacing: 2px;
  font-size: 0;
}

header nav ul li {
  display: inline-block;
  font-size: medium;
}
header nav li:first-child {
  padding-left: 5px;
  padding-right: 36px;
}
header li:nth-child(3) {
  padding-left: 98px;
  padding-right: 21px;
}

.logo-container {
  /* center abs. pos. elem. (needs height set) */
  margin: auto;
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  
  /* Logo format: 25:7 (vw) */
  width: clamp( 250px, 25vw, 350px);
  height: clamp(61px, 7vw, 85px);
  padding-top: 10px;
}

.tempRedDiamond {
  position: absolute;
  right: 0;
  /* bottom: 570px; */
  bottom: 0;
  width: 270px;
}

.landing .socials {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  width: 140px;
  margin: 0 auto 40px;
  display: flex;
  justify-content: space-between;
}
/* === landing slide === */


/* === presentation slide === */
.present {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
}

/* logo pos + refl */
.present-header {
  position: absolute;
  top: 0;
  width: 100%;
}
.present-header img:first-child {
  padding-top: 80px;
}
.present-header img:nth-child(2) {
  position: relative;
  margin-top: -2px;
}
.present-header img {
  margin: auto;
  width: 270px;
}

.present-footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 10px 0px 10px;
  text-align: center;
  font-size: small;
  letter-spacing: 2px;
  color: var(--link);
  z-index: 2;
}

.present-content {
  display: flex;
  flex-wrap: wrap-reverse;
  justify-content: space-evenly;
}
.present-content img {
  /* width: clamp( 300px, 40vw, 450px); */
  width: 375px;
  margin-top: 110px;
  margin-right: 10vw;
}
.present-content h1 {
  position: relative;
  /* left: -20px; ToDo: ultra wide view */
  padding-bottom: 16px;
  text-align: center;
  /* font-size: clamp(32px, 1.8vw, 40px); */
  font-size: 34px;
  font-weight: normal;
  color: var(--gold);
}
#fancy-EYE-anchor h1 img {
  display: inline-block;
  position: absolute;
  /* width: clamp(40px, 2vw, 50px); */
  width: 45px;
  margin: 0px 0px 0px 10px;
  filter: brightness(0) saturate(100%) invert(88%) sepia(13%) saturate(1565%) hue-rotate(334deg) brightness(90%) contrast(95%);
}
.present-content .paragraphs {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly;

  /* ToDo: remove height and overflow attribute */
  height: 500px;
  overflow: auto;
  /* ToDo: remove height and overflow attribute */
}
.present-content p:first-child {
  width: 300px;
  text-align: justify;
  /* font-size: clamp( 18px, 0.9vw, 20px); */
  font-size: 18px;
  line-height: 1.5;
}
/* ToDo: ultra wide view */
.present-content p:last-child {
  display: none;
}
/* === presentation slide === */


/* === footer slide === */
footer {
  display: grid;
  position: relative;
  font-size: 1.1em;
  text-align: center;
  background-image: url(../resources/background.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 3;
}

/* socials */
.foot-header {
  position: absolute;
  top: 0;
  width: 100%;
  background-color: whitesmoke;
}
.foot-header div {
  padding: 10px;
  color: black;
  letter-spacing: 2px;
}
.foot-header li:not(:last-child) { padding-right: 20px; }


/* page links */
footer nav ul {
  padding: 12px 0px;
  width: 220px;
}
footer nav ul li:first-child a { color: var(--gold); }
footer nav ul:first-child li:not(:first-child) a { color: var(--link-hover) }
footer nav li:not(:last-child) { padding-bottom: 16px; }

/* li contains text + img */
#fancy-EYE {
  position: relative;
  left: -12px;  /* center text + img */
}
footer nav img {
  display: inline-block;
  position: absolute;
  width: 27px; height: 25px;
  margin-left: 5px;
}

/* company info */
.comp-info {
  position: absolute;
  width: min(70vw, 900px);
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  color: var(--link);
  letter-spacing: 1px;
}
.foot-corp {
  padding: 60px 0px 100px; 
  border-top: 1px solid #4d4d4d;
  font-size: 0.6em;
  line-height: 1.5;
}
footer .logo {
  margin: auto;
  width: 242px;
}
.foot-legal {
  position: absolute;
  padding: 10px;
  bottom: 0;
  left: 0;
  right: 0;
  border-top: 2px solid #4d4d4d;
}
.foot-legal li:first-child {
  margin-left: -12px;
  padding-right: 125px;
}
.foot-legal li:last-child { padding-left: 130px; }
/* === footer slide === */

