/* cyrillic-ext */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* hebrew */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
/* latin-ext */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 700;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 700;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* hebrew */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 700;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
/* latin-ext */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 700;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 700;
  src: url(/fonts/Rubik/Rubik-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/Work_Sans/WorkSans-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/Work_Sans/WorkSans-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/Work_Sans/WorkSans-VariableFont_wght.ttf) format('ttf');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

*{
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
}

body{
  background-color: #FFD0DD;
}

.container {
  width: 67vw;
  position: absolute;
}

.preview {
  height: 100vh;
  position: relative;
  text-align: center;
  background: linear-gradient(to bottom, white, #FFD0DD);
  z-index: 1;
}

.preview h1{
  padding-top: 25vh;
  padding-bottom: 3rem;
  font-size: 3rem;
  color: #1C2933;
  font-family: "Rubik", sans-serif;
}

.previewAngle{
  height: 3rem;
  font-size: 3rem;
  color: #1C2933;
}

#hidePreview{
  color: rgba(0, 0, 0, 0);
  background: rgba(0, 0, 0, 0);
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0);
  transition: 1s;
}

.wButtonContainer{
  display: flex;
}

.wPos{
  margin-left: auto;
  margin-right: auto;
  margin-top: 3rem;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
}

.wPos button{
  margin: 1rem;
  margin-top: 0;
  padding: 1rem;
  width: 10vw;
  height: 10vh;
  font-size: 1rem;
  color: #1C2933;
  font-family: "Rubik", sans-serif;
  border-radius: 0.5vw;
  border-style: none;
  background-color: #FFBFBF;
  transition: 0.25s;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
  cursor: pointer;
}

.wPos button:hover{
  background-color: white;
}

.wBuCo1{
  margin-top: 1rem;
  display: flex;
  flex-direction: row;
}

.wBuCo2{
  margin-top: 1rem;
  display: flex;
  flex-direction: row;
}

.wBuCo3{
  margin-top: 1rem;
  display: flex;
  flex-direction: row;
}

.workspace{
  width: 67vw;
  min-height: 100vh;
  -webkit-transform: translateX(-68vw);
  transform: translateX(-68vw);
  transition: 0.5s;
  will-change: transform;
  position: absolute;
  top: 0;
  padding-top: 2rem;
  padding-bottom: 1rem;
  padding-left: 2rem;
  padding-right: 2rem;
  text-align: center;
  color: #1C2933;
  font-family: "Rubik", sans-serif;
  z-index: 2;
}

.wHeadline{
  position: relative;
  display: flex;
  flex-direction: row;
}

.workspace h2{
  margin-bottom: 1rem;
  margin-inline: auto;
}

.alignCW{
  width: 100%;
  position: absolute;
}

.closeWorkspace{
  margin-left: auto;
  width: 5rem;
  font-size: 1.5rem;
  transition: 0.5s;
  cursor: pointer;
}

.closeWorkspace:hover{
  color: #542f46;
}

.workspace hr{
  color: #1C2933;
  background-color:  #1C2933;
  border: 0.1rem solid;
  margin-bottom: 0.5rem;
}

.topics{
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.topic{
  margin: 1rem;
  width: calc(33.33% - 2rem);
  background-color: #1C2933;
  border-radius: 0.5vw;
  transition: 0.5s;
}

.pic{
  overflow: hidden;
  border-top-left-radius: 0.5vw;
  border-top-right-radius: 0.5vw;
}

.pic img{
  width: 100%;
  transition: 0.25s;
  border-top-left-radius: 0.5vw;
  border-top-right-radius: 0.5vw;
}

.topic p{
  margin-top: 0.5rem;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  margin-bottom: 1rem;
  font-size: 1rem;
  color: white;
  transition: 0.25s;
}

.topic:hover img{
  transform: scale(1.05);
}

.topic:hover p{
  color: white;
}

.topic:hover{
  background-color: #542f46;
  cursor: pointer;
}

.aboutMeContent {
  width: 33vw;
  height: 100vh;
  left: 67vw;
  padding-left: 3rem;
  padding-top: 1rem;
  padding-bottom: 3rem;
  position: fixed;
  background-color: #542f46;
  box-shadow: -5px 0px 10px rgba(0, 0, 0, 0.3);
  z-index: 4;
}

#profilepic {
  width: 100%;
  box-sizing: border-box;
  box-shadow: -5px 3px 5px rgba(0, 0, 0, 0.3);
  z-index: 5;
}

