


/*-----------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------- GLOBAL STYLES --------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

.wrap {
  max-width: 1100px;
  margin: 0 auto;
}

body {
  background: white;
  margin: 0;
  overflow-x: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

main {
  overflow: clip;
}

body::-webkit-scrollbar {
  display: none;
}

@keyframes opacity {
  from {opacity: 0;}
  to {opacity: 1;}
}

@keyframes opacityRev {
  from {opacity: 1;}
  to {opacity: 0;}
}



/* COLORS */

:root {
  --main-blue: #1F232F;
  --highlight-blue: #7EBBF2;
}



/* PAGE LAYOUT */

.col1-2 {
  display: inline-block;
  width: 50vw;
}

.col1-3 {
  display: inline-block;
  width: 32vw;
}

.col2-3 {
  display: inline-block;
  width: 66vw;
}

.col1-4 {
  display: inline-block;
  width: 21vw;
  vertical-align: top;
}

.col3-4 {
  display: inline-block;
  width: 77vw;
  vertical-align: top;
}



/* SHORTHAND CLASSES */

.blackOut {
  position: fixed;
  display: none;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.9);
  width: 100%;
  height: 120%;
  z-index: 10;
  animation: opacity 1s;
  animation-fill-mode: forwards;
}

.inlineBlock {
  display: inline-block;
}

.flex {
  display: flex;
}

.flexWrap {
  flex-wrap: wrap;
}

.block {
  display: block;
}

.relative {
  position: relative;
}

.alignCenter {
  text-align: center;
}

.margin0 {
  margin: 0 !important;
}

.margin10 {
  margin: 5px 0 !important;
}

.margin40 {
  margin: 20px 0 !important;
}

.colorWhite {
  color: white !important;
}

.colorMainBlue {
  color: var(--main-blue) !important;
}

.colorHighlightBlue {
  color: var(--highlight-blue) !important;
}

.bgWhite {
  background-color: white !important;
}

.bgMainBlue {
  background-color: var(--main-blue) !important;
}

.noAnim {
  animation-duration: 0s !important;
}

.overflowHidden {
  overflow: hidden;
}

.visible {
  visibility: visible;
}

.invisible {
  visibility: hidden;
}

.zIndex100 {
  z-index: 100;
}



/* CONTENT SPACING */

.nanoFix, .contactEndFix {
  padding-top: 45px;
}

.miniFix, .indexFixEnd {
  padding-top: 65px;
}

.sectionFix {
  padding-top: 100px;
}

.sectionFixBig {
  padding-top: 115px;
}

.basicHeaderFix {
  padding-top: 120px;
}

.endFixSmall, .projectTableFix {
  padding-top: 135px;
}

.endFix {
  padding-top: 150px;
}

.endFixBig {
  padding-top: 200px;
}

.projectFixSmall {
  padding-top: 165px;
}

.projectFix, .projectFixBottom {
  padding-top: 175px;
}

.indexFix {
  padding-top: 190px;
}

.projectFixTop {
  padding-top: 250px;
}

.bigHeaderFix {
  padding-top: 275px;
}

.projectMainFix {
  padding-top: 410px;
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------ FONTS & TEXTSTYLES -----------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



h1, h3, h4, h5, p, ul, th, td, figcaption, .btn {
  font-family: proxima-nova, sans-serif;
  font-weight: 300;
  font-style: normal;
  color: var(--main-blue);
}



/* H1 */

h1 {
  font-weight: 700;
  letter-spacing: 0.01em;
  font-size: 30px;
  color: var(--main-blue);
}

.alth1 {
  text-align: right;
  text-transform: uppercase;
  margin: 0 8px 0 0;
}

.alth1-2 {
  margin-bottom: -47px;
}

.lightText {
  font-weight: 300;
}



/* H2, H3, H4, H5 */

h2 {
  font-family: montserrat, sans-serif;
  font-weight: 800;
  font-size: 28.5px;
  text-transform: uppercase;
  margin: 0;
  color: white;
  letter-spacing: 0.075em;
}

h4, h5 {
  font-weight: 700;
  font-size: 22px;
  margin: 0 0 4px 0;
}

.h4-line {
  background: var(--main-blue);
  padding-top: 1px;
  width: 100%;
  opacity: 30%;
  margin-bottom: 25px;
}

h5 {
  font-size: 18px;
}



/* PARAGRAPH TEXT */

p, ul, th, td, figcaption, .btn {
  font-size: 17px;
  letter-spacing: 0.01em;
  line-height: 28px;
}

a {
  text-decoration: none;
  cursor: pointer;
}

p a {
  font-style: italic;
  color: #2F7EAF;
}

p a:hover {
  color: #165B70;
}

.textIn {
  animation: opacity 2.5s;
  animation-fill-mode: forwards;
}



/* TABLES */

thead, tbody, tfoot {
  vertical-align: baseline;
}

td, th, tr {
  vertical-align: inherit;
  font-size: 15.8px;
  color: white;
}

th {
  font-weight: 600;
  text-align: left;
  padding: 0;
}

table, th, td {
  border-collapse: collapse;
  padding: 2px 0;
}



/* MAIN BUTTON */

.btn {
  font-size: 16px;
  line-height: normal;
  padding: 5px 22px;
  border: 1px solid var(--main-blue);
}

.btn i {
  font-size: 13px;
  margin-left: 12px;
}

.btnHero {
  color: white;
  padding: 6px 18px;
  border: 1px solid rgba(255,255,255,0.65) !important;
}

.btn:hover {
  animation-name: btnHover;
  animation-duration: 0.3s;
  animation-fill-mode: forwards;
}

@keyframes btnHover {
  from {background-color: white; color: black;}
  to {background-color: var(--main-blue); color: white;}
}

.btnHero:hover {
  animation-name: heroBtnHover;
  animation-duration: 0.3s;
  animation-fill-mode: forwards;
}

@keyframes heroBtnHover {
  from {background-color: rgba(255, 255, 255, 0); color: white;}
  to {background-color: rgba(255, 255, 255, 1); color: black;}
}





/*-----------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------- NAV BAR -----------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



nav {
  font-family: proxima-nova, sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  font-size: 16px;
  letter-spacing: 0.08em;
  position: fixed;
  background-color: var(--main-blue);
  min-height: 85px;
  width: 100%;
  z-index: 500;
  animation-name: opacity;
  animation-fill-mode: forwards;
}

#navshadow {
  display: block;
  background: linear-gradient(rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0.1) 90%, rgba(0, 0, 0, 0.03) 95%, rgba(0, 0, 0, 0) 100%);
  position: fixed;
  height: 115px;
  width: 100%;
  z-index: 49;
  animation-name: opacity;
  animation-fill-mode: forwards;
}



/* LOGO */

#logo {
  height: 35px;
  margin: 25px 0 0 5.7vw;
}

#menuicon {
  position: fixed;
  color: var(--main-blue);
  font-size: 27px;
  margin: 28px 0 0 calc(5.7vw + 8px);
  z-index: 25;
  transition: color 0.15s;
}

#menuicon:hover {
  color: #919191;
}



/* PAGE LINKS */

.pages {
  display: inline-block;
  float: right;
  margin: 33px 40px 0 0;
}

.pages a {
  color: white;
  margin-left: 35px
}



/* SOCIAL MEDIA ICONS */

.sm-nav {
  float: right;
  margin: 32px 5.7vw 0 0;
}

.sm-icon {
  font-size: 15px;
  color: white;
  padding: 5px 15px;
  margin-right: 0;
}

.sm-nav .sm-icon {
  padding: 5px 10px;
}

.social-media a:hover, .pages a:hover {
  color: var(--highlight-blue);
}

.social-media a:active, .pages a:active {
  color: #2699FB;
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------ INDEX ------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HEADER*/

#introHeader {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
}

#introBG {
  height: 90vh;
  background-color: var(--main-blue);
}

#introPic {
  height: 100vh;
  margin-left: 50%;
  opacity: 55%;
  animation: introPicScale 12s infinite;
}

@keyframes introPicScale {
  0% { transform: translate(-50%) scale(-1.08, 1.08); }
  50% { transform: translate(-50%) scale(-1.16, 1.16); }
  100% { transform: translate(-50%) scale(-1.08, 1.08); }
}



/* MIDDLE GRAPHIC*/

#introMiddle {
  position: absolute;
  top: 53.5%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: introGraphicScale 12s infinite;
}

#introText h2 {
  font-size: 135px;
  line-height: 0.875em;
  letter-spacing: 0.03em;
  color: white;
  opacity: 0;
  animation: introTextIn 2.5s forwards;
  animation-delay: 0.5s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

@keyframes introTextIn {
  from { opacity: 0; transform: scale(0.9, 0.9);}
  to { opacity: 100%; transform: scale(1, 1); }
}

@keyframes introGraphicScale {
  0% { transform: translate(-50%, -50%) scale(1, 1); }
  50% { transform: translate(-50%, -50%) scale(1.04, 1.04); }
  100% { transform: translate(-50%, -50%) scale(1, 1); }
}



/* HEADER DECORATION */

.introDecor {
  position: absolute;
  z-index: 1;
}



/* HEADER DECORATION DIAGONALS */

.introDiagonalGroup1 {
  width: 115px;
  height: 350px;
  overflow: hidden;
  animation: introDiagonal1In 2.25s forwards;
}

.introDiagonalGroup2 {
  width: 235px;
  height: 115px;
  overflow: hidden;
  animation: introDiagonal2In 2.25s forwards;
}

@keyframes introDiagonal1In {
  from { opacity: 0; top: 51px; left: -167px; }
  to { opacity: 100%; top: 11px; left: -127px; }
}

@keyframes introDiagonal2In {
  from { opacity: 0; top: calc(100% + 50px); left: -62px; }
  to { opacity: 100%; top: calc(100% + 10px); left: -12px; }
}

.introDiagonal {
  height: 1px;
  width: 500px;
  background-color: white;
  opacity: 50%;
  margin: 50px 0 0 -75px;
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.introDiagonalGroup1 .introDiagonal:nth-child(1), .projectHeadDiagonals .introDiagonal:nth-child(1) { margin-top: -50px; }
.introDiagonalGroup1 .introDiagonal:nth-child(2), .projectHeadDiagonals .introDiagonal:nth-child(2) { margin-top: -100px; }
.introDiagonal:nth-child(4) { visibility: hidden; }
.introDiagonalGroup2 .introDiagonal:nth-child(1), .projectHeadDiagonals .introDiagonal:nth-child(1) { margin-top: -40px; }
.introDiagonalGroup2 .introDiagonal:nth-child(2), .projectHeadDiagonals .introDiagonal:nth-child(2) { margin-top: -103px; }



/* HEADER DECORATION XS */

.introXGroup1 {
  animation: introXIn 2.25s forwards;
}

@keyframes introXIn {
  from { opacity: 0; top: calc(100% + 85px); left: calc(72.65% - 40px); }
  to { opacity: 100%; top: calc(100% + 45px); left: 72.65%; }
}

.introX {
  width: 20px;
  height: 20px;
  opacity: 50%;
  background:
    linear-gradient(to top left,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0) calc(50% - 1px),
      white 50%,
      rgba(0,0,0,0) calc(50% + 1px),
      rgba(0,0,0,0) 100%),
    linear-gradient(to top right,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0) calc(50% - 1px),
      white 50%,
      rgba(0,0,0,0) calc(50% + 1px),
      rgba(0,0,0,0) 100%);
  animation: whiteBoxXAnimation 6s infinite;
}

.introX:nth-child(2), .introX:nth-child(3)  {
  margin-top: 10px;
}



/* HEADER DECORATION CIRCLES */

.introCircleContainer {
  position: absolute;
  animation: introCircleIn 2.25s forwards;
}

@keyframes introCircleIn {
  from { opacity: 0; top: -165px; left: 20px; }
  to { opacity: 100%; top: -125px; left: -30px; }
}

.introCircleGroup div {
  width: 8px !important;
  height: 8px !important;
  opacity: 30% !important;
  background-color: white !important;
  margin-top: 20px !important;
}

.introCircleGroup:nth-child(1) { margin-top: 84px; }
.introCircleGroup:nth-child(2) { margin: 56px 0 0 28px; }
.introCircleGroup:nth-child(3) { margin: 28px 0 0 56px; }
.introCircleGroup:nth-child(4) { margin-left: 84px; }
.introCircleGroup:nth-child(5) { margin-left: 112px; }
.introCircleGroup:nth-child(6) { margin-left: 140px; }
.introCircleGroup:nth-child(7) { margin-left: 168px; }
.introCircleGroup:nth-child(8) { margin-left: 196px; }
.introCircleGroup:nth-child(9) { margin-left: 224px; }
.introCircleGroup:nth-child(10) { margin-left: 252px; }
.introCircleGroup:nth-child(11) { margin-left: 280px; }
.introCircleGroup:nth-child(12) { margin-left: 308px; }
.introCircleGroup:nth-child(13) { margin-left: 336px; }



/* LEFT & RIGHT ROWS */

.introXGroup2 {
  bottom: 40px;
  left: 97%;
}

.introXGroup3 {
  top: 125px;
  left: calc(3% - 15px);
}

.introXGroup2 .introX, .introXGroup3 .introX {
  width: 15px;
  height: 15px;
}

.introLeftLine, .introRightLine {
  top: 125px;
  left: calc(97% + 7.5px);
  width: 1px;
  height: calc(100% - 245px);
  background-color: white !important;
  opacity: 35%;
}

.introLeftLine {
  top: auto;
  bottom: 40px;
  left: calc(3% - 7.5px);
}



/* INTRODUCTION */

#dropShadowIndexHeader {
  background: rgb(255,255,255);
  background: linear-gradient(180deg, rgba(31,35,47,0) 0%, rgba(31,35,47,0.8) 100%);
  height: 75px;
  width: 100vw;
  margin-top: -75px;
}

#indexBody {
  width: 100vw;
  margin-top: 90vh;
  background-color: white;
  z-index: 10;
}

.introH1 {
  font-family: montserrat, sans-serif;
  font-weight: 800;
  font-size: 46px;
  margin: 5px 0 14px 0;
  text-transform: uppercase;
}

.introH2 {
  font-size: 22px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.introH1Line {
  height: 2px;
  width: 165px;
  background-color: var(--highlight-blue);
  margin-bottom: 20px;
}

#indexBody .btn {
  border: 1px solid rgba(0,0,0,0.65);
}

.introH1BtnFix {
  margin-top: 25px !important;
}



/* INTRODUCTION DECORATION DIAGONALS */

.introTextDiagonalGroup {
  top: 190px;
  width: calc((100vw - 1175px) / 2 );
  height: calc(100% - 376px);
  overflow: hidden;
  opacity: 80%;
}

.introTextDiagonalGroup .introDiagonal {
  width: 50vw;
  margin-left: -8vw;
}

.introTextDiagonalFix {
  margin-top: -550px;
}

.introTextDiagonalGroup .introDiagonal:nth-child(4) {
  visibility: visible;
}



/* INTRODUCTION DECORATION XS */

.introTextXGroup {
  bottom: 335px;
  left: 97.7%;
}

.introTextXGroup .introX {
  background:
    linear-gradient(to top left,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0) calc(50% - 1px),
      var(--main-blue) 50%,
      rgba(0,0,0,0) calc(50% + 1px),
      rgba(0,0,0,0) 100%),
    linear-gradient(to top right,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0) calc(50% - 1px),
      var(--main-blue) 50%,
      rgba(0,0,0,0) calc(50% + 1px),
      rgba(0,0,0,0) 100%);
  animation: none;
  opacity: 35%;
}



/* INTRODUCTION DECORATION CIRCLES */

.introTextCircleGroup {
  position: absolute;
  bottom: calc(0% + 20px);
  left: 66vw;
  opacity: 80%;
}

.introTextCircleGroup:nth-of-type(4) { margin-left: 2vw; }
.introTextCircleGroup:nth-of-type(5) { margin-left: 4vw; }
.introTextCircleGroup:nth-of-type(6) { margin-left: 6vw; }
.introTextCircleGroup:nth-of-type(7) { margin-left: 8vw; }
.introTextCircleGroup:nth-of-type(8) { margin-left: 10vw; }
.introTextCircleGroup:nth-of-type(9) { margin-left: 12vw; }
.introTextCircleGroup:nth-of-type(10) { margin-left: 14vw; }
.introTextCircleGroup:nth-of-type(11) { margin-left: 16vw; }
.introTextCircleGroup:nth-of-type(12) { margin-left: 18vw; }
.introTextCircleGroup:nth-of-type(13) { margin-left: 20vw; }
.introTextCircleGroup:nth-of-type(14) { margin-left: 22vw; }
.introTextCircleGroup:nth-of-type(15) { margin-left: 24vw; }
.introTextCircleGroup:nth-of-type(16) { margin-left: 26vw; }
.introTextCircleGroup:nth-of-type(17) { margin-left: 28vw; }
.introTextCircleGroup:nth-of-type(18) { margin-left: 30vw; }
.introTextCircleGroup:nth-of-type(19) { margin-left: 32vw; }



/* OVERVIEW SECTION */

.indexFixOverwiew {
  margin-top: -90px;
}

.indexCardContainer {
  margin: 5px 0;
}

.indexCard {
  width: 50%;
  aspect-ratio: 3 / 2;
  align-items: center;
  justify-content: center;
  background-color: rgba(31, 35, 47, 1);
}

.indexCard h2 {
  font-size: 20px;
  text-transform: uppercase;
  transition: transform 0.7s;
}

.indexCard img {
  width: 100%;
  transition: transform 1s;
}

.indexCardContainer:hover .indexCard h2 {
  transform: scale(1.07, 1.07);
}

.indexCardContainer:hover .indexCard img {
  transform: scale(1.05, 1.05);
}



/* INTRO ANIMATION */

#indexAnimation {
  position: fixed;
  text-align: center;
  height: 100vh;
  width: 100%;
  visibility: hidden;
  z-index: 10;
}

#anim {
  position: relative;
  background-color: black;
  height: 20%;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  overflow: hidden;
}

#animBG {
  position: absolute;
  left: 0;
  top: 0;
  background-color: black;
  height: 100%;
  width: 100%;
}

.loader {
  display: inline-block;
  position: relative;
  transform: translateX(-8px);
  width: 60px;
  height: 60px;
  margin-top: 38vh;
}

