/* Resume surface: a restrained editorial document inside the studio system. */
.resume-page{
  --resume-paper:#f5f2eb;
  --resume-ink:#152b3b;
  --resume-muted:#53636b;
  --resume-navy:#091e2e;
  --resume-gold:#ecd3af;
  --resume-line:#d0cbc0;
  background:var(--resume-paper);
  color:var(--resume-ink);
}
.resume-page .studio-header{background:var(--resume-navy);color:#f6ecda;border-bottom:1px solid #344651}
.resume-page .studio-brand{color:inherit}
.resume-page .studio-nav>a:hover,.resume-page .studio-nav>a[aria-current]{color:var(--resume-gold);border-bottom-color:var(--resume-gold)}
.resume-page .doc-head{padding:0;background:var(--resume-navy);color:#f6ecda;border-bottom:1px solid #344651}
.resume-page .resume-hero-grid{max-width:1280px;padding:clamp(64px,8vw,108px) clamp(24px,6vw,90px) clamp(70px,8vw,105px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(48px,9vw,140px);align-items:end}
.resume-page .resume-hero-copy{min-width:0}
.resume-page .resume-kicker{margin:0 0 24px;color:#b6c0c5;font-size:.62rem;line-height:1.7;letter-spacing:.2em;text-transform:uppercase}
.resume-page .doc-head h1{max-width:none;margin:0;color:var(--resume-gold);font-family:var(--display);font-size:clamp(3.2rem,6.4vw,6.9rem);font-weight:400;line-height:1.03;letter-spacing:.055em;text-transform:uppercase}
.resume-page .resume-contact{max-width:72ch;margin:30px 0 0;color:#d2dade;font-size:.88rem;line-height:1.8}
.resume-page .resume-contact a{color:var(--resume-gold);text-underline-offset:5px}
.resume-page .resume-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}
.resume-page .resume-actions .btn{min-height:52px;border-radius:0;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.resume-page .doc-head .btn-primary{background:var(--resume-gold);border-color:var(--resume-gold);color:var(--resume-navy)}
.resume-page .doc-head .btn-primary:hover{background:#ffe2b6;border-color:#ffe2b6;color:var(--resume-navy)}
.resume-page .doc-head .btn-line{color:var(--resume-gold);border-color:#82909a;background:transparent}
.resume-page .doc-head .btn-line:hover{background:var(--resume-gold);border-color:var(--resume-gold);color:var(--resume-navy)}
.resume-page .resume-hero-rail{border-top:1px solid #52616a}
.resume-page .resume-hero-rail .resume-kicker{margin:17px 0 0;color:#d2dade}
.resume-page .resume-hero-rail dl{margin:0}
.resume-page .resume-hero-rail dl>div{display:grid;grid-template-columns:100px 1fr;gap:18px;align-items:center;padding:20px 0;border-bottom:1px solid #344651}
.resume-page .resume-hero-rail dt{font-family:var(--display);font-size:clamp(2rem,3.3vw,3.1rem);font-weight:400;line-height:1;color:var(--resume-gold);letter-spacing:.03em}
.resume-page .resume-hero-rail dd{margin:0;color:#ccd5da;font-size:.67rem;line-height:1.7;letter-spacing:.08em;text-transform:uppercase}
.resume-page article.doc{max-width:1120px;padding:clamp(65px,8vw,110px) clamp(24px,6vw,80px) 100px;font-size:16px;color:var(--resume-ink)}
.resume-page article.doc>h2{margin:78px 0 35px;padding-bottom:20px;border-bottom:1px solid var(--resume-line);color:#745327;font-family:var(--display);font-size:clamp(2rem,3.8vw,3.25rem);font-weight:400;letter-spacing:.055em;line-height:1.15;text-transform:uppercase}
.resume-page article.doc>h2:first-child{margin-top:0}
.resume-page article.doc p{line-height:1.85}
.resume-page article.doc .bio-skills ul{list-style:none;margin:0;padding:0;counter-reset:skill}
.resume-page article.doc .bio-skills li{position:relative;display:block;margin:0;padding:22px 0 22px 70px;border:0;border-top:1px solid var(--resume-line);border-radius:0;background:transparent;color:var(--resume-muted);font-size:.91rem;line-height:1.75}
.resume-page article.doc .bio-skills li:last-child{border-bottom:1px solid var(--resume-line)}
.resume-page article.doc .bio-skills li::before{position:absolute;top:25px;left:0;counter-increment:skill;content:counter(skill,decimal-leading-zero);color:#745327;font-family:var(--display);font-size:1.25rem;line-height:1}
.resume-page article.doc .bio-skills li strong{color:var(--resume-ink);font-weight:700}
.resume-page article.doc .bio-other{margin:28px 0 0;padding:8px 0 8px 18px;border-left:1px solid #745327;color:var(--resume-muted);font-size:.78rem;line-height:1.8}
.resume-page article.doc .bio-other strong{color:var(--resume-ink)}
.resume-page .resume-job{margin:0;padding:26px 0 31px;border-bottom:1px solid var(--resume-line)}
.resume-page .resume-job-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:18px;margin:0}
.resume-page .resume-job-head .org{display:block;padding:0;border:0;border-radius:0;background:none;color:var(--resume-ink);font-family:var(--display);font-size:clamp(1.1rem,1.9vw,1.5rem);font-weight:400;letter-spacing:.04em;line-height:1.35;text-transform:uppercase}
.resume-page .resume-job-head .org .loc{color:var(--resume-muted);font-family:var(--sans);font-size:.66em;letter-spacing:.04em;text-transform:none}
.resume-page .resume-job-head .dates,.resume-page .resume-edu-head .dates{color:#745327;font-size:.67rem;letter-spacing:.1em;line-height:1.5;text-align:right;text-transform:uppercase}
.resume-page .resume-role{margin:7px 0 13px;color:#745327;font-size:.65rem;font-weight:600;letter-spacing:.13em;line-height:1.5;text-transform:uppercase}
.resume-page .resume-job ul{margin:0;padding-left:1.1rem}
.resume-page .resume-job li{margin:.25rem 0;color:var(--resume-muted);font-size:.86rem;line-height:1.8}
.resume-page .resume-job li::marker{color:#745327}
.resume-page .resume-edu{padding:25px 0;border-top:1px solid var(--resume-line)}
.resume-page .resume-edu:last-of-type{border-bottom:1px solid var(--resume-line)}
.resume-page .resume-edu-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:18px}
.resume-page .resume-edu-head .degree{color:var(--resume-ink);font-family:var(--display);font-size:clamp(1.05rem,1.8vw,1.35rem);font-weight:400;letter-spacing:.035em;line-height:1.4;text-transform:uppercase}
.resume-page .resume-edu .school{margin:9px 0 0;color:var(--resume-ink);font-size:.85rem;font-weight:600}
.resume-page .resume-edu .detail{margin:5px 0 0;color:var(--resume-muted);font-size:.8rem;line-height:1.8}
.resume-page .page-nav{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:72px;padding-top:28px;border-top:1px solid var(--resume-line);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}
.resume-page .page-nav .btn{border-radius:0;color:var(--resume-ink);border-color:var(--resume-ink);font-size:.66rem;letter-spacing:.08em}
.resume-page .page-nav .btn:hover{background:var(--resume-ink);color:var(--resume-paper)}
.resume-page .site-foot{background:#05141f;color:#b6c0c5}
.resume-page .site-foot a{color:var(--resume-gold)}
.resume-page .assistant-toggle{background:var(--resume-navy);border-color:#a68b65;color:var(--resume-gold)}
.resume-page .assistant-toggle:hover{background:var(--resume-gold);color:var(--resume-navy)}
@media(max-width:800px){
  .resume-page .resume-hero-grid{grid-template-columns:1fr;gap:54px;padding-top:62px}
  .resume-page .doc-head h1{font-size:clamp(2.65rem,11vw,5rem)}
  .resume-page .resume-contact{font-size:.8rem}
  .resume-page .resume-hero-rail dl>div{grid-template-columns:88px 1fr}
  .resume-page article.doc{padding-top:58px}
  .resume-page article.doc>h2{margin-top:62px;font-size:clamp(1.8rem,8vw,2.7rem)}
}
@media(max-width:560px){
  .resume-page .resume-hero-grid{padding-inline:25px;padding-bottom:64px}
  .resume-page .resume-actions{flex-direction:column;align-items:stretch}
  .resume-page .resume-actions .btn{width:100%;justify-content:center}
  .resume-page article.doc{padding-inline:25px;padding-bottom:70px}
  .resume-page article.doc .bio-skills li{padding-left:48px;font-size:.84rem}
  .resume-page .resume-job-head,.resume-page .resume-edu-head{grid-template-columns:1fr;gap:5px}
  .resume-page .resume-job-head .dates,.resume-page .resume-edu-head .dates{text-align:left}
  .resume-page .resume-job-head .org{font-size:1.15rem}
  .resume-page .page-nav{align-items:stretch;flex-direction:column}
}
@media print{
  .resume-page .doc-head{background:none;color:#111;padding:20px 0}
  .resume-page .resume-hero-grid{display:block;padding:0}
  .resume-page .resume-hero-rail{display:none}
  .resume-page .doc-head h1,.resume-page .resume-contact,.resume-page .resume-contact a{color:#111}
  .resume-page article.doc{padding:20px 0}
}
