/* Jenny Wu — clone of the Cargo site.
   Calibrated to computed styles measured from jenny5.cargo.site (viewport 1440). */

:root {
  --bg: #dae4ed;            /* page background */
  --ink: #000;             /* body text / links */
  --bold: rgba(0,0,0,.85); /* name + section headings */
  --fs: 15.5px;
  --lh: 23.3px;
  --indent: 20px;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: -apple-system, "system-ui", "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  font-size: var(--fs);
  line-height: var(--lh);
  font-weight: 400;
}

a { color: var(--ink); text-decoration: none; }
a:hover { text-decoration: underline; }

/* ---- Layout: sidebar left, content column offset right (matches x506 @ 1440) ---- */
.wrap {
  display: grid;
  grid-template-columns: 466px minmax(0, 1fr);
  column-gap: 0;
  padding: 71px 52px 90px 40px;
  align-items: start;
}

.sidebar {
  position: sticky;
  top: 71px;
  align-self: start;
}
.sidebar .name { font-weight: 700; color: var(--bold); margin-bottom: var(--lh); }
.sidebar .role { }
.sidebar .role em { font-style: italic; }
.sidebar .ico { width: 1.05em; height: 1.05em; vertical-align: -0.18em; }
.sidebar .info-line { margin-top: 0; }
.sidebar .contact { margin-top: var(--lh); }
.sidebar .rep { margin-top: 0; }

/* ---- Content ---- */
.content { min-width: 0; }
.sec-head { font-size: var(--fs); font-weight: 700; color: var(--bold); margin: 0; }
.sec:not(:first-child) .sec-head { margin-top: var(--lh); }

.item { padding-left: var(--indent); }
.mark {
  display: inline-block; width: var(--indent); margin-left: calc(-1 * var(--indent));
  height: var(--lh); vertical-align: top;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 5l7 7-7 7"/></svg>');
  background-repeat: no-repeat;
  background-position: 0 0.42em;
  background-size: 0.62em 0.62em;
}
.entry { }

/* ---- Mobile ---- */
@media (max-width: 820px) {
  .wrap { grid-template-columns: 1fr; padding: 28px 22px 48px; }
  .sidebar { position: static; margin-bottom: var(--lh); }
}
