@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--paper:#f6f5ef;--ink:#132c37;--muted:#59676c;--line:#d6ddd5;--accent:#cde89a;--white:#fff;--font:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #729931;outline-offset:5px}a:hover{text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:600}::selection{background:var(--accent);color:var(--ink)}.wrap{max-width:1240px;margin:auto;width:calc(100% - 96px)}.skip{position:absolute;left:18px;top:-100px;z-index:10;background:var(--accent);padding:12px}.skip:focus{top:12px}.preview{height:32px;background:#e8ece2;color:#536354;font-size:10px;letter-spacing:1.6px;display:flex;align-items:center;justify-content:center;gap:16px}.preview span+span{letter-spacing:.3px;border-left:1px solid #b8c2ae;padding-left:16px}.header{height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.brand{display:flex;gap:14px;align-items:center;font-size:11px;line-height:1.45;font-weight:700;letter-spacing:1.5px}.brand-mark{font-family:var(--display);font-size:32px;font-weight:800;letter-spacing:-1px;line-height:1}.header nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:550}.header nav a:hover,.text-link:hover{color:#577525}.nav-contact{border-bottom:1px solid var(--ink);padding-bottom:7px}.nav-contact span{margin-left:16px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;padding:70px 0 74px;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:600;display:flex;align-items:center;gap:9px}.dot{display:inline-block;width:7px;height:7px;background:#728e39;border-radius:50%;flex-shrink:0}.hero h1{font-size:clamp(48px,5.2vw,76px);line-height:1.065;letter-spacing:-3.8px;margin:24px 0 26px;font-weight:600}.hero h1>span{position:relative;z-index:0}.hero h1>span::after{content:'';position:absolute;z-index:-1;left:1px;right:0;bottom:4px;height:17px;background:var(--accent)}.intro{font-size:16px;color:var(--muted);max-width:445px;line-height:1.8}.actions{display:flex;align-items:center;gap:28px;margin-top:30px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:15px 22px;font-weight:600;font-size:13px;min-height:52px;border-radius:2px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--ink);color:var(--paper)}.primary:hover{background:#294c59}.button span{font-size:20px;font-weight:400}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:5px;display:inline-flex;align-items:center;gap:18px;width:fit-content}.hero-proof{display:flex;gap:44px;margin-top:43px}.hero-proof>div{display:flex;flex-direction:column;gap:4px}.hero-proof strong{font-size:24px;font-family:var(--display);font-weight:650;line-height:1.2}.hero-proof span{font-size:11px;color:var(--muted)}.hero-art{background:var(--ink);color:var(--paper);border-radius:3px;overflow:hidden;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;min-width:0;max-height:600px}.art-top{display:flex;justify-content:space-between;padding:27px 30px 0;font-size:9px;letter-spacing:1.8px;color:#b9c6c5}.art-code{color:#91a6aa}.architecture{display:block;width:100%;height:auto;max-height:470px}.art-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #38505a;margin:0 30px;padding:21px 0 25px;font-size:11px;line-height:1.7;color:#b9c6c5;gap:25px}.art-bottom>span+span{font-size:27px;color:var(--accent)}.credentials{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.credentials .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:26px 0}.credentials span{font-size:9px;letter-spacing:1.5px;max-width:140px;color:var(--muted)}.credentials p{font-family:var(--display);font-size:14px;font-weight:600;white-space:nowrap}.section{padding-top:100px;padding-bottom:105px}.section-head{display:grid;grid-template-columns:.8fr 1.35fr 1fr;gap:32px;align-items:start}.section-head .eyebrow{padding-top:8px}.section h2{font-size:clamp(28px,3vw,42px);line-height:1.2;letter-spacing:-1.5px}.section-head>p:last-child{font-size:14px;color:var(--muted);line-height:1.8;padding-top:5px}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:60px}.expertise-grid article{border-top:1px solid #a7b4af;padding-top:21px}.section-number{font-size:11px;color:#6c7d73;font-weight:550}.expertise-grid h3{font-size:23px;line-height:1.35;letter-spacing:-.6px;margin:24px 0 18px}.expertise-grid p{font-size:14px;color:var(--muted);line-height:1.8}.tags{display:flex;flex-wrap:wrap;gap:7px;padding:0;list-style:none;margin:24px 0 0}.tags li{border:1px solid var(--line);border-radius:3px;padding:3px 9px;font-size:10px;color:#53615f}.work{background:var(--ink);color:var(--paper)}.work-heading{display:flex;justify-content:space-between;align-items:end;gap:24px}.work-heading .eyebrow{color:var(--accent);margin-bottom:20px}.light{color:var(--accent)}.light:hover{color:var(--white)}.work-intro{color:#adc1c3;font-size:14px;margin-top:20px;margin-bottom:42px}.work-item{border-top:1px solid #4a626a}.work-item:last-child{border-bottom:1px solid #4a626a}.work-item summary{list-style:none;display:grid;grid-template-columns:50px 1fr 45px;gap:25px;padding:33px 0;cursor:pointer;align-items:center}.work-item summary::-webkit-details-marker{display:none}.work-no{color:#9db2b6;font-size:12px;align-self:start;padding-top:4px}.work-context{display:block;font-size:9px;letter-spacing:1.8px;color:#b3c7c9;margin-bottom:12px}.work-title{display:block;font-family:var(--display);font-size:30px;line-height:1.25;letter-spacing:-.7px}.expand{border:1px solid #698189;border-radius:50%;width:40px;height:40px;position:relative}.expand::before,.expand::after{content:'';position:absolute;top:19px;left:13px;width:12px;height:1px;background:var(--accent)}.expand::after{transform:rotate(90deg)}details[open] .expand::after{transform:rotate(0)}.work-item summary:hover .expand{background:#2c4752}.work-detail{margin-left:75px;margin-bottom:34px;display:grid;grid-template-columns:.85fr 1.3fr;gap:60px}.work-lead{font-size:17px;color:var(--accent);line-height:1.8;max-width:310px}.work-detail ul{padding-left:17px;margin:0;color:#d0dcda;font-size:13px;line-height:1.9}.work-detail li+li{margin-top:8px}.work-tools{font-size:9px;letter-spacing:1px;color:#9eb4b8;margin-top:24px;line-height:2}.about{display:grid;grid-template-columns:1.1fr 1fr;gap:120px}.about .eyebrow{margin-bottom:24px}.about h2{margin-bottom:26px}.about>div>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);margin:0 0 16px}.certifications{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.certifications span{font-size:10px;border:1px solid #b7c4b1;padding:7px 11px;background:#eef0e5}.career .career-label{letter-spacing:1.2px;font-size:10px!important;margin-bottom:20px!important}.career article{border-top:1px solid var(--line);padding:21px 0}.career article>span{font-size:9px;letter-spacing:1px;color:var(--muted)}.career h3{font-size:18px;margin:6px 0 3px}.career article p{font-size:12px;color:var(--muted)}.career .text-link{margin-top:10px}.contact{background:var(--accent);padding:72px 0 77px}.contact-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.contact .eyebrow{color:#3c552e;margin-bottom:23px}.contact h2{font-size:clamp(37px,4.6vw,60px);line-height:1.1;letter-spacing:-2px}.contact p:last-child{font-size:14px;margin-top:24px;color:#3d5338;line-height:1.9}.contact-actions{display:flex;flex-direction:column;gap:24px;align-items:center;margin-right:30px}.contact-actions .button{min-width:255px}.footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:37px 0}.footer .brand-mark{font-size:27px}.footer .brand{font-size:9px;letter-spacing:1px}.footer small{font-size:9px;color:var(--muted);font-weight:400;letter-spacing:0}.footer p,.footer>a:last-child{font-size:10px;color:var(--muted)}.footer p span{margin:0 10px}
@media(min-width:1500px){.hero{gap:95px}.hero h1{font-size:80px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:35px}.hero h1{font-size:59px}.hero-art{max-height:560px}.section-head{grid-template-columns:1fr 1.7fr}.section-head>p:last-child{grid-column:2}.about{gap:65px}.credentials .wrap{flex-wrap:wrap;justify-content:center}.credentials span{max-width:none}.expertise-grid{gap:25px}.hero-proof{gap:30px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{height:auto;min-height:108px;flex-wrap:wrap;gap:18px;padding:20px 0}.brand-mark{font-size:28px}.header .brand{font-size:9px}.header nav{width:100%;justify-content:space-between;gap:10px;font-size:11px}.nav-contact{padding-bottom:3px}.nav-contact span{margin-left:3px}.hero{grid-template-columns:1fr;gap:40px;padding-top:40px;padding-bottom:40px}.hero h1{font-size:clamp(48px,10vw,72px);letter-spacing:-2.8px}.hero .eyebrow{font-size:9px;letter-spacing:1.05px}.hero h1>span::after{height:13px}.intro{font-size:15px;max-width:520px}.actions{gap:23px;margin-top:25px}.hero-proof{margin-top:31px;gap:45px}.hero-art{width:100%;max-width:530px;max-height:none;justify-self:center}.architecture{max-height:400px}.art-top{padding:23px 24px 0}.art-bottom{margin:0 24px}.credentials .wrap{gap:14px 25px;padding:23px 0}.credentials span{width:100%;text-align:center;font-size:9px}.credentials p{font-size:11px}.section{padding:65px 0}.section-head{grid-template-columns:1fr;gap:20px}.section-head>p:last-child{grid-column:auto;max-width:470px;padding:0}.section h2{font-size:34px;letter-spacing:-1px}.expertise-grid{grid-template-columns:1fr;gap:32px;margin-top:35px}.expertise-grid h3{margin-top:12px;font-size:23px}.expertise-grid h3 br{display:none}.tags{margin-top:18px}.work-heading{align-items:start;flex-direction:column;gap:22px}.work-heading .eyebrow{margin-bottom:20px}.work-intro{margin-bottom:30px}.work-item summary{grid-template-columns:25px 1fr 32px;gap:13px;padding:26px 0}.work-title{font-size:24px}.work-context{font-size:8px;letter-spacing:1px}.expand{width:32px;height:32px}.expand::before,.expand::after{top:15px;left:9px}.work-detail{margin-left:38px;grid-template-columns:1fr;gap:22px}.work-lead{font-size:15px;max-width:none}.work-tools{font-size:8px}.about{grid-template-columns:1fr;gap:40px}.career article{padding:18px 0}.contact{padding:52px 0}.contact-inner{flex-direction:column;align-items:start;gap:32px}.contact h2{font-size:43px;letter-spacing:-1.5px}.contact .eyebrow{font-size:9px;letter-spacing:1.1px}.contact-actions{align-items:start;margin:0}.footer{flex-wrap:wrap;padding:28px 0;gap:24px}.footer p{order:3;width:100%;font-size:9px}.footer>a:last-child{margin-left:auto}.preview{font-size:8px;letter-spacing:1px;gap:10px}.preview span+span{padding-left:10px}}
.credentials-section{background:#ecefe6;border-top:1px solid var(--line)}.cert-heading{display:flex;justify-content:space-between;gap:50px;align-items:end}.cert-heading .eyebrow{margin-bottom:22px}.cert-heading>p{max-width:345px;color:var(--muted);font-size:14px;line-height:1.8}.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:48px}.cert-entry{border-top:1px solid #aab7aa;padding-top:23px;min-width:0}.cert-issuer{display:flex;gap:12px;align-items:center;font-size:9px;letter-spacing:1.2px;color:#4a6150;font-weight:600}.cert-symbol{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid #94a68e;border-radius:50%;font-family:var(--display);font-size:11px;letter-spacing:0;color:var(--ink)}.cert-entry h3{font-size:19px;line-height:1.4;margin:17px 0 12px;letter-spacing:-.3px;min-height:54px}.cert-entry>p{font-size:11px;line-height:1.8;color:var(--muted)}.cert-entry .text-link{font-size:11px;margin-top:19px}.credential-id{overflow-wrap:anywhere;margin-top:9px}.course-certificates{border-top:1px solid #aab7aa;border-bottom:1px solid #aab7aa;margin-top:45px;padding:30px 0;display:grid;grid-template-columns:1fr 1.5fr;gap:30px}.course-certificates h3{font-size:23px;margin-top:10px;letter-spacing:-.5px}.course-certificates ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;align-items:center}.course-certificates li{font-size:14px;padding-left:17px;position:relative}.course-certificates li::before{content:'↗';position:absolute;left:0;top:0;font-size:12px;color:#648031}.historical-cert{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 0;border-bottom:1px solid var(--line)}.historical-cert .eyebrow{font-size:9px;color:#68766c}.historical-cert h3{font-size:19px;line-height:1.4;margin:11px 0 8px}.historical-cert p:last-child{font-size:11px;color:var(--muted)}.expired-label{font-size:10px;color:#6d5740;background:#ede3d3;border:1px solid #d6c7b5;border-radius:3px;padding:5px 12px;white-space:nowrap}.cert-profile-link{margin-top:25px;font-size:12px}
@media(max-width:1050px){.header nav{gap:22px}.cert-grid{gap:28px;grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.header nav{flex-wrap:wrap;justify-content:flex-start;gap:12px 19px}.cert-heading{flex-direction:column;align-items:start;gap:22px}.cert-heading>p{max-width:none}.cert-grid{grid-template-columns:1fr;gap:30px;margin-top:34px}.cert-entry h3{min-height:0;font-size:21px}.cert-entry .text-link{margin-top:15px}.course-certificates{grid-template-columns:1fr;gap:23px}.course-certificates ul{grid-template-columns:1fr;gap:13px}.historical-cert{align-items:start;flex-direction:column;gap:17px}.historical-cert h3{font-size:18px}.cert-profile-link{font-size:11px}.cert-heading .eyebrow{font-size:9px;letter-spacing:1px}}
.cert-profile-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:28px}.cert-profile-actions .cert-profile-link{margin-top:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
@media print{.preview,.header nav,.hero-art,.contact,.footer>a:last-child{display:none}.wrap{width:100%}.hero,.about{display:block}.hero{padding:20px 0}.hero h1{font-size:42px}.section{padding:25px 0}.work{background:#fff;color:#132c37}.work-detail{display:block;color:#132c37}.work-lead,.work-detail ul,.work-tools,.work-context{color:#132c37}.work-item{break-inside:avoid}.section-head{display:block}.expertise-grid{gap:20px}.hero-proof{margin-top:20px}}

/* Official credential artwork */
.badge-group-title{font-size:20px;font-weight:650;margin:45px 0 20px;letter-spacing:-.4px}.badge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.badge-card{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:start;gap:19px;border-top:1px solid #b2bfaf;padding:25px 0 22px;min-width:0}.credential-art{width:90px;height:90px;object-fit:contain}.badge-issuer{font-size:9px;letter-spacing:1.1px;text-transform:uppercase;color:#4a6150;font-weight:600;line-height:1.6}.badge-card h3{font-size:16px;line-height:1.45;letter-spacing:-.2px;margin:8px 0 11px}.badge-date,.badge-note{font-size:11px;color:var(--muted);line-height:1.8}.badge-note{font-size:10px;margin-top:5px}.badge-card .text-link{font-size:10px;margin-top:15px;gap:12px}.expired-badge-date{color:#735532;font-weight:600}.historical-badges{grid-template-columns:repeat(2,minmax(0,1fr))}.historical-badges .badge-card{max-width:560px}.google-course-list li{display:flex;align-items:center;gap:18px;padding-left:0;font-size:13px;min-height:42px}.google-course-list li::before{display:none}.google-course-list img{width:72px;height:24px;object-fit:contain;flex-shrink:0}.additional-certificate{display:flex;align-items:center;gap:22px;border-bottom:1px solid #b2bfaf;padding:27px 0}.additional-certificate img{flex:0 0 64px}.additional-certificate h3{font-size:18px;line-height:1.4;margin-bottom:5px}.additional-certificate p{font-size:11px;color:var(--muted)}.historical-heading{margin-top:35px}
@media(max-width:1100px){.badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.badge-card{grid-template-columns:92px minmax(0,1fr)}.credential-art{width:92px;height:92px}}
@media(max-width:760px){.badge-grid,.historical-badges{grid-template-columns:1fr;gap:5px}.badge-card{grid-template-columns:88px minmax(0,1fr);gap:18px;padding:24px 0}.credential-art{width:88px;height:88px}.badge-card h3{font-size:16px}.badge-group-title{font-size:20px;margin-top:34px}.google-course-list li{gap:22px}.additional-certificate{align-items:start;gap:18px}.additional-certificate h3{font-size:16px}.additional-certificate img{width:54px;height:54px;flex-basis:54px}}

/* Verified Coursera course certificates */
.coursera-certificates{scroll-margin-top:36px}.course-group-intro{font-size:13px;line-height:1.8;color:var(--muted);margin:-5px 0 25px;max-width:660px}.credential-links{display:flex;flex-wrap:wrap;gap:0 22px}.coursera-card .badge-issuer{letter-spacing:.7px}

/* Microsoft Learn achievements */
.microsoft-achievements{margin:55px 0 48px;padding:42px 0 35px;border-top:1px solid #a9b8a6;border-bottom:1px solid #a9b8a6;scroll-margin-top:24px}.microsoft-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:24px}.microsoft-heading h3{font-size:32px;line-height:1.3;letter-spacing:-1px;margin-top:13px}.microsoft-total{font-size:12px;color:var(--muted);white-space:nowrap}.microsoft-total strong{font-size:36px;letter-spacing:-1px;font-weight:500;color:var(--ink);margin-right:9px}.achievement-subheading{font-size:18px;font-weight:600;margin:30px 0 18px}.microsoft-card h4{font-size:16px;line-height:1.45;letter-spacing:-.2px;margin:8px 0 11px}.microsoft-card .badge-issuer{letter-spacing:.5px;font-size:9px}.microsoft-module-group{border-top:1px solid #b2bfaf}.microsoft-module-group:last-child{border-bottom:1px solid #b2bfaf}.microsoft-module-group summary{display:flex;align-items:center;gap:18px;list-style:none;cursor:pointer;padding:23px 0;font-size:17px;font-weight:600}.microsoft-module-group summary::-webkit-details-marker{display:none}.module-count{font-size:11px;font-weight:400;color:var(--muted);margin-left:auto;white-space:nowrap}.module-toggle{font-size:24px;font-weight:400;width:20px;text-align:center;transition:transform .2s}.microsoft-module-group[open] .module-toggle{transform:rotate(45deg)}.microsoft-module-group .badge-grid{padding:0 0 22px}.microsoft-module-group .badge-card{border-top:0}.microsoft-profile-link{font-size:12px;margin-top:12px}.microsoft-challenge{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.microsoft-heading{display:block}.microsoft-heading h3{font-size:28px}.microsoft-total{margin-top:18px}.microsoft-total strong{font-size:30px}.microsoft-module-group summary{font-size:16px;gap:12px}.microsoft-card h4{font-size:15px}.microsoft-challenge{grid-template-columns:1fr}.microsoft-achievements{padding-top:32px}}
