body {
  color: #5b5b5b;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  font-weight: 400;
  line-height: 1.55;
}

section p {
  color: #5b5b5b;
  font-weight: 400;
}

.project summary {
  font-weight: 400;
}

.project summary strong {
  font-weight: 600;
}

/* Restore the wider layout from the mock */
.wrapper {
  width: 900px;
  max-width: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr);
  gap: 70px;
  align-items: start;
}

header {
  width: auto;
  float: none;
  position: sticky;
  top: 38px;
}

section {
  width: auto;
  float: none;
  padding-bottom: 50px;
}

body {
  color: #5b5b5b;
  font-weight: 400;
  line-height: 1.55;
}

@media (max-width: 760px) {
  .wrapper {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  header {
    position: static;
  }

  section {
    width: 100%;
  }
}

/* Dropdown styling for research projects */
.socials { display:flex; gap:12px; align-items:center; margin-top:15px; }
.socials a { color:#444; }

.project { margin:0 0 18px; }
.project summary { color:#222; cursor:pointer; display:block; font-size:15px; line-height:1.5; list-style:none; padding-left:21px; position:relative; user-select:none; }
.project summary::-webkit-details-marker { display:none; }
.project summary::before { content:"▸"; color:#8a8a8a; font-size:15px; left:0; line-height:1; position:absolute; top:.75em; transform:translateY(-50%); transition:transform .12s ease; }
.project[open] > summary::before { transform:translateY(-50%) rotate(90deg); }
.project summary:hover strong { color:#267cb9; }
.project .coauthors { color:#777; font-weight:400; }

.project-details { background:#f8f8f8; border-left:3px solid #dedede; margin:10px 0 0 17px; padding:15px 17px 14px; }
.project-details p { line-height:1.62; margin:0 0 13px; }
.project-details p:first-child { color:#222; font-size:12px; letter-spacing:.04em; margin-bottom:5px; text-transform:uppercase; }
.project-details .links { border-top:1px solid #e2e2e2; font-size:13px; margin-top:10px; padding-top:10px; }
