/* Styles scoped to resume.php;
 safe to include alongside assets/css/style.css. */
 .resume {
     color: var(--text);
}
 .resume-width {
     max-width: 920px;
}
 .resume-intro {
     padding-block: clamp(2.5rem, 6vw, 5rem);
     border-bottom: 1px solid var(--line);
}
 .resume-intro h1 {
     margin: .45rem 0 .7rem;
}
 .resume-role {
     font-size: clamp(1.4rem, 3vw, 2rem);
     font-weight: 650;
     margin: 0 0 .3rem;
}
 .resume-subtitle {
     font-size: 1.1rem;
     margin: 0 0 .65rem;
}
 .resume-meta {
     color: var(--muted, var(--text));
     font-size: .92rem;
}
 .resume-actions {
     display: flex;
     gap: .7rem;
     flex-wrap: wrap;
     margin: 1.5rem 0 .5rem;
}
 .resume-fineprint {
     font-size: .83rem;
     opacity: .72;
     line-height: 1.6;
     margin-top: .8rem;
}
 .resume-section {
     padding-block: 2.5rem;
     border-bottom: 1px solid var(--line);
}
 .resume-section h2 {
     margin: 0 0 1.5rem;
     padding-bottom: .7rem;
     border-bottom: 1px solid var(--line);
}
 .resume-section p, .resume-section li {
     line-height: 1.78;
}
 .resume-section p {
     margin: .75rem 0;
}
 .resume-section ul {
     padding-left: 1.4rem;
     margin: .8rem 0 0;
}
 .resume-section li + li {
     margin-top: .45rem;
}
 .resume-skills {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     gap: .6rem;
}
 .resume-skills span {
     padding: .42rem .8rem;
     border: 1px solid var(--line);
     border-radius: 6px;
     font-size: .9rem;
}
 .resume-entry {
     margin: 0 0 2.65rem;
}
 .resume-entry:last-child {
     margin-bottom: 0;
}
 .resume-entry-heading {
     display: flex;
     justify-content: space-between;
     align-items: baseline;
     gap: 1rem;
}
 .resume-entry-heading h3 {
     margin: 0;
     font-size: 1.24rem;
}
 .resume-company {
     margin: .25rem 0 .65rem !important;
     opacity: .82;
}
 .resume-dates {
     white-space: nowrap;
     font-size: .92rem;
     opacity: .72;
}
 .resume-patent {
     padding: 1.2rem 0;
     border-bottom: 1px solid var(--line);
}
 .resume-patent:last-child {
     border-bottom: 0;
}
 .resume-patent h3 {
     margin: 0 0 .35rem;
     font-size: 1.12rem;
}
 .resume-patent p {
     margin: .3rem 0;
}
 .resume-references {
     display: grid;
     grid-template-columns: repeat(2,minmax(0,1fr));
     gap: 1rem;
     margin-top: 1.3rem;
}
 .resume-references blockquote {
     margin: 0;
     padding: 1.3rem;
     border: 1px solid var(--line);
     border-radius: 10px;
}
 .resume-references blockquote p {
     margin-top: 0;
     font-size: .95rem;
}
 .resume-references blockquote footer {
     font-size: .85rem;
     font-weight: 650;
     opacity: .8;
}
 .resume-end {
     border: 0;
     padding-bottom: 4rem;
}
 .resume-end .btn {
     display: inline-flex;
     margin-top: .5rem;
}
 @media (max-width: 650px) {
     .resume-entry-heading {
         display: block;
    }
     .resume-dates {
         display: block;
         margin-bottom: .6rem;
    }
     .resume-references {
         grid-template-columns: 1fr;
    }
}
 @media print {
     .resume-intro {
         padding-block: 1rem;
    }
     .resume-actions, .resume-end .btn {
         display: none;
    }
     .resume-section {
         break-inside: auto;
         padding-block: 1.2rem;
    }
     .resume-entry, .resume-patent, .resume-references blockquote {
         break-inside: avoid;
    }
}
