/* Keep profile sections on the same grid and type scale as Experience. */
#about, #skills, #contact {
  max-width:none;
  margin:0;
  padding:13vh 0;
  border:0;
  background:transparent;
}
.profile-section .section-heading .eyebrow { color:var(--muted); }
.profile-section .section-heading h2 {
  font-family:var(--font);
  font-size:clamp(18px,2.35vw,33px);
  font-weight:650;
  letter-spacing:-.045em;
  line-height:1.4;
  margin:19px 0 0;
}
#skills .skill-group {
  display:grid;
  grid-template-columns:200px minmax(0,1fr);
  gap:45px;
  padding:37px 0;
  border-bottom:1px solid var(--line);
}
#skills .skills-grid {
  border-top:1px solid var(--line);
}
#skills .skill-group .num {
  grid-row:auto;
  padding-top:5px;
  margin:0;
  font-family:var(--font);
  font-size:13px;
  font-weight:400;
  line-height:1.9;
  letter-spacing:.08em;
  color:#8b8b8b;
}
#about .about-copy {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:70px;
  max-width:none;
  padding:37px 0 35px;
  font-size:16px;
  line-height:2;
  color:#9c9c9c;
}
#about .about-copy p { margin:0; }
#about .about-stats {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:45px;
  padding:52px 0 12px;
}
#about .about-stat strong {
  display:block;
  font-size:clamp(40px,4vw,56px);
  font-weight:600;
  letter-spacing:-.045em;
  line-height:1.2;
  color:#eee;
}
#about .about-stat span {
  display:block;
  margin-top:13px;
  font-size:13px;
  line-height:1.9;
  color:#999;
}
#skills .skills-grid { display:block; }
#skills .skill-group { border-top:0; }
#skills .skill-main { min-width:0; }
#skills .skill-group h3 {
  margin:0 0 6px;
  font-size:21px;
  font-weight:600;
  line-height:1.6;
  color:#eee;
}
#skills .skill-group p {
  max-width:750px;
  margin:20px 0 0;
  font-size:13px;
  line-height:1.9;
  color:#9c9c9c;
}
#skills .skill-tools { margin-top:18px; gap:8px; }
#skills .skill-tools span {
  border:1px solid #444;
  padding:4px 8px;
  color:#999;
  font-size:9px;
  letter-spacing:.06em;
  line-height:1.8;
}
#skills .education {
  display:block;
  margin-top:0;
  padding-top:0;
  border:0;
}
#skills .education-item { display:grid; grid-template-columns:200px minmax(0,1fr); gap:45px; padding:28px 0; }
#skills .education-item + .education-item { border-top:1px solid var(--line); }
#skills .education-item .eyebrow {
  display:block;
  padding:0;
  margin-bottom:10px;
  color:#888;
  font-size:9px;
}
#skills .education-item p { margin:0; font-size:12px; color:#bbb; }
#skills .education-item small { margin-top:7px; font-size:10px; color:#888; }
#contact .section-heading h2 {
  font-weight:650;
  line-height:1;
  letter-spacing:-.055em;
}
#contact .section-heading h2 span { display:inline-block; }
#contact .section-heading h2 span:first-child { margin-right:.18em; }
#contact .contact-intro {
  max-width:650px;
  margin:0;
  padding-bottom:45px;
  font-size:15px;
  line-height:1.9;
  color:#9c9c9c;
}
#contact .contact-intro p { margin:0; }
#contact .contact-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:50px;
  padding:37px 0;
}
#contact .contact-column { min-width:0; }
#contact .contact-column h3 {
  margin:0 0 25px;
  font-size:13px;
  font-weight:500;
  letter-spacing:.06em;
  line-height:1.6;
  color:#777;
}
#contact .contact-items {
  display:grid;
  gap:12px;
  font-size:14px;
  line-height:1.9;
  color:#9c9c9c;
}
#contact .contact-items p { margin:0; }
#contact .contact-primary { font-size:18px; font-weight:600; color:#ddd; }
#contact .contact-items a { min-width:0; overflow-wrap:anywhere; }
#contact .contact-items a:hover { color:white; }
#contact .copy-wechat { justify-self:start; font-size:13px; gap:8px; color:#9c9c9c; }
#contact .copy-wechat:hover { color:white; }
#contact .contact-resource { gap:0; }
#contact .contact-resource a {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  justify-self:start;
  gap:12px;
  padding:9px 0;
}
#contact .contact-resource a:first-child { padding-top:0; }
#contact .contact-resource .arrow { flex-shrink:0; color:#777; }
#contact .contact-resource a:hover .arrow { color:white; }
@media(max-width:1100px) {
  #skills .skill-group, #skills .education-item {
    grid-template-columns:160px minmax(0,1fr);
    gap:30px;
  }
}
@media(max-width:760px) {
  #about, #skills, #contact { padding:76px 0; }
  .profile-section .section-heading h2 { font-size:18px; margin-top:15px; }
  #skills .skill-group {
    grid-template-columns:minmax(0,1fr);
    gap:13px;
    padding:29px 0;
  }
  #skills .skill-group .num { font-size:11px; }
  #about .about-copy {
    grid-template-columns:minmax(0,1fr);
    gap:22px;
    padding:29px 0;
    font-size:14px;
  }
  #about .about-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 18px; padding:29px 0; }
  #about .about-stat strong { font-size:36px; }
  #about .about-stat span { margin-top:9px; font-size:11px; }
  #skills .skill-group p { font-size:12px; line-height:1.9; }
  #skills .skill-group h3 { font-size:18px; }
  #skills .skill-group p { margin-top:15px; }
  #skills .skill-tools { grid-column:auto; margin-top:15px; }
  #skills .skill-tools span { font-size:8px; padding:3px 6px; }
  #skills .education-item { grid-template-columns:1fr; gap:13px; padding:26px 0; }
  #skills .education-item p { font-size:12px; }
  #skills .education-item small { font-size:9px; }
  #skills .education-item .eyebrow { font-size:8px; }
  #contact .section-heading h2 span { display:block; }
  #contact .section-heading h2 span:first-child { margin-right:0; }
  #contact .contact-intro { padding-bottom:29px; font-size:12px; }
  #contact .contact-grid { grid-template-columns:1fr; gap:29px; padding:29px 0; }
  #contact .contact-column + .contact-column { border-top:1px solid var(--line); padding-top:29px; }
  #contact .contact-column h3 { font-size:12px; margin-bottom:18px; }
  #contact .contact-items, #contact .copy-wechat { font-size:12px; }
  #contact .contact-primary { font-size:16px; }
}
