.scope{padding:1.2rem;border-left:3px solid var(--sienna);margin-bottom:2rem;line-height:1.7}
.achievement-list{padding-left:1.15rem}.achievement-list li{margin:.8rem 0;padding-left:.25rem}.achievement-list li::marker{color:var(--sienna)}
.company-context{padding:.8rem 2rem 0;color:var(--ink-m);font-size:.94rem;line-height:1.7;max-width:900px}
.swrap{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.srow{justify-content:flex-start;line-height:1.6}.srow>span{min-width:0;overflow-wrap:anywhere}
@media(max-width:900px){.swrap{grid-template-columns:1fr}.company-context{padding-left:1.5rem;padding-right:1.5rem}}
.project-card{max-width:850px;border-top:1px solid var(--ink-g);padding:1.6rem 0}.project-card h3{font-size:1.3rem;margin-bottom:.8rem}.project-card p{line-height:1.8;color:var(--ink-m)}
.cv-tools{position:fixed;bottom:16px;right:16px;z-index:1000;display:flex;flex-wrap:wrap;gap:8px;padding:10px;background:var(--sand-paper,#f4f1ea);border:1px solid var(--ink-g,#ccc);border-radius:12px;box-shadow:0 4px 20px #0002;max-width:calc(100vw - 32px)}
.cv-tools button,.cv-tools label{font:inherit;font-size:12px;border:1px solid #999;border-radius:6px;padding:9px 12px;background:transparent;color:inherit;cursor:pointer}.cv-tools small{flex-basis:100%;max-width:420px}.cv-tools input{display:none}
[contenteditable=true]{outline:1px dashed var(--sienna);outline-offset:4px;cursor:text}.cv-tools button:focus-visible{outline:3px solid var(--sienna)}
body{padding-bottom:80px}
@page{size:A4;margin:14mm}
@media print{
 :root{--sand:#fff;--sand-d:#fff;--sand-m:#eee;--sand-paper:#fff;--ink:#111;--ink-m:#333;--ink-l:#555;--ink-g:#ddd;--sienna:#704020}
 *{animation:none!important;transition:none!important}body{background:#fff!important;color:#111!important;padding:0;font-size:10pt}
 .nav,.cv-tools,.hero-bg,.hero-line,.dots,.ccta,.footer,.sr{display:none!important}
 .reveal{opacity:1!important;transform:none!important}.hero{padding:0!important;min-height:0!important;height:auto!important}.hero-name{font-size:30pt!important;line-height:1!important;margin:6pt 0!important}.hero-name br{display:none}.hero-name em{margin-left:8pt}
 .hero-eye{margin:0!important;font-size:8pt!important}.hero-foot{display:block!important;margin:0!important}.hero-role{max-width:none!important;font-size:11pt!important;line-height:1.45!important}.hero-meta{margin:6pt 0!important;gap:4pt!important;font-size:8pt!important}
 .section{padding:12pt 0 0!important;page-break-inside:auto!important}.sh{margin-bottom:8pt!important;gap:8pt!important}.st{font-size:16pt!important}.sn{font-size:8pt!important}
 .ritem,.pi{padding:7pt 0!important;gap:10pt!important;grid-template-columns:105pt 1fr!important;break-inside:avoid}.rperiod{font-size:8pt!important}.swrap{gap:15pt!important}.tags{margin-top:4pt!important;gap:3pt!important}.ec{padding:7pt!important}.section-contact{margin:0!important}
 #about{display:none}.scope{margin:0 0 8pt!important;padding:6pt!important;font-size:9pt!important}
 .cblock,.pblock,.project-card{box-shadow:none!important;background:none!important;border-radius:0!important;margin-bottom:8pt!important;break-inside:auto}
 .chdr{padding:4pt 0!important}.cname{font-size:14pt!important}.cdur{font-size:8pt!important}.rlist{padding:0!important}.role{padding:7pt 0!important}.rtitle,.ptitle{font-size:11pt!important}.rdesc,.pdesc,.project-card p{font-size:9pt!important;line-height:1.45!important;margin:4pt 0!important}
 .rhdr,h2,h3,h4{break-after:avoid}.project-card{padding:7pt 0!important;break-inside:avoid}.project-card h3{font-size:11pt!important;margin:0!important}.tag{font-size:7pt!important;padding:2pt 4pt!important}.rtags{gap:3pt!important;margin-top:4pt!important}
 .skills-grid{gap:10pt!important}.srow{font-size:9pt!important;padding:3pt 0!important}.cwrap{display:block!important}.clinks{display:flex!important;flex-wrap:wrap;gap:4pt 14pt!important}.clnk{padding:2pt!important;border:0!important;min-height:0!important}.clbl{display:none}.cval{font-size:8pt!important}#contact{padding-top:8pt!important}
 [contenteditable]{outline:none!important}a{color:inherit!important;text-decoration:none!important}
}

/* Compact first screen on mobile; keep the full-height desktop hero. */
@media screen and (max-width: 960px) {
 .hero { min-height: 0; justify-content: flex-start; padding-top: 6.5rem; }
}
@media screen and (max-width: 520px) {
 .hero { padding-top: 6rem; }
}
