/* ==========================
   RESET & BODY SETUP
========================== */
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    font-family: "Helvetica", sans-serif;
    /* overflow: hidden;  <-- remove this line */
}

/* ==========================
   MAIN FLEX CONTAINER
========================== */
#container {
    display: flex;
    height: 100vh; /* full viewport height */
    overflow: hidden; /* prevent page scroll, allow internal scroll */
}

/* ==========================
   LEFT COLUMN (IMAGES / MAP)
========================== */
#left {
    width: 50%; /* adjust as needed */
    overflow-y: auto; /* scroll images if needed */
    padding: 10px;
    box-sizing: border-box;
   position: sticky;
}

/* ==========================
   RIGHT COLUMN (STORY / TEXT)
========================== */
#right {
    width: 50%; /* adjust as needed */
    overflow-y: auto; /* scroll text */
    padding: 20px;
    box-sizing: border-box;
}

/* ==========================
   SCROLLBAR STYLING
========================== */
#left::-webkit-scrollbar,
#right::-webkit-scrollbar {
    width: 8px;
}

#left::-webkit-scrollbar-thumb,
#right::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,0.2);
    border-radius: 4px;
}

/* ==========================
   CHAPTER CONTAINERS
========================== */
.chapter-container {
    margin: 40px 0;
    padding: 0;
    text-align: center;
}

/* ==========================
   HEADINGS
========================== */
h1 {
    font-size: 1.5em;
    margin-bottom: 10px;
}

h2 {
    font-size: 1.2em;
    margin: 20px 0 10px 0;
    font-weight: normal;
    text-align: center;
}

h3 {
    font-size: 1em;
    margin: 10px 0;
}

/* ==========================
   PARAGRAPHS & LISTS
========================== */
p {
    font-size: 11pt;
    line-height: 1.5em;
    margin: 10px 0;
    text-align: left;
}

ul {
    margin: 10px 20px;
    padding-left: 20px;
}

li {
    margin-bottom: 5px;
    font-size: 11pt;
}

/* ==========================
   IMAGES
========================== */
.chapter-container img {
    display: block;
    margin: 10px auto;
    max-width: 100%;
    height: auto;
}

/* Optional fixed height image container */
.img-container {
    width: 100%;
    height: auto;
    margin: 10px 0;
}

/* ==========================
   AUDIO (optional)
========================== */
.audio-container {
    width: 100%;
    height: 60px;
    margin-bottom: 10px;
}

/* ==========================
   SOURCES / CAPTIONS
========================== */
.source {
    font-size: 9pt;
    font-style: italic;
    color: gray;
}

a.source:visited {
    color: grey;
}

/* ==========================
   FOCUS EFFECTS (optional)
========================== */
.in-focus {
    opacity: 1.0;
}

.out-focus {
    opacity: 0.3;
}

/* ==========================
   LEAFLET STYLING
========================== */
.leaflet-control-attribution {
    visibility: hidden;
}

.leaflet-marker-icon {
    opacity: 0.75;
}

/* Active marker styling */
.marker-active {
    background-position: -72px 0 !important;
}

/* ==========================
   LOGO & HEADER (optional)
========================== */
#logo {
    height: 30px;
    line-height: 30px;
    text-align: center;
    padding: 10px;
}

#logo img {
    max-height: 100%;
    max-width: 100%;
    vertical-align: middle;
}

#header {
    padding: 5px 0;
    text-align: center;
    color: #333;
}


