body {
    margin: 60px auto 40px;
    max-width: 100%;
    font-family: "cartograph-cf", monospace;
    font-style: normal;   
    background-color: #f1ede0;
}

h1 {
    font-size: 2rem;
    font-weight: 700;
    font-style: italic;
}

a {
    color: #747474;
    text-decoration: none;
}

.textmarker-effect {
    background: linear-gradient(to bottom, #f1ede0 40%, #fca3bc68 50%, #fca3bc68 90%);
    padding-bottom: 5px;
    transition: all 0.5s;
}

.textmarker-effect:hover {
    color: #000000;
    cursor: pointer;
    background: linear-gradient(to bottom, #f1ede0 40%, #fca3bcbc 50%, #fca3bcbc 90%);
}


footer {
    text-align: center;
    font-weight: 200;
    margin-top: 30px;
}

.main-container {
    text-align: center;
    justify-content: space-between; /* Optional: add space between items */
    margin-bottom: 100px;
}

.main-container h1 {
    margin: 0 1rem;
}

#globe-container {
    margin: 0; /* Reset margin */
    padding: 0; /* Reset padding */
    justify-items: center;
}

#sidebar {
    justify-items: center;
    align-content: center;
    width: 400px; /* Set a fixed width for the sidebar */
}

#sidebar ul{
    text-align: center;
    width: 200px; /* Set a fixed width for the sidebar */
    font-size: 24px;
    padding: 5px;
}

#sidebar li {
    cursor: pointer;
    list-style-type: none;
    line-height: 2.5;
    padding-left: 0;
}

#country-list {
    display: inline-block;
}

#country-list li:hover {
    font-size: 28px;
    font-weight: 700;
    transition: 0.4s;
}

#scrolly {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

#scrolly>* {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

article {
    position: relative;
    padding: 0;
    max-width: 25rem;
}

#map {
    position: absolute; /* Keep map sticky */
    top: 0; /* Stick to the top of the container */
    left: 0;
    height: 100%; /* Full height of viewport */
    width: 100%; /* Full width */
    margin: 0;
    overflow: hidden; /* Prevent overflow */
}

figure {
    position: -webkit-sticky;
    position: sticky;
    width: 100%;
    margin: 0;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    background-color: #8a8a8a;
    z-index: 1;
}

figure p {
    text-align: right;
    padding: 1rem;
    position: absolute;
    top: 5%;
    right: 5%;
    /* -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); */
    font-size: 2rem;
    font-weight: 900;
    color: rgb(0, 0, 0);
    z-index: 1;
}

.step {
    margin: 10rem 1rem 3rem 1rem;
    background-color: #ffffff00;
    color: #bababa82;
    transition: background-color 0.5s;
}

.step:last-child {
    margin-bottom: 0;
}

.step.is-active {
    background-color: rgba(255, 255, 255, 0);
    color: #000000;
}

.step p {
    padding-bottom: 2rem;
    font-size: 1.2rem;
}

.step h3 {
    text-align: center;
    padding-top: 2rem;
    font-weight: 700;
    font-style: italic;

}

.step ul {
    list-style: none;
    line-height: 2;
}

.step li {
    margin-bottom: 1rem;
}

/* Media query for mobile (viewport width 768px or less) */
@media (max-width: 768px) {
    #scrolly {
        flex-direction: column; /* Stack items vertically */
    }

    #map {
        position: relative; /* Allow the map to flow with the document instead of being sticky */
        height: 50vh; /* Set a smaller height for the map on mobile */
        top: 0; /* Map sticks to the top of the window */
    }

    article {
        z-index: 0; /* Article is behind the map */
        max-width: 100%;
    }

    .step {
        position: relative;
        z-index: 0; /* Steps behind the map */
        padding-top: 8rem;
    }
}