body {
    font-family: "Helvetica", "Arial", sans-serif;
    margin: 0 auto;
    padding: 0 10px 25px;
    color: #444;

    display: grid;
    row-gap: 5px;
    grid-template-columns: auto;
    grid-template-rows: 60px auto auto;
    grid-template-areas:
        "topbar"
        "ct"
        "footer";
}

.topbar {
    grid-area: topbar;

    position: sticky;
    top: 0;
    z-index: 1000;
    background: white;

    display: flex;
    justify-content: space-between;
    align-items: flex-end;

    height: 60px;
}

header {
    margin: 0;
    font-size: 28px;
}

nav {
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 24px;
}

nav > a {
    margin-left: 20px;
}

footer {
    grid-area: footer;
    margin-top: 40px;
    padding: 20px 0;
    display: flex;
    justify-content: space-between;   /* left / right */
    align-items: center;
    width: 100%;
    box-sizing: border-box;
}

.menu {
    position: relative;
}

.menu summary {
    list-style: none;
    cursor: pointer;
}

.menu summary::-webkit-details-marker {
    display: none;
}

.menu ul {
    position: absolute;
    top: 100%;
    right: 0;

    margin: 0;
    padding: 10px;

    list-style: none;

    background: white;
    border: 1px solid #ccc;

    min-width: 160px;
    text-align: left;
}

.menu li {
    margin: 5px 0;
}

.menu a {
    display: block;
    margin-left: 0;
    text-align: left;
    white-space: nowrap;
}

button {
    background: none;
    border: 0;
    font-size: 24px; /* TODO: control this with 'nav' */
}

article {
    font-size: 22px;

    grid-area: ct;
    border-top: 2px solid gray;
}

a {
    color: black;
}

h1, h2, strong {
    color: #222;
}

h1 {
    font-size: 26px;
}
h2 {
    font-size: 23px;
}

/* @media screen and (/\*max-width: 430px*\/) { */
/*     body { */
/*         grid-template-columns: auto; */
/*         grid-template-rows: minmax(40px,auto) minmax(30px,auto) auto; */
/*         grid-template-areas: */
/*             "header" */
/*             "nav" */
/*             "ct" */
/*     } */

/*     header, nav { */
/*         justify-self: center; */
/*         text-align: center; */
/*     } */
/*     nav a { */
/*         margin: 0 10px; */
/*     } */
/* } */


/* ------------------- */

.left-right-container {
    display: flex;
    flex-direction: row;
    gap: 20px;
    padding: 20px;
    box-sizing: border-box;
}

.left-column {
    flex: 1; /* 1/3 of the space */
}

.right-column {
    flex: 2; /* 2/3 of the space */
}

.left-column img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px;
}

.photo-link {
    text-decoration: none;
}

/* Responsive behavior: stack columns vertically on small screens */
/* @media (max-width: 768px) { */
/*     .left-right-container { */
/*         flex-direction: column; */
/*     } */

/*     .left-column, */
/*     .right-column { */
/*         flex: none; */
/*         width: 100%; */
/*     } */
/* } */
