main {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

}
/* HERO SECTION */
#ProjectHero {
    width: 100vw;
    height: 100vh;

    position: relative;
    background-color: #EFF2F6;
    overflow: hidden;
}

#ProjectHero > div{
    position: absolute;
    bottom: 12%;
    left: 7vw;
    color: #fff; 
    padding: 10px 10px 10px 0;
    
}


#projectHero > picture > img {
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* PROJECT DESCRIPTION SECTION */
#ProjectDescription {
    width: 100vw;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    position: relative;
    padding-top: 75px;
    color: var(--primary);
}

#ProjectDescription > p {
    width: 80%;
}

#ProjectDescription > h2{
    width: auto;
    text-align:center;
    margin-bottom: 50px;
    position: relative;
    top: 0;
    opacity: 0;
    transition: all 0.6s ease;
}

#ProjectDescription > h2.fadeInText {
    opacity: 1;
}

#ProjectDescription > h2::after {
    content: "";
    position: absolute;
    height: 2px;
    left: 0;
    bottom:-5px;
    width: 0;
    background-color: var(--primary);
    transition: all 0.6s ease;
}
#ProjectDescription > h2.underline:after {
    width: 100%;
}

#ProjectDescription  p > span,
.tiles span {
    font-family: "Raleway-Blod"
}

@media screen and (min-width:900px) {
    #ProjectDescription {
        width: 1030px;
    
        display: flex;
        align-items: flex-start;
        margin: 0 auto;
    }

    #ProjectDescription > p {
        width: 100%;
    }
    #ProjectDescription > h2{
        text-align:left;
    } 
}
@media screen and (min-width:850px) and (max-width:1200px) {
    #ProjectDescription {
        width: 650px;
    }
}



/* PROJECT RESEARCH SECTION */
.research {
    width: 100vw;
    display: grid;
    grid-template-columns: repeat(1, 330px);
    grid-template-rows: repeat(3, 330px);
    grid-template-areas: 
    "title"
    "pic1"
    "pic2";

    gap: 20px;
    justify-content: center;
    align-content: center;
    padding: 75px 0;
    margin: 0 auto;
}

@media screen and (min-width:820px) and (max-width:1200px) {
    .research {
        grid-template-columns: repeat(2, 330px);
        grid-template-rows: repeat(2, 330px);
        grid-template-areas: 
        "title pic1"
        "pic2 empty_1";
    }
}

@media screen and (min-width:1201px) {
    .research {
        grid-template-columns: repeat(3, 330px);
        grid-template-rows: 330px;
        grid-template-areas: 
        "title pic1 pic2";
    }
}

.tiles {
    color: var(--primary);
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 30px;
}

.tiles > img {
    display: block;
    width: 100%;
    height: 100%;
}

@media screen and (min-width:850px) {
    .tiles {
        align-items: flex-start;
        justify-content: flex-start;
    }
}

.reseachTitle::after {
    content: "";
    position: absolute;
    height: 2px;
    left: 0;
    bottom:-5px;
    width: 0%;
    background-color: var(--primary);
    transition: all 0.6s ease;
}
.reseachTitle.underline:after {
    width: 100%;
}
.reseachTitle {
    text-align: left;
    position: relative;
}


.tiles:nth-child(1){
    grid-area: title ;
}
.tiles:nth-child(2){
    grid-area: pic1 ;
}
.tiles:nth-child(3){
    grid-area: pic2 ;
}

.tiles {
    position: relative;
    
    top: 50px;
    opacity: 0;

    transition: all 0.6s ease;
    
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 30px;
    color: var(--primary);
    
}
@media screen and (min-width:820px) and (max-width:1200px) {
    .tiles{
        justify-content: flex-start;
    }
}

.tiles.fadeUpIn {
    opacity: 1;
    top: 0px;
}


