@font-face {
    font-family: assistant;
    src: url("fonts/Assistant-Regular.ttf");
}
@font-face {
    font-family: assistant;
    src: url("fonts/Assistant-SemiBold.ttf");
    font-weight: 600;
}
@font-face {
    font-family: assistant;
    src: url("fonts/Assistant-Bold.ttf");
    font-weight: bold;
}
  
* {
    direction: rtl;
    text-align: start;
    font-family: assistant;
    user-select: none;
}

html, body {
    height: 100%;
    margin: 0;
    scroll-behavior: smooth;
}

body {
    overflow: hidden;
    position: fixed;
    background: url('media/bg.png') center top no-repeat fixed;
    background-size: cover;
    color: rgb(63, 58, 58);
}

/* /////////////////////////////////////////////////////////////////////////////////////////////////// */

#nav {
    position: fixed;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100vw;
    top: 0;
    z-index: 1030;
    padding: 0 0 0 1rem;
    background-color: #f4c330;
    box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.5);
    font-size: 1.5rem;
    font-weight: 600;
    color: whitesmoke;
    text-shadow: 0.1rem 0.1rem 0.2rem rgba(0, 0, 0, 0.5);
}

#logo {
    height: 3.5rem;
    margin: 0.5rem;
    filter: sepia(25%);
}

#logo:hover {
    animation: rubberBand 0.5s ease-in-out;
}

#chapter-ttl {
    display: inline-block;
    vertical-align: middle;
}

#menu-close {
    display: none;
    position: absolute;
    width: 100vw;
    height: 100vh;
    z-index: 1030;
    background-color: rgba(255, 255, 255, 0);
}

#menu-btn {
    height: 2.8rem;
    width: 2.8rem;
    vertical-align: middle;
    background-color: #303030;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.6%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.5' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    background-size: 75% 75%;
    background-position: center center;
    border-radius: 0.25rem;
    transition: 0.4s ease-in-out;
}

.active {
    background-color: #1b1b1b !important;
}

#content {
    max-height: 0;
    overflow: hidden;
    position: absolute;
    top: 4.5rem;
    left: 1rem;
    transition: 0.4s ease-in-out;
}

#menu {
    padding: 0.5rem 1rem;
    background-color: rgba(38, 60, 62, 0.8);
    box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.5);
    cursor: pointer;
}

.menu-active {
    background-color: rgba(15, 23, 24, 0.8);
}

.menu-chapter-ttl {
    border-top: 0.05rem solid whitesmoke;
    border-bottom: 0.05rem solid whitesmoke;
    font-size: 1.2rem;
    transition: 0.4s ease-in-out;
}

.menu-chapter-sub-ttl {
    padding: 0 1rem;
    font-size: 1rem;
    font-weight: 400;
    transition: 0.4s ease-in-out;
}

/* /////////////////////////////////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////////////////////////////////// */

.slide {
    width: 100vw;
    padding-top: 4.5rem;
    height: inherit;
    display: none;
}

.intro {
    width: 75vw;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.25);
    color: whitesmoke;
    text-shadow: 0.1rem 0.1rem 0.2rem rgba(0, 0, 0, 0.5);
}

.centered-txt {
    display: inline-block;
    width: 100%;
    text-align: center;
}

.first-p {
    margin: 1rem 1rem;
    color: whitesmoke;
    animation-duration: 0.75s;
}

.content-div {
    background-color: rgba(255, 255, 255, 0.25);
    color: whitesmoke;
    text-align: center;
    text-shadow: 0.1rem 0.1rem 0.2rem rgba(0, 0, 0, 0.5);
}

.img-div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
}

.content-img {
    width: 70vw;
    height: 70vw;
    margin-bottom: 4rem;
}

.mov-btns {
    padding: 1rem;
    display: flex;
    justify-content: flex-end;
    font-size: 1.2rem;
    z-index: 1030;
}

.prv-btn {
    padding: 0.25rem 0.5rem;
    background-color: rgb(63, 58, 58);
    border-radius: 0.25rem;
}

.nxt-btn {
    padding: 0.25rem 0.5rem;
    background-color: rgb(63, 58, 58);
    border-radius: 0.25rem;
}

/* /////////////////////////////////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////////////////////////////////// */

#slide0 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.intro {
    animation: bounceInDown 1s;
}

/* 1 ///////////////////////////////////////////////////////////////////////////////////////////////// */

#content-img1 {
    position: absolute;
    top: 0;
}

