body {
  background-color: #e3e5c8; /* Fallback color */
  background-image: url('marble.webp');
  background-repeat: repeat; /* Makes the texture loop */
  color: #2b2b2a;
  font: normal 62.5% "Lucida Sans Unicode", sans-serif;
  margin: 0;
  padding: 30px;
  line-height: 1.6;
}

.page {
  max-width: 800px;
  margin: 0 auto;
  font-size: 1.3em; /* Scaled up from 62.5% base for body copy readability */
}

/* Titles */
h1 {
  font: normal 2em serif;
  color: #23291d;
  margin-top: 0;
  margin-bottom: 3px;
}

/* Subtitles */
h2 {
  font: normal 1.6em serif;
  color: #3b4234;
  margin-top: 25px;
  margin-bottom: 8px;
  border-bottom: 1px solid #b5bc93;
  padding-bottom: 4px;
}

.subtitle {
  font-style: italic;
  font-size: 0.95em;
  color: #556042;
  margin-bottom: 15px;
}

/* Theme divider line */
hr.gold {
  border: none;
  height: 1px;
  background-color: #b5bc93;
  margin: 15px 0 20px 0;
}

p {
  line-height: 1.6;
  margin-bottom: 15px;
  color: #2b2b2a;
}

/* Floating image */
.right-img {
  float: right;
  margin: 0 0 15px 20px;
  max-width: 250px;
  height: auto;
  border: 1px  #9aa073;
  padding: 4px;
  background-color: #edefe0;
  border-radius: 12px; /* Adds rounded corners */
  box-shadow: 5px 3px 10px rgba(0, 0, 0, 0.55); /* Adds a soft shade offset to the right */
}

/* Clearfix helper */
.clearfix::after {
  content: "";
  clear: both;
  display: table;
}

.clear {
  clear: both;
}