.loader div {
  position: absolute;
  top: 33px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #fff;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}

.loader div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite;
}

.loader div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite;
}

.loader div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite;
}

.loader div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite;
}

.loader2 {
  margin-top: 0;
}

.loader2 div {
  background: #858585;
}

@keyframes lds-ellipsis1 {
  0% { transform: scale(0); }
  100% { transform: scale(1); }
}

@keyframes lds-ellipsis2 {
  0% { transform: translate(0, 0); }
  100% { transform: translate(24px, 0); }
}

@keyframes lds-ellipsis3 {
  0% { transform: scale(1); }
  100% { transform: scale(0); }
}





/*-----------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------- MOUSE ORBIT ---------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



.aboutContactParticles {
  height: 90vh;
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------- ABOUT & CONTACT -------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HERO HEADER LAYOUT */

#blueBox, #whiteBox {
  display: inline-block;
  position: relative;
  height: 90vh;
  margin: 0;
}

#blueBox {
  background-color: var(--main-blue);
  padding: 200;
}

#aboutContactHeadBG {
  position: absolute;
  height: 100%;
  opacity: 55%;
  margin-left: 50%;
  transform: translate(-50%);
}



/* HERO HEADER CONTENT LAYOUT */

.blueBoxContent, .whiteBoxContent {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.blueBoxContent {
  margin-top: 50px;
  width: 80%;
  height: 175px;
}

.whiteBoxContent {
  width: 175px;
  height: 175px;
}

#titleBox {
  background-color: var(--main-blue);
  width: 100%;
  height: 100%;
}



/* BLUE BOX CONTENT */

#h2-br, #aboutHeaderBreak, #contactHeaderBreak {
  display: none;
}

.typewriterAboutContact {
  display: inline-block;
  letter-spacing: 0.065em;
  padding: 8px 18px;
  margin-left: 4px;
  background-color: #ffffff;
}

@keyframes typewriterFade {
  0% {border-right: 0.05em solid rgba(0, 0, 0, 0);}
  50% {border-right: 0.05em solid rgba(0, 0, 0, 0.8);}
  100% {border-right: 0.05em solid rgba(0, 0, 0, 0);}
}

.blueBoxContent p {
  margin-bottom: 27px !important;
}

.headerSub {
  opacity: 50%;
  margin: 5px 0 2px 0;
}

.headerX {
  display: inline-block;
  width: 8px;
  height: 8px;
  background:
    linear-gradient(to top left,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,0) calc(50% - 1px),
      white 50%,
      rgba(255,255,255,0) calc(50% + 1px),
      rgba(255,255,255,0) 100%),
    linear-gradient(to top right,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,0) calc(50% - 1px),
      white 50%,
      rgba(255,255,255,0) calc(50% + 1px),
      rgba(255,255,255,0) 100%);
  margin: 0 3.5px;
  animation: whiteBoxXAnimation 6s infinite 3s;
}

.headerLine {
  display: inline-block;
  width: 580px;
  height: 0.5px;
  background-color: white;
  margin: 4px 2px;
}



/* WHITE BOX DECORATION GENERAL */

.whiteBoxDecor, .titleBoxDecor {
  position: absolute;
  left: 50%;
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
}

.whiteBoxDecorDiagonals, .whiteBoxDecorX-1, .whiteBoxDecorVerticals {
  top: 80px;
}



/* TITLE BOX DECORATION */

.titleBoxDecor {
  top: 50%;
  transform: translateY(-50%);
}

.titleBoxDecorAll {
  height: 20px;
  width: 20px;
  margin-left: 95px;
  border-right: 4px solid var(--main-blue);
}

.titleBoxDecor1 {
  margin-top: 83px;
  border-top: 4px solid var(--main-blue);
}

.titleBoxDecor2 {
  height: 135px;
  margin-top: 30px;
  border-right: 1.5px solid var(--main-blue);
}

.titleBoxDecor3 {
  margin-top: 30px;
  border-bottom: 4px solid var(--main-blue);
}



/* WHITE BOX DECORATION DIAGONALS */

.whiteBoxDiagonal {
  position: absolute;
  height: 1px;
  width: 500px;
  margin-left: -160px;
  background-color: var(--main-blue);
  opacity: 50%;
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.whiteBoxDiagonal2 { margin-top: -50px; }
.whiteBoxDiagonal3 { margin-top: -100px; }
.whiteBoxDiagonal4 { margin-top: -150px; }
.whiteBoxDiagonal5 { margin-top: -200px; }
.whiteBoxDiagonal6 { margin-top: -250px; }
.whiteBoxDiagonal7 { margin-left: -110px; }
.whiteBoxDiagonal8 { margin-left: -60px; }
.whiteBoxDiagonal9 { margin-left: -10px; }
.whiteBoxDiagonal10 { margin-left: 40px; }
.whiteBoxDiagonal11 { margin-left: 90px; }
.whiteBoxDiagonal12 { margin-left: 140px; }
.whiteBoxDiagonal13 { margin-left: 190px; }
.whiteBoxDiagonal14 { margin-left: 240px; }
.whiteBoxDiagonal15 { margin-left: 290px; }



/* WHITE BOX DECORATION Xs */

.whiteBoxX-1, .whiteBoxX-2, .whiteBoxContactX {
  width: 20px;
  height: 20px;
  opacity: 45%;
  background:
    linear-gradient(to top left,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0) calc(50% - 1px),
      var(--main-blue) 50%,
      rgba(0,0,0,0) calc(50% + 1px),
      rgba(0,0,0,0) 100%),
    linear-gradient(to top right,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0) calc(50% - 1px),
      var(--main-blue) 50%,
      rgba(0,0,0,0) calc(50% + 1px),
      rgba(0,0,0,0) 100%);
  animation: whiteBoxXAnimation 6s infinite;
}

.whiteBoxDecorX-1 {
  left: auto;
  right: -1.5vw;
  margin-top: 200px;
}

.whiteBoxDecorX-2 {
  top: auto;
  bottom: 0;
  margin-bottom: 185px;
}

.whiteBoxX-2 {
  margin: 0 0 0 -15.5vw;
}

.whiteBoxX2, .whiteBoxX3  {
  margin-top: 10px;
}

@keyframes whiteBoxXAnimation {
  0% {-ms-transform: rotate(0deg); transform: rotate(0deg);}
  25% {-ms-transform: rotate(360deg); transform: rotate(360deg);}
  100% {-ms-transform: rotate(360deg); transform: rotate(360deg);}
}



/* WHITE BOX DECORATION CIRCLES */

.whiteBoxDecorCircles {
  top: auto;
  bottom: 0;
  margin-bottom: -58px;
}

.whiteBoxCircleCol6, .whiteBoxCircleCol7, .whiteBoxCircleCol8, .whiteBoxCircleCol9, .whiteBoxCircleCol10 {
  margin-bottom: 12px;
}

.whiteBoxDecorCircles div, .contactCircles div, .tableCircles div div, .introCircleGroup div, .introTextCircleGroup div {
  width: 10px;
  height: 10px;
  opacity: 20%;
  background-color: var(--main-blue);
  border-radius: 100%;
  margin-top: 25px;
}

.whiteBoxCircleCol1 { margin-left: -14.9vw; }
.whiteBoxCircleCol2 { margin-left: -12.9vw; }
.whiteBoxCircleCol3 { margin-left: -10.9vw; }
.whiteBoxCircleCol4 { margin-left: -8.9vw; }
.whiteBoxCircleCol5 { margin-left: -6.9vw; }
.whiteBoxCircleCol6 { margin-left: -4.9vw; }
.whiteBoxCircleCol7 { margin-left: -2.9vw; }
.whiteBoxCircleCol8 { margin-left: -0.9vw; }
.whiteBoxCircleCol9 { margin-left: 1.1vw; }
.whiteBoxCircleCol10 { margin-left: 3.1vw; }
.whiteBoxCircleCol11 { margin-left: 5.1vw; }
.whiteBoxCircleCol12 { margin-left: 7.1vw; }



/* WHITE BOX DECORATION VERTICALS */

.whiteBoxDecorVerticals {
  width: 100%;
  left: 52%;
  margin: 48vh 0 0 25.75vw;
}

.whiteBoxDecorVerticals div {
  display: inline-block;
  height: 40vh;
  width: 1px;
  background-color: var(--main-blue);
  opacity: 50%;
  margin-right: 1vw;
}

.whiteBoxVertical1 { margin-bottom: -180px; }
.whiteBoxVertical2 { margin-bottom: -150px; }
.whiteBoxVertical3 { margin-bottom: -120px; }
.whiteBoxVertical4 { margin-bottom: -90px; }
.whiteBoxVertical5 { margin-bottom: -60px; }
.whiteBoxVertical6 { margin-bottom: -30px; }
.whiteBoxVertical7 { margin-bottom: 0; }



/* BOTTOM SHADOW */

#dropShadow {
  display: block;
  background: rgb(255,255,255);
  background: linear-gradient(180deg, rgba(0,0,0,0.09) 0%, rgba(0,0,0,0) 100%);
  height: 85px;
  width: 100vw;
}

.dropShadowAboutBio {
  margin-top: -5px;
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------ ABOUT ------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* SELECTION HEADER */

.basicHeaderOption {
  display: inline-block;
  cursor: pointer;
}

.basicHeaderOptionDeselect {
  font-weight: 300;
  letter-spacing: 0.01em;
}

.basicHeaderOptionSpace {
  display: inline-block;
  padding: 15px;
}

.basicHeaderSelectionLine {
  height: 2px;
  width: 111px;
  opacity: 80%;
  background-color: var(--main-blue);
}

.basicHeaderLine {
  width: 100%;
  height: 1px;
  background-color: var(--main-blue);
  opacity: 50%;
}

.aboutSelectionLineChange1 {
  animation: aboutSelectionLineChange1 0.8s forwards;
}

.aboutSelectionLineChange2 {
  animation: aboutSelectionLineChange2 0.8s forwards;
}

@keyframes aboutSelectionLineChange1 {
  from {margin-left: 0; width: 111px;}
  to {margin-left: 146px; width: 77.5px;}
}

@keyframes aboutSelectionLineChange2 {
  from {margin-left: 146px; width: 77.5px;}
  to {margin-left: 0; width: 111px;}
}



/* BIOGRAPHY */

.aboutBio {
  height: 600px;
  margin-top: -5px;
}

.aboutBioContent {
  position: relative;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  margin: 0px 135px;
}

.aboutBioContent p {
  margin-bottom: 0;
}

.profilePicContainer {
  position: absolute;
  height: 600px;
  width: 34vw;
  left: 66vw;
  margin-top: -4px;
}

#profilePic {
  position: relative;
  width: 120%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 0;
  opacity: 90%;
}



/* CV */

.cvTopFix {
  padding-top: 150px;
}

.edu {
  position: relative;
  width: 100%;
  padding: 30px;
  background-color: white;
  transition: 0.4s;
}

@media (hover: hover) {
  .edu:hover {
    background-color: #efefef;
    cursor: pointer;
  }
}

.eduCaption {
  position: absolute;
  margin: -115px 0 0 210px;
}

.eduBox {
  display: inline-block;
  position: relative;
  width: 135px;
  height: 135px;
  background-color: var(--main-blue);
  opacity: 80%;
  border-radius: 0px;
  box-shadow: 0 10px 20px #C3C8D8;
  text-align: center;
}

.eduBoxText {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.eduBox p {
  font-size: 20px;
  font-weight: bold;
  color: white;
  margin: 0;
}

.eduBoxTextTop {
  line-height: normal;
}

.eduLine {
  display: inline-block;
  background: white;
  width: 60px;
  height: 1px;
  margin: 10px 0 7px 0;
}

.aboutArrow {
  position: absolute;
  font-style: italic;
  color: #8C8A99;
  animation: opacity 0.5s;
  animation-fill-mode: forwards;
  margin: -30px 0 0 210px;
}

.eduSlideIn {
 animation: eduSlider 1s;
 animation-fill-mode: forwards;
}

@keyframes eduSlider {
  from {opacity: 0; margin-left: 150px;}
  to {opacity: 1; margin-left: 0;}
}

.eduInfo {
  display: none;
  text-align: justify;
  margin: 0 75px 0 210px;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}



/* CV ELEMENTS */

#bio2, #polyu2, #polyu3, #polyu7, #apcict2_2, #apcict2_4, #apcict2_6, #apcict1_2, #apcict1_6, #seoultech2, #seoultech4, #thuas2, #thuas3, #thuas5, #deltatre2, #gymbo2, #gymbo4, #thuasAward1-2, #thuasAward2-2, #ssdc2, #vdsg2, #vdsg3 {
  display: none;
}

.edu-box {
  display: inline-block;
  text-align: center;
  left: 200px;
  margin-top: 25px;
  transform: rotate(-90deg);
}

.edu-box p {
  font-size: 35px;
  color: #2699FB;
  line-height: 10px;
}

.edu-line {
  display: inline-block;
  background: #2699FB;
  height: 60px;
  width: 2px;
  margin: 20px 0 0 -45px;
}

.edu-space {
  margin-bottom: 120px;
}



/* AWARDS */

#aboutHeaderAwards, #aboutAwards, .awardSpacer {
  display: none;
}

.awardRow {
  position: relative;
  width: 100%;
}

.awardBox {
  display: inline-block;
  width: 49.5%;
  text-align: center;
  margin: 75px 0 50px 0;
}

.awardImg {
  width: 100px;
  left: 50%;
  margin-bottom: 20px;
}

#gdgsImg {
  width: 120px;
  margin-bottom: 10px;
}

#polyuImg {
  width: 102.5px;
  margin-bottom: 18.75px;
}

.awardSmall {
  font-size: 14px;
}

.awardSlideIn {
 animation: awardSlider 1s;
 animation-fill-mode: forwards;
}

@keyframes awardSlider {
  from {opacity: 0; margin-left: -150px;}
  to {opacity: 1; margin-right: 0;}
}





/*-----------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------- CONTACT -----------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HEADER DECORATION */

#whiteBoxOverflowFix {
  position: absolute;
  width: 100vw;
  height: 90vh;
  top: 0;
  right: 0;
  overflow: hidden;
}



/* CONTACT WHITE BOX DECORATION Xs */

#contactX {
  top: 105px;
  left: auto;
  right: 210px;
}

#contactX2 {
  top: auto;
  bottom: 2.5vh;
  left: 25vw;
}

.whiteBoxContactX {
  display: inline-block;
  margin: 0;
}

.whiteBoxContactX2, .whiteBoxContactX3 {
  margin-left: 10px;
}



/* CONTACT WHITE BOX DECORATION CIRCLES */

.contactCircles {
  position: absolute;
  top: 5px;
  left: auto;
  right: 10px;
}

.contactCircles div {
  width: 5px;
  height: 5px;
  opacity: 30%;
  margin-top: 20px;
}

#contactCircleCol1 { margin-right: 250px; }
#contactCircleCol2 { margin-right: 225px; }
#contactCircleCol3 { margin-right: 200px; }
#contactCircleCol4 { margin-right: 175px; }
#contactCircleCol5 { margin-right: 150px; }
#contactCircleCol6 { margin-right: 125px; }
#contactCircleCol7 { margin-right: 100px; }
#contactCircleCol8 { margin-right: 75px; }
#contactCircleCol9 { margin-right: 50px; }
#contactCircleCol10 { margin-right: 25px; }
#contactCircleCol11 { margin-right: 0px; }



/* CONTACT WHITE BOX DECORATION VERTICALS */

#contactVerticals {
  left: -23.5vw;
  top: auto;
  bottom: -50px;
  margin: 0;
  -moz-transform: scale(-1, 1.3);
  -webkit-transform: scale(-1, 1.3);
  -o-transform: scale(-1, 1.3);
  -ms-transform: scale(-1, 1.3);
  transform: scale(-1, 1.3);
}



/* CONTACT WHITE BOX DECORATION DIAGONALS */

#contactDiagonals {
  transform: rotate(90deg);
  margin: 82vh 0 0 45vw;
}



/* CONTACT BOXES */

.contactBoxContainer {
  display: inline-block;
  text-align: center;
  width: 49.5%;
}

.contactBox {
  position: relative;
  display: inline-block;
  text-align: left;
  width: 305px;
  margin: 30px 0;
}

.contactBox3, .contactBox4 {
  margin-bottom: 0;
}

.contactBox p {
  line-height: 25px;
}

.contactIcon {
  position: absolute;
  width: 50px;
  top: 50%;
  transform: translateY(-50%);
}

.contactText {
  display: inline-block;
  top: 0;
  margin-left: 85px;
}

.contactBtn {
  display: flex;
  justify-content: center;
  width: 215px;
  margin-top: 8px;
}

.contactSpacer, #kakaoTextBreak {
  display: none;
}



/* KAKAO OVERLAY */

#kakaoBlackout {
  z-index: 105;
}

#kakaoOverlay {
  display: none;
  position: fixed;
  text-align: center;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 106;
  animation: opacity 1s;
  animation-fill-mode: forwards;
}

#kakaoImage {
  height: 300px;
}

#kakaoText {
  color: white;
  margin: 30px 0 20px 0;
}

#kakaoBtnClose {
  border-color: white;
  background-color: white;
  padding: 5px 35px;
}

#kakaoBtnClose:hover {
  animation-name: kakaoBtnHover;
  animation-duration: 0.3s;
  animation-fill-mode: forwards;
}

@keyframes kakaoBtnHover {
  from {background-color: white; color: black; border-color: white;}
  to {background-color: var(--main-blue); color: white; border-color: var(--main-blue);}
}





/*-----------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------- PROJECT MAIN --------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/


/* HEADER*/

#projectMainHeader {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 300px;
  background: var(--main-blue);
}

#projectMainHeader img {
  position: absolute;
  width: 100%;
  left: 50%;
  opacity: 55%;
  transform: translateX(-50%);
}

.projectCircleGroup {
  top: 0;
  left: calc(100vw - 362.5px);
}

.projectCircleGroup:nth-child(1), .projectCircleGroup:nth-child(2), .projectCircleGroup:nth-child(3) {
  margin-top: 0;
}

.projectHeadVerticals {
  position: absolute;
  bottom: 0;
  left: calc(100vw - 460px);
  opacity: 45%;
}

.projectVertical {
  display: inline-block;
  height: 105px;
  width: 1px;
  background-color: white;
  margin-left: 25px;
}

