.resume-page{--resume-ink:#171717;--resume-muted:#6f6f6f;--resume-gold:#8b6800;--resume-yellow:#f5ca45;--resume-cream:#fbf7eb;--resume-line:#e3e3e3;--ease-out:cubic-bezier(.2,.75,.2,1);background:#fff;color:var(--resume-ink)}
@media(prefers-reduced-motion:no-preference){:root:has(body.resume-page){scroll-behavior:smooth}}
:root:has(body.resume-page){scroll-padding-top:4rem}
.resume-wrap{width:min(100% - 4rem,76rem);margin-inline:auto}
.resume-page h1,.resume-page h2,.resume-page h3,.resume-page p{margin-top:0}
.resume-page h2{font-size:clamp(2.3rem,4.3vw,3.9rem);line-height:1.02;letter-spacing:-.055em;font-weight:550;text-wrap:balance}

/* Reading progress */
.read-progress{position:fixed;inset:0 0 auto;height:3px;z-index:30;pointer-events:none}
.read-progress span{display:block;height:100%;background:var(--resume-yellow);transform-origin:0 50%;transform:scaleX(var(--read-progress,0))}

/* Hero */
.resume-kicker,.section-index{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:650;color:var(--resume-gold);margin-bottom:1.6rem}
.resume-kicker{color:#777}.resume-kicker span{margin:0 .5rem;color:#c7c7c7}
.resume-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(19rem,.7fr);gap:clamp(3rem,6vw,6rem);align-items:center;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem)}
.resume-intro h1{font-size:clamp(3.6rem,7vw,6.9rem);font-weight:560;line-height:.95;letter-spacing:-.07em;margin:0 0 2.2rem}
.resume-intro h1 .line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.resume-intro h1 .line>span{display:inline-block}
.resume-intro h1 .accent-line{color:#9a6f0b}
.resume-summary{max-width:44rem;color:#4e4e4e;font-size:clamp(1.05rem,1.45vw,1.22rem);line-height:1.7;letter-spacing:-.015em;margin-bottom:2rem}
.resume-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem;margin-bottom:2rem}
.primary-action,.secondary-action{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.78rem 1.05rem;border:1px solid var(--resume-ink);border-radius:0;background:var(--resume-ink);color:#fff;font-size:.9rem;font-weight:620;transition:transform .2s,background .2s,color .2s,box-shadow .2s}
.primary-action{gap:2.5rem}.primary-action span{transition:transform .25s var(--ease-out)}
.primary-action:hover span{transform:translateY(3px)}
.secondary-action{appearance:none;background:#fff;color:var(--resume-ink)}
.primary-action:hover,.secondary-action:hover{transform:translateY(-2px);box-shadow:0 .35rem 0 var(--resume-yellow)}
.secondary-action:hover{background:var(--resume-cream)}
.contact-list{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;padding:0;margin:0;list-style:none;color:#747474;font-size:.85rem}
.contact-list li+li:before{content:"/";margin-right:1.25rem;color:#c3c3c3}
.contact-list a{color:#4f4f4f;background:linear-gradient(var(--resume-yellow),var(--resume-yellow)) 0 100%/100% 1px no-repeat;padding-bottom:.12rem;transition:background-size .25s}
.contact-list a:hover{background-size:100% 100%}

.proof-panel{position:relative;overflow:hidden;background:var(--resume-cream);border:1px solid #eadfae;padding:1.35rem;box-shadow:1.1rem 1.1rem 0 var(--resume-yellow)}
.proof-panel:before{content:"";position:absolute;inset:0 auto 0 -35%;width:24%;background:linear-gradient(90deg,transparent,#fff9,transparent);transform:skewX(-15deg);animation:proof-scan 6s ease-in-out infinite}
@keyframes proof-scan{0%,30%{left:-35%}65%,100%{left:125%}}
.proof-panel-head{position:relative;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d9cb96;padding-bottom:1rem;text-transform:uppercase;letter-spacing:.11em;font-size:.68rem;font-weight:700}
.proof-live{display:flex;align-items:center;gap:.4rem;color:#5d542e}
.proof-live i,.ai-status i{display:block;width:.45rem;height:.45rem;border-radius:50%;background:#8b7900;box-shadow:0 0 0 .24rem #dcd08d;animation:live-pulse 2.4s ease-in-out infinite}
@keyframes live-pulse{50%{box-shadow:0 0 0 .4rem #dcd08d00}}
.proof-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;margin:0}
.proof-grid div{padding:1.45rem 1rem 1.35rem 0;border-bottom:1px solid #d9cb96}
.proof-grid div:nth-child(odd){border-right:1px solid #d9cb96}
.proof-grid div:nth-child(even){padding-left:1rem}
.proof-grid dt{font-size:1rem;font-weight:600}
.proof-grid dt strong{display:block;font-size:clamp(2rem,3.2vw,2.9rem);line-height:1;letter-spacing:-.06em;margin-bottom:.25rem;font-variant-numeric:tabular-nums}
.proof-grid dd{margin:.3rem 0 0;color:#6a6347;font-size:.78rem;line-height:1.4}
.proof-note{position:relative;padding-top:1.1rem}
.proof-note span{display:block;color:#7d744f;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem;font-weight:700;margin-bottom:.35rem}
.proof-note p{margin:0;font-size:.88rem;line-height:1.55}

/* Section navigation */
.section-nav{position:sticky;top:0;z-index:20;background:#fffffff2;border-block:1px solid #ececec;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.section-nav .resume-wrap{position:relative}
.section-nav ol{display:flex;gap:clamp(1rem,3vw,2.5rem);list-style:none;margin:0;padding:0;overflow-x:auto;scrollbar-width:none}
.section-nav ol::-webkit-scrollbar{display:none}
.section-nav a{display:flex;align-items:baseline;gap:.45rem;padding:1.05rem 0;white-space:nowrap;color:#7a7a7a;font-size:.88rem;font-weight:560;transition:color .25s}
.section-nav a span{font-size:.66rem;letter-spacing:.08em;color:#b4b4b4;transition:color .25s}
.section-nav a:hover,.section-nav a.is-active{color:var(--resume-ink)}
.section-nav a.is-active span{color:var(--resume-gold)}
.section-nav-indicator{position:absolute;bottom:-1px;left:0;height:2px;width:var(--nav-w,0);background:var(--resume-yellow);transform:translateX(var(--nav-x,0));opacity:var(--nav-o,0);transition:transform .45s var(--ease-out),width .45s var(--ease-out),opacity .3s}

/* Shared section header */
.resume-section{padding:clamp(4.5rem,8vw,7rem) 0}
.section-head{position:relative;display:flex;justify-content:space-between;align-items:end;gap:1.5rem 3rem;padding-bottom:2rem;margin-bottom:clamp(2.5rem,5vw,3.5rem)}
.section-head:before,.section-head:after{content:"";position:absolute;left:0;bottom:0;transform-origin:0 50%}
.section-head:after{right:0;height:1px;background:var(--resume-line)}
.section-head:before{z-index:1;width:4.5rem;height:3px;bottom:-1px;background:var(--resume-yellow)}
.section-head h2{margin:0;max-width:18ch}
.section-head h2 span{display:inline-block}
.section-head .section-index{margin-bottom:1rem}
.section-note{color:var(--resume-muted);max-width:22rem;font-size:.93rem;line-height:1.65;margin:0}

/* Experience */
.experience-grid{display:grid;grid-template-columns:minmax(15rem,.55fr) minmax(0,1.45fr);gap:clamp(2.5rem,6vw,6rem);align-items:start}
.firm-card{position:sticky;top:5.5rem;border:1px solid var(--resume-line);padding:1.6rem;background:#fff}
.firm-label{text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;font-weight:700;color:var(--resume-gold);margin-bottom:1.1rem}
.firm-card h3{font-size:1.5rem;letter-spacing:-.04em;line-height:1.1;margin:0 0 .3rem}
.firm-meta{color:var(--resume-muted);font-size:.88rem;margin-bottom:1.3rem}
.firm-card dl{margin:0;border-top:1px solid var(--resume-line)}
.firm-card dl div{display:grid;grid-template-columns:5.2rem 1fr;gap:.75rem;padding:.7rem 0;border-bottom:1px solid var(--resume-line);font-size:.84rem}
.firm-card dt{color:#8a8a8a}.firm-card dd{margin:0;color:#333}
.career{position:relative;padding-left:3rem}
.career-rail{position:absolute;left:.42rem;top:.45rem;bottom:.5rem;width:1px;background:#e0e0e0;overflow:hidden}
.career-rail span{display:block;width:100%;height:100%;background:#bb8d00;transform-origin:50% 0;transform:scaleY(var(--career-progress,0))}
.career-entry,.career-earlier{position:relative;padding:0 0 clamp(3rem,6vw,4.5rem)}
.career-earlier{padding-bottom:0}
.career-marker{position:absolute;left:-3rem;top:.2rem;width:.9rem;height:.9rem;border-radius:50%;background:#fff;border:2px solid #c9c9c9;transition:border-color .4s,background .4s,box-shadow .4s,transform .4s var(--ease-out)}
.career-entry.is-reached .career-marker,.career-earlier.is-reached .career-marker{border-color:#9c7600;background:var(--resume-yellow);box-shadow:0 0 0 .42rem #fbf3d4;transform:scale(1.08)}
.career-date{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#83786a;margin-bottom:.6rem}
.career-entry h3{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.05;letter-spacing:-.05em;font-weight:560;margin-bottom:1rem}
.career-entry>p:not(.career-date){color:#5d5d5d;font-size:1.02rem;line-height:1.75;max-width:42rem;margin:0}
.career-status{display:inline-block;padding:.25rem .5rem;background:var(--resume-yellow);color:var(--resume-ink);font-size:.62rem;font-weight:700;letter-spacing:.08em}
.career-earlier-title{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#83786a;font-weight:600;margin:0 0 1rem}
.earlier-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.earlier-list li{display:flex;flex-direction:column;gap:.2rem;padding:1rem 1.1rem;border:1px solid var(--resume-line);transition:border-color .25s,transform .25s var(--ease-out)}
.earlier-list li:hover{border-color:#d7b85a;transform:translateY(-2px)}
.earlier-list span{font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--resume-gold)}
.earlier-list strong{font-size:1rem;letter-spacing:-.02em;margin-top:.35rem}
.earlier-list em{font-style:normal;font-size:.8rem;color:#777}

/* Scope & impact */
.scope-section{background:#fafafa;border-top:1px solid #efefef}
.scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.scope-card{background:#fff;border:1px solid var(--resume-line);padding:clamp(1.5rem,2.6vw,2.2rem);display:flex;flex-direction:column;transition:transform .3s var(--ease-out),box-shadow .3s}
.scope-card:hover{transform:translateY(-4px);box-shadow:0 1.3rem 2.7rem #0000000d}
.scope-top{display:flex;align-items:baseline;gap:.9rem;margin-bottom:1.6rem}
.scope-number{font-size:.72rem;color:#929292;font-variant-numeric:tabular-nums}
.scope-card .scope-tag{text-transform:uppercase;letter-spacing:.1em;color:#847b69;font-size:.66rem;font-weight:700;margin:0}
.scope-card h3{font-size:clamp(1.45rem,2.2vw,1.95rem);line-height:1.1;letter-spacing:-.045em;font-weight:560;margin:0 0 1rem;max-width:18ch}
.scope-card p,.scope-card li{color:#626262;line-height:1.7;font-size:.94rem}
.scope-card p{margin-bottom:0}
.scope-card-wide,.scope-card-economics{grid-column:span 2}
.scope-card-economics h3{max-width:26ch}
.scope-card-wide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 1fr;gap:0 2.5rem}
.scope-card-wide .scope-top{grid-column:1/-1}
.scope-card ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--resume-line);align-self:start}
.scope-card li{padding:.7rem 0;border-bottom:1px solid var(--resume-line);font-size:.9rem;line-height:1.55}
.scope-card li:before{content:"↳";color:#a77d00;margin-right:.55rem}
.scope-card-dark{background:#171717;color:#fff;border-color:#171717}
.scope-card-dark .scope-number{color:#9a9a9a}.scope-card-dark .scope-tag{color:#bdb8aa}.scope-card-dark p{color:#cfcfcf}
.scope-card-accent{background:var(--resume-yellow);border-color:#d7aa20}
.scope-card-accent .scope-number,.scope-card-accent .scope-tag{color:#6f570f}.scope-card-accent p{color:#3c351f}
.scope-result{margin-top:auto!important;padding-top:1.8rem}
.scope-result strong{display:block;color:var(--resume-yellow);font-size:2.3rem;letter-spacing:-.05em;line-height:1}
.scope-result span{display:block;margin-top:.4rem;color:#aaa;font-size:.78rem;line-height:1.45}
.flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:auto 0 0;padding:2rem 0 0;counter-reset:flow}
.flow li{position:relative;padding-top:1.4rem;font-size:.8rem;line-height:1.35;font-weight:600;color:#3d3d3d;counter-increment:flow;border:0}
.flow li:before{content:counter(flow,decimal-leading-zero);position:absolute;top:0;left:0;margin:0;font-size:.64rem;font-weight:700;letter-spacing:.08em;color:var(--resume-gold);background:#fff;padding-right:.5rem;z-index:1}
.flow li:after{content:"";position:absolute;top:.45rem;left:0;right:0;height:2px;background:#eee}
.flow li span{position:relative;display:block;padding-right:.8rem}
.flow li span:before{content:"";position:absolute;top:-.95rem;left:0;right:0;height:2px;background:var(--resume-yellow);transform-origin:0 50%;transform:scaleX(1)}

/* Independent AI systems */
.ai-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.ai-card{position:relative;border:1px solid var(--resume-line);padding:clamp(1.5rem,3vw,2.4rem);display:flex;flex-direction:column;background:linear-gradient(180deg,#fff,#fffdf6);transition:border-color .3s,transform .3s var(--ease-out),box-shadow .3s}
.ai-card:hover{border-color:#e2c25e;transform:translateY(-4px);box-shadow:0 1.3rem 2.7rem #0000000d}
.ai-status{display:flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.1em;font-size:.64rem;font-weight:700;color:#5d542e;margin-bottom:1.5rem}
.ai-card h3{font-size:clamp(1.5rem,2.4vw,2.1rem);letter-spacing:-.045em;line-height:1.1;font-weight:560;margin-bottom:.8rem}
.ai-card>p:not(.ai-status){color:#5f5f5f;line-height:1.7;margin-bottom:1.5rem}
.control-chips{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0 0 1.8rem}
.control-chips li{padding:.42rem .7rem;border:1px solid #e6dbb3;background:var(--resume-cream);font-size:.78rem;color:#4a4430}
.ai-link{margin-top:auto;align-self:flex-start;font-weight:650;font-size:.9rem;border-bottom:1px solid #b89a3a;padding-bottom:.15rem}
.ai-link span{display:inline-block;transition:transform .25s var(--ease-out)}
.ai-link:hover span,.close-links a:hover span{transform:translate(3px,-3px)}

/* Education & credentials */
.credentials-section{border-top:1px solid #efefef}
.credential-row{display:grid;grid-template-columns:11rem 1fr;gap:2rem;padding:1.8rem 1.4rem;border-bottom:1px solid #ddd;transition:background .3s}
.credential-row:hover{background:#fcfcfa}
.credential-year{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#797979;margin:.35rem 0 0}
.credential-row h3{font-size:1.35rem;letter-spacing:-.03em;margin:0 0 .35rem}
.credential-row div p{color:#555;margin-bottom:.2rem}
.credential-row div span{color:#868686;font-size:.85rem}
.certification-row{background:var(--resume-cream);border:1px solid #e8dfbd;margin-bottom:.4rem}
.certification-row:hover{background:var(--resume-cream)}
.certification-row .credential-year{color:var(--resume-gold);font-weight:650}

/* Skills */
.skills-section{background:#171717;color:#fff}
.skills-section .section-head:after{background:#3b3b3b}
.skills-section .section-index{color:var(--resume-yellow)}
.skill-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #3b3b3b;border-left:1px solid #3b3b3b}
.skill-groups article{padding:1.7rem;border-right:1px solid #3b3b3b;border-bottom:1px solid #3b3b3b;transition:background .3s}
.skill-groups article:hover{background:#1f1f1f}
.skill-groups h3{font-size:.95rem;margin:0 0 1.3rem;color:var(--resume-yellow);font-weight:620}
.skill-groups ul{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}
.skill-groups li{padding:.32rem .6rem;border:1px solid #3d3d3d;color:#c9c9c9;font-size:.8rem;line-height:1.35;transition:border-color .25s,color .25s}
.skill-groups article:hover li{border-color:#5a5237;color:#eee}

/* Close */
.resume-close{padding:clamp(4.5rem,9vw,7rem) 0;background:var(--resume-yellow)}
.resume-close .section-index{color:#6c5510}
.resume-close h2{font-size:clamp(2.8rem,6vw,5.6rem);max-width:13ch;margin-bottom:2.3rem}
.close-links{display:flex;flex-wrap:wrap;gap:1rem 2.5rem}
.close-links a{font-weight:650;border-bottom:1px solid #71601e;padding-bottom:.2rem}
.close-links a span{display:inline-block;transition:transform .25s var(--ease-out)}
.resume-footer{display:flex;justify-content:space-between;gap:1rem;padding-top:1.4rem;padding-bottom:1.4rem;color:#777;font-size:.78rem}

/* Motion (only when JavaScript runs and motion is allowed) */
.js [data-enter]{opacity:0;transform:translateY(1.2rem);transition:opacity .8s ease var(--enter-delay,0ms),transform .8s var(--ease-out) var(--enter-delay,0ms)}
.js .resume-intro h1 .line>span{transform:translateY(105%);transition:transform 1s var(--ease-out) var(--enter-delay,0ms)}
.js.is-loaded [data-enter]{opacity:1;transform:none}
.js.is-loaded .resume-intro h1 .line>span{transform:none}
.js [data-reveal]{opacity:0;transform:translateY(1.8rem);transition:opacity .7s ease var(--reveal-delay,0ms),transform .7s var(--ease-out) var(--reveal-delay,0ms)}
.js [data-reveal].is-visible{opacity:1;transform:none}
.js [data-reveal].is-settled{transition:transform .3s var(--ease-out),box-shadow .3s,border-color .3s,background .3s}
.js .scope-card.is-settled:hover,.js .ai-card.is-settled:hover{transform:translateY(-4px)}
.js .section-head:before,.js .section-head:after{transform:scaleX(0);transition:transform 1.1s var(--ease-out) .15s}
.js .section-head:before{transition-delay:.55s}
.js .section-head.is-visible:before,.js .section-head.is-visible:after{transform:scaleX(1)}
.js .flow li span:before{transform:scaleX(0);transition:transform .6s var(--ease-out) calc(var(--step,0) * 220ms + 350ms)}
.js .is-visible .flow li span:before{transform:scaleX(1)}
.js .control-chips li,.js .skill-groups li{opacity:0;transform:translateY(.5rem);transition:opacity .45s ease calc(var(--chip,0) * 60ms + 250ms),transform .45s var(--ease-out) calc(var(--chip,0) * 60ms + 250ms),border-color .25s,color .25s}
.js .is-visible .control-chips li,.js .skill-groups .is-visible li{opacity:1;transform:none}

@media(max-width:1000px){
  .resume-hero{grid-template-columns:1fr}
  .proof-panel{max-width:42rem}
  .experience-grid{grid-template-columns:1fr}
  .firm-card{position:static}
  .firm-card dl{display:grid;grid-template-columns:1fr 1fr;column-gap:1.5rem}
  .scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scope-card-accent{grid-column:span 2}
  .skill-groups{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .resume-wrap{width:calc(100% - 2.5rem)}
  .resume-hero{padding-top:3rem;padding-bottom:4rem;gap:3rem}
  .resume-intro h1{font-size:clamp(3rem,14.5vw,4.6rem)}
  .resume-summary{font-size:1rem}
  .resume-actions{align-items:stretch}
  .primary-action,.secondary-action{width:100%}
  .contact-list{display:grid;gap:.55rem}.contact-list li+li:before{display:none}
  .proof-panel{box-shadow:.65rem .65rem 0 var(--resume-yellow);padding:1rem}
  .proof-grid dt strong{font-size:2rem}
  .section-nav a{padding:.9rem 0;font-size:.84rem}
  .resume-section{padding:4rem 0}
  .section-head{display:block}
  .section-head .section-note{margin-top:1rem}
  .firm-card dl{display:block}
  .career{padding-left:2.25rem}.career-marker{left:-2.25rem}
  .earlier-list{grid-template-columns:1fr}
  .scope-grid,.ai-grid{grid-template-columns:1fr}
  .scope-card-wide,.scope-card-economics,.scope-card-accent{grid-column:auto}
  .scope-card-wide{display:flex}
  .scope-card-wide ul{margin-top:1.4rem}
  .flow{grid-template-columns:1fr 1fr;row-gap:1.2rem}
  .credential-row{grid-template-columns:1fr;gap:.5rem;padding:1.5rem 1rem}
  .skill-groups{grid-template-columns:1fr}
  .resume-footer{display:block}.resume-footer span{display:block}.resume-footer span+span{margin-top:.25rem}
}
@media(prefers-reduced-motion:reduce){
  .proof-panel:before{display:none}
  .proof-live i,.ai-status i{animation:none}
  .section-nav-indicator{transition:none}
}
@media print{
  .site-header,.read-progress,.section-nav,.resume-actions,.resume-close,.resume-footer{display:none!important}
  .js [data-enter],.js [data-reveal],.js .control-chips li,.js .skill-groups li,.js .resume-intro h1 .line>span,.js .section-head:before,.js .section-head:after,.js .flow li span:before{opacity:1!important;transform:none!important}
  .career-rail span{transform:none!important}
  *,*:before,*:after{transition:none!important;animation:none!important}
  .resume-wrap{width:100%}
  .resume-hero{display:block;padding:0 0 1.2rem}
  .resume-intro h1{font-size:2.6rem;margin-bottom:1rem}
  .resume-summary{font-size:.85rem;line-height:1.45}
  .contact-list{font-size:.75rem}
  .proof-panel{box-shadow:none;margin-top:1rem;padding:.8rem;break-inside:avoid}
  .proof-panel:before{display:none}
  .proof-grid{grid-template-columns:repeat(4,1fr)}
  .proof-grid div{padding:.5rem .6rem;border-right:1px solid #d9cb96;border-bottom:0}
  .proof-grid dt strong{font-size:1.4rem}
  .resume-section{padding:1.2rem 0;background:#fff!important;color:#171717!important}
  .section-head{display:block;padding-bottom:.6rem;margin-bottom:1rem}
  .section-head h2,.resume-page h2{font-size:1.7rem;max-width:none}
  .section-note{display:none}
  .experience-grid{display:block}
  .firm-card{position:static;padding:.8rem;margin-bottom:1rem}
  .firm-card dl{display:grid;grid-template-columns:repeat(4,1fr)}
  .firm-card dl div{display:block;font-size:.7rem}
  .career{padding-left:1.75rem}.career-marker{left:-1.75rem}
  .career-entry{padding-bottom:1rem;break-inside:avoid}
  .career-entry h3{font-size:1.3rem;margin-bottom:.3rem}
  .career-entry>p:not(.career-date){font-size:.76rem;line-height:1.4}
  .earlier-list{grid-template-columns:repeat(4,1fr);gap:.4rem}.earlier-list li{padding:.5rem}
  .scope-grid,.ai-grid{grid-template-columns:1fr 1fr;gap:.5rem}
  .scope-card,.ai-card{display:block;grid-column:auto!important;padding:.9rem;break-inside:avoid;background:#fff!important;color:#171717!important}
  .scope-card-wide,.scope-card-economics{grid-column:1/-1!important}
  .scope-top{margin-bottom:.5rem}
  .scope-card h3,.ai-card h3{font-size:1.1rem;margin-bottom:.4rem}
  .scope-card p,.scope-card li,.ai-card p{font-size:.7rem;line-height:1.4;color:#333!important}
  .scope-card ul{margin-top:.5rem}
  .scope-result{padding-top:.5rem!important}.scope-result strong{font-size:1.2rem;color:#171717}
  .flow{padding-top:.8rem}
  .control-chips{margin-bottom:.5rem}.control-chips li{font-size:.65rem;padding:.2rem .4rem}
  .ai-link{display:none}
  .credential-row{padding:.6rem 0;break-inside:avoid}
  .certification-row{padding:.6rem}
  .skills-section .section-index{color:var(--resume-gold)}
  .skill-groups{grid-template-columns:repeat(4,1fr);border-color:#aaa}
  .skill-groups article{padding:.6rem;border-color:#aaa}
  .skill-groups h3{color:#171717;margin-bottom:.35rem}
  .skill-groups li{color:#333;border-color:#bbb;font-size:.62rem;padding:.15rem .3rem}
}
