
.resume-page{padding:36px clamp(24px,4vw,68px) 72px}
.resume-heading{padding-bottom:28px;border-bottom:1px solid var(--line)}
.resume-heading h1{font-size:clamp(2rem,3.5vw,3.6rem);margin-bottom:12px;color:var(--teal)}
.resume-downloads{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.resume-downloads a{padding:11px 17px;border:1px solid var(--teal);border-radius:4px;color:var(--teal);font-weight:700}
.resume-downloads a:first-child{background:var(--teal);color:white}
.resume-layout{display:grid;grid-template-columns:minmax(220px,26%) minmax(0,1fr);gap:clamp(24px,4vw,64px);padding-top:30px;align-items:start}
.resume-profile{padding:22px;background:var(--soft,#f2f7f6);border-left:3px solid var(--teal);min-width:0}
.resume-profile h2{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin:26px 0 12px;color:var(--teal)}
.resume-profile h2:first-child{margin-top:0}.resume-profile p{font-size:.94rem;margin-bottom:9px;overflow-wrap:anywhere}
.resume-experience h2{font-size:1rem;text-transform:uppercase;letter-spacing:.06em;color:var(--teal)}
.resume-experience{min-width:0}
.resume-experience h3{font-size:1.65rem;color:var(--teal);margin:0 0 8px}
.resume-experience p{max-width:85ch;line-height:1.6;margin-bottom:12px}
.resume-role{font-weight:700}.resume-expertise{color:var(--plum,#80477e);font-size:.9rem}
.resume-bullet{padding-left:18px;position:relative}.resume-bullet:before{content:"•";position:absolute;left:0;color:var(--teal)}
.resume-layout a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.resume-skills{padding-left:18px;margin:0;font-size:.94rem;line-height:1.7}
.resume-tools{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.resume-tools li{display:grid;gap:2px;font-size:.94rem;line-height:1.4}
.resume-tools li span{font-size:.86rem}
.resume-positioning{padding-bottom:22px;border-bottom:1px solid var(--plum,#80477e);margin-bottom:24px}
.resume-experience .resume-lead{font-size:clamp(1.15rem,1.5vw,1.45rem);font-weight:600;line-height:1.45}
.resume-position{padding:24px 0;border-bottom:1px solid var(--plum,#80477e)}
.resume-position-header{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:8px 24px;margin-bottom:16px}
.resume-position-header>div{flex:1 1 320px;min-width:0}
.resume-experience .resume-position-header p{margin:0}
.resume-experience .resume-domains{font-size:.78rem;letter-spacing:.025em;color:var(--plum,#80477e);margin-top:6px;line-height:1.5}
.resume-experience .resume-position-meta{font-size:.86rem;line-height:1.5}
.resume-position-meta span{display:block}
.resume-position-header>.resume-position-meta{flex:0 1 auto;text-align:right}
.resume-achievements{padding-left:21px;margin:14px 0;line-height:1.65}
.resume-achievements li+li{margin-top:8px}
.resume-expertise strong{margin-right:8px}
.resume-experience .resume-certification{font-size:.9rem;font-weight:600}
.resume-service{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;margin-top:28px}
.resume-service h3{font-size:1.15rem;margin:18px 0 4px}
.resume-service p{font-size:.94rem}
html[data-theme="dark"] .resume-profile{background:#142a32}
@media(max-width:900px){.resume-layout{grid-template-columns:1fr}.resume-experience{grid-row:1}.resume-profile{grid-row:2}.resume-page{padding:25px 22px 50px}}
@media(max-width:1200px){.resume-position-header>.resume-position-meta{text-align:left}}
@media(max-width:600px){.resume-service{grid-template-columns:1fr;gap:12px}.resume-profile{padding:20px}.resume-experience h3{font-size:1.4rem}}