.projectHeadDiagonals {
  bottom: 0;
  width: 325px;
  height: 110px;
  overflow: hidden;
}

.projectHeadDiagonals2 {
  bottom: 110px;
  left: 149px;
  width: 335px;
  height: 200px;
}

.projectHeadXs {
  bottom: 14.5px;
  left: 342px;
}



/* GENERAL*/

.projectMainWrap {
  margin: 0 13.5vw;
}

:root {
  --project-row-right-space: 48%;
}



/* PAGE TITLE*/

.projectRowTitle {
  height: 350px;
  border-top: 1px solid;
  border-image: linear-gradient(to right, transparent var(--project-row-right-space), rgba(31, 35, 47, 0.3) var(--project-row-right-space)) 100% 1;
}

.projectRowTitle .projectRowRight {
  top: 50%;
}

.projectTitleLine {
  width: calc(30vw - 60px);
}

.projectRowLeft .h4-line, .projectBr1, .projectBr2 {
  display: none;
}



/* PROJECT ROWS*/

.projectRow {
  height: 240px;
  border-top: 1px rgba(31, 35, 47, 0.3) solid;
}

.projectRowLast {
  border-bottom: 1px rgba(31, 35, 47, 0.3) solid;
}

.projectRowLeft, .projectRowRight, .projectRowLine {
  position: absolute;
  top: 50%;
  left: 60px;
  transform: translateY(-50%);
}

.projectRowRight {
  top: 54%;
  left: var(--project-row-right-space);
}

.projectRowLine {
  left: 230px;
  width: calc(var(--project-row-right-space) - 285px);
  opacity: 20%;
}

.projectRow img {
  width: 100%;
  opacity: 0;
  filter: blur(1px) brightness(120%);
}

.projectRow p {
  font-family: montserrat, sans-serif;
  font-size: 14px;
  line-height: 1.6em;
  margin: 0;
}

.projectRow h2 {
  font-size: 24px;
  font-weight: 700;
  color: var(--main-blue);
  margin-top: 3px;
}

.projectRowH2Line {
  width: 0px;
  height: 1px !important;
  margin-top: 8px;
  transition: 0.7s;
}

.projectRow img, .projectRowLine, .projectRow p, .projectRow h2 {
  transition: 0.55s;
}

.projectRow:hover img {
  opacity: 98%;
}

.projectRow:hover p, .projectRow:hover h2 {
  color: white;
}

.projectRow:hover .projectRowLine {
  background-color: white;
  opacity: 45%;
}

.projectRow:hover .projectRowH2Line {
  width: calc(100% - 50px);
}





/*-----------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------- PROJECT PAGES --------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



.projectWrap {
  margin: 165px 10vw 0 13.5vw;
}

.projectWrapRight {
  height: 100%;
}



/* PROJECT HEADER */

.projectHead {
  position: relative;
  width: 100%;
}

.projectHeadBG {
  height: 575px;
  width: 100vw;
  background: var(--main-blue);
  overflow: hidden;
}

.projectHeadTitle, .projectHeadTitle2 {
  position: absolute;
  top: 425px;
}

.projectHeadTitle2 {
  display: none;
  top: 700px;
}

.projectHeadTitle2 .headerX {
  background:
    linear-gradient(to top left,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,0) calc(50% - 1px),
      var(--main-blue) 50%,
      rgba(255,255,255,0) calc(50% + 1px),
      rgba(255,255,255,0) 100%),
    linear-gradient(to top right,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,0) calc(50% - 1px),
      var(--main-blue) 50%,
      rgba(255,255,255,0) calc(50% + 1px),
      rgba(255,255,255,0) 100%);
}

.projectWidth-1300, #loyalTitle1-Head2, #loyalTitle1-Sub2, #deformageTitle2-Head2, #livingLightsTitle1-Sub2, #furnUpTitle1-Sub2, #northernStreetLightsTitle1-Head2, #northernStreetLightsTitle1-Sub2, #northernStreetLightsTitle2-Head2, #libraryTitle1-Head2, #libraryTitle1-Sub2, #libraryTitle2-Head2 {
  display: none;
}

.projectHeaderSub, .projectHeadTitle p {
  opacity: 70%;
}

.projectHeaderSub .headerLine {
  width: 350px;
}



/* HEADER IMAGE */

#projectHeadImgBG {
  height: auto;
  overflow: hidden;
}

#headImgFix {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 900px;
  overflow: hidden;
}

.projectHeadImg {
  position: relative;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  animation: projectHeadImgIn 1s;
  animation-fill-mode: forwards;
  z-index: 5;
}

@keyframes projectHeadImgIn {
  from {opacity: 0; top: -60px;}
  to {opacity: 1; top: 0;}
}



/* HEADER SHADOW */

.projectHeadShadow {
  position: relative;
  background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1));
  height: 100px;
  margin-top: -100px;
  width: 100vw;
}

.projectHeadShadowRev {
  background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  margin-top: 0;
}



/* PROJECT TABLE */

.projectTable {
  position: sticky;
  top: 50vh;
  transform: translateY(-50%);
  width: 23vw;
  background-color: var(--main-blue);
  padding: 50px 0;
  margin: calc(-89.11vh + 127px) 0 -20px 0;
}

.projectTable table {
  margin: auto;
}

.tableTitle {
  width: 90px;
}

.projectTableAlt {
  width: 100%;
  background-color: #F1F1F1;
  padding: 32px 0;
}

.projectTableAltLeft, .projectTableAltRight  {
  display: inline-block;
  width: 49.5%;
}

.projectTableAltLeft {
  padding-left: 115px;
}

.projectTableAltRight {
  padding-left: 60px;
}

.projectTableAlt th, .projectTableAlt td {
  color: var(--main-blue);
}



/* TABLE DECORATION */

.tableDecor {
  position: sticky;
  top: 0;
}

.tableDecor div {
  opacity: 30%;
}



/* TABLE DECORATION: DIAGONALS */

.tableDecorDiagonal {
  width: 23vw;
  height: 100px;
  overflow: hidden;
  margin-bottom: 89.11vh;
}



/* TABLE DECORATION: X */

.tableDecorX {
  top: 112.5px;
  float: right;
  margin: -87.73vh -3.15vw 78.11vh 0;
}

.tableDecorX2 {
  top: calc(94.5vh - 100px);
  transform: translateY(-50%);
  margin: calc(94.5vh - 564px) 0 75px 15px;
}

.tableDecor .whiteBoxX-1 {
  margin: 10px 35px 0 0;
}



/* TABLE DECORATION: CIRCLES */

.tableCircleEnable {
  display: none;
}

.tableCircles {
  top: 94.5vh;
  transform: translateY(-50%);
  margin: -55px 0 -15px 20px;
}

.tableCircles div {
  opacity: 60%;
}

.tableCircles div div {
  margin-top: 20px;
  margin-bottom: 0;
}

.tableCircleCol2 { margin: -90px 0 0 1.5vw !important; }
.tableCircleCol3 { margin: -90px 0 0 3vw !important; }
.tableCircleCol4 { margin: -90px 0 0 4.5vw !important; }
.tableCircleCol5 { margin: -90px 0 0 6vw !important; }
.tableCircleCol6 { margin: -90px 0 0 7.5vw !important; }
.tableCircleCol7 { margin: -90px 0 0 9vw !important; }
.tableCircleCol8 { margin: -90px 0 0 10.5vw !important; }
.tableCircleCol9 { margin: -90px 0 0 12vw !important; }
.tableCircleCol10 { margin: -90px 0 0 13.5vw !important; }
.tableCircleCol11 { margin: -30px 0 0 15vw !important; }
.tableCircleCol12 { margin: -30px 0 0 16.5vw !important; }
.tableCircleCol13 { margin: -30px 0 0 18vw !important; }
.tableCircleCol14 { margin: -90px 0 0 19.5vw !important; }
.tableCircleCol15 { margin: -90px 0 0 21vw !important; }



/* PAGE DECORATION */

.projectLineFull, .projectLineHalf, .projectLineVertical {
  position: absolute;
  opacity: 30%;
  height: 1px;
  border-top: 1px var(--main-blue) solid;
}

.projectLineFull {
  width: 100vw;
}

.projectLineHalf {
  width: 77vw;
  left: 0;
}

.projectLineVertical {
  position: inherit;
  display: inline-block;
  height: auto;
  border-top: none;
  border-left: 1px var(--main-blue) solid;
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------ PROJECT PROTOTYPES -----------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



.prototype {
  position: relative;
  width: 100%;
  text-align: center;
}

.xdPrototype, .xdPrototypeLaptop {
  display: inline-block;
  width: 313px;
  height: 677px;
  margin: 0 auto;
  z-index: 2;
}

.xdPrototypeLaptop {
  margin-top: 38px;
  width: 798px;
  height: 449px;
  margin-bottom: 85px;
}

.prototypeCase, .prototypeCaseLaptop {
  position: absolute;
  width: 520px;
  height: auto;
  left: 50%;
  height: auto;
  transform: translateX(-50%);
  pointer-events: none;
}

.prototypeCaseLaptop {
  width: 1020px;
}

.prototypeEnable {
  display: none;
}



/* PROTOTYPE BUTTON */

#prototypeBtn {
  position: absolute;
  top: 51%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 16px;
  font-weight: 300;
  border: 1px solid;
  padding: 10px 30px;
}

.prototypeBtnLaptop {
  top: 46.5% !important;
}



/* TRY ARROW */

#tryProtoArrow, #tryProtoText {
  position: absolute;
  width: 80px;
  top: 45%;
  left: 50%;
  transform: translateX(-50%);
  margin-left: 230px;
}

#tryProtoText {
  font-size: 16px;
  width: auto;
  top: 37%;
  margin-left: 262px;
}

.tryProtoLaptopArrow {
  margin-left: 500px !important;
}

.tryProtoLaptopText {
  margin-left: 532px !important;
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------ PROJECT GALLERY --------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



.projectGallery {
  left: 50%;
  transform: translateX(-50%);
  margin-top: 100px;
}

.projectGalleryImg, .videoSize {
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}

.projectGalleryWidth {
  width: 1100px;
}

.projectGalleryWidthMain {
  width: 100%
}

.projectGalleryItem, .projectGalleryItem2 {
  animation-name: opacity;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}



/* GALLERY CONTROLS*/

.projectGalleryBtn {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  font-size: 26px;
  text-decoration: none;
  cursor: pointer;
  opacity: 30%;
  margin-top: 45px;
  transition: opacity .15s ease;
}

.projectGalleryBtnMain {
  position: relative;
  left: auto;
  transform: none;
  opacity: 75%;
}

.projectGalleryBtn:hover {
  opacity: 90%;
}

.leftGalleryBtn {
  margin-left: -125px;
}

.rightGalleryBtn {
  margin-left: 125px;
}

.projectDot, .projectDot2 {
  display: inline-block;
  font-size: 10px;
  margin-top: 45px;
}

.projectGalleryDots p i, .projectGalleryDots2 p i {
  padding: 0 3px;
}



/* GALLERY CAPTIONS */

.captionAll {
  position: absolute;
  display: none;
  color: white;
  line-height: 1.3em;
  background: rgba(31, 34, 47, 0.875);
  animation-name: caption;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

@keyframes caption {
  from {opacity: 0; padding: 0px 25px; margin: -25px 0 0 0;}
  to {opacity: 1; padding: 15px 25px; margin: -56px 0 0 0;}
}



/* PROJECT IMAGES */

figure {
  position: relative;
  margin: 0;
}

.imageAnimIn {
  animation: imageAnim 2s;
  animation-fill-mode: forwards;
}

@keyframes imageAnim {
  from { margin-top: 70px; opacity: 0; }
  to { margin-top: 0; opacity: 1; }
}

video {
  aspect-ratio: 16 / 9;
}

.videoSize {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}

.videoSize iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}



/* PLACEHOLDER LOADER */

.placeholderSize {
  background-color: #e8e8e8;
  aspect-ratio: 16 / 9;
}

#placeholderAnimation {
  position: absolute;
  text-align: center;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}





/*-----------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------- MENU BTNS -----------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* POSITION */

.menuBtn {
  position: absolute;
  bottom: 0px;
  right: calc(7.95vw - 72.5px);
  z-index: 45;
}

.menuBtnContainer {
  position: sticky;
  bottom: 0px;
  z-index: 50;
}

#info {
  bottom: 154px;
}

#back {
  bottom: 102px;
}

#up {
  bottom: 50px;
}



/* ROUND BTN */

.menuBtnRound {
  font-size: 40px;
  color: var(--highlight-blue);
  margin: 0;
}

#infoRoundMain, #backRoundMain, #upRoundMain {
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

@keyframes upColor {
  from {color: var(--highlight-blue);}
  to {color: white;}
}

@keyframes upColorRev {
  from {color: white;}
  to {color: var(--highlight-blue);}
}

@keyframes aboutHighlight {
  0% {margin-right: 0;}
  1.5% {margin-right: 3px;}
  4.5% {margin-right: -3px;}
  7.5% {margin-right: 3px;}
  10.5% {margin-right: -3px;}
  13.5% {margin-right: 3px;}
  16.5% {margin-right: -3px;}
  19.5% {margin-right: 3px;}
  22.5% {margin-right: -3px;}
  25.5% {margin-right: 3px;}
  28.5% {margin-right: -3px;}
  30% {margin-right: 0;}
  100% {margin-right: 0;}
}



/* BTN LABELS */

.menuBtnInfo {
  display: none;
  position: absolute;
  right: -5.5px;

  font-family: proxima-nova, sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 0.07em;
  line-height: normal;

  color: white;
  background-color: var(--highlight-blue);
  border-radius: 100px;
  margin-top: -5.5px;
  z-index: -1;
}

#infoLabelMain, #backLabelMain, #upLabelMain {
  animation-name: aboutColor;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

@keyframes aboutColor {
  from {opacity: 0; width: 75px; padding: 15px 0;}
  to {opacity: 1; width: 118px; padding: 15px 0px 15px 11px;}
}





/*-----------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------- INFO BOX -----------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



#screenfill {
  animation-duration: 0.65s;
  background-color: rgba(0, 0, 0, 0.9);
}

#infoBox {
  position: fixed;
  display: none;
  bottom: 85px;
  padding-top: 235px;
  margin-left: 13.5vw;
  width: calc(53.5vw + 75px);
  animation-fill-mode: forwards;
  z-index: 35;
}

#infoBox h4, #infoBox p, #infoBox li {
  color: white;
}

#xInfoBox {
  position: fixed;
  display: none;
  font-size: 40px;
  animation-duration: 0.75s;
  animation-fill-mode: forwards;
}

#infoBoxContent {
  width: 100%;
  height: 100%;
  padding-right: 75px;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

#infoBoxHeader {
  text-transform: uppercase;
  color: var(--main-blue);
  background-color: white;
  padding: 5px 15px;
}



/* SCROLL BAR */

#infoBoxContent::-webkit-scrollbar {
  display: none;
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    background-color: white;
}



/* BOX ANIMATIONS */

.boxIn {
  animation-name: opacity, boxScale;
  animation-duration: 0.75s;
}

.boxOut {
  animation-name: opacityRev, boxDescale;
  animation-duration: 0.75s;
  animation-fill-mode: forwards;
}

@keyframes boxScale {
  from {height: 50%}
  to {height: 100%;}
}

@keyframes boxDescale {
  from {height: 100%;}
  to {height: 50%}
}

@keyframes buttonScale {
  from {top: calc(50% + 153px);}
  to {top: calc(0% + 153px)}
}

@keyframes buttonDescale {
  from {top: calc(0% + 153px);}
  to {top:calc(50% + 153px)}
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------ LOYAL ------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HERO HEADER */

#loyalHeadImg {
  width: 700px;
  margin-top: 160px;
}



/* IMAGES */

#loyalGalleryBG {
  background-image: url(../images/loyal/head_bg.jpg);
}

.loyalLogoImg {
  width: 80%;
  display: block;
  margin-left: auto;
  margin-right: auto
}

.loyalPrototypeFix {
  margin-top: -20px;
}

.loyalMockupImg {
  width: 100%;
}

#loyalMockup1 {
  margin-bottom: 15px;
}





/*-----------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------- DEFORMAGE ----------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HERO HEADER */

#deformageHeadImg {
  width: 660px;
  margin-top: 162.5px;
}



/* IMAGES */

#deformageGalleryBG {
  background-image: url(../images/deformage/head_bg.jpg);
}

#deformageMockupSm {
  width: 95%;
  display: block;
  margin: 0 auto 30px auto;
}

#deformagePic1 {
  transform: scale(1.12, 1.12);
}

#deformageProtoAltPic {
  transform: scale(1.03, 1.03);
}





/*-----------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------- LIVING LIGHTS --------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HERO HEADER */

#livingLightsHeadImg {
  width: 575px;
  margin-top: 165px;
}



/* IMAGES */

#livingLightsGalleryBG {
  background-image: url(../images/livingLights/head_bg.jpg);
}

#modelPic1, #modelPic2, #modelPic3 {
  width: 110%;
  overflow: hidden;
  margin-left: 50%;
  margin-bottom: 15px;
  transform: translateX(-50%);
}

#kioskPic1, #kioskPic2 {
  text-align: center;
}

#kioskPic1, #kioskPic2 {
  margin-top: 25px;
}

#kioskPic3 {
  margin-top: -20px;
}

.kioskMockup {
  width: 85%;
}





/*-----------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------- FURN.UP -----------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HERO HEADER */

#furnUpHeadImg {
  width: 650px;
  margin-top: 130px;
}



/* IMAGES */

#furnUpGalleryBG {
  background-image: url(../images/furnUp/head_bg.jpg);
}

#furnUpMockup {
  margin-top: -10px;
}





/*-----------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------- NORTHERN STREET LIGHTS ----------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HERO HEADER */

#northernStreetLightsHeadImg {
  width: 660px;
  margin-top: 137.5px;
}



/* IMAGES */

#northernStreetLightsGalleryBG {
  background-image: url(../images/northernStreetLights/head_bg.jpg);
}

#animationVid {
  width: 95%;
  margin: 10px 0 0 50%;
  transform: translateX(-50%);
}

#neonSigns {
  width: 93%;
  margin: 25px 0 55px 50%;
  transform: translateX(-50%);
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------- CENTRAL LIBRARY -------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HERO HEADER */

