/* Body & background */
body {
  background-color: #f0f2f5; /* subtle gray */
  color: #111;               /* very dark gray, nearly black */
  font-family: "Avenir Next", Arial, Helvetica, sans-serif;
  margin: 0;
  padding: 0;
}

.section-links-container {
  text-align: center;       /* center links below header */
  margin: 20px 0 40px 0;    /* spacing above and below */
  font-size: 16px;
}

.section-links-container a {
  color: inherit;           /* same as text color */
  text-decoration: none;    /* remove underline */
  margin: 0 10px;
}

.section-links-container a:hover {
  text-decoration: underline; /* subtle hover cue */
}


/* Container */
.container {
  max-width: 800px;
  margin: 40px auto;
  padding: 40px;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

/* Header */
header {
  text-align: center;
}

header img {
  border-radius: 50%;
  margin-bottom: 0px;
}

.profile-header {
  display: flex;
  align-items: center;
  gap: 90px; /* space between photo and text */
  margin-bottom: 40px;
}

.profile-name {
  text-align: left;
}
.profile-photo {
  width: 180px;
  /*border-radius: 50%;*/  
}

.profile-info p {
  margin: 5px 0; /* spacing between lines */
  line-height: 1.5;
  text-align: left;
}

.section-links {
  margin-top: 15px;
  font-size: 14px;
  text-align: left; /* aligns links with text */
}

.section-links a {
  color: #4A5568; /* muted slate gray */
  text-decoration: none;
  margin: 0 8px;
  font-weight: 500;
  transition: color 0.2s;
}

.section-links a:hover {
  color: #2C3E50; /* slightly darker on hover */
}

/* Headings */
h1 {
  margin: 10px 0;
  font-size: 24px;
  font-weight: 600; /*semi-bold*/
}

h2 {
  margin: 30px 0 10px;
  font-size: 20px;
  color: #4A5568; /* slate gray */
  font-weight: 600; /*semi-bold*/
}

/* Make all text, including headings, the same dark color */
h1, h2, h3, h4, h5, h6, p, li, td, a {
  color: inherit;  /* will use the color defined in body (#111) */
}

/* Horizontal bar */
.hbar {
  height: 1px;
  background-color: #111;               /* very dark gray, nearly black */
  margin-bottom: 15px;
}

/* Paragraphs */
p, li, td {
  font-size: 16px;
  line-height: 1.6;
}

a {
  color: inherit;          /* use same color as surrounding text */
  text-decoration: none;   /* remove underline */
}

a:hover {
  text-decoration: underline; /* optional: show underline on hover */
}

/* Last updated */
#update {
  margin-top: 30px;
  font-size: 12px;
  color: #666;
  text-align: center;
}

/* Tables */
table {
  width: 100%;
  border-collapse: collapse;
}

td {
  vertical-align: top;
  padding: 10px;
}

.banner-bottom {
  width: 100%;
  height: auto;
  display: block;
  margin-top: 50px; /* optional spacing above */
  object-fit: cover;
}
