.resume-sheet.studio-resume {
  --r-ink: #202323;
  --r-heading: var(--accent-ink);
  --r-band: color-mix(in srgb, var(--accent) 8%, white);
  --r-date-column: 136px;
  --r-date-gap: 16px;
  padding: 56px 56px 52px;
  color: var(--r-ink);
  font-weight: 400;
}

.studio-resume .r-header {
  margin: 0 0 24px;
  padding: 0;
  border: 0;
}

.studio-resume .r-name {
  margin: 0 0 4px;
  color: var(--r-heading);
  font-size: 30px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.025em;
}

.studio-resume .r-title {
  color: var(--r-heading);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.28;
  overflow-wrap: anywhere;
}

.studio-resume .r-photo {
  float: none;
  width: 130px;
  height: 130px;
  margin: 0;
}

.studio-resume .r-contact {
  gap: 7px 13px;
  margin-top: 12px;
  color: var(--r-ink);
  font-size: calc(var(--resume-size) - .4px);
  font-weight: 400;
  line-height: 1.35;
}

.studio-resume .r-contact > span {
  display: inline-flex;
  align-items: flex-start;
  gap: 7px;
  min-width: 0;
  max-width: 100%;
}

.studio-resume .r-contact .r-glyph {
  width: 13px;
  height: 13px;
  margin: .12em 0 0;
}

.studio-resume .r-contact-value {
  min-width: 0;
  overflow-wrap: anywhere;
}

.studio-resume .r-columns {
  grid-template-rows: minmax(0, 1fr);
}

.studio-resume .r-unit {
  display: flow-root;
}

.resume-sheet.studio-resume .r-section-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 4px 7px;
  margin-bottom: 10px;
  border: 0;
  border-radius: 2px;
  background: var(--r-band);
  color: var(--r-heading);
  font-family: inherit;
  font-size: calc(var(--resume-size) + 2.5px);
  font-weight: 700;
  line-height: 1.18;
  letter-spacing: .015em;
  text-transform: none;
  text-align: center;
}

.studio-resume .r-section-start {
  margin-top: 21px;
}

.studio-resume .r-section-title .r-glyph {
  margin: 0;
}

.studio-resume :is(.r-text, .r-bullet, .r-entry-meta, .r-entry-subtitle, .r-skill-value) {
  color: var(--r-ink);
  font-size: var(--resume-size);
  font-weight: 400;
  line-height: var(--resume-line);
}

.studio-resume :is(.r-entry-title, .r-skill-label) {
  color: var(--r-ink);
  font-size: var(--resume-size);
  font-weight: 700;
  line-height: var(--resume-line);
}

.studio-resume .r-entry-subtitle,
.studio-resume .r-entry-dates {
  margin: 0;
}

.studio-resume .r-entry-dates {
  color: var(--r-date-ink, var(--r-ink));
}

.studio-resume .r-entry-dates > span {
  display: block;
}

.studio-resume .r-dated-entry {
  margin: 0 0 10px;
}

.studio-resume .r-unit:has(+ .r-unit > .r-entry-continuation) .r-dated-entry {
  margin-bottom: 0;
}

.studio-resume .r-entry-continuation {
  margin-bottom: 10px;
}

.studio-resume .r-unit:has(+ .r-unit > .r-entry-continuation) .r-entry-continuation {
  margin-bottom: 0;
}

.studio-resume .r-bullet {
  margin: 0;
  padding-left: 12px;
}

.studio-resume .r-bullet::before {
  content: '•';
  left: 1px;
  color: currentColor;
}

.studio-resume :is(.r-dated-entry, .r-entry-continuation) .r-text {
  margin-bottom: 0;
}

.studio-resume:is(.dates-left, .dates-right) .r-dated-entry {
  display: grid;
  gap: var(--r-date-gap);
}

.studio-resume.dates-left .r-dated-entry {
  grid-template-columns: var(--r-date-column) minmax(0, 1fr);
}

.studio-resume.dates-left .r-entry-detail {
  grid-area: 1 / 2;
}

.studio-resume.dates-left .r-entry-dates {
  grid-area: 1 / 1;
}

.studio-resume.dates-left .r-entry-continuation {
  padding-left: calc(var(--r-date-column) + var(--r-date-gap));
}