#libraryHeadImg {
  width: 640px;
  margin-top: 167.5px;
}



/* IMAGES */

#libraryGalleryBG {
  background-image: url(../images/library/head_bg.jpg);
}

#library2 {
  width: 107.5%;
  margin: 25px 0 15px calc(50% + 20px);
  transform: translate(-50%);
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------ MIRRORED MEMORIES ------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* HERO HEADER */

#mirroredMemoriesHeadImg {
  width: 510px;
  margin-top: 160px;
}



/* IMAGES */

#mirroredMemoriesGalleryBG {
  background-image: url(../images/mirroredMemories/head_bg.jpg);
}

#fortuneAnim, #mirrorAnim {
  width: 110%;
  margin: -12.5px 0 30px 50%;
  transform: translate(-50%);
}

#mirrorAnim {
  width: 100%;
  margin: 0 0 30px 50%;
}





/*-----------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------ DATA REGULATIONS -------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* BANNER */

#bannerFix {
  position: fixed;
  bottom: -17px;
  width: 100%;
  height: 90px;
  padding-top: 15px;
  background-color: rgba(0, 0, 0, 0.8);
  color: #cccccc;
  text-align: center;
  font-size: 16px;
  z-index: 100;
}

#bannerBtn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 15px;
  font-weight: 700;
  color: black;
  background-color: white;
  padding: 4px 30px;
  border: none;
  margin-left: 60px;
}

.bannerLink {
  color: var(--highlight-blue);
  opacity: 0.85;
}

.bannerLink:hover {
  color: #5C98C6;
}

#bannerBtn:hover {
  animation-name: bannerBtnHover;
  animation-duration: 0.3s;
  animation-fill-mode: forwards;
}

@keyframes bannerBtnHover {
  from {background-color: white; color: black;}
  to {background-color: var(--highlight-blue); color: white;}
}


/* BANNER */

#dataSpacer2 {
  display: none;
}





/*-----------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------- FOOTER ------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



#footer {
  width: 100%;
  height: 48.5px;
  text-align: center;
  background: var(--main-blue);
  z-index: 50;
}

.footerProject {
  margin-top: -48.5px;
}

.sm-footer {
  padding: 15px;
}

#footershadow {
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.03) 10%, rgba(0, 0, 0, 0.1) 25%, rgba(0, 0, 0, 0.5) 100%);
  height: 78.5px;
  width: 100%;
  margin-top: -30px;
}



/* CONTACT PAGE*/

.contactFooter {
  bottom: 0;
  font-size: 14px;
  color: white;
  padding-top: 10px;
}

#contactFooterData1, #contactFooterData2 {
  margin-left: 20px;
  font-style: normal;
  color: white;
}

#contactFooterData2 {
  display: none;
}





/*-----------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------- MEDIA QUERIES --------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------*/



/* MIN-HEIGHT QUERIES */

@media (max-height: 750px) {

  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(93vh - 100px);
  }

  .tableCircles {
    top: 93vh;
  }

  .tableDecorX, .tableDecorX2 {
    visibility: hidden;
  }
}



@media (max-height: 750px) and (min-width: 600px) {

  /* INTRO */

  #introPic {
    animation: none;
    transform: translate(-50%) scale(-1, 1);
  }

  #introMiddle {
    top: 56%;
    animation: none;
    transform: translate(-50%, -50%) scale(0.8, 0.8);
  }
}



@media (max-height: 700px) and (min-width: 1300px) {

  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(92.5vh - 100px);
  }

  .tableCircles {
    top: 92.5vh;
  }


  /* PROJECT BUTTONS */

  .menuBtn {
    right: calc(8.1vw - 72.5px);
  }

  .menuBtnRound {
    font-size: 36px !important;
  }

  #info {
    bottom: 134px !important;
  }

  #back {
    bottom: 87px !important;
  }

  #up {
    bottom: 40px !important;
  }

  .menuBtnInfo {
    right: -5px !important;
  }
}


@media (max-height: 650px) {

  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(91.75vh - 100px);
  }

  .tableCircles {
    top: 91.75vh;
  }
}


@media (max-height: 600px) and (min-width: 1300px) {

  /* PROJECT PAGES */

  .tableDecor {
    visibility: hidden;
  }


  /* PROJECT BUTTONS */

  #info {
    bottom: 114px !important;
  }

  #back {
    bottom: 67px !important;
  }

  #up {
    bottom: 20px !important;
  }
}



@media (min-height: 950px) {

  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(95vh - 100px);
  }

  .tableCircles {
    top: 95vh;
  }
}



@media (min-height: 1050px) {

  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(95.5vh - 100px);
  }

  .tableCircles {
    top: 95.5vh;
  }
}



@media (min-height: 1150px) {

  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(96vh - 100px);
  }

  .tableCircles {
    top: 96vh;
  }
}



@media (min-height: 1300px) {

  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(96.25vh - 100px);
  }

  .tableCircles {
    top: 96.25vh;
  }
}



@media (min-height: 1400px) {

  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(96.75vh - 100px);
  }

  .tableCircles {
    top: 96.75vh;
  }
}



@media (min-height: 1500px) {

  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(97vh - 100px);
  }

  .tableCircles {
    top: 97vh;
  }
}





/* REGULAR QUERIES */

@media (min-width: 2000px) {

  /* PROJECT PAGES */

  .menuBtn {
    right: calc(7.85vw - 72.5px);
  }
}



@media (min-width: 2100px) {

  /* PROJECT MAIN */

  .projectRowTitle {
    height: 335px
  }


  /* PROJECT PAGES */

  .menuBtn {
    right: calc(7.75vw - 72.5px);
  }
}



@media (min-width: 2250px) {

  /* PROJECT PAGES */

  .menuBtn {
    right: calc(7.6vw - 72.5px);
  }
}



@media (max-width: 1920px) {

  /* PROJECT PROTOTYPE */

  .xdPrototype {
    width: 289px;
    height: 625px;
  }

  .prototypeCase {
    width: 480px;
  }

  #tryProtoArrow {
    top: 44.4%;
    margin-left: 214px;
  }

  #tryProtoText {
    top: 36.2%;
    margin-left: 246px;
  }
}



@media (max-width: 1800px) {

  /* BODY */

  .wrap {
    max-width: 1050px;
  }


  /* INDEX */

  .introTextDiagonalGroup {
    width: calc((100vw - 1125px) / 2 );
  }


  /* ABOUT */

  .whiteBoxDecorVerticals {
    margin-right: 25.5vw;
  }

  .eduInfo {
    margin: 0 50px 0 210px;
  }


  /* CONTACT */

  #contactVerticals {
    left: -23.2vw;
  }

  #contactX {
    right: 215px;
  }

  #contactX2 {
    left: 25.5vw;
  }


  /* PROJECT PROTOTYPE */

  .xdPrototypeLaptop {
    margin-top: 34px;
    width: 743px;
    height: 418px;
  }

  .prototypeCaseLaptop {
    width: 950px;
  }

  .tryProtoLaptopArrow {
    margin-left: 465px !important;
  }

  .tryProtoLaptopText {
    top: 35.5% !important;
    margin-left: 497px !important;
  }


  /* LOYAL */

  .loyalLogoImg {
    width: 85%;
  }
}



@media (max-width: 1700px) {

  /* NAV BAR */

  #logo {
    margin-left: 5.2vw;
  }

  #menuicon {
    margin-left: calc(5.2vw + 8px);
  }

  .sm-nav {
    margin-right: 5.2vw;
  }


  /* ABOUT & CONTACT */

  .whiteBoxVertical div {
    margin-right: 1.1vw;
  }


  /* PROJECT PAGES */

  .projectWrap {
    margin: 165px 8.5vw 0 12.5vw;
  }


  /* PROJECT TABLE */

  .tableTitle {
    width: 80px;
  }


  /* PROJECT BUTTONS */

  #infoBox {
    margin-left: 12.5vw;
    width: calc(56vw + 75px);
  }


  /* ABOUT */

  .aboutBio, .profilePicContainer {
    height: 550px;
  }

  #profilePic {
    width: 121%;
  }
}



@media (max-width: 1650px) {

  /* PROJECT PAGES */

  .projectHeaderSub .headerLine {
    width: 300px;
  }


  /* PROJECT PROTOTYPE */

  .prototypeBtnLaptop {
    top: 45.75% !important;
  }

  .tryProtoLaptopArrow, .tryProtoLaptopText {
    display: none;
  }


  /* FURN.UP */

  #furnUpTitle1-Sub1 {
    display: none;
  }

  #furnUpTitle1-Sub2 {
    display: block;
  }
}



@media (max-width: 1600px) {

  /* GENERAL */

  h2 {
    font-size: 27px;
  }

  table, th, td {
    font-size: 15px;
    padding: 1.5px 0;
  }

  .contactTopFix {
    padding-top: 20px;
  }

  .miniFix {
    padding-top: 50px;
  }

  .basicHeaderFix {
    padding-top: 100px;
  }

  .projectFix, .projectFixSmall {
    padding-top: 150px;
  }

  .indexFix {
    padding-top: 175px;
  }

  .projectFixTop {
    padding-top: 225px;
  }


  /* BODY */

  .wrap {
    max-width: 950px;
  }


  /* INDEX */

  #introMiddle {
    left: calc(50% + 15px);
  }

  #introPic {
    margin-left: calc(50% + 15px);
  }

  .introTextDiagonalGroup {
    top: 180px;
    width: calc((100vw - 1025px) / 2 );
    height: calc(100% - 350px);
  }

  .introH1 {
    font-size: 42px;
  }

  .introH2 {
    font-size: 21px;
  }

  .introTextXGroup {
    left: 97.4%;
  }

  .introTextCircleGroup {
    left: 61vw;
  }

  .introTextCircleGroup:nth-of-type(4) { margin-left: 2.3vw; }
  .introTextCircleGroup:nth-of-type(5) { margin-left: 4.6vw; }
  .introTextCircleGroup:nth-of-type(6) { margin-left: 6.9vw; }
  .introTextCircleGroup:nth-of-type(7) { margin-left: 9.2vw; }
  .introTextCircleGroup:nth-of-type(8) { margin-left: 11.5vw; }
  .introTextCircleGroup:nth-of-type(9) { margin-left: 13.8vw; }
  .introTextCircleGroup:nth-of-type(10) { margin-left: 16.1vw; }
  .introTextCircleGroup:nth-of-type(11) { margin-left: 18.4vw; }
  .introTextCircleGroup:nth-of-type(12) { margin-left: 20.7vw; }
  .introTextCircleGroup:nth-of-type(13) { margin-left: 23vw; }
  .introTextCircleGroup:nth-of-type(14) { margin-left: 25.3vw; }
  .introTextCircleGroup:nth-of-type(15) { margin-left: 27.6vw; }
  .introTextCircleGroup:nth-of-type(16) { margin-left: 29.9vw; }
  .introTextCircleGroup:nth-of-type(17) { margin-left: 32.2vw; }
  .introTextCircleGroup:nth-of-type(18) { margin-left: 34.5vw; }
  .introTextCircleGroup:nth-of-type(19) { margin-left: 36.8vw; }


  /* PROJECT MAIN */

  :root {
    --project-row-right-space: 53%;
  }

  .projectRow h2 {
    font-size: 22.5px;
  }

  .projectRowLine {
    width: calc(var(--project-row-right-space) - 275px);
  }


  /* PROJECT PAGES */

  .projectWrap {
    margin-top: 140px;
    margin-right: 7.5vw;
  }


  /* PROJECT TABLE */

  .tableDecorX {
    margin: -87.73vh -3.4vw 78.11vh 0;
  }


  /* PROJECT GALLERY */

  .galleryBtn {
    font-size: 40px;
  }

  .leftSlider {
    left: 1.5%;
  }

  .rightSlider {
    right: 1.5%;
  }


  /* PROJECT PROTOTYPE */

  .xdPrototypeLaptop {
    margin-top: 31px;
    width: 689px;
    height: 388px;
  }

  .prototypeCaseLaptop {
    width: 880px;
  }


  /* PROJECT BUTTONS */

  .menuBtn {
    right: calc(8.2vw - 72.5px);
  }

  .menuBtnRound {
    font-size: 38px;
  }

  #info {
    bottom: 150px;
  }

  #back {
    bottom: 100px;
  }

  @keyframes aboutColor {
    from {opacity: 0; width: 75px; padding: 14px 0;}
    to {opacity: 1; width: 118px; padding: 14px 0px 14px 11px;}
  }

  #infoBox {
    width: calc(57vw + 75px);
  }

  @keyframes buttonScale {
    from {top: calc(50% + 151.5px);}
    to {top: calc(0% + 151.5px)}
  }

  @keyframes buttonDescale {
    from {top: calc(0% + 151.5px);}
    to {top:calc(50% + 151.5px)}
  }


  /* ABOUT & CONTACT */

  .whiteBoxDecorVerticals {
     margin-top: 52vh;
  }

  .whiteBoxDecorVerticals div {
    margin-right: 1.2vw;
  }

  .whiteBoxVertical6, .whiteBoxVertical7 {
    display: none !important;
  }

  #contactVerticals .whiteBoxVertical6 {
    display: inline-block !important;
  }


  /* ABOUT */

  .eduInfo {
    margin: 0 25px 0 210px;
  }

  .awardImg {
    width: 90px;
  }

  #gdgsImg {
    width: 110px;
  }

  #polyuImg {
    width: 92.5px;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 675px;
    margin-top: 175px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 635px;
    margin-top: 175px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 555px;
    margin-top: 170px;
  }

  #livingLightsTitle1-Sub1 {
    display: none;
  }

  #livingLightsTitle1-Sub2 {
    display: block;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 625px;
    margin-top: 145px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 635px;
    margin-top: 147.5px;
  }

  #animationVid {
    width: 98%;
    margin-top: -5px;
  }

  #neonSigns {
    width: 94%;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 620px;
    margin-top: 175px;
  }

  #libraryTitle1-Head1, #libraryTitle1-Sub1 {
    display: none;
  }

  #libraryTitle1-Head2, #libraryTitle1-Sub2 {
    display: block;
  }

  #library2 {
    width: 110%;
    margin: 20px 0 0 calc(50% + 10px);
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 490px;
    margin-top: 172.5px;
  }

  #mirrorAnim {
    width: 102.5%;
    margin: -7.5px 0 30px 50%;;
  }

  #fortuneAnim {
    margin: -20px 0 22.5px 50%;
  }
}



@media (max-width: 1550px) {

  /* PROJECT MAIN */

  .projectRowTitle {
    height: 365px;
  }


  /* ABOUT */

  .aboutBioContent {
    margin: 0 100px;
  }

  .aboutBio, .profilePicContainer {
    height: 500px;
  }


  /* DEFORMAGE */

  #deformageMockupSm {
    margin-bottom: 20px;
  }
}



@media (max-width: 1500px) {

  /* GENERAL */

  .projectFixBottom {
    padding-top: 150px;
  }

  .endFixBig {
    padding-top: 175px;
  }


  /* NAV BAR */

  #logo {
    height: 33px;
    margin-top: 26px;
    margin-left: 4.6vw;
  }

  #menuicon {
    margin-top: 26px;
    margin-left: calc(4.6vw + 7px);
  }

  .sm-nav {
    margin-right: 4.6vw;
  }


  /* PROJECT PAGES */

  .projectWrap, #infoBox {
    margin-left: 11.5vw;
  }

  .projectHeadShadowRev {
    height: 75px;
  }

  .tableCircleDisable {
    display: none;
  }

  .tableCircleEnable {
    display: block;
  }

  .tableCircleCol2 { margin: -90px 0 0 1.65vw !important; }
  .tableCircleCol3 { margin: -90px 0 0 3.3vw !important; }
  .tableCircleCol4 { margin: -90px 0 0 4.95vw !important; }
  .tableCircleCol5 { margin: -90px 0 0 6.6vw !important; }
  .tableCircleCol6 { margin: -90px 0 0 8.25vw !important; }
  .tableCircleCol7 { margin: -90px 0 0 9.9vw !important; }
  .tableCircleCol8 { margin: -90px 0 0 11.55vw !important; }
  .tableCircleCol9 { margin: -90px 0 0 13.2vw !important; }
  .tableCircleCol10 { margin: -30px 0 0 14.85vw !important; }
  .tableCircleCol11 { margin: -30px 0 0 16.5vw !important; }
  .tableCircleCol12 { margin: -30px 0 0 18.15vw !important; }
  .tableCircleCol13 { margin: -90px 0 0 19.8vw !important; }
  .tableCircleCol14 { margin: -90px 0 0 21.45vw !important; }
  .tableCircleCol15 { margin: -90px 0 0 23.1vw !important; }


  /* PROJECT BUTTONS */

  .menuBtn {
    right: calc(8.3vw - 72.5px);
  }

  #infoBox {
    width: calc(58vw + 75px);
  }
}



@media (max-width: 1475px) {

  /* ABOUT */

  .aboutBio, .profilePicContainer {
    height: 450px;
  }

  #profilePic {
    width: 110%;
  }


  /* PROJECT PAGES */

  .projectHeaderSub .headerLine {
    width: 250px;
  }


  /* PROJECT TABLE */

  .tableTitle {
    width: 70px;
  }


  /* LOYAL */

  #loyalTitle1-Head1, #loyalTitle1-Sub1 {
    display: none;
  }

  #loyalTitle1-Head2, #loyalTitle1-Sub2 {
    display: block;
  }


  /* NORTHERN STREET LIGHTS */

  #animationVid {
    margin-top: -20px;
  }

  #neonSigns {
    margin: 5px 0 37.5px 50%;
  }
}



@media (max-width: 1450px) {

  /* PROJECT PROTOTYPE */

  .xdPrototypeLaptop {
    margin-top: 29px;
    width: 626px;
    height: 352px;
  }

  .prototypeCaseLaptop {
    width: 800px;
  }

  .prototypeBtnLaptop {
    top: 45% !important;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 610px;
    margin-top: 162.5px;
  }

  #northernStreetLightsTitle1-Head1, #northernStreetLightsTitle1-Sub1 {
    display: none;
  }

  #northernStreetLightsTitle1-Head2, #northernStreetLightsTitle1-Sub2 {
    display: block;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 595px;
    margin-top: 185px;
  }

  #library2 {
    width: 112.5%;
    margin: 20px 0 0 calc(50%);
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 475px;
    margin-top: 182.5px;
  }
}