.content-table {
    width: 70vw;
    height: 70vw;
    z-index: 1020;
}

.content-table > tbody > tr > td {
    width: 17.5vw;
    height: 17.5vw;
    border: 0.15rem solid rgb(26, 57, 122);
}

.coords {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#coords1 {
    animation: pulse 0.5s;
    animation-iteration-count: 2;
    animation-delay: 1s;
}

.ver-coord {
    height: 74vw;
    display: inline-flex;
    flex-direction: column;
    justify-content: space-between;
    margin-right: 0.5rem;
    margin-top: -2vw;
}

.hor-coord {
    width: 74vw;
    display: inline-flex;
    justify-content: space-between;
    margin-top: -0.25rem;
    margin-right: -8vw;
}

/* 2 ///////////////////////////////////////////////////////////////////////////////////////////////// */

.first-ttl {
    font-weight: 600;
}

#first-ttl2 {
    animation-delay: 0s;
}

#first-p2 {
    animation-delay: 0.5s;
}

#content-img2 {
    position: absolute;
    top: 0;
}

.dot {
    position: relative;
    height: 3vw;
    width: 3vw;
    display: inline-block;
    background-color: #962020;
    border-radius: 1.5vw;
}

#dot2 {
    right: -3vw;
}

.tap {
    position: relative;
}

#tap2 {
    opacity: 0;
    width: 10vw;
    transform: rotateZ(300deg);
    top: -1.5vw;
    right: -2.5vw;
    animation: tapThat 1.2s ease-in-out infinite;
    animation-delay: 1.75s;
}

@keyframes tapThat {
    0% { top: -1.5vw; transform: rotateZ(300deg); }
    50% { top: 0vh; transform: rotateZ(295deg); }
    100% { top: -1.5vw; transform: rotateZ(300deg); }
}

.dot-coords {
    position: relative;
    border-top: 0.15rem dashed rgb(63, 58, 58);
    border-right: 0.15rem dashed rgb(63, 58, 58);
}

#dot-coords2 {
    display: none;
    height: 9vw;
    width: 7.3vw;
    float: left;
    top: -13.7vw;
    z-index: -1;
}

#circles2 {
    display: none;
    position: relative;
    width: 8vw;
    top: 8.75vw;
    right: -4.5vw;
}

#first-ttl2-a {
    display: none;
    animation-delay: 2.5s;
}

#first-p2-a {
    display: none;
    animation-delay: 3s;
}

#tap2-a {
    display: none;
    width: 10vw;
    transform: rotateZ(300deg);
    margin-top: 3.9vw;
    top: -1.5vw;
    right: -4vw;
    animation: tapThat 1.2s ease-in-out infinite;
    animation-delay: 0.5s;
}

/* 3 ///////////////////////////////////////////////////////////////////////////////////////////////// */

#content-img3 {
    position: absolute;
    top: 0;
}

#first-ttl3 {
    animation-delay: 2s;
}

#first-p3 {
    animation-delay: 2.5s;
}

#content-table3 > tbody > tr:nth-of-type(2) > td:nth-of-type(2) {
    text-align: center;
}

.km-txt {
    display: none;
    position: relative;
    font-size: 0.9rem;
    font-weight: 600;
    color: #962020;
    text-shadow: none;
}

#km-txt-x {
    top: -6.5vw;
}

#tap3 {
    display: none;
    width: 10vw;
    transform: rotateZ(300deg);
    top: 11vw;
    right: 3vw;
    animation: tapThat3 1.2s ease-in-out infinite;
    animation-delay: 1s;
}

@keyframes tapThat3 {
    0% { top: 11vw; transform: rotateZ(300deg); }
    50% { top: 12.5vw; transform: rotateZ(295deg); }
    100% { top: 11vw; transform: rotateZ(300deg); }
}

#hor-coord3 > span:nth-of-type(4) {
    z-index: 1030;
}

#mov-btns3 {
    z-index: 1029;
}

/* 4 ///////////////////////////////////////////////////////////////////////////////////////////////// */

#content-img4 {
    position: absolute;
    top: 0;
}

#coords4 {
    width: 80vw;
}

#img-div4 {
    align-items: center;
}

#content-table4 {
    display: inline-flex;
}

#first-ttl4 {
    animation-delay: 0s;
}

#first-p4 {
    animation-delay: 0.5s;
}