.studio-resume.dates-right .r-dated-entry {
  grid-template-columns: minmax(0, 1fr) var(--r-date-column);
}

.studio-resume.dates-right .r-entry-dates {
  text-align: right;
}

.studio-resume.dates-right .r-entry-continuation {
  padding-right: calc(var(--r-date-column) + var(--r-date-gap));
}

.studio-resume .r-list-row {
  display: grid;
  grid-template-columns: repeat(var(--r-list-columns), minmax(0, 1fr));
  gap: 14px 22px;
  margin-bottom: 6px;
}

.studio-resume :is(.r-list-skills, .r-list-certifications) .r-list-item,
.studio-resume:not(.has-language-dots):not(.style-botanical-edge) .r-list-languages .r-list-item {
  position: relative;
  padding-left: 12px;
}

.studio-resume :is(.r-list-skills, .r-list-certifications) .r-list-item::before,
.studio-resume:not(.has-language-dots):not(.style-botanical-edge) .r-list-languages .r-list-item::before {
  content: '•';
  position: absolute;
  left: 1px;
}

.studio-resume .r-list-note {
  color: var(--r-ink);
}

.studio-resume .r-language-rating {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.studio-resume .r-language-dots {
  display: inline-flex;
  align-self: center;
  flex-shrink: 0;
  gap: 5px;
  color: var(--r-heading);
}

.studio-resume .r-language-dots i {
  width: 7px;
  height: 7px;
  border: 1px solid currentColor;
  border-radius: 50%;
  opacity: .3;
}

.studio-resume .r-language-dots .filled {
  background: currentColor;
  opacity: 1;
}

.studio-resume .r-continue,
.studio-resume .r-continue strong,
.studio-resume .r-footer {
  color: var(--r-heading);
}

.style-harbor-serif.font-serif,
.style-silver-timeline.font-serif {
  font-family: Georgia, 'Bitstream Charter', 'Forme Traditional', serif;
}

/* Harbor Serif */
.resume-sheet.style-harbor-serif {
  padding: 0;
}

.resume-sheet.style-harbor-serif .r-columns {
  grid-template-columns: 44% minmax(0, 1fr);
  gap: 0;
}

.style-harbor-serif .r-main {
  padding: 64px 65px 48px 53px;
}

.resume-sheet.style-harbor-serif .r-aside {
  --r-ink: #fff;
  --r-heading: #fff;
  --r-band: #ffffff14;
  padding: 59px 48px 48px 65px;
  border-radius: 0;
  background: var(--accent-ink);
  color: var(--r-ink);
}

.style-harbor-serif .r-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 32px;
}

.style-harbor-serif .r-header-info {
  display: contents;
}

.style-harbor-serif .r-nameplate { order: 0; }
.style-harbor-serif .r-photo { order: 1; margin-top: 18px; }
.style-harbor-serif .r-contact { order: 2; display: grid; gap: 8px; }
.style-harbor-serif .r-title { font-size: 20px; }

.resume-sheet.style-harbor-serif :is(.r-main, .r-aside) .r-section-title {
  font-size: calc(var(--resume-size) + 2.5px);
  text-transform: uppercase;
  letter-spacing: .025em;
}

.resume-sheet.style-harbor-serif .r-aside .r-text {
  font-size: var(--resume-size);
}

.style-harbor-serif .r-aside .r-header + .r-unit .r-section-start {
  margin-top: 0;
}

.style-harbor-serif .r-aside .r-section-start {
  margin-top: 28px;
}

.style-harbor-serif .r-aside .r-continue {
  border-color: #ffffff60;
}

.style-harbor-serif .r-language-dots {
  color: #eee0d6;
}

.style-harbor-serif .r-section-title .r-glyph {
  --glyph-cutout: #294253;
}

/* Silver Timeline */
.resume-sheet.style-silver-timeline {
  --r-ink: #373b39;
  padding: 0 68px 52px;
}

.style-silver-timeline .r-header {
  display: grid;
  align-items: start;
  margin: 0 -68px 24px;
  padding: 54px 68px 33px;
  background: color-mix(in srgb, var(--accent) 14%, #fbfcf9);
}

.style-silver-timeline .r-header.has-photo {
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 27px;
}

.style-silver-timeline .r-name {
  font-size: 28px;
}

.style-silver-timeline .r-contact {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, max-content));
  gap: 9px 17px;
}