@media (max-width: 1400px) {

  /* GENERAL */

  h2 {
    font-size: 25px;
  }

  h4 {
    font-size: 20px;
  }

  .basicHeaderFix {
    padding-top: 80px;
  }

  .projectMainFix {
    padding-top: 375px;
  }

  .basicHeaderSelectionLine {
    width: 101px;
  }

  .basicHeaderOptionSpace {
    display: inline-block;
    padding: 11px;
  }

  @keyframes aboutSelectionLineChange1 {
    from {margin-left: 0; width: 101px;}
    to {margin-left: 129px; width: 69px;}
  }

  @keyframes aboutSelectionLineChange2 {
    from {margin-left: 129px; width: 69px;}
    to {margin-left: 0; width: 101px;}
  }


  /* NAV BAR */

  .pages {
    margin: 32px 40px 0 0;
  }

  .pages a {
    margin-left: 20px;
  }


  /* BODY */

  .wrap, .projectGalleryWidth {
    max-width: 850px;
  }


  /* INDEX */

  #introMiddle {
    left: calc(50% + 30px);
  }

  #introPic {
    margin-left: calc(50% + 30px);
  }

  @keyframes introPicScale {
    0% { transform: translate(-50%) scale(-1.05, 1.05); }
    50% { transform: translate(-50%) scale(-1.13, 1.13); }
    100% { transform: translate(-50%) scale(-1.05, 1.05); }
  }

  @keyframes introGraphicScale {
    0% { transform: translate(-50%, -50%) scale(0.97, 0.97); }
    50% { transform: translate(-50%, -50%) scale(1.01, 1.01); }
    100% { transform: translate(-50%, -50%) scale(0.97, 0.97); }
  }

  .introTextDiagonalGroup {
    width: calc((100vw - 925px) / 2 );
  }

  .introH1 {
    font-size: 40px;
  }

  .introH2 {
    font-size: 20px;
  }

  .introTextXGroup {
    bottom: 332.5px;
    left: 97.55%;
  }

  .introTextXGroup .introX {
    width: 17.5px;
    height: 17.5px;
  }

  .indexCard h2 {
    font-size: 18px;
  }

  .indexCardContainer:hover .indexCard h2 {
    transform: scale(1.15, 1.15);
  }


  /* PROJECT MAIN */

  #projectMainHeader {
    height: 275px;
  }

  .projectCircleGroup {
    top: -27px;
    left: calc(100vw - 332.5px);
  }

  .verticalDisappear1 {
    display: none;
  }

  .projectHeadVerticals {
    left: calc(100vw - 340px);
  }

  .projectHeadDiagonals {
    bottom: -15px;
    left: -65px;
  }

  .projectHeadDiagonals2 {
    bottom: 95px;
    left: 84px;
    width: 305px;
  }

  .projectHeadXs {
    left: 275px;
  }

  .projectHeadXs .introX {
    width: 15px;
    height: 15px;
  }

  :root {
    --project-row-right-space: 55%;
  }

  .projectRow h2 {
    font-size: 22px;
  }

  .projectRowLine {
    width: calc(var(--project-row-right-space) - 272.5px);
  }


  /* ABOUT */

  .alth1 {
    font-size: 28px;
  }

  #titleBox {
    margin-top: 4px;
  }

  .typewriterAboutContact {
    padding: 8px 16px;
  }

  .aboutBioContent {
    margin: 0 85px;
  }

  #profilePic {
    width: 120%;
  }

  .eduInfo {
    margin: 0 0px;
  }

  #polyu1, #apcict1_1, #apcict2_1, #thuasAward1-1, #thuasAward2-1 {
    display: none;
  }

  #polyu2, #apcict1_2, #apcict2_2, #thuasAward1-2, #thuasAward2-2 {
    display: inline-block;
  }


  /* CONTACT */

  .contactBox {
    width: 280px;
  }

  .contactIcon {
    width: 40px;
  }

  .contactText {
    margin-left: 65px;
  }


  /* PROJECT PAGES */

  .projectWrap {
    margin-right: 6.5vw;
  }


  /* PROJECT BUTTONS */

  #infoBox {
    width: calc(59vw + 75px);
  }

  @keyframes buttonScale {
    from {top: calc(50% + 150px);}
    to {top: calc(0% + 150px)}
  }

  @keyframes buttonDescale {
    from {top: calc(0% + 150px);}
    to {top:calc(50% + 150px)}
  }
}



@media (max-width: 1300px) {

  /* GENERAL */

  main {
    overflow-x: hidden;
  }

  h1 {
    font-size: 28px;
  }

  .contactEndFix {
    padding-top: 25px;
  }

  .projectFixBottom {
    padding-top: 125px;
  }

  .basicHeaderFix {
    padding-top: 55px;
  }

  .projectFixTop {
    padding-top: 160px;
  }

  .bigHeaderFix {
    padding-top: 225px;
  }


  /* NAV BAR */

  #logo {
    margin-left: 60px;
  }

  #menuicon {
    margin-left: 67px;
  }

  .sm-nav {
    margin-right: 50px;
  }


  /* BODY */

  .wrap, .projectMainWrap, .projectWrap, .projectGalleryWidth, .projectHeadTitle2 .headerLine {
    width: 800px;
  }


  /* INDEX */

  #introMiddle {
    left: calc(50% + 45px);
  }

  #introPic {
    margin-left: calc(50% + 45px);
  }

  .introTextDiagonalGroup {
    width: calc((100vw - 875px) / 2 );
  }

  .introH1 {
    font-size: 37.5px;
  }

  .introH2 {
    font-size: 19.5px;
  }

  .introTextXGroup {
    left: 97.2%;
  }

  .introTextCircleGroup {
    left: 57.5vw;
  }

  .introTextCircleGroup:nth-of-type(4) { display: none;}
  .introTextCircleGroup:nth-of-type(5) { margin-left: 5vw; }
  .introTextCircleGroup:nth-of-type(6) { margin-left: 7.5vw; }
  .introTextCircleGroup:nth-of-type(7) { margin-left: 10vw; }
  .introTextCircleGroup:nth-of-type(8) { margin-left: 12.5vw; }
  .introTextCircleGroup:nth-of-type(9) { margin-left: 15vw; }
  .introTextCircleGroup:nth-of-type(10) { margin-left: 17.5vw; }
  .introTextCircleGroup:nth-of-type(11) { margin-left: 20vw; }
  .introTextCircleGroup:nth-of-type(12) { margin-left: 22.5vw; }
  .introTextCircleGroup:nth-of-type(13) { margin-left: 25vw; }
  .introTextCircleGroup:nth-of-type(14) { margin-left: 27.5vw; }
  .introTextCircleGroup:nth-of-type(15) { margin-left: 30vw; }
  .introTextCircleGroup:nth-of-type(16) { margin-left: 32.5vw; }
  .introTextCircleGroup:nth-of-type(17) { margin-left: 35vw; }
  .introTextCircleGroup:nth-of-type(18) { margin-left: 37.5vw; }
  .introTextCircleGroup:nth-of-type(19) { margin-left: 40vw; }


  /* PROJECT MAIN */

  .projectMainWrap {
    margin: 0 auto;
  }

  .projectRowTitle {
    height: auto;
    border: none;
    margin: 35px 0 140px 0;
  }

  .projectRowTitle .projectRowLeft, .projectRowTitle .projectRowRight {
    position: relative;
    top: 0 !important;
    left: 0;
    transform: none;
  }

  :root {
    --project-row-right-space: 52%;
  }

  .projectRow h2 {
    font-size: 20.5px;
    line-height: 1.35em;
    margin-top: 1px;
  }

  .projectRowLine {
    left: 205px;
    width: calc(var(--project-row-right-space) - 240px);
  }

  .projectRowLeft {
    left: 40px;
  }

  .projectRowLeft .h4-line, .projectBr1 {
    display: block;
  }

  #loyalTitle1-Head2, #northernStreetLightsTitle1-Head2, #libraryTitle1-Head2, .projectRowTitle .projectRowLine {
    display: none;
  }

  #loyalTitle1-Head1, #northernStreetLightsTitle1-Head1, #libraryTitle1-Head1 {
    display: block;
  }


  /* ABOUT & CONTACT */

  #blueBox {
    width: 100vw !important;
    height: 80vh !important;
  }

  #whiteBox, #whiteBoxOverflowFix {
    display: none;
  }

  .aboutContactParticles {
    height: 80vh;
  }


  /* ABOUT */

  .aboutBioContent {
    margin: 0 75px;
  }

  #profilePic {
    width: 130%;
  }

  .awardImg {
    width: 80px;
    margin-bottom: 10px;
  }

  #gdgsImg {
    width: 100px;
    margin-bottom: 0;
  }

  #polyuImg {
    width: 82.5px;
    margin-bottom: 8.75px;
  }

  #firstAward, #secondAward {
    margin-top: 60px;
  }


  /* PROJECT PAGES */

  .projectHeadBG {
    height: 500px;
  }

  .projectHeadImg {
    transform: translateX(-50%) scale(0.975, 0.975);
  }

  .projectHeadTitle, .projectLineFull {
    display: none !important;
  }

  .projectHeadTitle2, .projectWidth-1300 {
    display: block;
  }

  .projectHeadTitle2 .headerLine {
    display: block;
    margin: 2px 0 0 0;
  }

  #projectMainColumn {
    width: 100vw;
  }

  #projectInfoColumn, .projectLineVertical {
    display: none;
  }

  .projectWrap {
    margin: 125px auto 0 auto;
  }

  .projectLineHalf {
    width: 100vw;
  }


  /* PROJECT TABLE */

  .tableTitle {
    width: 85px;
  }


  /* PROJECT GALLERY */

  .projectGallery {
    margin-top: 75px;
  }


  /* PROJECT PROTOTYPE */

  .xdPrototype {
    width: 268px;
    height: 580px;
  }

  .prototypeCase {
    width: 445px;
  }

  .xdPrototypeLaptop {
    margin-top: 30px;
    width: 665px;
    height: 374px;
  }

  .prototypeCaseLaptop {
    width: 850px;
  }

  #tryProtoArrow {
    top: 44%;
    margin-left: 205px;
  }

  #tryProtoText {
    top: 35.7%;
    margin-left: 237px;
  }

  .tryProtoLaptopArrow {
    display: block;
    margin-left: 425px !important;
  }

  .tryProtoLaptopText {
    display: block;
    top: 34.2% !important;
    margin-left: 457px !important;
  }


  /* PROJECT BUTTONS */

  .menuBtn {
    right: 35px;
  }

  .menuBtnRound {
    font-size: 36px;
  }

  #info {
    bottom: 139px;
  }

  #back {
    bottom: 92px;
  }

  #up {
    bottom: 45px;
  }

  .menuBtnInfo {
    right: -5px;
  }

  @keyframes aboutColor {
    from {opacity: 0; width: 75px; padding: 13px 0;}
    to {opacity: 1; width: 118px; padding: 13px 0px 13px 11px;}
  }

  #infoBox {
    width: 100vw;
    margin: 0;
  }

  #infoBoxContent {
    max-width: 930px;
    padding: 0 65px;
    margin: auto;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 647.5px;
    margin-top: 138.5px;
  }

  .loyalLogoImg {
    width: 90%;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 600px;
    margin-top: 135px;
  }

  #deformageMockupSm {
    width: 97.5%;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 520px;
    margin-top: 143.5px;
  }

  #kioskPic1 {
    transform: scale(1.05, 1.05);
  }

  #kioskPic2, #kioskPic3 {
    transform: scale(1.1, 1.1);
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 590px;
    margin-top: 127.5px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 575px;
    margin-top: 132.5px;
  }

  #animationVid {
    width: 105%;
  }

  #neonSigns {
    width: 100%;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 562.5px;
    margin-top: 142px;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 457.5px;
    margin-top: 150px;
  }

  #mirrorAnim {
    width: 105%;
    margin: -17.5px 0 20px 50%;
  }

  #fortuneAnim {
    width: 115%;
  }
}



@media (max-width: 1250px) {

  /* PRODUCT PAGES */

  .galleryBtn {
    font-size: 30px;
  }
}



@media (max-width: 1225px) {

  /* GENERAL */

  .contentFix, .indexFix {
    padding-top: 165px;
  }


  /* BODY */

  .wrap, .projectMainWrap, .projectWrap, .projectGalleryWidth, .projectHeadTitle2 .headerLine {
    width: 750px;
  }


  /* INDEX */

  #introMiddle {
    left: calc(50% + 60px);
  }

  #introPic {
    margin-left: calc(50% + 60px);
  }

  @keyframes introPicScale {
    0% { transform: translate(-50%) scale(-1, 1); }
    50% { transform: translate(-50%) scale(-1.07, 1.07); }
    100% { transform: translate(-50%) scale(-1, 1); }
  }

  @keyframes introGraphicScale {
    0% { transform: translate(-50%, -50%) scale(0.95, 0.95); }
    50% { transform: translate(-50%, -50%) scale(0.99, 0.99); }
    100% { transform: translate(-50%, -50%) scale(0.95, 0.95); }
  }

  .introXGroup2 {
    left: 96.5%;
  }

  .introRightLine {
    left: calc(96.5% + 7.5px);
  }

  .introXGroup3 {
    left: calc(3.5% - 15px);
  }

  .introLeftLine {
    left: calc(3.5% - 7.5px);
  }

  .introTextDiagonalGroup {
    top: 170px;
    width: calc((100vw - 825px) / 2 );
    height: calc(100% - 330px);
  }

  .introH1 {
    font-size: 35px;
  }

  .introH2 {
    font-size: 19px;
  }

  #indexBody .nanoFix:nth-of-type(3) {
    padding-top: 30px;
  }

  .indexFixEnd {
    padding-top: 35px;
  }


  /* PROJECT MAIN */

  .projectCircleGroup {
    left: calc(100vw - 302.5px);
  }

  .verticalDisappear2 {
    display: none;
  }

  .projectHeadVerticals {
    left: calc(100vw - 250px);
  }

  .projectHeadDiagonals {
    left: -120px;
  }

  .projectHeadDiagonals2 {
    left: 80px;
    width: 270px;
  }

  .projectHeadXs {
    left: 220px;
  }

  :root {
    --project-row-right-space: 50%;
  }


  /* ABOUT */

  #thuas1, #ssdc1 {
    display: none;
  }

  #thuas2, #ssdc2 {
    display: inline-block;
  }


  /* CONTACT */

  .contactSpace {
    margin: 0 50px;
  }


  /* PROJECT TABLE */

  .projectTableAltLeft {
    padding-left: 100px;
  }


  /* PROJECT GALLERY */

  .projectGalleryBtn {
    margin-top: 40px;
  }

  .projectDot, .projectDot2 {
    margin-top: 38px;
  }


  /* PROJECT PROTOTYPE */

  .xdPrototypeLaptop {
    margin-top: 28px;
    width: 610px;
    height: 343px;
  }

  .prototypeCaseLaptop {
    width: 780px;
  }

  .tryProtoLaptopArrow {
    margin-left: 395px !important;
  }

  .tryProtoLaptopText {
    top: 33.4% !important;
    margin-left: 427px !important;
  }


  /* PROJECT BUTTONS */

  #infoBoxContent {
    max-width: 880px;
  }


  /* NORTHERN STREET LIGHTS */

  #neonSigns {
    margin: 0 0 20px 50%;
  }


  /* CENTRAL LIBRARY */

  #library2 {
    width: 113.5%;
  }


  /* MIRRORED MEMORIES */

  #fortuneAnim {
    width: 120%;
    margin: -25px 0 22.5px 50%;
  }
}



@media (max-width: 1200px) {

  /* GENERAL */

  .headlineFix {
    padding-top: 200px;
  }
}



@media (max-width: 1175px) {

  /* ABOUT */

  #bio1 {
    display: none;
  }

  #bio2 {
    display: inline-block;
  }

  .aboutBio, .profilePicContainer {
    height: 400px;
  }

  #profilePic {
    width: 130%;
  }
}



