body {
    margin: 0;
}

.row {
    display: flex;
    max-width: 130vh;
    margin: auto;
}

/* Responsive layout - one column */
.column {
    flex: 100%;
    max-width: 100%;
    padding: 0 10px;
}

.column.full-width {
    flex: 100%;
    max-width: 100%;
}

@media screen and (min-width: 600px) {
    .column {
        flex: 50%;
        max-width: 50%;
        padding: 0 10px;
    }

    #col1:not(.full-width) {
        padding-right: 5px;
    }
    #col2 {
        padding-left: 5px;
    }
}

.column img, .row img {
    width: 100%;
    height: auto;
    padding-top: 10px;
}

h1 {
    display: inline-block;
    font-family: "Helvetica";
    font-weight: 100;
    font-size: 2em;
    padding: 1em;
}

@media screen and (max-width: 600px) {
    h1 {
        padding: 0.5em;
        padding-bottom: 0.25em;
    }
}

#fullover {
    /* (A1) COVER ENTIRE WINDOW */
    position: fixed;
    top: 0; left: 0; z-index: 999;
    width: 100vw; height: 100vh;

    /* (A2) BACKGROUND */
    background: rgb(255, 255, 255, 0.7);
    backdrop-filter: blur(10px);

    /* (A3) CENTER CONTENT */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    /* (A4) HIDE OVERLAY BY DEFAULT */
    opacity: 0; visibility: hidden;
    transition: opacity 0.5s;

    /* show that clicking white space will zoomout */
    cursor: zoom-out;
}

/* (B) SHOW OVERLAY */
#fullover.show {
    opacity: 1; visibility: visible;
}

#fullover > img {
    max-width: 95%;
    max-height: 90%;
    width: auto;
    height: auto;
    cursor: default;
}

#fullover > p {
    font-family: 'Courier New', monospace;
    font-weight: 100;
    max-height: 9%;
    margin: 0.5em;
}

.fullover-icon {
    position: absolute;
    display:flex;
    padding: 4px;
    cursor: default;
    max-width: 2.5%;
}

.x-out {
    right: 2%;
    top: 2%;
    text-align: right;
}
.arrow {
    top: 50%;
    text-align: center;
}
.arrow-left {
    left: 0.2%;
}
.arrow-right {
    right: 0.2%;
}

@media screen and (max-width: 600px) {
    .arrow {
        display: none;
    }
}

.navbar {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: table;
    width: 100%;
    border: #e7e7e7;
    background-color: #f3f3f3;
}

.navbar li {
    float: left;
    font-family: "Helvetica";
    font-weight: 100;
}

.navbar a, .navbar-icon {
    display: inline-block;
    color: black;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}

.navbar-icon {
    padding-top: 0;
}

li.dropdown, li.subdropdown {
    display: inline-block;
}

.dropdown-content, .subdropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
}

.dropdown-content a, .subdropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    text-align: left;
}


@media screen and (min-width: 600px) {
    .navbar-icon {
        display: none;
    }
}

@media screen and (min-width: 600px) and (pointer: fine) {
    .dropdown:hover .dropdown-content, .subdropdown:hover + .subdropdown-content, .subdropdown-content:hover {
        display: block;
    }
    .navbar a:hover,
    .dropdown:hover .dropbtn,
    .subdropdown:hover .subdropdown,
    .subdropdown:has(+ div:hover) {
        background-color: #333333;
        color: white;
    }

    .dropdown-content .subdropdown-content {
        position: absolute;
        left: 100%;
        top: 0;
    }
    .dropdown-content a:hover,.subdropdown-content a:hover{
        background-color: #f1f1f1;
        color: black;
    }
}

@media screen and (min-width: 600px) and (pointer: coarse) {
    .dropdown.active .dropdown-content, .subdropdown.active + .subdropdown-content {
        display: block;
    }
    .dropdown.active .dropbtn, .subdropdown.active {
        background-color: #333333;
        color: white;
    }
    .dropdown-content .subdropdown-content {
        position: absolute;
        left: 100%;
        top: 0;
    }
}

.navbar .icon {
    display: none;
}

/* When the screen is less than 600 pixels wide, hide all links. Show the link that contains should open and close the navbar (.icon) */
@media screen and (max-width: 600px) {
    .navbar li {
        display: none;
    }
    .navbar li.icon {
        float: right;
        display: inline-block;
    }
}

/* The "responsive" class is added to the navbar with JavaScript when the user clicks on the icon. This class makes the navbar look good on small screens (display the links vertically instead of horizontally) */
@media screen and (max-width: 600px) {
    .navbar.responsive {
        position: relative;
    }
    .navbar.responsive li.icon {
        position: absolute;
        right: 0;
        top: 0;
    }
    a.navbar-icon {
        position: absolute;
        right: 0;
    }
    .navbar.responsive li {
        float: none;
        display: block;
        text-align: left;
    }
    .navbar a {
        float: none;
        display: block;
        text-align: left;
        width: 100%;
    }
    .dropdown.active .dropdown-content, .subdropdown.active + .subdropdown-content {
        float: none;
        display: block;
        width: 100%;
    }
    .dropdown.active .dropbtn, .subdropdown.active  {
        background-color: #333333;
        color: white;
    }
}