.style-silver-timeline .r-continue {
  margin-top: 44px;
}

/* Navy Grid */
.resume-sheet.style-navy-grid {
  --r-date-column: 140px;
  --r-date-ink: var(--r-heading);
  padding: 60px 53px 48px;
}

.style-navy-grid .r-header,
.style-botanical-edge .r-header {
  display: grid;
}

.style-navy-grid .r-header.has-photo,
.style-botanical-edge .r-header.has-photo {
  grid-template-columns: minmax(0, 1fr) 130px;
  gap: 24px;
}

:is(.style-navy-grid, .style-botanical-edge) .has-photo .r-header-info {
  grid-area: 1 / 1;
}

:is(.style-navy-grid, .style-botanical-edge) .r-photo {
  grid-area: 1 / 2;
}

.style-navy-grid .r-nameplate {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  column-gap: 12px;
}

.style-navy-grid .r-name { font-size: 31px; }
.style-navy-grid .r-title { font-style: italic; font-size: 20px; }

.style-navy-grid .r-contact {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 16px;
}

.style-navy-grid .r-contact .r-glyph {
  width: 19px;
  height: 19px;
  margin: -.05em 0 0;
  padding: 3px;
  border: 1px solid currentColor;
}

/* Meridian Serif */
.resume-sheet.style-meridian-serif {
  --r-date-column: 128px;
  --r-date-gap: 12px;
  padding: 44px 78px 46px;
}

.style-meridian-serif .r-header { text-align: center; margin-bottom: 20px; }
.style-meridian-serif .r-name { font-size: 31px; }
.style-meridian-serif .r-title { font-size: 20px; font-style: italic; }
.style-meridian-serif .r-contact { justify-content: center; }
.style-meridian-serif .r-entry-subtitle { font-style: italic; }

.style-meridian-serif .r-photo {
  width: 78px;
  height: 78px;
  margin-bottom: 10px;
}

.resume-sheet:is(.style-meridian-serif, .style-botanical-edge) .r-section-title {
  justify-content: flex-start;
  padding: 0 0 3px;
  border-bottom: 2px solid var(--r-heading);
  border-radius: 0;
  background: transparent;
  text-align: left;
}

.resume-sheet.style-meridian-serif .r-section-title {
  text-transform: uppercase;
  margin-bottom: 8px;
}

.style-meridian-serif .r-section-start { margin-top: 12px; }
.style-meridian-serif :is(.r-dated-entry, .r-entry-continuation) { margin-bottom: 8px; }
.style-meridian-serif .r-list-skills { margin-bottom: 3px; }

/* Botanical Edge */
.resume-sheet.style-botanical-edge {
  --r-date-column: 126px;
  padding: 42px 40px 53px 98px;
}

.resume-sheet.style-botanical-edge.font-modern {
  font-family: 'Forme UI', Inter, Arial, sans-serif;
  font-synthesis: style;
}

.style-botanical-edge .r-botanical-edge {
  position: absolute;
  inset: 0 auto 0 0;
  width: 7.2%;
  height: 100%;
  object-fit: cover;
  background: #19352a;
}

.style-botanical-edge .r-name { font-size: 31px; }
.style-botanical-edge .r-title { font-size: 21px; font-style: italic; }
.style-botanical-edge .r-photo { border-radius: 0; }
.style-botanical-edge .r-entry-continuation .r-text { padding-left: 9px; }
.style-botanical-edge .r-dated-entry .r-text { padding-left: 9px; }

.style-botanical-edge .r-list-certifications,
.style-botanical-edge .r-list-languages {
  display: flex;
  flex-wrap: wrap;
  gap: 3px 12px;
}

.style-botanical-edge .r-list-certifications .r-list-item:first-child {
  padding-left: 0;
}

.style-botanical-edge .r-list-certifications .r-list-item:first-child::before {
  content: none;
}

.style-botanical-edge .r-list-languages .r-list-item + .r-list-item::before {
  content: '•';
  margin-right: 12px;
}

.style-botanical-edge .r-list-skill-groups .r-list-item {
  display: grid;
  align-content: start;
}

.style-botanical-edge .r-list-skill-groups {
  margin-bottom: 13px;
}
