.resume-page{--resume-content-width:920px;background:radial-gradient(circle at 15% 0%, color-mix(in srgb, var(--accent-primary) 14%, transparent), transparent 32rem), var(--bg-primary);min-height:100dvh;color:var(--text-primary)}:where(.resume-page) a{color:inherit}.resume-page .resume-skip-link{z-index:10001;background:var(--accent-primary);color:var(--bg-primary);border-radius:8px;padding:10px 14px;font-weight:700;text-decoration:none;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.resume-page .resume-skip-link:focus{transform:translateY(0)}.resume-page .resume-header{z-index:100;border-bottom:1px solid var(--glass-border);background:color-mix(in srgb, var(--bg-primary) 88%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:sticky;top:0}.resume-page .resume-header-inner,.resume-page .resume-footer{width:min(calc(100% - 32px), var(--resume-content-width));margin-inline:auto}.resume-page .resume-header-inner{align-items:center;min-height:68px;display:flex}@media (max-width:860px){.resume-page .resume-header-inner{min-height:64px;padding-block:10px}}.resume-page .resume-brand{color:var(--text-primary);font-size:1.05rem;font-weight:700;text-decoration:none}.resume-page .resume-eyebrow{color:var(--accent-primary);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px;font-size:.8rem;font-weight:700}.resume-page .resume-button{border:1px solid var(--accent-primary);background:var(--accent-primary);color:#07110a;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-weight:700;text-decoration:none;display:inline-flex}.resume-page .resume-skills{flex-wrap:wrap;align-content:flex-start;gap:10px;list-style:none;display:flex}.resume-page .resume-skills li{border:1px solid var(--glass-border);color:var(--text-secondary);font-family:var(--font-mono);border-radius:999px;padding:7px 10px;font-size:.75rem}.resume-page .resume-footer{color:var(--text-muted);padding-block:28px;font-size:.85rem}.resume-page :is(a,button):focus-visible{outline:3px solid var(--accent-secondary);outline-offset:3px}@media (hover:hover){.resume-page .resume-button{transition:transform .18s,border-color .18s}}@media (prefers-reduced-motion:reduce){.resume-page .resume-button{transition:none}}.resume-page .resume-main{width:min(calc(100% - 32px), var(--resume-content-width));margin-inline:auto;padding-block:clamp(40px,7vw,72px)}.resume-page .resume-intro{padding-bottom:40px}.resume-page .resume-intro h1{letter-spacing:-.04em;font-size:clamp(2.25rem,6vw,3.75rem);line-height:1.04}.resume-page .resume-title{color:var(--accent-secondary);margin-top:10px;font-size:clamp(1.1rem,2.4vw,1.4rem);font-weight:700}.resume-page .resume-contact{color:var(--text-secondary);font-family:var(--font-mono);flex-wrap:wrap;gap:6px 18px;margin-top:18px;font-size:.85rem;list-style:none;display:flex}.resume-page a{text-underline-offset:3px}.resume-page .resume-contact a,.resume-page .resume-certifications a{color:var(--text-primary)}.resume-page .resume-summary{max-width:720px;color:var(--text-secondary);margin-top:22px;font-size:1.05rem;line-height:1.7}.resume-page .resume-actions{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:28px;display:flex}.resume-page .resume-download{cursor:pointer;font-family:inherit;font-size:1rem}.resume-page .resume-download-status{color:var(--text-secondary);font-size:.9rem}.resume-page .resume-section{border-top:1px solid var(--glass-border);grid-template-columns:180px minmax(0,1fr);gap:32px;padding-block:32px;display:grid}.resume-page .resume-section h2{color:var(--accent-primary);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:700;line-height:1.9}.resume-page .resume-entries{gap:28px;display:grid}.resume-page .resume-entry-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;display:flex}.resume-page .resume-entry h3{font-size:1.15rem}.resume-page .resume-period,.resume-page .resume-provider{color:var(--text-secondary);font-family:var(--font-mono);font-size:.8rem}.resume-page .resume-org{color:var(--text-secondary);margin-top:4px;font-weight:700}.resume-page .resume-entry ul{color:var(--text-secondary);gap:7px;margin-top:14px;padding-left:20px;line-height:1.55;display:grid}.resume-page .resume-certifications{gap:14px;line-height:1.5;list-style:none;display:grid}.resume-page .resume-certifications a{font-weight:700}.resume-page .resume-earned{color:var(--text-secondary)}.resume-page .resume-download[hidden]{display:none}.resume-page .resume-provider{display:block}@media (max-width:720px){.resume-page .resume-section{grid-template-columns:1fr;gap:16px}}@media print{html.resume-document{--bg-primary:#fff;--text-primary:#111;--text-secondary:#444;--accent-primary:#111;--accent-secondary:#333;--glass-border:#ccc}.resume-page{background:0 0}.resume-page .resume-skip-link,.resume-page .resume-header,.resume-page .resume-actions,.resume-page .resume-footer{display:none}.resume-page .resume-main{width:auto;padding:0}.resume-page a{text-decoration:none}.resume-page .resume-entry,.resume-page .resume-certifications li{break-inside:avoid}}
