@charset "utf-8";
/* =========================================================
   main.css – responsive layout with separate desktop & mobile menus
   ========================================================= */

/* -------------------- Base -------------------- */
body {
  font-family: "Lato", sans-serif;
  margin: 0;
  padding: 0;
}

/* Visibility helpers: allow two copies of the menu in the HTML and
   show only the one appropriate for the current viewport              */
.desktop-only { display: block; }
.mobile-only  { display: none; }

/* -------------------- Desktop Sidebar -------------------- */
.sidenav {
  height: 100%;
  width: 250px;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fef5e7;
  border-right: 2px solid #3c220c;
  overflow-x: hidden;
  padding-top: 20px;
  z-index: 1;
}

.sidenav a {
  display: block;
  padding: 6px 8px 6px 16px;
  font-size: 20px;
  color: #3c220c;
  text-decoration: none;
}

.sidenav a:hover {
  color: #bb5915;
}

/* -------------------- Main Content -------------------- */
.main {
  margin-left: 250px;           /* room for sidebar */
  font-size: 16px;
  padding: 0 10px 400px;        /* bottom padding keeps footer clear */
}

.main a {
  font-size: 18px;
  color: #3c220c;
  text-decoration: underline;
}

.main a:hover {
  color: #bb5915;
}

.alphabet {
	text-align: center;
}

.styled-bar {
  border: none;
  height: 4px;
  background-color: #333;
  width: 80%;
  margin: 20px auto;
  border-radius: 2px;
}

/* -------------------- Footer -------------------- */
.bottom-box {
  position: fixed;
  bottom: 0;
  left: 0;
  margin-left: 250px;
  width: calc(100% - 250px);
  background-color: #fef5e7;
  border-top: 2px solid #3c220c;
  padding: 10px;
  text-align: center;
  font-size: 12px;
  z-index: 2;
}

/* -------------------- Short screens (≤ 450px tall) -------------------- */
@media screen and (max-height: 450px) {
  .sidenav   { padding-top: 15px; }
  .sidenav a { font-size: 18px; }
}

/* -------------------- Mobile Menu -------------------- */
/* Hamburger icon */
.hamburger {
  display: none;                /* becomes block in mobile breakpoint */
  font-size: 30px;
  padding: 10px;
  background-color: #3c220c;
  color: #fff;
  cursor: pointer;
}

/* Mobile drop‑down container (cloned link list) */
.mobile-menu {
  display: none;
  background: #fef5e7;
  border-bottom: 2px solid #3c220c;
  padding-top: 2px;
  padding-left: 10px;
}
.mobile-menu a {
  display: block;
  padding: 4px 6px;
  text-decoration: underline;
  color: #3c220c;
}
.mobile-menu.show { display: block; }

/* -------------------- Breakpoint ≤ 768px -------------------- */
@media screen and (max-width: 768px) {
  /* Flip helper classes */
  .desktop-only { display: none; }
  .mobile-only  { display: block; }

  /* Show hamburger icon */
  .hamburger { display: block; }

  /* Main content stretches full width */
  .main {
    margin: 0;
    font-size: 24px;
    padding: 30px 10px 300px;
  }

  /* Footer also full width */
  .bottom-box {
    margin: 0;
    width: 100%;
    font-size: 12px;
  }
}