.aboutMe {
  height: calc(100vh - 1rem - 6px - ((33vw - 3rem) * 0.6666 + 6rem));
  margin-top: 6px;
  position: relative;
}

.aboutMeGradient{
  width: 100%;
  height: 100%;
  position: absolute;
  display: flex;
  z-index: 2;
  flex-direction: column-reverse;
  pointer-events: none;
  background: -moz-linear-gradient(top, rgba(84, 47, 70, 1) 0%, rgba(84, 47, 70, 0) 8%, rgba(84, 47, 70, 0) 90%, rgba(84, 47, 70, 1) 100%);
  background: -webkit-linear-gradient(top, rgba(84, 47, 70, 1) 0%, rgba(84, 47, 70, 0) 8%, rgba(84, 47, 70, 0) 90%, rgba(84, 47, 70, 1) 100%);
  align-items: center;
}

#aboutMeGradientAngle{
  font-size: 2rem;
  color: white;
}

.infoText{
  width: calc(100% + 20px);
  height: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
}

.infoText::-moz-scrollbarbutton-down{
  width: 0;
}

.infoText h2{
  margin-top: 2rem;
  margin-left: 1rem;
  margin-right: 3rem;
  color: white;
  font-family: "Rubik", sans-serif;
}

.infoText p{
  margin-top: 1rem;
  margin-left: 1rem;
  margin-right: 3rem;
  margin-bottom: 6rem;
  color: white;
  font-family: "Work Sans", sans-serif;
}

.infoText a{
  color: white;
  transition: 0.5s;
}

.infoText a:hover{
  color: #FFBFBF;
}

.info{
  display: none;
  left: 0;
  top: 0;
  position: fixed;
  width: 67vw;
  height: 100vh;
  z-index: 3;
  background-color: rgba(0, 0, 0, 0.5);
  transition: 0.5s;
}

#closeInfo{
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-start;
  padding-top: 1.5rem;
  padding-right: 2rem;
  padding-bottom: 1rem;
  font-size: 2rem;
  background-color: rgba(0, 0, 0, 0);
  color: white;
  transition: 0.5s;
}

#closeInfo:hover{
  color: #542f46;
  cursor: pointer;
}