@media (max-width: 1155px) {

  /* GENERAL */

  .endFixSmall {
    padding-top: 115px;
  }

  .projectFix, .projectTableFix  {
    padding-top: 125px;
  }

  .projectFixSmall {
    padding-top: 135px;
  }

  .projectFixAddition {
    padding-top: 17.5px;
  }


  /* BODY */

  .wrap, .projectMainWrap, .projectWrap, .projectGalleryWidth, .projectHeadTitle2 .headerLine {
    width: 700px;
  }


  /* INDEX */

  #anim {
    top: 45%;
  }

  .loader {
    margin-top: 33vh;
  }

  .introTextDiagonalGroup {
    width: calc((100vw - 765px) / 2 );
  }

  .introH1 {
    margin-top: 3.5px;
  }

  .introTextXGroup {
    bottom: 315px;
    left: 96.75%;
  }

  .introTextCircleGroup {
    left: 49.25vw;
  }

  .introTextCircleGroup div {
    width: 8px;
    height: 8px;
  }

  .introTextCircleGroup:nth-of-type(5) { margin-left: 6vw; }
  .introTextCircleGroup:nth-of-type(6) { margin-left: 9vw; }
  .introTextCircleGroup:nth-of-type(7) { margin-left: 12vw; }
  .introTextCircleGroup:nth-of-type(8) { margin-left: 15vw; }
  .introTextCircleGroup:nth-of-type(9) { margin-left: 18vw; }
  .introTextCircleGroup:nth-of-type(10) { margin-left: 21vw; }
  .introTextCircleGroup:nth-of-type(11) { margin-left: 24vw; }
  .introTextCircleGroup:nth-of-type(12) { margin-left: 27vw; }
  .introTextCircleGroup:nth-of-type(13) { margin-left: 30vw; }
  .introTextCircleGroup:nth-of-type(14) { margin-left: 33vw; }
  .introTextCircleGroup:nth-of-type(15) { margin-left: 36vw; }
  .introTextCircleGroup:nth-of-type(16) { margin-left: 39vw; }
  .introTextCircleGroup:nth-of-type(17) { margin-left: 42vw; }
  .introTextCircleGroup:nth-of-type(18) { margin-left: 45vw; }
  .introTextCircleGroup:nth-of-type(19) { margin-left: 48vw; }

  .indexCard h2 {
    font-size: 17px;
  }


  /* PROJECT MAIN */

  .projectRowTitle {
    margin: 17.5px 0 130px 0;
  }

  .projectRow h2 {
    font-size: 20px;
  }


  /* ABOUT */

  #firstAward, #secondAward {
    margin-top: 50px;
  }

  #seoultech1, #vdsg1 {
    display: none;
  }

  #seoultech2, #vdsg2 {
    display: inline-block;
  }


  /* CONTACT */

  .contactBoxContainer {
    text-align: left;
  }

  .contactBox2, .contactBox4 {
    float: right;
  }

  .contactBox1, .contactBox3 {
    float: left;
  }


  /* PROJECT GALLERY */

  .projectGalleryBtn {
    margin-top: 35px;
  }

  .projectDot, .projectDot2 {
    margin-top: 33px;
  }


  /* PROJECT PROTOTYPE */

  .xdPrototypeLaptop {
    margin-top: 26px;
    width: 563px;
    height: 317px;
  }

  .prototypeCaseLaptop {
    width: 720px;
  }

  .prototypeBtnLaptop {
    top: 44% !important;
  }

  .tryProtoLaptopArrow {
    margin-left: 370px !important;
  }

  .tryProtoLaptopText {
    top: 32.75% !important;
    margin-left: 402px !important;
  }


  /* PROJECT BUTTONS */

  .menuBtn {
    right: 30px;
  }

  .menuBtnRound {
    font-size: 34px;
  }

  #info {
    bottom: 135px;
  }

  #back {
    bottom: 90px;
  }

  .menuBtnInfo {
    right: -4.5px;
    margin-top: -4.5px;
  }

  @keyframes aboutColor {
    from {opacity: 0; width: 75px; padding: 11px 0;}
    to {opacity: 1; width: 110px; padding: 11px 0px 11px 11px;}
  }

  #infoBoxContent {
    max-width: 840px;
    padding: 0 70px;
  }

  @keyframes buttonScale {
    from {top: calc(50% + 148.5px);}
    to {top: calc(0% + 148.5px)}
  }

  @keyframes buttonDescale {
    from {top: calc(0% + 148.5px);}
    to {top:calc(50% + 148.5px)}
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 632.5px;
    margin-top: 145px;
  }

  .loyalLogoImg {
    width: 95%;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 587.5px;
    margin-top: 140px;
  }

  #deformageMockupSm {
    width: 100%;
    margin-bottom: 15px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 510px;
    margin-top: 149px;
  }

  #modelPic1, #modelPic2, #modelPic3 {
    width: 115%;
  }

  #kioskPic1 {
    transform: scale(1.1, 1.1);
  }

  #kioskPic2 {
    transform: scale(1.15, 1.15);
    margin-top: 35px;
  }

  #kioskPic3 {
    margin-top: -10px;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 565px;
    margin-top: 142.5px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 557.5px;
    margin-top: 140px;
  }

  #animationVid {
    width: 110%;
  }

  #neonSigns {
    width: 105%;
    margin: -10px 0 10px 50%;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 552.5px;
    margin-top: 147.5px;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 445px;
    margin-top: 157.5px;
  }
}



@media (max-width: 1100px) {

  /* NAV BAR */

  #logo {
    margin-left: 50px;
  }

  #menuicon {
    display: none;
  }

  .sm-nav {
    margin-right: 40px;
  }


  /* INDEX */

  .introXGroup2 {
    left: 96%;
  }

  .introRightLine {
    left: calc(96% + 7.5px);
  }

  .introXGroup3 {
    left: calc(4% - 15px);
  }

  .introLeftLine {
    left: calc(4% - 7.5px);
  }


  /* CONTACT */

  #kakaoImage {
    height: 250px;
  }


  /* PROJECT PROTOTYPE */

  .xdPrototype {
    width: 254px;
    height: 550px;
  }

  .prototypeCase {
    width: 422px;
  }

  #tryProtoArrow {
    top: 43.8%;
    margin-left: 195px;
  }

  #tryProtoText {
    top: 35%;
    margin-left: 232px;
  }


  /* PROJECT BUTTONS */

  #infoBoxContent {
    max-width: 700px;
    padding-left: 0;
    padding-right: 75px;
  }


  /* MIRRORED MEMORIES */

  #fortuneAnim {
    width: 125%;
  }
}



@media (max-width: 1050px) {

  /* ABOUT */

  #profilePic {
    width: 135%;
  }


  /* PROJECT PROTOTYPE */

  .tryProtoLaptopArrow, .tryProtoLaptopText {
    display: none;
  }
}



@media (max-width: 1000px) {

  /* GENERAL */

  h1 {
    font-size: 26px;
  }

  h3 {
    font-size: 32px;
  }

  .basicHeaderFix {
    padding-top: 30px;
  }

  .sectionFix {
    padding-top: 75px;
  }

  .endFixSmall {
    padding-top: 100px;
  }

  .projectFixTop {
    padding-top: 142.5px;
  }

  .indexFix {
    padding-top: 160px;
  }


  /* BODY */

  .wrap, .projectMainWrap, .projectWrap, #infoBoxContent, .projectGalleryWidth, .projectHeadTitle2 .headerLine, .projectRowLeft .h4-line {
    width: 650px;
  }


  /* INDEX */

  .introTextDiagonalGroup {
    top: 165px;
    width: calc((100vw - 715px) / 2 );
    height: calc(100% - 320px);
  }

  .indexFixEnd {
    padding-top: 15px;
  }


  /* PROJECT MAIN */

  #projectMainHeader {
    height: 270px;
  }

  #projectMainHeader img {
    height: 150%;
    width: auto;
  }

  .projectCircleGroup {
    top: -30px;
    left: calc(100vw - 302.5px);
  }

  .verticalDisappear3 {
    display: none;
  }

  .projectHeadVerticals {
    left: calc(100vw - 220px);
  }

  .projectHeadDiagonals {
    left: -170px;
  }

  .projectHeadDiagonals2 {
    left: -21px;
  }

  .projectHeadXs {
    left: 172.5px;
  }

  .projectRow h2 {
    font-size: 19.25px;
  }

  .projectRow .projectRowLeft, .projectRow .projectRowRight, .projectRow .projectRowLine {
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
  }

  .projectRowLeft {
    top: 58%;
    width: 200px;
  }

  .projectRowRight {
    top: 36%;
  }

  .projectRowLeft p:nth-child(2), .projectRowLeft p:nth-child(3), .projectRow .projectRowRight p, .projectRowH2Line {
    display: none;
  }

  .projectRowLine {
    top: 52%;
    width: 225px;
  }

  .projectRow:hover .projectRowLine {
    background-color: var(--highlight-blue);
    height: 2px;
  }

  #northernStreetLightsCard .projectRowLeft, #libraryCard .projectRowLeft {
    top: 64%;
  }

  #northernStreetLightsCard .projectRowLine, #libraryCard .projectRowLine {
    top: 58%;
  }

  #northernStreetLightsCard .projectRowRight, #libraryCard .projectRowRight {
    top: 31%;
  }


  /* ABOUT */

  #profilePic {
    width: 150%;
  }

  #deltatre1 {
    display: none;
  }

  #deltatre2 {
    display: inline-block;
  }


  /* PROJECT PAGES */

  .projectHeadBG {
    height: 485px;
  }

  .projectHeadTitle2 {
    top: 675px;
  }

  .projectHeadTitle2 .headerLine {
    margin: 4px 0 0 0;
  }


  /* PROJECT TABLE */

  .projectTableAltLeft {
    padding-left: 75px;
  }

  .projectTableAltRight {
    padding-left: 50px;
  }


  /* PROJECT PROTOTYPE */

  .xdPrototypeLaptop {
    margin-top: 24px;
    width: 532px;
    height: 299px;
  }

  .prototypeCaseLaptop {
    width: 680px;
  }


  /* PROJECT BUTTONS */

  #up, #back {
    display: none;
  }

  #info {
    right: 3vw;
    bottom: 55px;
  }

  #xInfoBox {
    right: 3vw;
  }

  .menuBtnRound {
    font-size: 40px;
  }

  .menuBtnInfo {
    margin-top: -5.5px;
    right: -5.5px;
  }

  @keyframes aboutColor {
    from {opacity: 0; width: 75px; padding: 15px 0;}
    to {opacity: 1; width: 125px; padding: 15px 0px 15px 15px;}
  }

  @keyframes buttonScale {
    from {top: calc(50% + 150px);}
    to {top: calc(0% + 150px)}
  }

  @keyframes buttonDescale {
    from {top: calc(0% + 150px);}
    to {top:calc(50% + 150px)}
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 610px;
    margin-top: 145px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 565px;
    margin-top: 135px;
  }

  #deformageMockupSm {
    margin-bottom: 0;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 495px;
    margin-top: 145px;
  }

  #modelPic1, #modelPic2, #modelPic3 {
    width: 117.5%;
  }

  #kioskPic1 {
    transform: scale(1.175, 1.175);
    margin-bottom: 15px;
  }

  #kioskPic2 {
    transform: scale(1.225, 1.225);
    margin-bottom: 15px;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 537.5px;
    margin-top: 143.5px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 535px;
    margin-top: 140px;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 530px;
    margin-top: 144.5px;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 432.5px;
    margin-top: 151px;
  }

  #mirrorAnim {
    margin: -5px 0 25px 50%;
  }

  #fortuneAnim {
    width: 127.5%;
  }
}



@media (max-width: 915px) {

  /* GENERAL */

  h1 {
    line-height: 32px;
  }

  h2 {
    font-size: 24px;
  }

  .contactEndFix {
    display: none;
  }

  .contactTopFix {
    padding-top: 35px;
  }

  .indexFix {
    padding-top: 155px;
  }

  .bigHeaderFix {
    padding-top: 185px;
  }

  .projectFixTop {
    padding-top: 132.5px;
  }


  /* BODY */

  .wrap, .projectMainWrap, .projectWrap, #infoBoxContent, .projectHeadTitle2 .headerLine, .projectRowLeft .h4-line {
    width: 600px;
  }


  /* INDEX */

  .introXGroup2 {
    left: 95.5%;
  }

  .introRightLine {
    left: calc(95.5% + 7.5px);
  }

  .introXGroup3 {
    left: calc(4.5% - 15px);
  }

  .introLeftLine {
    left: calc(4.5% - 7.5px);
  }

  .introTextDiagonalGroup {
    top: 160px;
    width: calc((100vw - 665px) / 2 );
    height: calc(100% - 310px);
  }

  .introH1 {
    margin: 8px 0 20px 0;
  }

  .introTextXGroup {
    left: 96.25%;
  }

  .introTextXGroup .introX {
    width: 15px;
    height: 15px;
  }

  .introTextCircleGroup {
    left: 43.5vw;
  }

  .introTextCircleDisappear1 {
    display: none;
  }

  .introTextCircleGroup:nth-of-type(5) { display: none; }
  .introTextCircleGroup:nth-of-type(6) { margin-left: 3.8vw; }
  .introTextCircleGroup:nth-of-type(7) { margin-left: 7.6vw; }
  .introTextCircleGroup:nth-of-type(8) { margin-left: 11.4vw; }
  .introTextCircleGroup:nth-of-type(9) { margin-left: 15.2vw; }
  .introTextCircleGroup:nth-of-type(10) { margin-left: 19vw; }
  .introTextCircleGroup:nth-of-type(11) { margin-left: 22.8vw; }
  .introTextCircleGroup:nth-of-type(12) { margin-left: 26.6vw; }
  .introTextCircleGroup:nth-of-type(13) { margin-left: 30.4vw; }
  .introTextCircleGroup:nth-of-type(14) { margin-left: 34.2vw; }
  .introTextCircleGroup:nth-of-type(15) { margin-left: 38vw; }
  .introTextCircleGroup:nth-of-type(16) { margin-left: 41.8vw; }
  .introTextCircleGroup:nth-of-type(17) { margin-left: 45.6vw; }
  .introTextCircleGroup:nth-of-type(18) { margin-left: 49.4vw; }
  .introTextCircleGroup:nth-of-type(19) { margin-left: 53.2vw; }

  .indexCard h2 {
    font-size: 16.5px;
  }

  .indexFixEnd {
    display: none;
  }


  /* PROJECT MAIN */

  .projectRowTitle {
    margin: 15px 0 112.5px 0;
  }


  /* ABOUT & CONTACT */

  .typewriterAboutContact {
    margin: 8px 0 0 0;
    line-height: 23px;
  }

  #h2-br, #aboutHeaderBreak, #contactHeaderBreak {
    display: inline-block;
  }

  .blueBoxContent {
    margin-top: 35px;
  }

  .blueBoxContent p {
    margin-bottom: 30px;
  }

  .blueBoxContent a {
    display: none;
  }

  .headerLine {
    width: calc(100% - 55px);
  }

  .headerSub {
    margin: 12px 0 25px 0;
  }


  /* ABOUT */

  .aboutBio {
    width: 100vw;
    height: auto;
  }

  .aboutBioContent {
    max-width: 600px;
    transform: none;
    margin: auto;
    padding: 100px 0;
  }

  .profilePicContainer {
    display: none;
  }

  .edu {
    padding: 40px 0;
    min-height: 325px;
  }

  .eduBox {
    width: 100%;
    height: 100px;
    background-color: rgba(0, 0, 0, 0);
    box-shadow: none;
  }

  .eduBoxText {
    position: absolute;
    line-height: 19px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .eduBox p {
    font-size: 17px;
    color: var(--main-blue);
  }

  .eduLine {
    background: var(--main-blue);
    opacity: 50%;
    width: 125px;
    height: 1px;
    margin: 0 0 1px 0;
  }

  .eduBoxTextTop {
    line-height: 10px;
  }

  .eduCaption, .aboutArrow {
    text-align: center;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin: 10px 0 0 0;
  }

  .aboutArrow {
    font-size: 15px;
    animation-name: none;
    margin-top: 105px;
  }

  .eduInfo {
    text-align: center;
    animation-duration: 1.5s;
    margin: 0 50px;
  }

  .edu:hover {
    background-color: rgba(0, 0, 0, 0);
  }

  #polyu2, #apcict1_5, #thuas4 {
    display: none;
  }

  #polyu3, #apcict1_6, #thuas5 {
    display: inline-block;
  }

  #firstAward {
    margin-top: 45px !important;
  }

  .awardBox {
    display: block;
    width: 100%;
    margin: 75px 0 65px 0 !important;
  }

  .awardSpacer {
    display: block;
  }

  #polyuImg {
    width: 85px;
    margin-bottom: 7.5px;
  }


  /* CONTACT */

  #contactDetailsShort {
    display: none;
  }

  .contactBoxContainer {
    width: 100%;
    text-align: center;
    margin: 15px 0
  }

  .contactBox  {
    float: none;
    width: auto;
  }

  .contactBox1 {
    margin-top: 10px;
  }

  .contactBox3 {
    margin-bottom: 30px;
  }

  .contactIcon {
    width: 42px;
  }

  .contactText {
    margin-left: 70px;
  }

  .contactSpacer {
    display: block;
  }


  /* PROJECT PAGES */

  .projectHeadTitle2 .headerLine, .projectRowLeft .h4-line {
    margin: 5px 0 0 0;
  }


  /* PROJECT TABLE */

  .tableTitle {
    width: 70px;
  }

  .projectTableAlt {
    padding: 25px 0;
  }

  .projectTableAltLeft {
    padding-left: 70px;
  }

  .projectTableAltRight {
    padding-left: 40px;
  }


  /* PROJECT GALLERY */

  .projectGalleryWidthMain, .projectGalleryWidth {
    width: 650px;
  }

  .projectGalleryWidthMain, #deformageMockupSm {
    margin-left: 50%;
    transform: translateX(-50%);
  }

  #projectMainColumn .captionAll {
    margin-left: -25px !important;
    transform: none;
  }


  /* PROJECT PROTOTYPE */

  .xdPrototypeLaptop {
    margin-top: 23px;
    width: 509px;
    height: 286px;
  }

  .prototypeCaseLaptop {
    width: 650px;
  }

  .prototypeBtnLaptop {
    top: 43% !important;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 590px;
    margin-top: 150px;
  }

  .loyalLogoImg {
    width: 100%;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 550px;
    margin-top: 142.5px;
  }

  #deformageMockupSm {
    width: 105%;
  }

  #deformagePic1 {
    transform: scale(1.08, 1.08);
    margin-top: -25px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 477.5px;
    margin-top: 155.5px;
  }

  #modelPic1, #modelPic2, #modelPic3 {
    width: 120%;
  }

  #modelPic1Img, #modelPic2Img, #modelPic3Img {
    width: 100%;
  }

  #kioskPic1 {
    transform: scale(0.85, 0.85);
    margin: -10px 0 0 0;
  }

  #kioskPic2 {
    transform: scale(0.875, 0.875);
    margin: -55px 0 0 0;
  }

  #kioskPic3 {
    margin: -50px 0 0 0;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 520px;
    margin-top: 152.5px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 525px;
    margin-top: 145px;
  }

  #animationVid {
    width: 117.5%;
  }

  #neonSigns {
    width: 115%;
    margin-bottom: 15px;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 515px;
    margin-top: 151px;
  }

  #library2 img {
    width: 107.5%;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 417.5px;
    margin-top: 160px;
  }

  #mirrorAnim {
    width: 110%;
    margin: 0 0 30px 50%;
  }
}



@media (max-height: 900px) {

  /* CONTACT */

  .contactCircleShort1 {
    display: none;
  }

  #contactDiagonals {
    margin-top: 85vh;
  }
}



@media (max-width: 855px) {

  /* NAV BAR */

  #logo {
    height: 30px;
    margin-top: 28px;
  }


  /* PROJECT GALLERY */

  .projectGallery {
    margin-top: 60px;
  }


  /* PROJECT BUTTONS */

  #info, #xInfoBox {
    right: 1.8vw;
  }

  #infoBoxContent {
    padding-right: 60px;
  }
}



@media (max-height: 850px) {

  /* ABOUT & CONTACT */

  .whiteBoxDecorDiagonals {
    margin-top: -50px;
  }

  .whiteBoxDecorX-1 {
    top: 30px;
  }

  .contactCircleShort2 {
    display: none;
  }

  #contactVerticals {
    bottom: -15px;
    -moz-transform: scale(-1, 1);
    -webkit-transform: scale(-1, 1);
    -o-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1);
  }


  /* PROJECT PAGES */

  .tableDecorX2 {
    top: calc(94vh - 100px);
  }

  .tableCircles {
    top: 94vh;
  }
}



