.resume-root{--navy:#0f172a;--slate:#334155;--slate2:#64748b;--line:#e2e8f0;--teal:#0d9488;color:var(--slate);font-family:var(--font-hanken),system-ui,sans-serif}.resume-root *{box-sizing:border-box}.resume-root a{color:inherit;text-decoration:none}.resume-root .stage{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:40px 16px 96px}.resume-root .toolbar{position:fixed;bottom:24px;right:24px;display:flex;gap:10px;z-index:10}.resume-root .tbtn{font-family:var(--font-jetbrains),monospace;font-size:13px;padding:12px 20px;border-radius:8px;cursor:pointer;border:1px solid rgba(148,163,184,.4);background:#1e293b;color:#e2e8f0;transition:all .2s}.resume-root .tbtn.primary,.resume-root .tbtn:hover{background:#0d9488;border-color:#0d9488;color:#fff}.resume-root .tbtn.primary:hover{background:#0f766e}.resume-root .page{width:8.5in;min-height:11in;background:#fff;padding:.5in .55in;box-shadow:0 25px 60px -15px rgba(0,0,0,.55);color:var(--slate)}.resume-root .head{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid var(--line)}.resume-root .head h1{font-size:40px;font-weight:800;letter-spacing:-.02em;color:var(--navy);line-height:1}.resume-root .head .role{font-size:11px;color:var(--slate2);margin-top:8px;max-width:44ch;line-height:1.4}.resume-root .contact{display:grid;gap:4px;flex-shrink:0;padding-top:3px}.resume-root .contact .crow{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--slate);transition:color .2s}.resume-root .contact .crow:hover{color:var(--teal)}.resume-root .contact svg{width:12px;height:12px;color:var(--teal);flex-shrink:0}.resume-root .grid{display:grid;grid-template-columns:1.55fr 1fr;gap:0 .4in}.resume-root h2{font-size:12.5px;font-weight:700;color:var(--teal);margin-bottom:9px;letter-spacing:.01em}.resume-root section{margin-bottom:15px}.resume-root .job{margin-bottom:11px;break-inside:avoid}.resume-root .job .top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.resume-root .job h3{font-size:11.5px;font-weight:700;color:var(--navy)}.resume-root .job h3 .co{color:var(--teal)}.resume-root .job .when{font-size:9px;color:var(--slate2);white-space:nowrap;flex-shrink:0}.resume-root .job ul{margin-top:4px}.resume-root .job li{font-size:10px;line-height:1.42;list-style:none;position:relative;padding-left:12px;color:var(--slate);margin-bottom:3px}.resume-root .job li:before{content:"";position:absolute;left:0;top:6px;width:6px;height:1.5px;background:var(--teal)}.resume-root .sk{margin-bottom:8px}.resume-root .sk .k{font-size:10.5px;font-weight:700;color:var(--navy);margin-bottom:2px}.resume-root .sk .v{font-size:10px;line-height:1.5;color:var(--slate)}.resume-root .pr{margin-bottom:8px;break-inside:avoid}.resume-root .pr .t{font-size:11px;font-weight:700;color:var(--navy)}.resume-root .pr .d{font-size:10px;line-height:1.45;color:var(--slate);margin-top:1px}.resume-root .edu .t{font-size:11px;font-weight:700;color:var(--navy)}.resume-root .edu .d{font-size:10px;color:var(--slate);margin-top:1px;line-height:1.45}@media screen and (max-width:820px){.resume-root .stage{padding:24px 14px 110px}.resume-root .page{width:100%;min-height:auto;padding:28px 22px;box-shadow:0 12px 32px -14px rgba(0,0,0,.5)}.resume-root .head{flex-direction:column;gap:14px}.resume-root .head h1{font-size:32px}.resume-root .head .role{font-size:12.5px;max-width:none}.resume-root .contact{gap:7px}.resume-root .contact .crow{font-size:12px}.resume-root .contact svg{width:14px;height:14px}.resume-root .grid{grid-template-columns:1fr;gap:0}.resume-root h2{font-size:14px;margin-bottom:10px}.resume-root section{margin-bottom:22px}.resume-root .job{margin-bottom:16px}.resume-root .edu .t,.resume-root .job h3,.resume-root .pr .t,.resume-root .sk .k{font-size:14px}.resume-root .edu .d,.resume-root .job li,.resume-root .pr .d,.resume-root .sk .v{font-size:13px;line-height:1.5}.resume-root .job .when{font-size:11px}.resume-root .toolbar{left:16px;right:16px;bottom:16px;justify-content:center}.resume-root .tbtn{flex:1;max-width:200px;text-align:center}}@page{size:letter;margin:0}@media print{body,html{background:#fff}.resume-root .stage{padding:0}.resume-root .page{box-shadow:none;width:100%;min-height:auto;padding:.5in .55in}.resume-root .toolbar{display:none}}