#ver-coord4, #hor-coord4 {
    animation: pulse 0.75s;
    animation-iteration-count: 2;
    animation-delay: 4s;
}

#north4 {
    position: relative;
    top: -45vw;
    left: -3vw;
    display: inline-block;
    width: 5vw;
    animation: pulse 0.75s;
    animation-iteration-count: 2;
    animation-delay: 4s;
}

/* 5 ///////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p5 {
    animation-delay: 0.5s;
}

#first-ul5 {
    font-size: 0.9rem;
    animation-delay: 0.75s;
}

#content-img5 {
    width: unset;
    height: 75%;
    margin-top: 1rem;
    box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.5);
}

/* 6 ///////////////////////////////////////////////////////////////////////////////////////////////// */

.second-table {
    width: 100%;
}

#second-table6 {
    animation-delay: 0.5s;
}

.second-table > tbody > tr > td  {
    padding: 0.5rem;
    border: 0.05rem solid whitesmoke;
    border-top: none;
    text-align: center;
}

.second-table > tbody > tr > td:first-of-type {
    border-right: none;
}

.second-table > tbody > tr > td:last-of-type {
    border-left: none;
}

#second-p6 {
    display: none;
    margin: 1rem 1rem;
}

#content-img6 {
    display: none;
    width: unset;
    max-height: 37vh;
    box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.8);
}

/* 7 ///////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p7 {
    animation-delay: 0.5s;
}

#content-img7 {
    width: unset;
    height: 40vh;
    margin-top: 1.5rem;
    animation-delay: 1.5s;
}

/* 8 ///////////////////////////////////////////////////////////////////////////////////////////////// */

#second-table8 > tbody > tr > td  {
    font-size: 1.1rem;
}

#second-p8 {
    display: none;
    margin: 1rem 1rem 0.5rem;
}

#content-img8 {
    display: none;
    width: unset;
    height: 35vh;
    margin-top: 1rem;
}

/* /////////////////////////////////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////////////////////////////////// */

#slide9 {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 10 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p10-a {
    display: none;
    font-size: 1.1rem;
}

#content-div10 {
    background-color: unset;
}

#content-img10 {
    width: 75vw;
    height: 96.3vw;
    content: url('media1/coordinateMeter.png');
    animation-delay: 0.85s;
}

#content-img10-a {
    display: none;
    width: 75vw;
    height: 96.3vw;
    content: url('media1/coordinateMeterDitailed.png');
}

#nxt-btn10 {
    display: none;
}

/* 11 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-ttl11 {
    animation-delay: 2.5s;
}

#first-p11 {
    animation-delay: 3s;
}

#content-img11 {
    position: absolute;
    top: 0;
}

#dot11 {
    right: 14vw;
}

#circles11 {
    display: none;
    position: relative;
    width: 7vw;
    top: 11.5vw;
    right: -4vw;
}

#dot-coords11 {
    display: none;
    height: 11vw;
    width: 6.75vw;
    float: left;
    top: -17.5vw;
    z-index: -1;
}

#nxt-btn11 {
    display: none;
}

/* 12 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p12 {
    animation-delay: 0.5s;
}

#content-img12 {
    position: absolute;
    top: 0;
}

#dot-square12 {
    background-color: #9620203f;
}

#dot12 {
    right: 14vw;
}

#dot-coords12 {
    display: none;
    height: 11vw;
    width: 6.75vw;
    float: left;
    top: -17.5vw;
    z-index: -1;
}

/* 13 //////////////////////////////////////////////////////////////////////////////////////////////// */

#content-img13 {
    position: absolute;
}

.pop-div {
    display: none;
    position: absolute;
    padding: 0.5rem;
    background-color: #4F9E9E;
    width: 100%;
    text-align: center;
    z-index: 1029;
    box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.8);
}

#pop-div13 {
    margin-top: 2rem;
    text-decoration: none;
}

#tap13 {
    opacity: 0;
    width: 10vw;
    transform: rotateZ(300deg);
    top: 21vw;
    right: -5.5vw;
    animation: tapThat13 1.2s ease-in-out infinite;
    animation-delay: 1.25s;
}

@keyframes tapThat13 {
    0% { top: 21vw; transform: rotateZ(300deg); }
    50% { top: 22.5vw; transform: rotateZ(295deg); }
    100% { top: 21vw; transform: rotateZ(300deg); }
}

#dot13 {
    right: 5.25vw;
}