@media (max-width: 825px) {

  /* GENERAL */

  .contentFix {
    padding-top: 125px;
  }


  /* BODY */

  .wrap, .projectMainWrap, .projectWrap, #infoBoxContent, .aboutBioContent {
    width: 75%;
  }


  /* NAV BAR */

  .pages {
    margin: 32px 60px 0 0;
  }

  .sm-nav {
    display: none;
  }


  /* INDEX */

  .introXGroup2, .introXGroup3, .introLeftLine, .introRightLine {
    display: none;
  }

  .introTextDiagonalGroup {
    width: calc((25vw - 50px) / 2 );
  }

  .indexCard {
    min-width: 100%;
    aspect-ratio: 6 / 2;
    background-color: rgba(31, 35, 47, 0);
  }

  .indexCard:nth-child(2) {
    margin-left: -100%;
  }

  .indexCardContainer:hover .indexCard {
    background-color: rgba(31, 35, 47, 0);
  }

  .indexCard h2 {
    font-size: 17.5px;
  }


  /* PROJECT PAGES */

  .projectHeadTitle2 .headerLine, .projectRowLeft .h4-line {
    width: 75vw;
  }


  /* PROJECT TABLE */

  .projectTableAltLeft {
    padding-left: 55px;
  }

  .projectTableAltRight {
    padding-left: 45px;
  }


  /* PROJECT GALLERY */

  .projectGalleryWidthMain, .projectGalleryWidth {
    width: 80vw;
  }

  #projectMainColumn .captionAll {
    margin-left: -2.5vw !important;
  }

  .projectGalleryBtn {
    font-size: 22px;
  }

  .rightGalleryBtn {
    margin-left: 100px;
  }

  .leftGalleryBtn {
    margin-left: -100px;
  }


  /* PROJECT PROTOTYPE */

  .prototypeDisable {
    display: none;
  }

  .prototypeEnable {
    display: block;
  }


  /* PROJECT BUTTONS */

  #info {
    bottom: 45px;
  }

  #infoBox {
    bottom: 75px;
    padding-top: 225px;
  }

  #infoBoxContent {
    padding-right: 45px;
  }

  .menuBtn {
    right: 25px;
  }


  /* DEFORMAGE */

  #deformagePic1 {
    transform: scale(1.02, 1.02);
    margin-top: 20px;
  }


  /* LIVING LIGHTS */

  #modelPic1, #modelPic2, #modelPic3 {
    width: 125%;
    margin-bottom: 0;
  }


  /* NORTHERN STREET LIGHTS */

  #animationVid {
    width: 120%;
  }


  /* MIRRORED MEMORIES */

  #fortuneAnim {
    width: 130%;
    margin: -15px 0 22.5px 50%;
  }
}



@media (max-width: 800px) {

  /* GENERAL */

  h3 {
    font-size: 30px;
  }

  .projectFixTop {
    padding-top: 130px;
  }


  /* INDEX */

  .introTextXGroup {
    bottom: 285px;
  }

  .introTextCircleDisappear2 {
    display: none;
  }


  /* PROJECT PAGES */

  .projectHeadBG {
    height: 465px;
  }

  .projectHeadTitle2 {
    top: 650px;
  }


  /* PROJECT BUTTONS */

  .menuBtn {
    right: 20px;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 580px;
    margin-top: 137.5px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 540px;
    margin-top: 133.5px;
  }

  #deformageMockupSm {
    width: 107.5%;
    margin-bottom: 15px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 462.5px;
    margin-top: 148.5px;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 502.5px;
    margin-top: 148px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 502.5px;
    margin-top: 141.5px;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 500px;
    margin-top: 145px;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 405px;
    margin-top: 154.5px;
  }


  /* DATA REGULATIONS */

  #dataSpacer1 {
    display: none;
  }

  #dataSpacer2 {
    display: block;
  }

  #bannerFix {
    padding-right: 120px;
  }

  #bannerBtn {
    right: 40px;
  }
}



@media (max-width: 750px) {

  /* GENERAL */

  .sectionFix, .endFixSmall {
    padding-top: 65px;
  }

  .projectFixBottom {
    padding-top: 115px;
  }


  /* INDEX */

  #introPic {
    margin-left: calc(50% + 40px);
  }

  #introMiddle {
    left: calc(50% + 52.5px)
  }

  @keyframes introPicScale {
    0% { transform: translate(-50%) scale(-0.975, 0.975); }
    50% { transform: translate(-50%) scale(-1.025, 1.025); }
    100% { transform: translate(-50%) scale(-0.975, 0.975);  }
  }

  @keyframes introGraphicScale {
    0% { transform: translate(-50%, -50%) scale(0.85, 0.85); }
    50% { transform: translate(-50%, -50%) scale(0.9, 0.9); }
    100% { transform: translate(-50%, -50%) scale(0.85, 0.85); }
  }


  /* PROJECT MAIN */

  .projectCircleGroup {
    left: calc(100vw - 275px);
  }

  .projectHeadVerticals {
    left: calc(100vw - 192.5px);
  }

  .projectHeadDiagonals {
    left: -195px;
  }

  .projectHeadDiagonals2 {
    left: -46px;
  }

  .projectHeadXs {
    left: 146.5px;
  }

  .projectRowTitle {
    margin: 5px 0 110px 0;
  }


  /* PROJECT TABLE */

  .projectTableAltLeft {
    padding-left: 45px;
  }

  .projectTableAltRight {
    padding-left: 35px;
  }


  /* PROJECT BUTTONS */

  #info {
    right: 3.75vw;
    bottom: 37.5px;
  }

  #xInfoBox {
    right: 3.75vw;
  }

  #infoBox {
    bottom: 55px;
    padding-top: 205px;
  }


  /* DEFORMAGE */

  #deformageMockupSm {
    margin-bottom: 20px;
  }
}



@media (max-height: 700px) {

  /* ABOUT & CONTACT */

  .whiteBoxDecorDiagonals {
    margin-top: -80px;
  }

  .whiteBoxDecorX-1 {
    top: 0;
  }

  .whiteBoxDecorVerticals {
    margin-top: 45vh;
  }

  .whiteBoxDecorX-2 {
    margin-bottom: 142.5px;
  }

  .whiteBoxDecorCircles div {
    margin-top: 15px;
  }

  .whiteBoxCircleCol1, .whiteBoxCircleCol2, .whiteBoxCircleCol3, .whiteBoxCircleCol4, .whiteBoxCircleCol5 {
    margin-bottom: -43px;
  }

  .whiteBoxCircleCol6, .whiteBoxCircleCol7, .whiteBoxCircleCol8, .whiteBoxCircleCol9, .whiteBoxCircleCol10 {
    margin-bottom: 7px;
  }

  .contactCircleShort3 {
    display: none;
  }

  #contactDiagonals {
    margin-top: 90vh;
  }

  #contactVerticals {
    bottom: 0;
  }


  /* CONTACT */

  #kakaoImage {
    height: 225px;
  }

}



@media (max-width: 700px) {

  /* GENERAL */

  .basicHeaderFix, .contactTopFix {
    padding-top: 25px;
  }

  .projectFix {
    padding-top: 115px;
  }

  .projectTableFix, .projectFixEnd {
    padding-top: 100px;
  }

  .projectFixSmall {
    padding-top: 125px;
  }


  /* INDEX */

  .introTextCircleDisappear3 {
    display: none;
  }


  /* PROJECT MAIN */

  .projectRow h2 {
    font-size: 19px;
    width: 300px;
  }

  .projectBr2 {
    display: block;
  }

  #loyalCard .projectRowLeft, #deformageCard .projectRowLeft, #mirroredMemoriesCard .projectRowLeft {
    top: 64%;
  }

  #loyalCard .projectRowLine, #deformageCard .projectRowLine, #mirroredMemoriesCard .projectRowLine {
    top: 58%;
  }

  #loyalCard .projectRowRight, #deformageCard .projectRowRight, #mirroredMemoriesCard .projectRowRight {
    top: 31%;
  }


  /* ABOUT */

  .awardImg {
    width: 70px;
    margin-bottom: 7px;
  }

  #gdgsImg {
    width: 90px;
    margin-bottom: -3px;
  }

  #polyuImg {
    width: 75px;
    margin-bottom: 4.5px;
  }

  .aboutBioContent {
    padding: 95px 0;
  }


  /* CONTACT */

  .contactBox1 {
    margin-top: 0px;
  }


  /* PROJECT TABLE */

  .tableTitle {
    width: 80px;
  }

  .projectTableAltLeft, .projectTableAltRight {
    width: 100%;
    padding: 0;
  }

  .projectTableAltLeft table, .projectTableAltRight table {
    margin: auto;
  }

  .projectTableAltRight {
    margin-top: -3px;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 565px;
    margin-top: 143.5px;
  }

  #loyalTableAlt table {
    width: 200px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 530px;
    margin-top: 138.5px;
  }

  #deformageTableAlt table {
    width: 195px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 447.5px;
    margin-top: 155.5px;
  }

  #livingLightsTableAlt table {
    width: 200.5px;
  }

  #kioskPic1 {
    transform: scale(0.9, 0.9);
  }

  #kioskPic2 {
    transform: scale(0.925, 0.925);
  }

  #kioskPic3 {
    margin-top: -60px;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 490px;
    margin-top: 154px;
  }

  #furnUpTableAlt table {
    width: 205px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 495px;
    margin-top: 146px;
  }

  #northernStreetLightsTableAlt table {
    width: 214px;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 490px;
    margin-top: 149.5px;
  }

  #libraryTableAlt table {
    width: 175px;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 395px;
    margin-top: 160px;
  }

  #mirroredMemoriesTableAlt table {
    width: 214px;
  }

  #fortuneAnim {
    width: 135%;
    margin: -12.5px 0 25px 50%;
  }


  /* DATA REGULATIONS */

  #bannerFix {
    padding-right: 120px;
    padding-left: 30px;
  }

  #bannerBtn {
    right: 30px;
  }
}



@media (max-width: 650px) {

  /* GENERAL */

  .projectFixBottom {
    padding-top: 100px;
  }

  .indexFix {
    padding-top: 145px
  }


  /*   INDEX  */

  .introTextDiagonalGroup {
    top: 150px;
    height: calc(100% - 290px);
  }

  .introH1 {
    font-size: 33px;
  }

  .introTextXGroup {
    bottom: 250px;
    left: 95.5%;
  }

  .introTextCircleGroup {
    left: 37.5vw;
  }

  .introTextCircleGroup:nth-of-type(6) { margin-left: 4.5vw; }
  .introTextCircleGroup:nth-of-type(7) { margin-left: 9vw; }
  .introTextCircleGroup:nth-of-type(8) { margin-left: 13.5vw; }
  .introTextCircleGroup:nth-of-type(9) { margin-left: 18vw; }
  .introTextCircleGroup:nth-of-type(10) { margin-left: 22.5vw; }
  .introTextCircleGroup:nth-of-type(11) { margin-left: 27vw; }
  .introTextCircleGroup:nth-of-type(12) { margin-left: 31.5vw; }
  .introTextCircleGroup:nth-of-type(13) { margin-left: 36vw; }
  .introTextCircleGroup:nth-of-type(14) { margin-left: 40.5vw; }
  .introTextCircleGroup:nth-of-type(15) { margin-left: 45vw; }
  .introTextCircleGroup:nth-of-type(16) { margin-left: 49.5vw; }
  .introTextCircleGroup:nth-of-type(17) { margin-left: 54vw; }
  .introTextCircleGroup:nth-of-type(18) { margin-left: 58.5vw; }
  .introTextCircleGroup:nth-of-type(19) { display: none; }

  .indexCard {
    height: 165px;
    aspect-ratio: none;
  }


  /* ABOUT */

  .eduInfo {
    margin: 0 25px;
  }


  /* CONTACT */

  .contactIcon {
    width: 40px;
    position: relative;
    margin-bottom: 20px;
    transform: translateX(-50%);
  }

  .contactText {
    display: block;
    text-align: center;
    margin-left: 0;
  }

  .contactBtn, .contactIcon {
    left: 50%;
  }


  /* PROJECT GALLERY */

  .projectGallery {
    margin-top: 40px;
  }


  /* DEFORMAGE */

  #deformageMockupSm {
    margin-bottom: 10px;
  }


  /* LIVING LIGHTS */

  #modelPic1, #modelPic2, #modelPic3 {
    width: 135%;
    margin-bottom: 5px;
  }

  #kioskPic1 {
    transform: scale(1, 1);
    margin-bottom: 30px;
  }

  #kioskPic2 {
    transform: scale(1, 1);
    margin-bottom: 20px;
  }


  /* MIRRORED MEMORIES */

  #mirrorAnim {
    width: 112.5%;
    margin: 0 0 25px 50%;
  }

  #fortuneAnim {
    width: 147.5%;
    margin: -10px 0 30px 50%;
  }
}




@media (max-width: 625px) {

  /* CONTACT */

  #kakaoText {
    color: white;
    margin: 20px 0 15px 0;
  }

  #kakaoTextBreak {
    display: block;
  }
}



@media (max-height: 625px) {

  /* INDEX */

  #introMiddle {
    top: 57%;
    animation: none;
    transform: translate(-50%, -50%) scale(0.7, 0.7);
  }


  /* ABOUT & CONTACT */

  #blueBox {
    width: 100vw;
    height: 80vh;
  }

  #whiteBox, #whiteBoxOverflowFix {
    display: none;
  }

  .aboutContactParticles {
    height: 80vh;
  }
}



@media (max-width: 600px) {

  /* GENERAL */

  h3 {
    font-size: 28px;
  }

  .indexFix {
    padding-top: 115px;
  }

  .endFix {
    padding-top: 130px;
  }

  .projectMainFix {
    padding-top: 362.5px;
  }


  /* INDEX */

  #introBG {
    height: 80vh !important;
  }

  #indexBody {
    margin-top: 80vh;
  }

  #introMiddle {
    top: 56%;
    left: calc(50% + 45px)
  }

  #introPic {
    margin: -5vh 0 0 calc(50% + 30px);
  }

  @keyframes introPicScale {
    0% { transform: translate(-50%) scale(-0.95, 0.95); }
    50% { transform: translate(-50%) scale(-1, 1); }
    100% { transform: translate(-50%) scale(-0.95, 0.95);  }
  }

  @keyframes introGraphicScale {
    0% { transform: translate(-50%, -50%) scale(0.76, 0.76); }
    50% { transform: translate(-50%, -50%) scale(0.81, 0.81); }
    100% { transform: translate(-50%, -50%) scale(0.76, 0.76); }
  }

  .introH1 {
    font-size: 31.5px;
  }

  .introTextDiagonalGroup, .introTextXGroup, .introTextCircleGroup {
    display: none;
  }


  /* PROJECT MAIN */

  #projectMainHeader {
    height: 265px;
  }

  .verticalDisappear4 {
    display: none;
  }

  .projectHeadVerticals {
    bottom: -5px;
    left: calc(100vw - 162.5px);
  }

  .projectHeadDiagonals {
    left: -230px;
  }

  .projectHeadDiagonals2 {
    left: -81px;
  }

  .projectHeadXs {
    left: 111.5px;
  }

  .projectRowTitle {
    margin: 0 0 100px 0;
  }


  /* PROJECT TABLE */

  .tableTitle {
    width: 70px;
  }


  /* PROJECT GALLERY */

  .projectGalleryWidthMain, .projectGalleryWidth {
    width: 82.5vw;
  }

  #projectMainColumn .captionAll {
    margin-left: -3.75vw !important;
  }

  .projectGalleryBtn {
    margin-top: 30px;
  }

  .rightGalleryBtn {
    margin-left: 85px;
  }

  .leftGalleryBtn {
    margin-left: -85px;
  }

  .projectDot, .projectDot2 {
    font-size: 9px;
    margin-top: 28px;
  }


  /* PROJECT BUTTONS */

  #infoBoxContent {
    padding-right: 30px;
  }


  /* LOYAL */

  #loyalTableAlt table {
    width: 190px;
  }

  .loyalLogoImg, .loyalMockupImg {
    width: 110%;
    margin-left: 50%;
    transform: translateX(-50%);
  }

  .loyalMockupImg {
    width: 105%;
  }


  /* DEFORMAGE */

  #deformageTableAlt table {
    width: 185px;
  }

  #deformageMockupSm {
    width: 110%;
  }

  #deformagePic1 {
    margin-top: 25px;
  }


  /* LIVING LIGHTS */

  #livingLightsTableAlt table {
    width: 190.5px;
  }


  /* FURN.UP */

  #furnUpTableAlt table {
    width: 195px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsTableAlt table {
    width: 204px;
  }

  #animationVid {
    width: 131%;
  }

  #neonSignImgWidth {
    width: 85vw;
  }


  /* CENTRAL LIBRARY */

  #libraryTableAlt table {
    width: 165px;
  }

  #library2 img {
    width: 110%;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesTableAlt table {
    width: 204px;
  }

  #mirrorAnim {
    width: 115%;
  }

  #fortuneAnim {
    width: 150%;
  }


  /* DATA REGULATIONS */

  #bannerFix {
    height: 150px;
    padding-left: 35px;
  }

  #bannerBtn {
    right: 50px;
  }
}



@media (max-height: 625px) and (max-width: 600px) {

  /* INDEX */

  #introMiddle {
    top: 57.5%;
    animation: none;
    transform: translate(-50%, -50%) scale(0.6, 0.6);
  }
}



@media (max-width: 575px) {

  /* GENERAL */

  .projectFixTop {
    padding-top: 125px;
  }


  /* NAV BAR */

  #logo {
    margin-left: 20px;
  }

  .sm-nav {
    margin-right: 50px;
  }

  .pages {
    margin: 32px 20px 0 0;
  }


  /* PROJECT MAIN */

  .projectRow h2 {
    font-size: 18px;
  }

  .projectRow img {
    width: auto;
    height: 120%;
  }


  /* PROJECT PAGES */

  .projectHeadBG {
    height: 450px;
  }

  .projectHeadTitle2 {
    top: 630px;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 530px;
    margin-top: 147.5px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 505px;
    margin-top: 137.5px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 430px;
    margin-top: 153px;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 470px;
    margin-top: 149.5px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 481.5px;
    margin-top: 142.5px;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 470px;
    margin-top: 149.5px;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 380px;
    margin-top: 159px;
  }
}