.infoCarousel{
  width: 67vw;
  height: calc(100vh - 4.5rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.owl-carousel .owl-theme .owl-loaded .owl-drag{
  position: relative;
}

.owl-carousel .owl-stage{
  pointer-events: none;
  display: flex;
  align-items: center;
}

.owl-carousel .owl-item img{
  pointer-events: auto;
  max-height: 60vh;
  max-width: 67vw;
  width: auto;
  margin: 0 auto;
}

.owl-carousel .owl-item video{
  pointer-events: auto;
  display: block;
  max-height: 60vh;
  max-width: 67vw;
  width: auto;
  margin: 0 auto;
}

.owl-theme .owl-nav{
  position: absolute;
  width: 100%;
  top: calc(50% - 2.5rem);
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  pointer-events: none;
}

.owl-theme .owl-nav [class*="owl-"]{
  background-color: transparent;
  font-size: 2rem;
  margin: 1.5rem;
  pointer-events: auto;
}

.owl-theme .owl-nav [class*="owl-"]:hover{
  color: #542f46;
  background-color: transparent;
}

.owl-theme .owl-dots{
  margin-top: 0.5rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.owl-theme .owl-dots .owl-dot span{
  background: white;
}

.owl-theme .owl-dots .owl-dot:hover span{
  background: #542f46;
}

.owl-theme .owl-dots .owl-dot.active span{
  transition: 0.2s;
  background: #542f46;
}

.topicText{
  padding-top: 3rem;
  display: none;
}

.usedProgram{
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding-right: 20px;
}

.program{
  margin: 1rem;
  width: calc(15% - 2rem);
}

.program img{
  width: 100%;
}

.programTitle{
  text-align: center;
}

.programTitle h2{
  margin: 0;
  font-size: 1rem;
}

.adress{
  margin-top: 1rem;
  color: white;
  font-family: "Work Sans", sans-serif;
  text-align: center;
  margin-right: 20px;
}

.adress a{
  color: white;
  transition: 0.5s;
}

.adress a:hover{
  color: #FFBFBF;
}

.errorMessage{
  margin-top: 1rem;
  margin-bottom: 1rem;
  align-self: center;
  font-size: 1.25rem;
  flex-basis: 100%;
  color: white;
  font-family: "Rubik", sans-serif;
}

@media only screen and (max-width: 1600px) {
  .program{
    width: calc(25% - 2rem);
  }
}

@media only screen and (max-width: 1300px) {
  .wPos{
    flex-direction: column;
  }

  .wPos button{
    width: 16vw;
    height: 10vh;
  }

  .wBuCo2{
    margin-top: 1rem;
  }

  .wBuCo3{
    margin-top: 1rem;
  }
}

@media only screen and (max-width: 1000px) {
  .topic{
    width: calc(50% - 2rem);
  }

  .program{
    width: calc(33.33% - 2rem);
  }

  .programTitle h2{
    font-size: 1rem;
  }

  .wPos button{
    width: 20vw;
  }
}

@media only screen and (max-width: 800px) {
  .contentHandler{
    display: flex;
    flex-direction: column-reverse;
  }

  .preview h1{
    padding-top: 5rem;
  }

  .wPos button{
    width: 36vw;
    height: 12vh;
    border-radius: 0.5vh;
  }

  .closeWorkspace{
    width: 2rem;
  }

  .aboutMeContent{
    position: relative;
    left: 0;
    width: 100vw;
    height: auto;
    padding-left: 0;
  }

  #profilepic{
    width: 100%;
    box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.3);
  }

  .aboutMe{
    height: auto;
  }

  .aboutMeGradient{
    display: none;
  }

  .infoText{
    width: 100vw;
    height: auto;
    overflow-y: auto;
    overflow-x: auto;
    padding-left: 2.5rem;
    padding-right: 2rem;
  }

  .infoText h2{
    margin: 0;
  }

  .infoText p{
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 3rem;
  }

  .adress{
    margin: 0;
  }

  .container{
    width: 100vw;
    position: relative;
  }

  .workspace{
    width: 100vw;
    -webkit-transform: translateX(-105vw);
    transform: translateX(-105vw);
  }
  
  .workspace h2 {
    margin-inline: 1rem;
  }

  .topic{
    border-radius: 2vw;
  }

  .pic {
    border-top-left-radius: 2vw;
    border-top-right-radius: 2vw;
  }

  .info{
    width: 100vw;
    height: 50vh;
  }

  .infoCarousel{
    width: 100vw;
    height: calc(50vh - 4.5rem - 20px);
  }

  .owl-carousel .owl-stage {
    pointer-events: auto;
  }

  .owl-theme .owl-nav {
    margin-top: 0;
  }

  .owl-carousel .owl-item img{
    max-height: calc(50vh - 6.5rem - 20px);
    max-width: 100vw;
  }

  .owl-carousel .owl-item video{
    max-height: calc(50vh - 6.5rem - 20px);
    max-width: 100vw;
  }

  .usedProgram{
    padding-right: 0;
  }

}

@media only screen and (max-height: 600px) {

  .preview h1{
    padding-top: 5rem;
  }

  .wPos{
    margin-top: 0.3rem;
  }

  .wPos button{
    height: 16vh;
  }
}

.workspaceVisible{
  -webkit-transform: translateX(0);
  transform: translateX(0);
  transition: 1s;
  will-change: transform;
}