#dot-coords13 {
    float: left;
    display: none;
    height: 11vw;
    width: 15.75vw;
    top: -17.5vw;
    z-index: -1;
    border-right: 0.2rem dashed rgb(63, 58, 58);
    border-top: 0.2rem dashed rgb(63, 58, 58);
}

.dot-coord-num {
    display: none;
    position: relative;
    color: rgb(63, 58, 58);
    text-shadow: none;
    font-weight: 700;
}

#dot-coord-hor {
    right: 1vw;
}

#dot-coord-ver {
    top: -9vw;
    right: 27vw;
}

.coordinate-meter {
    opacity: 0.65;
    z-index: 1027;
}

#coordinate-meter13 {
    display: none;
    position: absolute;
    width: 25vw;
    transition: transform 1s ease-in-out;
}

/* 14 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p14 {
    animation-delay: 0.5s;
}

#coords14 {
    margin-bottom: 5rem;
}

#content-img14 {
    position: absolute;
}

#dot-square14 {
    position: relative;
}

#dot14 {
    position: absolute;
    background-color: #132d8e;
    right: 12.2vw;
    top: 14.5vw;
}

#coordinate-meter14 {
    position: absolute;
    width: 25vw;
    transition: transform 1s ease-in-out;
}

#input-group14 {
    position: fixed;
    direction: ltr;
    width: 80vw;
    bottom: 4.5rem;
    z-index: 1030;
}
#nxt-btn14 {
    display: none;
}

#dot14-a {
    background-color: #962020;
}

#pop-div14 {
    margin-top: 2rem;
    width: 100vw;
    font-size: 1.5rem;
}

#pop-div14 > b {
    font-size: 1.2rem;
}

/* 15 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p15 {
    animation-delay: 0.5s;
}

#content-img15 {
    width: 100vw;
    height: 85.8vw;
    animation-delay: 1.5s;
}

/* 16 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p16 {
    animation-delay: 0.5s;
}

#content-img16 {
    width: unset;
    height: 80%;
    margin-bottom: 2rem;
}

/* 17 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p17 {
    animation-delay: 0.5s;
}

#coords17 {
    position: relative;
}

#content-img17 {
    position: absolute;
}

#content-table17 {
    z-index: 1028;
}

#soldier-square17 {
    text-align: center;
}

#dot17 {
    position: relative;
    right: 12.5vw;
    top: -4.5vw;
}

.soldier {
    width: 15vw;
    position: relative;
}

#soldier17 {
    top: 5vw;
    transform: rotate(330deg);
}

#coordinate-meter17 {
    position: absolute;
    width: 80vw;
    opacity: 0.7 !important;
    top: -11vw;
    left: 24vw;
    animation-delay: 1s;
    animation-duration: 2s;
}

#string17 {
    opacity: 0;
    position: absolute;
    height: 80vw;
    z-index: 1027;
    top: 10vw;
    left: 62.5vw;
    animation: stringRotate17 1.5s 1.5s ease-in-out forwards;
}

@keyframes stringRotate17 {
    from { opacity: 1; }
    to { opacity: 1; transform: rotate(320deg); }
}

/* 18 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p18 {
    animation-delay: 0.5s;
}

.bold {
    font-weight: 600;
    animation-delay: 0.75s;
}

#coords18 {
    position: relative;
}

#content-img18 {
    position: absolute;
}

#content-table18 {
    z-index: 1028;
}

#soldier-square18 {
    text-align: center;
}

#dot18 {
    position: relative;
    right: 12.5vw;
    top: -4.5vw;
}

#soldier18 {
    top: 5vw;
    transform: rotate(330deg);
}

#coordinate-meter18 {
    position: absolute;
    width: 80vw;
    opacity: 0.7 !important;
    top: -11vw;
    left: 24vw;
    animation-delay: 1s;
    animation-duration: 2s;
}

#string18 {
    opacity: 0;
    position: absolute;
    height: 80vw;
    z-index: 1028;
    top: 10vw;
    left: 62.5vw;
    animation: stringRotate18 1.5s 1.5s ease-in-out forwards;
}

@keyframes stringRotate18 {
    from { opacity: 1; }
    to { opacity: 1; transform: rotate(320deg); }
}

/* 19 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-ttl19 {
    margin: 1rem 0.5rem;
}

#first-p19 {
    margin: 0.5rem;
    animation-delay: 0.5s;
}

#coords19 {
    position: relative;
}

#content-img19 {
    position: absolute;
}

#content-table19 {
    z-index: 1028;
}

#soldier-square19 {
    text-align: center;
}

#dot19 {
    position: relative;
    right: 12.5vw;
    top: -4.5vw;
}

#soldier19 {
    top: 5vw;
    transform: rotate(330deg);
}

#coordinate-meter19 {
    position: absolute;
    width: 80vw;
    opacity: 0.7 !important;
    top: -20vw;
    left: 1vw;
    animation-delay: 1s;
    animation-duration: 2s;
}

#string19 {
    opacity: 0;
    position: absolute;
    height: 80vw;
    z-index: 1028;
    top: -18vw;
    left: 39.25vw;
    animation: stringRotate19 1s 1.5s ease-in-out forwards;
}

@keyframes stringRotate19 {
    from { opacity: 1; }
    to { opacity: 1; transform: rotate(140deg); }
}

/* 20 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p20 {
    animation-delay: 0.5s;
}

#first-p20-a {
    display: none;
    animation-delay: 0.5s;
}

#content-img20 {
    width: unset;
    height: 80%;
    margin-bottom: 2rem;
    box-shadow: 0 0 1rem rgba(0, 0, 0, 0.6);
}

#content-img20-txt {
    display: none;
    position: absolute;
}

/* 21 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p21 {
    animation-delay: 0.5s;
}

#content-img21 {
    width: 100vw;
    height: 70vw;
    filter: opacity(0.85) brightness(1.1);
}

#compass21 {
    position: absolute;
    width: 30vw;
    height: 30.51vw;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0.5rem 1.5rem 0 0;
    z-index: 1025;
    animation-delay: 2s;
}

#compass-body21 {
    position: absolute;
    width: inherit;
    filter: hue-rotate(-80deg) saturate(1.5);
    animation: needleRotate21 1s 3.5s forwards;
}

#compass-needle21 {
    margin-top: -0.5vw;
    height: 19vw;
    transform: rotate(120deg);
    z-index: -1;
}

@keyframes needleRotate21 {
    from { }
    to { transform: rotate(-60deg); }
}

#map21 {
    position: absolute;
    width: 40vw;
    z-index: 1024;
    margin-top: 2rem;
    animation: needleRotate21 1s 4.5s forwards;
    bottom: 6rem;
}

/* 22 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p22 {
    animation-delay: 0.5s;
}

#content-img22 {
    position: absolute;
}

#coordinate-meter22 {
    position: relative;
    width: 115vw;
    top: -53vw;
    left: 144vw;
    transform: rotate(67.7deg);
    animation-delay: 1.5s;
}

#content-table22 {
    z-index: 1028;
}

#dot22 {
    right: 5vw;
    top: 2vw;
}

#dot22-a {
    right: 7vw;
    top: -2vw;
}

#dot22-b {
    position: absolute;
}

/* 23 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p23 {
    animation-delay: 0.5s;
}

#content-img23 {
    width: unset;
    height: 80%;
    margin-bottom: 2rem;
}

/* 24 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p24 {
    animation-delay: 0.5s;
}

#content-img24 {
    width: unset;
    height: 80%;
    margin-bottom: 2rem;
}

/* /////////////////////////////////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////////////////////////////////// */

#slide25 {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 26 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p26 {
    animation-delay: 0.5s;
}

#content-img26 {
    width: unset;
    height: 75%;
    margin-bottom: 2rem;
}

/* 28//////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p27 {
    animation-delay: 0.5s;
}

#content-img27 {
    width: unset;
    height: 75%;
    margin-bottom: 2rem;
}

/* 28 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p28 {
    animation-delay: 0.5s;
}

#content-img28 {
    width: unset;
    height: 75%;
    margin-bottom: 2rem;
}

/* 29 //////////////////////////////////////////////////////////////////////////////////////////////// */

#first-p29 {
    animation-delay: 0.5s;
}

#content-img29 {
    width: unset;
    height: 75%;
    margin-bottom: 2rem;
}

/* 30 //////////////////////////////////////////////////////////////////////////////////////////////// */

#slide30 {
    display: flex;
    justify-content: center;
    align-items: center;
}


.end-episode {
    width: 75vw;
    padding: 4rem 1rem;
    background-color: rgba(255, 255, 255, 0.25);
    color: whitesmoke;
    text-shadow: 0.1rem 0.1rem 0.2rem rgba(0, 0, 0, 0.5);
    animation: bounceInDown 1s;
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
}