@media (max-height: 550px) and (min-width: 915px) {

  /* ABOUT & CONTACT */

  .blueBoxContent {
    margin-top: 75px;
  }

  .blueBoxContent a {
    display: none;
  }
}



@media (max-height: 550px) {

  /* CONTACT */

  #kakaoImage {
    margin-bottom: 30px;
  }

  #kakaoText {
    display: none;
  }
}



@media (max-width: 550px) {

  /* GENERAL */

  .sectionFix {
    padding-top: 50px;
  }

  .projectFix {
    padding-top: 105px;
  }

  .projectFixSmall {
    padding-top: 115px;
  }


  /* NAV BAR */

  .pages {
    margin: 32px 20px 0 0;
  }


  /* INDEX */

  .indexCard {
    height: 150px;
  }

  .indexCard h2 {
    font-size: 17px;
  }


  /* PROJECT GALLERY */

  .projectGalleryBtn {
    font-size: 19px;
    margin-top: 25px;
  }

  .projectDot, .projectDot2 {
    font-size: 8.5px;
    margin-top: 21.5px;
  }


  /* PROJECT BUTTONS */

  #info {
    bottom: 35px;
  }

  .simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    display: none;
  }


  /* LOYAL */

  .loyalMockupImg {
    width: 107.5%;
  }


  /* DEFORMAGE */

  #deformageMockupSm {
    margin-bottom: 20px;
  }


  /* LIVING LIGHTS */

  #modelPic1, #modelPic2, #modelPic3 {
    width: 145%;
  }
}



@media (max-height: 500px) {

  /* INDEX */

  #introMiddle {
    top: 59%;
    animation: none;
    transform: translate(-50%, -50%) scale(0.62, 0.62);
  }
}



@media (max-height: 500px) and (max-width: 915px) {

  /* ABOUT & CONTACT */

  .blueBoxContent {
    margin-top: 75px;
  }

  .blueBoxContent p {
    display: none;
  }

  .headerSub {
    margin-top: 10px;
  }
}



@media (min-height: 500px) and (max-width: 431px) {

  /* ABOUT */

  #aboutBlueBoxContent {
    margin-top: 20px;
  }
}



@media (min-height: 500px) and (max-width: 353px) {

  /* ABOUT */

  #contactBlueBoxContent {
    margin-top: 20px;
  }
}



@media (max-width: 500px) {

  /* GENERAL */

  h2 {
    font-size: 23px;
  }

  .projectFixBottom {
    padding-top: 80px;
  }

  .bigHeaderFix {
    padding-top: 165px;
  }

  .projectMainFix {
    padding-top: 340px;
  }


  /* INDEX */

  #anim {
    top: 43.5%;
  }

  .loader {
    margin-top: 32.5vh;
  }

  #introPic {
    margin-left: calc(50% + 15px);
  }

  @keyframes introPicScale {
    0% { transform: translate(-50%) scale(-0.9, 0.9); }
    50% { transform: translate(-50%) scale(-0.95, 0.95); }
    100% { transform: translate(-50%) scale(-0.9, 0.9);  }
  }

  @keyframes introGraphicScale {
    0% { transform: translate(-50%, -50%) scale(0.7, 0.7); }
    50% { transform: translate(-50%, -50%) scale(0.75, 0.75); }
    100% { transform: translate(-50%, -50%) scale(0.7, 0.7); }
  }

  .indexCard {
    height: 140px;
  }

  .indexCard h2 {
    font-size: 16.5px;
  }


  /* PROJECT MAIN */

  #projectMainHeader {
    height: 260px;
  }

  .verticalDisappear5 {
    display: none;
  }

  .projectHeadVerticals {
    bottom: -10px;
    left: calc(100vw - 132.5px);
  }

  .projectHeadDiagonals {
    left: -260px;
  }

  .projectHeadDiagonals2 {
    left: -111px;
  }

  .projectHeadXs {
    left: 81.5px;
  }


  /* PROJECT BUTTONS */

  @keyframes buttonScale {
    from {top: calc(50% + 148.5px);}
    to {top: calc(0% + 148.5px)}
  }

  @keyframes buttonDescale {
    from {top: calc(0% + 148.5px);}
    to {top:calc(50% + 148.5px)}
  }


  /* ABOUT & CONTACT */

  #blueBox {
    height: 70vh !important;
  }

  .typewriterAboutContact {
    margin: 7px 0 0 0;
  }


  /* ABOUT */

  .eduInfo {
    margin: 0;
  }

  #seoultech3 {
    display: none;
  }

  #seoultech4 {
    display: inline-block;
  }

  .awardImg {
    width: 65px;
  }

  #gdgsImg {
    width: 85px;
  }

  #polyuImg {
    width: 60px;
  }


  /* CONTACT */

  .contactIcon {
    width: 38px;
  }


  /* PROJECT PAGES */

  .projectHeadBG {
    height: 425px;
  }

  .projectHeadTitle2 {
    top: 605px;
  }

  .projectHeadShadowRev {
    height: 60px;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 508.5px;
    margin-top: 141.5px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 480px;
    margin-top: 132.5px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 402.5px;
    margin-top: 151px;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 445px;
    margin-top: 143.5px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 461.5px;
    margin-top: 137.5px;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 447.5px;
    margin-top: 147.5px;
  }

  #library2 {
    margin: 20px 0 20px calc(50%);
  }

  #library2 img {
    width: 115%;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 365px;
    margin-top: 149px;
  }

  #mirrorAnim {
    width: 120%;
    margin: -5px 0 30px 50%;
  }

  #fortuneAnim {
    width: 155%;
    margin: 0 0 25px 50%;
  }


  /* DATA REGULATIONS */

  #bannerFix {
    padding-left: 25px;
  }

  #bannerBtn {
    right: 40px;
  }
}



@media (max-width: 470px) {

  /* GENERAL */

  table, th, td {
    font-size: 14.5px;
    padding: 0;
  }

  .projectFixEnd {
    padding-top: 95px;
  }

  .indexFix {
    padding-top: 100px;
  }


  /* NAV BAR */

  .pages a {
    margin-left: 15px;
  }

  #navProj {
    margin: 0;
  }


  /*   INDEX  */

  .introTextDiagonalGroup {
    top: 115px;
    height: calc(100% - 220px);
  }

  .introH1 {
    font-size: 30px;
  }

  #indexBody .nanoFix:nth-of-type(3) {
    padding-top: 25px;
  }


  /* ABOUT */

  #gymbo1, #gymbo3 {
    display: none;
  }

  #gymbo2, #gymbo4 {
    display: inline-block;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 493.5px;
    margin-top: 148.5px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 470px;
    margin-top: 137.5px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 391.5px;
    margin-top: 157px;
  }

  #modelPic1, #modelPic2, #modelPic3 {
    width: 150%;
    margin-bottom: 0;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 435px;
    margin-top: 148.5px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 450px;
    margin-top: 143px;
  }

  #animationVid {
    width: 135%;
  }

  #neonSignImgWidth {
    width: 87.5vw;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 435px;
    margin-top: 153px;
  }

  #libraryTitle2-Head1, #libraryTitle1-Head1 {
    display: none;
  }

  #libraryTitle2-Head2, #libraryTitle1-Head2 {
    display: block;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 352.5px;
    margin-top: 155px;
  }
}



@media (max-height: 450px), (max-height: 500px) and (max-width: 600px) {

  /* INDEX */

  #introMiddle {
    top: 60%;
    animation: none;
    transform: translate(-50%, -50%) scale(0.55, 0.55);
  }
}



@media (max-width: 450px) {

  /* INDEX */

  .introH1 {
    font-size: 28px;
  }

  #indexBody .nanoFix:nth-of-type(3) {
    padding-top: 20px;
  }


  /* PROJECT MAIN */

  .projectRowTitle {
    margin: 0 0 85px 0;
  }

  .projectRow {
    height: 230px;
  }

  .projectRow h2 {
    font-size: 17px;
  }


  /* CENTRAL LIBRARY */

  #library2 {
    margin: 10px 0 10px calc(50%);
  }


  /* MIRRORED MEMORIES */

  #fortuneAnim {
    width: 165%;
    margin: -10px 0 25px 50%;
  }


  /* DATA REGULATIONS */

  #bannerFix {
    height: 122px;
    font-size: 13px;
    line-height: 22px;
  }
}


@media (max-width: 430px) {

  /* GENERAL */

  h1 {
    font-size: 25px;
    line-height: 30px;
  }

  .endFixSmall {
    padding-top: 50px;
  }

  .projectTableFix {
    padding-top: 75px;
  }

  .projectFix {
    padding-top: 95px;
  }

  .projectFixSmall {
    padding-top: 105px;
  }

  .projectFixTop {
    padding-top: 107.5px;
  }


  /* INDEX */

  #introPic {
    margin-left: calc(50% + 10px);
  }

  #introMiddle {
    left: calc(50% + 35px);
  }

  @keyframes introPicScale {
    0% { transform: translate(-50%) scale(-0.85, 0.85); }
    50% { transform: translate(-50%) scale(-0.9, 0.9); }
    100% { transform: translate(-50%) scale(-0.85, 0.85);  }
  }

  @keyframes introGraphicScale {
    0% { transform: translate(-50%, -50%) scale(0.65, 0.65); }
    50% { transform: translate(-50%, -50%) scale(0.7, 0.7); }
    100% { transform: translate(-50%, -50%) scale(0.65, 0.65); }
  }


  /* PROJECT MAIN */

  .verticalDisappear6 {
    display: none;
  }

  .projectHeadDiagonals {
    left: -270px;
  }

  .projectHeadDiagonals2 {
    left: -121px;
    width: 262.5px;
  }

  .projectHeadXs {
    left: 71.5px;
  }


  /* ABOUT */

  #polyu6, #thuas2 {
    display: none;
  }

  #polyu7, #thuas3 {
    display: inline-block;
  }


  /* CONTACT */

  #contactFooterData1 {
    display: none;
  }

  #contactFooterData2 {
    display: inline-block;
  }


  /* PROJECT PAGES */

  .projectHeadBG {
    height: 400px;
  }

  .projectHeadTitle2 {
    top: 565px;
  }


  /* PROJECT TABLE */

  .tableTitle {
    width: 60px;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 460px;
    margin-top: 139px;
  }

  #loyalTableAlt table {
    width: 180px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 432.5px;
    margin-top: 135px;
  }

  #deformageTableAlt table {
    width: 175px;
  }

  #deformageMockupSm {
    width: 112.5%;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 372.5px;
    margin-top: 144.5px;
  }

  #livingLightsTableAlt table {
    width: 180.5px;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 400px;
    margin-top: 144.5px;
  }

  #furnUpTableAlt table {
    width: 185px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 424px;
    margin-top: 134.5px;
  }

  #northernStreetLightsTableAlt table {
    width: 194px;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 407px;
    margin-top: 148.5px;
  }

  #libraryTableAlt table {
    width: 165px;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 331.5px;
    margin-top: 149px;
  }

  #mirroredMemoriesTableAlt table {
    width: 194px;
  }

  #mirrorAnim {
    width: 127.5%;
    margin: -5px 0 20px 50%;
  }
}



@media (max-width: 420px) {

  /* INDEX */

  .introH1 {
    font-size: 26.9px;
  }

  .introH2 {
    font-size: 18.5px;
  }
}



@media (max-width: 410px) {

  /* ABOUT */

  #apcict2_5 {
    display: none;
  }

  #apcict2_6 {
    display: inline-block;
  }
}



@media (max-width: 400px) {

  /* NAV BAR */

  h2 {
    font-size: 22px;
  }

  nav {
    font-size: 14px;
  }

  #logo {
    margin-left: 15px;
  }

  .pages {
    margin: 35px 17px 0 0;
  }


  /* INDEX */

  .introH1 {
    font-size: 35.5px;
    line-height: 1.15em;
    margin: 8px 0 13.5px 0;
  }

  .introH2 {
    font-size: 20.5px;
  }


  /* PROJECT MAIN */

  .projectRow {
    height: 225px;
  }

  #deformageCard .projectRowLeft {
    top: 58%;
  }

  #deformageCard .projectRowLine {
    top: 52%;
  }

  #deformageCard .projectRowRight {
    top: 36%;
  }


  /* ABOUT & CONTACT */

  .headerSub {
    margin: 10px 0 25px 0;
  }


  /* CONTACT */

  #contactHeaderBreak {
    display: none;
  }

  #kakaoImage {
    height: 225px;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 445px;
    margin-top: 145.5px;
  }

  .loyalLogoImg {
    width: 115%;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 417.5px;
    margin-top: 144px;
  }

  #deformageTitle2-Head1 {
    display: none;
  }

  #deformageTitle2-Head2 {
    display: block;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 355px;
    margin-top: 153.5px;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 372.5px;
    margin-top: 160px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 406px;
    margin-top: 144.5px;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 390px;
    margin-top: 157.25px;
  }

  #library2 {
    margin: 5px 0 0 calc(50%);
  }

  #library2 img {
    width: 117.5%;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 317.5px;
    margin-top: 157px;
  }

  #mirrorAnim {
    width: 135%;
    margin: -5px 0 12.5px 50%;
  }

  #fortuneAnim {
    width: 170%;
    margin: -10px 0 20px 50%;
  }


  /* DATA REGULATIONS */

  #bannerFix {
    padding-left: 20px;
  }

  #bannerBtn {
    right: 20px;
  }
}



@media (max-width: 380px) {

  /* GENERAL */

  h2 {
    line-height: 1.3em;
  }

  .projectFix {
    padding-top: 80px;
  }

  .projectFixSmall {
    padding-top: 90px;
  }

  .projectFixTop {
    padding-top: 110px;
  }

  .projectMainFix {
    padding-top: 325px;
  }


  /* INDEX */

  @keyframes introPicScale {
    0% { transform: translate(-50%) scale(-0.775, 0.775); }
    50% { transform: translate(-50%) scale(-0.825, 0.825); }
    100% { transform: translate(-50%) scale(-0.775, 0.775);  }
  }

  @keyframes introGraphicScale {
    0% { transform: translate(-50%, -50%) scale(0.6, 0.6); }
    50% { transform: translate(-50%, -50%) scale(0.65, 0.65); }
    100% { transform: translate(-50%, -50%) scale(0.6, 0.6); }
  }

  .introH1 {
    font-size: 34px;
  }

  .introH2 {
    font-size: 19.5px;
  }

  .indexCard {
    height: 130px;
  }


  /* PROJECT MAIN */

  #projectMainHeader {
    height: 250px;
  }

  .projectCircleGroup {
    top: -38.5px;
  }

  .verticalDisappear7 {
    display: none;
  }

  .projectHeadVerticals {
    left: calc(100vw - 102.5px);
  }

  .projectHeadDiagonals {
    left: -290px;
  }

  .projectHeadDiagonals2 {
    left: -141px;
    width: 262.5px;
  }

  .projectHeadXs {
    left: 51.5px;
  }

  .projectRow {
    height: 220px;
  }


  /* ABOUT & CONTACT */

  .typewriterAboutContact {
    margin: 3px 0 0 0;
  }


  /* PROJECT PAGES */

  .projectHeadBG {
    height: 385px;
  }

  .projectHeadTitle2 {
    top: 550px;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 425px;
    margin-top: 142.5px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 410px;
    margin-top: 140px;
  }

  #deformageMockupSm {
    width: 117.5%;
    margin-bottom: 10px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 337.5px;
    margin-top: 153.5px;
  }

  #modelPic1, #modelPic2, #modelPic3 {
    width: 157.5%;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 355px;
    margin-top: 157px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 395px;
    margin-top: 140px;
  }

  #animationVid {
    width: 140%;
  }

  #neonSigns {
    margin: -12.5px 0 0 50%;
  }

  #neonSignImgWidth {
    width: 88.5vw;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 375px;
    margin-top: 150px;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 300px;
    margin-top: 157.5px;
  }
}



@media (max-height: 375px) {

  /* INDEX */

  .introXGroup2, .introXGroup3, .introLeftLine, .introRightLine {
    display: none;
  }
}



@media (max-width: 350px) {

  /* GENERAL */

  .projectFixTop {
    padding-top: 92.5px;
  }


  /* NAV BAR */

  nav {
    font-size: 13px;
  }

  .pages {
    margin-top: 36px;
  }


  /* PROJECT PAGES */

  .projectHeadBG {
    height: 365px;
  }

  .projectHeadTitle2 {
    top: 515px;
  }


  /* LOYAL */

  #loyalHeadImg {
    width: 385px;
    margin-top: 145px;
  }


  /* DEFORMAGE */

  #deformageHeadImg {
    width: 374px;
    margin-top: 140px;
  }


  /* LIVING LIGHTS */

  #livingLightsHeadImg {
    width: 317.5px;
    margin-top: 147.5px;
  }


  /* FURN.UP */

  #furnUpHeadImg {
    width: 330px;
    margin-top: 150px;
  }


  /* NORTHERN STREET LIGHTS */

  #northernStreetLightsHeadImg {
    width: 365px;
    margin-top: 138.5px;
  }

  #northernStreetLightsTitle2-Head1, #northernStreetLightsTitle1-Head1 {
    display: none;
  }

  #northernStreetLightsTitle2-Head2, #northernStreetLightsTitle1-Head2 {
    display: block;
  }


  /* CENTRAL LIBRARY */

  #libraryHeadImg {
    width: 350px;
    margin-top: 148px;
  }


  /* MIRRORED MEMORIES */

  #mirroredMemoriesHeadImg {
    width: 275px;
    margin-top: 156.5px;
  }

  #fortuneAnim {
    margin: -10px 0 12.5px 50%;
  }


  /* DATA REGULATIONS */

  #bannerFix {
    height: 185px;
    padding-left: 0;
    padding-right: 0;
  }

  #bannerBtn {
    right: 50%;
    top: 67.5%;
    transform: translateX(50%);
  }
}



@media (max-width: 340px) {

  /* NAV BAR */

  .pages a {
    margin-left: 10px;
  }


  /* ABOUT */

  #vdsg2 {
    display: none;
  }

  #vdsg3 {
    display: inline-block;
  }
}
