.resume-page{--ink:#1a1a1a;--accent:#c8440a;--steel:#3a4a5c;--pale:#f0ede8;--rule:#d4cfc8;font-family:var(--font-dm-sans,"DM Sans",sans-serif);color:var(--ink);padding-bottom:4rem}.dark .resume-page{--ink:#e8e4de;--accent:#e0651a;--steel:#8fa5c0;--pale:#1e1c18;--rule:#3a3530}.resume-eyebrow,.resume-section-label,.resume-sidebar-label{font-family:var(--font-dm-mono,"DM Mono",monospace);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.resume-eyebrow{margin-bottom:1rem}.resume-section-label{margin-bottom:1.5rem;padding-top:2.5rem;border-top:1px solid var(--rule)}.resume-name{font-family:var(--font-dm-serif,"DM Serif Display",serif);font-size:clamp(2.6rem,8vw,3.6rem);line-height:1.05;color:var(--ink);margin-bottom:1.25rem}.resume-summary{font-size:.95rem;color:var(--steel);font-weight:300;line-height:1.75;margin-bottom:1.5rem}.resume-contact{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;padding:1rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:.5rem}.resume-contact a,.resume-contact span{font-family:var(--font-dm-mono,"DM Mono",monospace);font-size:.75rem;color:var(--steel);text-decoration:none;letter-spacing:.04em;transition:color .2s}.resume-contact a:hover{color:var(--accent)}.resume-job{padding:1.75rem 0;border-bottom:1px solid var(--rule)}.resume-job-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.2rem}.resume-job-title{font-family:var(--font-dm-serif,"DM Serif Display",serif);font-size:1.15rem;color:var(--ink);line-height:1.25}.resume-job-dates{font-size:.68rem;color:var(--accent);white-space:nowrap;flex-shrink:0;padding-top:.25rem}.resume-job-company,.resume-job-dates{font-family:var(--font-dm-mono,"DM Mono",monospace);letter-spacing:.06em}.resume-job-company{font-size:.75rem;color:var(--steel);margin-bottom:.15rem}.resume-job-location{font-family:var(--font-dm-mono,"DM Mono",monospace);font-size:.68rem;color:var(--steel);opacity:.6;margin-bottom:.9rem}.resume-job-desc{font-size:.88rem;color:var(--steel);font-weight:300;font-style:italic;line-height:1.7;margin-bottom:.85rem}.resume-bullets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.resume-bullets li{font-size:.88rem;color:var(--ink);padding-left:1.1rem;position:relative;line-height:1.6;margin-bottom:0}.resume-bullets li:before{content:"";position:absolute;left:0;top:.6em;width:4px;height:4px;background:var(--accent);border-radius:50%}.resume-bullets.condensed li{color:var(--steel)}.resume-skill-group{margin-bottom:1.25rem}.resume-skill-group:last-child{margin-bottom:0}.resume-skill-name{font-family:var(--font-dm-mono,"DM Mono",monospace);font-size:.72rem;font-weight:500;color:var(--ink);letter-spacing:.06em;margin-bottom:.25rem}.resume-skill-items{font-size:.85rem;color:var(--steel);font-weight:300;line-height:1.65}.resume-cert-item,.resume-edu-item{margin-bottom:1.1rem}.resume-cert-item:last-child,.resume-edu-item:last-child{margin-bottom:0}.resume-cert-name,.resume-edu-degree{font-size:.9rem;font-weight:500;color:var(--ink);line-height:1.4;margin-bottom:.1rem}.resume-cert-source,.resume-edu-school{font-size:.85rem;color:var(--steel);font-weight:300}.resume-cert-year,.resume-edu-year{font-family:var(--font-dm-mono,"DM Mono",monospace);font-size:.68rem;color:var(--accent)}.resume-print-btn{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-dm-mono,"DM Mono",monospace);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:var(--pale);border:none;border-radius:2px;padding:.6rem 1rem;cursor:pointer;transition:background .2s;margin-bottom:2rem}.resume-print-btn:hover{background:var(--accent)}@media print{.resume-print-btn{display:none!important}.resume-page{padding-bottom:0}.resume-job{page-break-inside:avoid;-moz-column-break-inside:avoid;break-inside:avoid}.resume-bullets li{color:#1a1a1a!important}a{color:inherit!important;text-decoration:none!important}}