/* --- TYPE SELECTORS --- */
body {
  font-family: Arial, sans-serif;
  background-color: #f9f9f9;
  margin: 0;
  padding: 0;
}

h1, h2, h3 {
  color: #004466;
  margin: 20px 0;
}

p {
  color: #333;
  line-height: 1.6;
  margin-bottom: 16px;
}

/* --- CLASS SELECTORS --- */
.header {
  background-color: #006699;
  color: white;
  padding: 20px;
  text-align: center;
  position: sticky;
  top: 0;
}

.nav-link {
  color: white;
  margin: 0 10px;
  text-decoration: none;
}

.container {
  display: flex;
  margin: 20px;
}

/* Left sidebar */
.sidebar {
  flex: 1;
  padding: 15px;
  background-color: #eeeeee;
}

/* Main content */
.main-content {
  flex: 2;
  padding: 15px;
}

/* --- ID SELECTOR --- */
#site-footer {
  text-align: center;
  color: #777;
  font-size: 0.9em;
  padding: 20px;
}

/* --- ATTRIBUTE SELECTOR --- */
a[href^="http"] {
  color: #0088cc;
  font-weight: bold;
}

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

/* Floated image with caption */
.float-img {
  float: right;
  margin: 10px;
  width: 300px;
}

.caption {
  font-size: 0.8em;
  text-align: center;
  color: #555;
}

/* --- FORM STYLING --- */
form {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

form label {
  flex: 1 1 100px;
}

form input,
form textarea {
  flex: 2 1 300px;
  padding: 8px;
}

/* --- GLOBAL LINK STYLING --- */
a {
  color: #004466;
}

a:hover {
  text-decoration: underline;
}

/* --- LISTS --- */
ul {
  padding-left: 20px;
  list-style-type: disc;
}

/* --- BUTTONS --- */
button {
  background-color: #006699;
  color: white;
  padding: 10px 15px;
  border: none;
  cursor: pointer;
}

button:hover {
  background-color: #004466;
}