/* USET TASK SECTION */
#tasks {
    width: 100vw;
    /* height: 300px; */
    height: auto;
    background-color: #EAEAEC;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: var(--primary);
    padding: 75px 0;
}
#tasks > h2{
    width: auto;
    text-align:center;
    position: relative;
    margin-bottom: 50px;
    transition: all 0.6s ease;
    opacity: 1;
} 

#tasks > h2::after {
    content: "";
    position: absolute;
    height: 2px;
    left: 0;
    bottom:-5px;
    width: 0;
    background-color: var(--primary);
    transition: all 0.6s ease;
}

#tasks > h2.underline:after {
    width: 100%;
}


#tasks > .taskTitle, 
#tasks > .taskDetail{
    box-sizing: border-box;
    width: 330px;
    
}
@media screen and (min-width:820px) and (max-width:1200px) {
    #tasks > .taskTitle, 
    #tasks > .taskDetail{
        box-sizing: border-box;
        width: 680px;
    }
}

@media screen and (min-width:1201px) {
    #tasks > .taskTitle, 
    #tasks > .taskDetail{
        box-sizing: border-box;
        width: 1030px;
    }
}
#tasks > .taskTitle {
    border-bottom: 1px solid var(--primary);
    display: flex;
    justify-content: space-between;
}

#tasks > .taskTitle > img {
    width: 40px;
    height: 40px;

    transition: all 0.4s ease;
    transform-origin: center;
}

#tasks > .taskTitle > img.rotate {
    transform: rotate(-90deg);
}

#tasks > .taskDetail {
    max-height: 0;
    overflow: hidden;

    line-height: 24px;

    transition: all 0.6s ease;

    margin: 10px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 30px;
}

#tasks > .taskDetail > picture {
    width: 100%;
    margin-bottom: 40px;
}


#tasks > .taskDetail > picture > img {
    width: 100%;
}
#tasks > .taskDetail > p {
    margin-top: 20px;
    align-self: flex-start;
    
}
/* when skill list is active */
#tasks > .taskTitle.active + .taskDetail {
    max-height: 1500px;
}


@media screen and (min-width:850px) {
    #tasks > .taskDetail > picture {
        width: 80%;
    }
}
@keyframes fade {
    0%{
        opacity: 0;
        transform: translateY(-10px);
    }
    100%{
        opacity: 1;
        transform: translateY(0);
    }
}


/* USER TESTING SECTION */
#testing {
    width: 100vw;
    display: grid;
    grid-template-columns: repeat(1, 330px);
    grid-template-rows: repeat(9, 330px) 120px repeat(2, 330px);
    grid-template-areas: 
    "title1"
    "improvement1"
    "improvement2"
    "styleGuide"
    "guidePic1"
    "guidePic1"
    "guidePic1"
    "guidePic1"
    "guidePic1"
    "guidePic1"
    "title2"
    "prototype1";

    gap: 20px;
    justify-content: center;
    align-content: center;
    padding: 75px 0;
}

@media screen and (min-width:820px) and (max-width:1200px) {
    #testing {
        grid-template-columns: repeat(2, 330px);
        grid-template-rows: repeat(6, 330px);
        grid-template-areas: 
        "title1 improvement1"
        "improvement2 empty_1"
        "empty_2 styleGuide"
        "guidePic1 guidePic1"
        "guidePic1 guidePic1"
        "title2 prototype1";    
    }
}

@media screen and (min-width:1201px) {
    #testing {
        grid-template-columns: repeat(3, 330px);
        grid-template-rows: repeat(5, 330px);
        grid-template-areas: 
        "title1 improvement1 empty_1"
        "empty_2 empty_3 improvement2"
        "styleGuide guidePic1 guidePic1"
        "empty_4 guidePic1 guidePic1"
        "title2 prototype1 empty_5";  
    }
}

.testingTiles{
    position: relative;
    
    top: 50px;
    opacity: 0;

    transition: all 0.6s ease;
    
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 30px;
    color: var(--primary);
}

