/* Light studio theme: blue, mint and a little banking stationery. */
:root{--ink:#1b3443;--muted:#70828d;--line:#dfeae8;--green:#16856b;--cream:#f7faf9;--surface:#fff;--accent:#337bd1}body{position:relative;background:radial-gradient(ellipse at 8% 8%,#e5f3ed 0,transparent 32%),radial-gradient(ellipse at 100% 35%,#edf3fc 0,transparent 34%),#f7faf9}.header{background:#ffffffed;border-color:#e6eeea}.header .brand{color:#1c4152}.brand span{color:#42ac8e}.header nav a.active{color:#237cba;border-color:#40ae8f}.nav-contact{background:#267cc4;border:0;color:white;border-radius:7px;box-shadow:0 3px 9px #2e85c21a}.nav-contact:hover{background:#206cab}.theme-toggle{color:#5f8797;border-color:#dfebe6}main{position:relative;z-index:1}.hero{background:linear-gradient(110deg,#ffffff 10%,#f2f9f5 61%,#e4f2ed 100%);color:#183e50;border:1px solid #dbece3;box-shadow:0 8px 28px #24493705;grid-template-columns:1fr 285px;padding:28px 32px;min-height:310px;border-radius:17px;overflow:hidden}.hero:before{width:260px;height:260px;right:6px;top:0;border-color:#7ebda61f;box-shadow:0 0 0 28px #7ebda609,0 0 0 56px #7ebda606}.hero:after{content:'';position:absolute;width:200px;height:5px;left:0;top:0;background:linear-gradient(90deg,#2e83d3 55%,#47b18c 55%);border-radius:0 0 4px 0}.hero h1{font-size:37px;letter-spacing:-1.4px;color:#143f51}.hero .eyebrow{color:#438e78;font-size:8px}.hero .status-dot{background:#49b18e}.hero .profile-role{color:#517c85;font-size:14px}.hero .hero-intro{color:#72868b;max-width:510px}.hero .primary{background:#2c82ce;color:white;font-weight:600;box-shadow:0 4px 9px #2b83c61b}.hero .primary:hover{background:#236eaf}.hero .secondary{background:#fff;color:#46816e;border-color:#cde2d8}.hero .secondary:hover{background:#f2fbf6}.hero-highlights span{color:#578476;background:#eaf5ee;border-color:#dbebdf}.hero .hero-location{color:#8ba298}.portrait-area{position:relative;min-height:235px;margin:0;isolation:isolate;gap:11px;justify-content:flex-start;padding-top:17px}.portrait-frame{position:relative;z-index:2;width:119px;height:119px;border:5px solid white;box-shadow:0 0 0 1px #bbd9cc,0 7px 17px #34735912}.portrait-status{position:relative;z-index:3;background:#fff;color:#5b8878;border:1px solid #d9e9e1;font-size:7px;padding:4px 9px;box-shadow:0 3px 9px #40725c07}.portrait-status .status-dot{background:#49b48e}.hero-stationery{position:absolute;inset:0;z-index:-1}.hero-stationery img{position:absolute;filter:drop-shadow(0 8px 9px #2b645d12)}.scene-card{width:159px;bottom:0;left:52px;--rotate:-9deg;z-index:1}.scene-ledger{width:111px;top:40px;right:-9px;--rotate:13deg;z-index:0;opacity:.9}.scene-paper{width:64px;top:22px;left:-3px;--rotate:-14deg;opacity:.93}.scene-spark{position:absolute;color:#6db695;font-size:21px;font-weight:400;line-height:1}.spark-one{top:1px;right:33px}.spark-two{left:12px;bottom:29px;color:#6eadd4;font-size:25px}.bank-strip a{border:1px solid transparent}.bank-strip a:hover{border-color:#d7e8df;background:white}.bank-strip>span{color:#90a497}.bank-strip strong{color:#5b7c6b}.about{border-color:#e0eae4;box-shadow:0 3px 18px #335e4003}.about .eyebrow,.section-heading .eyebrow,.education .eyebrow{color:#4b9e81}.text-link{color:#2a8c72}.about h2{color:#234c55}.section-heading h2{color:var(--ink)}.experience-card{border-color:#e3eae7;box-shadow:0 3px 13px #263e4503}.experience-card:hover{border-color:#b7d6c8;box-shadow:0 7px 18px #2956480b}.standard .bank-panel{background:linear-gradient(125deg,#edf5fe,#edf9f0);border-left-color:#378dd0;position:relative}.standard .bank-panel:after{content:'';position:absolute;left:0;bottom:0;width:4px;height:45%;background:#54b57a}.tags span{background:#f1f7f3;color:#779486}.current-badge{background:#e9f7eb;color:#508b63}.role-details summary{color:#63879a}.role-details[open] summary>span{background:#edf7f0;color:#59957b}.expertise-grid article{border-color:#e3ebe6;border-top-color:#69b696;background:linear-gradient(130deg,#fff,#f8fcf9)}.expertise-grid article:nth-child(2){border-top-color:#71a6d8;background:linear-gradient(130deg,#fff,#f6faff)}.expertise-grid article:nth-child(3){border-top-color:#d1ad7b;background:linear-gradient(130deg,#fff,#fffcf6)}.skill-icon{background:#e8f5ee;color:#5aa789}.skill-icon svg{width:21px;height:21px}.expertise-grid article:nth-child(2) .skill-icon{background:#edf5fc;color:#679bc8}.expertise-grid article:nth-child(3) .skill-icon{background:#fbf3e7;color:#c39b62}.expertise-grid article>div{color:#85a291}.education{position:relative}.education-list{position:relative}.education-paper{position:absolute;width:48px;left:-63px;top:50px;transform:rotate(-13deg);opacity:.55;z-index:-1}.education-icon{color:#79ab91}.contact{background:linear-gradient(110deg,#eff8f2,#edf5fd);border-color:#d7e8df;color:#23485a;box-shadow:0 3px 14px #2e655009}.contact .eyebrow{color:#64a183}.contact h2{color:#254d59}.contact p{color:#7c968c}.contact .light{background:#2a7dba;color:white}.contact .light:hover{background:#226b9f}.contact-cv{color:#678a7b;border-color:#c7ded1;background:#ffffff50}.draft-bar{background:#eef4ef;color:#8aa194}.page-progress{background:linear-gradient(90deg,#2d83d2,#60b484)}.scroll-decor{position:absolute;inset:70px 0 0;overflow:hidden;pointer-events:none;z-index:0;opacity:.4}.scroll-piece{transform:translate3d(0,var(--fall,0px),0) rotate(var(--rotate,0deg));will-change:transform;pointer-events:none}.scroll-decor img{position:absolute;filter:drop-shadow(0 5px 9px #5689760b)}.piece-a{width:80px;left:max(6px,calc(50% - 610px));top:340px;--rotate:-17deg;opacity:.62}.piece-b{width:55px;right:max(7px,calc(50% - 585px));top:520px;--rotate:16deg}.piece-c{width:79px;left:max(7px,calc(50% - 605px));top:880px;--rotate:-12deg;opacity:.8}.piece-d{width:45px;right:max(5px,calc(50% - 589px));top:1180px;--rotate:19deg}.piece-e{width:71px;left:max(5px,calc(50% - 600px));top:1530px;--rotate:16deg;opacity:.6}.hero-copy{position:relative;z-index:4}
html[data-theme=dark]{--ink:#dbeae4;--muted:#9bb2a7;--line:#2c453b;--cream:#14251f;--surface:#1d3029}html[data-theme=dark] body{background:radial-gradient(ellipse at 5% 0%,#213d31,transparent 40%),#14251f}html[data-theme=dark] .header{background:#14271fea}html[data-theme=dark] .hero{background:linear-gradient(110deg,#eff8f1,#e1f1eb);color:#234958}html[data-theme=dark] .hero h1{color:#194653}html[data-theme=dark] .hero .hero-intro{color:#68867b}html[data-theme=dark] .hero .profile-role{color:#4f7d6d}html[data-theme=dark] .about h2{color:#c8e0d6}html[data-theme=dark] .expertise-grid article{background:var(--surface)}html[data-theme=dark] .contact{background:linear-gradient(110deg,#213d32,#263e45)}html[data-theme=dark] .contact h2{color:#c5e0d4}html[data-theme=dark] .contact p{color:#96b8a8}html[data-theme=dark] .tags span{background:#2a4237;color:#9fbdaf}html[data-theme=dark] .draft-bar{background:#112019}html[data-theme=dark] .bank-strip strong{color:#a8c6b7}html[data-theme=dark] .scroll-decor{opacity:.13}
@media(max-width:900px){.hero{grid-template-columns:1fr 225px;gap:20px}.scene-ledger{width:90px;right:-8px}.scene-card{width:144px;left:37px}.scene-paper{left:-10px;width:55px}.hero h1{font-size:32px}.piece-a,.piece-c,.piece-e{left:-27px}.piece-b,.piece-d{right:-15px}.scroll-decor{opacity:.25}.education-paper{display:none}}
@media(max-width:720px){.hero{grid-template-columns:1fr 95px;padding:20px;gap:12px;min-height:0;border-radius:13px}.hero h1{font-size:26px;letter-spacing:-1px}.hero .profile-role{font-size:11px;line-height:1.6}.hero .hero-intro{font-size:10px}.hero .eyebrow{font-size:6px;letter-spacing:.65px}.hero .hero-location{font-size:8px}.portrait-area{min-height:180px;padding-top:24px;align-self:start;gap:8px}.portrait-frame{width:79px;height:79px;border-width:3px}.portrait-status{font-size:5.5px;gap:3px;padding:3px 5px}.scene-card{width:87px;left:6px;bottom:5px;--rotate:-10deg}.scene-ledger{width:53px;top:92px;right:-16px;--rotate:14deg}.scene-paper{width:33px;left:-12px;top:4px;--rotate:-17deg}.spark-one{right:-4px;top:10px;font-size:14px}.spark-two{left:-7px;bottom:26px;font-size:14px}.hero-highlights span{font-size:6.5px}.hero:before{width:160px;height:160px;right:-25px;top:0;box-shadow:0 0 0 20px #7ebda609}.about{padding:17px}.scroll-decor{opacity:.34}.piece-a{width:42px;left:-15px;top:425px}.piece-b{width:30px;right:-10px;top:700px}.piece-c{width:44px;left:-19px;top:1090px}.piece-d{width:29px;right:-10px;top:1450px}.piece-e{display:none}.bank-strip a{padding:6px}.contact{padding:19px}}
@media(prefers-reduced-motion:reduce){.scroll-piece{transform:rotate(var(--rotate,0deg))!important;will-change:auto}.details-body{animation:none}}
@media print{.scroll-decor,.hero-stationery,.education-paper{display:none!important}.hero{background:white!important;color:#234958!important;border:0;min-height:0;grid-template-columns:1fr 120px}.hero h1{color:#234958!important}.portrait-area{min-height:0;padding-top:0}.hero:after{display:none}.expertise-grid article{background:white!important}.contact{display:none!important}}

/* Readable typography and a clear, larger profile portrait. */
body{font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}
h1,h2,h3{font-family:Manrope,sans-serif}
.header nav{font-size:14px}.nav-contact{font-size:13px;padding:9px 15px}
.hero{grid-template-columns:minmax(0,1fr) 280px;padding:32px;gap:28px;min-height:340px}
.hero h1{font-size:42px;font-weight:750;letter-spacing:-1.5px}
.hero .eyebrow,.eyebrow,.about .eyebrow,.section-heading .eyebrow,.education .eyebrow{font-size:11px;letter-spacing:1.2px}
.hero .profile-role{font-size:18px;line-height:1.5;margin-top:10px}
.hero .hero-intro{font-size:16px;color:#526d76;line-height:1.7}
.button{font-size:14px;padding:10px 16px}.hero-actions{flex-wrap:wrap}
.hero-highlights span{font-size:11px;padding:4px 9px}
.hero .hero-location{font-size:12px;color:#617c71;flex-wrap:wrap}
.portrait-area{min-height:0;padding:0;margin:0;align-self:center;gap:16px;justify-content:center}
.portrait-frame{width:230px;height:230px;border-width:6px;box-shadow:0 0 0 1px #bbd9cc,0 10px 25px #34735912}
.portrait-status{font-size:12px;padding:6px 12px;gap:7px}
.about{margin-top:22px;padding:24px;grid-template-columns:220px 1fr}
h2,.about h2{font-size:26px;font-weight:700;letter-spacing:-.7px}
.about-copy p{font-size:16px;line-height:1.7}.text-link{font-size:14px}
.section-heading>p{font-size:13px}.role-content{padding:20px 24px}
.role-content h3{font-size:22px;font-weight:700}.role-content h3 small{font-size:11px}
.role-category{font-size:10px;letter-spacing:1px}.current-badge,.past-badge{font-size:11px}
.role-bank{font-size:14px}.role-details summary{font-size:14px;padding:8px 0}
.role-content li{font-size:15px;line-height:1.7;margin:5px 0}.tags span{font-size:11px;padding:3px 8px}
.sample-note{font-size:12px}.expertise-grid article{padding:20px}
.expertise-grid h3{font-size:17px;font-weight:700}.expertise-grid p{font-size:15px}
.expertise-grid article>div{font-size:11px}.skill-number{font-size:11px}
.education{grid-template-columns:220px 1fr}.education-intro{font-size:15px}.demo-pill{font-size:11px}
.education-list h3{font-size:16px}.education-list p{font-size:13px}
.degree-level{font-size:10px}.education-list article div>span:last-child{font-size:12px}
.contact h2{font-size:28px}.contact .eyebrow{font-size:10px}.contact p{font-size:15px;color:#55756a}
.contact-cv{font-size:13px}footer>span,footer>a:last-child{font-size:12px}.draft-bar{font-size:10px}
dialog p{font-size:16px}.dialog-note{font-size:13px!important}
@media(max-width:900px){.hero{grid-template-columns:minmax(0,1fr) 220px;padding:26px;gap:22px}.hero h1{font-size:36px}.portrait-frame{width:200px;height:200px}.education{grid-template-columns:1fr}.about{grid-template-columns:190px 1fr}.contact-left{grid-template-columns:1fr auto}.contact-cv{grid-column:2;grid-row:4;margin-top:8px}}
@media(max-width:720px){
 .header nav{font-size:14px;flex-wrap:wrap}.nav-contact{font-size:12px}.theme-toggle{margin-left:0}
 .hero{grid-template-columns:1fr;gap:22px;padding:24px 22px}
 .portrait-area{grid-column:1;grid-row:1;align-self:center;padding:0;gap:12px}
 .portrait-frame{width:190px;height:190px;border-width:5px}.portrait-status{font-size:12px;padding:5px 12px;gap:7px}
 .hero h1{font-size:34px;letter-spacing:-1.2px}.hero .profile-role{font-size:17px}
 .hero .eyebrow{font-size:10px;letter-spacing:.8px}.hero .hero-intro{font-size:16px}
 .hero .hero-location{font-size:12px}.hero-highlights span{font-size:11px}
 .button{font-size:14px;padding:10px 13px}.hero-actions{gap:8px}
 .about{grid-template-columns:1fr;padding:20px;margin-top:18px;gap:12px}
 h2,.about h2{font-size:25px}.about-copy p{font-size:16px}
 .section-heading{align-items:end;gap:12px}.section-heading>p{font-size:12px}
 .experience-card{grid-template-columns:70px minmax(0,1fr)}.bank-panel{padding:25px 8px;align-items:start}
 .bank-panel img{width:50px}.role-content{padding:16px 14px}.role-top{flex-wrap:wrap;gap:6px}
 .role-category{font-size:9px}.current-badge,.past-badge{font-size:10px}
 .role-content h3{font-size:20px}.role-content h3 small{display:block;margin-left:0;font-size:11px}
 .role-bank{font-size:13px}.role-bank span{margin-left:3px}.role-content li{font-size:14px}
 .role-details summary{font-size:13px}.tags span{font-size:10px}.sample-note{font-size:11px}
 .expertise-grid article{padding:18px 18px 18px 62px}.skill-icon{left:17px;top:19px}
 .expertise-grid h3{font-size:17px}.expertise-grid p{font-size:15px}.expertise-grid article>div{font-size:11px}
 .education{grid-template-columns:1fr}.education-list{grid-template-columns:1fr}
 .education-list article{padding:18px}.education-list h3{font-size:17px}.education-list p{font-size:14px}
 .education-list article div>span:last-child{font-size:12px}.degree-level{font-size:10px}
 .contact{padding:22px}.contact-left{grid-template-columns:auto 1fr}.contact h2{font-size:28px}
 .contact p{font-size:15px}.contact-cv{grid-column:2;grid-row:4;margin-top:14px;font-size:13px}
 footer{flex-wrap:wrap}footer>span{max-width:none;font-size:11px}.draft-bar{font-size:10px}
}
@media print{body{font-size:12px}.hero{grid-template-columns:1fr 130px;min-height:0;padding:16px}.portrait-area{grid-column:2;grid-row:1}.portrait-frame{width:115px;height:115px}.portrait-status{font-size:9px}.hero h1{font-size:28px}.hero .hero-intro,.about-copy p,.role-content li{font-size:12px}.about{margin-top:10px}.education-list{grid-template-columns:1fr 1fr}}

/* Background-free portrait blends into the mint cover. */
.hero .portrait-area{position:relative;gap:0;align-self:stretch;justify-content:center}
.hero .portrait-frame{width:280px;height:330px;max-width:100%;border:0;border-radius:0;overflow:visible;box-shadow:none;background:transparent;mask-image:linear-gradient(to bottom,#000 0%,#000 78%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 78%,transparent 100%)}
.hero .portrait-frame img{object-fit:contain;object-position:center bottom;filter:none}
.hero .portrait-status{margin-top:-10px}
@media(max-width:900px){.hero .portrait-frame{width:230px;height:290px}}
@media(max-width:720px){.hero .portrait-area{align-self:center;gap:0}.hero .portrait-frame{width:240px;height:280px}.hero .portrait-status{margin-top:-8px}}
@media print{.hero .portrait-frame{width:130px;height:160px}}
.hero:before{display:none}
