/** =================== VARIABLE =================== **/
/* cyrillic-ext */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200 1000;
  font-display: swap;
  src: url(/fonts/Nunito/Nunito-VariableFont_wght.ttf) format("truetype");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200 1000;
  font-display: swap;
  src: url(/fonts/Nunito/Nunito-VariableFont_wght.ttf) format("truetype");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200 1000;
  font-display: swap;
  src: url(/fonts/Nunito/Nunito-VariableFont_wght.ttf) format("truetype");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200 1000;
  font-display: swap;
  src: url(/fonts/Nunito/Nunito-VariableFont_wght.ttf) format("truetype");
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200 1000;
  font-display: swap;
  src: url(/fonts/Nunito/Nunito-VariableFont_wght.ttf) format("truetype");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/** =================== STATIC =================== **/
/* cyrillic-ext */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-ExtraLight.ttf) format("truetype");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-ExtraLight.ttf) format("truetype");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-ExtraLight.ttf) format("truetype");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-ExtraLight.ttf) format("truetype");
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-ExtraLight.ttf) format("truetype");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, 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: "Nunito";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-Regular.ttf) format("truetype");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-Regular.ttf) format("truetype");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-Regular.ttf) format("truetype");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-Regular.ttf) format("truetype");
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/Nunito/static/Nunito-Regular.ttf) format("truetype");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
*,
::before,
::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  background: #212121;
  color: #e0e0e0;
  font-family: "Nunito", sans-serif;
  font-weight: 200;
  font-size: 1.25rem;
}

body {
  display: flex;
  flex-direction: column;
  align-items: center;
}

header {
  height: 10rem;
  width: 100%;
  position: fixed;
  top: 0;
  background: #212121;
  display: flex;
  flex-direction: column;
  justify-content: end;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  white-space: nowrap;
}
@media (max-width: 55rem) {
  header {
    position: unset;
  }
}
@media (max-width: 30rem) {
  header {
    padding: 2vw 4vw;
  }
}

h1 {
  font-size: 2.5rem;
  font-weight: 200;
  color: #902090;
}
@media (max-width: 30rem) {
  h1 {
    font-size: 10vw;
  }
}

h2 {
  font-size: 2rem;
  font-weight: 200;
}
@media (max-width: 30rem) {
  h2 {
    font-size: 8vw;
  }
}

main {
  margin-top: 10rem;
}
@media (max-width: 55rem) {
  main {
    margin-top: unset;
  }
}

section#projects {
  padding: 10rem 8vw;
  display: flex;
  flex-direction: column;
  gap: 15rem;
}

article.project {
  max-width: 45rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: [img-start] 0.75fr [desc-start] 1rem [img-end title-start] 1fr [desc-end title-end];
  grid-template-rows: [img-start title-start] minmax(3rem, min-content) [title-end desc-start] auto [desc-end] auto [img-end];
  z-index: 10;
}
@media (max-width: 55rem) {
  article.project {
    grid-template-columns: [title-start img-start] 1fr [desc-start] minmax(10rem, 40vw) [img-end] 1fr [title-end desc-end];
    grid-template-rows: [title-start] minmax(3rem, min-content) [title-end img-start] auto [desc-start] 1rem [img-end] min-content [desc-end];
  }
}

h3 {
  grid-area: title;
  font-size: 1.5rem;
  font-weight: 200;
  text-align: right;
  color: #902090;
  justify-self: end;
  padding-left: 0.5rem;
}
@media (max-width: 55rem) {
  h3 {
    justify-self: start;
    padding: unset;
    text-align: unset;
  }
}

img {
  grid-area: img;
  max-height: 100%;
  max-width: 100%;
  z-index: 100;
  border-radius: 0.25rem;
}

.description {
  grid-area: desc;
  background-color: #424242;
  padding-left: 1rem;
  border-radius: 0.5rem;
}
@media (max-width: 55rem) {
  .description {
    padding: unset;
    padding-top: 1rem;
  }
}

.text {
  padding: 1rem;
}

a {
  padding: 0.5rem;
  text-decoration: none;
  color: #e0e0e0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
a:last-child {
  border-bottom-right-radius: 0.5rem;
}
@media (max-width: 55rem) {
  a:last-child {
    border-bottom-left-radius: 0.5rem;
  }
}
a:hover {
  background-color: #000000;
}
a::before {
  content: "";
  position: absolute;
  top: -0.5px;
  width: calc(100% - 2rem);
  height: 1px;
  background-color: #9e9e9e;
}

a svg {
  height: 0.75rem;
  margin-left: 0.5rem;
}

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