.testingTiles.fadeUpIn {
    opacity: 1;
    top: 0px;
}
@media screen and (min-width:820px) and (max-width:1200px) {
    .testingTiles{        
        align-items: flex-start;
    }
    #testing > article:nth-child(3),
    #testing > article:nth-child(4),
    #testing > article:nth-child(5) {
        align-items: center;
    }
    
}
@media screen and (min-width:1201px) {
    
}

.testingTiles > img,
.testingTiles > a > img,
.testingTiles > picture,
.testingTiles > picture > img {
    display: block;
    width: 100%;
}
.testingTiles > div {
    width: 60%;
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    text-align: center;
}

.testingTiles > h2{
width: auto;
    text-align:center;
    position: relative;
    transition: all 0.6s ease;
    opacity: 0;
}

.testingTiles > h2::after{
    content: "";
    position: absolute;
    height: 2px;
    left: 0;
    bottom:-5px;
    width: 0;
    background-color: var(--primary);

    transition: all 0.6s ease;
}

.testingTiles > h2.fadeInText {
    opacity: 1;
}
.testingTiles > h2.underline:after {
    width: 100%;
}
.testingTiles > div > h3{
    position: relative;
}
.testingTiles > div > h3::after{
    content: "";
    position: absolute;
    height: 2px;
    left: 0;
    bottom:-5px;
    width: 0;
    opacity: 0;
    background-color: #fff;
    transition: all 0.6s ease;
}

.testingTiles > div > h3.underline:after {
    opacity: 1;
    width: 100%;
}




#testing article:nth-child(1){
    grid-area: title1 ;
}
#testing article:nth-child(2){
    grid-area: improvement1 ;
}
#testing article:nth-child(3){
    grid-area: improvement2 ;
}
#testing article:nth-child(4){
    grid-area: styleGuide ;
}
#testing article:nth-child(5){
    grid-area: guidePic1;
}
#testing article:nth-child(6){
    grid-area: title2;
}
#testing article:nth-child(7){
    grid-area: prototype1;
}

#testing article:nth-child(2),
#testing article:nth-child(3){
    background-color: var(--primary);
    color: #fff;
    align-items: center;
}


/* CONCLUSION SECTION */
#conclusion {
    width: 100vw;
    background-color: var(--primary);

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    padding: 50px 0;
}
#conclusion > div {
    width: 80%;
    color: #fff;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 30px;
}
#conclusion a {
    text-decoration: none;
    color: #fff;
}

#conclusionHeading{
    width: auto;
    text-align:center;
    position: relative;
    transition: all 0.6s ease;
    opacity: 0;
}

#conclusionHeading::after{
    content: "";
    position: absolute;
    height: 2px;
    left: 0;
    bottom:-5px;
    width: 0;
    background-color: #fff;

    transition: all 0.6s ease;
}

#conclusionHeading.fadeInText {
    opacity: 1;
}
#conclusionHeading.underline:after {
    width: 100%;
}


@media screen and (min-width:900px) {
    #conclusion > div {
        width: 980px;
        
        align-items: flex-start;
        justify-content: center;
    }
    #conclusion  p {
        width: 100%;
    }
    #conclusion  h2{
        text-align:left;
    } 
}
@media screen and (min-width:850px) and (max-width:1200px) {
    #conclusion > div {
        width: 650px;
    }
}



/* enlarged persona image */
#enlarged {
    width: 100vw;
    height: 100vh;
    background-color: var(--primaryOpec);

    position: fixed;
    top: 0;
    left: 0;

    display: none;
    justify-content: center;
    align-items: center;

    opacity: 0;
    transition: all 0.6s ease;
}

#enlarged > picture {
    height: 68%;

    opacity: 0;
    transition: all 0.6s ease;
}

#enlarged > picture > img {
    height: 100%;
}


#enlarged.appear,
#enlarged > picture.appear{
    opacity: 1;
}

body.stop-scrolling {
    height: 100%;
    overflow: hidden;
}


#persona {
    cursor: pointer;
}