
.spj-resume .resume-header{padding:54px 0 30px}
.spj-resume .resume-layout{margin-top:32px}
.spj-resume .resume-content{max-width:none}
.spj-resume .resume-content h2{font-size:32px;line-height:1.25;margin:0 0 30px}
.spj-resume .resume-job{padding:26px 0;border-top:1px solid var(--line)}
.spj-resume .resume-content h3{font:500 26px/1.35 "Playfair Display",Georgia,serif;letter-spacing:-.4px;margin:0 0 8px;overflow-wrap:anywhere}
.spj-resume .resume-company{font-size:17px;font-weight:500;color:var(--muted);margin:0 0 8px}
.spj-resume .resume-period{font-size:12px;color:var(--muted);margin:0 0 16px}
.spj-resume .resume-content ul{padding-left:22px;margin:16px 0;font-size:16px;line-height:1.8;max-width:70ch}
.spj-resume .resume-content li{padding-left:4px;margin-bottom:8px}
.spj-resume .resume-original{font-size:12px;color:var(--muted);margin:16px 0}
.spj-resume .resume-original>summary{min-height:44px;padding:10px 0;cursor:pointer}
.spj-resume .resume-earlier{border-top:1px solid var(--control);margin-top:20px}
.spj-resume .resume-earlier>summary{font:500 25px/1.4 "Playfair Display",Georgia,serif;padding:24px 0;cursor:pointer}
.spj-resume .resume-section{padding-top:32px;margin-top:30px;border-top:1px solid var(--control)}
.spj-resume .resume-skill-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px}
.spj-resume .resume-skill-grid h3{font-size:22px;margin-top:12px}
.spj-resume .resume-skill-grid ul{font-size:14px;margin-top:12px}
.spj-resume .resume-credential{margin-bottom:28px}
.spj-resume .resume-credential p{font-size:16px;line-height:1.7;margin-bottom:8px}
.spj-resume .resume-credential h3{margin-top:26px}
.spj-resume .resume-summary-note{font-size:12px;line-height:1.7;color:var(--muted);margin:-12px 0 24px;max-width:65ch}
.spj-resume .resume-language-proficiency{font-size:16px}
.spj-resume .resume-print{font-size:12px;white-space:normal;margin-top:12px}
.spj-resume .resume-content section{scroll-margin-top:24px}
@container spj-about(max-width:800px){
 .spj-resume .resume-skill-grid{grid-template-columns:1fr;gap:12px}
 .spj-resume .resume-content h2{font-size:29px}
 .spj-resume .resume-job h3{font-size:24px}
 .spj-resume .resume-company{font-size:16px}
 .spj-resume .resume-period{font-size:11px}
 .spj-resume .resume-content ul{font-size:15px}
 .spj-resume .resume-earlier>summary{font-size:23px}
}
@media (max-width: 800px) {
 .spj-resume .resume-header{padding-top:32px}
}
@media print {
 @page { margin: 12mm; }
 html, body, .spj-resume { background: #fff !important; color: #111 !important; }
 body .wp-site-blocks { max-width: none; padding: 0; }
 .spj-header, .spj-footer, #wpadminbar, .spj-resume .about-sidebar,
 .spj-resume .resume-summary-note, .spj-resume .resume-review, .spj-resume .about-actions,
 .spj-resume .resume-concise, .spj-resume summary { display: none !important; }

 .spj-resume { font-size: 10pt; line-height: 1.3; }
 .spj-resume .about-layout { display: block; margin: 0; }
 .spj-resume .resume-header { padding: 0 0 8pt; }
 .spj-resume .resume-header .eyebrow { font-size: 8pt; }
 .spj-resume .resume-header > h1 { font-size: 23pt; margin-block: 4pt; }
 .spj-resume .resume-header .about-deck { font-size: 10pt; line-height: 1.35; max-width: none; }

 .spj-resume .resume-content h2 { font-size: 14pt; margin: 0 0 5pt; break-after: avoid; }
 .spj-resume .resume-content h3 { font-size: 11pt; line-height: 1.25; margin: 0 0 2pt; break-after: avoid; }
 .spj-resume .resume-job { padding: 5pt 0; break-inside: avoid; }
 .spj-resume .resume-company { font-size: 10pt; margin: 0 0 2pt; }
 .spj-resume .resume-period { font-size: 8.5pt; margin: 0 0 3pt; }
 .spj-resume .resume-content ul { max-width: none; padding-inline-start: 13pt; margin: 3pt 0 0; font-size: 9.5pt; line-height: 1.3; }
 .spj-resume .resume-content li { padding-inline-start: 0; margin-bottom: 2pt; }
 .spj-resume .resume-original { margin: 0; }
 .spj-resume .resume-earlier { columns: 2; column-gap: 16pt; margin-top: 4pt; }

 .spj-resume .resume-section { padding-top: 6pt; margin-top: 7pt; }
 .spj-resume .resume-skill-grid { display: block; columns: 2; column-gap: 16pt; }
 .spj-resume .resume-skill-grid > * { break-inside: avoid; margin-bottom: 5pt; }
 .spj-resume .resume-credential { break-inside: avoid; margin-bottom: 5pt; }
 .spj-resume .resume-credential p, .spj-resume .resume-language-proficiency { font-size: 9.5pt; line-height: 1.3; margin: 0 0 3pt; }
}

.spj-resume .about-actions a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    font-size: 12px;
    font-weight: 500;
    color: var(--link-default);
    text-decoration: none;
    text-underline-offset: 4px;
}
.spj-resume .about-actions a:visited { color: var(--link-visited); }
.spj-resume .about-actions a:hover {
    color: var(--link-default);
    text-decoration: underline;
    text-decoration-thickness: 1px;
}
.spj-resume .about-actions a:focus-visible {
    color: var(--link-default);
    outline: 3px solid var(--link-default);
    outline-offset: 4px;
}
.spj-resume .about-actions a:active { color: var(--link-active); }

.wp-site-blocks > .wp-block-post-content:has(.spj-resume) { margin-block-start: 0; }
@media screen {
    .spj-resume .resume-header > h1 { margin-block: 20px; }
}
.spj-resume .resume-header > :is(.eyebrow, .about-deck) { margin-block: 0; }

@media screen and (max-width: 800px) {
    .spj-resume .resume-layout,
    .spj-resume .resume-skill-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .spj-resume .resume-layout > *,
    .spj-resume .resume-skill-grid > * {
        min-inline-size: 0;
    }
    .spj-resume {
        overflow-wrap: anywhere;
    }
}
